summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaindropsSys <raindrops@equestria.dev>2024-05-11 22:37:04 +0200
committerRaindropsSys <raindrops@equestria.dev>2024-05-11 22:37:04 +0200
commitb6c6e355a362b012ded7b349da93ccb40e5c90f4 (patch)
tree14b826a04aefd2d90f8a21d60041a2c679839bd7
parent6cdb6d52787588eec4faa058222dc8cd212f630d (diff)
downloaddelta-b6c6e355a362b012ded7b349da93ccb40e5c90f4.tar.gz
delta-b6c6e355a362b012ded7b349da93ccb40e5c90f4.tar.bz2
delta-b6c6e355a362b012ded7b349da93ccb40e5c90f4.zip
Updated 13 files, added 248 files and deleted 141 files (automated)
-rw-r--r--.idea/deployment.xml3
-rw-r--r--LICENSE662
-rw-r--r--_articles/index.php9
-rw-r--r--_gallery/index.php9
-rw-r--r--_people/index.php9
-rw-r--r--_profile/index.php11
-rw-r--r--_upload/aribtrary/index.php48
-rw-r--r--admin/index.php1
-rw-r--r--admin/support/index.php55
-rw-r--r--circle-plus.pngbin4691 -> 0 bytes
-rw-r--r--circle-ultra.pngbin4458 -> 0 bytes
-rw-r--r--ckeditor/ckeditor-build.js6
-rw-r--r--ckeditor/editor.js6
-rw-r--r--ckeditor/editor.js.map1
-rw-r--r--ckeditor/editor.php27
-rw-r--r--ckeditor/icons.js27
-rw-r--r--ckeditor/icons/delta/0.svg1
-rw-r--r--ckeditor/icons/delta/1.svg1
-rw-r--r--ckeditor/icons/delta/10.svg1
-rw-r--r--ckeditor/icons/delta/11.svg1
-rw-r--r--ckeditor/icons/delta/12.svg1
-rw-r--r--ckeditor/icons/delta/13.svg1
-rw-r--r--ckeditor/icons/delta/14.svg1
-rw-r--r--ckeditor/icons/delta/15.svg1
-rw-r--r--ckeditor/icons/delta/16.svg1
-rw-r--r--ckeditor/icons/delta/17.svg1
-rw-r--r--ckeditor/icons/delta/18.svg1
-rw-r--r--ckeditor/icons/delta/19.svg1
-rw-r--r--ckeditor/icons/delta/2.svg1
-rw-r--r--ckeditor/icons/delta/20.svg1
-rw-r--r--ckeditor/icons/delta/21.svg1
-rw-r--r--ckeditor/icons/delta/22.svg1
-rw-r--r--ckeditor/icons/delta/23.svg1
-rw-r--r--ckeditor/icons/delta/24.svg1
-rw-r--r--ckeditor/icons/delta/25.svg1
-rw-r--r--ckeditor/icons/delta/26.svg1
-rw-r--r--ckeditor/icons/delta/27.svg1
-rw-r--r--ckeditor/icons/delta/28.svg1
-rw-r--r--ckeditor/icons/delta/29.svg1
-rw-r--r--ckeditor/icons/delta/3.svg1
-rw-r--r--ckeditor/icons/delta/30.svg1
-rw-r--r--ckeditor/icons/delta/31.svg1
-rw-r--r--ckeditor/icons/delta/32.svg1
-rw-r--r--ckeditor/icons/delta/33.svg1
-rw-r--r--ckeditor/icons/delta/34.svg1
-rw-r--r--ckeditor/icons/delta/35.svg1
-rw-r--r--ckeditor/icons/delta/36.svg1
-rw-r--r--ckeditor/icons/delta/37.svg1
-rw-r--r--ckeditor/icons/delta/38.svg1
-rw-r--r--ckeditor/icons/delta/39.svg1
-rw-r--r--ckeditor/icons/delta/4.svg1
-rw-r--r--ckeditor/icons/delta/40.svg1
-rw-r--r--ckeditor/icons/delta/41.svg1
-rw-r--r--ckeditor/icons/delta/42.svg1
-rw-r--r--ckeditor/icons/delta/43.svg1
-rw-r--r--ckeditor/icons/delta/44.svg1
-rw-r--r--ckeditor/icons/delta/45.svg1
-rw-r--r--ckeditor/icons/delta/46.svg1
-rw-r--r--ckeditor/icons/delta/47.svg1
-rw-r--r--ckeditor/icons/delta/48.svg1
-rw-r--r--ckeditor/icons/delta/49.svg1
-rw-r--r--ckeditor/icons/delta/5.svg1
-rw-r--r--ckeditor/icons/delta/50.svg1
-rw-r--r--ckeditor/icons/delta/51.svg1
-rw-r--r--ckeditor/icons/delta/52.svg1
-rw-r--r--ckeditor/icons/delta/53.svg1
-rw-r--r--ckeditor/icons/delta/54.svg1
-rw-r--r--ckeditor/icons/delta/55.svg1
-rw-r--r--ckeditor/icons/delta/56.svg1
-rw-r--r--ckeditor/icons/delta/57.svg1
-rw-r--r--ckeditor/icons/delta/58.svg1
-rw-r--r--ckeditor/icons/delta/59.svg1
-rw-r--r--ckeditor/icons/delta/6.svg1
-rw-r--r--ckeditor/icons/delta/60.svg1
-rw-r--r--ckeditor/icons/delta/7.svg1
-rw-r--r--ckeditor/icons/delta/70.svg1
-rw-r--r--ckeditor/icons/delta/71.svg1
-rw-r--r--ckeditor/icons/delta/72.svg1
-rw-r--r--ckeditor/icons/delta/73.svg1
-rw-r--r--ckeditor/icons/delta/74.svg1
-rw-r--r--ckeditor/icons/delta/75.svg1
-rw-r--r--ckeditor/icons/delta/76.svg1
-rw-r--r--ckeditor/icons/delta/77.svg1
-rw-r--r--ckeditor/icons/delta/78.svg1
-rw-r--r--ckeditor/icons/delta/79.svg1
-rw-r--r--ckeditor/icons/delta/8.svg1
-rw-r--r--ckeditor/icons/delta/80.svg1
-rw-r--r--ckeditor/icons/delta/81.svg1
-rw-r--r--ckeditor/icons/delta/82.svg1
-rw-r--r--ckeditor/icons/delta/83.svg1
-rw-r--r--ckeditor/icons/delta/84.svg1
-rw-r--r--ckeditor/icons/delta/85.svg1
-rw-r--r--ckeditor/icons/delta/86.svg1
-rw-r--r--ckeditor/icons/delta/9.svg1
-rw-r--r--ckeditor/icons/desktop/0.svg1
-rw-r--r--ckeditor/icons/desktop/1.svg1
-rw-r--r--ckeditor/icons/desktop/10.svg1
-rw-r--r--ckeditor/icons/desktop/11.svg1
-rw-r--r--ckeditor/icons/desktop/12.svg1
-rw-r--r--ckeditor/icons/desktop/13.svg1
-rw-r--r--ckeditor/icons/desktop/14.svg1
-rw-r--r--ckeditor/icons/desktop/15.svg1
-rw-r--r--ckeditor/icons/desktop/16.svg1
-rw-r--r--ckeditor/icons/desktop/17.svg1
-rw-r--r--ckeditor/icons/desktop/18.svg1
-rw-r--r--ckeditor/icons/desktop/19.svg1
-rw-r--r--ckeditor/icons/desktop/2.svg1
-rw-r--r--ckeditor/icons/desktop/20.svg1
-rw-r--r--ckeditor/icons/desktop/21.svg1
-rw-r--r--ckeditor/icons/desktop/22.svg1
-rw-r--r--ckeditor/icons/desktop/23.svg1
-rw-r--r--ckeditor/icons/desktop/24.svg1
-rw-r--r--ckeditor/icons/desktop/25.svg1
-rw-r--r--ckeditor/icons/desktop/26.svg1
-rw-r--r--ckeditor/icons/desktop/27.svg1
-rw-r--r--ckeditor/icons/desktop/28.svg1
-rw-r--r--ckeditor/icons/desktop/29.svg1
-rw-r--r--ckeditor/icons/desktop/30.svg1
-rw-r--r--ckeditor/icons/desktop/31.svg1
-rw-r--r--ckeditor/icons/desktop/32.svg1
-rw-r--r--ckeditor/icons/desktop/33.svg1
-rw-r--r--ckeditor/icons/desktop/34.svg1
-rw-r--r--ckeditor/icons/desktop/35.svg1
-rw-r--r--ckeditor/icons/desktop/36.svg1
-rw-r--r--ckeditor/icons/desktop/37.svg1
-rw-r--r--ckeditor/icons/desktop/38.svg1
-rw-r--r--ckeditor/icons/desktop/39.svg1
-rw-r--r--ckeditor/icons/desktop/4.svg1
-rw-r--r--ckeditor/icons/desktop/40.svg1
-rw-r--r--ckeditor/icons/desktop/41.svg1
-rw-r--r--ckeditor/icons/desktop/42.svg1
-rw-r--r--ckeditor/icons/desktop/43.svg1
-rw-r--r--ckeditor/icons/desktop/44.svg1
-rw-r--r--ckeditor/icons/desktop/45.svg1
-rw-r--r--ckeditor/icons/desktop/46.svg1
-rw-r--r--ckeditor/icons/desktop/47.svg1
-rw-r--r--ckeditor/icons/desktop/48.svg1
-rw-r--r--ckeditor/icons/desktop/49.svg1
-rw-r--r--ckeditor/icons/desktop/5.svg1
-rw-r--r--ckeditor/icons/desktop/50.svg1
-rw-r--r--ckeditor/icons/desktop/51.svg1
-rw-r--r--ckeditor/icons/desktop/52.svg1
-rw-r--r--ckeditor/icons/desktop/53.svg1
-rw-r--r--ckeditor/icons/desktop/54.svg1
-rw-r--r--ckeditor/icons/desktop/55.svg1
-rw-r--r--ckeditor/icons/desktop/56.svg1
-rw-r--r--ckeditor/icons/desktop/57.svg1
-rw-r--r--ckeditor/icons/desktop/58.svg1
-rw-r--r--ckeditor/icons/desktop/59.svg1
-rw-r--r--ckeditor/icons/desktop/6.svg1
-rw-r--r--ckeditor/icons/desktop/60.svg1
-rw-r--r--ckeditor/icons/desktop/7.svg1
-rw-r--r--ckeditor/icons/desktop/70.svg1
-rw-r--r--ckeditor/icons/desktop/71.svg1
-rw-r--r--ckeditor/icons/desktop/72.svg1
-rw-r--r--ckeditor/icons/desktop/73.svg1
-rw-r--r--ckeditor/icons/desktop/74.svg1
-rw-r--r--ckeditor/icons/desktop/75.svg1
-rw-r--r--ckeditor/icons/desktop/76.svg1
-rw-r--r--ckeditor/icons/desktop/77.svg1
-rw-r--r--ckeditor/icons/desktop/78.svg1
-rw-r--r--ckeditor/icons/desktop/79.svg1
-rw-r--r--ckeditor/icons/desktop/8.svg1
-rw-r--r--ckeditor/icons/desktop/80.svg1
-rw-r--r--ckeditor/icons/desktop/81.svg1
-rw-r--r--ckeditor/icons/desktop/82.svg1
-rw-r--r--ckeditor/icons/desktop/83.svg1
-rw-r--r--ckeditor/icons/desktop/84.svg1
-rw-r--r--ckeditor/icons/desktop/85.svg1
-rw-r--r--ckeditor/icons/desktop/86.svg1
-rw-r--r--ckeditor/icons/desktop/9.svg1
-rw-r--r--ckeditor/icons/original/0.svg1
-rw-r--r--ckeditor/icons/original/1.svg1
-rw-r--r--ckeditor/icons/original/10.svg1
-rw-r--r--ckeditor/icons/original/11.svg1
-rw-r--r--ckeditor/icons/original/12.svg1
-rw-r--r--ckeditor/icons/original/13.svg1
-rw-r--r--ckeditor/icons/original/14.svg1
-rw-r--r--ckeditor/icons/original/15.svg1
-rw-r--r--ckeditor/icons/original/16.svg1
-rw-r--r--ckeditor/icons/original/17.svg1
-rw-r--r--ckeditor/icons/original/18.svg1
-rw-r--r--ckeditor/icons/original/19.svg1
-rw-r--r--ckeditor/icons/original/2.svg1
-rw-r--r--ckeditor/icons/original/20.svg1
-rw-r--r--ckeditor/icons/original/21.svg1
-rw-r--r--ckeditor/icons/original/22.svg1
-rw-r--r--ckeditor/icons/original/23.svg1
-rw-r--r--ckeditor/icons/original/24.svg1
-rw-r--r--ckeditor/icons/original/25.svg1
-rw-r--r--ckeditor/icons/original/26.svg1
-rw-r--r--ckeditor/icons/original/27.svg1
-rw-r--r--ckeditor/icons/original/28.svg1
-rw-r--r--ckeditor/icons/original/29.svg1
-rw-r--r--ckeditor/icons/original/3.svg1
-rw-r--r--ckeditor/icons/original/30.svg1
-rw-r--r--ckeditor/icons/original/31.svg1
-rw-r--r--ckeditor/icons/original/32.svg1
-rw-r--r--ckeditor/icons/original/33.svg1
-rw-r--r--ckeditor/icons/original/34.svg1
-rw-r--r--ckeditor/icons/original/35.svg1
-rw-r--r--ckeditor/icons/original/36.svg1
-rw-r--r--ckeditor/icons/original/37.svg1
-rw-r--r--ckeditor/icons/original/38.svg1
-rw-r--r--ckeditor/icons/original/39.svg1
-rw-r--r--ckeditor/icons/original/4.svg1
-rw-r--r--ckeditor/icons/original/40.svg1
-rw-r--r--ckeditor/icons/original/41.svg1
-rw-r--r--ckeditor/icons/original/42.svg1
-rw-r--r--ckeditor/icons/original/43.svg1
-rw-r--r--ckeditor/icons/original/44.svg1
-rw-r--r--ckeditor/icons/original/45.svg1
-rw-r--r--ckeditor/icons/original/46.svg1
-rw-r--r--ckeditor/icons/original/47.svg1
-rw-r--r--ckeditor/icons/original/48.svg1
-rw-r--r--ckeditor/icons/original/49.svg1
-rw-r--r--ckeditor/icons/original/5.svg1
-rw-r--r--ckeditor/icons/original/50.svg1
-rw-r--r--ckeditor/icons/original/51.svg1
-rw-r--r--ckeditor/icons/original/52.svg1
-rw-r--r--ckeditor/icons/original/53.svg1
-rw-r--r--ckeditor/icons/original/54.svg1
-rw-r--r--ckeditor/icons/original/55.svg1
-rw-r--r--ckeditor/icons/original/56.svg1
-rw-r--r--ckeditor/icons/original/57.svg1
-rw-r--r--ckeditor/icons/original/58.svg1
-rw-r--r--ckeditor/icons/original/59.svg1
-rw-r--r--ckeditor/icons/original/6.svg1
-rw-r--r--ckeditor/icons/original/60.svg1
-rw-r--r--ckeditor/icons/original/61.svg1
-rw-r--r--ckeditor/icons/original/62.svg1
-rw-r--r--ckeditor/icons/original/63.svg1
-rw-r--r--ckeditor/icons/original/64.svg1
-rw-r--r--ckeditor/icons/original/65.svg1
-rw-r--r--ckeditor/icons/original/66.svg1
-rw-r--r--ckeditor/icons/original/67.svg1
-rw-r--r--ckeditor/icons/original/68.svg1
-rw-r--r--ckeditor/icons/original/69.svg1
-rw-r--r--ckeditor/icons/original/7.svg1
-rw-r--r--ckeditor/icons/original/70.svg1
-rw-r--r--ckeditor/icons/original/71.svg1
-rw-r--r--ckeditor/icons/original/72.svg1
-rw-r--r--ckeditor/icons/original/73.svg1
-rw-r--r--ckeditor/icons/original/74.svg1
-rw-r--r--ckeditor/icons/original/75.svg1
-rw-r--r--ckeditor/icons/original/76.svg1
-rw-r--r--ckeditor/icons/original/77.svg1
-rw-r--r--ckeditor/icons/original/78.svg1
-rw-r--r--ckeditor/icons/original/79.svg1
-rw-r--r--ckeditor/icons/original/8.svg1
-rw-r--r--ckeditor/icons/original/80.svg1
-rw-r--r--ckeditor/icons/original/81.svg1
-rw-r--r--ckeditor/icons/original/82.svg1
-rw-r--r--ckeditor/icons/original/83.svg1
-rw-r--r--ckeditor/icons/original/84.svg1
-rw-r--r--ckeditor/icons/original/85.svg1
-rw-r--r--ckeditor/icons/original/86.svg1
-rw-r--r--ckeditor/icons/original/9.svg1
-rw-r--r--coinprice1
-rw-r--r--equestriadev.svg223
-rw-r--r--includes/email.php52
-rw-r--r--includes/header.php9
-rw-r--r--includes/jobs-handler.php1
-rw-r--r--includes/langcheck/index.js142
-rw-r--r--includes/langcheck/node_modules/.package-lock.json96
-rw-r--r--includes/langcheck/node_modules/ansi-styles/index.d.ts345
-rw-r--r--includes/langcheck/node_modules/ansi-styles/index.js163
-rw-r--r--includes/langcheck/node_modules/ansi-styles/license9
-rw-r--r--includes/langcheck/node_modules/ansi-styles/package.json56
-rw-r--r--includes/langcheck/node_modules/ansi-styles/readme.md152
-rw-r--r--includes/langcheck/node_modules/chalk/index.d.ts415
-rw-r--r--includes/langcheck/node_modules/chalk/license9
-rw-r--r--includes/langcheck/node_modules/chalk/package.json68
-rw-r--r--includes/langcheck/node_modules/chalk/readme.md341
-rw-r--r--includes/langcheck/node_modules/chalk/source/index.js229
-rw-r--r--includes/langcheck/node_modules/chalk/source/templates.js134
-rw-r--r--includes/langcheck/node_modules/chalk/source/util.js39
-rw-r--r--includes/langcheck/node_modules/color-convert/CHANGELOG.md54
-rw-r--r--includes/langcheck/node_modules/color-convert/LICENSE21
-rw-r--r--includes/langcheck/node_modules/color-convert/README.md68
-rw-r--r--includes/langcheck/node_modules/color-convert/conversions.js839
-rw-r--r--includes/langcheck/node_modules/color-convert/index.js81
-rw-r--r--includes/langcheck/node_modules/color-convert/package.json48
-rw-r--r--includes/langcheck/node_modules/color-convert/route.js97
-rw-r--r--includes/langcheck/node_modules/color-name/LICENSE8
-rw-r--r--includes/langcheck/node_modules/color-name/README.md11
-rw-r--r--includes/langcheck/node_modules/color-name/index.js152
-rw-r--r--includes/langcheck/node_modules/color-name/package.json28
-rw-r--r--includes/langcheck/node_modules/has-flag/index.d.ts39
-rw-r--r--includes/langcheck/node_modules/has-flag/index.js8
-rw-r--r--includes/langcheck/node_modules/has-flag/license9
-rw-r--r--includes/langcheck/node_modules/has-flag/package.json46
-rw-r--r--includes/langcheck/node_modules/has-flag/readme.md89
-rw-r--r--includes/langcheck/node_modules/kleur/index.js104
-rw-r--r--includes/langcheck/node_modules/kleur/kleur.d.ts45
-rw-r--r--includes/langcheck/node_modules/kleur/license21
-rw-r--r--includes/langcheck/node_modules/kleur/package.json35
-rw-r--r--includes/langcheck/node_modules/kleur/readme.md172
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/datepart.js39
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/day.js35
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/hours.js30
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/index.js13
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/meridiem.js25
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/milliseconds.js28
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/minutes.js29
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/month.js31
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/seconds.js29
-rw-r--r--includes/langcheck/node_modules/prompts/dist/dateparts/year.js29
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/autocomplete.js285
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/autocompleteMultiselect.js201
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/confirm.js93
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/date.js250
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/index.js13
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/multiselect.js289
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/number.js250
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/prompt.js82
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/select.js190
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/text.js245
-rw-r--r--includes/langcheck/node_modules/prompts/dist/elements/toggle.js124
-rw-r--r--includes/langcheck/node_modules/prompts/dist/index.js154
-rw-r--r--includes/langcheck/node_modules/prompts/dist/prompts.js222
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/action.js38
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/clear.js42
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/entriesToDisplay.js21
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/figures.js32
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/index.js12
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/lines.js14
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/strip.js7
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/style.js51
-rw-r--r--includes/langcheck/node_modules/prompts/dist/util/wrap.js16
-rw-r--r--includes/langcheck/node_modules/prompts/index.js14
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/datepart.js35
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/day.js42
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/hours.js30
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/index.js13
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/meridiem.js24
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/milliseconds.js28
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/minutes.js28
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/month.js33
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/seconds.js28
-rw-r--r--includes/langcheck/node_modules/prompts/lib/dateparts/year.js28
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/autocomplete.js264
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/autocompleteMultiselect.js194
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/confirm.js89
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/date.js209
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/index.js13
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/multiselect.js271
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/number.js213
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/prompt.js68
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/select.js175
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/text.js208
-rw-r--r--includes/langcheck/node_modules/prompts/lib/elements/toggle.js118
-rw-r--r--includes/langcheck/node_modules/prompts/lib/index.js98
-rw-r--r--includes/langcheck/node_modules/prompts/lib/prompts.js206
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/action.js39
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/clear.js22
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/entriesToDisplay.js21
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/figures.js33
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/index.js12
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/lines.js15
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/strip.js11
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/style.js40
-rw-r--r--includes/langcheck/node_modules/prompts/lib/util/wrap.js27
-rw-r--r--includes/langcheck/node_modules/prompts/license21
-rw-r--r--includes/langcheck/node_modules/prompts/package.json53
-rwxr-xr-xincludes/langcheck/node_modules/prompts/readme.md882
-rw-r--r--includes/langcheck/node_modules/sisteransi/license21
-rwxr-xr-xincludes/langcheck/node_modules/sisteransi/package.json34
-rwxr-xr-xincludes/langcheck/node_modules/sisteransi/readme.md113
-rw-r--r--includes/langcheck/node_modules/sisteransi/src/index.js58
-rw-r--r--includes/langcheck/node_modules/sisteransi/src/sisteransi.d.ts35
-rw-r--r--includes/langcheck/node_modules/supports-color/browser.js5
-rw-r--r--includes/langcheck/node_modules/supports-color/index.js135
-rw-r--r--includes/langcheck/node_modules/supports-color/license9
-rw-r--r--includes/langcheck/node_modules/supports-color/package.json53
-rw-r--r--includes/langcheck/node_modules/supports-color/readme.md76
-rw-r--r--includes/langcheck/package-lock.json102
-rw-r--r--includes/langcheck/package.json6
-rw-r--r--includes/langcheck/reviewed.txt667
-rw-r--r--includes/navigation.php19
-rw-r--r--includes/oobe.php333
-rw-r--r--includes/translation.php67
-rw-r--r--index.php8
-rw-r--r--login/index.php17
-rw-r--r--login/oauth/index.php83
-rw-r--r--logo-plus-trim.svg21
-rw-r--r--logo-plus.svg20
-rw-r--r--logo-ultra-trim.svg19
-rw-r--r--logo-ultra.svg19
-rw-r--r--plus/code/index.php80
-rw-r--r--plus/index.php138
-rw-r--r--plus/subscribe/index.php264
-rw-r--r--plus/trial/index.php40
-rw-r--r--plusprice1
-rw-r--r--register/complete/index.php57
-rw-r--r--register/index.php347
-rw-r--r--register/submit/index.php127
-rw-r--r--studio-done.svg1
-rw-r--r--support/index.php136
-rw-r--r--support/pricing/index.php102
-rw-r--r--support/rules/index.php20
-rw-r--r--version2
402 files changed, 388 insertions, 14946 deletions
diff --git a/.idea/deployment.xml b/.idea/deployment.xml
index 02a0456..c872ae5 100644
--- a/.idea/deployment.xml
+++ b/.idea/deployment.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
- <component name="PublishConfigData" autoUpload="Always" serverName="dabssi" remoteFilesAllowedToDisappearOnAutoupload="false">
+ <component name="PublishConfigData" autoUpload="Always" serverName="dabssi" confirmBeforeDeletion="false" autoUploadExternalChanges="true">
+ <option name="confirmBeforeDeletion" value="false" />
<serverData>
<paths name="dabssi">
<serverdata>
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index f9058f8..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,662 +0,0 @@
- GNU AFFERO GENERAL PUBLIC LICENSE
- Version 3, 19 November 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The GNU Affero General Public License is a free, copyleft license for
-software and other kinds of works, specifically designed to ensure
-cooperation with the community in the case of network server software.
-
- The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works. By contrast,
-our General Public Licenses are intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
- Developers that use our General Public Licenses protect your rights
-with two steps: (1) assert copyright on the software, and (2) offer
-you this License which gives you legal permission to copy, distribute
-and/or modify the software.
-
- A secondary benefit of defending all users' freedom is that
-improvements made in alternate versions of the program, if they
-receive widespread use, become available for other developers to
-incorporate. Many developers of free software are heartened and
-encouraged by the resulting cooperation. However, in the case of
-software used on network servers, this result may fail to come about.
-The GNU General Public License permits making a modified version and
-letting the public access it on a server without ever releasing its
-source code to the public.
-
- The GNU Affero General Public License is designed specifically to
-ensure that, in such cases, the modified source code becomes available
-to the community. It requires the operator of a network server to
-provide the source code of the modified version running there to the
-users of that server. Therefore, public use of a modified version, on
-a publicly accessible server, gives the public access to the source
-code of the modified version.
-
- An older license, called the Affero General Public License and
-published by Affero, was designed to accomplish similar goals. This is
-a different license, not a version of the Affero GPL, but Affero has
-released a new version of the Affero GPL which permits relicensing under
-this license.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- TERMS AND CONDITIONS
-
- 0. Definitions.
-
- "This License" refers to version 3 of the GNU Affero General Public License.
-
- "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
- "The Program" refers to any copyrightable work licensed under this
-License. Each licensee is addressed as "you". "Licensees" and
-"recipients" may be individuals or organizations.
-
- To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy. The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
- A "covered work" means either the unmodified Program or a work based
-on the Program.
-
- To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy. Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
- To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies. Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
- An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License. If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
- 1. Source Code.
-
- The "source code" for a work means the preferred form of the work
-for making modifications to it. "Object code" means any non-source
-form of a work.
-
- A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
- The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form. A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
- The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities. However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work. For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
- The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
- The Corresponding Source for a work in source code form is that
-same work.
-
- 2. Basic Permissions.
-
- All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met. This License explicitly affirms your unlimited
-permission to run the unmodified Program. The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work. This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
- You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force. You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright. Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
- Conveying under any other circumstances is permitted solely under
-the conditions stated below. Sublicensing is not allowed; section 10
-makes it unnecessary.
-
- 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
- No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
- When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
- 4. Conveying Verbatim Copies.
-
- You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
- You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
- 5. Conveying Modified Source Versions.
-
- You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
- a) The work must carry prominent notices stating that you modified
- it, and giving a relevant date.
-
- b) The work must carry prominent notices stating that it is
- released under this License and any conditions added under section
- 7. This requirement modifies the requirement in section 4 to
- "keep intact all notices".
-
- c) You must license the entire work, as a whole, under this
- License to anyone who comes into possession of a copy. This
- License will therefore apply, along with any applicable section 7
- additional terms, to the whole of the work, and all its parts,
- regardless of how they are packaged. This License gives no
- permission to license the work in any other way, but it does not
- invalidate such permission if you have separately received it.
-
- d) If the work has interactive user interfaces, each must display
- Appropriate Legal Notices; however, if the Program has interactive
- interfaces that do not display Appropriate Legal Notices, your
- work need not make them do so.
-
- A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit. Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
- 6. Conveying Non-Source Forms.
-
- You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
- a) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by the
- Corresponding Source fixed on a durable physical medium
- customarily used for software interchange.
-
- b) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by a
- written offer, valid for at least three years and valid for as
- long as you offer spare parts or customer support for that product
- model, to give anyone who possesses the object code either (1) a
- copy of the Corresponding Source for all the software in the
- product that is covered by this License, on a durable physical
- medium customarily used for software interchange, for a price no
- more than your reasonable cost of physically performing this
- conveying of source, or (2) access to copy the
- Corresponding Source from a network server at no charge.
-
- c) Convey individual copies of the object code with a copy of the
- written offer to provide the Corresponding Source. This
- alternative is allowed only occasionally and noncommercially, and
- only if you received the object code with such an offer, in accord
- with subsection 6b.
-
- d) Convey the object code by offering access from a designated
- place (gratis or for a charge), and offer equivalent access to the
- Corresponding Source in the same way through the same place at no
- further charge. You need not require recipients to copy the
- Corresponding Source along with the object code. If the place to
- copy the object code is a network server, the Corresponding Source
- may be on a different server (operated by you or a third party)
- that supports equivalent copying facilities, provided you maintain
- clear directions next to the object code saying where to find the
- Corresponding Source. Regardless of what server hosts the
- Corresponding Source, you remain obligated to ensure that it is
- available for as long as needed to satisfy these requirements.
-
- e) Convey the object code using peer-to-peer transmission, provided
- you inform other peers where the object code and Corresponding
- Source of the work are being offered to the general public at no
- charge under subsection 6d.
-
- A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
- A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling. In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage. For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product. A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
- "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source. The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
- If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information. But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
- The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed. Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
- Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
- 7. Additional Terms.
-
- "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law. If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
- When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it. (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.) You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
- Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
- a) Disclaiming warranty or limiting liability differently from the
- terms of sections 15 and 16 of this License; or
-
- b) Requiring preservation of specified reasonable legal notices or
- author attributions in that material or in the Appropriate Legal
- Notices displayed by works containing it; or
-
- c) Prohibiting misrepresentation of the origin of that material, or
- requiring that modified versions of such material be marked in
- reasonable ways as different from the original version; or
-
- d) Limiting the use for publicity purposes of names of licensors or
- authors of the material; or
-
- e) Declining to grant rights under trademark law for use of some
- trade names, trademarks, or service marks; or
-
- f) Requiring indemnification of licensors and authors of that
- material by anyone who conveys the material (or modified versions of
- it) with contractual assumptions of liability to the recipient, for
- any liability that these contractual assumptions directly impose on
- those licensors and authors.
-
- All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10. If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term. If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
- If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
- Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
- 8. Termination.
-
- You may not propagate or modify a covered work except as expressly
-provided under this License. Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
- However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
- Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
- Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License. If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
- 9. Acceptance Not Required for Having Copies.
-
- You are not required to accept this License in order to receive or
-run a copy of the Program. Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance. However,
-nothing other than this License grants you permission to propagate or
-modify any covered work. These actions infringe copyright if you do
-not accept this License. Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
- 10. Automatic Licensing of Downstream Recipients.
-
- Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License. You are not responsible
-for enforcing compliance by third parties with this License.
-
- An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations. If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
- You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License. For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
- 11. Patents.
-
- A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based. The
-work thus licensed is called the contributor's "contributor version".
-
- A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version. For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
- Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
- In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement). To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
- If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients. "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
- If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
- A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License. You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
- Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
- 12. No Surrender of Others' Freedom.
-
- If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all. For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
- 13. Remote Network Interaction; Use with the GNU General Public License.
-
- Notwithstanding any other provision of this License, if you modify the
-Program, your modified version must prominently offer all users
-interacting with it remotely through a computer network (if your version
-supports such interaction) an opportunity to receive the Corresponding
-Source of your version by providing access to the Corresponding Source
-from a network server at no charge, through some standard or customary
-means of facilitating copying of software. This Corresponding Source
-shall include the Corresponding Source for any work covered by version 3
-of the GNU General Public License that is incorporated pursuant to the
-following paragraph.
-
- Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU General Public License into a single
-combined work, and to convey the resulting work. The terms of this
-License will continue to apply to the part which is the covered work,
-but the work with which it is combined will remain governed by version
-3 of the GNU General Public License.
-
- 14. Revised Versions of this License.
-
- The Free Software Foundation may publish revised and/or new versions of
-the GNU Affero General Public License from time to time. Such new versions
-will be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Program specifies that a certain numbered version of the GNU Affero General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation. If the Program does not specify a version number of the
-GNU Affero General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
- If the Program specifies that a proxy can decide which future
-versions of the GNU Affero General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
- Later license versions may give you additional or different
-permissions. However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
- 15. Disclaimer of Warranty.
-
- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. Limitation of Liability.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
- 17. Interpretation of Sections 15 and 16.
-
- If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- Equestria.dev Free, Libre and Open-Source Software
- Copyright (C) 2024 Equestria.dev Developers
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-Also add information on how to contact you by electronic and paper mail.
-
- If your software can interact with users remotely through a computer
-network, you should also make sure that it provides a way for users to
-get its source. For example, if your program is a web application, its
-interface could display a "Source" link that leads users to an archive
-of the code. There are many ways you could offer source, and different
-solutions will be better for different programs; see section 13 for the
-specific requirements.
-
- You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU AGPL, see
-<https://www.gnu.org/licenses/>.
-
diff --git a/_articles/index.php b/_articles/index.php
index 89ad0b3..c11852f 100644
--- a/_articles/index.php
+++ b/_articles/index.php
@@ -29,7 +29,6 @@ if (isset($id)) {
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/translation.php";
if (!isset($id)):
?>
@@ -40,8 +39,6 @@ if (!isset($id)):
<?php listArticles(); ?>
- <div style="margin-top:20px;"><a href="/request/?type=add"><?= l("lang_articles_create") ?></a></div>
-
<br><br>
</div>
@@ -54,13 +51,11 @@ if (!isset($id)):
<span id="btn-area" class="btn-group"><a style="height: 38px;" href="/request/?type=rename&id=<?= $id ?>" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_articles_rename") ?>" data-bs-toggle="tooltip"><img src="/icons/rename.svg" style="width: 24px;"></a><a style="height: 38px;" href="/edit/<?= $id ?>" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_people_edit") ?>" data-bs-toggle="tooltip"><img src="/icons/edit.svg" style="width: 24px;"></a><a style="height: 38px;" onclick="copy('<?= uuidToId($id) ?>', true)" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_shortener_copy") ?>" data-bs-toggle="tooltip"><img src="/icons/copy.svg" style="width: 24px;"></a></span>
</h1>
- <?php showTranslationBox($id); ?>
-
<div>
<div>
<?php if (isset($data["contents"]) && trim($data["contents"] !== "")): ?>
<div>
- <?= doLinking(getTranslation($id, "contents")) ?>
+ <?= doLinking($data["contents"]) ?>
</div>
<small class="print-ignore text-muted"><?= isset($data["update_user"]) ? str_replace("%2", "<a class='update-user' href='/profile/" . $data["update_user"] . "'>" . resolveUser($data["update_user"]) . "</a>", str_replace("%1", timeAgo($data["update"]), l("lang_time_update_user"))) : str_replace("%1", timeAgo($data["update"]), l("lang_time_update")) ?></small>
<?php else: ?>
@@ -74,4 +69,4 @@ if (!isset($id)):
<?php addToUserHistory($id); endif; ?>
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
+<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
diff --git a/_gallery/index.php b/_gallery/index.php
index 3b303d8..1ac8e23 100644
--- a/_gallery/index.php
+++ b/_gallery/index.php
@@ -29,7 +29,6 @@ if (isset($id)) {
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/translation.php";
if (!isset($id)):
?>
@@ -40,8 +39,6 @@ if (!isset($id)):
<?php listAlbums(); ?>
- <div style="margin-top:20px;"><a href="/request/?type=addalbum"><?= l("lang_gallery_create") ?></a></div>
-
<br><br>
</div>
@@ -54,14 +51,12 @@ if (!isset($id)):
<span id="btn-area" class="btn-group"><a style="height: 38px;" href="/upload/<?= $id ?>" class="btn btn-outline-primary btn-with-img" title="<?= l("lang_gallery_upload") ?>" data-bs-toggle="tooltip"><img src="/icons/upload.svg?p" style="width: 24px;"></a><a style="height: 38px;" href="/request/?type=rename&id=<?= $id ?>" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_articles_rename") ?>" data-bs-toggle="tooltip"><img src="/icons/rename.svg" style="width: 24px;"></a><a style="height: 38px;" href="/edit/<?= $id ?>" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_people_edit") ?>" data-bs-toggle="tooltip"><img src="/icons/edit.svg" style="width: 24px;"></a><a style="height: 38px;" onclick="copy('<?= uuidToId($id) ?>', true)" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_shortener_copy") ?>" data-bs-toggle="tooltip"><img src="/icons/copy.svg" style="width: 24px;"></a></span>
</h1>
- <?php showTranslationBox($id); ?>
-
<div>
<div>
<?php if (isset($data["images"]) && count($data["images"]) > 0): ?>
<?php if (isset($data["contents"]) && trim($data["contents"] !== "")): ?>
<div>
- <?= doLinking(getTranslation($id, "contents")) ?>
+ <?= doLinking($data["contents"]) ?>
</div>
<small class="print-ignore text-muted"><?= isset($data["update_user"]) ? str_replace("%2", "<a class='update-user' href='/profile/" . $data["update_user"] . "'>" . resolveUser($data["update_user"]) . "</a>", str_replace("%1", timeAgo($data["update"]), l("lang_time_update_user"))) : str_replace("%1", timeAgo($data["update"]), l("lang_time_update")) ?></small>
<?php endif;
@@ -124,4 +119,4 @@ if (!isset($id)):
<?php addToUserHistory($id); endif; ?>
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
+<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
diff --git a/_people/index.php b/_people/index.php
index 1e63670..6f6965d 100644
--- a/_people/index.php
+++ b/_people/index.php
@@ -30,7 +30,6 @@ if (isset($id)) {
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/translation.php";
if (!isset($id)):
?>
@@ -41,8 +40,6 @@ if (!isset($id)):
<?php listPeople(); ?>
- <div style="margin-top:20px;"><a href="/request/?type=add"><?= l("lang_people_create") ?></a></div>
-
<br><br>
</div>
@@ -55,13 +52,11 @@ if (!isset($id)):
<span id="btn-area" class="btn-group"><a style="height: 38px;" href="/edit/<?= $id ?>" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_people_edit") ?>" data-bs-toggle="tooltip"><img src="/icons/edit.svg" style="width: 24px;"></a><a style="height: 38px;" onclick="copy('<?= uuidToId($id) ?>', true)" class="btn btn-outline-dark btn-with-img" title="<?= l("lang_shortener_copy") ?>" data-bs-toggle="tooltip"><img src="/icons/copy.svg" style="width: 24px;"></a></span>
</h1>
- <?php showTranslationBox($id); ?>
-
<div style="display: grid; grid-template-columns: 1fr 400px; grid-gap: 20px;" id="infobox">
<div>
<?php if (isset($data["contents"]) && trim($data["contents"] !== "")): ?>
<div>
- <?= doLinking(getTranslation($id, "contents")) ?>
+ <?= doLinking($data["contents"]) ?>
</div>
<small class="print-ignore text-muted"><?= isset($data["update_user"]) ? str_replace("%2", "<a class='update-user' href='/profile/" . $data["update_user"] . "'>" . resolveUser($data["update_user"]) . "</a>", str_replace("%1", timeAgo($data["update"]), l("lang_time_update_user"))) : str_replace("%1", timeAgo($data["update"]), l("lang_time_update")) ?></small>
<?php else: ?>
@@ -530,4 +525,4 @@ if (!isset($id)):
<?php addToUserHistory($id); endif; ?>
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
+<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
diff --git a/_profile/index.php b/_profile/index.php
index 4a3cae6..e62b4f9 100644
--- a/_profile/index.php
+++ b/_profile/index.php
@@ -72,6 +72,10 @@ foreach (array_filter(scandir($_SERVER["DOCUMENT_ROOT"] . "/includes/data/people
<img src="/icons/edit.svg" style="vertical-align: middle; width: 24px;">
<span style="vertical-align: middle;"><?= l("lang_profile_request") ?></span>
</a></li>
+ <li><a class="dropdown-item" onclick="copy(formatId('<?= $id ?>'), false); alert('Code transaction copié');" style="cursor: pointer;">
+ <img src="/icons/copy.svg" style="vertical-align: middle; width: 24px;">
+ <span style="vertical-align: middle;">Copier le code transaction</span>
+ </a></li>
</ul>
</div>
</div>
@@ -217,4 +221,11 @@ foreach (array_filter(scandir($_SERVER["DOCUMENT_ROOT"] . "/includes/data/people
<br><br>
</div>
+<script>
+ function formatId(id) {
+ let l = id.split("-").map(i => parseInt(i, 16)).join("").match(/.{1,5}/g).map(i => i + "00000".substring(0, 5 - i.length)).join("-");
+ return "00000-00000-00000-00000-00000-00000-00000-00000".substring(0, 47 - l.length) + l;
+ }
+</script>
+
<?php if ($id !== $_USER) addToUserHistory($id); require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
diff --git a/_upload/aribtrary/index.php b/_upload/aribtrary/index.php
new file mode 100644
index 0000000..1b4ef51
--- /dev/null
+++ b/_upload/aribtrary/index.php
@@ -0,0 +1,48 @@
+<?php
+
+require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
+require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.php";
+
+global $_PROFILE; global $_USER;
+
+$id = $_GET['id'] ?? null;
+
+header("Content-Type: text/plain");
+
+if (isset($_POST["list"]) && is_array($_POST["list"])) {
+ foreach ($_POST as $uuid) {
+ if (str_contains($uuid, "/") || !file_exists($_SERVER['DOCUMENT_ROOT'] . "/uploads/" . $uuid . ".png")) continue;
+
+ $requestID = uuid();
+ file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/requests/" . $requestID . ".json", pf_utf8_encode(json_encode([
+ "type" => "galleryupload",
+ "author" => $_USER,
+ "id" => $id,
+ "uuid" => $uuid,
+ "contents" => null,
+ "summary" => $_POST["summary"],
+ "date" => date('c')
+ ])));
+
+ $_PROFILE["requests"][$id . ":" . $uuid] = $requestID;
+ }
+}
+
+$config = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/email.json"), true);
+file_get_contents('https://notifications.equestria.dev/delta', false, stream_context_create([
+ 'http' => [
+ 'method' => 'POST',
+ 'header' =>
+ "Content-Type: text/plain\r\n" .
+ "Title: " . formatPonypush("New change request published") . "\r\n" .
+ "Priority: default\r\n" .
+ "Tags: requests\r\n" .
+ "Actions: view, Open change requests, https://delta.equestria.dev/admin/requests/, clear=true\r\n" .
+ "Authorization: Basic " . base64_encode($config["ntfyuser"] . ":" . $config["ntfypass"]),
+ 'content' => formatPonypush($_PROFILE['first_name'] . " " . $_PROFILE["last_name"] . " published a request to upload an image to " . getNameFromId($id) . (isset($_POST["summary"]) && trim($_POST["summary"]) !== "" ? ": " . $_POST["summary"] : ""))
+ ]
+]));
+saveProfile();
+
+header("Location: /upload/$id&success");
+die(); \ No newline at end of file
diff --git a/admin/index.php b/admin/index.php
index bab5d96..70d07b8 100644
--- a/admin/index.php
+++ b/admin/index.php
@@ -15,7 +15,6 @@ require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
<a href="/admin/requests" class="list-group-item list-group-item-action"><?= l("lang_admin_titles_requests") ?></a>
<a href="/admin/registrations" class="list-group-item list-group-item-action"><?= l("lang_admin_titles_registrations") ?></a>
<a href="/admin/objects" class="list-group-item list-group-item-action"><?= l("lang_admin_titles_objects") ?></a>
- <a href="/admin/support" class="list-group-item list-group-item-action"><?= l("lang_admin_titles_support") ?></a>
<a href="/admin/codes" class="list-group-item list-group-item-action"><?= l("lang_admin_titles_codes") ?></a>
<a href="/admin/avatars" class="list-group-item list-group-item-action"><?= l("lang_admin_titles_avatars") ?></a>
</div>
diff --git a/admin/support/index.php b/admin/support/index.php
deleted file mode 100644
index e9959eb..0000000
--- a/admin/support/index.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-$title = "lang_admin_title";
-$title_pre = l("lang_admin_titles_support");
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-
-if (isset($_GET["q"])) {
- $_GET["q"] = preg_replace("/\D/m", "", $_GET["q"]);
- $_GET["q"] = substr($_GET["q"], 0, 9);
-
- if (strlen(trim($_GET["q"])) === 0) {
- unset($_GET["q"]);
- } else {
- $code = $_GET["q"];
- $_GET["q"] = substr($_GET["q"], 0, 3) . " " . substr($_GET["q"], 3, 3) . " " . substr($_GET["q"], 6, 3);
- }
-}
-
-$codes = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/supportcodes.json"), true);
-
-?>
-
-<div class="container">
- <br><br>
- <a href="/admin">← <?= l("lang_admin_title") ?></a>
- <h1><?= l("lang_admin_titles_support") ?></h1>
-
- <form>
- <p>
- <input autofocus="autofocus" name="q" autocapitalize="none" autocomplete="off" spellcheck="false" <?= !isset($_GET['q']) ? "autofocus" : "" ?> class="form-control" placeholder="XXX XXX XXX" value="<?= $_GET['q'] ?? "" ?>">
- </p>
- <button class="btn btn-outline-primary"><?= l("lang_admin_support_search") ?></button>
- </form>
-
- <?php if (isset($code)): ?>
- <hr>
- <?php if (in_array($code, array_keys($codes))): $profile = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/profiles/" . $codes[$code]["user"] . ".json"), true); ?>
- <p><b><?= $_GET["q"] ?> · <?= str_replace("%2", $profile["first_name"] . " " . $profile["last_name"], str_replace("%1", timeAgo($codes[$code]["date"]), l("lang_admin_support_request"))) ?></b><br>
- <?= l("lang_support_issues_" . $codes[$code]["type"][0]) ?> > <?= l("lang_support_types_" . $codes[$code]["type"][0] . "_" . $codes[$code]["type"][1]) ?></p>
-
- <b><?= l("lang_admin_support_profile") ?> (<a href="/admin/edit/?id=<?= $codes[$code]["user"] ?>" target="_blank"><?= l("lang_admin_support_edit") ?></a>)</b>
- <pre><?= str_replace(">", "&gt;", str_replace("<", "&lt;", json_encode($profile, JSON_PRETTY_PRINT))) ?></pre>
- <?php else: ?>
- <div class="alert alert-danger">
- <b><?= l("lang_upload_error") ?></b> <?= l("lang_admin_support_invalid") ?>
- </div>
- <?php endif; ?>
- <?php endif; ?>
-
- <br><br>
-</div>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
diff --git a/circle-plus.png b/circle-plus.png
deleted file mode 100644
index e816399..0000000
--- a/circle-plus.png
+++ /dev/null
Binary files differ
diff --git a/circle-ultra.png b/circle-ultra.png
deleted file mode 100644
index 74d3542..0000000
--- a/circle-ultra.png
+++ /dev/null
Binary files differ
diff --git a/ckeditor/ckeditor-build.js b/ckeditor/ckeditor-build.js
new file mode 100644
index 0000000..fbeba04
--- /dev/null
+++ b/ckeditor/ckeditor-build.js
@@ -0,0 +1,6 @@
+(function(t){const e=t["en"]=t["en"]||{};e.dictionary=Object.assign(e.dictionary||{},{"%0 of %1":"%0 of %1","Align cell text to the bottom":"Align cell text to the bottom","Align cell text to the center":"Align cell text to the center","Align cell text to the left":"Align cell text to the left","Align cell text to the middle":"Align cell text to the middle","Align cell text to the right":"Align cell text to the right","Align cell text to the top":"Align cell text to the top","Align center":"Align center","Align left":"Align left","Align right":"Align right","Align table to the left":"Align table to the left","Align table to the right":"Align table to the right",Alignment:"Alignment",All:"All","Almost equal to":"Almost equal to",Angle:"Angle","Approximately equal to":"Approximately equal to",Aquamarine:"Aquamarine",Arrows:"Arrows","Asterisk operator":"Asterisk operator","Austral sign":"Austral sign","back with leftwards arrow above":"back with leftwards arrow above",Background:"Background","Bitcoin sign":"Bitcoin sign",Black:"Black","Block quote":"Block quote","Block styles":"Block styles",Blue:"Blue",Bold:"Bold",Border:"Border","Break text":"Break text","Bulleted List":"Bulleted List","Bulleted list styles toolbar":"Bulleted list styles toolbar",Cancel:"Cancel","Caption for image: %0":"Caption for image: %0","Caption for the image":"Caption for the image","Cedi sign":"Cedi sign","Cell properties":"Cell properties","Cent sign":"Cent sign","Center table":"Center table","Centered image":"Centered image","Change image text alternative":"Change image text alternative","Character categories":"Character categories","Choose heading":"Choose heading",Circle:"Circle",Code:"Code","Colon sign":"Colon sign",Color:"Color","Color picker":"Color picker",Column:"Column","Contains as member":"Contains as member","Copyright sign":"Copyright sign","Cruzeiro sign":"Cruzeiro sign",Currency:"Currency","Currency sign":"Currency sign",Dashed:"Dashed",Decimal:"Decimal","Decimal with leading zero":"Decimal with leading zero","Decrease indent":"Decrease indent","Degree sign":"Degree sign","Delete column":"Delete column","Delete row":"Delete row","Dim grey":"Dim grey",Dimensions:"Dimensions",Disc:"Disc","Division sign":"Division sign","Dollar sign":"Dollar sign","Dong sign":"Dong sign",Dotted:"Dotted",Double:"Double","Double dagger":"Double dagger","Double exclamation mark":"Double exclamation mark","Double low-9 quotation mark":"Double low-9 quotation mark","Double question mark":"Double question mark",Downloadable:"Downloadable","downwards arrow to bar":"downwards arrow to bar","downwards dashed arrow":"downwards dashed arrow","downwards double arrow":"downwards double arrow","downwards simple arrow":"downwards simple arrow","Drachma sign":"Drachma sign","Dropdown toolbar":"Dropdown toolbar","Edit block":"Edit block","Edit link":"Edit link","Editor block content toolbar":"Editor block content toolbar","Editor contextual toolbar":"Editor contextual toolbar","Editor editing area: %0":"Editor editing area: %0","Editor toolbar":"Editor toolbar","Element of":"Element of","Em dash":"Em dash","Empty set":"Empty set","En dash":"En dash","end with leftwards arrow above":"end with leftwards arrow above","Enter image caption":"Enter image caption","Enter table caption":"Enter table caption","Euro sign":"Euro sign","Euro-currency sign":"Euro-currency sign","Exclamation question mark":"Exclamation question mark","For all":"For all","Fraction slash":"Fraction slash","French franc sign":"French franc sign","Full size image":"Full size image","German penny sign":"German penny sign","Greater-than or equal to":"Greater-than or equal to","Greater-than sign":"Greater-than sign",Green:"Green",Grey:"Grey",Groove:"Groove","Guarani sign":"Guarani sign","Header column":"Header column","Header row":"Header row",Heading:"Heading","Heading 1":"Heading 1","Heading 2":"Heading 2","Heading 3":"Heading 3","Heading 4":"Heading 4","Heading 5":"Heading 5","Heading 6":"Heading 6",Height:"Height","Horizontal ellipsis":"Horizontal ellipsis","Horizontal text alignment toolbar":"Horizontal text alignment toolbar","Hryvnia sign":"Hryvnia sign","HTML object":"HTML object","Identical to":"Identical to","Image resize list":"Image resize list","Image toolbar":"Image toolbar","image widget":"image widget","In line":"In line","Increase indent":"Increase indent","Indian rupee sign":"Indian rupee sign",Infinity:"Infinity",Insert:"Insert","Insert column left":"Insert column left","Insert column right":"Insert column right","Insert image":"Insert image","Insert image via URL":"Insert image via URL","Insert media":"Insert media","Insert paragraph after block":"Insert paragraph after block","Insert paragraph before block":"Insert paragraph before block","Insert row above":"Insert row above","Insert row below":"Insert row below","Insert table":"Insert table",Inset:"Inset",Integral:"Integral",Intersection:"Intersection","Inverted exclamation mark":"Inverted exclamation mark","Inverted question mark":"Inverted question mark",Italic:"Italic",Justify:"Justify","Justify cell text":"Justify cell text","Kip sign":"Kip sign",Latin:"Latin","Latin capital letter a with breve":"Latin capital letter a with breve","Latin capital letter a with macron":"Latin capital letter a with macron","Latin capital letter a with ogonek":"Latin capital letter a with ogonek","Latin capital letter c with acute":"Latin capital letter c with acute","Latin capital letter c with caron":"Latin capital letter c with caron","Latin capital letter c with circumflex":"Latin capital letter c with circumflex","Latin capital letter c with dot above":"Latin capital letter c with dot above","Latin capital letter d with caron":"Latin capital letter d with caron","Latin capital letter d with stroke":"Latin capital letter d with stroke","Latin capital letter e with breve":"Latin capital letter e with breve","Latin capital letter e with caron":"Latin capital letter e with caron","Latin capital letter e with dot above":"Latin capital letter e with dot above","Latin capital letter e with macron":"Latin capital letter e with macron","Latin capital letter e with ogonek":"Latin capital letter e with ogonek","Latin capital letter eng":"Latin capital letter eng","Latin capital letter g with breve":"Latin capital letter g with breve","Latin capital letter g with cedilla":"Latin capital letter g with cedilla","Latin capital letter g with circumflex":"Latin capital letter g with circumflex","Latin capital letter g with dot above":"Latin capital letter g with dot above","Latin capital letter h with circumflex":"Latin capital letter h with circumflex","Latin capital letter h with stroke":"Latin capital letter h with stroke","Latin capital letter i with breve":"Latin capital letter i with breve","Latin capital letter i with dot above":"Latin capital letter i with dot above","Latin capital letter i with macron":"Latin capital letter i with macron","Latin capital letter i with ogonek":"Latin capital letter i with ogonek","Latin capital letter i with tilde":"Latin capital letter i with tilde","Latin capital letter j with circumflex":"Latin capital letter j with circumflex","Latin capital letter k with cedilla":"Latin capital letter k with cedilla","Latin capital letter l with acute":"Latin capital letter l with acute","Latin capital letter l with caron":"Latin capital letter l with caron","Latin capital letter l with cedilla":"Latin capital letter l with cedilla","Latin capital letter l with middle dot":"Latin capital letter l with middle dot","Latin capital letter l with stroke":"Latin capital letter l with stroke","Latin capital letter n with acute":"Latin capital letter n with acute","Latin capital letter n with caron":"Latin capital letter n with caron","Latin capital letter n with cedilla":"Latin capital letter n with cedilla","Latin capital letter o with breve":"Latin capital letter o with breve","Latin capital letter o with double acute":"Latin capital letter o with double acute","Latin capital letter o with macron":"Latin capital letter o with macron","Latin capital letter r with acute":"Latin capital letter r with acute","Latin capital letter r with caron":"Latin capital letter r with caron","Latin capital letter r with cedilla":"Latin capital letter r with cedilla","Latin capital letter s with acute":"Latin capital letter s with acute","Latin capital letter s with caron":"Latin capital letter s with caron","Latin capital letter s with cedilla":"Latin capital letter s with cedilla","Latin capital letter s with circumflex":"Latin capital letter s with circumflex","Latin capital letter t with caron":"Latin capital letter t with caron","Latin capital letter t with cedilla":"Latin capital letter t with cedilla","Latin capital letter t with stroke":"Latin capital letter t with stroke","Latin capital letter u with breve":"Latin capital letter u with breve","Latin capital letter u with double acute":"Latin capital letter u with double acute","Latin capital letter u with macron":"Latin capital letter u with macron","Latin capital letter u with ogonek":"Latin capital letter u with ogonek","Latin capital letter u with ring above":"Latin capital letter u with ring above","Latin capital letter u with tilde":"Latin capital letter u with tilde","Latin capital letter w with circumflex":"Latin capital letter w with circumflex","Latin capital letter y with circumflex":"Latin capital letter y with circumflex","Latin capital letter y with diaeresis":"Latin capital letter y with diaeresis","Latin capital letter z with acute":"Latin capital letter z with acute","Latin capital letter z with caron":"Latin capital letter z with caron","Latin capital letter z with dot above":"Latin capital letter z with dot above","Latin capital ligature ij":"Latin capital ligature ij","Latin capital ligature oe":"Latin capital ligature oe","Latin small letter a with breve":"Latin small letter a with breve","Latin small letter a with macron":"Latin small letter a with macron","Latin small letter a with ogonek":"Latin small letter a with ogonek","Latin small letter c with acute":"Latin small letter c with acute","Latin small letter c with caron":"Latin small letter c with caron","Latin small letter c with circumflex":"Latin small letter c with circumflex","Latin small letter c with dot above":"Latin small letter c with dot above","Latin small letter d with caron":"Latin small letter d with caron","Latin small letter d with stroke":"Latin small letter d with stroke","Latin small letter dotless i":"Latin small letter dotless i","Latin small letter e with breve":"Latin small letter e with breve","Latin small letter e with caron":"Latin small letter e with caron","Latin small letter e with dot above":"Latin small letter e with dot above","Latin small letter e with macron":"Latin small letter e with macron","Latin small letter e with ogonek":"Latin small letter e with ogonek","Latin small letter eng":"Latin small letter eng","Latin small letter f with hook":"Latin small letter f with hook","Latin small letter g with breve":"Latin small letter g with breve","Latin small letter g with cedilla":"Latin small letter g with cedilla","Latin small letter g with circumflex":"Latin small letter g with circumflex","Latin small letter g with dot above":"Latin small letter g with dot above","Latin small letter h with circumflex":"Latin small letter h with circumflex","Latin small letter h with stroke":"Latin small letter h with stroke","Latin small letter i with breve":"Latin small letter i with breve","Latin small letter i with macron":"Latin small letter i with macron","Latin small letter i with ogonek":"Latin small letter i with ogonek","Latin small letter i with tilde":"Latin small letter i with tilde","Latin small letter j with circumflex":"Latin small letter j with circumflex","Latin small letter k with cedilla":"Latin small letter k with cedilla","Latin small letter kra":"Latin small letter kra","Latin small letter l with acute":"Latin small letter l with acute","Latin small letter l with caron":"Latin small letter l with caron","Latin small letter l with cedilla":"Latin small letter l with cedilla","Latin small letter l with middle dot":"Latin small letter l with middle dot","Latin small letter l with stroke":"Latin small letter l with stroke","Latin small letter long s":"Latin small letter long s","Latin small letter n preceded by apostrophe":"Latin small letter n preceded by apostrophe","Latin small letter n with acute":"Latin small letter n with acute","Latin small letter n with caron":"Latin small letter n with caron","Latin small letter n with cedilla":"Latin small letter n with cedilla","Latin small letter o with breve":"Latin small letter o with breve","Latin small letter o with double acute":"Latin small letter o with double acute","Latin small letter o with macron":"Latin small letter o with macron","Latin small letter r with acute":"Latin small letter r with acute","Latin small letter r with caron":"Latin small letter r with caron","Latin small letter r with cedilla":"Latin small letter r with cedilla","Latin small letter s with acute":"Latin small letter s with acute","Latin small letter s with caron":"Latin small letter s with caron","Latin small letter s with cedilla":"Latin small letter s with cedilla","Latin small letter s with circumflex":"Latin small letter s with circumflex","Latin small letter t with caron":"Latin small letter t with caron","Latin small letter t with cedilla":"Latin small letter t with cedilla","Latin small letter t with stroke":"Latin small letter t with stroke","Latin small letter u with breve":"Latin small letter u with breve","Latin small letter u with double acute":"Latin small letter u with double acute","Latin small letter u with macron":"Latin small letter u with macron","Latin small letter u with ogonek":"Latin small letter u with ogonek","Latin small letter u with ring above":"Latin small letter u with ring above","Latin small letter u with tilde":"Latin small letter u with tilde","Latin small letter w with circumflex":"Latin small letter w with circumflex","Latin small letter y with circumflex":"Latin small letter y with circumflex","Latin small letter z with acute":"Latin small letter z with acute","Latin small letter z with caron":"Latin small letter z with caron","Latin small letter z with dot above":"Latin small letter z with dot above","Latin small ligature ij":"Latin small ligature ij","Latin small ligature oe":"Latin small ligature oe","Left aligned image":"Left aligned image","Left double quotation mark":"Left double quotation mark","Left single quotation mark":"Left single quotation mark","Left-pointing double angle quotation mark":"Left-pointing double angle quotation mark","leftwards arrow to bar":"leftwards arrow to bar","leftwards dashed arrow":"leftwards dashed arrow","leftwards double arrow":"leftwards double arrow","leftwards simple arrow":"leftwards simple arrow","Less-than or equal to":"Less-than or equal to","Less-than sign":"Less-than sign","Light blue":"Light blue","Light green":"Light green","Light grey":"Light grey",Link:"Link","Link image":"Link image","Link URL":"Link URL","Lira sign":"Lira sign","List properties":"List properties","Livre tournois sign":"Livre tournois sign","Logical and":"Logical and","Logical or":"Logical or","Lower-latin":"Lower-latin","Lower–roman":"Lower–roman",Macron:"Macron","Manat sign":"Manat sign",Mathematical:"Mathematical","Media toolbar":"Media toolbar","Media URL":"Media URL","media widget":"media widget","Merge cell down":"Merge cell down","Merge cell left":"Merge cell left","Merge cell right":"Merge cell right","Merge cell up":"Merge cell up","Merge cells":"Merge cells","Mill sign":"Mill sign","Minus sign":"Minus sign","Multiple styles":"Multiple styles","Multiplication sign":"Multiplication sign","N-ary product":"N-ary product","N-ary summation":"N-ary summation",Nabla:"Nabla","Naira sign":"Naira sign","New sheqel sign":"New sheqel sign",Next:"Next",None:"None","Nordic mark sign":"Nordic mark sign","Not an element of":"Not an element of","Not equal to":"Not equal to","Not sign":"Not sign","Numbered List":"Numbered List","Numbered list styles toolbar":"Numbered list styles toolbar","on with exclamation mark with left right arrow above":"on with exclamation mark with left right arrow above","Open in a new tab":"Open in a new tab","Open link in new tab":"Open link in new tab","Open media in new tab":"Open media in new tab",Orange:"Orange",Original:"Original",Outset:"Outset",Overline:"Overline",Padding:"Padding","Page break":"Page break",Paragraph:"Paragraph","Paragraph sign":"Paragraph sign","Partial differential":"Partial differential","Paste the media URL in the input.":"Paste the media URL in the input.","Per mille sign":"Per mille sign","Per ten thousand sign":"Per ten thousand sign","Peseta sign":"Peseta sign","Peso sign":"Peso sign","Plus-minus sign":"Plus-minus sign","Pound sign":"Pound sign","Press Enter to type after or press Shift + Enter to type before the widget":"Press Enter to type after or press Shift + Enter to type before the widget",Previous:"Previous","Proportional to":"Proportional to",Purple:"Purple","Question exclamation mark":"Question exclamation mark",Red:"Red",Redo:"Redo","Registered sign":"Registered sign","Remove color":"Remove color","Remove Format":"Remove Format","Resize image":"Resize image","Resize image to %0":"Resize image to %0","Resize image to the original size":"Resize image to the original size","Restore default":"Restore default","Reversed order":"Reversed order","Reversed paragraph sign":"Reversed paragraph sign","Rich Text Editor":"Rich Text Editor",Ridge:"Ridge","Right aligned image":"Right aligned image","Right double quotation mark":"Right double quotation mark","Right single quotation mark":"Right single quotation mark","Right-pointing double angle quotation mark":"Right-pointing double angle quotation mark","rightwards arrow to bar":"rightwards arrow to bar","rightwards dashed arrow":"rightwards dashed arrow","rightwards double arrow":"rightwards double arrow","rightwards simple arrow":"rightwards simple arrow",Row:"Row","Ruble sign":"Ruble sign","Rupee sign":"Rupee sign",Save:"Save","Saving changes":"Saving changes","Section sign":"Section sign","Select all":"Select all","Select column":"Select column","Select row":"Select row","Show more items":"Show more items","Side image":"Side image","Single left-pointing angle quotation mark":"Single left-pointing angle quotation mark","Single low-9 quotation mark":"Single low-9 quotation mark","Single right-pointing angle quotation mark":"Single right-pointing angle quotation mark",Solid:"Solid","soon with rightwards arrow above":"soon with rightwards arrow above","Special characters":"Special characters","Spesmilo sign":"Spesmilo sign","Split cell horizontally":"Split cell horizontally","Split cell vertically":"Split cell vertically",Square:"Square","Square root":"Square root","Start at":"Start at","Start index must be greater than 0.":"Start index must be greater than 0.",Strikethrough:"Strikethrough",Style:"Style",Styles:"Styles",Subscript:"Subscript",Superscript:"Superscript","Table alignment toolbar":"Table alignment toolbar","Table cell text alignment":"Table cell text alignment","Table properties":"Table properties","Table toolbar":"Table toolbar","Tenge sign":"Tenge sign",Text:"Text","Text alignment":"Text alignment","Text alignment toolbar":"Text alignment toolbar","Text alternative":"Text alternative","Text styles":"Text styles",'The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".':'The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".',"The URL must not be empty.":"The URL must not be empty.",'The value is invalid. Try "10px" or "2em" or simply "2".':'The value is invalid. Try "10px" or "2em" or simply "2".',"There exists":"There exists","This link has no URL":"This link has no URL","This media URL is not supported.":"This media URL is not supported.","Tilde operator":"Tilde operator","Tip: Paste the URL into the content to embed faster.":"Tip: Paste the URL into the content to embed faster.","Toggle caption off":"Toggle caption off","Toggle caption on":"Toggle caption on","Toggle the circle list style":"Toggle the circle list style","Toggle the decimal list style":"Toggle the decimal list style","Toggle the decimal with leading zero list style":"Toggle the decimal with leading zero list style","Toggle the disc list style":"Toggle the disc list style","Toggle the lower–latin list style":"Toggle the lower–latin list style","Toggle the lower–roman list style":"Toggle the lower–roman list style","Toggle the square list style":"Toggle the square list style","Toggle the upper–latin list style":"Toggle the upper–latin list style","Toggle the upper–roman list style":"Toggle the upper–roman list style","top with upwards arrow above":"top with upwards arrow above","Trade mark sign":"Trade mark sign","Tugrik sign":"Tugrik sign","Turkish lira sign":"Turkish lira sign",Turquoise:"Turquoise","Two dot leader":"Two dot leader",Underline:"Underline",Undo:"Undo",Union:"Union",Unlink:"Unlink","up down arrow with base":"up down arrow with base",Update:"Update","Update image URL":"Update image URL","Upload failed":"Upload failed","Upload in progress":"Upload in progress","Upper-latin":"Upper-latin","Upper-roman":"Upper-roman","upwards arrow to bar":"upwards arrow to bar","upwards dashed arrow":"upwards dashed arrow","upwards double arrow":"upwards double arrow","upwards simple arrow":"upwards simple arrow","Vertical text alignment toolbar":"Vertical text alignment toolbar","Vulgar fraction one half":"Vulgar fraction one half","Vulgar fraction one quarter":"Vulgar fraction one quarter","Vulgar fraction three quarters":"Vulgar fraction three quarters",White:"White","Widget toolbar":"Widget toolbar",Width:"Width","Won sign":"Won sign","Wrap text":"Wrap text",Yellow:"Yellow","Yen sign":"Yen sign"})})(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
+/*!
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
+ * For licensing, see LICENSE.md.
+ */(function t(e,n){if(typeof exports==="object"&&typeof module==="object")module.exports=n();else if(typeof define==="function"&&define.amd)define([],n);else if(typeof exports==="object")exports["ClassicEditor"]=n();else e["ClassicEditor"]=n()})(self,(()=>(()=>{"use strict";var t={8180:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content code{background-color:hsla(0,0%,78%,.3);border-radius:2px;padding:.15em}.ck.ck-editor__editable .ck-code_selected{background-color:hsla(0,0%,78%,.5)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-basic-styles/theme/code.css"],names:[],mappings:"AAKA,iBACC,kCAAuC,CAEvC,iBAAkB,CADlB,aAED,CAEA,0CACC,kCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},636:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content blockquote{border-left:5px solid #ccc;font-style:italic;margin-left:0;margin-right:0;overflow:hidden;padding-left:1.5em;padding-right:1.5em}.ck-content[dir=rtl] blockquote{border-left:0;border-right:5px solid #ccc}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-block-quote/theme/blockquote.css"],names:[],mappings:"AAKA,uBAWC,0BAAsC,CADtC,iBAAkB,CAFlB,aAAc,CACd,cAAe,CAPf,eAAgB,CAIhB,kBAAmB,CADnB,mBAOD,CAEA,gCACC,aAAc,CACd,2BACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},390:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position{display:inline;pointer-events:none;position:relative}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{position:absolute;width:0}.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__selection-handle,.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__type-around{display:none}:root{--ck-clipboard-drop-target-dot-width:12px;--ck-clipboard-drop-target-dot-height:8px;--ck-clipboard-drop-target-color:var(--ck-color-focus-border)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{background:var(--ck-clipboard-drop-target-color);border:1px solid var(--ck-clipboard-drop-target-color);bottom:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);margin-left:-1px;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span:after{border-color:var(--ck-clipboard-drop-target-color) transparent transparent transparent;border-style:solid;border-width:calc(var(--ck-clipboard-drop-target-dot-height)) calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0 calc(var(--ck-clipboard-drop-target-dot-width)*.5);content:"";display:block;height:0;left:50%;position:absolute;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);transform:translateX(-50%);width:0}.ck.ck-editor__editable .ck-widget.ck-clipboard-drop-target-range{outline:var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color)!important}.ck.ck-editor__editable .ck-widget:-webkit-drag{zoom:.6;outline:none!important}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-clipboard/theme/clipboard.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-clipboard/clipboard.css"],names:[],mappings:"AASC,8DACC,cAAe,CAEf,mBAAoB,CADpB,iBAOD,CAJC,mEACC,iBAAkB,CAClB,OACD,CAWA,qJACC,YACD,CCzBF,MACC,yCAA0C,CAC1C,yCAA0C,CAC1C,6DACD,CAOE,mEAIC,gDAAiD,CADjD,sDAAuD,CAFvD,2DAA8D,CAI9D,gBAAiB,CAHjB,wDAqBD,CAfC,yEAWC,sFAAuF,CAEvF,kBAAmB,CADnB,qKAA0K,CAX1K,UAAW,CAIX,aAAc,CAFd,QAAS,CAIT,QAAS,CADT,iBAAkB,CAElB,wDAA2D,CAE3D,0BAA2B,CAR3B,OAYD,CA2DF,kEACC,gGACD,CAKA,gDACC,OAAS,CACT,sBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\tdisplay: inline;\n\t\tposition: relative;\n\t\tpointer-events: none;\n\n\t\t& span {\n\t\t\tposition: absolute;\n\t\t\twidth: 0;\n\t\t}\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\t& > .ck-widget__selection-handle {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > .ck-widget__type-around {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-clipboard-drop-target-dot-width: 12px;\n\t--ck-clipboard-drop-target-dot-height: 8px;\n\t--ck-clipboard-drop-target-color: var(--ck-color-focus-border)\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\t& span {\n\t\t\tbottom: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\t\t\tbackground: var(--ck-clipboard-drop-target-color);\n\t\t\tmargin-left: -1px;\n\n\t\t\t/* The triangle above the marker */\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 50%;\n\t\t\t\ttop: calc(var(--ck-clipboard-drop-target-dot-height) * -.5);\n\n\t\t\t\ttransform: translateX(-50%);\n\t\t\t\tborder-color: var(--ck-clipboard-drop-target-color) transparent transparent transparent;\n\t\t\t\tborder-width: calc(var(--ck-clipboard-drop-target-dot-height)) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width));\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t// Horizontal drop target (between blocks).\n\t& .ck.ck-clipboard-drop-target-position {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\theight: 0;\n\t\tmargin: 0;\n\t\ttext-align: initial;\n\n\t\t& .ck-clipboard-drop-target__line {\n\t\t\tposition: absolute;\n\t\t\twidth: 100%;\n\t\t\theight: 0;\n\t\t\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\t\t\tmargin-top: -1px;\n\n\t\t\t&::before {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: calc(-1 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\ttop: 0;\n\n\t\t\t\ttransform: translateY(-50%);\n\t\t\t\tborder-color: transparent transparent transparent var(--ck-clipboard-drop-target-color);\n\t\t\t\tborder-width: var(--ck-clipboard-drop-target-dot-size) 0 var(--ck-clipboard-drop-target-dot-size) calc(2 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tright: calc(-1 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\ttop: 0;\n\n\t\t\t\ttransform: translateY(-50%);\n\t\t\t\tborder-color: transparent var(--ck-clipboard-drop-target-color) transparent transparent;\n\t\t\t\tborder-width: var(--ck-clipboard-drop-target-dot-size) calc(2 * var(--ck-clipboard-drop-target-dot-size)) var(--ck-clipboard-drop-target-dot-size) 0;\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\t\t}\n\t}\n\t*/\n\n\t/*\n\t * Styles of the widget that it a drop target.\n\t */\n\t& .ck-widget.ck-clipboard-drop-target-range {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color) !important;\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\tzoom: 0.6;\n\t\toutline: none !important;\n\t}\n}\n'],sourceRoot:""}]);const l=a},3638:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-editor{position:relative}.ck.ck-editor .ck-editor__top .ck-sticky-panel .ck-toolbar{z-index:var(--ck-z-modal)}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-bottom-width:0}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar{border-bottom-width:1px;border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:0}.ck.ck-editor__main>.ck-editor__editable{background:var(--ck-color-base-background);border-radius:0}.ck-rounded-corners .ck.ck-editor__main>.ck-editor__editable,.ck.ck-editor__main>.ck-editor__editable.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}.ck.ck-editor__main>.ck-editor__editable:not(.ck-focused){border-color:var(--ck-color-base-border)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-editor-classic/theme/classiceditor.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-editor-classic/classiceditor.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,cAIC,iBAMD,CAJC,2DAEC,yBACD,CCLC,gDCED,eDKC,CAPA,uICMA,qCAAsC,CDJpC,2BAA4B,CAC5B,4BAIF,CAPA,gDAMC,qBACD,CAEA,iFACC,uBAAwB,CCR1B,eDaC,CANA,yMCHA,qCAAsC,CDOpC,eAEF,CAKF,yCAEC,0CAA2C,CCpB3C,eD8BD,CAZA,yHCdE,qCAAsC,CDmBtC,wBAAyB,CACzB,yBAMF,CAHC,0DACC,wCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor {\n\t/* All the elements within `.ck-editor` are positioned relatively to it.\n\t If any element needs to be positioned with respect to the <body>, etc.,\n\t it must land outside of the `.ck-editor` in DOM. */\n\tposition: relative;\n\n\t& .ck-editor__top .ck-sticky-panel .ck-toolbar {\n\t\t/* https://github.com/ckeditor/ckeditor5-editor-classic/issues/62 */\n\t\tz-index: var(--ck-z-modal);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_rounded.css";\n\n.ck.ck-editor__top {\n\t& .ck-sticky-panel {\n\t\t& .ck-toolbar {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-bottom-left-radius: 0;\n\t\t\t\tborder-bottom-right-radius: 0;\n\t\t\t}\n\n\t\t\tborder-bottom-width: 0;\n\t\t}\n\n\t\t& .ck-sticky-panel__content_sticky .ck-toolbar {\n\t\t\tborder-bottom-width: 1px;\n\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* Note: Use ck-editor__main to make sure these styles don\'t apply to other editor types */\n.ck.ck-editor__main > .ck-editor__editable {\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/113 */\n\tbackground: var(--ck-color-base-background);\n\n\t@mixin ck-rounded-corners {\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&:not(.ck-focused) {\n\t\tborder-color: var(--ck-color-base-border);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},8894:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-placeholder,.ck.ck-placeholder{position:relative}.ck .ck-placeholder:before,.ck.ck-placeholder:before{content:attr(data-placeholder);left:0;pointer-events:none;position:absolute;right:0}.ck.ck-read-only .ck-placeholder:before{display:none}.ck.ck-reset_all .ck-placeholder{position:relative}.ck .ck-placeholder:before,.ck.ck-placeholder:before{color:var(--ck-color-engine-placeholder-text);cursor:text}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-engine/theme/placeholder.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-engine/placeholder.css"],names:[],mappings:"AAMA,uCAEC,iBAWD,CATC,qDAIC,8BAA+B,CAF/B,MAAO,CAKP,mBAAoB,CANpB,iBAAkB,CAElB,OAKD,CAKA,wCACC,YACD,CAQD,iCACC,iBACD,CC5BC,qDAEC,6CAA8C,CAD9C,WAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* See ckeditor/ckeditor5#936. */\n.ck.ck-placeholder, .ck .ck-placeholder {\n\t&::before {\n\t\tcursor: text;\n\t\tcolor: var(--ck-color-engine-placeholder-text);\n\t}\n}\n"],sourceRoot:""}]);const l=a},4401:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-editor__editable span[data-ck-unsafe-element]{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-engine/theme/renderer.css"],names:[],mappings:"AAMA,qDACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},3230:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-heading_heading1{font-size:20px}.ck.ck-heading_heading2{font-size:17px}.ck.ck-heading_heading3{font-size:14px}.ck[class*=ck-heading_heading]{font-weight:700}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__button .ck-button__label{width:8em}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__panel .ck-list__item{min-width:18em}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-heading/theme/heading.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-heading/heading.css"],names:[],mappings:"AAKA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,+BACC,eACD,CCZC,2EACC,SACD,CAEA,uEACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},8468:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-html-object-embed-unfocused-outline-width:1px}.ck-widget.html-object-embed{background-color:var(--ck-color-base-foreground);font-size:var(--ck-font-size-base);min-width:calc(76px + var(--ck-spacing-standard));padding:var(--ck-spacing-small);padding-top:calc(var(--ck-font-size-tiny) + var(--ck-spacing-large))}.ck-widget.html-object-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-object-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.html-object-embed:before{background:#999;border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);content:attr(data-html-object-embed-label);font-family:var(--ck-font-face);font-size:var(--ck-font-size-tiny);font-style:normal;font-weight:400;left:var(--ck-spacing-standard);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-object-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);position:absolute;top:0;transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck-widget.html-object-embed .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck-widget.html-object-embed .html-object-embed__content{pointer-events:none}div.ck-widget.html-object-embed{margin:1em auto}span.ck-widget.html-object-embed{display:inline-block}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-html-support/theme/datafilter.css"],names:[],mappings:"AAKA,MACC,kDACD,CAEA,6BAEC,gDAAiD,CADjD,kCAAmC,CAKnC,iDAAkD,CAHlD,+BAAgC,CAEhC,oEAgCD,CA7BC,kEACC,wGACD,CAEA,oCAOC,eAA4B,CAG5B,iEAAkE,CAClE,qCAAsC,CAPtC,0CAA2C,CAS3C,+BAAgC,CADhC,kCAAmC,CAVnC,iBAAkB,CADlB,eAAmB,CAKnB,+BAAgC,CAGhC,yIAA0I,CAN1I,iBAAkB,CAElB,KAAM,CAGN,0GAMD,CAGA,2HACC,gBACD,CAEA,yDAEC,mBACD,CAGD,gCACC,eACD,CAEA,iCACC,oBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-html-object-embed-unfocused-outline-width: 1px;\n}\n\n.ck-widget.html-object-embed {\n\tfont-size: var(--ck-font-size-base);\n\tbackground-color: var(--ck-color-base-foreground);\n\tpadding: var(--ck-spacing-small);\n\t/* Leave space for label */\n\tpadding-top: calc(var(--ck-font-size-tiny) + var(--ck-spacing-large));\n\tmin-width: calc(76px + var(--ck-spacing-standard));\n\n\t&:not(.ck-widget_selected):not(:hover) {\n\t\toutline: var(--ck-html-object-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border);\n\t}\n\n\t&::before {\n\t\tfont-weight: normal;\n\t\tfont-style: normal;\n\t\tposition: absolute;\n\t\tcontent: attr(data-html-object-embed-label);\n\t\ttop: 0;\n\t\tleft: var(--ck-spacing-standard);\n\t\tbackground: hsl(0deg 0% 60%);\n\t\ttransition: background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\t\tpadding: calc(var(--ck-spacing-tiny) + var(--ck-html-object-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);\n\t\tborder-radius: 0 0 var(--ck-border-radius) var(--ck-border-radius);\n\t\tcolor: var(--ck-color-base-background);\n\t\tfont-size: var(--ck-font-size-tiny);\n\t\tfont-family: var(--ck-font-face);\n\t}\n\n\t/* Make space for label. */\n\t& .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before {\n\t\tmargin-left: 50px;\n\t}\n\n\t& .html-object-embed__content {\n\t\t/* Disable user interaction with embed content */\n\t\tpointer-events: none;\n\t}\n}\n\ndiv.ck-widget.html-object-embed {\n\tmargin: 1em auto;\n}\n\nspan.ck-widget.html-object-embed {\n\tdisplay: inline-block;\n}\n\n"],sourceRoot:""}]);const l=a},9048:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .image{clear:both;display:table;margin:.9em auto;min-width:50px;text-align:center}.ck-content .image img{display:block;margin:0 auto;max-width:100%;min-width:100%}.ck-content .image-inline{align-items:flex-start;display:inline-flex;max-width:100%}.ck-content .image-inline picture{display:flex}.ck-content .image-inline img,.ck-content .image-inline picture{flex-grow:1;flex-shrink:1;max-width:100%}.ck.ck-editor__editable .image>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}.ck.ck-editor__editable .image-inline.ck-widget_selected,.ck.ck-editor__editable .image.ck-widget_selected{z-index:1}.ck.ck-editor__editable .image-inline.ck-widget_selected ::selection{display:none}.ck.ck-editor__editable td .image-inline img,.ck.ck-editor__editable th .image-inline img{max-width:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/image.css"],names:[],mappings:"AAMC,mBAEC,UAAW,CADX,aAAc,CAOd,gBAAkB,CAGlB,cAAe,CARf,iBAuBD,CAbC,uBAEC,aAAc,CAGd,aAAc,CAGd,cAAe,CAGf,cACD,CAGD,0BAYC,sBAAuB,CANvB,mBAAoB,CAGpB,cAoBD,CAdC,kCACC,YACD,CAGA,gEAGC,WAAY,CACZ,aAAc,CAGd,cACD,CAUD,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAWA,2GACC,SAUD,CAHC,qEACC,YACD,CAOA,0FACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content {\n\t& .image {\n\t\tdisplay: table;\n\t\tclear: both;\n\t\ttext-align: center;\n\n\t\t/* Make sure there is some space between the content and the image. Center image by default. */\n\t\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\t \tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\t\tmargin: 0.9em auto;\n\n\t\t/* Make sure the caption will be displayed properly (See: https://github.com/ckeditor/ckeditor5/issues/1870). */\n\t\tmin-width: 50px;\n\n\t\t& img {\n\t\t\t/* Prevent unnecessary margins caused by line-height (see #44). */\n\t\t\tdisplay: block;\n\n\t\t\t/* Center the image if its width is smaller than the content\'s width. */\n\t\t\tmargin: 0 auto;\n\n\t\t\t/* Make sure the image never exceeds the size of the parent container (ckeditor/ckeditor5-ui#67). */\n\t\t\tmax-width: 100%;\n\n\t\t\t/* Make sure the image is never smaller than the parent container (See: https://github.com/ckeditor/ckeditor5/issues/9300). */\n\t\t\tmin-width: 100%\n\t\t}\n\t}\n\n\t& .image-inline {\n\t\t/*\n\t\t * Normally, the .image-inline would have "display: inline-block" and "img { width: 100% }" (to follow the wrapper while resizing).\n\t\t * Unfortunately, together with "srcset", it gets automatically stretched up to the width of the editing root.\n\t\t * This strange behavior does not happen with inline-flex.\n\t\t */\n\t\tdisplay: inline-flex;\n\n\t\t/* While being resized, don\'t allow the image to exceed the width of the editing root. */\n\t\tmax-width: 100%;\n\n\t\t/* This is required by Safari to resize images in a sensible way. Without this, the browser breaks the ratio. */\n\t\talign-items: flex-start;\n\n\t\t/* When the picture is present it must act as a flex container to let the img resize properly */\n\t\t& picture {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t/* When the picture is present, it must act like a resizable img. */\n\t\t& picture,\n\t\t& img {\n\t\t\t/* This is necessary for the img to span the entire .image-inline wrapper and to resize properly. */\n\t\t\tflex-grow: 1;\n\t\t\tflex-shrink: 1;\n\n\t\t\t/* Prevents overflowing the editing root boundaries when an inline image is very wide. */\n\t\t\tmax-width: 100%;\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Inhertit the content styles padding of the <figcaption> 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 <figcaption>.\n\t */\n\t& .image > figcaption.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the image caption placeholder doesn\'t overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\n\t/*\n\t * Make sure the selected inline image always stays on top of its siblings.\n\t * See https://github.com/ckeditor/ckeditor5/issues/9108.\n\t */\n\t& .image.ck-widget_selected {\n\t\tz-index: 1;\n\t}\n\n\t& .image-inline.ck-widget_selected {\n\t\tz-index: 1;\n\n\t\t/*\n\t\t * Make sure the native browser selection style is not displayed.\n\t\t * Inline image widgets have their own styles for the selected state and\n\t\t * leaving this up to the browser is asking for a visual collision.\n\t\t */\n\t\t& ::selection {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t/* The inline image nested in the table should have its original size if not resized.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9117. */\n\t& td,\n\t& th {\n\t\t& .image-inline img {\n\t\t\tmax-width: none;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const l=a},8662:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-image-caption-background:#f7f7f7;--ck-color-image-caption-text:#333;--ck-color-image-caption-highligted-background:#fd0}.ck-content .image>figcaption{background-color:var(--ck-color-image-caption-background);caption-side:bottom;color:var(--ck-color-image-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;word-break:break-word}.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:ck-image-caption-highlight .6s ease-out}@keyframes ck-image-caption-highlight{0%{background-color:var(--ck-color-image-caption-highligted-background)}to{background-color:var(--ck-color-image-caption-background)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imagecaption.css"],names:[],mappings:"AAKA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,mDACD,CAGA,8BAKC,yDAA0D,CAH1D,mBAAoB,CAEpB,wCAAyC,CAHzC,qBAAsB,CAMtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,qBAMD,CAGA,qEACC,iDACD,CAEA,sCACC,GACC,oEACD,CAEA,GACC,yDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-image-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-image-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-image-caption-highligted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .image > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: bottom;\n\tword-break: break-word;\n\tcolor: var(--ck-color-image-caption-text);\n\tbackground-color: var(--ck-color-image-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .image > figcaption.image__caption_highlighted {\n\tanimation: ck-image-caption-highlight .6s ease-out;\n}\n\n@keyframes ck-image-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-image-caption-highligted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-image-caption-background);\n\t}\n}\n"],sourceRoot:""}]);const l=a},9292:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-image-insert__panel{padding:var(--ck-spacing-large)}.ck.ck-image-insert__ck-finder-button{border:1px solid #ccc;border-radius:var(--ck-border-radius);display:block;margin:var(--ck-spacing-standard) auto;width:100%}.ck.ck-splitbutton>.ck-file-dialog-button.ck-button{border:none;margin:0;padding:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageinsert.css"],names:[],mappings:"AAKA,2BACC,+BACD,CAEA,sCAIC,qBAAiC,CACjC,qCAAsC,CAJtC,aAAc,CAEd,sCAAuC,CADvC,UAID,CAGA,oDAGC,WAAY,CADZ,QAAS,CADT,SAGD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-image-insert__panel {\n\tpadding: var(--ck-spacing-large);\n}\n\n.ck.ck-image-insert__ck-finder-button {\n\tdisplay: block;\n\twidth: 100%;\n\tmargin: var(--ck-spacing-standard) auto;\n\tborder: 1px solid hsl(0, 0%, 80%);\n\tborder-radius: var(--ck-border-radius);\n}\n\n/* https://github.com/ckeditor/ckeditor5/issues/7986 */\n.ck.ck-splitbutton > .ck-file-dialog-button.ck-button {\n\tpadding: 0;\n\tmargin: 0;\n\tborder: none;\n}\n"],sourceRoot:""}]);const l=a},5150:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-image-insert-form:focus{outline:none}.ck.ck-form__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__row>:not(.ck-label){flex-grow:1}.ck.ck-form__row.ck-image-insert-form__action-row{margin-top:var(--ck-spacing-standard)}.ck.ck-form__row.ck-image-insert-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-image-insert-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row.ck-image-insert-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageinsertformrowview.css"],names:[],mappings:"AAMC,+BAEC,YACD,CAGD,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAmBD,CAhBC,iCACC,WACD,CAEA,kDACC,qCAUD,CARC,sIAEC,sBACD,CAEA,+EACC,0BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-image-insert-form {\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n}\n\n.ck.ck-form__row {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-between;\n\n\t/* Ignore labels that work as fieldset legends */\n\t& > *:not(.ck-label) {\n\t\tflex-grow: 1;\n\t}\n\n\t&.ck-image-insert-form__action-row {\n\t\tmargin-top: var(--ck-spacing-standard);\n\n\t\t& .ck-button-save,\n\t\t& .ck-button-cancel {\n\t\t\tjustify-content: center;\n\t\t}\n\n\t\t& .ck-button .ck-button__label {\n\t\t\tcolor: var(--ck-color-text);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const l=a},1043:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .image.image_resized{box-sizing:border-box;display:block;max-width:100%}.ck-content .image.image_resized img{width:100%}.ck-content .image.image_resized>figcaption{display:block}.ck.ck-editor__editable td .image-inline.image_resized img,.ck.ck-editor__editable th .image-inline.image_resized img{max-width:100%}[dir=ltr] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-left:var(--ck-spacing-standard)}.ck.ck-dropdown .ck-button.ck-resize-image-button .ck-button__label{width:4em}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageresize.css"],names:[],mappings:"AAKA,iCAQC,qBAAsB,CADtB,aAAc,CANd,cAkBD,CATC,qCAEC,UACD,CAEA,4CAEC,aACD,CAQC,sHACC,cACD,CAIF,oFACC,uCACD,CAEA,oFACC,sCACD,CAEA,oEACC,SACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .image.image_resized {\n\tmax-width: 100%;\n\t/*\n\tThe `<figure>` 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 `<figure>` element that determines the image width. */\n\t\twidth: 100%;\n\t}\n\n\t& > figcaption {\n\t\t/* The `<figure>` element uses `display:block`, so `<figcaption>` 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 l=a},4622:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-image-style-spacing:1.5em;--ck-inline-image-style-spacing:calc(var(--ck-image-style-spacing)/2)}.ck-content .image-style-block-align-left,.ck-content .image-style-block-align-right{max-width:calc(100% - var(--ck-image-style-spacing))}.ck-content .image-style-align-left,.ck-content .image-style-align-right{clear:none}.ck-content .image-style-side{float:right;margin-left:var(--ck-image-style-spacing);max-width:50%}.ck-content .image-style-align-left{float:left;margin-right:var(--ck-image-style-spacing)}.ck-content .image-style-align-center{margin-left:auto;margin-right:auto}.ck-content .image-style-align-right{float:right;margin-left:var(--ck-image-style-spacing)}.ck-content .image-style-block-align-right{margin-left:auto;margin-right:0}.ck-content .image-style-block-align-left{margin-left:0;margin-right:auto}.ck-content p+.image-style-align-left,.ck-content p+.image-style-align-right,.ck-content p+.image-style-side{margin-top:0}.ck-content .image-inline.image-style-align-left,.ck-content .image-inline.image-style-align-right{margin-bottom:var(--ck-inline-image-style-spacing);margin-top:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-left{margin-right:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-right{margin-left:var(--ck-inline-image-style-spacing)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-background)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after{display:none}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-hover-background)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imagestyle.css"],names:[],mappings:"AAKA,MACC,8BAA+B,CAC/B,qEACD,CAMC,qFAEC,oDACD,CAIA,yEAEC,UACD,CAEA,8BACC,WAAY,CACZ,yCAA0C,CAC1C,aACD,CAEA,oCACC,UAAW,CACX,0CACD,CAEA,sCACC,gBAAiB,CACjB,iBACD,CAEA,qCACC,WAAY,CACZ,yCACD,CAEA,2CAEC,gBAAiB,CADjB,cAED,CAEA,0CACC,aAAc,CACd,iBACD,CAGA,6GAGC,YACD,CAGC,mGAGC,kDAAmD,CADnD,+CAED,CAEA,iDACC,iDACD,CAEA,kDACC,gDACD,CAUC,0lBAGC,qDAKD,CAHC,8nBACC,YACD,CAKD,oVAGC,2DACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},9899:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-image-upload-complete-icon{border-radius:50%;display:block;position:absolute;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);z-index:1}.ck-image-upload-complete-icon:after{content:"";position:absolute}:root{--ck-color-image-upload-icon:#fff;--ck-color-image-upload-icon-background:#008a00;--ck-image-upload-icon-size:20;--ck-image-upload-icon-width:2px;--ck-image-upload-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck-image-upload-complete-icon{animation-delay:0ms,3s;animation-duration:.5s,.5s;animation-fill-mode:forwards,forwards;animation-name:ck-upload-complete-icon-show,ck-upload-complete-icon-hide;background:var(--ck-color-image-upload-icon-background);font-size:calc(1px*var(--ck-image-upload-icon-size));height:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size));opacity:0;overflow:hidden;width:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size))}.ck-image-upload-complete-icon:after{animation-delay:.5s;animation-duration:.5s;animation-fill-mode:forwards;animation-name:ck-upload-complete-icon-check;border-right:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);border-top:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);box-sizing:border-box;height:0;left:25%;opacity:0;top:50%;transform:scaleX(-1) rotate(135deg);transform-origin:left top;width:0}@keyframes ck-upload-complete-icon-show{0%{opacity:0}to{opacity:1}}@keyframes ck-upload-complete-icon-hide{0%{opacity:1}to{opacity:0}}@keyframes ck-upload-complete-icon-check{0%{height:0;opacity:1;width:0}33%{height:0;width:.3em}to{height:.45em;opacity:1;width:.3em}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadicon.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadicon.css"],names:[],mappings:"AAKA,+BAUC,iBAAkB,CATlB,aAAc,CACd,iBAAkB,CAOlB,sCAAwC,CADxC,oCAAsC,CAGtC,SAMD,CAJC,qCACC,UAAW,CACX,iBACD,CChBD,MACC,iCAA8C,CAC9C,+CAA4D,CAG5D,8BAA+B,CAC/B,gCAAiC,CACjC,4DACD,CAEA,+BAWC,sBAA4B,CAN5B,0BAAgC,CADhC,qCAAuC,CADvC,wEAA0E,CAD1E,uDAAwD,CAMxD,oDAAuD,CAWvD,oFAAuF,CAlBvF,SAAU,CAgBV,eAAgB,CAChB,mFA0BD,CAtBC,qCAgBC,mBAAsB,CADtB,sBAAyB,CAEzB,4BAA6B,CAH7B,4CAA6C,CAF7C,sFAAuF,CADvF,oFAAqF,CASrF,qBAAsB,CAdtB,QAAS,CAJT,QAAS,CAGT,SAAU,CADV,OAAQ,CAKR,mCAAoC,CACpC,yBAA0B,CAH1B,OAcD,CAGD,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,yCACC,GAGC,QAAS,CAFT,SAAU,CACV,OAED,CACA,IAEC,QAAS,CADT,UAED,CACA,GAGC,YAAc,CAFd,SAAU,CACV,UAED,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-image-upload-icon: hsl(0, 0%, 100%);\n\t--ck-color-image-upload-icon-background: hsl(120, 100%, 27%);\n\n\t/* Match the icon size with the linked image indicator brought by the link image feature. */\n\t--ck-image-upload-icon-size: 20;\n\t--ck-image-upload-icon-width: 2px;\n\t--ck-image-upload-icon-is-visible: clamp(0px, 100% - 50px, 1px);\n}\n\n.ck-image-upload-complete-icon {\n\topacity: 0;\n\tbackground: var(--ck-color-image-upload-icon-background);\n\tanimation-name: ck-upload-complete-icon-show, ck-upload-complete-icon-hide;\n\tanimation-fill-mode: forwards, forwards;\n\tanimation-duration: 500ms, 500ms;\n\n\t/* To make animation scalable. */\n\tfont-size: calc(1px * var(--ck-image-upload-icon-size));\n\n\t/* Hide completed upload icon after 3 seconds. */\n\tanimation-delay: 0ms, 3000ms;\n\n\t/*\n\t * Use CSS math to simulate container queries.\n\t * https://css-tricks.com/the-raven-technique-one-step-closer-to-container-queries/#what-about-showing-and-hiding-things\n\t */\n\toverflow: hidden;\n\twidth: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\theight: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\n\t/* This is check icon element made from border-width mixed with animations. */\n\t&::after {\n\t\t/* Because of border transformation we need to "hard code" left position. */\n\t\tleft: 25%;\n\n\t\ttop: 50%;\n\t\topacity: 0;\n\t\theight: 0;\n\t\twidth: 0;\n\n\t\ttransform: scaleX(-1) rotate(135deg);\n\t\ttransform-origin: left top;\n\t\tborder-top: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\t\tborder-right: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\n\t\tanimation-name: ck-upload-complete-icon-check;\n\t\tanimation-duration: 500ms;\n\t\tanimation-delay: 500ms;\n\t\tanimation-fill-mode: forwards;\n\n\t\t/* #1095. While reset is not providing proper box-sizing for pseudoelements, we need to handle it. */\n\t\tbox-sizing: border-box;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-show {\n\tfrom {\n\t\topacity: 0;\n\t}\n\n\tto {\n\t\topacity: 1;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-hide {\n\tfrom {\n\t\topacity: 1;\n\t}\n\n\tto {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-check {\n\t0% {\n\t\topacity: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t}\n\t33% {\n\t\twidth: 0.3em;\n\t\theight: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t\twidth: 0.3em;\n\t\theight: 0.45em;\n\t}\n}\n'],sourceRoot:""}]);const l=a},9825:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck .ck-upload-placeholder-loader{align-items:center;display:flex;justify-content:center;left:0;position:absolute;top:0}.ck .ck-upload-placeholder-loader:before{content:"";position:relative}:root{--ck-color-upload-placeholder-loader:#b3b3b3;--ck-upload-placeholder-loader-size:32px;--ck-upload-placeholder-image-aspect-ratio:2.8}.ck .ck-image-upload-placeholder{margin:0;width:100%}.ck .ck-image-upload-placeholder.image-inline{width:calc(var(--ck-upload-placeholder-loader-size)*2*var(--ck-upload-placeholder-image-aspect-ratio))}.ck .ck-image-upload-placeholder img{aspect-ratio:var(--ck-upload-placeholder-image-aspect-ratio)}.ck .ck-upload-placeholder-loader{height:100%;width:100%}.ck .ck-upload-placeholder-loader:before{animation:ck-upload-placeholder-loader 1s linear infinite;border-radius:50%;border-right:2px solid transparent;border-top:3px solid var(--ck-color-upload-placeholder-loader);height:var(--ck-upload-placeholder-loader-size);width:var(--ck-upload-placeholder-loader-size)}@keyframes ck-upload-placeholder-loader{to{transform:rotate(1turn)}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadloader.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadloader.css"],names:[],mappings:"AAKA,kCAGC,kBAAmB,CADnB,YAAa,CAEb,sBAAuB,CAEvB,MAAO,CALP,iBAAkB,CAIlB,KAOD,CAJC,yCACC,UAAW,CACX,iBACD,CCXD,MACC,4CAAqD,CACrD,wCAAyC,CACzC,8CACD,CAEA,iCAGC,QAAS,CADT,UAgBD,CAbC,8CACC,sGACD,CAEA,qCAOC,4DACD,CAGD,kCAEC,WAAY,CADZ,UAWD,CARC,yCAMC,yDAA0D,CAH1D,iBAAkB,CAElB,kCAAmC,CADnC,8DAA+D,CAF/D,+CAAgD,CADhD,8CAMD,CAGD,wCACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},5870:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-editor__editable .image,.ck.ck-editor__editable .image-inline{position:relative}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{left:0;position:absolute;top:0}.ck.ck-editor__editable .image-inline.ck-appear,.ck.ck-editor__editable .image.ck-appear{animation:fadeIn .7s}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{background:var(--ck-color-upload-bar-background);height:2px;transition:width .1s;width:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadprogress.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadprogress.css"],names:[],mappings:"AAMC,qEAEC,iBACD,CAGA,uGAIC,MAAO,CAFP,iBAAkB,CAClB,KAED,CCRC,yFACC,oBACD,CAID,uGAIC,gDAAiD,CAFjD,UAAW,CAGX,oBAAuB,CAFvB,OAGD,CAGD,kBACC,GAAO,SAAY,CACnB,GAAO,SAAY,CACpB",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& .image,\n\t& .image-inline {\n\t\t/* Showing animation. */\n\t\t&.ck-appear {\n\t\t\tanimation: fadeIn 700ms;\n\t\t}\n\t}\n\n\t/* Upload progress bar. */\n\t& .image .ck-progress-bar,\n\t& .image-inline .ck-progress-bar {\n\t\theight: 2px;\n\t\twidth: 0;\n\t\tbackground: var(--ck-color-upload-bar-background);\n\t\ttransition: width 100ms;\n\t}\n}\n\n@keyframes fadeIn {\n\tfrom { opacity: 0; }\n\tto { opacity: 1; }\n}\n"],sourceRoot:""}]);const l=a},6831:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-text-alternative-form{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-text-alternative-form .ck-labeled-field-view{display:inline-block}.ck.ck-text-alternative-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-text-alternative-form{flex-wrap:wrap}.ck.ck-text-alternative-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-text-alternative-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/textalternativeform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,6BACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,oDACC,oBACD,CAEA,uCACC,YACD,CCZA,oCDCD,6BAcE,cAUF,CARE,oDACC,eACD,CAEA,wCACC,cACD,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},399:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-link_selected{background:var(--ck-color-link-selected-background)}.ck .ck-link_selected span.image-inline{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-link-selected-background)}.ck .ck-fake-link-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-link-selection_collapsed{border-right:1px solid var(--ck-color-base-text);height:100%;margin-right:-1px;outline:1px solid hsla(0,0%,100%,.5)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/link.css"],names:[],mappings:"AAMA,sBACC,mDAMD,CAHC,wCACC,yFACD,CAOD,4BACC,8CACD,CAGA,sCAEC,gDAAiD,CADjD,WAAY,CAEZ,iBAAkB,CAClB,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},9465:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-link-actions{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-link-actions .ck-link-actions__preview{display:inline-block}.ck.ck-link-actions .ck-link-actions__preview .ck-button__label{overflow:hidden}@media screen and (max-width:600px){.ck.ck-link-actions{flex-wrap:wrap}.ck.ck-link-actions .ck-link-actions__preview{flex-basis:100%}.ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){flex-basis:50%}}.ck.ck-link-actions .ck-button.ck-link-actions__preview{padding-left:0;padding-right:0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{color:var(--ck-color-link-default);cursor:pointer;max-width:var(--ck-input-width);min-width:3em;padding:0 var(--ck-spacing-medium);text-align:center;text-overflow:ellipsis}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label:hover{text-decoration:underline}.ck.ck-link-actions .ck-button.ck-link-actions__preview,.ck.ck-link-actions .ck-button.ck-link-actions__preview:active,.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus,.ck.ck-link-actions .ck-button.ck-link-actions__preview:hover{background:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:active{box-shadow:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus .ck-button__label{text-decoration:underline}[dir=ltr] .ck.ck-link-actions .ck-button:not(:first-child),[dir=rtl] .ck.ck-link-actions .ck-button:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-link-actions .ck-button.ck-link-actions__preview{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{max-width:100%;min-width:0}[dir=ltr] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview),[dir=rtl] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){margin-left:0}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkactions.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkactions.css"],names:[],mappings:"AAOA,oBACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,8CACC,oBAKD,CAHC,gEACC,eACD,CCXD,oCDCD,oBAcE,cAUF,CARE,8CACC,eACD,CAEA,8DACC,cACD,CCrBD,CCIA,wDACC,cAAe,CACf,eAmCD,CAjCC,0EAEC,kCAAmC,CAEnC,cAAe,CAIf,+BAAgC,CAChC,aAAc,CARd,kCAAmC,CASnC,iBAAkB,CAPlB,sBAYD,CAHC,gFACC,yBACD,CAGD,mPAIC,eACD,CAEA,+DACC,eACD,CAGC,gFACC,yBACD,CAWD,qHACC,sCACD,CDtDD,oCC0DC,wDACC,8DAMD,CAJC,0EAEC,cAAe,CADf,WAED,CAGD,gJAME,aAEF,CDzED",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},4827:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-link-form{display:flex}.ck.ck-link-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-link-form{flex-wrap:wrap}.ck.ck-link-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-link-form .ck-button{flex-basis:50%}}.ck.ck-link-form_layout-vertical{display:block}.ck.ck-link-form_layout-vertical .ck-button.ck-button-cancel,.ck.ck-link-form_layout-vertical .ck-button.ck-button-save{margin-top:var(--ck-spacing-medium)}.ck.ck-link-form_layout-vertical{min-width:var(--ck-input-width);padding:0}.ck.ck-link-form_layout-vertical .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) var(--ck-spacing-small)}.ck.ck-link-form_layout-vertical .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-link-form_layout-vertical>.ck-button{border-radius:0;margin:0;padding:var(--ck-spacing-standard);width:50%}.ck.ck-link-form_layout-vertical>.ck-button:not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-link-form_layout-vertical>.ck-button,[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button{margin-left:0}[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button:last-of-type{border-right:1px solid var(--ck-color-base-border)}.ck.ck-link-form_layout-vertical .ck.ck-list{margin:var(--ck-spacing-standard) var(--ck-spacing-large)}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton{padding:0;width:100%}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton:hover{background:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkform.css"],names:[],mappings:"AAOA,iBACC,YAiBD,CAfC,2BACC,YACD,CCNA,oCDCD,iBAQE,cAUF,CARE,wCACC,eACD,CAEA,4BACC,cACD,CCfD,CDuBD,iCACC,aAYD,CALE,wHAEC,mCACD,CE/BF,iCAEC,+BAAgC,CADhC,SAgDD,CA7CC,wDACC,8EAMD,CAJC,uEACC,WAAY,CACZ,UACD,CAGD,4CAIC,eAAgB,CAFhB,QAAS,CADT,kCAAmC,CAEnC,SAkBD,CAfC,wDACC,gDACD,CARD,4GAeE,aAMF,CAJE,mEACC,kDACD,CAKF,6CACC,yDAUD,CARC,wEACC,SAAU,CACV,UAKD,CAHC,8EACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-form {\n\tdisplay: flex;\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n\n/*\n * Style link form differently when manual decorators are available.\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\n */\n.ck.ck-link-form_layout-vertical {\n\tdisplay: block;\n\n\t/*\n\t * Whether the form is in the responsive mode or not, if there are decorator buttons\n\t * keep the top margin of action buttons medium.\n\t */\n\t& .ck-button {\n\t\t&.ck-button-save,\n\t\t&.ck-button-cancel {\n\t\t\tmargin-top: var(--ck-spacing-medium);\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},3858:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{display:block;position:absolute}:root{--ck-link-image-indicator-icon-size:20;--ck-link-image-indicator-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{background-color:rgba(0,0,0,.4);background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzQ4Ljc0OCAwIDAgMS0uMjE3LjIwNiA1LjI1MSA1LjI1MSAwIDAgMS04LjUwMy01Ljk1NS43NDEuNzQxIDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NGwuMDA2LjAwNHptNS40OTQtNS4zMzVhLjc0OC43NDggMCAwIDEtLjEyLjI3NGwtMS4xNDcgMS42MzlhLjc1Ljc1IDAgMSAxLTEuMjI4LS44NmwuODYtMS4yM2EzLjc1IDMuNzUgMCAwIDAtNi4xNDQtNC4zMDFsLS44NiAxLjIyOWEuNzUuNzUgMCAwIDEtMS4yMjktLjg2bDEuMTQ4LTEuNjRhLjc0OC43NDggMCAwIDEgLjIxNy0uMjA2IDUuMjUxIDUuMjUxIDAgMCAxIDguNTAzIDUuOTU1em0tNC41NjMtMi41MzJhLjc1Ljc1IDAgMCAxIC4xODQgMS4wNDVsLTMuMTU1IDQuNTA1YS43NS43NSAwIDEgMS0xLjIyOS0uODZsMy4xNTUtNC41MDZhLjc1Ljc1IDAgMCAxIDEuMDQ1LS4xODR6Ii8+PC9zdmc+");background-position:50%;background-repeat:no-repeat;background-size:14px;border-radius:100%;content:"";height:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size));overflow:hidden;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);width:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size))}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkimage.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkimage.css"],names:[],mappings:"AASE,+FACC,aAAc,CACd,iBACD,CCPF,MAEC,sCAAuC,CACvC,oEACD,CAME,+FAUC,+BAAqC,CACrC,83BAA+3B,CAG/3B,uBAA2B,CAD3B,2BAA4B,CAD5B,oBAAqB,CAGrB,kBAAmB,CAdnB,UAAW,CAsBX,oGAAuG,CAFvG,eAAgB,CAbhB,sCAAwC,CADxC,oCAAsC,CAetC,mGAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},3195:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-collapsible.ck-collapsible_collapsed>.ck-collapsible__children{display:none}:root{--ck-collapsible-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-collapsible>.ck.ck-button{border-radius:0;color:inherit;font-weight:700;padding:var(--ck-spacing-medium) var(--ck-spacing-large);width:100%}.ck.ck-collapsible>.ck.ck-button:focus{background:transparent}.ck.ck-collapsible>.ck.ck-button:active,.ck.ck-collapsible>.ck.ck-button:hover:not(:focus),.ck.ck-collapsible>.ck.ck-button:not(:focus){background:transparent;border-color:transparent;box-shadow:none}.ck.ck-collapsible>.ck.ck-button>.ck-icon{margin-right:var(--ck-spacing-medium);width:var(--ck-collapsible-arrow-size)}.ck.ck-collapsible>.ck-collapsible__children{padding:0 var(--ck-spacing-large) var(--ck-spacing-large)}.ck.ck-collapsible.ck-collapsible_collapsed>.ck.ck-button .ck-icon{transform:rotate(-90deg)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-list/theme/collapsible.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/collapsible.css"],names:[],mappings:"AAMC,sEACC,YACD,CCHD,MACC,yDACD,CAGC,iCAIC,eAAgB,CAChB,aAAc,CAHd,eAAiB,CACjB,wDAAyD,CAFzD,UAoBD,CAdC,uCACC,sBACD,CAEA,wIACC,sBAAuB,CACvB,wBAAyB,CACzB,eACD,CAEA,0CACC,qCAAsC,CACtC,sCACD,CAGD,6CACC,yDACD,CAGC,mEACC,wBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-collapsible-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-collapsible {\n\t& > .ck.ck-button {\n\t\twidth: 100%;\n\t\tfont-weight: bold;\n\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-large);\n\t\tborder-radius: 0;\n\t\tcolor: inherit;\n\n\t\t&:focus {\n\t\t\tbackground: transparent;\n\t\t}\n\n\t\t&:active, &:not(:focus), &:hover:not(:focus) {\n\t\t\tbackground: transparent;\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t& > .ck-icon {\n\t\t\tmargin-right: var(--ck-spacing-medium);\n\t\t\twidth: var(--ck-collapsible-arrow-size);\n\t\t}\n\t}\n\n\t& > .ck-collapsible__children {\n\t\tpadding: 0 var(--ck-spacing-large) var(--ck-spacing-large);\n\t}\n\n\t&.ck-collapsible_collapsed {\n\t\t& > .ck.ck-button .ck-icon {\n\t\t\ttransform: rotate(-90deg);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const l=a},9989:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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://./node_modules/@ckeditor/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-2023, CKSource Holding 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 l=a},7133:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-list-properties.ck-list-properties_without-styles{padding:var(--ck-spacing-large)}.ck.ck-list-properties.ck-list-properties_without-styles>*{min-width:14em}.ck.ck-list-properties.ck-list-properties_without-styles>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-list-styles-list{grid-template-columns:repeat(4,auto)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible{border-top:1px solid var(--ck-color-base-border)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*{width:100%}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties .ck.ck-numbered-list-properties__start-index .ck-input{min-width:auto;width:100%}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order{background:transparent;margin-bottom:calc(var(--ck-spacing-tiny)*-1);padding-left:0;padding-right:0}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:active,.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:hover{background:none;border-color:transparent;box-shadow:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/listproperties.css"],names:[],mappings:"AAOC,yDACC,+BASD,CAPC,2DACC,cAKD,CAHC,6DACC,qCACD,CASD,wFACC,oCACD,CAGA,mFACC,gDAWD,CARE,+GACC,UAKD,CAHC,iHACC,qCACD,CAMJ,8EACC,cAAe,CACf,UACD,CAEA,uEACC,sBAAuB,CAGvB,6CAAgD,CAFhD,cAAe,CACf,eAQD,CALC,2JAGC,eAAgB,CADhB,wBAAyB,CADzB,eAGD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},4553:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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://./node_modules/@ckeditor/ckeditor5-list/theme/liststyles.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/liststyles.css"],names:[],mappings:"AAKA,wBACC,YACD,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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},5777:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .media{clear:both;display:block;margin:.9em 0;min-width:15em}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaembed.css"],names:[],mappings:"AAKA,mBAGC,UAAW,CASX,aAAc,CAJd,aAAe,CAQf,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .media {\n\t/* Don\'t allow floated content overlap the media.\n\thttps://github.com/ckeditor/ckeditor5-media-embed/issues/53 */\n\tclear: both;\n\n\t/* Make sure there is some space between the content and the media. */\n\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\tmargin: 0.9em 0;\n\n\t/* Make sure media is not overriden with Bootstrap default `flex` value.\n\tSee: https://github.com/ckeditor/ckeditor5/issues/1373. */\n\tdisplay: block;\n\n\t/* Give the media some minimal width in the content to prevent them\n\tfrom being "squashed" in tight spaces, e.g. in table cells (#44) */\n\tmin-width: 15em;\n}\n'],sourceRoot:""}]);const l=a},952:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-media__wrapper .ck-media__placeholder{align-items:center;display:flex;flex-direction:column}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url{max-width:100%;position:relative}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url .ck-media__placeholder__url__text{display:block;overflow:hidden}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck-media__placeholder__icon *{display:none}.ck-editor__editable:not(.ck-read-only) .ck-media__wrapper>:not(.ck-media__placeholder),.ck-editor__editable:not(.ck-read-only) .ck-widget:not(.ck-widget_selected) .ck-media__placeholder{pointer-events:none}:root{--ck-media-embed-placeholder-icon-size:3em;--ck-color-media-embed-placeholder-url-text:#757575;--ck-color-media-embed-placeholder-url-text-hover:var(--ck-color-base-text)}.ck-media__wrapper{margin:0 auto}.ck-media__wrapper .ck-media__placeholder{background:var(--ck-color-base-foreground);padding:calc(var(--ck-spacing-standard)*3)}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon{background-position:50%;background-size:cover;height:var(--ck-media-embed-placeholder-icon-size);margin-bottom:var(--ck-spacing-large);min-width:var(--ck-media-embed-placeholder-icon-size)}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon .ck-icon{height:100%;width:100%}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text{color:var(--ck-color-media-embed-placeholder-url-text);font-style:italic;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:var(--ck-color-media-embed-placeholder-url-text-hover);cursor:pointer;text-decoration:underline}.ck-media__wrapper[data-oembed-url*="open.spotify.com"]{max-height:380px;max-width:300px}.ck-media__wrapper[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTAuMzc4IiBoZWlnaHQ9IjI1NC4xNjciIHZpZXdCb3g9IjAgMCA2Ni4yNDYgNjcuMjQ4Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcyLjUzMSAtMjE4LjQ1NSkgc2NhbGUoLjk4MDEyKSI+PHJlY3Qgcnk9IjUuMjM4IiByeD0iNS4yMzgiIHk9IjIzMS4zOTkiIHg9IjE3Ni4wMzEiIGhlaWdodD0iNjAuMDk5IiB3aWR0aD0iNjAuMDk5IiBmaWxsPSIjMzRhNjY4IiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxwYXRoIGQ9Im0yMDYuNDc3IDI2MC45LTI4Ljk4NyAyOC45ODdhNS4yMTggNS4yMTggMCAwIDAgMy43OCAxLjYxaDQ5LjYyMWMxLjY5NCAwIDMuMTktLjc5OCA0LjE0Ni0yLjAzN3oiIGZpbGw9IiM1Yzg4YzUiLz48cGF0aCBkPSJNMjI2Ljc0MiAyMjIuOTg4Yy05LjI2NiAwLTE2Ljc3NyA3LjE3LTE2Ljc3NyAxNi4wMTQuMDA3IDIuNzYyLjY2MyA1LjQ3NCAyLjA5MyA3Ljg3NS40My43MDMuODMgMS40MDggMS4xOSAyLjEwNy4zMzMuNTAyLjY1IDEuMDA1Ljk1IDEuNTA4LjM0My40NzcuNjczLjk1Ny45ODggMS40NCAxLjMxIDEuNzY5IDIuNSAzLjUwMiAzLjYzNyA1LjE2OC43OTMgMS4yNzUgMS42ODMgMi42NCAyLjQ2NiAzLjk5IDIuMzYzIDQuMDk0IDQuMDA3IDguMDkyIDQuNiAxMy45MTR2LjAxMmMuMTgyLjQxMi41MTYuNjY2Ljg3OS42NjcuNDAzLS4wMDEuNzY4LS4zMTQuOTMtLjc5OS42MDMtNS43NTYgMi4yMzgtOS43MjkgNC41ODUtMTMuNzk0Ljc4Mi0xLjM1IDEuNjczLTIuNzE1IDIuNDY1LTMuOTkgMS4xMzctMS42NjYgMi4zMjgtMy40IDMuNjM4LTUuMTY5LjMxNS0uNDgyLjY0NS0uOTYyLjk4OC0xLjQzOS4zLS41MDMuNjE3LTEuMDA2Ljk1LTEuNTA4LjM1OS0uNy43Ni0xLjQwNCAxLjE5LTIuMTA3IDEuNDI2LTIuNDAyIDItNS4xMTQgMi4wMDQtNy44NzUgMC04Ljg0NC03LjUxMS0xNi4wMTQtMTYuNzc2LTE2LjAxNHoiIGZpbGw9IiNkZDRiM2UiIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PGVsbGlwc2Ugcnk9IjUuNTY0IiByeD0iNS44MjgiIGN5PSIyMzkuMDAyIiBjeD0iMjI2Ljc0MiIgZmlsbD0iIzgwMmQyNyIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMTkwLjMwMSAyMzcuMjgzYy00LjY3IDAtOC40NTcgMy44NTMtOC40NTcgOC42MDZzMy43ODYgOC42MDcgOC40NTcgOC42MDdjMy4wNDMgMCA0LjgwNi0uOTU4IDYuMzM3LTIuNTE2IDEuNTMtMS41NTcgMi4wODctMy45MTMgMi4wODctNi4yOSAwLS4zNjItLjAyMy0uNzIyLS4wNjQtMS4wNzloLTguMjU3djMuMDQzaDQuODVjLS4xOTcuNzU5LS41MzEgMS40NS0xLjA1OCAxLjk4Ni0uOTQyLjk1OC0yLjAyOCAxLjU0OC0zLjkwMSAxLjU0OC0yLjg3NiAwLTUuMjA4LTIuMzcyLTUuMjA4LTUuMjk5IDAtMi45MjYgMi4zMzItNS4yOTkgNS4yMDgtNS4yOTkgMS4zOTkgMCAyLjYxOC40MDcgMy41ODQgMS4yOTNsMi4zODEtMi4zOGMwLS4wMDItLjAwMy0uMDA0LS4wMDQtLjAwNS0xLjU4OC0xLjUyNC0zLjYyLTIuMjE1LTUuOTU1LTIuMjE1em00LjQzIDUuNjYuMDAzLjAwNnYtLjAwM3oiIGZpbGw9IiNmZmYiIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PHBhdGggZD0ibTIxNS4xODQgMjUxLjkyOS03Ljk4IDcuOTc5IDI4LjQ3NyAyOC40NzVhNS4yMzMgNS4yMzMgMCAwIDAgLjQ0OS0yLjEyM3YtMzEuMTY1Yy0uNDY5LjY3NS0uOTM0IDEuMzQ5LTEuMzgyIDIuMDA1LS43OTIgMS4yNzUtMS42ODIgMi42NC0yLjQ2NSAzLjk5LTIuMzQ3IDQuMDY1LTMuOTgyIDguMDM4LTQuNTg1IDEzLjc5NC0uMTYyLjQ4NS0uNTI3Ljc5OC0uOTMuNzk5LS4zNjMtLjAwMS0uNjk3LS4yNTUtLjg3OS0uNjY3di0uMDEyYy0uNTkzLTUuODIyLTIuMjM3LTkuODItNC42LTEzLjkxNC0uNzgzLTEuMzUtMS42NzMtMi43MTUtMi40NjYtMy45OS0xLjEzNy0xLjY2Ni0yLjMyNy0zLjQtMy42MzctNS4xNjlsLS4wMDItLjAwM3oiIGZpbGw9IiNjM2MzYzMiLz48cGF0aCBkPSJtMjEyLjk4MyAyNDguNDk1LTM2Ljk1MiAzNi45NTN2LjgxMmE1LjIyNyA1LjIyNyAwIDAgMCA1LjIzOCA1LjIzOGgxLjAxNWwzNS42NjYtMzUuNjY2YTEzNi4yNzUgMTM2LjI3NSAwIDAgMC0yLjc2NC0zLjkgMzcuNTc1IDM3LjU3NSAwIDAgMC0uOTg5LTEuNDQgMzUuMTI3IDM1LjEyNyAwIDAgMC0uOTUtMS41MDhjLS4wODMtLjE2Mi0uMTc2LS4zMjYtLjI2NC0uNDg5eiIgZmlsbD0iI2ZkZGM0ZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJtMjExLjk5OCAyNjEuMDgzLTYuMTUyIDYuMTUxIDI0LjI2NCAyNC4yNjRoLjc4MWE1LjIyNyA1LjIyNyAwIDAgMCA1LjIzOS01LjIzOHYtMS4wNDV6IiBmaWxsPSIjZmZmIiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjwvZz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder{background:#4268b3}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAyNCIgaGVpZ2h0PSIxMDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik05NjcuNDg0IDBINTYuNTE3QzI1LjMwNCAwIDAgMjUuMzA0IDAgNTYuNTE3djkxMC45NjZDMCA5OTguNjk0IDI1LjI5NyAxMDI0IDU2LjUyMiAxMDI0SDU0N1Y2MjhINDE0VjQ3M2gxMzNWMzU5LjAyOWMwLTEzMi4yNjIgODAuNzczLTIwNC4yODIgMTk4Ljc1Ni0yMDQuMjgyIDU2LjUxMyAwIDEwNS4wODYgNC4yMDggMTE5LjI0NCA2LjA4OVYyOTlsLTgxLjYxNi4wMzdjLTYzLjk5MyAwLTc2LjM4NCAzMC40OTItNzYuMzg0IDc1LjIzNlY0NzNoMTUzLjQ4N2wtMTkuOTg2IDE1NUg3MDd2Mzk2aDI2MC40ODRjMzEuMjEzIDAgNTYuNTE2LTI1LjMwMyA1Ni41MTYtNTYuNTE2VjU2LjUxNUMxMDI0IDI1LjMwMyA5OTguNjk3IDAgOTY3LjQ4NCAwIiBmaWxsPSIjRkZGRkZFIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#cdf}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder{background:linear-gradient(-135deg,#1400c7,#b800b1,#f50000)}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTA0IiBoZWlnaHQ9IjUwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PHBhdGggaWQ9ImEiIGQ9Ik0wIC4xNTloNTAzLjg0MVY1MDMuOTRIMHoiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48bWFzayBpZD0iYiIgZmlsbD0iI2ZmZiI+PHVzZSB4bGluazpocmVmPSIjYSIvPjwvbWFzaz48cGF0aCBkPSJNMjUxLjkyMS4xNTljLTY4LjQxOCAwLTc2Ljk5Ny4yOS0xMDMuODY3IDEuNTE2LTI2LjgxNCAxLjIyMy00NS4xMjcgNS40ODItNjEuMTUxIDExLjcxLTE2LjU2NiA2LjQzNy0zMC42MTUgMTUuMDUxLTQ0LjYyMSAyOS4wNTYtMTQuMDA1IDE0LjAwNi0yMi42MTkgMjguMDU1LTI5LjA1NiA0NC42MjEtNi4yMjggMTYuMDI0LTEwLjQ4NyAzNC4zMzctMTEuNzEgNjEuMTUxQy4yOSAxNzUuMDgzIDAgMTgzLjY2MiAwIDI1Mi4wOGMwIDY4LjQxNy4yOSA3Ni45OTYgMS41MTYgMTAzLjg2NiAxLjIyMyAyNi44MTQgNS40ODIgNDUuMTI3IDExLjcxIDYxLjE1MSA2LjQzNyAxNi41NjYgMTUuMDUxIDMwLjYxNSAyOS4wNTYgNDQuNjIxIDE0LjAwNiAxNC4wMDUgMjguMDU1IDIyLjYxOSA0NC42MjEgMjkuMDU3IDE2LjAyNCA2LjIyNyAzNC4zMzcgMTAuNDg2IDYxLjE1MSAxMS43MDkgMjYuODcgMS4yMjYgMzUuNDQ5IDEuNTE2IDEwMy44NjcgMS41MTYgNjguNDE3IDAgNzYuOTk2LS4yOSAxMDMuODY2LTEuNTE2IDI2LjgxNC0xLjIyMyA0NS4xMjctNS40ODIgNjEuMTUxLTExLjcwOSAxNi41NjYtNi40MzggMzAuNjE1LTE1LjA1MiA0NC42MjEtMjkuMDU3IDE0LjAwNS0xNC4wMDYgMjIuNjE5LTI4LjA1NSAyOS4wNTctNDQuNjIxIDYuMjI3LTE2LjAyNCAxMC40ODYtMzQuMzM3IDExLjcwOS02MS4xNTEgMS4yMjYtMjYuODcgMS41MTYtMzUuNDQ5IDEuNTE2LTEwMy44NjYgMC02OC40MTgtLjI5LTc2Ljk5Ny0xLjUxNi0xMDMuODY3LTEuMjIzLTI2LjgxNC01LjQ4Mi00NS4xMjctMTEuNzA5LTYxLjE1MS02LjQzOC0xNi41NjYtMTUuMDUyLTMwLjYxNS0yOS4wNTctNDQuNjIxLTE0LjAwNi0xNC4wMDUtMjguMDU1LTIyLjYxOS00NC42MjEtMjkuMDU2LTE2LjAyNC02LjIyOC0zNC4zMzctMTAuNDg3LTYxLjE1MS0xMS43MUMzMjguOTE3LjQ0OSAzMjAuMzM4LjE1OSAyNTEuOTIxLjE1OVptMCA0NS4zOTFjNjcuMjY1IDAgNzUuMjMzLjI1NyAxMDEuNzk3IDEuNDY5IDI0LjU2MiAxLjEyIDM3LjkwMSA1LjIyNCA0Ni43NzggOC42NzQgMTEuNzU5IDQuNTcgMjAuMTUxIDEwLjAyOSAyOC45NjYgMTguODQ1IDguODE2IDguODE1IDE0LjI3NSAxNy4yMDcgMTguODQ1IDI4Ljk2NiAzLjQ1IDguODc3IDcuNTU0IDIyLjIxNiA4LjY3NCA0Ni43NzggMS4yMTIgMjYuNTY0IDEuNDY5IDM0LjUzMiAxLjQ2OSAxMDEuNzk4IDAgNjcuMjY1LS4yNTcgNzUuMjMzLTEuNDY5IDEwMS43OTctMS4xMiAyNC41NjItNS4yMjQgMzcuOTAxLTguNjc0IDQ2Ljc3OC00LjU3IDExLjc1OS0xMC4wMjkgMjAuMTUxLTE4Ljg0NSAyOC45NjYtOC44MTUgOC44MTYtMTcuMjA3IDE0LjI3NS0yOC45NjYgMTguODQ1LTguODc3IDMuNDUtMjIuMjE2IDcuNTU0LTQ2Ljc3OCA4LjY3NC0yNi41NiAxLjIxMi0zNC41MjcgMS40NjktMTAxLjc5NyAxLjQ2OS02Ny4yNzEgMC03NS4yMzctLjI1Ny0xMDEuNzk4LTEuNDY5LTI0LjU2Mi0xLjEyLTM3LjkwMS01LjIyNC00Ni43NzgtOC42NzQtMTEuNzU5LTQuNTctMjAuMTUxLTEwLjAyOS0yOC45NjYtMTguODQ1LTguODE1LTguODE1LTE0LjI3NS0xNy4yMDctMTguODQ1LTI4Ljk2Ni0zLjQ1LTguODc3LTcuNTU0LTIyLjIxNi04LjY3NC00Ni43NzgtMS4yMTItMjYuNTY0LTEuNDY5LTM0LjUzMi0xLjQ2OS0xMDEuNzk3IDAtNjcuMjY2LjI1Ny03NS4yMzQgMS40NjktMTAxLjc5OCAxLjEyLTI0LjU2MiA1LjIyNC0zNy45MDEgOC42NzQtNDYuNzc4IDQuNTctMTEuNzU5IDEwLjAyOS0yMC4xNTEgMTguODQ1LTI4Ljk2NiA4LjgxNS04LjgxNiAxNy4yMDctMTQuMjc1IDI4Ljk2Ni0xOC44NDUgOC44NzctMy40NSAyMi4yMTYtNy41NTQgNDYuNzc4LTguNjc0IDI2LjU2NC0xLjIxMiAzNC41MzItMS40NjkgMTAxLjc5OC0xLjQ2OVoiIGZpbGw9IiNGRkYiIG1hc2s9InVybCgjYikiLz48cGF0aCBkPSJNMjUxLjkyMSAzMzYuMDUzYy00Ni4zNzggMC04My45NzQtMzcuNTk2LTgzLjk3NC04My45NzMgMC00Ni4zNzggMzcuNTk2LTgzLjk3NCA4My45NzQtODMuOTc0IDQ2LjM3NyAwIDgzLjk3MyAzNy41OTYgODMuOTczIDgzLjk3NCAwIDQ2LjM3Ny0zNy41OTYgODMuOTczLTgzLjk3MyA4My45NzNabTAtMjEzLjMzOGMtNzEuNDQ3IDAtMTI5LjM2NSA1Ny45MTgtMTI5LjM2NSAxMjkuMzY1IDAgNzEuNDQ2IDU3LjkxOCAxMjkuMzY0IDEyOS4zNjUgMTI5LjM2NCA3MS40NDYgMCAxMjkuMzY0LTU3LjkxOCAxMjkuMzY0LTEyOS4zNjQgMC03MS40NDctNTcuOTE4LTEyOS4zNjUtMTI5LjM2NC0xMjkuMzY1Wk00MTYuNjI3IDExNy42MDRjMCAxNi42OTYtMTMuNTM1IDMwLjIzLTMwLjIzMSAzMC4yMy0xNi42OTUgMC0zMC4yMy0xMy41MzQtMzAuMjMtMzAuMjMgMC0xNi42OTYgMTMuNTM1LTMwLjIzMSAzMC4yMy0zMC4yMzEgMTYuNjk2IDAgMzAuMjMxIDEzLjUzNSAzMC4yMzEgMzAuMjMxIiBmaWxsPSIjRkZGIi8+PC9nPjwvc3ZnPg==)}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#ffe0fe}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder{background:linear-gradient(90deg,#71c6f4,#0d70a5)}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MDAgNDAwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0MDAgNDAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNNDAwIDIwMGMwIDExMC41LTg5LjUgMjAwLTIwMCAyMDBTMCAzMTAuNSAwIDIwMCA4OS41IDAgMjAwIDBzMjAwIDg5LjUgMjAwIDIwMHpNMTYzLjQgMzA1LjVjODguNyAwIDEzNy4yLTczLjUgMTM3LjItMTM3LjIgMC0yLjEgMC00LjItLjEtNi4yIDkuNC02LjggMTcuNi0xNS4zIDI0LjEtMjUtOC42IDMuOC0xNy45IDYuNC0yNy43IDcuNiAxMC02IDE3LjYtMTUuNCAyMS4yLTI2LjctOS4zIDUuNS0xOS42IDkuNS0zMC42IDExLjctOC44LTkuNC0yMS4zLTE1LjItMzUuMi0xNS4yLTI2LjYgMC00OC4yIDIxLjYtNDguMiA0OC4yIDAgMy44LjQgNy41IDEuMyAxMS00MC4xLTItNzUuNi0yMS4yLTk5LjQtNTAuNC00LjEgNy4xLTYuNSAxNS40LTYuNSAyNC4yIDAgMTYuNyA4LjUgMzEuNSAyMS41IDQwLjEtNy45LS4yLTE1LjMtMi40LTIxLjgtNnYuNmMwIDIzLjQgMTYuNiA0Mi44IDM4LjcgNDcuMy00IDEuMS04LjMgMS43LTEyLjcgMS43LTMuMSAwLTYuMS0uMy05LjEtLjkgNi4xIDE5LjIgMjMuOSAzMy4xIDQ1IDMzLjUtMTYuNSAxMi45LTM3LjMgMjAuNi01OS45IDIwLjYtMy45IDAtNy43LS4yLTExLjUtLjcgMjEuMSAxMy44IDQ2LjUgMjEuOCA3My43IDIxLjgiIHN0eWxlPSJmaWxsOiNmZmYiLz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text{color:#b8e6ff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaembedediting.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-media-embed/mediaembedediting.css"],names:[],mappings:"AAMC,0CAGC,kBAAmB,CAFnB,YAAa,CACb,qBAcD,CAXC,sEAEC,cAAe,CAEf,iBAMD,CAJC,wGAEC,aAAc,CADd,eAED,CAWD,6kBACC,YACD,CAYF,2LACC,mBACD,CC1CA,MACC,0CAA2C,CAE3C,mDAA4D,CAC5D,2EACD,CAEA,mBACC,aA+FD,CA7FC,0CAEC,0CAA2C,CAD3C,0CA6BD,CA1BC,uEAIC,uBAA2B,CAC3B,qBAAsB,CAHtB,kDAAmD,CACnD,qCAAsC,CAFtC,qDAUD,CAJC,gFAEC,WAAY,CADZ,UAED,CAGD,4EACC,sDAAuD,CAGvD,iBAAkB,CADlB,iBAAkB,CAElB,sBAAuB,CAHvB,kBAUD,CALC,kFACC,4DAA6D,CAC7D,cAAe,CACf,yBACD,CAIF,wDAEC,gBAAiB,CADjB,eAED,CAEA,4UAIC,wvGACD,CAEA,2EACC,kBAaD,CAXC,wGACC,orBACD,CAEA,6GACC,UAKD,CAHC,mHACC,UACD,CAIF,4EACC,2DAcD,CAZC,yGACC,4jHACD,CAGA,8GACC,aAKD,CAHC,oHACC,UACD,CAIF,6EAEC,iDAaD,CAXC,0GACC,wiCACD,CAEA,+GACC,aAKD,CAHC,qHACC,UACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-media__wrapper {\n\t& .ck-media__placeholder {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\n\t\t& .ck-media__placeholder__url {\n\t\t\t/* Otherwise the URL will overflow when the content is very narrow. */\n\t\t\tmax-width: 100%;\n\n\t\t\tposition: relative;\n\n\t\t\t& .ck-media__placeholder__url__text {\n\t\t\t\toverflow: hidden;\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="twitter.com"],\n\t&[data-oembed-url*="google.com/maps"],\n\t&[data-oembed-url*="goo.gl/maps"],\n\t&[data-oembed-url*="maps.google.com"],\n\t&[data-oembed-url*="maps.app.goo.gl"],\n\t&[data-oembed-url*="facebook.com"],\n\t&[data-oembed-url*="instagram.com"] {\n\t\t& .ck-media__placeholder__icon * {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n/* Disable all mouse interaction as long as the editor is not read–only.\n https://github.com/ckeditor/ckeditor5-media-embed/issues/58 */\n.ck-editor__editable:not(.ck-read-only) .ck-media__wrapper > *:not(.ck-media__placeholder) {\n\tpointer-events: none;\n}\n\n/* Disable all mouse interaction when the widget is not selected (e.g. to avoid opening links by accident).\n https://github.com/ckeditor/ckeditor5-media-embed/issues/18 */\n.ck-editor__editable:not(.ck-read-only) .ck-widget:not(.ck-widget_selected) .ck-media__placeholder {\n\tpointer-events: none;\n}\n','/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-media-embed-placeholder-icon-size: 3em;\n\n\t--ck-color-media-embed-placeholder-url-text: hsl(0, 0%, 46%);\n\t--ck-color-media-embed-placeholder-url-text-hover: var(--ck-color-base-text);\n}\n\n.ck-media__wrapper {\n\tmargin: 0 auto;\n\n\t& .ck-media__placeholder {\n\t\tpadding: calc( 3 * var(--ck-spacing-standard) );\n\t\tbackground: var(--ck-color-base-foreground);\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tmin-width: var(--ck-media-embed-placeholder-icon-size);\n\t\t\theight: var(--ck-media-embed-placeholder-icon-size);\n\t\t\tmargin-bottom: var(--ck-spacing-large);\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: cover;\n\n\t\t\t& .ck-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t}\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: var(--ck-color-media-embed-placeholder-url-text);\n\t\t\twhite-space: nowrap;\n\t\t\ttext-align: center;\n\t\t\tfont-style: italic;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\t&:hover {\n\t\t\t\tcolor: var(--ck-color-media-embed-placeholder-url-text-hover);\n\t\t\t\tcursor: pointer;\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="open.spotify.com"] {\n\t\tmax-width: 300px;\n\t\tmax-height: 380px;\n\t}\n\n\t&[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon {\n\t\tbackground-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTAuMzc4IiBoZWlnaHQ9IjI1NC4xNjciIHZpZXdCb3g9IjAgMCA2Ni4yNDYgNjcuMjQ4Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcyLjUzMSAtMjE4LjQ1NSkgc2NhbGUoLjk4MDEyKSI+PHJlY3Qgcnk9IjUuMjM4IiByeD0iNS4yMzgiIHk9IjIzMS4zOTkiIHg9IjE3Ni4wMzEiIGhlaWdodD0iNjAuMDk5IiB3aWR0aD0iNjAuMDk5IiBmaWxsPSIjMzRhNjY4IiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxwYXRoIGQ9Ik0yMDYuNDc3IDI2MC45bC0yOC45ODcgMjguOTg3YTUuMjE4IDUuMjE4IDAgMCAwIDMuNzggMS42MWg0OS42MjFjMS42OTQgMCAzLjE5LS43OTggNC4xNDYtMi4wMzd6IiBmaWxsPSIjNWM4OGM1Ii8+PHBhdGggZD0iTTIyNi43NDIgMjIyLjk4OGMtOS4yNjYgMC0xNi43NzcgNy4xNy0xNi43NzcgMTYuMDE0LjAwNyAyLjc2Mi42NjMgNS40NzQgMi4wOTMgNy44NzUuNDMuNzAzLjgzIDEuNDA4IDEuMTkgMi4xMDcuMzMzLjUwMi42NSAxLjAwNS45NSAxLjUwOC4zNDMuNDc3LjY3My45NTcuOTg4IDEuNDQgMS4zMSAxLjc2OSAyLjUgMy41MDIgMy42MzcgNS4xNjguNzkzIDEuMjc1IDEuNjgzIDIuNjQgMi40NjYgMy45OSAyLjM2MyA0LjA5NCA0LjAwNyA4LjA5MiA0LjYgMTMuOTE0di4wMTJjLjE4Mi40MTIuNTE2LjY2Ni44NzkuNjY3LjQwMy0uMDAxLjc2OC0uMzE0LjkzLS43OTkuNjAzLTUuNzU2IDIuMjM4LTkuNzI5IDQuNTg1LTEzLjc5NC43ODItMS4zNSAxLjY3My0yLjcxNSAyLjQ2NS0zLjk5IDEuMTM3LTEuNjY2IDIuMzI4LTMuNCAzLjYzOC01LjE2OS4zMTUtLjQ4Mi42NDUtLjk2Mi45ODgtMS40MzkuMy0uNTAzLjYxNy0xLjAwNi45NS0xLjUwOC4zNTktLjcuNzYtMS40MDQgMS4xOS0yLjEwNyAxLjQyNi0yLjQwMiAyLTUuMTE0IDIuMDA0LTcuODc1IDAtOC44NDQtNy41MTEtMTYuMDE0LTE2Ljc3Ni0xNi4wMTR6IiBmaWxsPSIjZGQ0YjNlIiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxlbGxpcHNlIHJ5PSI1LjU2NCIgcng9IjUuODI4IiBjeT0iMjM5LjAwMiIgY3g9IjIyNi43NDIiIGZpbGw9IiM4MDJkMjciIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PHBhdGggZD0iTTE5MC4zMDEgMjM3LjI4M2MtNC42NyAwLTguNDU3IDMuODUzLTguNDU3IDguNjA2czMuNzg2IDguNjA3IDguNDU3IDguNjA3YzMuMDQzIDAgNC44MDYtLjk1OCA2LjMzNy0yLjUxNiAxLjUzLTEuNTU3IDIuMDg3LTMuOTEzIDIuMDg3LTYuMjkgMC0uMzYyLS4wMjMtLjcyMi0uMDY0LTEuMDc5aC04LjI1N3YzLjA0M2g0Ljg1Yy0uMTk3Ljc1OS0uNTMxIDEuNDUtMS4wNTggMS45ODYtLjk0Mi45NTgtMi4wMjggMS41NDgtMy45MDEgMS41NDgtMi44NzYgMC01LjIwOC0yLjM3Mi01LjIwOC01LjI5OSAwLTIuOTI2IDIuMzMyLTUuMjk5IDUuMjA4LTUuMjk5IDEuMzk5IDAgMi42MTguNDA3IDMuNTg0IDEuMjkzbDIuMzgxLTIuMzhjMC0uMDAyLS4wMDMtLjAwNC0uMDA0LS4wMDUtMS41ODgtMS41MjQtMy42Mi0yLjIxNS01Ljk1NS0yLjIxNXptNC40MyA1LjY2bC4wMDMuMDA2di0uMDAzeiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjE1LjE4NCAyNTEuOTI5bC03Ljk4IDcuOTc5IDI4LjQ3NyAyOC40NzVjLjI4Ny0uNjQ5LjQ0OS0xLjM2Ni40NDktMi4xMjN2LTMxLjE2NWMtLjQ2OS42NzUtLjkzNCAxLjM0OS0xLjM4MiAyLjAwNS0uNzkyIDEuMjc1LTEuNjgyIDIuNjQtMi40NjUgMy45OS0yLjM0NyA0LjA2NS0zLjk4MiA4LjAzOC00LjU4NSAxMy43OTQtLjE2Mi40ODUtLjUyNy43OTgtLjkzLjc5OS0uMzYzLS4wMDEtLjY5Ny0uMjU1LS44NzktLjY2N3YtLjAxMmMtLjU5My01LjgyMi0yLjIzNy05LjgyLTQuNi0xMy45MTQtLjc4My0xLjM1LTEuNjczLTIuNzE1LTIuNDY2LTMuOTktMS4xMzctMS42NjYtMi4zMjctMy40LTMuNjM3LTUuMTY5bC0uMDAyLS4wMDN6IiBmaWxsPSIjYzNjM2MzIi8+PHBhdGggZD0iTTIxMi45ODMgMjQ4LjQ5NWwtMzYuOTUyIDM2Ljk1M3YuODEyYTUuMjI3IDUuMjI3IDAgMCAwIDUuMjM4IDUuMjM4aDEuMDE1bDM1LjY2Ni0zNS42NjZhMTM2LjI3NSAxMzYuMjc1IDAgMCAwLTIuNzY0LTMuOSAzNy41NzUgMzcuNTc1IDAgMCAwLS45ODktMS40NGMtLjI5OS0uNTAzLS42MTYtMS4wMDYtLjk1LTEuNTA4LS4wODMtLjE2Mi0uMTc2LS4zMjYtLjI2NC0uNDg5eiIgZmlsbD0iI2ZkZGM0ZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjExLjk5OCAyNjEuMDgzbC02LjE1MiA2LjE1MSAyNC4yNjQgMjQuMjY0aC43ODFhNS4yMjcgNS4yMjcgMCAwIDAgNS4yMzktNS4yMzh2LTEuMDQ1eiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48L2c+PC9zdmc+);\n\t}\n\n\t&[data-oembed-url*="facebook.com"] .ck-media__placeholder {\n\t\tbackground: hsl(220, 46%, 48%);\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIxMDI0cHgiIGhlaWdodD0iMTAyNHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPiAgICAgICAgPHRpdGxlPkZpbGwgMTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZGVmcz48L2RlZnM+ICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9ImZMb2dvX1doaXRlIiBmaWxsPSIjRkZGRkZFIj4gICAgICAgICAgICA8cGF0aCBkPSJNOTY3LjQ4NCwwIEw1Ni41MTcsMCBDMjUuMzA0LDAgMCwyNS4zMDQgMCw1Ni41MTcgTDAsOTY3LjQ4MyBDMCw5OTguNjk0IDI1LjI5NywxMDI0IDU2LjUyMiwxMDI0IEw1NDcsMTAyNCBMNTQ3LDYyOCBMNDE0LDYyOCBMNDE0LDQ3MyBMNTQ3LDQ3MyBMNTQ3LDM1OS4wMjkgQzU0NywyMjYuNzY3IDYyNy43NzMsMTU0Ljc0NyA3NDUuNzU2LDE1NC43NDcgQzgwMi4yNjksMTU0Ljc0NyA4NTAuODQyLDE1OC45NTUgODY1LDE2MC44MzYgTDg2NSwyOTkgTDc4My4zODQsMjk5LjAzNyBDNzE5LjM5MSwyOTkuMDM3IDcwNywzMjkuNTI5IDcwNywzNzQuMjczIEw3MDcsNDczIEw4NjAuNDg3LDQ3MyBMODQwLjUwMSw2MjggTDcwNyw2MjggTDcwNywxMDI0IEw5NjcuNDg0LDEwMjQgQzk5OC42OTcsMTAyNCAxMDI0LDk5OC42OTcgMTAyNCw5NjcuNDg0IEwxMDI0LDU2LjUxNSBDMTAyNCwyNS4zMDMgOTk4LjY5NywwIDk2Ny40ODQsMCIgaWQ9IkZpbGwtMSI+PC9wYXRoPiAgICAgICAgPC9nPiAgICA8L2c+PC9zdmc+);\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(220, 100%, 90%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="instagram.com"] .ck-media__placeholder {\n\t\tbackground: linear-gradient(-135deg,hsl(246, 100%, 39%),hsl(302, 100%, 36%),hsl(0, 100%, 48%));\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI1MDRweCIgaGVpZ2h0PSI1MDRweCIgdmlld0JveD0iMCAwIDUwNCA1MDQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+ICAgICAgICA8dGl0bGU+Z2x5cGgtbG9nb19NYXkyMDE2PC90aXRsZT4gICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+ICAgIDxkZWZzPiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtMSIgcG9pbnRzPSIwIDAuMTU5IDUwMy44NDEgMC4xNTkgNTAzLjg0MSA1MDMuOTQgMCA1MDMuOTQiPjwvcG9seWdvbj4gICAgPC9kZWZzPiAgICA8ZyBpZD0iZ2x5cGgtbG9nb19NYXkyMDE2IiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxnIGlkPSJHcm91cC0zIj4gICAgICAgICAgICA8bWFzayBpZD0ibWFzay0yIiBmaWxsPSJ3aGl0ZSI+ICAgICAgICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+ICAgICAgICAgICAgPC9tYXNrPiAgICAgICAgICAgIDxnIGlkPSJDbGlwLTIiPjwvZz4gICAgICAgICAgICA8cGF0aCBkPSJNMjUxLjkyMSwwLjE1OSBDMTgzLjUwMywwLjE1OSAxNzQuOTI0LDAuNDQ5IDE0OC4wNTQsMS42NzUgQzEyMS4yNCwyLjg5OCAxMDIuOTI3LDcuMTU3IDg2LjkwMywxMy4zODUgQzcwLjMzNywxOS44MjIgNTYuMjg4LDI4LjQzNiA0Mi4yODIsNDIuNDQxIEMyOC4yNzcsNTYuNDQ3IDE5LjY2Myw3MC40OTYgMTMuMjI2LDg3LjA2MiBDNi45OTgsMTAzLjA4NiAyLjczOSwxMjEuMzk5IDEuNTE2LDE0OC4yMTMgQzAuMjksMTc1LjA4MyAwLDE4My42NjIgMCwyNTIuMDggQzAsMzIwLjQ5NyAwLjI5LDMyOS4wNzYgMS41MTYsMzU1Ljk0NiBDMi43MzksMzgyLjc2IDYuOTk4LDQwMS4wNzMgMTMuMjI2LDQxNy4wOTcgQzE5LjY2Myw0MzMuNjYzIDI4LjI3Nyw0NDcuNzEyIDQyLjI4Miw0NjEuNzE4IEM1Ni4yODgsNDc1LjcyMyA3MC4zMzcsNDg0LjMzNyA4Ni45MDMsNDkwLjc3NSBDMTAyLjkyNyw0OTcuMDAyIDEyMS4yNCw1MDEuMjYxIDE0OC4wNTQsNTAyLjQ4NCBDMTc0LjkyNCw1MDMuNzEgMTgzLjUwMyw1MDQgMjUxLjkyMSw1MDQgQzMyMC4zMzgsNTA0IDMyOC45MTcsNTAzLjcxIDM1NS43ODcsNTAyLjQ4NCBDMzgyLjYwMSw1MDEuMjYxIDQwMC45MTQsNDk3LjAwMiA0MTYuOTM4LDQ5MC43NzUgQzQzMy41MDQsNDg0LjMzNyA0NDcuNTUzLDQ3NS43MjMgNDYxLjU1OSw0NjEuNzE4IEM0NzUuNTY0LDQ0Ny43MTIgNDg0LjE3OCw0MzMuNjYzIDQ5MC42MTYsNDE3LjA5NyBDNDk2Ljg0Myw0MDEuMDczIDUwMS4xMDIsMzgyLjc2IDUwMi4zMjUsMzU1Ljk0NiBDNTAzLjU1MSwzMjkuMDc2IDUwMy44NDEsMzIwLjQ5NyA1MDMuODQxLDI1Mi4wOCBDNTAzLjg0MSwxODMuNjYyIDUwMy41NTEsMTc1LjA4MyA1MDIuMzI1LDE0OC4yMTMgQzUwMS4xMDIsMTIxLjM5OSA0OTYuODQzLDEwMy4wODYgNDkwLjYxNiw4Ny4wNjIgQzQ4NC4xNzgsNzAuNDk2IDQ3NS41NjQsNTYuNDQ3IDQ2MS41NTksNDIuNDQxIEM0NDcuNTUzLDI4LjQzNiA0MzMuNTA0LDE5LjgyMiA0MTYuOTM4LDEzLjM4NSBDNDAwLjkxNCw3LjE1NyAzODIuNjAxLDIuODk4IDM1NS43ODcsMS42NzUgQzMyOC45MTcsMC40NDkgMzIwLjMzOCwwLjE1OSAyNTEuOTIxLDAuMTU5IFogTTI1MS45MjEsNDUuNTUgQzMxOS4xODYsNDUuNTUgMzI3LjE1NCw0NS44MDcgMzUzLjcxOCw0Ny4wMTkgQzM3OC4yOCw0OC4xMzkgMzkxLjYxOSw1Mi4yNDMgNDAwLjQ5Niw1NS42OTMgQzQxMi4yNTUsNjAuMjYzIDQyMC42NDcsNjUuNzIyIDQyOS40NjIsNzQuNTM4IEM0MzguMjc4LDgzLjM1MyA0NDMuNzM3LDkxLjc0NSA0NDguMzA3LDEwMy41MDQgQzQ1MS43NTcsMTEyLjM4MSA0NTUuODYxLDEyNS43MiA0NTYuOTgxLDE1MC4yODIgQzQ1OC4xOTMsMTc2Ljg0NiA0NTguNDUsMTg0LjgxNCA0NTguNDUsMjUyLjA4IEM0NTguNDUsMzE5LjM0NSA0NTguMTkzLDMyNy4zMTMgNDU2Ljk4MSwzNTMuODc3IEM0NTUuODYxLDM3OC40MzkgNDUxLjc1NywzOTEuNzc4IDQ0OC4zMDcsNDAwLjY1NSBDNDQzLjczNyw0MTIuNDE0IDQzOC4yNzgsNDIwLjgwNiA0MjkuNDYyLDQyOS42MjEgQzQyMC42NDcsNDM4LjQzNyA0MTIuMjU1LDQ0My44OTYgNDAwLjQ5Niw0NDguNDY2IEMzOTEuNjE5LDQ1MS45MTYgMzc4LjI4LDQ1Ni4wMiAzNTMuNzE4LDQ1Ny4xNCBDMzI3LjE1OCw0NTguMzUyIDMxOS4xOTEsNDU4LjYwOSAyNTEuOTIxLDQ1OC42MDkgQzE4NC42NSw0NTguNjA5IDE3Ni42ODQsNDU4LjM1MiAxNTAuMTIzLDQ1Ny4xNCBDMTI1LjU2MSw0NTYuMDIgMTEyLjIyMiw0NTEuOTE2IDEwMy4zNDUsNDQ4LjQ2NiBDOTEuNTg2LDQ0My44OTYgODMuMTk0LDQzOC40MzcgNzQuMzc5LDQyOS42MjEgQzY1LjU2NCw0MjAuODA2IDYwLjEwNCw0MTIuNDE0IDU1LjUzNCw0MDAuNjU1IEM1Mi4wODQsMzkxLjc3OCA0Ny45OCwzNzguNDM5IDQ2Ljg2LDM1My44NzcgQzQ1LjY0OCwzMjcuMzEzIDQ1LjM5MSwzMTkuMzQ1IDQ1LjM5MSwyNTIuMDggQzQ1LjM5MSwxODQuODE0IDQ1LjY0OCwxNzYuODQ2IDQ2Ljg2LDE1MC4yODIgQzQ3Ljk4LDEyNS43MiA1Mi4wODQsMTEyLjM4MSA1NS41MzQsMTAzLjUwNCBDNjAuMTA0LDkxLjc0NSA2NS41NjMsODMuMzUzIDc0LjM3OSw3NC41MzggQzgzLjE5NCw2NS43MjIgOTEuNTg2LDYwLjI2MyAxMDMuMzQ1LDU1LjY5MyBDMTEyLjIyMiw1Mi4yNDMgMTI1LjU2MSw0OC4xMzkgMTUwLjEyMyw0Ny4wMTkgQzE3Ni42ODcsNDUuODA3IDE4NC42NTUsNDUuNTUgMjUxLjkyMSw0NS41NSBaIiBpZD0iRmlsbC0xIiBmaWxsPSIjRkZGRkZGIiBtYXNrPSJ1cmwoI21hc2stMikiPjwvcGF0aD4gICAgICAgIDwvZz4gICAgICAgIDxwYXRoIGQ9Ik0yNTEuOTIxLDMzNi4wNTMgQzIwNS41NDMsMzM2LjA1MyAxNjcuOTQ3LDI5OC40NTcgMTY3Ljk0NywyNTIuMDggQzE2Ny45NDcsMjA1LjcwMiAyMDUuNTQzLDE2OC4xMDYgMjUxLjkyMSwxNjguMTA2IEMyOTguMjk4LDE2OC4xMDYgMzM1Ljg5NCwyMDUuNzAyIDMzNS44OTQsMjUyLjA4IEMzMzUuODk0LDI5OC40NTcgMjk4LjI5OCwzMzYuMDUzIDI1MS45MjEsMzM2LjA1MyBaIE0yNTEuOTIxLDEyMi43MTUgQzE4MC40NzQsMTIyLjcxNSAxMjIuNTU2LDE4MC42MzMgMTIyLjU1NiwyNTIuMDggQzEyMi41NTYsMzIzLjUyNiAxODAuNDc0LDM4MS40NDQgMjUxLjkyMSwzODEuNDQ0IEMzMjMuMzY3LDM4MS40NDQgMzgxLjI4NSwzMjMuNTI2IDM4MS4yODUsMjUyLjA4IEMzODEuMjg1LDE4MC42MzMgMzIzLjM2NywxMjIuNzE1IDI1MS45MjEsMTIyLjcxNSBaIiBpZD0iRmlsbC00IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgICAgICA8cGF0aCBkPSJNNDE2LjYyNywxMTcuNjA0IEM0MTYuNjI3LDEzNC4zIDQwMy4wOTIsMTQ3LjgzNCAzODYuMzk2LDE0Ny44MzQgQzM2OS43MDEsMTQ3LjgzNCAzNTYuMTY2LDEzNC4zIDM1Ni4xNjYsMTE3LjYwNCBDMzU2LjE2NiwxMDAuOTA4IDM2OS43MDEsODcuMzczIDM4Ni4zOTYsODcuMzczIEM0MDMuMDkyLDg3LjM3MyA0MTYuNjI3LDEwMC45MDggNDE2LjYyNywxMTcuNjA0IiBpZD0iRmlsbC01IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgIDwvZz48L3N2Zz4=);\n\t\t}\n\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(302, 100%, 94%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder {\n\t\t/* Use gradient to contrast with focused widget (ckeditor/ckeditor5-media-embed#22). */\n\t\tbackground: linear-gradient( to right, hsl(201, 85%, 70%), hsl(201, 85%, 35%) );\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IldoaXRlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQwMCA0MDAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQwMCA0MDA7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPi5zdDB7ZmlsbDojRkZGRkZGO308L3N0eWxlPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MDAsMjAwYzAsMTEwLjUtODkuNSwyMDAtMjAwLDIwMFMwLDMxMC41LDAsMjAwUzg5LjUsMCwyMDAsMFM0MDAsODkuNSw0MDAsMjAweiBNMTYzLjQsMzA1LjVjODguNywwLDEzNy4yLTczLjUsMTM3LjItMTM3LjJjMC0yLjEsMC00LjItMC4xLTYuMmM5LjQtNi44LDE3LjYtMTUuMywyNC4xLTI1Yy04LjYsMy44LTE3LjksNi40LTI3LjcsNy42YzEwLTYsMTcuNi0xNS40LDIxLjItMjYuN2MtOS4zLDUuNS0xOS42LDkuNS0zMC42LDExLjdjLTguOC05LjQtMjEuMy0xNS4yLTM1LjItMTUuMmMtMjYuNiwwLTQ4LjIsMjEuNi00OC4yLDQ4LjJjMCwzLjgsMC40LDcuNSwxLjMsMTFjLTQwLjEtMi03NS42LTIxLjItOTkuNC01MC40Yy00LjEsNy4xLTYuNSwxNS40LTYuNSwyNC4yYzAsMTYuNyw4LjUsMzEuNSwyMS41LDQwLjFjLTcuOS0wLjItMTUuMy0yLjQtMjEuOC02YzAsMC4yLDAsMC40LDAsMC42YzAsMjMuNCwxNi42LDQyLjgsMzguNyw0Ny4zYy00LDEuMS04LjMsMS43LTEyLjcsMS43Yy0zLjEsMC02LjEtMC4zLTkuMS0wLjljNi4xLDE5LjIsMjMuOSwzMy4xLDQ1LDMzLjVjLTE2LjUsMTIuOS0zNy4zLDIwLjYtNTkuOSwyMC42Yy0zLjksMC03LjctMC4yLTExLjUtMC43QzExMC44LDI5Ny41LDEzNi4yLDMwNS41LDE2My40LDMwNS41Ii8+PC9zdmc+);\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(201, 100%, 86%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const l=a},3525:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-media-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-media-form .ck-labeled-field-view{display:inline-block}.ck.ck-media-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-media-form{flex-wrap:wrap}.ck.ck-media-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-media-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,kBAEC,sBAAuB,CADvB,YAAa,CAEb,kBAAmB,CACnB,gBAqBD,CAnBC,yCACC,oBACD,CAEA,4BACC,YACD,CCbA,oCDCD,kBAeE,cAUF,CARE,yCACC,eACD,CAEA,6BACC,cACD,CCtBD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-media-form {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t& .ck-labeled-field-view {\n\t\tdisplay: inline-block;\n\t}\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},6448:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-content .page-break{align-items:center;clear:both;display:flex;justify-content:center;padding:5px 0;position:relative}.ck-content .page-break:after{border-bottom:2px dashed #c4c4c4;content:"";position:absolute;width:100%}.ck-content .page-break__label{background:#fff;border:1px solid #c4c4c4;border-radius:2px;box-shadow:2px 2px 1px rgba(0,0,0,.15);color:#333;display:block;font-family:Helvetica,Arial,Tahoma,Verdana,Sans-Serif;font-size:.75em;font-weight:700;padding:.3em .6em;position:relative;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1}@media print{.ck-content .page-break{padding:0}.ck-content .page-break:after{display:none}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-page-break/theme/pagebreak.css"],names:[],mappings:"AAKA,wBAKC,kBAAmB,CAHnB,UAAW,CAEX,YAAa,CAEb,sBAAuB,CAHvB,aAAc,CAFd,iBAaD,CANC,8BAGC,gCAAyC,CAFzC,UAAW,CACX,iBAAkB,CAElB,UACD,CAGD,+BAYC,eAA4B,CAN5B,wBAAiC,CACjC,iBAAkB,CAMlB,sCAA6C,CAF7C,UAAsB,CAPtB,aAAc,CAId,qDAA0D,CAC1D,eAAiB,CACjB,eAAiB,CAPjB,iBAAkB,CAFlB,iBAAkB,CAIlB,wBAAyB,CAWzB,wBAAyB,CACzB,qBAAsB,CACtB,oBAAqB,CACrB,gBAAiB,CAjBjB,SAkBD,CAGA,aACC,wBACC,SAKD,CAHC,8BACC,YACD,CAEF",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .page-break {\n\tposition: relative;\n\tclear: both;\n\tpadding: 5px 0;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t&::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\tborder-bottom: 2px dashed hsl(0, 0%, 77%);\n\t\twidth: 100%;\n\t}\n}\n\n.ck-content .page-break__label {\n\tposition: relative;\n\tz-index: 1;\n\tpadding: .3em .6em;\n\tdisplay: block;\n\ttext-transform: uppercase;\n\tborder: 1px solid hsl(0, 0%, 77%);\n\tborder-radius: 2px;\n\tfont-family: Helvetica, Arial, Tahoma, Verdana, Sans-Serif;\n\tfont-size: 0.75em;\n\tfont-weight: bold;\n\tcolor: hsl(0, 0%, 20%);\n\tbackground: hsl(0, 0%, 100%);\n\tbox-shadow: 2px 2px 1px hsla(0, 0%, 0%, 0.15);\n\n\t/* Disable the possibility to select the label text by the user. */\n\t-webkit-user-select: none;\n\t-moz-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none;\n}\n\n/* Do not show the page break element inside the print preview window. */\n@media print {\n\t.ck-content .page-break {\n\t\tpadding: 0;\n\n\t\t&::after {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const l=a},4046:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-character-grid{max-width:100%}.ck.ck-character-grid .ck-character-grid__tiles{display:grid}:root{--ck-character-grid-tile-size:24px}.ck.ck-character-grid{max-height:200px;overflow-x:hidden;overflow-y:auto;width:350px}@media screen and (max-width:600px){.ck.ck-character-grid{width:190px}}.ck.ck-character-grid .ck-character-grid__tiles{grid-gap:var(--ck-spacing-standard);grid-template-columns:repeat(10,1fr);margin:var(--ck-spacing-standard) var(--ck-spacing-large)}@media screen and (max-width:600px){.ck.ck-character-grid .ck-character-grid__tiles{grid-template-columns:repeat(5,1fr)}}.ck.ck-character-grid .ck-character-grid__tile{border:0;font-size:1.2em;height:var(--ck-character-grid-tile-size);min-height:var(--ck-character-grid-tile-size);min-width:var(--ck-character-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-character-grid-tile-size)}.ck.ck-character-grid .ck-character-grid__tile:focus:not(.ck-disabled),.ck.ck-character-grid .ck-character-grid__tile:hover:not(.ck-disabled){border:0;box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-character-grid .ck-character-grid__tile .ck-button__label{line-height:var(--ck-character-grid-tile-size);text-align:center;width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-special-characters/theme/charactergrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/charactergrid.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBACC,cAKD,CAHC,gDACC,YACD,CCFD,MACC,kCACD,CAEA,sBAIC,gBAAiB,CAFjB,iBAAkB,CADlB,eAAgB,CAEhB,WAyCD,CClDC,oCDMD,sBAOE,WAqCF,CChDC,CDcA,gDAGC,mCAAoC,CAFpC,oCAAsC,CACtC,yDAMD,CCxBA,oCDgBA,gDAME,mCAEF,CCtBA,CDwBA,+CAQC,QAAS,CAHT,eAAgB,CAHhB,yCAA0C,CAE1C,6CAA8C,CAD9C,4CAA6C,CAG7C,SAAU,CACV,8BAA+B,CAN/B,wCAsBD,CAbC,8IAGC,QAAS,CACT,iGACD,CAGA,iEACC,8CAA+C,CAE/C,iBAAkB,CADlB,UAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-character-grid {\n\tmax-width: 100%;\n\t\n\t& .ck-character-grid__tiles {\n\t\tdisplay: grid;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-character-grid-tile-size: 24px;\n}\n\n.ck.ck-character-grid {\n\toverflow-y: auto;\n\toverflow-x: hidden;\n\twidth: 350px;\n\tmax-height: 200px;\n\n\t@mixin ck-media-phone {\n\t\twidth: 190px;\n\t}\n\n\t& .ck-character-grid__tiles {\n\t\tgrid-template-columns: repeat(10, 1fr);\n\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-large);\n\t\tgrid-gap: var(--ck-spacing-standard);\n\n\t\t@mixin ck-media-phone {\n\t\t\tgrid-template-columns: repeat(5, 1fr);\n\t\t}\n\t}\n\n\t& .ck-character-grid__tile {\n\t\twidth: var(--ck-character-grid-tile-size);\n\t\theight: var(--ck-character-grid-tile-size);\n\t\tmin-width: var(--ck-character-grid-tile-size);\n\t\tmin-height: var(--ck-character-grid-tile-size);\n\t\tfont-size: 1.2em;\n\t\tpadding: 0;\n\t\ttransition: .2s ease box-shadow;\n\t\tborder: 0;\n\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\t/* Disable the default .ck-button\'s border ring. */\n\t\t\tborder: 0;\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t\t}\n\n\t\t/* Make sure the glyph is rendered in the center of the button */\n\t\t& .ck-button__label {\n\t\t\tline-height: var(--ck-character-grid-tile-size);\n\t\t\twidth: 100%;\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},4779:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-character-info{border-top:1px solid var(--ck-color-base-border);display:flex;justify-content:space-between;padding:var(--ck-spacing-small) var(--ck-spacing-large)}.ck.ck-character-info>*{font-size:var(--ck-font-size-small);text-transform:uppercase}.ck.ck-character-info .ck-character-info__name{max-width:280px;overflow:hidden;text-overflow:ellipsis}.ck.ck-character-info .ck-character-info__code{opacity:.6}@media screen and (max-width:600px){.ck.ck-character-info{max-width:190px}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-special-characters/theme/characterinfo.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/characterinfo.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBCIC,gDAAiD,CDHjD,YAAa,CACb,6BAA8B,CCC9B,uDDAD,CCGC,wBAEC,mCAAoC,CADpC,wBAED,CAEA,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,+CACC,UACD,CClBA,oCDCD,sBAoBE,eAEF,CCrBC",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},8170:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-special-characters-navigation>.ck-label{max-width:160px;overflow:hidden;text-overflow:ellipsis}.ck.ck-special-characters-navigation>.ck-dropdown .ck-dropdown__panel{max-height:250px;overflow-x:hidden;overflow-y:auto}@media screen and (max-width:600px){.ck.ck-special-characters-navigation{max-width:190px}.ck.ck-special-characters-navigation>.ck-form__header__label{overflow:hidden;text-overflow:ellipsis}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/specialcharacters.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAUC,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,sEAEC,gBAAiB,CAEjB,iBAAkB,CADlB,eAED,CCfA,oCDED,qCAgBE,eAOF,CALE,6DAEC,eAAgB,CADhB,sBAED,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},2844:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-dropdown.ck-style-dropdown.ck-style-dropdown_multiple-active>.ck-button>.ck-button__label{font-style:italic}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/style.css"],names:[],mappings:"AAKA,iGACC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-dropdown.ck-style-dropdown.ck-style-dropdown_multiple-active > .ck-button > .ck-button__label {\n\tfont-style: italic;\n}\n"],sourceRoot:""}]);const l=a},3875:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-style-panel-columns:3}.ck.ck-style-panel .ck-style-grid{display:grid;grid-template-columns:repeat(var(--ck-style-panel-columns),auto);justify-content:start}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button{display:flex;flex-direction:column;justify-content:space-between}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-style-grid__button__preview{align-content:center;align-items:center;display:flex;flex-basis:100%;flex-grow:1;justify-content:flex-start}:root{--ck-style-panel-button-width:120px;--ck-style-panel-button-height:80px;--ck-style-panel-button-label-background:#f0f0f0;--ck-style-panel-button-hover-label-background:#ebebeb;--ck-style-panel-button-hover-border-color:#b3b3b3}.ck.ck-style-panel .ck-style-grid{column-gap:var(--ck-spacing-large);row-gap:var(--ck-spacing-large)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button{--ck-color-button-default-hover-background:var(--ck-color-base-background);--ck-color-button-default-active-background:var(--ck-color-base-background);height:var(--ck-style-panel-button-height);padding:0;width:var(--ck-style-panel-button-width)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-button__label{flex-shrink:0;height:22px;line-height:22px;overflow:hidden;padding:0 var(--ck-spacing-medium);text-overflow:ellipsis;width:100%}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-style-grid__button__preview{background:var(--ck-color-base-background);border:2px solid var(--ck-color-base-background);opacity:.9;overflow:hidden;padding:var(--ck-spacing-medium);width:100%}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled{--ck-color-button-default-disabled-background:var(--ck-color-base-foreground)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled:not(:focus){border-color:var(--ck-style-panel-button-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled .ck-style-grid__button__preview{border-color:var(--ck-color-base-foreground);filter:saturate(.3);opacity:.4}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on{border-color:var(--ck-color-base-active)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on .ck-button__label{box-shadow:0 -1px 0 var(--ck-color-base-active);z-index:1}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on:hover{border-color:var(--ck-color-base-active-focus)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(.ck-on) .ck-button__label{background:var(--ck-style-panel-button-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(.ck-on):hover .ck-button__label{background:var(--ck-style-panel-button-hover-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:hover:not(.ck-disabled):not(.ck-on){border-color:var(--ck-style-panel-button-hover-border-color)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:hover:not(.ck-disabled):not(.ck-on) .ck-style-grid__button__preview{opacity:1}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-style/theme/stylegrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/stylegrid.css"],names:[],mappings:"AAKA,MACC,0BACD,CAEA,kCACC,YAAa,CACb,gEAAiE,CACjE,qBAgBD,CAdC,yDACC,YAAa,CAEb,qBAAsB,CADtB,6BAWD,CARC,yFAEC,oBAAqB,CAErB,kBAAmB,CAHnB,YAAa,CAKb,eAAgB,CADhB,WAAY,CAFZ,0BAID,CCrBF,MACC,mCAAoC,CACpC,mCAAoC,CACpC,gDAA2D,CAC3D,sDAAiE,CACjE,kDACD,CAEA,kCAEC,kCAAmC,CADnC,+BAmFD,CAhFC,yDACC,0EAA2E,CAC3E,2EAA4E,CAI5E,0CAA2C,CAF3C,SAAU,CACV,wCA0ED,CAtEC,qEACC,4CACD,CAEA,2EAOC,aAAc,CANd,WAAY,CACZ,gBAAiB,CAGjB,eAAgB,CADhB,kCAAmC,CAEnC,sBAAuB,CAHvB,UAKD,CAEA,yFAMC,0CAA2C,CAC3C,gDAAiD,CAJjD,UAAW,CADX,eAAgB,CAGhB,gCAAiC,CAJjC,UAOD,CAEA,qEACC,6EAaD,CAVC,iFACC,0DACD,CAEA,qGAGC,4CAA6C,CAC7C,mBAAoB,CAHpB,UAID,CAGD,+DACC,wCAUD,CARC,iFACC,+CAAgD,CAChD,SACD,CAEA,qEACC,8CACD,CAIA,uFACC,wDACD,CAEA,6FACC,8DACD,CAGD,6FACC,4DAKD,CAHC,6HACC,SACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-style-panel-columns: 3;\n}\n\n.ck.ck-style-panel .ck-style-grid {\n\tdisplay: grid;\n\tgrid-template-columns: repeat(var(--ck-style-panel-columns),auto);\n\tjustify-content: start;\n\n\t& .ck-style-grid__button {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex-direction: column;\n\n\t\t& .ck-style-grid__button__preview {\n\t\t\tdisplay: flex;\n\t\t\talign-content: center;\n\t\t\tjustify-content: flex-start;\n\t\t\talign-items: center;\n\t\t\tflex-grow: 1;\n\t\t\tflex-basis: 100%;\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-style-panel-button-width: 120px;\n\t--ck-style-panel-button-height: 80px;\n\t--ck-style-panel-button-label-background: hsl(0, 0%, 94.1%);\n\t--ck-style-panel-button-hover-label-background: hsl(0, 0%, 92.1%);\n\t--ck-style-panel-button-hover-border-color: hsl(0, 0%, 70%);\n}\n\n.ck.ck-style-panel .ck-style-grid {\n\trow-gap: var(--ck-spacing-large);\n\tcolumn-gap: var(--ck-spacing-large);\n\n\t& .ck-style-grid__button {\n\t\t--ck-color-button-default-hover-background: var(--ck-color-base-background);\n\t\t--ck-color-button-default-active-background: var(--ck-color-base-background);\n\n\t\tpadding: 0;\n\t\twidth: var(--ck-style-panel-button-width);\n\t\theight: var(--ck-style-panel-button-height);\n\n\t\t/* Let default .ck-button :focus styles apply */\n\t\t&:not(:focus) {\n\t\t\tborder: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\t& .ck-button__label {\n\t\t\theight: 22px;\n\t\t\tline-height: 22px;\n\t\t\twidth: 100%;\n\t\t\tpadding: 0 var(--ck-spacing-medium);\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tflex-shrink: 0;\n\t\t}\n\n\t\t& .ck-style-grid__button__preview {\n\t\t\twidth: 100%;\n\t\t\toverflow: hidden;\n\t\t\topacity: .9;\n\n\t\t\tpadding: var(--ck-spacing-medium);\n\t\t\tbackground: var(--ck-color-base-background);\n\t\t\tborder: 2px solid var(--ck-color-base-background);\n\t\t}\n\n\t\t&.ck-disabled {\n\t\t\t--ck-color-button-default-disabled-background: var(--ck-color-base-foreground);\n\n\t\t\t/* Let default .ck-button :focus styles apply */\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-color: var(--ck-style-panel-button-label-background);\n\t\t\t}\n\n\t\t\t& .ck-style-grid__button__preview {\n\t\t\t\topacity: .4;\n\n\t\t\t\tborder-color: var(--ck-color-base-foreground);\n\t\t\t\tfilter: saturate(.3);\n\t\t\t}\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tborder-color: var(--ck-color-base-active);\n\n\t\t\t& .ck-button__label {\n\t\t\t\tbox-shadow: 0 -1px 0 var(--ck-color-base-active);\n\t\t\t\tz-index: 1; /* Stay on top of the preview with the shadow. */\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tborder-color: var(--ck-color-base-active-focus);\n\t\t\t}\n\t\t}\n\n\t\t&:not(.ck-on) {\n\t\t\t& .ck-button__label {\n\t\t\t\tbackground: var(--ck-style-panel-button-label-background);\n\t\t\t}\n\n\t\t\t&:hover .ck-button__label {\n\t\t\t\tbackground: var(--ck-style-panel-button-hover-label-background);\n\t\t\t}\n\t\t}\n\n\t\t&:hover:not(.ck-disabled):not(.ck-on) {\n\t\t\tborder-color: var(--ck-style-panel-button-hover-border-color);\n\n\t\t\t& .ck-style-grid__button__preview {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const l=a},9545:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-style-panel .ck-style-panel__style-group>.ck-label{margin:var(--ck-spacing-large) 0}.ck.ck-style-panel .ck-style-panel__style-group:first-child>.ck-label{margin-top:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/stylegroup.css"],names:[],mappings:"AAMC,0DACC,gCACD,CAGC,sEACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-style-panel .ck-style-panel__style-group {\n\t& > .ck-label {\n\t\tmargin: var(--ck-spacing-large) 0;\n\t}\n\n\t&:first-child {\n\t\t& > .ck-label {\n\t\t\tmargin-top: 0;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const l=a},6746:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-style-panel-max-height:470px}.ck.ck-style-panel{max-height:var(--ck-style-panel-max-height);overflow-y:auto;padding:var(--ck-spacing-large)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/stylepanel.css"],names:[],mappings:"AAKA,MACC,iCACD,CAEA,mBAGC,2CAA4C,CAD5C,eAAgB,CADhB,+BAGD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-style-panel-max-height: 470px;\n}\n\n.ck.ck-style-panel {\n\tpadding: var(--ck-spacing-large);\n\toverflow-y: auto;\n\tmax-height: var(--ck-style-panel-max-height);\n}\n"],sourceRoot:""}]);const l=a},4082:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-input-color{display:flex;flex-direction:row-reverse;width:100%}.ck.ck-input-color>input.ck.ck-input-text{flex-grow:1;min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown{min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown>.ck-input-color__button .ck-dropdown__arrow{display:none}.ck.ck-input-color .ck.ck-input-color__button{display:flex}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview{overflow:hidden;position:relative}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{display:block;position:absolute}[dir=ltr] .ck.ck-input-color>.ck.ck-input-text{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-input-text{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-input-color>.ck.ck-input-text:focus{z-index:0}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{padding:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-left-radius:0;border-top-left-radius:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-left:1px solid transparent}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-right:1px solid transparent}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button.ck-disabled{background:var(--ck-color-input-disabled-background)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border-radius:0}.ck-rounded-corners .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview,.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border:1px solid var(--ck-color-input-border);height:20px;width:20px}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{background:red;border-radius:2px;height:150%;left:50%;top:-30%;transform:rotate(45deg);transform-origin:50%;width:8%}.ck.ck-input-color .ck.ck-input-color__remove-color{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard);width:100%}.ck.ck-input-color .ck.ck-input-color__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-input-border)}[dir=ltr] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-right-radius:0}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-left:var(--ck-spacing-standard);margin-right:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/colorinput.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/colorinput.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,YAAa,CACb,0BAA2B,CAF3B,UAgCD,CA5BC,0CAEC,WAAY,CADZ,cAED,CAEA,sCACC,cAMD,CAHC,kFACC,YACD,CAGD,8CAEC,YAWD,CATC,kFAEC,eAAgB,CADhB,iBAOD,CAJC,0IAEC,aAAc,CADd,iBAED,CC1BF,+CAGE,4BAA6B,CAD7B,yBAcF,CAhBA,+CAQE,2BAA4B,CAD5B,wBASF,CAHC,2CACC,SACD,CAIA,wEACC,SA0CD,CA3CA,kFAKE,2BAA4B,CAD5B,wBAuCF,CApCE,8FACC,iCACD,CATF,kFAcE,4BAA6B,CAD7B,yBA8BF,CA3BE,8FACC,kCACD,CAGD,oFACC,oDACD,CAEA,4GC1CF,eD2DE,CAjBA,+PCtCD,qCDuDC,CAjBA,4GAKC,6CAA8C,CAD9C,WAAY,CADZ,UAcD,CAVC,oKAKC,cAA6B,CAC7B,iBAAkB,CAHlB,WAAY,CADZ,QAAS,CADT,QAAS,CAMT,uBAAwB,CACxB,oBAAqB,CAJrB,QAKD,CAKH,oDAIC,2BAA4B,CAC5B,4BAA6B,CAH7B,qEAAwE,CADxE,UA0BD,CApBC,gEACC,oDACD,CATD,8DAYE,yBAeF,CA3BA,8DAgBE,wBAWF,CARC,gEACC,uCAMD,CAPA,0EAKE,sCAAuC,CADvC,cAGF",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},4880:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-form{padding:0 0 var(--ck-spacing-large)}.ck.ck-form:focus{outline:none}.ck.ck-form .ck.ck-input-text{min-width:100%;width:0}.ck.ck-form .ck.ck-dropdown{min-width:100%}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button .ck-button__label{width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/form.css"],names:[],mappings:"AAKA,YACC,mCAyBD,CAvBC,kBAEC,YACD,CAEA,8BACC,cAAe,CACf,OACD,CAEA,4BACC,cAWD,CARE,6DACC,4CACD,CAEA,mEACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},9865:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-form__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__row>:not(.ck-label){flex-grow:1}.ck.ck-form__row.ck-table-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-table-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row{padding:var(--ck-spacing-standard) var(--ck-spacing-large) 0}[dir=ltr] .ck.ck-form__row>:not(.ck-label)+*{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-form__row>:not(.ck-label)+*{margin-right:var(--ck-spacing-large)}.ck.ck-form__row>.ck-label{min-width:100%;width:100%}.ck.ck-form__row.ck-table-form__action-row{margin-top:var(--ck-spacing-large)}.ck.ck-form__row.ck-table-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/formrow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/formrow.css"],names:[],mappings:"AAKA,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAaD,CAVC,iCACC,WACD,CAGC,wHAEC,sBACD,CCbF,iBACC,4DA2BD,CAvBE,6CAEE,mCAMF,CARA,6CAME,oCAEF,CAGD,2BAEC,cAAe,CADf,UAED,CAEA,2CACC,kCAKD,CAHC,wEACC,0BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},8085:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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}.ck .ck-insert-table-dropdown-grid-box:focus{box-shadow:none}.ck .ck-insert-table-dropdown-grid-box.ck-on{background:var(--ck-color-focus-outer-shadow);border-color:var(--ck-color-focus-border)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/inserttable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/inserttable.css"],names:[],mappings:"AAKA,oCACC,YAAa,CACb,kBAAmB,CACnB,cACD,CCJA,MACC,uCAAwC,CACxC,0CAA2C,CAC3C,yCAA0C,CAC1C,yCACD,CAEA,oCAGC,yFAA0F,CAD1F,oJAED,CAEA,mFAEC,iBACD,CAEA,uCAIC,4CAA6C,CAC7C,iBAAkB,CAFlB,iDAAkD,CADlD,qDAAsD,CADtD,mDAAoD,CAKpD,YAAa,CACb,eAUD,CARC,6CACC,eACD,CAEA,6CAEC,6CAA8C,CAD9C,yCAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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&: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 l=a},4104:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .table{display:table;margin:.9em auto}.ck-content .table table{border:1px double #b3b3b3;border-collapse:collapse;border-spacing:0;height:100%;width:100%}.ck-content .table table td,.ck-content .table table th{border:1px solid #bfbfbf;min-width:2em;padding:.4em}.ck-content .table table th{background:rgba(0,0,0,.05);font-weight:700}.ck-content[dir=rtl] .table th{text-align:right}.ck-content[dir=ltr] .table th{text-align:left}.ck-editor__editable .ck-table-bogus-paragraph{display:inline-block;width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/table.css"],names:[],mappings:"AAKA,mBAKC,aAAc,CADd,gBAiCD,CA9BC,yBAYC,yBAAkC,CAVlC,wBAAyB,CACzB,gBAAiB,CAKjB,WAAY,CADZ,UAsBD,CAfC,wDAQC,wBAAiC,CANjC,aAAc,CACd,YAMD,CAEA,4BAEC,0BAA+B,CAD/B,eAED,CAMF,+BACC,gBACD,CAEA,+BACC,eACD,CAEA,+CAKC,oBAAqB,CAMrB,UACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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 <figure>. 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 l=a},9888:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-table-caption-background:#f7f7f7;--ck-color-table-caption-text:#333;--ck-color-table-caption-highlighted-background:#fd0}.ck-content .table>figcaption{background-color:var(--ck-color-table-caption-background);caption-side:top;color:var(--ck-color-table-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;text-align:center;word-break:break-word}.ck.ck-editor__editable .table>figcaption.table__caption_highlighted{animation:ck-table-caption-highlight .6s ease-out}.ck.ck-editor__editable .table>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}@keyframes ck-table-caption-highlight{0%{background-color:var(--ck-color-table-caption-highlighted-background)}to{background-color:var(--ck-color-table-caption-background)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecaption.css"],names:[],mappings:"AAKA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,oDACD,CAGA,8BAMC,yDAA0D,CAJ1D,gBAAiB,CAGjB,wCAAyC,CAJzC,qBAAsB,CAOtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,iBAAkB,CADlB,qBAOD,CAIC,qEACC,iDACD,CAEA,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAGD,sCACC,GACC,qEACD,CAEA,GACC,yDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-table-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-table-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-table-caption-highlighted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .table > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: top;\n\tword-break: break-word;\n\ttext-align: center;\n\tcolor: var(--ck-color-table-caption-text);\n\tbackground-color: var(--ck-color-table-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .table > figcaption {\n\t&.table__caption_highlighted {\n\t\tanimation: ck-table-caption-highlight .6s ease-out;\n\t}\n\n\t&.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the table caption placeholder doesn't overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n@keyframes ck-table-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-table-caption-highlighted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-table-caption-background);\n\t}\n}\n"],sourceRoot:""}]);const l=a},5737:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row{flex-wrap:wrap}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:first-of-type{flex-grow:0.57}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:last-of-type{flex-grow:0.43}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar .ck-button{flex-grow:1}.ck.ck-table-cell-properties-form{width:320px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__padding-row{align-self:flex-end;padding:0;width:25%}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecellproperties.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tablecellproperties.css"],names:[],mappings:"AAOE,6FACC,cAiBD,CAdE,0HAEC,cACD,CAEA,yHAEC,cACD,CAEA,uHACC,WACD,CClBJ,kCACC,WAkBD,CAfE,2FACC,mBAAoB,CACpB,SAAU,CACV,SACD,CAGC,4GACC,eAAgB,CAGhB,qCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},728:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-table-column-resizer-hover:var(--ck-color-base-active);--ck-table-column-resizer-width:7px;--ck-table-column-resizer-position-offset:calc(var(--ck-table-column-resizer-width)*-0.5 - 0.5px)}.ck-content .table .ck-table-resized{table-layout:fixed}.ck-content .table table{overflow:hidden}.ck-content .table td,.ck-content .table th{position:relative}.ck.ck-editor__editable .table .ck-table-column-resizer{bottom:-999999px;cursor:col-resize;position:absolute;right:var(--ck-table-column-resizer-position-offset);top:-999999px;user-select:none;width:var(--ck-table-column-resizer-width);z-index:var(--ck-z-default)}.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer,.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer{display:none}.ck.ck-editor__editable .table .ck-table-column-resizer:hover,.ck.ck-editor__editable .table .ck-table-column-resizer__active{background-color:var(--ck-color-table-column-resizer-hover);opacity:.25}.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer{left:var(--ck-table-column-resizer-position-offset);right:unset}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecolumnresize.css"],names:[],mappings:"AAKA,MACC,iEAAkE,CAClE,mCAAoC,CAIpC,iGACD,CAEA,qCACC,kBACD,CAEA,yBACC,eACD,CAEA,4CAEC,iBACD,CAEA,wDAOC,gBAAiB,CAGjB,iBAAkB,CATlB,iBAAkB,CAOlB,oDAAqD,CAFrD,aAAc,CAKd,gBAAiB,CAFjB,0CAA2C,CAG3C,2BACD,CAQA,qJACC,YACD,CAEA,8HAEC,2DAA4D,CAC5D,WACD,CAEA,iEACC,mDAAoD,CACpD,WACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-table-column-resizer-hover: var(--ck-color-base-active);\n\t--ck-table-column-resizer-width: 7px;\n\n\t/* The offset used for absolute positioning of the resizer element, so that it is placed exactly above the cell border.\n\t The value is: minus half the width of the resizer decreased additionaly by the half the width of the border (0.5px). */\n\t--ck-table-column-resizer-position-offset: calc(var(--ck-table-column-resizer-width) * -0.5 - 0.5px);\n}\n\n.ck-content .table .ck-table-resized {\n\ttable-layout: fixed;\n}\n\n.ck-content .table table {\n\toverflow: hidden;\n}\n\n.ck-content .table td,\n.ck-content .table th {\n\tposition: relative;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer {\n\tposition: absolute;\n\t/* The resizer element resides in each cell so to occupy the entire height of the table, which is unknown from a CSS point of view,\n\t it is extended to an extremely high height. Even for screens with a very high pixel density, the resizer will fulfill its role as\n\t it should, i.e. for a screen of 476 ppi the total height of the resizer will take over 350 sheets of A4 format, which is totally\n\t unrealistic height for a single table. */\n\ttop: -999999px;\n\tbottom: -999999px;\n\tright: var(--ck-table-column-resizer-position-offset);\n\twidth: var(--ck-table-column-resizer-width);\n\tcursor: col-resize;\n\tuser-select: none;\n\tz-index: var(--ck-z-default);\n}\n\n.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n/* The resizer elements, which are extended to an extremely high height, break the drag & drop feature in Chrome. To make it work again,\n all resizers must be hidden while the table is dragged. */\n.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer:hover,\n.ck.ck-editor__editable .table .ck-table-column-resizer__active {\n\tbackground-color: var(--ck-color-table-column-resizer-hover);\n\topacity: 0.25;\n}\n\n.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer {\n\tleft: var(--ck-table-column-resizer-position-offset);\n\tright: unset;\n}\n"],sourceRoot:""}]);const l=a},4777:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-table-focused-cell-background:rgba(158,201,250,.3)}.ck-widget.table td.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table td.ck-editor__nested-editable:focus,.ck-widget.table th.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table th.ck-editor__nested-editable:focus{background:var(--ck-color-table-focused-cell-background);border-style:none;outline:1px solid var(--ck-color-focus-border);outline-offset:-1px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableediting.css"],names:[],mappings:"AAKA,MACC,6DACD,CAKE,8QAGC,wDAAyD,CAKzD,iBAAkB,CAClB,8CAA+C,CAC/C,mBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-table-focused-cell-background: hsla(212, 90%, 80%, .3);\n}\n\n.ck-widget.table {\n\t& td,\n\t& th {\n\t\t&.ck-editor__nested-editable.ck-editor__nested-editable_focused,\n\t\t&.ck-editor__nested-editable:focus {\n\t\t\t/* A very slight background to highlight the focused cell */\n\t\t\tbackground: var(--ck-color-table-focused-cell-background);\n\n\t\t\t/* Fixes the problem where surrounding cells cover the focused cell's border.\n\t\t\tIt does not fix the problem in all places but the UX is improved.\n\t\t\tSee https://github.com/ckeditor/ckeditor5-table/issues/29. */\n\t\t\tborder-style: none;\n\t\t\toutline: 1px solid var(--ck-color-focus-border);\n\t\t\toutline-offset: -1px; /* progressive enhancement - no IE support */\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const l=a},198:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck.ck-table-form .ck-form__row.ck-table-form__background-row,.ck.ck-table-form .ck-form__row.ck-table-form__border-row{flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{align-items:center;flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view{align-items:center;display:flex;flex-direction:column-reverse}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view .ck.ck-dropdown,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{flex-grow:0}.ck.ck-table-form .ck.ck-labeled-field-view{position:relative}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{bottom:calc(var(--ck-table-properties-error-arrow-size)*-1);left:50%;position:absolute;transform:translate(-50%,100%);z-index:1}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{content:"";left:50%;position:absolute;top:calc(var(--ck-table-properties-error-arrow-size)*-1);transform:translateX(-50%)}:root{--ck-table-properties-error-arrow-size:6px;--ck-table-properties-min-error-width:150px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{max-width:80px;min-width:80px;width:80px}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{padding:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width{margin:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{align-self:flex-end;display:inline-block;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small)}.ck.ck-table-form .ck.ck-labeled-field-view{padding-top:var(--ck-spacing-standard)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{border-radius:0}.ck-rounded-corners .ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status,.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{background:var(--ck-color-base-error);color:var(--ck-color-base-background);min-width:var(--ck-table-properties-min-error-width);padding:var(--ck-spacing-small) var(--ck-spacing-medium);text-align:center}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-color:transparent transparent var(--ck-color-base-error) transparent;border-style:solid;border-width:0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:ck-table-form-labeled-view-status-appear .15s ease both}.ck.ck-table-form .ck.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}@keyframes ck-table-form-labeled-view-status-appear{0%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tableform.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableform.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAWE,wHACC,cACD,CAEA,8DAEC,kBAAmB,CADnB,cAgBD,CAbC,qFAGC,kBAAmB,CAFnB,YAAa,CACb,6BAMD,CAEA,sMACC,WACD,CAIF,4CAEC,iBAoBD,CAlBC,8EAGC,2DAAgE,CADhE,QAAS,CADT,iBAAkB,CAGlB,8BAA+B,CAG/B,SAUD,CAPC,oFACC,UAAW,CAGX,QAAS,CAFT,iBAAkB,CAClB,wDAA6D,CAE7D,0BACD,CChDH,MACC,0CAA2C,CAC3C,2CACD,CAMI,2FACC,kCAAmC,CACnC,iBACD,CAGD,8KAIC,cAAe,CADf,cAAe,CADf,UAGD,CAGD,8DACC,SAcD,CAZC,yMAEC,QACD,CAEA,iGACC,mBAAoB,CACpB,oBAAqB,CACrB,wCAAyC,CACzC,6CAA8C,CAC9C,gCACD,CAIF,4CACC,sCAyBD,CAvBC,8ECxCD,eDyDC,CAjBA,mMCpCA,qCDqDA,CAjBA,8EAGC,qCAAsC,CACtC,qCAAsC,CAEtC,oDAAqD,CADrD,wDAAyD,CAEzD,iBAUD,CAPC,oFACC,2EAA4E,CAE5E,kBAAmB,CADnB,kJAED,CAdD,8EAgBC,iEACD,CAGA,6GACC,YACD,CAIF,oDACC,GACC,SACD,CAEA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-table-properties-error-arrow-size: 6px;\n\t--ck-table-properties-min-error-width: 150px;\n}\n\n.ck.ck-table-form {\n\t& .ck-form__row {\n\t\t&.ck-table-form__border-row {\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\t& > .ck-label {\n\t\t\t\t\tfont-size: var(--ck-font-size-tiny);\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-table-form__border-style,\n\t\t\t& .ck-table-form__border-width {\n\t\t\t\twidth: 80px;\n\t\t\t\tmin-width: 80px;\n\t\t\t\tmax-width: 80px;\n\t\t\t}\n\t\t}\n\n\t\t&.ck-table-form__dimensions-row {\n\t\t\tpadding: 0;\n\n\t\t\t& .ck-table-form__dimensions-row__width,\n\t\t\t& .ck-table-form__dimensions-row__height {\n\t\t\t\tmargin: 0\n\t\t\t}\n\n\t\t\t& .ck-table-form__dimension-operator {\n\t\t\t\talign-self: flex-end;\n\t\t\t\tdisplay: inline-block;\n\t\t\t\theight: var(--ck-ui-component-min-height);\n\t\t\t\tline-height: var(--ck-ui-component-min-height);\n\t\t\t\tmargin: 0 var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-labeled-field-view {\n\t\tpadding-top: var(--ck-spacing-standard);\n\n\t\t& .ck.ck-labeled-field-view__status {\n\t\t\t@mixin ck-rounded-corners;\n\n\t\t\tbackground: var(--ck-color-base-error);\n\t\t\tcolor: var(--ck-color-base-background);\n\t\t\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\n\t\t\tmin-width: var(--ck-table-properties-min-error-width);\n\t\t\ttext-align: center;\n\n\t\t\t/* The arrow pointing towards the field. */\n\t\t\t&::after {\n\t\t\t\tborder-color: transparent transparent var(--ck-color-base-error) transparent;\n\t\t\t\tborder-width: 0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\n\t\t\tanimation: ck-table-form-labeled-view-status-appear .15s ease both;\n\t\t}\n\n\t\t/* Hide the error balloon when the field is blurred. Makes the experience much more clear. */\n\t\t& .ck-input.ck-error:not(:focus) + .ck.ck-labeled-field-view__status {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n@keyframes ck-table-form-labeled-view-status-appear {\n\t0% {\n\t\topacity: 0;\n\t}\n\n\t100% {\n\t\topacity: 1;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},9221:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-content:baseline;flex-basis:0;flex-wrap:wrap}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items{flex-wrap:nowrap}.ck.ck-table-properties-form{width:320px}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-self:flex-end;padding:0}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items>*{width:40px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tableproperties.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableproperties.css"],names:[],mappings:"AAOE,mFAGC,sBAAuB,CADvB,YAAa,CADb,cAOD,CAHC,qHACC,gBACD,CCTH,6BACC,WAmBD,CAhBE,mFACC,mBAAoB,CACpB,SAYD,CAVC,kGACC,eAAgB,CAGhB,qCAKD,CAHC,uHACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},5593:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,':root{--ck-table-selected-cell-background:rgba(158,207,250,.3)}.ck.ck-editor__editable .table table td.ck-editor__editable_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected{box-shadow:unset;caret-color:transparent;outline:unset;position:relative}.ck.ck-editor__editable .table table td.ck-editor__editable_selected:after,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:after{background-color:var(--ck-table-selected-cell-background);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.ck.ck-editor__editable .table table td.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table td.ck-editor__editable_selected:focus,.ck.ck-editor__editable .table table th.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:focus{background-color:transparent}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget{outline:unset}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle{display:none}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableselection.css"],names:[],mappings:"AAKA,MACC,wDACD,CAGC,0IAKC,gBAAiB,CAFjB,uBAAwB,CACxB,aAAc,CAFd,iBAiCD,CA3BC,sJAGC,yDAA0D,CAK1D,QAAS,CAPT,UAAW,CAKX,MAAO,CAJP,mBAAoB,CAEpB,iBAAkB,CAGlB,OAAQ,CAFR,KAID,CAEA,wTAEC,4BACD,CAMA,gKACC,aAKD,CAHC,0NACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},4499:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-button,a.ck.ck-button{align-items:center;display:inline-flex;justify-content:left;position:relative;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{display:none}.ck.ck-button.ck-button_with-text .ck-button__label,a.ck.ck-button.ck-button_with-text .ck-button__label{display:inline-block}.ck.ck-button:not(.ck-button_with-text),a.ck.ck-button:not(.ck-button_with-text){justify-content:center}.ck.ck-button,a.ck.ck-button{background:var(--ck-color-button-default-background)}.ck.ck-button:not(.ck-disabled):hover,a.ck.ck-button:not(.ck-disabled):hover{background:var(--ck-color-button-default-hover-background)}.ck.ck-button:not(.ck-disabled):active,a.ck.ck-button:not(.ck-disabled):active{background:var(--ck-color-button-default-active-background)}.ck.ck-button.ck-disabled,a.ck.ck-button.ck-disabled{background:var(--ck-color-button-default-disabled-background)}.ck.ck-button,a.ck.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-button,.ck-rounded-corners a.ck.ck-button,.ck.ck-button.ck-rounded-corners,a.ck.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-button,a.ck.ck-button{-webkit-appearance:none;border:1px solid transparent;cursor:default;font-size:inherit;line-height:1;min-height:var(--ck-ui-component-min-height);min-width:var(--ck-ui-component-min-height);padding:var(--ck-spacing-tiny);text-align:center;transition:box-shadow .2s ease-in-out,border .2s ease-in-out;vertical-align:middle;white-space:nowrap}.ck.ck-button:active,.ck.ck-button:focus,a.ck.ck-button:active,a.ck.ck-button:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-button .ck-button__icon use,.ck.ck-button .ck-button__icon use *,a.ck.ck-button .ck-button__icon use,a.ck.ck-button .ck-button__icon use *{color:inherit}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{color:inherit;cursor:inherit;font-size:inherit;font-weight:inherit;vertical-align:middle}[dir=ltr] .ck.ck-button .ck-button__label,[dir=ltr] a.ck.ck-button .ck-button__label{text-align:left}[dir=rtl] .ck.ck-button .ck-button__label,[dir=rtl] a.ck.ck-button .ck-button__label{text-align:right}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{color:inherit}[dir=ltr] .ck.ck-button .ck-button__keystroke,[dir=ltr] a.ck.ck-button .ck-button__keystroke{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-button .ck-button__keystroke,[dir=rtl] a.ck.ck-button .ck-button__keystroke{margin-right:var(--ck-spacing-large)}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{font-weight:700;opacity:.7}.ck.ck-button.ck-disabled:active,.ck.ck-button.ck-disabled:focus,a.ck.ck-button.ck-disabled:active,a.ck.ck-button.ck-disabled:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-button.ck-disabled .ck-button__icon,.ck.ck-button.ck-disabled .ck-button__label,a.ck.ck-button.ck-disabled .ck-button__icon,a.ck.ck-button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-disabled .ck-button__keystroke,a.ck.ck-button.ck-disabled .ck-button__keystroke{opacity:.3}.ck.ck-button.ck-button_with-text,a.ck.ck-button.ck-button_with-text{padding:var(--ck-spacing-tiny) var(--ck-spacing-standard)}[dir=ltr] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=ltr] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:calc(var(--ck-spacing-small)*-1);margin-right:var(--ck-spacing-small)}[dir=rtl] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=rtl] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:var(--ck-spacing-small);margin-right:calc(var(--ck-spacing-small)*-1)}.ck.ck-button.ck-button_with-keystroke .ck-button__label,a.ck.ck-button.ck-button_with-keystroke .ck-button__label{flex-grow:1}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{background:var(--ck-color-button-on-background)}.ck.ck-button.ck-on:not(.ck-disabled):hover,a.ck.ck-button.ck-on:not(.ck-disabled):hover{background:var(--ck-color-button-on-hover-background)}.ck.ck-button.ck-on:not(.ck-disabled):active,a.ck.ck-button.ck-on:not(.ck-disabled):active{background:var(--ck-color-button-on-active-background)}.ck.ck-button.ck-on.ck-disabled,a.ck.ck-button.ck-on.ck-disabled{background:var(--ck-color-button-on-disabled-background)}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{color:var(--ck-color-button-on-color)}.ck.ck-button.ck-button-save,a.ck.ck-button.ck-button-save{color:var(--ck-color-button-save)}.ck.ck-button.ck-button-cancel,a.ck.ck-button.ck-button-cancel{color:var(--ck-color-button-cancel)}.ck.ck-button-action,a.ck.ck-button-action{background:var(--ck-color-button-action-background)}.ck.ck-button-action:not(.ck-disabled):hover,a.ck.ck-button-action:not(.ck-disabled):hover{background:var(--ck-color-button-action-hover-background)}.ck.ck-button-action:not(.ck-disabled):active,a.ck.ck-button-action:not(.ck-disabled):active{background:var(--ck-color-button-action-active-background)}.ck.ck-button-action.ck-disabled,a.ck.ck-button-action.ck-disabled{background:var(--ck-color-button-action-disabled-background)}.ck.ck-button-action,a.ck.ck-button-action{color:var(--ck-color-button-action-text)}.ck.ck-button-bold,a.ck.ck-button-bold{font-weight:700}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/button.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/button.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/mixins/_button.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AAOA,6BAMC,kBAAmB,CADnB,mBAAoB,CAEpB,oBAAqB,CAHrB,iBAAkB,CCFlB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBDkBD,CAdC,iEACC,YACD,CAGC,yGACC,oBACD,CAID,iFACC,sBACD,CEjBD,6BCAC,oDD4ID,CCzIE,6EACC,0DACD,CAEA,+EACC,2DACD,CAID,qDACC,6DACD,CDfD,6BEDC,eF6ID,CA5IA,wIEGE,qCFyIF,CA5IA,6BA6BC,uBAAwB,CANxB,4BAA6B,CAjB7B,cAAe,CAcf,iBAAkB,CAHlB,aAAc,CAJd,4CAA6C,CAD7C,2CAA4C,CAJ5C,8BAA+B,CAC/B,iBAAkB,CAiBlB,4DAA8D,CAnB9D,qBAAsB,CAFtB,kBAuID,CA7GC,oFGhCA,2BAA2B,CCF3B,2CAA8B,CDC9B,YHqCA,CAIC,kJAEC,aACD,CAGD,iEAIC,aAAc,CACd,cAAe,CAHf,iBAAkB,CAClB,mBAAoB,CAMpB,qBASD,CAlBA,qFAYE,eAMF,CAlBA,qFAgBE,gBAEF,CAEA,yEACC,aAYD,CAbA,6FAIE,mCASF,CAbA,6FAQE,oCAKF,CAbA,yEAWC,eAAiB,CACjB,UACD,CAIC,oIIrFD,oDJyFC,CAOA,gLKhGD,kCLkGC,CAEA,iGACC,UACD,CAGD,qEACC,yDAcD,CAXC,2HAEE,4CAA+C,CAC/C,oCAOF,CAVA,2HAQE,mCAAoC,CADpC,6CAGF,CAKA,mHACC,WACD,CAID,yCC/HA,+CDmIA,CChIC,yFACC,qDACD,CAEA,2FACC,sDACD,CAID,iEACC,wDACD,CDgHA,yCAGC,qCACD,CAEA,2DACC,iCACD,CAEA,+DACC,mCACD,CAID,2CC/IC,mDDoJD,CCjJE,2FACC,yDACD,CAEA,6FACC,0DACD,CAID,mEACC,4DACD,CDgID,2CAIC,wCACD,CAEA,uCAEC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-unselectable;\n\n\tposition: relative;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: left;\n\n\t& .ck-button__label {\n\t\tdisplay: none;\n\t}\n\n\t&.ck-button_with-text {\n\t\t& .ck-button__label {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n\n\t/* Center the icon horizontally in a button without text. */\n\t&:not(.ck-button_with-text) {\n\t\tjustify-content: center;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../mixins/_button.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-button-colors --ck-color-button-default;\n\t@mixin ck-rounded-corners;\n\n\twhite-space: nowrap;\n\tcursor: default;\n\tvertical-align: middle;\n\tpadding: var(--ck-spacing-tiny);\n\ttext-align: center;\n\n\t/* A very important piece of styling. Go to variable declaration to learn more. */\n\tmin-width: var(--ck-ui-component-min-height);\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Normalize the height of the line. Removing this will break consistent height\n\tamong text and text-less buttons (with icons). */\n\tline-height: 1;\n\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t/* Avoid flickering when the foucs border shows up. */\n\tborder: 1px solid transparent;\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .2s ease-in-out, border .2s ease-in-out;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/189 */\n\t-webkit-appearance: none;\n\n\t&:active,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t/* Allow icon coloring using the text "color" property. */\n\t& .ck-button__icon {\n\t\t& use,\n\t\t& use * {\n\t\t\tcolor: inherit;\n\t\t}\n\t}\n\n\t& .ck-button__label {\n\t\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\t\tfont-size: inherit;\n\t\tfont-weight: inherit;\n\t\tcolor: inherit;\n\t\tcursor: inherit;\n\n\t\t/* Must be consistent with .ck-icon\'s vertical align. Otherwise, buttons with and\n\t\twithout labels (but with icons) have different sizes in Chrome */\n\t\tvertical-align: middle;\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& .ck-button__keystroke {\n\t\tcolor: inherit;\n\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-right: var(--ck-spacing-large);\n\t\t}\n\n\t\tfont-weight: bold;\n\t\topacity: .7;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t&.ck-disabled {\n\t\t&:active,\n\t\t&:focus {\n\t\t\t/* The disabled button should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\n\t\t& .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t& .ck-button__keystroke {\n\t\t\topacity: .3;\n\t\t}\n\t}\n\n\t&.ck-button_with-text {\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-standard);\n\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-button_with-keystroke {\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__label {\n\t\t\tflex-grow: 1;\n\t\t}\n\t}\n\n\t/* A style of the button which is currently on, e.g. its feature is active. */\n\t&.ck-on {\n\t\t@mixin ck-button-colors --ck-color-button-on;\n\n\t\tcolor: var(--ck-color-button-on-color);\n\t}\n\n\t&.ck-button-save {\n\t\tcolor: var(--ck-color-button-save);\n\t}\n\n\t&.ck-button-cancel {\n\t\tcolor: var(--ck-color-button-cancel);\n\t}\n}\n\n/* A style of the button which handles the primary action. */\n.ck.ck-button-action,\na.ck.ck-button-action {\n\t@mixin ck-button-colors --ck-color-button-action;\n\n\tcolor: var(--ck-color-button-action-text);\n}\n\n.ck.ck-button-bold,\na.ck.ck-button-bold {\n\tfont-weight: bold;\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},9681:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{display:block}:root{--ck-switch-button-toggle-width:2.6153846154em;--ck-switch-button-toggle-inner-size:calc(1.07692em + 1px);--ck-switch-button-translation:calc(var(--ck-switch-button-toggle-width) - var(--ck-switch-button-toggle-inner-size) - 2px);--ck-switch-button-inner-hover-shadow:0 0 0 5px var(--ck-color-switch-button-inner-shadow)}.ck.ck-button.ck-switchbutton,.ck.ck-button.ck-switchbutton.ck-on:active,.ck.ck-button.ck-switchbutton.ck-on:focus,.ck.ck-button.ck-switchbutton.ck-on:hover,.ck.ck-button.ck-switchbutton:active,.ck.ck-button.ck-switchbutton:focus,.ck.ck-button.ck-switchbutton:hover{background:transparent;color:inherit}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__label{margin-right:calc(var(--ck-spacing-large)*2)}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__label{margin-left:calc(var(--ck-spacing-large)*2)}.ck.ck-button.ck-switchbutton .ck-button__toggle{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle.ck-rounded-corners{border-radius:var(--ck-border-radius)}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-left:auto}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-right:auto}.ck.ck-button.ck-switchbutton .ck-button__toggle{background:var(--ck-color-switch-button-off-background);border:1px solid transparent;transition:background .4s ease,box-shadow .2s ease-in-out,outline .2s ease-in-out;width:var(--ck-switch-button-toggle-width)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:calc(var(--ck-border-radius)*.5)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{background:var(--ck-color-switch-button-inner-background);height:var(--ck-switch-button-toggle-inner-size);transition:all .3s ease;width:var(--ck-switch-button-toggle-inner-size)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover{background:var(--ck-color-switch-button-off-hover-background)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover .ck-button__toggle__inner{box-shadow:var(--ck-switch-button-inner-hover-shadow)}.ck.ck-button.ck-switchbutton.ck-disabled .ck-button__toggle{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-switchbutton:focus{border-color:transparent;box-shadow:none;outline:none}.ck.ck-button.ck-switchbutton:focus .ck-button__toggle{box-shadow:0 0 0 1px var(--ck-color-base-background),0 0 0 5px var(--ck-color-focus-outer-shadow);outline:var(--ck-focus-ring);outline-offset:1px}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle{background:var(--ck-color-switch-button-on-background)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle:hover{background:var(--ck-color-switch-button-on-hover-background)}[dir=ltr] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(var( --ck-switch-button-translation ))}[dir=rtl] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(calc(var( --ck-switch-button-translation )*-1))}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/switchbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/switchbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AASE,4HACC,aACD,CCCF,MAEC,8CAA+C,CAE/C,0DAAgE,CAChE,2HAIC,CACD,0FACD,CAOC,0QAEC,sBAAuB,CADvB,aAED,CAEA,0DAGE,4CAOF,CAVA,0DAQE,2CAEF,CAEA,iDCpCA,eD4EA,CAxCA,yIChCC,qCDwED,CAxCA,2DAKE,gBAmCF,CAxCA,2DAUE,iBA8BF,CAxCA,iDAkBC,uDAAwD,CAFxD,4BAA6B,CAD7B,iFAAsF,CAEtF,0CAuBD,CApBC,2ECxDD,eDmEC,CAXA,6LCpDA,qCAAsC,CDsDpC,8CASF,CAXA,2EAOC,yDAA0D,CAD1D,gDAAiD,CAIjD,uBAA0B,CAL1B,+CAMD,CAEA,uDACC,6DAKD,CAHC,iFACC,qDACD,CAIF,6DEhFA,kCFkFA,CAGA,oCACC,wBAAyB,CAEzB,eAAgB,CADhB,YAQD,CALC,uDACC,iGAAmG,CAEnG,4BAA6B,CAD7B,kBAED,CAKA,uDACC,sDAkBD,CAhBC,6DACC,4DACD,CAEA,2FAKE,2DAMF,CAXA,2FASE,oEAEF",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n/* Note: To avoid rendering issues (aliasing) but to preserve the responsive nature\nof the component, floating–point numbers have been used which, for the default font size\n(see: --ck-font-size-base), will generate simple integers. */\n:root {\n\t/* 34px at 13px font-size */\n\t--ck-switch-button-toggle-width: 2.6153846154em;\n\t/* 14px at 13px font-size */\n\t--ck-switch-button-toggle-inner-size: calc(1.0769230769em + 1px);\n\t--ck-switch-button-translation: calc(\n\t\tvar(--ck-switch-button-toggle-width) -\n\t\tvar(--ck-switch-button-toggle-inner-size) -\n\t\t2px /* Border */\n\t);\n\t--ck-switch-button-inner-hover-shadow: 0 0 0 5px var(--ck-color-switch-button-inner-shadow);\n}\n\n.ck.ck-button.ck-switchbutton {\n\t/* Unlike a regular button, the switch button text color and background should never change.\n\t * Changing toggle switch (background, outline) is enough to carry the information about the\n\t * state of the entire component (https://github.com/ckeditor/ckeditor5/issues/12519)\n\t */\n\t&, &:hover, &:focus, &:active, &.ck-on:hover, &.ck-on:focus, &.ck-on:active {\n\t\tcolor: inherit;\n\t\tbackground: transparent;\n\t}\n\n\t& .ck-button__label {\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-right: calc(2 * var(--ck-spacing-large));\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-left: calc(2 * var(--ck-spacing-large));\n\t\t}\n\t}\n\n\t& .ck-button__toggle {\n\t\t@mixin ck-rounded-corners;\n\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Make sure the toggle is always to the right as far as possible. */\n\t\t\tmargin-left: auto;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Make sure the toggle is always to the left as far as possible. */\n\t\t\tmargin-right: auto;\n\t\t}\n\n\t\t/* Apply some smooth transition to the box-shadow and border. */\n\t\t/* Gently animate the background color of the toggle switch */\n\t\ttransition: background 400ms ease, box-shadow .2s ease-in-out, outline .2s ease-in-out;\n\t\tborder: 1px solid transparent;\n\t\twidth: var(--ck-switch-button-toggle-width);\n\t\tbackground: var(--ck-color-switch-button-off-background);\n\n\t\t& .ck-button__toggle__inner {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-radius: calc(.5 * var(--ck-border-radius));\n\t\t\t}\n\n\t\t\twidth: var(--ck-switch-button-toggle-inner-size);\n\t\t\theight: var(--ck-switch-button-toggle-inner-size);\n\t\t\tbackground: var(--ck-color-switch-button-inner-background);\n\n\t\t\t/* Gently animate the inner part of the toggle switch */\n\t\t\ttransition: all 300ms ease;\n\t\t}\n\n\t\t&:hover {\n\t\t\tbackground: var(--ck-color-switch-button-off-hover-background);\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\tbox-shadow: var(--ck-switch-button-inner-hover-shadow);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-button__toggle {\n\t\t@mixin ck-disabled;\n\t}\n\n\t/* Overriding default .ck-button:focus styles + an outline around the toogle */\n\t&:focus {\n\t\tborder-color: transparent;\n\t\toutline: none;\n\t\tbox-shadow: none;\n\n\t\t& .ck-button__toggle {\n\t\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-background), 0 0 0 5px var(--ck-color-focus-outer-shadow);\n\t\t\toutline-offset: 1px;\n\t\t\toutline: var(--ck-focus-ring);\n\t\t}\n\t}\n\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-on {\n\t\t& .ck-button__toggle {\n\t\t\tbackground: var(--ck-color-switch-button-on-background);\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--ck-color-switch-button-on-hover-background);\n\t\t\t}\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\t/*\n\t\t\t\t* Move the toggle switch to the right. It will be animated.\n\t\t\t\t*/\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\ttransform: translateX( var( --ck-switch-button-translation ) );\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\ttransform: translateX( calc( -1 * var( --ck-switch-button-translation ) ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},4923:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-color-grid{display:grid}:root{--ck-color-grid-tile-size:24px;--ck-color-color-grid-check-icon:#166fd4}.ck.ck-color-grid{grid-gap:5px;padding:8px}.ck.ck-color-grid__tile{border:0;height:var(--ck-color-grid-tile-size);min-height:var(--ck-color-grid-tile-size);min-width:var(--ck-color-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-color-grid-tile-size)}.ck.ck-color-grid__tile.ck-disabled{cursor:unset;transition:unset}.ck.ck-color-grid__tile.ck-color-table__color-tile_bordered{box-shadow:0 0 0 1px var(--ck-color-base-border)}.ck.ck-color-grid__tile .ck.ck-icon{color:var(--ck-color-color-grid-check-icon);display:none}.ck.ck-color-grid__tile.ck-on{box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-base-text)}.ck.ck-color-grid__tile.ck-on .ck.ck-icon{display:block}.ck.ck-color-grid__tile.ck-on,.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){border:0}.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-color-grid__label{padding:0 var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/colorgrid/colorgrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorgrid/colorgrid.css"],names:[],mappings:"AAKA,kBACC,YACD,CCAA,MACC,8BAA+B,CAK/B,wCACD,CAEA,kBACC,YAAa,CACb,WACD,CAEA,wBAOC,QAAS,CALT,qCAAsC,CAEtC,yCAA0C,CAD1C,wCAAyC,CAEzC,SAAU,CACV,8BAA+B,CAL/B,oCAyCD,CAjCC,oCACC,YAAa,CACb,gBACD,CAEA,4DACC,gDACD,CAEA,oCAEC,2CAA4C,CAD5C,YAED,CAEA,8BACC,8FAKD,CAHC,0CACC,aACD,CAGD,8HAIC,QACD,CAEA,gGAEC,iGACD,CAGD,yBACC,oCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-color-grid-tile-size: 24px;\n\n\t/* Not using global colors here because these may change but some colors in a pallette\n\t * require special treatment. For instance, this ensures no matter what the UI text color is,\n\t * the check icon will look good on the black color tile. */\n\t--ck-color-color-grid-check-icon: hsl(212, 81%, 46%);\n}\n\n.ck.ck-color-grid {\n\tgrid-gap: 5px;\n\tpadding: 8px;\n}\n\n.ck.ck-color-grid__tile {\n\twidth: var(--ck-color-grid-tile-size);\n\theight: var(--ck-color-grid-tile-size);\n\tmin-width: var(--ck-color-grid-tile-size);\n\tmin-height: var(--ck-color-grid-tile-size);\n\tpadding: 0;\n\ttransition: .2s ease box-shadow;\n\tborder: 0;\n\n\t&.ck-disabled {\n\t\tcursor: unset;\n\t\ttransition: unset;\n\t}\n\n\t&.ck-color-table__color-tile_bordered {\n\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-border);\n\t}\n\n\t& .ck.ck-icon {\n\t\tdisplay: none;\n\t\tcolor: var(--ck-color-color-grid-check-icon);\n\t}\n\n\t&.ck-on {\n\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-base-text);\n\n\t\t& .ck.ck-icon {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n\n\t&.ck-on,\n\t&:focus:not( .ck-disabled ),\n\t&:hover:not( .ck-disabled ) {\n\t\t/* Disable the default .ck-button\'s border ring. */\n\t\tborder: 0;\n\t}\n\n\t&:focus:not( .ck-disabled ),\n\t&:hover:not( .ck-disabled ) {\n\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t}\n}\n\n.ck.ck-color-grid__label {\n\tpadding: 0 var(--ck-spacing-standard);\n}\n'],sourceRoot:""}]);const l=a},3488:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-dropdown-max-width:75vw}.ck.ck-dropdown{display:inline-block;position:relative}.ck.ck-dropdown .ck-dropdown__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-dropdown .ck-button.ck-dropdown__button{width:100%}.ck.ck-dropdown .ck-dropdown__panel{display:none;max-width:var(--ck-dropdown-max-width);position:absolute;z-index:var(--ck-z-modal)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel-visible{display:inline-block}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw{bottom:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{bottom:auto;top:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se{left:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{right:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s{left:50%;transform:translateX(-50%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw{left:75%;transform:translateX(-75%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme{left:25%;transform:translateX(-25%)}.ck.ck-toolbar .ck-dropdown__panel{z-index:calc(var(--ck-z-modal) + 1)}:root{--ck-dropdown-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-dropdown{font-size:inherit}.ck.ck-dropdown .ck-dropdown__arrow{width:var(--ck-dropdown-arrow-size)}[dir=ltr] .ck.ck-dropdown .ck-dropdown__arrow{margin-left:var(--ck-spacing-standard);right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-dropdown .ck-dropdown__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}.ck.ck-dropdown.ck-disabled .ck-dropdown__arrow{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir=rtl] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{overflow:hidden;text-overflow:ellipsis;width:7em}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on{border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-dropdown__button_label-width_auto .ck-button__label{width:auto}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active{box-shadow:none}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active:focus,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active:focus{box-shadow:var(--ck-focus-outer-shadow),0 0}.ck.ck-dropdown__panel{border-radius:0}.ck-rounded-corners .ck.ck-dropdown__panel,.ck.ck-dropdown__panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-dropdown__panel{background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);bottom:0;box-shadow:var(--ck-drop-shadow),0 0;min-width:100%}.ck.ck-dropdown__panel.ck-dropdown__panel_se{border-top-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_sw{border-top-right-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_ne{border-bottom-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_nw{border-bottom-right-radius:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/dropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/dropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,MACC,4BACD,CAEA,gBACC,oBAAqB,CACrB,iBA2ED,CAzEC,oCACC,mBAAoB,CACpB,2BACD,CAGA,+CACC,UACD,CAEA,oCACC,YAAa,CAEb,sCAAuC,CAEvC,iBAAkB,CAHlB,yBA4DD,CAvDC,+DACC,oBACD,CAEA,mSAKC,WACD,CAEA,mSAUC,WAAY,CADZ,QAED,CAEA,oHAEC,MACD,CAEA,oHAEC,OACD,CAEA,kHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAQF,mCACC,mCACD,CCpFA,MACC,sDACD,CAEA,gBAEC,iBA2ED,CAzEC,oCACC,mCACD,CAGC,8CAIC,sCAAuC,CAHvC,gCAID,CAIA,8CACC,+BAAgC,CAGhC,oCACD,CAGD,gDC/BA,kCDiCA,CAIE,mFAEC,oCACD,CAIA,mFAEC,qCACD,CAID,iEAEC,eAAgB,CAChB,sBAAuB,CAFvB,SAGD,CAGA,6EC1DD,kCD4DC,CAGA,qDACC,2BAA4B,CAC5B,4BACD,CAEA,sGACC,UACD,CAGA,yHAEC,eAKD,CAHC,qIE7EF,2CF+EE,CAKH,uBGlFC,eH8GD,CA5BA,qFG9EE,qCH0GF,CA5BA,uBAIC,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CE1FT,oCAA8B,CF6F9B,cAmBD,CAfC,6CACC,wBACD,CAEA,6CACC,yBACD,CAEA,6CACC,2BACD,CAEA,6CACC,4BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-dropdown-max-width: 75vw;\n}\n\n.ck.ck-dropdown {\n\tdisplay: inline-block;\n\tposition: relative;\n\n\t& .ck-dropdown__arrow {\n\t\tpointer-events: none;\n\t\tz-index: var(--ck-z-default);\n\t}\n\n\t/* Dropdown button should span horizontally, e.g. in vertical toolbars */\n\t& .ck-button.ck-dropdown__button {\n\t\twidth: 100%;\n\t}\n\n\t& .ck-dropdown__panel {\n\t\tdisplay: none;\n\t\tz-index: var(--ck-z-modal);\n\t\tmax-width: var(--ck-dropdown-max-width);\n\n\t\tposition: absolute;\n\n\t\t&.ck-dropdown__panel-visible {\n\t\t\tdisplay: inline-block;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_n,\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_nme {\n\t\t\tbottom: 100%;\n\t\t}\n\n\t\t&.ck-dropdown__panel_se,\n\t\t&.ck-dropdown__panel_sw,\n\t\t&.ck-dropdown__panel_smw,\n\t\t&.ck-dropdown__panel_sme,\n\t\t&.ck-dropdown__panel_s {\n\t\t\t/*\n\t\t\t * Using transform: translate3d( 0, 100%, 0 ) causes blurry dropdown on Chrome 67-78+ on non-retina displays.\n\t\t\t * See https://github.com/ckeditor/ckeditor5/issues/1053.\n\t\t\t */\n\t\t\ttop: 100%;\n\t\t\tbottom: auto;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_se {\n\t\t\tleft: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_sw {\n\t\t\tright: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_s,\n\t\t&.ck-dropdown__panel_n {\n\t\t\t/* Positioning panels relative to the center of the button */\n\t\t\tleft: 50%;\n\t\t\ttransform: translateX(-50%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_smw {\n\t\t\t/* Positioning panels relative to the middle-west of the button */\n\t\t\tleft: 75%;\n\t\t\ttransform: translateX(-75%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nme,\n\t\t&.ck-dropdown__panel_sme {\n\t\t\t/* Positioning panels relative to the middle-east of the button */\n\t\t\tleft: 25%;\n\t\t\ttransform: translateX(-25%);\n\t\t}\n\t}\n}\n\n/*\n * Toolbar dropdown panels should be always above the UI (eg. other dropdown panels) from the editor's content.\n * See https://github.com/ckeditor/ckeditor5/issues/7874\n */\n.ck.ck-toolbar .ck-dropdown__panel {\n\tz-index: calc( var(--ck-z-modal) + 1 );\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-dropdown-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-dropdown {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t& .ck-dropdown__arrow {\n\t\twidth: var(--ck-dropdown-arrow-size);\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& .ck-dropdown__arrow {\n\t\t\tright: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& .ck-dropdown__arrow {\n\t\t\tleft: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-dropdown__arrow {\n\t\t@mixin ck-disabled;\n\t}\n\n\t& .ck-button.ck-dropdown__button {\n\t\t@mixin ck-dir ltr {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t/* #23 */\n\t\t& .ck-button__label {\n\t\t\twidth: 7em;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t\t&.ck-disabled .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/816 */\n\t\t&.ck-on {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t&.ck-dropdown__button_label-width_auto .ck-button__label {\n\t\t\twidth: auto;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/8699 */\n\t\t&.ck-off:active,\n\t\t&.ck-on:active {\n\t\t\tbox-shadow: none;\n\t\t\t\n\t\t\t&:focus {\n\t\t\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-dropdown__panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tbackground: var(--ck-color-dropdown-panel-background);\n\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\tbottom: 0;\n\n\t/* Make sure the panel is at least as wide as the drop-down\'s button. */\n\tmin-width: 100%;\n\n\t/* Disabled corner border radius to be consistent with the .dropdown__button\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t&.ck-dropdown__panel_se {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_sw {\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_ne {\n\t\tborder-bottom-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_nw {\n\t\tborder-bottom-right-radius: 0;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},6875:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-dropdown .ck-dropdown__panel .ck-list{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list,.ck.ck-dropdown .ck-dropdown__panel .ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0}.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button,.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:0}.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button,.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/listdropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,6CCIC,eDqBD,CAzBA,iICQE,qCAAsC,CDJtC,wBAqBF,CAfE,mFCND,eDYC,CANA,6MCFA,qCAAsC,CDKpC,2BAA4B,CAC5B,4BAA6B,CAF7B,wBAIF,CAEA,kFCdD,eDmBC,CALA,2MCVA,qCAAsC,CDYpC,wBAAyB,CACzB,yBAEF",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},66:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/splitbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/splitbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,iBAKD,CAHC,iDACC,qCACD,CCJD,MACC,gDAAyD,CACzD,4CACD,CAMC,oIAKE,gCAAiC,CADjC,6BASF,CAbA,oIAWE,+BAAgC,CADhC,4BAGF,CAEA,0CAGC,eAiBD,CApBA,oDAQE,+BAAgC,CADhC,4BAaF,CApBA,oDAcE,gCAAiC,CADjC,6BAOF,CAHC,8CACC,mCACD,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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},5075:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-toolbar-dropdown-max-width:60vw}.ck.ck-toolbar-dropdown>.ck-dropdown__panel{max-width:var(--ck-toolbar-dropdown-max-width);width:max-content}.ck.ck-toolbar-dropdown>.ck-dropdown__panel .ck-button:focus{z-index:calc(var(--ck-z-default) + 1)}.ck.ck-toolbar-dropdown .ck-toolbar{border:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/toolbardropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/toolbardropdown.css"],names:[],mappings:"AAKA,MACC,oCACD,CAEA,4CAGC,8CAA+C,CAD/C,iBAQD,CAJE,6DACC,qCACD,CCZF,oCACC,QACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},4547:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-editable-blur-selection:#d9d9d9}.ck.ck-editor__editable:not(.ck-editor__nested-editable){border-radius:0}.ck-rounded-corners .ck.ck-editor__editable:not(.ck-editor__nested-editable),.ck.ck-editor__editable.ck-rounded-corners:not(.ck-editor__nested-editable){border-radius:var(--ck-border-radius)}.ck.ck-editor__editable.ck-focused:not(.ck-editor__nested-editable){border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}.ck.ck-editor__editable_inline{border:1px solid transparent;overflow:auto;padding:0 var(--ck-spacing-standard)}.ck.ck-editor__editable_inline[dir=ltr]{text-align:left}.ck.ck-editor__editable_inline[dir=rtl]{text-align:right}.ck.ck-editor__editable_inline>:first-child{margin-top:var(--ck-spacing-large)}.ck.ck-editor__editable_inline>:last-child{margin-bottom:var(--ck-spacing-large)}.ck.ck-editor__editable_inline.ck-blurred ::selection{background:var(--ck-color-editable-blur-selection)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_n]:after{border-bottom-color:var(--ck-color-base-foreground)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_s]:after{border-top-color:var(--ck-color-base-foreground)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/editorui.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAWA,MACC,0CACD,CAEA,yDCJC,eDWD,CAPA,yJCAE,qCDOF,CAJC,oEEPA,2BAA2B,CCF3B,qCAA8B,CDC9B,YFWA,CAGD,+BAGC,4BAA6B,CAF7B,aAAc,CACd,oCA6BD,CA1BC,wCACC,eACD,CAEA,wCACC,gBACD,CAGA,4CACC,kCACD,CAGA,2CAKC,qCACD,CAGA,sDACC,kDACD,CAKA,gEACC,mDACD,CAIA,gEACC,gDACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_focus.css";\n@import "../../mixins/_button.css";\n\n:root {\n\t--ck-color-editable-blur-selection: hsl(0, 0%, 85%);\n}\n\n.ck.ck-editor__editable:not(.ck-editor__nested-editable) {\n\t@mixin ck-rounded-corners;\n\n\t&.ck-focused {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t}\n}\n\n.ck.ck-editor__editable_inline {\n\toverflow: auto;\n\tpadding: 0 var(--ck-spacing-standard);\n\tborder: 1px solid transparent;\n\n\t&[dir="ltr"] {\n\t\ttext-align: left;\n\t}\n\n\t&[dir="rtl"] {\n\t\ttext-align: right;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/116 */\n\t& > *:first-child {\n\t\tmargin-top: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/847 */\n\t& > *:last-child {\n\t\t/*\n\t\t * This value should match with the default margins of the block elements (like .media or .image)\n\t\t * to avoid a content jumping when the fake selection container shows up (See https://github.com/ckeditor/ckeditor5/issues/9825).\n\t\t */\n\t\tmargin-bottom: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/6517 */\n\t&.ck-blurred ::selection {\n\t\tbackground: var(--ck-color-editable-blur-selection);\n\t}\n}\n\n/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/111 */\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_n"] {\n\t&::after {\n\t\tborder-bottom-color: var(--ck-color-base-foreground);\n\t}\n}\n\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_s"] {\n\t&::after {\n\t\tborder-top-color: var(--ck-color-base-foreground);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},5523:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-form__header{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}:root{--ck-form-header-height:38px}.ck.ck-form__header{border-bottom:1px solid var(--ck-color-base-border);height:var(--ck-form-header-height);line-height:var(--ck-form-header-height);padding:var(--ck-spacing-small) var(--ck-spacing-large)}.ck.ck-form__header .ck-form__header__label{font-weight:700}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/formheader/formheader.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/formheader/formheader.css"],names:[],mappings:"AAKA,oBAIC,kBAAmB,CAHnB,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CAEjB,6BACD,CCNA,MACC,4BACD,CAEA,oBAIC,mDAAoD,CAFpD,mCAAoC,CACpC,wCAAyC,CAFzC,uDAQD,CAHC,4CACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form__header {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\talign-items: center;\n\tjustify-content: space-between;\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-form-header-height: 38px;\n}\n\n.ck.ck-form__header {\n\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\n\theight: var(--ck-form-header-height);\n\tline-height: var(--ck-form-header-height);\n\tborder-bottom: 1px solid var(--ck-color-base-border);\n\n\t& .ck-form__header__label {\n\t\tfont-weight: bold;\n\t}\n}\n"],sourceRoot:""}]);const l=a},1174:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-icon{vertical-align:middle}:root{--ck-icon-size:calc(var(--ck-line-height-base)*var(--ck-font-size-normal))}.ck.ck-icon{font-size:.8333350694em;height:var(--ck-icon-size);width:var(--ck-icon-size);will-change:transform}.ck.ck-icon,.ck.ck-icon *{cursor:inherit}.ck.ck-icon.ck-icon_inherit-color,.ck.ck-icon.ck-icon_inherit-color *{color:inherit}.ck.ck-icon.ck-icon_inherit-color :not([fill]){fill:currentColor}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/icon/icon.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/icon/icon.css"],names:[],mappings:"AAKA,YACC,qBACD,CCFA,MACC,0EACD,CAEA,YAKC,uBAAwB,CAHxB,0BAA2B,CAD3B,yBAA0B,CAU1B,qBAoBD,CAlBC,0BALA,cAQA,CAMC,sEACC,aAMD,CAJC,+CAEC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},6985:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-input-width:18em;--ck-input-text-width:var(--ck-input-width)}.ck.ck-input{border-radius:0}.ck-rounded-corners .ck.ck-input,.ck.ck-input.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input{background:var(--ck-color-input-background);border:1px solid var(--ck-color-input-border);min-height:var(--ck-ui-component-min-height);min-width:var(--ck-input-width);padding:var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);transition:box-shadow .1s ease-in-out,border .1s ease-in-out}.ck.ck-input:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-input[readonly]{background:var(--ck-color-input-disabled-background);border:1px solid var(--ck-color-input-disabled-border);color:var(--ck-color-input-disabled-text)}.ck.ck-input[readonly]:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-input.ck-error{animation:ck-input-shake .3s ease both;border-color:var(--ck-color-input-error-border)}.ck.ck-input.ck-error:focus{box-shadow:var(--ck-focus-error-outer-shadow),0 0}@keyframes ck-input-shake{20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-1px)}80%{transform:translateX(1px)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/input/input.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AASA,MACC,qBAAsB,CAGtB,2CACD,CAEA,aCLC,eD2CD,CAtCA,iECDE,qCDuCF,CAtCA,aAGC,2CAA4C,CAC5C,6CAA8C,CAK9C,4CAA6C,CAH7C,+BAAgC,CADhC,6DAA8D,CAO9D,4DA0BD,CAxBC,mBEnBA,2BAA2B,CCF3B,2CAA8B,CDC9B,YFuBA,CAEA,uBAEC,oDAAqD,CADrD,sDAAuD,CAEvD,yCAMD,CAJC,6BG/BD,oDHkCC,CAGD,sBAEC,sCAAuC,CADvC,+CAMD,CAHC,4BGzCD,iDH2CC,CAIF,0BACC,IACC,0BACD,CAEA,IACC,yBACD,CAEA,IACC,0BACD,CAEA,IACC,yBACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-input-width: 18em;\n\n\t/* Backward compatibility. */\n\t--ck-input-text-width: var(--ck-input-width);\n}\n\n.ck.ck-input {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-input-background);\n\tborder: 1px solid var(--ck-color-input-border);\n\tpadding: var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);\n\tmin-width: var(--ck-input-width);\n\n\t/* This is important to stay of the same height as surrounding buttons */\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .1s ease-in-out, border .1s ease-in-out;\n\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t&[readonly] {\n\t\tborder: 1px solid var(--ck-color-input-disabled-border);\n\t\tbackground: var(--ck-color-input-disabled-background);\n\t\tcolor: var(--ck-color-input-disabled-text);\n\n\t\t&:focus {\n\t\t\t/* The read-only input should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\tborder-color: var(--ck-color-input-error-border);\n\t\tanimation: ck-input-shake .3s ease both;\n\n\t\t&:focus {\n\t\t\t@mixin ck-box-shadow var(--ck-focus-error-outer-shadow);\n\t\t}\n\t}\n}\n\n@keyframes ck-input-shake {\n\t20% {\n\t\ttransform: translateX(-2px);\n\t}\n\n\t40% {\n\t\ttransform: translateX(2px);\n\t}\n\n\t60% {\n\t\ttransform: translateX(-1px);\n\t}\n\n\t80% {\n\t\ttransform: translateX(1px);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},2751:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-label{display:block}.ck.ck-voice-label{display:none}.ck.ck-label{font-weight:700}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/label/label.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/label/label.css"],names:[],mappings:"AAKA,aACC,aACD,CAEA,mBACC,YACD,CCNA,aACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},8111:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{display:flex;position:relative}.ck.ck-labeled-field-view .ck.ck-label{display:block;position:absolute}:root{--ck-labeled-field-view-transition:.1s cubic-bezier(0,0,0.24,0.95);--ck-labeled-field-empty-unfocused-max-width:100% - 2 * var(--ck-spacing-medium);--ck-labeled-field-label-default-position-x:var(--ck-spacing-medium);--ck-labeled-field-label-default-position-y:calc(var(--ck-font-size-base)*0.6);--ck-color-labeled-field-label-background:var(--ck-color-base-background)}.ck.ck-labeled-field-view{border-radius:0}.ck-rounded-corners .ck.ck-labeled-field-view,.ck.ck-labeled-field-view.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{width:100%}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{top:0}[dir=ltr] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{left:0}[dir=rtl] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{right:0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:var(--ck-color-labeled-field-label-background);font-weight:400;line-height:normal;max-width:100%;overflow:hidden;padding:0 calc(var(--ck-font-size-tiny)*.5);pointer-events:none;text-overflow:ellipsis;transform:translate(var(--ck-spacing-medium),-6px) scale(.75);transform-origin:0 0;transition:transform var(--ck-labeled-field-view-transition),padding var(--ck-labeled-field-view-transition),background var(--ck-labeled-field-view-transition)}.ck.ck-labeled-field-view.ck-error .ck-input:not([readonly])+.ck.ck-label,.ck.ck-labeled-field-view.ck-error>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view .ck-labeled-field-view__status{font-size:var(--ck-font-size-small);margin-top:var(--ck-spacing-small);white-space:normal}.ck.ck-labeled-field-view .ck-labeled-field-view__status.ck-labeled-field-view__status_error{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view.ck-disabled>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-input-disabled-text)}[dir=ltr] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=ltr] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(var(--ck-labeled-field-label-default-position-x),var(--ck-labeled-field-label-default-position-y)) scale(1)}[dir=rtl] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=rtl] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(calc(var(--ck-labeled-field-label-default-position-x)*-1),var(--ck-labeled-field-label-default-position-y)) scale(1)}.ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:transparent;max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width));padding:0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck.ck-button{background:transparent}.ck.ck-labeled-field-view.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck-button>.ck-button__label{opacity:0}.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown+.ck-label{max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard))}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/labeledfield/labeledfieldview.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/labeledfield/labeledfieldview.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAMC,mEACC,YAAa,CACb,iBACD,CAEA,uCACC,aAAc,CACd,iBACD,CCND,MACC,kEAAsE,CACtE,gFAAiF,CACjF,oEAAqE,CACrE,8EAAiF,CACjF,yEACD,CAEA,0BCLC,eD8GD,CAzGA,2FCDE,qCD0GF,CAtGC,mEACC,UAmCD,CAjCC,gFACC,KA+BD,CAhCA,0FAIE,MA4BF,CAhCA,0FAQE,OAwBF,CAhCA,gFAiBC,yDAA0D,CAG1D,eAAmB,CADnB,kBAAoB,CAOpB,cAAe,CAFf,eAAgB,CANhB,2CAA8C,CAP9C,mBAAoB,CAYpB,sBAAuB,CARvB,6DAA+D,CAH/D,oBAAqB,CAgBrB,+JAID,CAQA,mKACC,gCACD,CAGD,yDACC,mCAAoC,CACpC,kCAAmC,CAInC,kBAKD,CAHC,6FACC,gCACD,CAID,4OAEC,yCACD,CAIA,oUAGE,+HAYF,CAfA,oUAOE,wIAQF,CAfA,gTAaC,sBAAuB,CAFvB,iEAAkE,CAGlE,SACD,CAKA,8FACC,sBACD,CAGA,yIACC,SACD,CAGA,kMACC,8HACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-labeled-field-view-transition: .1s cubic-bezier(0, 0, 0.24, 0.95);\n\t--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-x: var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-y: calc(0.6 * var(--ck-font-size-base));\n\t--ck-color-labeled-field-label-background: var(--ck-color-base-background);\n}\n\n.ck.ck-labeled-field-view {\n\t@mixin ck-rounded-corners;\n\n\t& > .ck.ck-labeled-field-view__input-wrapper {\n\t\twidth: 100%;\n\n\t\t& > .ck.ck-label {\n\t\t\ttop: 0px;\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tleft: 0px;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tright: 0px;\n\t\t\t}\n\n\t\t\tpointer-events: none;\n\t\t\ttransform-origin: 0 0;\n\n\t\t\t/* By default, display the label scaled down above the field. */\n\t\t\ttransform: translate(var(--ck-spacing-medium), -6px) scale(.75);\n\n\t\t\tbackground: var(--ck-color-labeled-field-label-background);\n\t\t\tpadding: 0 calc(.5 * var(--ck-font-size-tiny));\n\t\t\tline-height: initial;\n\t\t\tfont-weight: normal;\n\n\t\t\t/* Prevent overflow when the label is longer than the input */\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\n\t\t\tmax-width: 100%;\n\n\t\t\ttransition:\n\t\t\t\ttransform var(--ck-labeled-field-view-transition),\n\t\t\t\tpadding var(--ck-labeled-field-view-transition),\n\t\t\t\tbackground var(--ck-labeled-field-view-transition);\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\t& > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\n\t\t& .ck-input:not([readonly]) + .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t& .ck-labeled-field-view__status {\n\t\tfont-size: var(--ck-font-size-small);\n\t\tmargin-top: var(--ck-spacing-small);\n\n\t\t/* Let the info wrap to the next line to avoid stretching the layout horizontally.\n\t\tThe status could be very long. */\n\t\twhite-space: normal;\n\n\t\t&.ck-labeled-field-view__status_error {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t/* Disabled fields and fields that have no focus should fade out. */\n\t&.ck-disabled > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\tcolor: var(--ck-color-input-disabled-text);\n\t}\n\n\t/* Fields that are disabled or not focused and without a placeholder should have full-sized labels. */\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-disabled.ck-labeled-field-view_empty > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t@mixin ck-dir ltr {\n\t\t\ttransform: translate(var(--ck-labeled-field-label-default-position-x), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttransform: translate(calc(-1 * var(--ck-labeled-field-label-default-position-x)), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t/* Compensate for the default translate position. */\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width));\n\n\t\tbackground: transparent;\n\t\tpadding: 0;\n\t}\n\n\t/*------ DropdownView integration ----------------------------------------------------------------------------------- */\n\n\t/* Make sure dropdown\' background color in any of dropdown\'s state does not collide with labeled field. */\n\t& > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck.ck-button {\n\t\tbackground: transparent;\n\t}\n\n\t/* When the dropdown is "empty", the labeled field label replaces its label. */\n\t&.ck-labeled-field-view_empty > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck-button > .ck-button__label {\n\t\topacity: 0;\n\t}\n\n\t/* Make sure the label of the empty, unfocused input does not cover the dropdown arrow. */\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown + .ck-label {\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard));\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},1162:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-list{display:flex;flex-direction:column;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-list .ck-list__item,.ck.ck-list .ck-list__separator{display:block}.ck.ck-list .ck-list__item>:focus{position:relative;z-index:var(--ck-z-default)}.ck.ck-list{border-radius:0}.ck-rounded-corners .ck.ck-list,.ck.ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-list{background:var(--ck-color-list-background);list-style-type:none}.ck.ck-list__item{cursor:default;min-width:12em}.ck.ck-list__item .ck-button{border-radius:0;min-height:unset;padding:calc(var(--ck-line-height-base)*.2*var(--ck-font-size-base)) calc(var(--ck-line-height-base)*.4*var(--ck-font-size-base));text-align:left;width:100%}.ck.ck-list__item .ck-button .ck-button__label{line-height:calc(var(--ck-line-height-base)*1.2*var(--ck-font-size-base))}.ck.ck-list__item .ck-button:active{box-shadow:none}.ck.ck-list__item .ck-button.ck-on{background:var(--ck-color-list-button-on-background);color:var(--ck-color-list-button-on-text)}.ck.ck-list__item .ck-button.ck-on:active{box-shadow:none}.ck.ck-list__item .ck-button.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-on-background-focus)}.ck.ck-list__item .ck-button.ck-on:focus:not(.ck-switchbutton):not(.ck-disabled){border-color:var(--ck-color-base-background)}.ck.ck-list__item .ck-button:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background)}.ck.ck-list__item .ck-switchbutton.ck-on{background:var(--ck-color-list-background);color:inherit}.ck.ck-list__item .ck-switchbutton.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background);color:inherit}.ck.ck-list__separator{background:var(--ck-color-base-border);height:1px;width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/list/list.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/list/list.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,YAGC,YAAa,CACb,qBAAsB,CCFtB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBDaD,CAZC,2DAEC,aACD,CAKA,kCACC,iBAAkB,CAClB,2BACD,CEfD,YCEC,eDGD,CALA,+DCME,qCDDF,CALA,YAIC,0CAA2C,CAD3C,oBAED,CAEA,kBACC,cAAe,CACf,cA2DD,CAzDC,6BAIC,eAAgB,CAHhB,gBAAiB,CAQjB,iIAEiE,CARjE,eAAgB,CADhB,UAwCD,CA7BC,+CAEC,yEACD,CAEA,oCACC,eACD,CAEA,mCACC,oDAAqD,CACrD,yCAaD,CAXC,0CACC,eACD,CAEA,2DACC,0DACD,CAEA,iFACC,4CACD,CAGD,qDACC,uDACD,CAMA,yCACC,0CAA2C,CAC3C,aAMD,CAJC,iEACC,uDAAwD,CACxD,aACD,CAKH,uBAGC,sCAAuC,CAFvC,UAAW,CACX,UAED",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n\n.ck.ck-list {\n\t@mixin ck-rounded-corners;\n\n\tlist-style-type: none;\n\tbackground: var(--ck-color-list-background);\n}\n\n.ck.ck-list__item {\n\tcursor: default;\n\tmin-width: 12em;\n\n\t& .ck-button {\n\t\tmin-height: unset;\n\t\twidth: 100%;\n\t\ttext-align: left;\n\t\tborder-radius: 0;\n\n\t\t/* List items should have the same height. Use absolute units to make sure it is so\n\t\t because e.g. different heading styles may have different height\n\t\t https://github.com/ckeditor/ckeditor5-heading/issues/63 */\n\t\tpadding:\n\t\t\tcalc(.2 * var(--ck-line-height-base) * var(--ck-font-size-base))\n\t\t\tcalc(.4 * var(--ck-line-height-base) * var(--ck-font-size-base));\n\n\t\t& .ck-button__label {\n\t\t\t/* https://github.com/ckeditor/ckeditor5-heading/issues/63 */\n\t\t\tline-height: calc(1.2 * var(--ck-line-height-base) * var(--ck-font-size-base));\n\t\t}\n\n\t\t&:active {\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-button-on-background);\n\t\t\tcolor: var(--ck-color-list-button-on-text);\n\n\t\t\t&:active {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-on-background-focus);\n\t\t\t}\n\n\t\t\t&:focus:not(.ck-switchbutton):not(.ck-disabled) {\n\t\t\t\tborder-color: var(--ck-color-base-background);\n\t\t\t}\n\t\t}\n\n\t\t&:hover:not(.ck-disabled) {\n\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t}\n\t}\n\n\t/* It\'s unnecessary to change the background/text of a switch toggle; it has different ways\n\tof conveying its state (like the switcher) */\n\t& .ck-switchbutton {\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-background);\n\t\t\tcolor: inherit;\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t\t\tcolor: inherit;\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-list__separator {\n\theight: 1px;\n\twidth: 100%;\n\tbackground: var(--ck-color-base-border);\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},8245:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,':root{--ck-balloon-panel-arrow-z-index:calc(var(--ck-z-default) - 3)}.ck.ck-balloon-panel{display:none;position:absolute;z-index:var(--ck-z-modal)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{content:"";position:absolute}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_n]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_n]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_s]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_s]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel.ck-balloon-panel_visible{display:block}:root{--ck-balloon-border-width:1px;--ck-balloon-arrow-offset:2px;--ck-balloon-arrow-height:10px;--ck-balloon-arrow-half-width:8px;--ck-balloon-arrow-drop-shadow:0 2px 2px var(--ck-color-shadow-drop)}.ck.ck-balloon-panel{border-radius:0}.ck-rounded-corners .ck.ck-balloon-panel,.ck.ck-balloon-panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-balloon-panel{background:var(--ck-color-panel-background);border:var(--ck-balloon-border-width) solid var(--ck-color-panel-border);box-shadow:var(--ck-drop-shadow),0 0;min-height:15px}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{border-style:solid;height:0;width:0}.ck.ck-balloon-panel[class*=arrow_n]:after,.ck.ck-balloon-panel[class*=arrow_n]:before{border-width:0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_n]:before{border-color:transparent transparent var(--ck-color-panel-border) transparent;margin-top:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_n]:after{border-color:transparent transparent var(--ck-color-panel-background) transparent;margin-top:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_s]:after,.ck.ck-balloon-panel[class*=arrow_s]:before{border-width:var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_s]:before{border-color:var(--ck-color-panel-border) transparent transparent;filter:drop-shadow(var(--ck-balloon-arrow-drop-shadow));margin-bottom:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_s]:after{border-color:var(--ck-color-panel-background) transparent transparent transparent;margin-bottom:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_e]:after,.ck.ck-balloon-panel[class*=arrow_e]:before{border-width:var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height)}.ck.ck-balloon-panel[class*=arrow_e]:before{border-color:transparent transparent transparent var(--ck-color-panel-border);margin-right:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_e]:after{border-color:transparent transparent transparent var(--ck-color-panel-background);margin-right:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_w]:after,.ck.ck-balloon-panel[class*=arrow_w]:before{border-width:var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0}.ck.ck-balloon-panel[class*=arrow_w]:before{border-color:transparent var(--ck-color-panel-border) transparent transparent;margin-left:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_w]:after{border-color:transparent var(--ck-color-panel-background) transparent transparent;margin-left:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:before{left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:before{left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:before{right:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);right:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:before{margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%;top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:before{left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:before{margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);right:calc(var(--ck-balloon-arrow-height)*-1);top:50%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:before{left:calc(var(--ck-balloon-arrow-height)*-1);margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);top:50%}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonpanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonpanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MAEC,8DACD,CAEA,qBACC,YAAa,CACb,iBAAkB,CAElB,yBAyCD,CAtCE,+GAEC,UAAW,CACX,iBACD,CAEA,wDACC,6CACD,CAEA,uDACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAGD,8CACC,aACD,CC9CD,MACC,6BAA8B,CAC9B,6BAA8B,CAC9B,8BAA+B,CAC/B,iCAAkC,CAClC,oEACD,CAEA,qBCLC,eDmMD,CA9LA,iFCDE,qCD+LF,CA9LA,qBAMC,2CAA4C,CAC5C,wEAAyE,CEdzE,oCAA8B,CFW9B,eA0LD,CApLE,+GAIC,kBAAmB,CADnB,QAAS,CADT,OAGD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,kDACD,CAEA,2CACC,iFAAkF,CAClF,gFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,iEAAkE,CAClE,uDAAwD,CACxD,qDACD,CAEA,2CACC,iFAAkF,CAClF,mFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,oDACD,CAEA,2CACC,iFAAkF,CAClF,kFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,mDACD,CAEA,2CACC,iFAAkF,CAClF,iFACD,CAIA,yGAEC,QAAS,CACT,uDAA0D,CAC1D,2CACD,CAIA,2GAEC,+CAAkD,CAClD,2CACD,CAIA,2GAEC,gDAAmD,CACnD,2CACD,CAIA,yGAIC,8CAAiD,CAFjD,QAAS,CACT,uDAED,CAIA,2GAGC,8CAAiD,CADjD,+CAED,CAIA,2GAGC,8CAAiD,CADjD,gDAED,CAIA,6GAIC,8CAAiD,CADjD,uDAA0D,CAD1D,SAGD,CAIA,6GAIC,8CAAiD,CAFjD,QAAS,CACT,sDAED,CAIA,6GAGC,uDAA0D,CAD1D,SAAU,CAEV,2CACD,CAIA,6GAEC,QAAS,CACT,sDAAyD,CACzD,2CACD,CAIA,yGAGC,sDAAyD,CADzD,6CAAgD,CAEhD,OACD,CAIA,yGAEC,4CAA+C,CAC/C,sDAAyD,CACzD,OACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* Make sure the balloon arrow does not float over its children. */\n\t--ck-balloon-panel-arrow-z-index: calc(var(--ck-z-default) - 3);\n}\n\n.ck.ck-balloon-panel {\n\tdisplay: none;\n\tposition: absolute;\n\n\tz-index: var(--ck-z-modal);\n\n\t&.ck-balloon-panel_with-arrow {\n\t\t&::before,\n\t\t&::after {\n\t\t\tcontent: "";\n\t\t\tposition: absolute;\n\t\t}\n\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_n"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_s"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_visible {\n\t\tdisplay: block;\n\t}\n}\n','/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},1757:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-balloon-rotator__navigation{align-items:center;display:flex;justify-content:center}.ck .ck-balloon-rotator__content .ck-toolbar{justify-content:center}.ck .ck-balloon-rotator__navigation{background:var(--ck-color-toolbar-background);border-bottom:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation>*{margin-bottom:var(--ck-spacing-small);margin-right:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation .ck-balloon-rotator__counter{margin-left:var(--ck-spacing-small);margin-right:var(--ck-spacing-standard)}.ck .ck-balloon-rotator__content .ck.ck-annotation-wrapper{box-shadow:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonrotator.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonrotator.css"],names:[],mappings:"AAKA,oCAEC,kBAAmB,CADnB,YAAa,CAEb,sBACD,CAKA,6CACC,sBACD,CCXA,oCACC,6CAA8C,CAC9C,sDAAuD,CACvD,iCAgBD,CAbC,sCAGC,qCAAsC,CAFtC,oCAAqC,CACrC,kCAED,CAGA,iEAIC,mCAAoC,CAHpC,uCAID,CAMA,2DACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},3553:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-fake-panel{position:absolute;z-index:calc(var(--ck-z-modal) - 1)}.ck .ck-fake-panel div{position:absolute}.ck .ck-fake-panel div:first-child{z-index:2}.ck .ck-fake-panel div:nth-child(2){z-index:1}:root{--ck-balloon-fake-panel-offset-horizontal:6px;--ck-balloon-fake-panel-offset-vertical:6px}.ck .ck-fake-panel div{background:var(--ck-color-panel-background);border:1px solid var(--ck-color-panel-border);border-radius:var(--ck-border-radius);box-shadow:var(--ck-drop-shadow),0 0;height:100%;min-height:15px;width:100%}.ck .ck-fake-panel div:first-child{margin-left:var(--ck-balloon-fake-panel-offset-horizontal);margin-top:var(--ck-balloon-fake-panel-offset-vertical)}.ck .ck-fake-panel div:nth-child(2){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*2);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*2)}.ck .ck-fake-panel div:nth-child(3){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*3);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*3)}.ck .ck-balloon-panel_arrow_s+.ck-fake-panel,.ck .ck-balloon-panel_arrow_se+.ck-fake-panel,.ck .ck-balloon-panel_arrow_sw+.ck-fake-panel{--ck-balloon-fake-panel-offset-vertical:-6px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/fakepanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/fakepanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,mBACC,iBAAkB,CAGlB,mCACD,CAEA,uBACC,iBACD,CAEA,mCACC,SACD,CAEA,oCACC,SACD,CCfA,MACC,6CAA8C,CAC9C,2CACD,CAGA,uBAKC,2CAA4C,CAC5C,6CAA8C,CAC9C,qCAAsC,CCXtC,oCAA8B,CDc9B,WAAY,CAPZ,eAAgB,CAMhB,UAED,CAEA,mCACC,0DAA2D,CAC3D,uDACD,CAEA,oCACC,kEAAqE,CACrE,+DACD,CACA,oCACC,kEAAqE,CACrE,+DACD,CAGA,yIAGC,4CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-fake-panel {\n\tposition: absolute;\n\n\t/* Fake panels should be placed under main balloon content. */\n\tz-index: calc(var(--ck-z-modal) - 1);\n}\n\n.ck .ck-fake-panel div {\n\tposition: absolute;\n}\n\n.ck .ck-fake-panel div:nth-child( 1 ) {\n\tz-index: 2;\n}\n\n.ck .ck-fake-panel div:nth-child( 2 ) {\n\tz-index: 1;\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},3609:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-sticky-panel .ck-sticky-panel__content_sticky{position:fixed;top:0;z-index:var(--ck-z-modal)}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky_bottom-limit{position:absolute;top:auto}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky{border-top-left-radius:0;border-top-right-radius:0;border-width:0 1px 1px;box-shadow:var(--ck-drop-shadow),0 0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/stickypanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/stickypanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAMC,qDAEC,cAAe,CACf,KAAM,CAFN,yBAGD,CAEA,kEAEC,iBAAkB,CADlB,QAED,CCPA,qDAIC,wBAAyB,CACzB,yBAA0B,CAF1B,sBAAuB,CCFxB,oCDKA",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-sticky-panel {\n\t& .ck-sticky-panel__content_sticky {\n\t\tz-index: var(--ck-z-modal); /* #315 */\n\t\tposition: fixed;\n\t\ttop: 0;\n\t}\n\n\t& .ck-sticky-panel__content_sticky_bottom-limit {\n\t\ttop: auto;\n\t\tposition: absolute;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},1590:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-vertical-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck-vertical-form .ck-button:focus:after{display:none}@media screen and (max-width:600px){.ck.ck-responsive-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck.ck-responsive-form .ck-button:focus:after{display:none}}.ck-vertical-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form{padding:var(--ck-spacing-large)}.ck.ck-responsive-form:focus{outline:none}[dir=ltr] .ck.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-responsive-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-responsive-form{padding:0;width:calc(var(--ck-input-width)*.8)}.ck.ck-responsive-form .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-responsive-form .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-responsive-form .ck-labeled-field-view .ck-labeled-field-view__error{white-space:normal}.ck.ck-responsive-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form>.ck-button:last-child,.ck.ck-responsive-form>.ck-button:nth-last-child(2){border-radius:0;margin-top:var(--ck-spacing-large);padding:var(--ck-spacing-standard)}.ck.ck-responsive-form>.ck-button:last-child:not(:focus),.ck.ck-responsive-form>.ck-button:nth-last-child(2):not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-responsive-form>.ck-button:last-child,[dir=ltr] .ck.ck-responsive-form>.ck-button:nth-last-child(2),[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2){margin-left:0}[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child:last-of-type,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2):last-of-type{border-right:1px solid var(--ck-color-base-border)}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/responsive-form/responsiveform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/responsive-form/responsiveform.css"],names:[],mappings:"AAQC,mCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,yCACC,YACD,CCdA,oCDoBE,wCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,8CACC,YACD,CC9BF,CCAD,qDACC,kDACD,CAEA,uBACC,+BAmED,CAjEC,6BAEC,YACD,CASC,uGACC,sCACD,CDvBD,oCCMD,uBAqBE,SAAU,CACV,oCA8CF,CA5CE,8CACC,wDAWD,CATC,6DACC,WAAY,CACZ,UACD,CAGA,4EACC,kBACD,CAKA,0DACC,kDACD,CAGD,iGAIC,eAAgB,CADhB,kCAAmC,CADnC,kCAmBD,CAfC,yHACC,gDACD,CARD,0OAeE,aAMF,CAJE,+IACC,kDACD,CDpEH",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck-vertical-form > .ck-button:nth-last-child(2)::after {\n\tborder-right: 1px solid var(--ck-color-base-border);\n}\n\n.ck.ck-responsive-form {\n\tpadding: var(--ck-spacing-large);\n\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& > :not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& > :not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tpadding: 0;\n\t\twidth: calc(.8 * var(--ck-input-width));\n\n\t\t& .ck-labeled-field-view {\n\t\t\tmargin: var(--ck-spacing-large) var(--ck-spacing-large) 0;\n\n\t\t\t& .ck-input-text {\n\t\t\t\tmin-width: 0;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t/* Let the long error messages wrap in the narrow form. */\n\t\t\t& .ck-labeled-field-view__error {\n\t\t\t\twhite-space: normal;\n\t\t\t}\n\t\t}\n\n\t\t/* Styles for two last buttons in the form (save&cancel, edit&unlink, etc.). */\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\t&::after {\n\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\n\t\t& > .ck-button:nth-last-child(1),\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\tpadding: var(--ck-spacing-standard);\n\t\t\tmargin-top: var(--ck-spacing-large);\n\t\t\tborder-radius: 0;\n\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const l=a},6706:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-block-toolbar-button{position:absolute;z-index:var(--ck-z-default)}:root{--ck-color-block-toolbar-button:var(--ck-color-text);--ck-block-toolbar-button-size:var(--ck-font-size-normal)}.ck.ck-block-toolbar-button{color:var(--ck-color-block-toolbar-button);font-size:var(--ck-block-toolbar-size)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/toolbar/blocktoolbar.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/blocktoolbar.css"],names:[],mappings:"AAKA,4BACC,iBAAkB,CAClB,2BACD,CCHA,MACC,oDAAqD,CACrD,yDACD,CAEA,4BACC,0CAA2C,CAC3C,sCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},5571:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-toolbar{align-items:center;display:flex;flex-flow:row nowrap;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-toolbar>.ck-toolbar__items{align-items:center;display:flex;flex-flow:row wrap;flex-grow:1}.ck.ck-toolbar .ck.ck-toolbar__separator{display:inline-block}.ck.ck-toolbar .ck.ck-toolbar__separator:first-child,.ck.ck-toolbar .ck.ck-toolbar__separator:last-child{display:none}.ck.ck-toolbar .ck-toolbar__line-break{flex-basis:100%}.ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items{flex-direction:column}.ck.ck-toolbar.ck-toolbar_floating>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck-dropdown__button .ck-dropdown__arrow{display:none}.ck.ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-toolbar,.ck.ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-toolbar{background:var(--ck-color-toolbar-background);border:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck.ck-toolbar .ck.ck-toolbar__separator{align-self:stretch;background:var(--ck-color-toolbar-border);margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small);min-width:1px;width:1px}.ck.ck-toolbar .ck-toolbar__line-break{height:0}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break){margin-right:var(--ck-spacing-small)}.ck.ck-toolbar>.ck-toolbar__items:empty+.ck.ck-toolbar__separator{display:none}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break),.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown{margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck.ck-toolbar.ck-toolbar_vertical{padding:0}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items>.ck{border-radius:0;margin:0;width:100%}.ck.ck-toolbar.ck-toolbar_compact{padding:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>*{margin:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>:not(:first-child):not(:last-child){border-radius:0}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck.ck-button.ck-dropdown__button{padding-left:var(--ck-spacing-tiny)}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-dropdown__panel{min-width:auto}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-button>.ck-button__label{max-width:7em;width:auto}.ck-toolbar-container .ck.ck-toolbar{border:0}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck{margin-right:0}.ck.ck-toolbar[dir=rtl]:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-left:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:first-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=rtl]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=rtl]>.ck.ck-toolbar__separator,[dir=rtl] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=rtl] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-right:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:first-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=ltr]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=ltr]>.ck.ck-toolbar__separator,[dir=ltr] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=ltr] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-right:var(--ck-spacing-small)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/toolbar/toolbar.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/toolbar.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,eAKC,kBAAmB,CAFnB,YAAa,CACb,oBAAqB,CCFrB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD6CD,CA3CC,kCAGC,kBAAmB,CAFnB,YAAa,CACb,kBAAmB,CAEnB,WAED,CAEA,yCACC,oBAWD,CAJC,yGAEC,YACD,CAGD,uCACC,eACD,CAEA,sDACC,gBACD,CAEA,sDACC,qBACD,CAEA,sDACC,gBACD,CAGC,yFACC,YACD,CE/CF,eCGC,eDoGD,CAvGA,qECOE,qCDgGF,CAvGA,eAGC,6CAA8C,CAE9C,+CAAgD,CADhD,iCAmGD,CAhGC,yCACC,kBAAmB,CAGnB,yCAA0C,CAO1C,qCAAsC,CADtC,kCAAmC,CAPnC,aAAc,CADd,SAUD,CAEA,uCACC,QACD,CAGC,gEAEC,oCACD,CAIA,kEACC,YACD,CAGD,gHAIC,qCAAsC,CADtC,kCAED,CAEA,mCAEC,SAaD,CAVC,0DAQC,eAAgB,CAHhB,QAAS,CAHT,UAOD,CAGD,kCAEC,SAWD,CATC,uDAEC,QAMD,CAHC,yFACC,eACD,CASD,kFACC,mCACD,CAMA,wEACC,cACD,CAEA,iFACC,aAAc,CACd,UACD,CAjGF,qCAqGE,QAEF,CAYC,+FACC,cACD,CAEA,iJAEC,mCACD,CAEA,qHACC,aACD,CAIC,6JAEC,2BAA4B,CAD5B,wBAED,CAGA,2JAEC,4BAA6B,CAD7B,yBAED,CASD,8RACC,mCACD,CAWA,qHACC,cACD,CAIC,6JAEC,4BAA6B,CAD7B,yBAED,CAGA,2JAEC,2BAA4B,CAD5B,wBAED,CASD,8RACC,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-toolbar {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-toolbar-background);\n\tpadding: 0 var(--ck-spacing-small);\n\tborder: 1px solid var(--ck-color-toolbar-border);\n\n\t& .ck.ck-toolbar__separator {\n\t\talign-self: stretch;\n\t\twidth: 1px;\n\t\tmin-width: 1px;\n\t\tbackground: var(--ck-color-toolbar-border);\n\n\t\t/*\n\t\t * These margins make the separators look better in balloon toolbars (when aligned with the "tip").\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/7493.\n\t\t */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t& .ck-toolbar__line-break {\n\t\theight: 0;\n\t}\n\n\t& > .ck-toolbar__items {\n\t\t& > *:not(.ck-toolbar__line-break) {\n\t\t\t/* (#11) Separate toolbar items. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\n\t\t/* Don\'t display a separator after an empty items container, for instance,\n\t\twhen all items were grouped */\n\t\t&:empty + .ck.ck-toolbar__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& > .ck-toolbar__items > *:not(.ck-toolbar__line-break),\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/* Make sure items wrapped to the next line have v-spacing */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t&.ck-toolbar_vertical {\n\t\t/* Items in a vertical toolbar span the entire width. */\n\t\tpadding: 0;\n\n\t\t/* Specificity matters here. See https://github.com/ckeditor/ckeditor5-theme-lark/issues/168. */\n\t\t& > .ck-toolbar__items > .ck {\n\t\t\t/* Items in a vertical toolbar should span the horizontal space. */\n\t\t\twidth: 100%;\n\n\t\t\t/* Items in a vertical toolbar should have no margin. */\n\t\t\tmargin: 0;\n\n\t\t\t/* Items in a vertical toolbar span the entire width so rounded corners are pointless. */\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\n\t&.ck-toolbar_compact {\n\t\t/* No spacing around items. */\n\t\tpadding: 0;\n\n\t\t& > .ck-toolbar__items > * {\n\t\t\t/* Compact toolbar items have no spacing between them. */\n\t\t\tmargin: 0;\n\n\t\t\t/* "Middle" children should have no rounded corners. */\n\t\t\t&:not(:first-child):not(:last-child) {\n\t\t\t\tborder-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/*\n\t\t * Dropdown button has asymmetric padding to fit the arrow.\n\t\t * This button has no arrow so let\'s revert that padding back to normal.\n\t\t */\n\t\t& > .ck.ck-button.ck-dropdown__button {\n\t\t\tpadding-left: var(--ck-spacing-tiny);\n\t\t}\n\t}\n\n\t/* A drop-down containing the nested toolbar with configured items. */\n\t& .ck-toolbar__nested-toolbar-dropdown {\n\t\t/* Prevent empty space in the panel when the dropdown label is visible and long but the toolbar has few items. */\n\t\t& > .ck-dropdown__panel {\n\t\t\tmin-width: auto;\n\t\t}\n\n\t\t& > .ck-button > .ck-button__label {\n\t\t\tmax-width: 7em;\n\t\t\twidth: auto;\n\t\t}\n\t}\n\n\t@nest .ck-toolbar-container & {\n\t\tborder: 0;\n\t}\n}\n\n/* stylelint-disable */\n\n/*\n * Styles for RTL toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="rtl"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="rtl"] {\n\t& > .ck-toolbar__items > .ck {\n\t\tmargin-right: 0;\n\t}\n\n\t&:not(.ck-toolbar_compact) > .ck-toolbar__items > .ck {\n\t\t/* (#11) Separate toolbar items. */\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-left: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n}\n\n/*\n * Styles for LTR toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="ltr"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="ltr"] {\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-right: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n}\n\n/* stylelint-enable */\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 l=a},9948:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-balloon-panel.ck-tooltip{--ck-balloon-border-width:0px;--ck-balloon-arrow-offset:0px;--ck-balloon-arrow-half-width:4px;--ck-balloon-arrow-height:4px;--ck-color-panel-background:var(--ck-color-tooltip-background);padding:0 var(--ck-spacing-medium);pointer-events:none;z-index:calc(var(--ck-z-modal) + 100)}.ck.ck-balloon-panel.ck-tooltip .ck-tooltip__text{color:var(--ck-color-tooltip-text);font-size:.9em;line-height:1.5}.ck.ck-balloon-panel.ck-tooltip{box-shadow:none}.ck.ck-balloon-panel.ck-tooltip:before{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/tooltip.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/tooltip/tooltip.css"],names:[],mappings:"AAKA,gCCGC,6BAA8B,CAC9B,6BAA8B,CAC9B,iCAAkC,CAClC,6BAA8B,CAC9B,8DAA+D,CAE/D,kCAAmC,CDPnC,mBAAoB,CAEpB,qCACD,CCMC,kDAGC,kCAAmC,CAFnC,cAAe,CACf,eAED,CAbD,gCAgBC,eAMD,CAHC,uCACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t/* Keep tooltips transparent for any interactions. */\n\tpointer-events: none;\n\n\tz-index: calc( var(--ck-z-modal) + 100 );\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t--ck-balloon-border-width: 0px;\n\t--ck-balloon-arrow-offset: 0px;\n\t--ck-balloon-arrow-half-width: 4px;\n\t--ck-balloon-arrow-height: 4px;\n\t--ck-color-panel-background: var(--ck-color-tooltip-background);\n\n\tpadding: 0 var(--ck-spacing-medium);\n\n\t& .ck-tooltip__text {\n\t\tfont-size: .9em;\n\t\tline-height: 1.5;\n\t\tcolor: var(--ck-color-tooltip-text);\n\t}\n\n\t/* Reset balloon panel styles */\n\tbox-shadow: none;\n\n\t/* Hide the default shadow of the .ck-balloon-panel tip */\n\t&::before {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const l=a},6150:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-hidden{display:none!important}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset,.ck.ck-reset_all{box-sizing:border-box;height:auto;position:static;width:auto}:root{--ck-z-default:1;--ck-z-modal:calc(var(--ck-z-default) + 999)}.ck-transitions-disabled,.ck-transitions-disabled *{transition:none!important}:root{--ck-color-base-foreground:#fafafa;--ck-color-base-background:#fff;--ck-color-base-border:#ccced1;--ck-color-base-action:#53a336;--ck-color-base-focus:#6cb5f9;--ck-color-base-text:#333;--ck-color-base-active:#2977ff;--ck-color-base-active-focus:#0d65ff;--ck-color-base-error:#db3700;--ck-color-focus-border-coordinates:218,81.8%,56.9%;--ck-color-focus-border:hsl(var(--ck-color-focus-border-coordinates));--ck-color-focus-outer-shadow:#cae1fc;--ck-color-focus-disabled-shadow:rgba(119,186,248,.3);--ck-color-focus-error-shadow:rgba(255,64,31,.3);--ck-color-text:var(--ck-color-base-text);--ck-color-shadow-drop:rgba(0,0,0,.15);--ck-color-shadow-drop-active:rgba(0,0,0,.2);--ck-color-shadow-inner:rgba(0,0,0,.1);--ck-color-button-default-background:transparent;--ck-color-button-default-hover-background:#f0f0f0;--ck-color-button-default-active-background:#f0f0f0;--ck-color-button-default-disabled-background:transparent;--ck-color-button-on-background:#f0f7ff;--ck-color-button-on-hover-background:#dbecff;--ck-color-button-on-active-background:#dbecff;--ck-color-button-on-disabled-background:#f0f2f4;--ck-color-button-on-color:#2977ff;--ck-color-button-action-background:var(--ck-color-base-action);--ck-color-button-action-hover-background:#4d9d30;--ck-color-button-action-active-background:#4d9d30;--ck-color-button-action-disabled-background:#7ec365;--ck-color-button-action-text:var(--ck-color-base-background);--ck-color-button-save:#008a00;--ck-color-button-cancel:#db3700;--ck-color-switch-button-off-background:#939393;--ck-color-switch-button-off-hover-background:#7d7d7d;--ck-color-switch-button-on-background:var(--ck-color-button-action-background);--ck-color-switch-button-on-hover-background:#4d9d30;--ck-color-switch-button-inner-background:var(--ck-color-base-background);--ck-color-switch-button-inner-shadow:rgba(0,0,0,.1);--ck-color-dropdown-panel-background:var(--ck-color-base-background);--ck-color-dropdown-panel-border:var(--ck-color-base-border);--ck-color-input-background:var(--ck-color-base-background);--ck-color-input-border:var(--ck-color-base-border);--ck-color-input-error-border:var(--ck-color-base-error);--ck-color-input-text:var(--ck-color-base-text);--ck-color-input-disabled-background:#f2f2f2;--ck-color-input-disabled-border:var(--ck-color-base-border);--ck-color-input-disabled-text:#757575;--ck-color-list-background:var(--ck-color-base-background);--ck-color-list-button-hover-background:var(--ck-color-button-default-hover-background);--ck-color-list-button-on-background:var(--ck-color-button-on-color);--ck-color-list-button-on-background-focus:var(--ck-color-button-on-color);--ck-color-list-button-on-text:var(--ck-color-base-background);--ck-color-panel-background:var(--ck-color-base-background);--ck-color-panel-border:var(--ck-color-base-border);--ck-color-toolbar-background:var(--ck-color-base-background);--ck-color-toolbar-border:var(--ck-color-base-border);--ck-color-tooltip-background:var(--ck-color-base-text);--ck-color-tooltip-text:var(--ck-color-base-background);--ck-color-engine-placeholder-text:#707070;--ck-color-upload-bar-background:#6cb5f9;--ck-color-link-default:#0000f0;--ck-color-link-selected-background:rgba(31,176,255,.1);--ck-color-link-fake-selection:rgba(31,176,255,.3);--ck-color-highlight-background:#ff0;--ck-disabled-opacity:.5;--ck-focus-outer-shadow-geometry:0 0 0 3px;--ck-focus-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-outer-shadow);--ck-focus-disabled-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-disabled-shadow);--ck-focus-error-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-error-shadow);--ck-focus-ring:1px solid var(--ck-color-focus-border);--ck-font-size-base:13px;--ck-line-height-base:1.84615;--ck-font-face:Helvetica,Arial,Tahoma,Verdana,Sans-Serif;--ck-font-size-tiny:0.7em;--ck-font-size-small:0.75em;--ck-font-size-normal:1em;--ck-font-size-big:1.4em;--ck-font-size-large:1.8em;--ck-ui-component-min-height:2.3em}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset,.ck.ck-reset_all{word-wrap:break-word;background:transparent;border:0;margin:0;padding:0;text-decoration:none;transition:none;vertical-align:middle}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset_all{border-collapse:collapse;color:var(--ck-color-text);cursor:auto;float:none;font:normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);text-align:left;white-space:nowrap}.ck-reset_all .ck-rtl :not(.ck-reset_all-excluded *){text-align:right}.ck-reset_all iframe:not(.ck-reset_all-excluded *){vertical-align:inherit}.ck-reset_all textarea:not(.ck-reset_all-excluded *){white-space:pre-wrap}.ck-reset_all input[type=password]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text]:not(.ck-reset_all-excluded *),.ck-reset_all textarea:not(.ck-reset_all-excluded *){cursor:text}.ck-reset_all input[type=password][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all textarea[disabled]:not(.ck-reset_all-excluded *){cursor:default}.ck-reset_all fieldset:not(.ck-reset_all-excluded *){border:2px groove #dfdee3;padding:10px}.ck-reset_all button:not(.ck-reset_all-excluded *)::-moz-focus-inner{border:0;padding:0}.ck[dir=rtl],.ck[dir=rtl] .ck{text-align:right}:root{--ck-border-radius:2px;--ck-inner-shadow:2px 2px 3px var(--ck-color-shadow-inner) inset;--ck-drop-shadow:0 1px 2px 1px var(--ck-color-shadow-drop);--ck-drop-shadow-active:0 3px 6px 1px var(--ck-color-shadow-drop-active);--ck-spacing-unit:0.6em;--ck-spacing-large:calc(var(--ck-spacing-unit)*1.5);--ck-spacing-standard:var(--ck-spacing-unit);--ck-spacing-medium:calc(var(--ck-spacing-unit)*0.8);--ck-spacing-small:calc(var(--ck-spacing-unit)*0.5);--ck-spacing-tiny:calc(var(--ck-spacing-unit)*0.3);--ck-spacing-extra-tiny:calc(var(--ck-spacing-unit)*0.16)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_hidden.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_reset.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_zindex.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_transition.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_colors.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_disabled.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_fonts.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_reset.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_spacing.css"],names:[],mappings:"AAQA,WAGC,sBACD,CCPA,2EAGC,qBAAsB,CAEtB,WAAY,CACZ,eAAgB,CAFhB,UAGD,CCPA,MACC,gBAAiB,CACjB,4CACD,CCAA,oDAEC,yBACD,CCNA,MACC,kCAAmD,CACnD,+BAAoD,CACpD,8BAAkD,CAClD,8BAAuD,CACvD,6BAAmD,CACnD,yBAA+C,CAC/C,8BAAsD,CACtD,oCAA4D,CAC5D,6BAAkD,CAIlD,mDAA4D,CAC5D,qEAA+E,CAC/E,qCAA4D,CAC5D,qDAA8D,CAC9D,gDAAyD,CACzD,yCAAqD,CACrD,sCAAsD,CACtD,4CAA0D,CAC1D,sCAAsD,CAItD,gDAAuD,CACvD,kDAAiE,CACjE,mDAAkE,CAClE,yDAA8D,CAE9D,uCAA6D,CAC7D,6CAAoE,CACpE,8CAAoE,CACpE,gDAAiE,CACjE,kCAAyD,CAGzD,+DAAsE,CACtE,iDAAsE,CACtE,kDAAsE,CACtE,oDAAoE,CACpE,6DAAsE,CAEtE,8BAAoD,CACpD,gCAAqD,CAErD,+CAA8D,CAC9D,qDAAiE,CACjE,+EAAqF,CACrF,oDAAuE,CACvE,yEAA8E,CAC9E,oDAAgE,CAIhE,oEAA2E,CAC3E,4DAAoE,CAIpE,2DAAoE,CACpE,mDAA6D,CAC7D,wDAAgE,CAChE,+CAA0D,CAC1D,4CAA2D,CAC3D,4DAAoE,CACpE,sCAAsD,CAItD,0DAAmE,CACnE,uFAA6F,CAC7F,oEAA2E,CAC3E,0EAA+E,CAC/E,8DAAsE,CAItE,2DAAoE,CACpE,mDAA6D,CAI7D,6DAAsE,CACtE,qDAA+D,CAI/D,uDAAgE,CAChE,uDAAiE,CAIjE,0CAAyD,CAIzD,wCAA2D,CAI3D,+BAAoD,CACpD,uDAAmE,CACnE,kDAAgE,CAIhE,oCAAwD,CCvGxD,wBAAyB,CCAzB,0CAA2C,CAK3C,gGAAiG,CAKjG,4GAA6G,CAK7G,sGAAuG,CAKvG,sDAAuD,CCvBvD,wBAAyB,CACzB,6BAA8B,CAC9B,wDAA6D,CAE7D,yBAA0B,CAC1B,2BAA4B,CAC5B,yBAA0B,CAC1B,wBAAyB,CACzB,0BAA2B,CCJ3B,kCJuGD,CIjGA,2EAaC,oBAAqB,CANrB,sBAAuB,CADvB,QAAS,CAFT,QAAS,CACT,SAAU,CAGV,oBAAqB,CAErB,eAAgB,CADhB,qBAKD,CAKA,8DAGC,wBAAyB,CAEzB,0BAA2B,CAG3B,WAAY,CACZ,UAAW,CALX,iGAAkG,CAElG,eAAgB,CAChB,kBAGD,CAGC,qDACC,gBACD,CAEA,mDAEC,sBACD,CAEA,qDACC,oBACD,CAEA,mLAGC,WACD,CAEA,iNAGC,cACD,CAEA,qDAEC,yBAAoC,CADpC,YAED,CAEA,qEAGC,QAAQ,CADR,SAED,CAMD,8BAEC,gBACD,CCnFA,MACC,sBAAuB,CCAvB,gEAAiE,CAKjE,0DAA2D,CAK3D,wEAAyE,CCbzE,uBAA8B,CAC9B,mDAA2D,CAC3D,4CAAkD,CAClD,oDAA4D,CAC5D,mDAA2D,CAC3D,kDAA2D,CAC3D,yDFFD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-reset,\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\tbox-sizing: border-box;\n\twidth: auto;\n\theight: auto;\n\tposition: static;\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-z-default: 1;\n\t--ck-z-modal: calc( var(--ck-z-default) + 999 );\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-base-foreground: \t\t\t\t\t\t\t\thsl(0, 0%, 98%);\n\t--ck-color-base-background: \t\t\t\t\t\t\t\thsl(0, 0%, 100%);\n\t--ck-color-base-border: \t\t\t\t\t\t\t\t\thsl(220, 6%, 81%);\n\t--ck-color-base-action: \t\t\t\t\t\t\t\t\thsl(104, 50.2%, 42.5%);\n\t--ck-color-base-focus: \t\t\t\t\t\t\t\t\t\thsl(209, 92%, 70%);\n\t--ck-color-base-text: \t\t\t\t\t\t\t\t\t\thsl(0, 0%, 20%);\n\t--ck-color-base-active: \t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\t--ck-color-base-active-focus:\t\t\t\t\t\t\t\thsl(218.2, 100%, 52.5%);\n\t--ck-color-base-error:\t\t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t/* -- Generic colors ------------------------------------------------------------------------ */\n\n\t--ck-color-focus-border-coordinates: \t\t\t\t\t\t218, 81.8%, 56.9%;\n\t--ck-color-focus-border: \t\t\t\t\t\t\t\t\thsl(var(--ck-color-focus-border-coordinates));\n\t--ck-color-focus-outer-shadow:\t\t\t\t\t\t\t\thsl(212.4, 89.3%, 89%);\n\t--ck-color-focus-disabled-shadow:\t\t\t\t\t\t\thsla(209, 90%, 72%,.3);\n\t--ck-color-focus-error-shadow:\t\t\t\t\t\t\t\thsla(9,100%,56%,.3);\n\t--ck-color-text: \t\t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-shadow-drop: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.15);\n\t--ck-color-shadow-drop-active:\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.2);\n\t--ck-color-shadow-inner: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Buttons ------------------------------------------------------------------------------- */\n\n\t--ck-color-button-default-background: \t\t\t\t\t\ttransparent;\n\t--ck-color-button-default-hover-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-active-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-disabled-background: \t\t\t\ttransparent;\n\n\t--ck-color-button-on-background: \t\t\t\t\t\t\thsl(212, 100%, 97.1%);\n\t--ck-color-button-on-hover-background: \t\t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-active-background: \t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-disabled-background: \t\t\t\t\thsl(211, 15%, 95%);\n\t--ck-color-button-on-color:\t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\n\n\t--ck-color-button-action-background: \t\t\t\t\t\tvar(--ck-color-base-action);\n\t--ck-color-button-action-hover-background: \t\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-active-background: \t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-disabled-background: \t\t\t\thsl(104, 44%, 58%);\n\t--ck-color-button-action-text: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t--ck-color-button-save: \t\t\t\t\t\t\t\t\thsl(120, 100%, 27%);\n\t--ck-color-button-cancel: \t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t--ck-color-switch-button-off-background:\t\t\t\t\thsl(0, 0%, 57.6%);\n\t--ck-color-switch-button-off-hover-background:\t\t\t\thsl(0, 0%, 49%);\n\t--ck-color-switch-button-on-background:\t\t\t\t\t\tvar(--ck-color-button-action-background);\n\t--ck-color-switch-button-on-hover-background:\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-switch-button-inner-background:\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-switch-button-inner-shadow:\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Dropdown ------------------------------------------------------------------------------ */\n\n\t--ck-color-dropdown-panel-background: \t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-dropdown-panel-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Input --------------------------------------------------------------------------------- */\n\n\t--ck-color-input-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-input-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-error-border:\t\t\t\t\t\t\t\tvar(--ck-color-base-error);\n\t--ck-color-input-text: \t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-input-disabled-background: \t\t\t\t\t\thsl(0, 0%, 95%);\n\t--ck-color-input-disabled-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-disabled-text: \t\t\t\t\t\t\thsl(0, 0%, 46%);\n\n\t/* -- List ---------------------------------------------------------------------------------- */\n\n\t--ck-color-list-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-list-button-hover-background: \t\t\t\t\tvar(--ck-color-button-default-hover-background);\n\t--ck-color-list-button-on-background: \t\t\t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-background-focus: \t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-text:\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Panel --------------------------------------------------------------------------------- */\n\n\t--ck-color-panel-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-panel-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Toolbar ------------------------------------------------------------------------------- */\n\n\t--ck-color-toolbar-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-toolbar-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Tooltip ------------------------------------------------------------------------------- */\n\n\t--ck-color-tooltip-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-tooltip-text: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Engine -------------------------------------------------------------------------------- */\n\n\t--ck-color-engine-placeholder-text: \t\t\t\t\t\thsl(0, 0%, 44%);\n\n\t/* -- Upload -------------------------------------------------------------------------------- */\n\n\t--ck-color-upload-bar-background:\t\t \t\t\t\t\thsl(209, 92%, 70%);\n\n\t/* -- Link -------------------------------------------------------------------------------- */\n\n\t--ck-color-link-default:\t\t\t\t\t\t\t\t\thsl(240, 100%, 47%);\n\t--ck-color-link-selected-background:\t\t\t\t\t\thsla(201, 100%, 56%, 0.1);\n\t--ck-color-link-fake-selection:\t\t\t\t\t\t\t\thsla(201, 100%, 56%, 0.3);\n\n\t/* -- Search result highlight ---------------------------------------------------------------- */\n\n\t--ck-color-highlight-background:\t\t\t\t\t\t\thsl(60, 100%, 50%)\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* This is super-important. This is **manually** adjusted so a button without an icon\n\tis never smaller than a button with icon, additionally making sure that text-less buttons\n\tare perfect squares. The value is also shared by other components which should stay "in-line"\n\twith buttons. */\n\t--ck-ui-component-min-height: 2.3em;\n}\n\n/**\n * Resets an element, ignoring its children.\n */\n.ck.ck-reset,\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\t/* Do not include inheritable rules here. */\n\tmargin: 0;\n\tpadding: 0;\n\tborder: 0;\n\tbackground: transparent;\n\ttext-decoration: none;\n\tvertical-align: middle;\n\ttransition: none;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/105 */\n\tword-wrap: break-word;\n}\n\n/**\n * Resets an element AND its children.\n */\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\t/* These are rule inherited by all children elements. */\n\tborder-collapse: collapse;\n\tfont: normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);\n\tcolor: var(--ck-color-text);\n\ttext-align: left;\n\twhite-space: nowrap;\n\tcursor: auto;\n\tfloat: none;\n}\n\n.ck-reset_all {\n\t& .ck-rtl *:not(.ck-reset_all-excluded *) {\n\t\ttext-align: right;\n\t}\n\n\t& iframe:not(.ck-reset_all-excluded *) {\n\t\t/* For IE */\n\t\tvertical-align: inherit;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *) {\n\t\twhite-space: pre-wrap;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *),\n\t& input[type="text"]:not(.ck-reset_all-excluded *),\n\t& input[type="password"]:not(.ck-reset_all-excluded *) {\n\t\tcursor: text;\n\t}\n\n\t& textarea[disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="text"][disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="password"][disabled]:not(.ck-reset_all-excluded *) {\n\t\tcursor: default;\n\t}\n\n\t& fieldset:not(.ck-reset_all-excluded *) {\n\t\tpadding: 10px;\n\t\tborder: 2px groove hsl(255, 7%, 88%);\n\t}\n\n\t& button:not(.ck-reset_all-excluded *)::-moz-focus-inner {\n\t\t/* See http://stackoverflow.com/questions/5517744/remove-extra-button-spacing-padding-in-firefox */\n\t\tpadding: 0;\n\t\tborder: 0\n\t}\n}\n\n/**\n * Default UI rules for RTL languages.\n */\n.ck[dir="rtl"],\n.ck[dir="rtl"] .ck {\n\ttext-align: right;\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},6507:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-resizer:var(--ck-color-focus-border);--ck-color-resizer-tooltip-background:#262626;--ck-color-resizer-tooltip-text:#f2f2f2;--ck-resizer-border-radius:var(--ck-border-radius);--ck-resizer-tooltip-offset:10px;--ck-resizer-tooltip-height:calc(var(--ck-spacing-small)*2 + 10px)}.ck .ck-widget,.ck .ck-widget.ck-widget_with-selection-handle{position:relative}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{position:absolute}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{display:block}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{visibility:visible}.ck .ck-size-view{background:var(--ck-color-resizer-tooltip-background);border:1px solid var(--ck-color-resizer-tooltip-text);border-radius:var(--ck-resizer-border-radius);color:var(--ck-color-resizer-tooltip-text);display:block;font-size:var(--ck-font-size-tiny);height:var(--ck-resizer-tooltip-height);line-height:var(--ck-resizer-tooltip-height);padding:0 var(--ck-spacing-small)}.ck .ck-size-view.ck-orientation-above-center,.ck .ck-size-view.ck-orientation-bottom-left,.ck .ck-size-view.ck-orientation-bottom-right,.ck .ck-size-view.ck-orientation-top-left,.ck .ck-size-view.ck-orientation-top-right{position:absolute}.ck .ck-size-view.ck-orientation-top-left{left:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-top-right{right:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-right{bottom:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-left{bottom:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-above-center{left:50%;top:calc(var(--ck-resizer-tooltip-height)*-1);transform:translate(-50%)}:root{--ck-widget-outline-thickness:3px;--ck-widget-handler-icon-size:16px;--ck-widget-handler-animation-duration:200ms;--ck-widget-handler-animation-curve:ease;--ck-color-widget-blurred-border:#dedede;--ck-color-widget-hover-border:#ffc83d;--ck-color-widget-editable-focus-background:var(--ck-color-base-background);--ck-color-widget-drag-handler-icon-color:var(--ck-color-base-background)}.ck .ck-widget{outline-color:transparent;outline-style:solid;outline-width:var(--ck-widget-outline-thickness);transition:outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_selected,.ck .ck-widget.ck-widget_selected:hover{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border)}.ck .ck-widget:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-editor__nested-editable{border:1px solid transparent}.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{background-color:var(--ck-color-widget-editable-focus-background);border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{background-color:transparent;border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0;box-sizing:border-box;left:calc(0px - var(--ck-widget-outline-thickness));opacity:0;padding:4px;top:0;transform:translateY(-100%);transition:background-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),visibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{color:var(--ck-color-widget-drag-handler-icon-color);height:var(--ck-widget-handler-icon-size);width:var(--ck-widget-handler-icon-size)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:0;transition:opacity .3s var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{background-color:var(--ck-color-widget-hover-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{background-color:var(--ck-color-focus-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:1}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{left:auto;right:calc(0px - var(--ck-widget-outline-thickness))}.ck.ck-editor__editable.ck-read-only .ck-widget{transition:none}.ck.ck-editor__editable.ck-read-only .ck-widget:not(.ck-widget_selected){--ck-widget-outline-thickness:0px}.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover{outline-color:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle:hover,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable blockquote>.ck-widget.ck-widget_with-selection-handle:first-child,.ck.ck-editor__editable>.ck-widget.ck-widget_with-selection-handle:first-child{margin-top:calc(1em + var(--ck-widget-handler-icon-size))}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widget.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widget.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MACC,+CAAgD,CAChD,6CAAsD,CACtD,uCAAgD,CAEhD,kDAAmD,CACnD,gCAAiC,CACjC,kEACD,CAOA,8DAEC,iBAqBD,CAnBC,4EACC,iBAOD,CALC,qFAGC,aACD,CASD,iLACC,kBACD,CAGD,kBACC,qDAAsD,CAEtD,qDAAsD,CACtD,6CAA8C,CAF9C,0CAA2C,CAI3C,aAAc,CADd,kCAAmC,CAGnC,uCAAwC,CACxC,4CAA6C,CAF7C,iCAsCD,CAlCC,8NAKC,iBACD,CAEA,0CAEC,qCAAsC,CADtC,oCAED,CAEA,2CAEC,sCAAuC,CADvC,oCAED,CAEA,8CACC,uCAAwC,CACxC,sCACD,CAEA,6CACC,uCAAwC,CACxC,qCACD,CAGA,8CAEC,QAAS,CADT,6CAAgD,CAEhD,yBACD,CCjFD,MACC,iCAAkC,CAClC,kCAAmC,CACnC,4CAA6C,CAC7C,wCAAyC,CAEzC,wCAAiD,CACjD,sCAAkD,CAClD,2EAA4E,CAC5E,yEACD,CAEA,eAGC,yBAA0B,CAD1B,mBAAoB,CADpB,gDAAiD,CAGjD,6GAUD,CARC,0EAEC,6EACD,CAEA,qBACC,iDACD,CAGD,gCACC,4BAWD,CAPC,yGAKC,iEAAkE,CCnCnE,2BAA2B,CCF3B,qCAA8B,CDC9B,YDqCA,CAIA,4EAKC,4BAA6B,CAa7B,iEAAkE,CAhBlE,qBAAsB,CAoBtB,mDAAoD,CAhBpD,SAAU,CALV,WAAY,CAsBZ,KAAM,CAFN,2BAA4B,CAT5B,6SAgCD,CAnBC,qFAIC,oDAAqD,CADrD,yCAA0C,CAD1C,wCAWD,CANC,kHACC,SAAU,CAGV,+DACD,CAID,wHACC,SACD,CAID,kFAEC,oDAAqD,CADrD,SAED,CAKC,oMAEC,6CAA8C,CAD9C,SAOD,CAHC,gRACC,SACD,CAOH,qFACC,SAAU,CACV,oDACD,CAGA,gDAEC,eAkBD,CAhBC,yEAOC,iCACD,CAGC,gOAEC,gDACD,CAOD,wIAEC,mDAQD,CALE,ghBAEC,gDACD,CAKH,yKAOC,yDACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_focus.css";\n@import "../mixins/_shadow.css";\n\n:root {\n\t--ck-widget-outline-thickness: 3px;\n\t--ck-widget-handler-icon-size: 16px;\n\t--ck-widget-handler-animation-duration: 200ms;\n\t--ck-widget-handler-animation-curve: ease;\n\n\t--ck-color-widget-blurred-border: hsl(0, 0%, 87%);\n\t--ck-color-widget-hover-border: hsl(43, 100%, 62%);\n\t--ck-color-widget-editable-focus-background: var(--ck-color-base-background);\n\t--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);\n}\n\n.ck .ck-widget {\n\toutline-width: var(--ck-widget-outline-thickness);\n\toutline-style: solid;\n\toutline-color: transparent;\n\ttransition: outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border);\n\t}\n\n\t&:hover {\n\t\toutline-color: var(--ck-color-widget-hover-border);\n\t}\n}\n\n.ck .ck-editor__nested-editable {\n\tborder: 1px solid transparent;\n\n\t/* The :focus style is applied before .ck-editor__nested-editable_focused class is rendered in the view.\n\tThese styles show a different border for a blink of an eye, so `:focus` need to have same styles applied. */\n\t&.ck-editor__nested-editable_focused,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\n\t\tbackground-color: var(--ck-color-widget-editable-focus-background);\n\t}\n}\n\n.ck .ck-widget.ck-widget_with-selection-handle {\n\t& .ck-widget__selection-handle {\n\t\tpadding: 4px;\n\t\tbox-sizing: border-box;\n\n\t\t/* Background and opacity will be animated as the handler shows up or the widget gets selected. */\n\t\tbackground-color: transparent;\n\t\topacity: 0;\n\n\t\t/* Transition:\n\t\t * background-color for the .ck-widget_selected state change,\n\t\t * visibility for hiding the handler,\n\t\t * opacity for the proper look of the icon when the handler disappears. */\n\t\ttransition:\n\t\t\tbackground-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\tvisibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\topacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t/* Make only top corners round. */\n\t\tborder-radius: var(--ck-border-radius) var(--ck-border-radius) 0 0;\n\n\t\t/* Place the drag handler outside the widget wrapper. */\n\t\ttransform: translateY(-100%);\n\t\tleft: calc(0px - var(--ck-widget-outline-thickness));\n\t\ttop: 0;\n\n\t\t& .ck-icon {\n\t\t\t/* Make sure the dimensions of the icon are independent of the fon-size of the content. */\n\t\t\twidth: var(--ck-widget-handler-icon-size);\n\t\t\theight: var(--ck-widget-handler-icon-size);\n\t\t\tcolor: var(--ck-color-widget-drag-handler-icon-color);\n\n\t\t\t/* The "selected" part of the icon is invisible by default */\n\t\t\t& .ck-icon__selected-indicator {\n\t\t\t\topacity: 0;\n\n\t\t\t\t/* Note: The animation is longer on purpose. Simply feels better. */\n\t\t\t\ttransition: opacity 300ms var(--ck-widget-handler-animation-curve);\n\t\t\t}\n\t\t}\n\n\t\t/* Advertise using the look of the icon that once clicked the handler, the widget will be selected. */\n\t\t&:hover .ck-icon .ck-icon__selected-indicator {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t/* Show the selection handler on mouse hover over the widget, but not for nested widgets. */\n\t&:hover > .ck-widget__selection-handle {\n\t\topacity: 1;\n\t\tbackground-color: var(--ck-color-widget-hover-border);\n\t}\n\n\t/* Show the selection handler when the widget is selected, but not for nested widgets. */\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\t& > .ck-widget__selection-handle {\n\t\t\topacity: 1;\n\t\t\tbackground-color: var(--ck-color-focus-border);\n\n\t\t\t/* When the widget is selected, notify the user using the proper look of the icon. */\n\t\t\t& .ck-icon .ck-icon__selected-indicator {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* In a RTL environment, align the selection handler to the right side of the widget */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle {\n\tleft: auto;\n\tright: calc(0px - var(--ck-widget-outline-thickness));\n}\n\n/* https://github.com/ckeditor/ckeditor5/issues/6415 */\n.ck.ck-editor__editable.ck-read-only .ck-widget {\n\t/* Prevent the :hover outline from showing up because of the used outline-color transition. */\n\ttransition: none;\n\n\t&:not(.ck-widget_selected) {\n\t\t/* Disable visual effects of hover/active widget when CKEditor is in readOnly mode.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/1261\n\t\t *\n\t\t * Leave the unit because this custom property is used in calc() by other features.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/6775\n\t\t */\n\t\t--ck-widget-outline-thickness: 0px;\n\t}\n\n\t&.ck-widget_with-selection-handle {\n\t\t& .ck-widget__selection-handle,\n\t\t& .ck-widget__selection-handle:hover {\n\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t}\n\t}\n}\n\n/* Style the widget when it\'s selected but the editable it belongs to lost focus. */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck.ck-editor__editable.ck-blurred .ck-widget {\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline-color: var(--ck-color-widget-blurred-border);\n\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t& > .ck-widget__selection-handle,\n\t\t\t& > .ck-widget__selection-handle:hover {\n\t\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable > .ck-widget.ck-widget_with-selection-handle:first-child,\n.ck.ck-editor__editable blockquote > .ck-widget.ck-widget_with-selection-handle:first-child {\n\t/* Do not crop selection handler if a widget is a first-child in the blockquote or in the root editable.\n\tIn fact, anything with overflow: hidden.\n\thttps://github.com/ckeditor/ckeditor5-block-quote/issues/28\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/44\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/66 */\n\tmargin-top: calc(1em + var(--ck-widget-handler-icon-size));\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},2263:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-widget_with-resizer{position:relative}.ck .ck-widget__resizer{display:none;left:0;pointer-events:none;position:absolute;top:0}.ck-focused .ck-widget_with-resizer.ck-widget_selected>.ck-widget__resizer{display:block}.ck .ck-widget__resizer__handle{pointer-events:all;position:absolute}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{cursor:nwse-resize}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{cursor:nesw-resize}:root{--ck-resizer-size:10px;--ck-resizer-offset:calc(var(--ck-resizer-size)/-2 - 2px);--ck-resizer-border-width:1px}.ck .ck-widget__resizer{outline:1px solid var(--ck-color-resizer)}.ck .ck-widget__resizer__handle{background:var(--ck-color-focus-border);border:var(--ck-resizer-border-width) solid #fff;border-radius:var(--ck-resizer-border-radius);height:var(--ck-resizer-size);width:var(--ck-resizer-size)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{left:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{right:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{bottom:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{bottom:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widgetresize.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widgetresize.css"],names:[],mappings:"AAKA,4BAEC,iBACD,CAEA,wBACC,YAAa,CAMb,MAAO,CAFP,mBAAoB,CAHpB,iBAAkB,CAMlB,KACD,CAGC,2EACC,aACD,CAGD,gCAIC,kBAAmB,CAHnB,iBAcD,CATC,4IAEC,kBACD,CAEA,4IAEC,kBACD,CCpCD,MACC,sBAAuB,CAGvB,yDAAiE,CACjE,6BACD,CAEA,wBACC,yCACD,CAEA,gCAGC,uCAAwC,CACxC,gDAA6D,CAC7D,6CAA8C,CAH9C,6BAA8B,CAD9B,4BAyBD,CAnBC,oEAEC,6BAA8B,CAD9B,4BAED,CAEA,qEAEC,8BAA+B,CAD/B,4BAED,CAEA,wEACC,+BAAgC,CAChC,8BACD,CAEA,uEACC,+BAAgC,CAChC,6BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 l=a},5137:(t,e,n)=>{n.d(e,{Z:()=>l});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck .ck-widget .ck-widget__type-around__button{display:block;overflow:hidden;position:absolute;z-index:var(--ck-z-default)}.ck .ck-widget .ck-widget__type-around__button svg{left:50%;position:absolute;top:50%;z-index:calc(var(--ck-z-default) + 2)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_before{left:min(10%,30px);top:calc(var(--ck-widget-outline-thickness)*-.5);transform:translateY(-50%)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_after{bottom:calc(var(--ck-widget-outline-thickness)*-.5);right:min(10%,30px);transform:translateY(50%)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{content:"";display:block;left:1px;position:absolute;top:1px;z-index:calc(var(--ck-z-default) + 1)}.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:none;left:0;position:absolute;right:0}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__fake-caret{left:calc(var(--ck-widget-outline-thickness)*-1);right:calc(var(--ck-widget-outline-thickness)*-1)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:block;top:calc(var(--ck-widget-outline-thickness)*-1 - 1px)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:calc(var(--ck-widget-outline-thickness)*-1 - 1px);display:block}.ck.ck-editor__editable.ck-read-only .ck-widget__type-around,.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around,.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around{display:none}:root{--ck-widget-type-around-button-size:20px;--ck-color-widget-type-around-button-active:var(--ck-color-focus-border);--ck-color-widget-type-around-button-hover:var(--ck-color-widget-hover-border);--ck-color-widget-type-around-button-blurred-editable:var(--ck-color-widget-blurred-border);--ck-color-widget-type-around-button-radar-start-alpha:0;--ck-color-widget-type-around-button-radar-end-alpha:.3;--ck-color-widget-type-around-button-icon:var(--ck-color-base-background)}.ck .ck-widget .ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button);border-radius:100px;height:var(--ck-widget-type-around-button-size);opacity:0;pointer-events:none;transition:opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);width:var(--ck-widget-type-around-button-size)}.ck .ck-widget .ck-widget__type-around__button svg{height:8px;margin-top:1px;transform:translate(-50%,-50%);transition:transform .5s ease;width:10px}.ck .ck-widget .ck-widget__type-around__button svg *{stroke-dasharray:10;stroke-dashoffset:0;fill:none;stroke:var(--ck-color-widget-type-around-button-icon);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ck .ck-widget .ck-widget__type-around__button svg line{stroke-dasharray:7}.ck .ck-widget .ck-widget__type-around__button:hover{animation:ck-widget-type-around-button-sonar 1s ease infinite}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:ck-widget-type-around-arrow-dash 2s linear}.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:ck-widget-type-around-arrow-tip-dash 2s linear}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget:not(.ck-widget_selected)>.ck-widget__type-around>.ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button-hover)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover{background:var(--ck-color-widget-type-around-button-active)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{background:linear-gradient(135deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.3));border-radius:100px;height:calc(var(--ck-widget-type-around-button-size) - 2px);width:calc(var(--ck-widget-type-around-button-size) - 2px)}.ck .ck-widget.ck-widget_with-selection-handle>.ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:20px}.ck .ck-widget .ck-widget__type-around__fake-caret{animation:ck-widget-type-around-fake-caret-pulse 1s linear infinite normal forwards;background:var(--ck-color-base-text);height:1px;outline:1px solid hsla(0,0%,100%,.5);pointer-events:none}.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_after,.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_before{outline-color:transparent}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected:hover,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{opacity:0}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:0;margin-right:20px}.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover){background:var(--ck-color-widget-type-around-button-blurred-editable)}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover) svg *{stroke:#999}@keyframes ck-widget-type-around-arrow-dash{0%{stroke-dashoffset:10}20%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-arrow-tip-dash{0%,20%{stroke-dashoffset:7}40%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-button-sonar{0%{box-shadow:0 0 0 0 hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}50%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-end-alpha))}to{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}}@keyframes ck-widget-type-around-fake-caret-pulse{0%{opacity:1}49%{opacity:1}50%{opacity:0}99%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widgettypearound.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widgettypearound.css"],names:[],mappings:"AASC,+CACC,aAAc,CAEd,eAAgB,CADhB,iBAAkB,CAElB,2BAwBD,CAtBC,mDAGC,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAEA,qFAGC,kBAAoB,CADpB,gDAAoD,CAGpD,0BACD,CAEA,oFAEC,mDAAuD,CACvD,mBAAqB,CAErB,yBACD,CAUA,mLACC,UAAW,CACX,aAAc,CAGd,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAMD,2EACC,YAAa,CAEb,MAAO,CADP,iBAAkB,CAElB,OACD,CAOA,iFACC,gDAAqD,CACrD,iDACD,CAKA,wHAEC,aAAc,CADd,qDAED,CAKA,uHACC,wDAA6D,CAC7D,aACD,CAoBD,mOACC,YACD,CC3GA,MACC,wCAAyC,CACzC,wEAAyE,CACzE,8EAA+E,CAC/E,2FAA4F,CAC5F,wDAAyD,CACzD,uDAAwD,CACxD,yEACD,CAgBC,+CAGC,oDAAqD,CACrD,mBAAoB,CAFpB,+CAAgD,CAVjD,SAAU,CACV,mBAAoB,CAYnB,uMAAyM,CAJzM,8CAkDD,CA1CC,mDAEC,UAAW,CAGX,cAAe,CAFf,8BAA+B,CAC/B,6BAA8B,CAH9B,UAoBD,CAdC,qDACC,mBAAoB,CACpB,mBAAoB,CAEpB,SAAU,CACV,qDAAsD,CACtD,kBAAmB,CACnB,oBAAqB,CACrB,qBACD,CAEA,wDACC,kBACD,CAGD,qDAIC,6DAcD,CARE,kEACC,oDACD,CAEA,8DACC,wDACD,CAUF,uKAvED,SAAU,CACV,mBAwEC,CAOD,gGACC,0DACD,CAOA,uKAEC,2DAQD,CANC,mLAIC,uEAAkF,CADlF,mBAAoB,CADpB,2DAA4D,CAD5D,0DAID,CAOD,8GACC,gBACD,CAKA,mDAGC,mFAAoF,CAOpF,oCAAqC,CARrC,UAAW,CAOX,oCAAwC,CARxC,mBAUD,CAOC,6JAEC,yBACD,CAUA,yKACC,iDACD,CAMA,uOAlJD,SAAU,CACV,mBAmJC,CAoBA,6yBACC,SACD,CASF,uHACC,aAAc,CACd,iBACD,CAYG,iRAlMF,SAAU,CACV,mBAmME,CAQH,kIACC,qEAKD,CAHC,wIACC,WACD,CAGD,4CACC,GACC,oBACD,CACA,OACC,mBACD,CACD,CAEA,gDACC,OACC,mBACD,CACA,OACC,mBACD,CACD,CAEA,8CACC,GACC,6HACD,CACA,IACC,6HACD,CACA,GACC,+HACD,CACD,CAEA,kDACC,GACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-widget-type-around-button-size: 20px;\n\t--ck-color-widget-type-around-button-active: var(--ck-color-focus-border);\n\t--ck-color-widget-type-around-button-hover: var(--ck-color-widget-hover-border);\n\t--ck-color-widget-type-around-button-blurred-editable: var(--ck-color-widget-blurred-border);\n\t--ck-color-widget-type-around-button-radar-start-alpha: 0;\n\t--ck-color-widget-type-around-button-radar-end-alpha: .3;\n\t--ck-color-widget-type-around-button-icon: var(--ck-color-base-background);\n}\n\n@define-mixin ck-widget-type-around-button-visible {\n\topacity: 1;\n\tpointer-events: auto;\n}\n\n@define-mixin ck-widget-type-around-button-hidden {\n\topacity: 0;\n\tpointer-events: none;\n}\n\n.ck .ck-widget {\n\t/*\n\t * Styles of the type around buttons\n\t */\n\t& .ck-widget__type-around__button {\n\t\twidth: var(--ck-widget-type-around-button-size);\n\t\theight: var(--ck-widget-type-around-button-size);\n\t\tbackground: var(--ck-color-widget-type-around-button);\n\t\tborder-radius: 100px;\n\t\ttransition: opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t@mixin ck-widget-type-around-button-hidden;\n\n\t\t& svg {\n\t\t\twidth: 10px;\n\t\t\theight: 8px;\n\t\t\ttransform: translate(-50%,-50%);\n\t\t\ttransition: transform .5s ease;\n\t\t\tmargin-top: 1px;\n\n\t\t\t& * {\n\t\t\t\tstroke-dasharray: 10;\n\t\t\t\tstroke-dashoffset: 0;\n\n\t\t\t\tfill: none;\n\t\t\t\tstroke: var(--ck-color-widget-type-around-button-icon);\n\t\t\t\tstroke-width: 1.5px;\n\t\t\t\tstroke-linecap: round;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t}\n\n\t\t\t& line {\n\t\t\t\tstroke-dasharray: 7;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t/*\n\t\t\t * Display the "sonar" around the button when hovered.\n\t\t\t */\n\t\t\tanimation: ck-widget-type-around-button-sonar 1s ease infinite;\n\n\t\t\t/*\n\t\t\t * Animate active button\'s icon.\n\t\t\t */\n\t\t\t& svg {\n\t\t\t\t& polyline {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-dash 2s linear;\n\t\t\t\t}\n\n\t\t\t\t& line {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-tip-dash 2s linear;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Show type around buttons when the widget gets selected or being hovered.\n\t */\n\t&.ck-widget_selected,\n\t&:hover {\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-visible;\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the buttons when the widget is NOT selected (but the buttons are visible\n\t * and still can be hovered).\n\t */\n\t&:not(.ck-widget_selected) > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\tbackground: var(--ck-color-widget-type-around-button-hover);\n\t}\n\n\t/*\n\t * Styles for the buttons when:\n\t * - the widget is selected,\n\t * - or the button is being hovered (regardless of the widget state).\n\t */\n\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\n\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\n\t\tbackground: var(--ck-color-widget-type-around-button-active);\n\n\t\t&::after {\n\t\t\twidth: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\theight: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\tborder-radius: 100px;\n\t\t\tbackground: linear-gradient(135deg, hsla(0,0%,100%,0) 0%, hsla(0,0%,100%,.3) 100%);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the "before" button when the widget has a selection handle. Because some space\n\t * is consumed by the handle, the button must be moved slightly to the right to let it breathe.\n\t */\n\t&.ck-widget_with-selection-handle > .ck-widget__type-around > .ck-widget__type-around__button_before {\n\t\tmargin-left: 20px;\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" which is displayed when the user navigates using the keyboard.\n\t */\n\t& .ck-widget__type-around__fake-caret {\n\t\tpointer-events: none;\n\t\theight: 1px;\n\t\tanimation: ck-widget-type-around-fake-caret-pulse linear 1s infinite normal forwards;\n\n\t\t/*\n\t\t * The semi-transparent-outline+background combo improves the contrast\n\t\t * when the background underneath the fake caret is dark.\n\t\t */\n\t\toutline: solid 1px hsla(0, 0%, 100%, .5);\n\t\tbackground: var(--ck-color-base-text);\n\t}\n\n\t/*\n\t * Styles of the widget when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t * Despite the widget being physically selected in the model, its outline should disappear.\n\t */\n\t&.ck-widget_selected {\n\t\t&.ck-widget_type-around_show-fake-caret_before,\n\t\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t\toutline-color: transparent;\n\t\t}\n\t}\n\n\t&.ck-widget_type-around_show-fake-caret_before,\n\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t/*\n\t\t * When the "fake caret" is visible we simulate that the widget is not selected\n\t\t * (despite being physically selected), so the outline color should be for the\n\t\t * unselected widget.\n\t\t */\n\t\t&.ck-widget_selected:hover {\n\t\t\toutline-color: var(--ck-color-widget-hover-border);\n\t\t}\n\n\t\t/*\n\t\t * Styles of the type around buttons when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t\t * In this state, the type around buttons would collide with the fake carets so they should disappear.\n\t\t */\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the selection handle. When the caret is visible, simply\n\t\t * hide the handle because it intersects with the caret (and does not make much sense anyway).\n\t\t */\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t&.ck-widget_selected,\n\t\t\t&.ck-widget_selected:hover {\n\t\t\t\t& > .ck-widget__selection-handle {\n\t\t\t\t\topacity: 0\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the resize UI. When the caret is visible, simply\n\t\t * hide the resize UI because it creates too much noise. It can be visible when the user\n\t\t * hovers the widget, though.\n\t\t */\n\t\t&.ck-widget_selected.ck-widget_with-resizer > .ck-widget__resizer {\n\t\t\topacity: 0\n\t\t}\n\t}\n}\n\n/*\n * Styles for the "before" button when the widget has a selection handle in an RTL environment.\n * The selection handler is aligned to the right side of the widget so there is no need to create\n * additional space for it next to the "before" button.\n */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around > .ck-widget__type-around__button_before {\n\tmargin-left: 0;\n\tmargin-right: 20px;\n}\n\n/*\n * Hide type around buttons when the widget is selected as a child of a selected\n * nested editable (e.g. mulit-cell table selection).\n *\n * See https://github.com/ckeditor/ckeditor5/issues/7263.\n */\n.ck-editor__nested-editable.ck-editor__editable_selected {\n\t& .ck-widget {\n\t\t&.ck-widget_selected,\n\t\t&:hover {\n\t\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/*\n * Styles for the buttons when the widget is selected but the user clicked outside of the editor (blurred the editor).\n */\n.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button:not(:hover) {\n\tbackground: var(--ck-color-widget-type-around-button-blurred-editable);\n\n\t& svg * {\n\t\tstroke: hsl(0,0%,60%);\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-dash {\n\t0% {\n\t\tstroke-dashoffset: 10;\n\t}\n\t20%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-tip-dash {\n\t0%, 20% {\n\t\tstroke-dashoffset: 7;\n\t}\n\t40%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-button-sonar {\n\t0% {\n\t\tbox-shadow: 0 0 0 0 hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n\t50% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-end-alpha));\n\t}\n\t100% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n}\n\n@keyframes ck-widget-type-around-fake-caret-pulse {\n\t0% {\n\t\topacity: 1;\n\t}\n\t49% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t99% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n'],sourceRoot:""}]);const l=a},3645:t=>{t.exports=function(t){var e=[];e.toString=function e(){return this.map((function(e){var n=t(e);if(e[2]){return"@media ".concat(e[2]," {").concat(n,"}")}return n})).join("")};e.i=function(t,n,i){if(typeof t==="string"){t=[[null,t,""]]}var o={};if(i){for(var r=0;r<this.length;r++){var s=this[r][0];if(s!=null){o[s]=true}}}for(var a=0;a<t.length;a++){var l=[].concat(t[a]);if(i&&o[l[0]]){continue}if(n){if(!l[2]){l[2]=n}else{l[2]="".concat(n," and ").concat(l[2])}}e.push(l)}};return e}},4015:t=>{function e(t,e){return s(t)||r(t,e)||i(t,e)||n()}function n(){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 i(t,e){if(!t)return;if(typeof t==="string")return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor)n=t.constructor.name;if(n==="Map"||n==="Set")return Array.from(t);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o(t,e)}function o(t,e){if(e==null||e>t.length)e=t.length;for(var n=0,i=new Array(e);n<e;n++){i[n]=t[n]}return i}function r(t,e){var n=t&&(typeof Symbol!=="undefined"&&t[Symbol.iterator]||t["@@iterator"]);if(n==null)return;var i=[];var o=true;var r=false;var s,a;try{for(n=n.call(t);!(o=(s=n.next()).done);o=true){i.push(s.value);if(e&&i.length===e)break}}catch(t){r=true;a=t}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(r)throw a}}return i}function s(t){if(Array.isArray(t))return t}t.exports=function t(n){var i=e(n,4),o=i[1],r=i[3];if(!r){return o}if(typeof btoa==="function"){var s=btoa(unescape(encodeURIComponent(JSON.stringify(r))));var a="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(s);var l="/*# ".concat(a," */");var c=r.sources.map((function(t){return"/*# sourceURL=".concat(r.sourceRoot||"").concat(t," */")}));return[o].concat(c).concat([l]).join("\n")}return[o].join("\n")}},3379:(t,e,n)=>{var i=function t(){var e;return function t(){if(typeof e==="undefined"){e=Boolean(window&&document&&document.all&&!window.atob)}return e}}();var o=function t(){var e={};return function t(n){if(typeof e[n]==="undefined"){var i=document.querySelector(n);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement){try{i=i.contentDocument.head}catch(t){i=null}}e[n]=i}return e[n]}}();var r=[];function s(t){var e=-1;for(var n=0;n<r.length;n++){if(r[n].identifier===t){e=n;break}}return e}function a(t,e){var n={};var i=[];for(var o=0;o<t.length;o++){var a=t[o];var l=e.base?a[0]+e.base:a[0];var c=n[l]||0;var d="".concat(l," ").concat(c);n[l]=c+1;var u=s(d);var h={css:a[1],media:a[2],sourceMap:a[3]};if(u!==-1){r[u].references++;r[u].updater(h)}else{r.push({identifier:d,updater:f(h,e),references:1})}i.push(d)}return i}function l(t){var e=document.createElement("style");var i=t.attributes||{};if(typeof i.nonce==="undefined"){var r=true?n.nc:0;if(r){i.nonce=r}}Object.keys(i).forEach((function(t){e.setAttribute(t,i[t])}));if(typeof t.insert==="function"){t.insert(e)}else{var s=o(t.insert||"head");if(!s){throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.")}s.appendChild(e)}return e}function c(t){if(t.parentNode===null){return false}t.parentNode.removeChild(t)}var d=function t(){var e=[];return function t(n,i){e[n]=i;return e.filter(Boolean).join("\n")}}();function u(t,e,n,i){var o=n?"":i.media?"@media ".concat(i.media," {").concat(i.css,"}"):i.css;if(t.styleSheet){t.styleSheet.cssText=d(e,o)}else{var r=document.createTextNode(o);var s=t.childNodes;if(s[e]){t.removeChild(s[e])}if(s.length){t.insertBefore(r,s[e])}else{t.appendChild(r)}}}function h(t,e,n){var i=n.css;var o=n.media;var r=n.sourceMap;if(o){t.setAttribute("media",o)}else{t.removeAttribute("media")}if(r&&typeof btoa!=="undefined"){i+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(r))))," */")}if(t.styleSheet){t.styleSheet.cssText=i}else{while(t.firstChild){t.removeChild(t.firstChild)}t.appendChild(document.createTextNode(i))}}var g=null;var m=0;function f(t,e){var n;var i;var o;if(e.singleton){var r=m++;n=g||(g=l(e));i=u.bind(null,n,r,false);o=u.bind(null,n,r,true)}else{n=l(e);i=h.bind(null,n,e);o=function t(){c(n)}}i(t);return function e(n){if(n){if(n.css===t.css&&n.media===t.media&&n.sourceMap===t.sourceMap){return}i(t=n)}else{o()}}}t.exports=function(t,e){e=e||{};if(!e.singleton&&typeof e.singleton!=="boolean"){e.singleton=i()}t=t||[];var n=a(t,e);return function t(i){i=i||[];if(Object.prototype.toString.call(i)!=="[object Array]"){return}for(var o=0;o<n.length;o++){var l=n[o];var c=s(l);r[c].references--}var d=a(i,e);for(var u=0;u<n.length;u++){var h=n[u];var g=s(h);if(r[g].references===0){r[g].updater();r.splice(g,1)}}n=d}}}};var e={};function n(i){var o=e[i];if(o!==undefined){return o.exports}var r=e[i]={id:i,exports:{}};t[i](r,r.exports,n);return r.exports}(()=>{n.n=t=>{var e=t&&t.__esModule?()=>t["default"]:()=>t;n.d(e,{a:e});return e}})();(()=>{n.d=(t,e)=>{for(var i in e){if(n.o(e,i)&&!n.o(t,i)){Object.defineProperty(t,i,{enumerable:true,get:e[i]})}}}})();(()=>{n.g=function(){if(typeof globalThis==="object")return globalThis;try{return this||new Function("return this")()}catch(t){if(typeof window==="object")return window}}()})();(()=>{n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e)})();(()=>{n.nc=undefined})();var i={};(()=>{n.d(i,{default:()=>RG});function t({emitter:t,activator:e,callback:n,contextElements:i}){t.listenTo(document,"mousedown",((t,o)=>{if(!e()){return}const r=typeof o.composedPath=="function"?o.composedPath():[];const s=typeof i=="function"?i():i;for(const t of s){if(t.contains(o.target)||r.includes(t)){return}}n()}))}function e(t){const e=t;e.set("_isCssTransitionsDisabled",false);e.disableCssTransitions=()=>{e._isCssTransitionsDisabled=true};e.enableCssTransitions=()=>{e._isCssTransitionsDisabled=false};e.extendTemplate({attributes:{class:[e.bindTemplate.if("_isCssTransitionsDisabled","ck-transitions-disabled")]}})}function o({view:t}){t.listenTo(t.element,"submit",((e,n)=>{n.preventDefault();t.fire("submit")}),{useCapture:true})}function r({keystrokeHandler:t,focusTracker:e,gridItems:n,numberOfColumns:i,uiLanguageDirection:o}){const r=typeof i==="number"?()=>i:i;t.set("arrowright",s(((t,e)=>o==="rtl"?l(t,e.length):a(t,e.length))));t.set("arrowleft",s(((t,e)=>o==="rtl"?a(t,e.length):l(t,e.length))));t.set("arrowup",s(((t,e)=>{let n=t-r();if(n<0){n=t+r()*Math.floor(e.length/r());if(n>e.length-1){n-=r()}}return n})));t.set("arrowdown",s(((t,e)=>{let n=t+r();if(n>e.length-1){n=t%r()}return n})));function s(t){return i=>{const o=n.find((t=>t.element===e.focusedElement));const r=n.getIndex(o);const s=t(r,n);n.get(s).focus();i.stopPropagation();i.preventDefault()}}function a(t,e){if(t===e-1){return 0}else{return t+1}}function l(t,e){if(t===0){return e-1}else{return t-1}}}function s(){try{return navigator.userAgent.toLowerCase()}catch(t){return""}}const a=s();const l={isMac:d(a),isWindows:u(a),isGecko:h(a),isSafari:g(a),isiOS:m(a),isAndroid:f(a),isBlink:p(a),features:{isRegExpUnicodePropertySupported:b()}};const c=l;function d(t){return t.indexOf("macintosh")>-1}function u(t){return t.indexOf("windows")>-1}function h(t){return!!t.match(/gecko\/\d+/)}function g(t){return t.indexOf(" applewebkit/")>-1&&t.indexOf("chrome")===-1}function m(t){return!!t.match(/iphone|ipad/i)||d(t)&&navigator.maxTouchPoints>0}function f(t){return t.indexOf("android")>-1}function p(t){return t.indexOf("chrome/")>-1&&t.indexOf("edge/")<0}function b(){let t=false;try{t="ć".search(new RegExp("[\\p{L}]","u"))===0}catch(t){}return t}function k(t,e,n,i){n=n||function(t,e){return t===e};const o=Array.isArray(t)?t:Array.prototype.slice.call(t);const r=Array.isArray(e)?e:Array.prototype.slice.call(e);const s=w(o,r,n);const a=i?v(s,r.length):_(r,s);return a}function w(t,e,n){const i=A(t,e,n);if(i===-1){return{firstIndex:-1,lastIndexOld:-1,lastIndexNew:-1}}const o=C(t,i);const r=C(e,i);const s=A(o,r,n);const a=t.length-s;const l=e.length-s;return{firstIndex:i,lastIndexOld:a,lastIndexNew:l}}function A(t,e,n){for(let i=0;i<Math.max(t.length,e.length);i++){if(t[i]===undefined||e[i]===undefined||!n(t[i],e[i])){return i}}return-1}function C(t,e){return t.slice(e).reverse()}function _(t,e){const n=[];const{firstIndex:i,lastIndexOld:o,lastIndexNew:r}=e;if(r-i>0){n.push({index:i,type:"insert",values:t.slice(i,r)})}if(o-i>0){n.push({index:i+(r-i),type:"delete",howMany:o-i})}return n}function v(t,e){const{firstIndex:n,lastIndexOld:i,lastIndexNew:o}=t;if(n===-1){return Array(e).fill("equal")}let r=[];if(n>0){r=r.concat(Array(n).fill("equal"))}if(o-n>0){r=r.concat(Array(o-n).fill("insert"))}if(i-n>0){r=r.concat(Array(i-n).fill("delete"))}if(o<e){r=r.concat(Array(e-o).fill("equal"))}return r}function y(t,e,n){n=n||function(t,e){return t===e};const i=t.length;const o=e.length;if(i>200||o>200||i+o>300){return y.fastDiff(t,e,n,true)}let r,s;if(o<i){const n=t;t=e;e=n;r="delete";s="insert"}else{r="insert";s="delete"}const a=t.length;const l=e.length;const c=l-a;const d={};const u={};function h(i){const o=(u[i-1]!==undefined?u[i-1]:-1)+1;const c=u[i+1]!==undefined?u[i+1]:-1;const h=o>c?-1:1;if(d[i+h]){d[i]=d[i+h].slice(0)}if(!d[i]){d[i]=[]}d[i].push(o>c?r:s);let g=Math.max(o,c);let m=g-i;while(m<a&&g<l&&n(t[m],e[g])){m++;g++;d[i].push("equal")}return g}let g=0;let m;do{for(m=-g;m<c;m++){u[m]=h(m)}for(m=c+g;m>c;m--){u[m]=h(m)}u[c]=h(c);g++}while(u[c]!==l);return d[c].slice(1)}y.fastDiff=k;function x(t,...e){e.forEach((e=>{const n=Object.getOwnPropertyNames(e);const i=Object.getOwnPropertySymbols(e);n.concat(i).forEach((n=>{if(n in t.prototype){return}if(typeof e=="function"&&(n=="length"||n=="name"||n=="prototype")){return}const i=Object.getOwnPropertyDescriptor(e,n);i.enumerable=false;Object.defineProperty(t.prototype,n,i)}))}))}function E(){return function t(){t.called=true}}const D=E;class S{constructor(t,e){this.source=t;this.name=e;this.path=[];this.stop=D();this.off=D()}}const T=new Array(256).fill("").map(((t,e)=>("0"+e.toString(16)).slice(-2)));function I(){const t=Math.random()*4294967296>>>0;const e=Math.random()*4294967296>>>0;const n=Math.random()*4294967296>>>0;const i=Math.random()*4294967296>>>0;return"e"+T[t>>0&255]+T[t>>8&255]+T[t>>16&255]+T[t>>24&255]+T[e>>0&255]+T[e>>8&255]+T[e>>16&255]+T[e>>24&255]+T[n>>0&255]+T[n>>8&255]+T[n>>16&255]+T[n>>24&255]+T[i>>0&255]+T[i>>8&255]+T[i>>16&255]+T[i>>24&255]}const M={get(t="normal"){if(typeof t!="number"){return this[t]||this.normal}else{return t}},highest:1e5,high:1e3,normal:0,low:-1e3,lowest:-1e5};const B=M;function L(t,e){const n=B.get(e.priority);for(let i=0;i<t.length;i++){if(B.get(t[i].priority)<n){t.splice(i,0,e);return}}t.push(e)}const N="https://ckeditor.com/docs/ckeditor5/latest/support/error-codes.html";class z extends Error{constructor(t,e,n){super(V(t,n));this.name="CKEditorError";this.context=e;this.data=n}is(t){return t==="CKEditorError"}static rethrowUnexpectedError(t,e){if(t.is&&t.is("CKEditorError")){throw t}const n=new z(t.message,e);n.stack=t.stack;throw n}}function P(t,e){console.warn(...j(t,e))}function O(t,e){console.error(...j(t,e))}function R(t){return`\nRead more: ${N}#error-${t}`}function V(t,e){const n=new WeakSet;const i=(t,e)=>{if(typeof e==="object"&&e!==null){if(n.has(e)){return`[object ${e.constructor.name}]`}n.add(e)}return e};const o=e?` ${JSON.stringify(e,i)}`:"";const r=R(t);return t+o+r}function j(t,e){const n=R(t);return e?[t,e,n]:[t,n]}const F="36.0.1";const H=null&&F;const U=typeof window==="object"?window:n.g;if(U.CKEDITOR_VERSION){throw new z("ckeditor-duplicated-modules",null)}else{U.CKEDITOR_VERSION=F}const W=Symbol("listeningTo");const q=Symbol("emitterId");const G=Symbol("delegations");const $=K(Object);function K(t){if(!t){return $}class e extends t{on(t,e,n){this.listenTo(this,t,e,n)}once(t,e,n){let i=false;const o=(t,...n)=>{if(!i){i=true;t.off();e.call(this,t,...n)}};this.listenTo(this,t,o,n)}off(t,e){this.stopListening(this,t,e)}listenTo(t,e,n,i={}){let o,r;if(!this[W]){this[W]={}}const s=this[W];if(!Q(t)){Z(t)}const a=Q(t);if(!(o=s[a])){o=s[a]={emitter:t,callbacks:{}}}if(!(r=o.callbacks[e])){r=o.callbacks[e]=[]}r.push(n);ot(this,t,e,n,i)}stopListening(t,e,n){const i=this[W];let o=t&&Q(t);const r=i&&o?i[o]:undefined;const s=r&&e?r.callbacks[e]:undefined;if(!i||t&&!r||e&&!s){return}if(n){rt(this,t,e,n);const i=s.indexOf(n);if(i!==-1){if(s.length===1){delete r.callbacks[e]}else{rt(this,t,e,n)}}}else if(s){while(n=s.pop()){rt(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[W]}}fire(t,...e){try{const n=t instanceof S?t:new S(this,t);const i=n.name;let o=nt(this,i);n.path.push(this);if(o){const t=[n,...e];o=Array.from(o);for(let e=0;e<o.length;e++){o[e].callback.apply(this,t);if(n.off.called){delete n.off.called;this._removeEventListener(i,o[e].callback)}if(n.stop.called){break}}}const r=this[G];if(r){const t=r.get(i);const o=r.get("*");if(t){it(t,n,e)}if(o){it(o,n,e)}}return n.return}catch(t){z.rethrowUnexpectedError(t,this)}}delegate(...t){return{to:(e,n)=>{if(!this[G]){this[G]=new Map}t.forEach((t=>{const i=this[G].get(t);if(!i){this[G].set(t,new Map([[e,n]]))}else{i.set(e,n)}}))}}}stopDelegating(t,e){if(!this[G]){return}if(!t){this[G].clear()}else if(!e){this[G].delete(t)}else{const n=this[G].get(t);if(n){n.delete(e)}}}_addEventListener(t,e,n){tt(this,t);const i=et(this,t);const o=B.get(n.priority);const r={callback:e,priority:o};for(const t of i){L(t,r)}}_removeEventListener(t,e){const n=et(this,t);for(const t of n){for(let n=0;n<t.length;n++){if(t[n].callback==e){t.splice(n,1);n--}}}}}return e}["on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{K[t]=$.prototype[t]}));function Y(t,e){const n=t[W];if(n&&n[e]){return n[e].emitter}return null}function Z(t,e){if(!t[q]){t[q]=e||I()}}function Q(t){return t[q]}function J(t){if(!t._events){Object.defineProperty(t,"_events",{value:{}})}return t._events}function X(){return{callbacks:[],childEvents:[]}}function tt(t,e){const n=J(t);if(n[e]){return}let i=e;let o=null;const r=[];while(i!==""){if(n[i]){break}n[i]=X();r.push(n[i]);if(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)}}function et(t,e){const n=J(t)[e];if(!n){return[]}let i=[n.callbacks];for(let e=0;e<n.childEvents.length;e++){const o=et(t,n.childEvents[e]);i=i.concat(o)}return i}function nt(t,e){let n;if(!t._events||!(n=t._events[e])||!n.callbacks.length){if(e.indexOf(":")>-1){return nt(t,e.substr(0,e.lastIndexOf(":")))}else{return null}}return n.callbacks}function it(t,e,n){for(let[i,o]of t){if(!o){o=e.name}else if(typeof o=="function"){o=o(e.name)}const t=new S(e.source,o);t.path=[...e.path];i.fire(t,...n)}}function ot(t,e,n,i,o){if(e._addEventListener){e._addEventListener(n,i,o)}else{t._addEventListener.call(e,n,i,o)}}function rt(t,e,n,i){if(e._removeEventListener){e._removeEventListener(n,i)}else{t._removeEventListener.call(e,n,i)}}function st(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}const at=st;const lt=Symbol("observableProperties");const ct=Symbol("boundObservables");const dt=Symbol("boundProperties");const ut=Symbol("decoratedMethods");const ht=Symbol("decoratedOriginal");const gt=mt(K());function mt(t){if(!t){return gt}class e extends t{set(t,e){if(at(t)){Object.keys(t).forEach((e=>{this.set(e,t[e])}),this);return}ft(this);const n=this[lt];if(t in this&&!n.has(t)){throw new z("observable-set-cannot-override",this)}Object.defineProperty(this,t,{enumerable:true,configurable:true,get(){return n.get(t)},set(e){const i=n.get(t);let o=this.fire(`set:${t}`,t,e,i);if(o===undefined){o=e}if(i!==o||!n.has(t)){n.set(t,o);this.fire(`change:${t}`,t,o,i)}}});this[t]=e}bind(...t){if(!t.length||!wt(t)){throw new z("observable-bind-wrong-properties",this)}if(new Set(t).size!==t.length){throw new z("observable-bind-duplicate-properties",this)}ft(this);const e=this[dt];t.forEach((t=>{if(e.has(t)){throw new z("observable-bind-rebind",this)}}));const n=new Map;t.forEach((t=>{const i={property:t,to:[]};e.set(t,i);n.set(t,i)}));return{to:pt,toMany:bt,_observable:this,_bindProperties:t,_to:[],_bindings:n}}unbind(...t){if(!this[lt]){return}const e=this[dt];const n=this[ct];if(t.length){if(!wt(t)){throw new z("observable-unbind-wrong-properties",this)}t.forEach((t=>{const i=e.get(t);if(!i){return}i.to.forEach((([t,e])=>{const o=n.get(t);const r=o[e];r.delete(i);if(!r.size){delete o[e]}if(!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){ft(this);const e=this[t];if(!e){throw new z("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][ht]=e;if(!this[ut]){this[ut]=[]}this[ut].push(t)}stopListening(t,e,n){if(!t&&this[ut]){for(const t of this[ut]){this[t]=this[t][ht]}delete this[ut]}super.stopListening(t,e,n)}}return e}["set","bind","unbind","decorate","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{mt[t]=gt.prototype[t]}));function ft(t){if(t[lt]){return}Object.defineProperty(t,lt,{value:new Map});Object.defineProperty(t,ct,{value:new Map});Object.defineProperty(t,dt,{value:new Map})}function pt(...t){const e=At(...t);const n=Array.from(this._bindings.keys());const i=n.length;if(!e.callback&&e.to.length>1){throw new z("observable-bind-to-no-callback",this)}if(i>1&&e.callback){throw new z("observable-bind-to-extra-callback",this)}e.to.forEach((t=>{if(t.properties.length&&t.properties.length!==i){throw new z("observable-bind-to-properties-length",this)}if(!t.properties.length){t.properties=this._bindProperties}}));this._to=e.to;if(e.callback){this._bindings.get(n[0]).callback=e.callback}yt(this._observable,this._to);_t(this);this._bindProperties.forEach((t=>{vt(this._observable,t)}))}function bt(t,e,n){if(this._bindings.size>1){throw new z("observable-bind-to-many-not-one-binding",this)}this.to(...kt(t,e),n)}function kt(t,e){const n=t.map((t=>[t,e]));return Array.prototype.concat.apply([],n)}function wt(t){return t.every((t=>typeof t=="string"))}function At(...t){if(!t.length){throw new z("observable-bind-to-parse-error",null)}const e={to:[]};let n;if(typeof t[t.length-1]=="function"){e.callback=t.pop()}t.forEach((t=>{if(typeof t=="string"){n.properties.push(t)}else if(typeof t=="object"){n={observable:t,properties:[]};e.to.push(n)}else{throw new z("observable-bind-to-parse-error",null)}}));return e}function Ct(t,e,n,i){const o=t[ct];const r=o.get(n);const s=r||{};if(!s[i]){s[i]=new Set}s[i].add(e);if(!r){o.set(n,s)}}function _t(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]);Ct(t._observable,n,o.observable,e)}))}))}function vt(t,e){const n=t[dt];const i=n.get(e);let o;if(i.callback){o=i.callback.apply(t,i.to.map((t=>t[0][t[1]])))}else{o=i.to[0];o=o[0][o[1]]}if(Object.prototype.hasOwnProperty.call(t,e)){t[e]=o}else{t.set(e,o)}}function yt(t,e){e.forEach((e=>{const n=t[ct];let i;if(!n.get(e.observable)){t.listenTo(e.observable,"change",((o,r)=>{i=n.get(e.observable)[r];if(i){i.forEach((e=>{vt(t,e.property)}))}}))}}))}class xt{constructor(){this._replacedElements=[]}replace(t,e){this._replacedElements.push({element:t,newElement:e});t.style.display="none";if(e){t.parentNode.insertBefore(e,t.nextSibling)}}restore(){this._replacedElements.forEach((({element:t,newElement:e})=>{t.style.display="";if(e){e.remove()}}));this._replacedElements=[]}}function Et(t){let e=0;for(const n of t){e++}return e}function Dt(t,e){const n=Math.min(t.length,e.length);for(let i=0;i<n;i++){if(t[i]!=e[i]){return i}}if(t.length==e.length){return"same"}else if(t.length<e.length){return"prefix"}else{return"extension"}}function St(t){return!!(t&&t[Symbol.iterator])}var Tt=typeof global=="object"&&global&&global.Object===Object&&global;const It=Tt;var Mt=typeof self=="object"&&self&&self.Object===Object&&self;var Bt=It||Mt||Function("return this")();const Lt=Bt;var Nt=Lt.Symbol;const zt=Nt;var Pt=Object.prototype;var Ot=Pt.hasOwnProperty;var Rt=Pt.toString;var Vt=zt?zt.toStringTag:undefined;function jt(t){var e=Ot.call(t,Vt),n=t[Vt];try{t[Vt]=undefined;var i=true}catch(t){}var o=Rt.call(t);if(i){if(e){t[Vt]=n}else{delete t[Vt]}}return o}const Ft=jt;var Ht=Object.prototype;var Ut=Ht.toString;function Wt(t){return Ut.call(t)}const qt=Wt;var Gt="[object Null]",$t="[object Undefined]";var Kt=zt?zt.toStringTag:undefined;function Yt(t){if(t==null){return t===undefined?$t:Gt}return Kt&&Kt in Object(t)?Ft(t):qt(t)}const Zt=Yt;var Qt=Array.isArray;const Jt=Qt;function Xt(t){return t!=null&&typeof t=="object"}const te=Xt;var ee="[object String]";function ne(t){return typeof t=="string"||!Jt(t)&&te(t)&&Zt(t)==ee}const ie=ne;function oe(t,e,n={},i=[]){const o=n&&n.xmlns;const r=o?t.createElementNS(o,e):t.createElement(e);for(const t in n){r.setAttribute(t,n[t])}if(ie(i)||!St(i)){i=[i]}for(let e of i){if(ie(e)){e=t.createTextNode(e)}r.appendChild(e)}return r}function re(t,e){return function(n){return t(e(n))}}const se=re;var ae=se(Object.getPrototypeOf,Object);const le=ae;var ce="[object Object]";var de=Function.prototype,ue=Object.prototype;var he=de.toString;var ge=ue.hasOwnProperty;var me=he.call(Object);function fe(t){if(!te(t)||Zt(t)!=ce){return false}var e=le(t);if(e===null){return true}var n=ge.call(e,"constructor")&&e.constructor;return typeof n=="function"&&n instanceof n&&he.call(n)==me}const pe=fe;function be(){this.__data__=[];this.size=0}const ke=be;function we(t,e){return t===e||t!==t&&e!==e}const Ae=we;function Ce(t,e){var n=t.length;while(n--){if(Ae(t[n][0],e)){return n}}return-1}const _e=Ce;var ve=Array.prototype;var ye=ve.splice;function xe(t){var e=this.__data__,n=_e(e,t);if(n<0){return false}var i=e.length-1;if(n==i){e.pop()}else{ye.call(e,n,1)}--this.size;return true}const Ee=xe;function De(t){var e=this.__data__,n=_e(e,t);return n<0?undefined:e[n][1]}const Se=De;function Te(t){return _e(this.__data__,t)>-1}const Ie=Te;function Me(t,e){var n=this.__data__,i=_e(n,t);if(i<0){++this.size;n.push([t,e])}else{n[i][1]=e}return this}const Be=Me;function Le(t){var e=-1,n=t==null?0:t.length;this.clear();while(++e<n){var i=t[e];this.set(i[0],i[1])}}Le.prototype.clear=ke;Le.prototype["delete"]=Ee;Le.prototype.get=Se;Le.prototype.has=Ie;Le.prototype.set=Be;const Ne=Le;function ze(){this.__data__=new Ne;this.size=0}const Pe=ze;function Oe(t){var e=this.__data__,n=e["delete"](t);this.size=e.size;return n}const Re=Oe;function Ve(t){return this.__data__.get(t)}const je=Ve;function Fe(t){return this.__data__.has(t)}const He=Fe;var Ue="[object AsyncFunction]",We="[object Function]",qe="[object GeneratorFunction]",Ge="[object Proxy]";function $e(t){if(!at(t)){return false}var e=Zt(t);return e==We||e==qe||e==Ue||e==Ge}const Ke=$e;var Ye=Lt["__core-js_shared__"];const Ze=Ye;var Qe=function(){var t=/[^.]+$/.exec(Ze&&Ze.keys&&Ze.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function Je(t){return!!Qe&&Qe in t}const Xe=Je;var tn=Function.prototype;var en=tn.toString;function nn(t){if(t!=null){try{return en.call(t)}catch(t){}try{return t+""}catch(t){}}return""}const on=nn;var rn=/[\\^$.*+?()[\]{}|]/g;var sn=/^\[object .+?Constructor\]$/;var an=Function.prototype,ln=Object.prototype;var cn=an.toString;var dn=ln.hasOwnProperty;var un=RegExp("^"+cn.call(dn).replace(rn,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function hn(t){if(!at(t)||Xe(t)){return false}var e=Ke(t)?un:sn;return e.test(on(t))}const gn=hn;function mn(t,e){return t==null?undefined:t[e]}const fn=mn;function pn(t,e){var n=fn(t,e);return gn(n)?n:undefined}const bn=pn;var kn=bn(Lt,"Map");const wn=kn;var An=bn(Object,"create");const Cn=An;function _n(){this.__data__=Cn?Cn(null):{};this.size=0}const vn=_n;function yn(t){var e=this.has(t)&&delete this.__data__[t];this.size-=e?1:0;return e}const xn=yn;var En="__lodash_hash_undefined__";var Dn=Object.prototype;var Sn=Dn.hasOwnProperty;function Tn(t){var e=this.__data__;if(Cn){var n=e[t];return n===En?undefined:n}return Sn.call(e,t)?e[t]:undefined}const In=Tn;var Mn=Object.prototype;var Bn=Mn.hasOwnProperty;function Ln(t){var e=this.__data__;return Cn?e[t]!==undefined:Bn.call(e,t)}const Nn=Ln;var zn="__lodash_hash_undefined__";function Pn(t,e){var n=this.__data__;this.size+=this.has(t)?0:1;n[t]=Cn&&e===undefined?zn:e;return this}const On=Pn;function Rn(t){var e=-1,n=t==null?0:t.length;this.clear();while(++e<n){var i=t[e];this.set(i[0],i[1])}}Rn.prototype.clear=vn;Rn.prototype["delete"]=xn;Rn.prototype.get=In;Rn.prototype.has=Nn;Rn.prototype.set=On;const Vn=Rn;function jn(){this.size=0;this.__data__={hash:new Vn,map:new(wn||Ne),string:new Vn}}const Fn=jn;function Hn(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}const Un=Hn;function Wn(t,e){var n=t.__data__;return Un(e)?n[typeof e=="string"?"string":"hash"]:n.map}const qn=Wn;function Gn(t){var e=qn(this,t)["delete"](t);this.size-=e?1:0;return e}const $n=Gn;function Kn(t){return qn(this,t).get(t)}const Yn=Kn;function Zn(t){return qn(this,t).has(t)}const Qn=Zn;function Jn(t,e){var n=qn(this,t),i=n.size;n.set(t,e);this.size+=n.size==i?0:1;return this}const Xn=Jn;function ti(t){var e=-1,n=t==null?0:t.length;this.clear();while(++e<n){var i=t[e];this.set(i[0],i[1])}}ti.prototype.clear=Fn;ti.prototype["delete"]=$n;ti.prototype.get=Yn;ti.prototype.has=Qn;ti.prototype.set=Xn;const ei=ti;var ni=200;function ii(t,e){var n=this.__data__;if(n instanceof Ne){var i=n.__data__;if(!wn||i.length<ni-1){i.push([t,e]);this.size=++n.size;return this}n=this.__data__=new ei(i)}n.set(t,e);this.size=n.size;return this}const oi=ii;function ri(t){var e=this.__data__=new Ne(t);this.size=e.size}ri.prototype.clear=Pe;ri.prototype["delete"]=Re;ri.prototype.get=je;ri.prototype.has=He;ri.prototype.set=oi;const si=ri;function ai(t,e){var n=-1,i=t==null?0:t.length;while(++n<i){if(e(t[n],n,t)===false){break}}return t}const li=ai;var ci=function(){try{var t=bn(Object,"defineProperty");t({},"",{});return t}catch(t){}}();const di=ci;function ui(t,e,n){if(e=="__proto__"&&di){di(t,e,{configurable:true,enumerable:true,value:n,writable:true})}else{t[e]=n}}const hi=ui;var gi=Object.prototype;var mi=gi.hasOwnProperty;function fi(t,e,n){var i=t[e];if(!(mi.call(t,e)&&Ae(i,n))||n===undefined&&!(e in t)){hi(t,e,n)}}const pi=fi;function bi(t,e,n,i){var o=!n;n||(n={});var r=-1,s=e.length;while(++r<s){var a=e[r];var l=i?i(n[a],t[a],a,n,t):undefined;if(l===undefined){l=t[a]}if(o){hi(n,a,l)}else{pi(n,a,l)}}return n}const ki=bi;function wi(t,e){var n=-1,i=Array(t);while(++n<t){i[n]=e(n)}return i}const Ai=wi;var Ci="[object Arguments]";function _i(t){return te(t)&&Zt(t)==Ci}const vi=_i;var yi=Object.prototype;var xi=yi.hasOwnProperty;var Ei=yi.propertyIsEnumerable;var Di=vi(function(){return arguments}())?vi:function(t){return te(t)&&xi.call(t,"callee")&&!Ei.call(t,"callee")};const Si=Di;function Ti(){return false}const Ii=Ti;var Mi=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var Bi=Mi&&typeof module=="object"&&module&&!module.nodeType&&module;var Li=Bi&&Bi.exports===Mi;var Ni=Li?Lt.Buffer:undefined;var zi=Ni?Ni.isBuffer:undefined;var Pi=zi||Ii;const Oi=Pi;var Ri=9007199254740991;var Vi=/^(?:0|[1-9]\d*)$/;function ji(t,e){var n=typeof t;e=e==null?Ri:e;return!!e&&(n=="number"||n!="symbol"&&Vi.test(t))&&(t>-1&&t%1==0&&t<e)}const Fi=ji;var Hi=9007199254740991;function Ui(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Hi}const Wi=Ui;var qi="[object Arguments]",Gi="[object Array]",$i="[object Boolean]",Ki="[object Date]",Yi="[object Error]",Zi="[object Function]",Qi="[object Map]",Ji="[object Number]",Xi="[object Object]",to="[object RegExp]",eo="[object Set]",no="[object String]",io="[object WeakMap]";var oo="[object ArrayBuffer]",ro="[object DataView]",so="[object Float32Array]",ao="[object Float64Array]",lo="[object Int8Array]",co="[object Int16Array]",uo="[object Int32Array]",ho="[object Uint8Array]",go="[object Uint8ClampedArray]",mo="[object Uint16Array]",fo="[object Uint32Array]";var po={};po[so]=po[ao]=po[lo]=po[co]=po[uo]=po[ho]=po[go]=po[mo]=po[fo]=true;po[qi]=po[Gi]=po[oo]=po[$i]=po[ro]=po[Ki]=po[Yi]=po[Zi]=po[Qi]=po[Ji]=po[Xi]=po[to]=po[eo]=po[no]=po[io]=false;function bo(t){return te(t)&&Wi(t.length)&&!!po[Zt(t)]}const ko=bo;function wo(t){return function(e){return t(e)}}const Ao=wo;var Co=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var _o=Co&&typeof module=="object"&&module&&!module.nodeType&&module;var vo=_o&&_o.exports===Co;var yo=vo&&It.process;var xo=function(){try{var t=_o&&_o.require&&_o.require("util").types;if(t){return t}return yo&&yo.binding&&yo.binding("util")}catch(t){}}();const Eo=xo;var Do=Eo&&Eo.isTypedArray;var So=Do?Ao(Do):ko;const To=So;var Io=Object.prototype;var Mo=Io.hasOwnProperty;function Bo(t,e){var n=Jt(t),i=!n&&Si(t),o=!n&&!i&&Oi(t),r=!n&&!i&&!o&&To(t),s=n||i||o||r,a=s?Ai(t.length,String):[],l=a.length;for(var c in t){if((e||Mo.call(t,c))&&!(s&&(c=="length"||o&&(c=="offset"||c=="parent")||r&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||Fi(c,l)))){a.push(c)}}return a}const Lo=Bo;var No=Object.prototype;function zo(t){var e=t&&t.constructor,n=typeof e=="function"&&e.prototype||No;return t===n}const Po=zo;var Oo=se(Object.keys,Object);const Ro=Oo;var Vo=Object.prototype;var jo=Vo.hasOwnProperty;function Fo(t){if(!Po(t)){return Ro(t)}var e=[];for(var n in Object(t)){if(jo.call(t,n)&&n!="constructor"){e.push(n)}}return e}const Ho=Fo;function Uo(t){return t!=null&&Wi(t.length)&&!Ke(t)}const Wo=Uo;function qo(t){return Wo(t)?Lo(t):Ho(t)}const Go=qo;function $o(t,e){return t&&ki(e,Go(e),t)}const Ko=$o;function Yo(t){var e=[];if(t!=null){for(var n in Object(t)){e.push(n)}}return e}const Zo=Yo;var Qo=Object.prototype;var Jo=Qo.hasOwnProperty;function Xo(t){if(!at(t)){return Zo(t)}var e=Po(t),n=[];for(var i in t){if(!(i=="constructor"&&(e||!Jo.call(t,i)))){n.push(i)}}return n}const tr=Xo;function er(t){return Wo(t)?Lo(t,true):tr(t)}const nr=er;function ir(t,e){return t&&ki(e,nr(e),t)}const or=ir;var rr=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var sr=rr&&typeof module=="object"&&module&&!module.nodeType&&module;var ar=sr&&sr.exports===rr;var lr=ar?Lt.Buffer:undefined,cr=lr?lr.allocUnsafe:undefined;function dr(t,e){if(e){return t.slice()}var n=t.length,i=cr?cr(n):new t.constructor(n);t.copy(i);return i}const ur=dr;function hr(t,e){var n=-1,i=t.length;e||(e=Array(i));while(++n<i){e[n]=t[n]}return e}const gr=hr;function mr(t,e){var n=-1,i=t==null?0:t.length,o=0,r=[];while(++n<i){var s=t[n];if(e(s,n,t)){r[o++]=s}}return r}const fr=mr;function pr(){return[]}const br=pr;var kr=Object.prototype;var wr=kr.propertyIsEnumerable;var Ar=Object.getOwnPropertySymbols;var Cr=!Ar?br:function(t){if(t==null){return[]}t=Object(t);return fr(Ar(t),(function(e){return wr.call(t,e)}))};const _r=Cr;function vr(t,e){return ki(t,_r(t),e)}const yr=vr;function xr(t,e){var n=-1,i=e.length,o=t.length;while(++n<i){t[o+n]=e[n]}return t}const Er=xr;var Dr=Object.getOwnPropertySymbols;var Sr=!Dr?br:function(t){var e=[];while(t){Er(e,_r(t));t=le(t)}return e};const Tr=Sr;function Ir(t,e){return ki(t,Tr(t),e)}const Mr=Ir;function Br(t,e,n){var i=e(t);return Jt(t)?i:Er(i,n(t))}const Lr=Br;function Nr(t){return Lr(t,Go,_r)}const zr=Nr;function Pr(t){return Lr(t,nr,Tr)}const Or=Pr;var Rr=bn(Lt,"DataView");const Vr=Rr;var jr=bn(Lt,"Promise");const Fr=jr;var Hr=bn(Lt,"Set");const Ur=Hr;var Wr=bn(Lt,"WeakMap");const qr=Wr;var Gr="[object Map]",$r="[object Object]",Kr="[object Promise]",Yr="[object Set]",Zr="[object WeakMap]";var Qr="[object DataView]";var Jr=on(Vr),Xr=on(wn),ts=on(Fr),es=on(Ur),ns=on(qr);var is=Zt;if(Vr&&is(new Vr(new ArrayBuffer(1)))!=Qr||wn&&is(new wn)!=Gr||Fr&&is(Fr.resolve())!=Kr||Ur&&is(new Ur)!=Yr||qr&&is(new qr)!=Zr){is=function(t){var e=Zt(t),n=e==$r?t.constructor:undefined,i=n?on(n):"";if(i){switch(i){case Jr:return Qr;case Xr:return Gr;case ts:return Kr;case es:return Yr;case ns:return Zr}}return e}}const os=is;var rs=Object.prototype;var ss=rs.hasOwnProperty;function as(t){var e=t.length,n=new t.constructor(e);if(e&&typeof t[0]=="string"&&ss.call(t,"index")){n.index=t.index;n.input=t.input}return n}const ls=as;var cs=Lt.Uint8Array;const ds=cs;function us(t){var e=new t.constructor(t.byteLength);new ds(e).set(new ds(t));return e}const hs=us;function gs(t,e){var n=e?hs(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}const ms=gs;var fs=/\w*$/;function ps(t){var e=new t.constructor(t.source,fs.exec(t));e.lastIndex=t.lastIndex;return e}const bs=ps;var ks=zt?zt.prototype:undefined,ws=ks?ks.valueOf:undefined;function As(t){return ws?Object(ws.call(t)):{}}const Cs=As;function _s(t,e){var n=e?hs(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}const vs=_s;var ys="[object Boolean]",xs="[object Date]",Es="[object Map]",Ds="[object Number]",Ss="[object RegExp]",Ts="[object Set]",Is="[object String]",Ms="[object Symbol]";var Bs="[object ArrayBuffer]",Ls="[object DataView]",Ns="[object Float32Array]",zs="[object Float64Array]",Ps="[object Int8Array]",Os="[object Int16Array]",Rs="[object Int32Array]",Vs="[object Uint8Array]",js="[object Uint8ClampedArray]",Fs="[object Uint16Array]",Hs="[object Uint32Array]";function Us(t,e,n){var i=t.constructor;switch(e){case Bs:return hs(t);case ys:case xs:return new i(+t);case Ls:return ms(t,n);case Ns:case zs:case Ps:case Os:case Rs:case Vs:case js:case Fs:case Hs:return vs(t,n);case Es:return new i;case Ds:case Is:return new i(t);case Ss:return bs(t);case Ts:return new i;case Ms:return Cs(t)}}const Ws=Us;var qs=Object.create;var Gs=function(){function t(){}return function(e){if(!at(e)){return{}}if(qs){return qs(e)}t.prototype=e;var n=new t;t.prototype=undefined;return n}}();const $s=Gs;function Ks(t){return typeof t.constructor=="function"&&!Po(t)?$s(le(t)):{}}const Ys=Ks;var Zs="[object Map]";function Qs(t){return te(t)&&os(t)==Zs}const Js=Qs;var Xs=Eo&&Eo.isMap;var ta=Xs?Ao(Xs):Js;const ea=ta;var na="[object Set]";function ia(t){return te(t)&&os(t)==na}const oa=ia;var ra=Eo&&Eo.isSet;var sa=ra?Ao(ra):oa;const aa=sa;var la=1,ca=2,da=4;var ua="[object Arguments]",ha="[object Array]",ga="[object Boolean]",ma="[object Date]",fa="[object Error]",pa="[object Function]",ba="[object GeneratorFunction]",ka="[object Map]",wa="[object Number]",Aa="[object Object]",Ca="[object RegExp]",_a="[object Set]",va="[object String]",ya="[object Symbol]",xa="[object WeakMap]";var Ea="[object ArrayBuffer]",Da="[object DataView]",Sa="[object Float32Array]",Ta="[object Float64Array]",Ia="[object Int8Array]",Ma="[object Int16Array]",Ba="[object Int32Array]",La="[object Uint8Array]",Na="[object Uint8ClampedArray]",za="[object Uint16Array]",Pa="[object Uint32Array]";var Oa={};Oa[ua]=Oa[ha]=Oa[Ea]=Oa[Da]=Oa[ga]=Oa[ma]=Oa[Sa]=Oa[Ta]=Oa[Ia]=Oa[Ma]=Oa[Ba]=Oa[ka]=Oa[wa]=Oa[Aa]=Oa[Ca]=Oa[_a]=Oa[va]=Oa[ya]=Oa[La]=Oa[Na]=Oa[za]=Oa[Pa]=true;Oa[fa]=Oa[pa]=Oa[xa]=false;function Ra(t,e,n,i,o,r){var s,a=e&la,l=e&ca,c=e&da;if(n){s=o?n(t,i,o,r):n(t)}if(s!==undefined){return s}if(!at(t)){return t}var d=Jt(t);if(d){s=ls(t);if(!a){return gr(t,s)}}else{var u=os(t),h=u==pa||u==ba;if(Oi(t)){return ur(t,a)}if(u==Aa||u==ua||h&&!o){s=l||h?{}:Ys(t);if(!a){return l?Mr(t,or(s,t)):yr(t,Ko(s,t))}}else{if(!Oa[u]){return o?t:{}}s=Ws(t,u,a)}}r||(r=new si);var g=r.get(t);if(g){return g}r.set(t,s);if(aa(t)){t.forEach((function(i){s.add(Ra(i,e,n,i,t,r))}))}else if(ea(t)){t.forEach((function(i,o){s.set(o,Ra(i,e,n,o,t,r))}))}var m=c?l?Or:zr:l?nr:Go;var f=d?undefined:m(t);li(f||t,(function(i,o){if(f){o=i;i=t[o]}pi(s,o,Ra(i,e,n,o,t,r))}));return s}const Va=Ra;var ja=1,Fa=4;function Ha(t,e){e=typeof e=="function"?e:undefined;return Va(t,ja|Fa,e)}const Ua=Ha;function Wa(t){return te(t)&&t.nodeType===1&&!pe(t)}const qa=Wa;class Ga{constructor(t,e){this._config={};if(e){this.define($a(e))}if(t){this._setObjectToTarget(this._config,t)}}set(t,e){this._setToTarget(this._config,t,e)}define(t,e){const n=true;this._setToTarget(this._config,t,e,n)}get(t){return this._getFromSource(this._config,t)}*names(){for(const t of Object.keys(this._config)){yield t}}_setToTarget(t,e,n,i=false){if(pe(e)){this._setObjectToTarget(t,e,i);return}const o=e.split(".");e=o.pop();for(const e of o){if(!pe(t[e])){t[e]={}}t=t[e]}if(pe(n)){if(!pe(t[e])){t[e]={}}t=t[e];this._setObjectToTarget(t,n,i);return}if(i&&typeof t[e]!="undefined"){return}t[e]=n}_getFromSource(t,e){const n=e.split(".");e=n.pop();for(const e of n){if(!pe(t[e])){t=null;break}t=t[e]}return t?$a(t[e]):undefined}_setObjectToTarget(t,e,n){Object.keys(e).forEach((i=>{this._setToTarget(t,i,e[i],n)}))}}function $a(t){return Ua(t,Ka)}function Ka(t){return qa(t)?t:undefined}function Ya(t){if(t){if(t.defaultView){return t instanceof t.defaultView.Document}else if(t.ownerDocument&&t.ownerDocument.defaultView){return t instanceof t.ownerDocument.defaultView.Node}}return false}function Za(t){const e=Object.prototype.toString.apply(t);if(e=="[object Window]"){return true}if(e=="[object global]"){return true}return false}const Qa=Ja(K());function Ja(t){if(!t){return Qa}class e extends t{listenTo(t,e,n,i={}){if(Ya(t)||Za(t)){const o={capture:!!i.useCapture,passive:!!i.usePassive};const r=this._getProxyEmitter(t,o)||new Xa(t,o);this.listenTo(r,e,n,i)}else{super.listenTo(t,e,n,i)}}stopListening(t,e,n){if(Ya(t)||Za(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 Y(this,el(t,e))}_getAllProxyEmitters(t){return[{capture:false,passive:false},{capture:false,passive:true},{capture:true,passive:false},{capture:true,passive:true}].map((e=>this._getProxyEmitter(t,e))).filter((t=>!!t))}}return e}["_getProxyEmitter","_getAllProxyEmitters","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{Ja[t]=Qa.prototype[t]}));class Xa extends(K()){constructor(t,e){super();Z(this,el(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);if(!this._domListeners){this._domListeners={}}this._domListeners[t]=e}detach(t){let e;if(this._domListeners[t]&&(!(e=this._events[t])||!e.callbacks.length)){this._domListeners[t].removeListener()}}_addEventListener(t,e,n){this.attach(t);K().prototype._addEventListener.call(this,t,e,n)}_removeEventListener(t,e){K().prototype._removeEventListener.call(this,t,e);this.detach(t)}_createDomListener(t){const e=e=>{this.fire(t,e)};e.removeListener=()=>{this._domNode.removeEventListener(t,e,this._options);delete this._domListeners[t]};return e}}function tl(t){return t["data-ck-expando"]||(t["data-ck-expando"]=I())}function el(t,e){let n=tl(t);for(const t of Object.keys(e).sort()){if(e[t]){n+="-"+t}}return n}let nl;try{nl={window,document}}catch(t){nl={window:{},document:{}}}const il=nl;function ol(t){const e=[];let n=t;while(n&&n.nodeType!=Node.DOCUMENT_NODE){e.unshift(n);n=n.parentNode}return e}function rl(t){if(t instanceof HTMLTextAreaElement){return t.value}return t.innerHTML}function sl(t){return Object.prototype.toString.call(t)=="[object Text]"}function al(t){return Object.prototype.toString.apply(t)=="[object Range]"}function ll(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)}}const cl=["top","right","bottom","left","width","height"];class dl{constructor(t){const e=al(t);Object.defineProperty(this,"_source",{value:t._source||t,writable:true,enumerable:false});if(gl(t)||e){if(e){const e=dl.getDomRangeRects(t);ul(this,dl.getBoundingRect(e))}else{ul(this,t.getBoundingClientRect())}}else if(Za(t)){const{innerWidth:e,innerHeight:n}=t;ul(this,{top:0,right:e,bottom:n,left:0,width:e,height:n})}else{ul(this,t)}}clone(){return new dl(this)}moveTo(t,e){this.top=e;this.right=t+this.width;this.bottom=e+this.height;this.left=t;return this}moveBy(t,e){this.top+=e;this.right+=t;this.left+=t;this.bottom+=e;return 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};e.width=e.right-e.left;e.height=e.bottom-e.top;if(e.width<0||e.height<0){return null}else{return new dl(e)}}getIntersectionArea(t){const e=this.getIntersection(t);if(e){return e.getArea()}else{return 0}}getArea(){return this.width*this.height}getVisible(){const t=this._source;let e=this.clone();if(!hl(t)){let n=t.parentNode||t.commonAncestorContainer;while(n&&!hl(n)){const t=new dl(n);const i=e.getIntersection(t);if(i){if(i.getArea()<e.getArea()){e=i}}else{return null}n=n.parentNode}}return e}isEqual(t){for(const e of cl){if(this[e]!==t[e]){return false}}return true}contains(t){const e=this.getIntersection(t);return!!(e&&e.isEqual(t))}excludeScrollbarsAndBorders(){const t=this._source;let e,n,i;if(Za(t)){e=t.innerWidth-t.document.documentElement.clientWidth;n=t.innerHeight-t.document.documentElement.clientHeight;i=t.getComputedStyle(t.document.documentElement).direction}else{const o=ll(t);e=t.offsetWidth-t.clientWidth-o.left-o.right;n=t.offsetHeight-t.clientHeight-o.top-o.bottom;i=t.ownerDocument.defaultView.getComputedStyle(t).direction;this.left+=o.left;this.top+=o.top;this.right-=o.right;this.bottom-=o.bottom;this.width=this.right-this.left;this.height=this.bottom-this.top}this.width-=e;if(i==="ltr"){this.right-=e}else{this.left+=e}this.height-=n;this.bottom-=n;return this}static getDomRangeRects(t){const e=[];const n=Array.from(t.getClientRects());if(n.length){for(const t of n){e.push(new dl(t))}}else{let n=t.startContainer;if(sl(n)){n=n.parentNode}const i=new dl(n.getBoundingClientRect());i.right=i.left;i.width=0;e.push(i)}return e}static getBoundingRect(t){const e={left:Number.POSITIVE_INFINITY,top:Number.POSITIVE_INFINITY,right:Number.NEGATIVE_INFINITY,bottom:Number.NEGATIVE_INFINITY,width:0,height:0};let n=0;for(const i of t){n++;e.left=Math.min(e.left,i.left);e.top=Math.min(e.top,i.top);e.right=Math.max(e.right,i.right);e.bottom=Math.max(e.bottom,i.bottom)}if(n==0){return null}e.width=e.right-e.left;e.height=e.bottom-e.top;return new dl(e)}}function ul(t,e){for(const n of cl){t[n]=e[n]}}function hl(t){if(!gl(t)){return false}return t===t.ownerDocument.body}function gl(t){return t!==null&&typeof t==="object"&&t.nodeType===1&&typeof t.getBoundingClientRect==="function"}class ml{constructor(t,e){if(!ml._observerInstance){ml._createObserver()}this._element=t;this._callback=e;ml._addElementCallback(t,e);ml._observerInstance.observe(t)}destroy(){ml._deleteElementCallback(this._element,this._callback)}static _addElementCallback(t,e){if(!ml._elementCallbacks){ml._elementCallbacks=new Map}let n=ml._elementCallbacks.get(t);if(!n){n=new Set;ml._elementCallbacks.set(t,n)}n.add(e)}static _deleteElementCallback(t,e){const n=ml._getElementCallbacks(t);if(n){n.delete(e);if(!n.size){ml._elementCallbacks.delete(t);ml._observerInstance.unobserve(t)}}if(ml._elementCallbacks&&!ml._elementCallbacks.size){ml._observerInstance=null;ml._elementCallbacks=null}}static _getElementCallbacks(t){if(!ml._elementCallbacks){return null}return ml._elementCallbacks.get(t)}static _createObserver(){ml._observerInstance=new il.window.ResizeObserver((t=>{for(const e of t){const t=ml._getElementCallbacks(e.target);if(t){for(const n of t){n(e)}}}}))}}ml._observerInstance=null;ml._elementCallbacks=null;function fl(t,e){if(t instanceof HTMLTextAreaElement){t.value=e}t.innerHTML=e}function pl(t){return e=>e+t}function bl(t){let e=0;while(t.previousSibling){t=t.previousSibling;e++}return e}function kl(t,e,n){t.insertBefore(n,t.childNodes[e]||null)}function wl(t){return t&&t.nodeType===Node.COMMENT_NODE}function Al(t){return!!(t&&t.getClientRects&&t.getClientRects().length)}function Cl(t){if(!t||!t.parentNode){return null}if(t.offsetParent===il.document.body){return null}return t.offsetParent}function _l({element:t,target:e,positions:n,limiter:i,fitInViewport:o,viewportOffsetConfig:r}){if(Ke(e)){e=e()}if(Ke(i)){i=i()}const s=Cl(t);const a=new dl(t);const l=new dl(e);let c;const d=o&&vl(r)||null;const u={targetRect:l,elementRect:a,positionedElementAncestor:s,viewportRect:d};if(!i&&!o){c=new Dl(n[0],u)}else{const t=i&&new dl(i).getVisible();Object.assign(u,{limiterRect:t,viewportRect:d});c=yl(n,u)||new Dl(n[0],u)}return c}function vl(t){t=Object.assign({top:0,bottom:0,left:0,right:0},t);const e=new dl(il.window);e.top+=t.top;e.height-=t.top;e.bottom-=t.bottom;e.height-=t.bottom;return e}function yl(t,e){const{elementRect:n}=e;const i=n.getArea();const o=t.map((t=>new Dl(t,e))).filter((t=>!!t.name));let r=0;let s=null;for(const t of o){const{limiterIntersectionArea:e,viewportIntersectionArea:n}=t;if(e===i){return t}const o=n**2+e**2;if(o>r){r=o;s=t}}return s}function xl(t,e){const n=El(new dl(e));const i=ll(e);let o=0;let r=0;o-=n.left;r-=n.top;o+=e.scrollLeft;r+=e.scrollTop;o-=i.left;r-=i.top;t.moveBy(o,r)}function El(t){const{scrollX:e,scrollY:n}=il.window;return t.clone().moveBy(e,n)}class Dl{constructor(t,e){const n=t(e.targetRect,e.elementRect,e.viewportRect);if(!n){return}const{left:i,top:o,name:r,config:s}=n;this.name=r;this.config=s;this._positioningFunctionCorrdinates={left:i,top:o};this._options=e}get left(){return this._absoluteRect.left}get top(){return this._absoluteRect.top}get limiterIntersectionArea(){const t=this._options.limiterRect;if(t){const e=this._options.viewportRect;if(e){const n=t.getIntersection(e);if(n){return n.getIntersectionArea(this._rect)}}else{return t.getIntersectionArea(this._rect)}}return 0}get viewportIntersectionArea(){const t=this._options.viewportRect;if(t){return t.getIntersectionArea(this._rect)}return 0}get _rect(){if(this._cachedRect){return this._cachedRect}this._cachedRect=this._options.elementRect.clone().moveTo(this._positioningFunctionCorrdinates.left,this._positioningFunctionCorrdinates.top);return this._cachedRect}get _absoluteRect(){if(this._cachedAbsoluteRect){return this._cachedAbsoluteRect}this._cachedAbsoluteRect=El(this._rect);if(this._options.positionedElementAncestor){xl(this._cachedAbsoluteRect,this._options.positionedElementAncestor)}return this._cachedAbsoluteRect}}function Sl(t){const e=t.parentNode;if(e){e.removeChild(t)}}function Tl({target:t,viewportOffset:e=0}){const n=Ol(t);let i=n;let o=null;while(i){let r;if(i==n){r=Rl(t)}else{r=Rl(o)}Bl(r,(()=>Vl(t,i)));const s=Vl(t,i);Ml(i,s,e);if(i.parent!=i){o=i.frameElement;i=i.parent;if(!o){return}}else{i=null}}}function Il(t){const e=Rl(t);Bl(e,(()=>new Rect(t)))}function Ml(t,e,n){const i=e.clone().moveBy(0,n);const o=e.clone().moveBy(0,-n);const r=new dl(t).excludeScrollbarsAndBorders();const s=[o,i];if(!s.every((t=>r.contains(t)))){let{scrollX:s,scrollY:a}=t;if(Nl(o,r)){a-=r.top-e.top+n}else if(Ll(i,r)){a+=e.bottom-r.bottom+n}if(zl(e,r)){s-=r.left-e.left+n}else if(Pl(e,r)){s+=e.right-r.right+n}t.scrollTo(s,a)}}function Bl(t,e){const n=Ol(t);let i,o;while(t!=n.document.body){o=e();i=new dl(t).excludeScrollbarsAndBorders();if(!i.contains(o)){if(Nl(o,i)){t.scrollTop-=i.top-o.top}else if(Ll(o,i)){t.scrollTop+=o.bottom-i.bottom}if(zl(o,i)){t.scrollLeft-=i.left-o.left}else if(Pl(o,i)){t.scrollLeft+=o.right-i.right}}t=t.parentNode}}function Ll(t,e){return t.bottom>e.bottom}function Nl(t,e){return t.top<e.top}function zl(t,e){return t.left<e.left}function Pl(t,e){return t.right>e.right}function Ol(t){if(al(t)){return t.startContainer.ownerDocument.defaultView}else{return t.ownerDocument.defaultView}}function Rl(t){if(al(t)){let e=t.commonAncestorContainer;if(sl(e)){e=e.parentNode}return e}else{return t.parentNode}}function Vl(t,e){const n=Ol(t);const i=new dl(t);if(n===e){return i}else{let t=n;while(t!=e){const e=t.frameElement;const n=new dl(e).excludeScrollbarsAndBorders();i.moveBy(n.left,n.top);t=t.parent}}return i}const jl={ctrl:"⌃",cmd:"⌘",alt:"⌥",shift:"⇧"};const Fl={ctrl:"Ctrl+",alt:"Alt+",shift:"Shift+"};const Hl=Ql();const Ul=Object.fromEntries(Object.entries(Hl).map((([t,e])=>[e,t.charAt(0).toUpperCase()+t.slice(1)])));function Wl(t){let e;if(typeof t=="string"){e=Hl[t.toLowerCase()];if(!e){throw new z("keyboard-unknown-key",null,{key:t})}}else{e=t.keyCode+(t.altKey?Hl.alt:0)+(t.ctrlKey?Hl.ctrl:0)+(t.shiftKey?Hl.shift:0)+(t.metaKey?Hl.cmd:0)}return e}function ql(t){if(typeof t=="string"){t=Jl(t)}return t.map((t=>typeof t=="string"?Yl(t):t)).reduce(((t,e)=>e+t),0)}function Gl(t){let e=ql(t);const n=Object.entries(c.isMac?jl:Fl);const i=n.reduce(((t,[n,i])=>{if((e&Hl[n])!=0){e&=~Hl[n];t+=i}return t}),"");return i+(e?Ul[e]:"")}function $l(t){return t==Hl.arrowright||t==Hl.arrowleft||t==Hl.arrowup||t==Hl.arrowdown}function Kl(t,e){const n=e==="ltr";switch(t){case Hl.arrowleft:return n?"left":"right";case Hl.arrowright:return n?"right":"left";case Hl.arrowup:return"up";case Hl.arrowdown:return"down"}}function Yl(t){if(t.endsWith("!")){return Wl(t.slice(0,-1))}const e=Wl(t);return c.isMac&&e==Hl.ctrl?Hl.cmd:e}function Zl(t,e){const n=Kl(t,e);return n==="down"||n==="right"}function Ql(){const t={arrowleft:37,arrowup:38,arrowright:39,arrowdown:40,backspace:8,delete:46,enter:13,space:32,esc:27,tab:9,ctrl:1114112,shift:2228224,alt:4456448,cmd:8912896};for(let e=65;e<=90;e++){const n=String.fromCharCode(e);t[n.toLowerCase()]=e}for(let e=48;e<=57;e++){t[e-48]=e}for(let e=112;e<=123;e++){t["f"+(e-111)]=e}for(const e of"`-=[];',./\\"){t[e]=e.charCodeAt(0)}return t}function Jl(t){return t.split("+").map((t=>t.trim()))}function Xl(t){return Array.isArray(t)?t:[t]}if(!il.window.CKEDITOR_TRANSLATIONS){il.window.CKEDITOR_TRANSLATIONS={}}function tc(t,e,n){if(!global.window.CKEDITOR_TRANSLATIONS[t]){global.window.CKEDITOR_TRANSLATIONS[t]={}}const i=global.window.CKEDITOR_TRANSLATIONS[t];i.dictionary=i.dictionary||{};i.getPluralForm=n||i.getPluralForm;Object.assign(i.dictionary,e)}function ec(t,e,n=1){if(typeof n!=="number"){throw new z("translation-service-quantity-not-a-number",null,{quantity:n})}const i=oc();if(i===1){t=Object.keys(il.window.CKEDITOR_TRANSLATIONS)[0]}const o=e.id||e.string;if(i===0||!ic(t,o)){if(n!==1){return e.plural}return e.string}const r=il.window.CKEDITOR_TRANSLATIONS[t].dictionary;const s=il.window.CKEDITOR_TRANSLATIONS[t].getPluralForm||(t=>t===1?0:1);const a=r[o];if(typeof a==="string"){return a}const l=Number(s(n));return a[l]}function nc(){global.window.CKEDITOR_TRANSLATIONS={}}function ic(t,e){return!!il.window.CKEDITOR_TRANSLATIONS[t]&&!!il.window.CKEDITOR_TRANSLATIONS[t].dictionary[e]}function oc(){return Object.keys(il.window.CKEDITOR_TRANSLATIONS).length}const rc=["ar","ara","fa","per","fas","he","heb","ku","kur","ug","uig"];function sc(t){return rc.includes(t)?"rtl":"ltr"}class ac{constructor({uiLanguage:t="en",contentLanguage:e}={}){this.uiLanguage=t;this.contentLanguage=e||this.uiLanguage;this.uiLanguageDirection=sc(this.uiLanguage);this.contentLanguageDirection=sc(this.contentLanguage);this.t=(t,e)=>this._t(t,e)}get language(){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.");return this.uiLanguage}_t(t,e=[]){e=Xl(e);if(typeof t==="string"){t={string:t}}const n=!!t.plural;const i=n?e[0]:1;const o=ec(this.uiLanguage,t,i);return lc(o,e)}}function lc(t,e){return t.replace(/%(\d+)/g,((t,n)=>n<e.length?e[n]:t))}class cc extends(K()){constructor(t={},e={}){super();const n=St(t);if(!n){e=t}this._items=[];this._itemMap=new Map;this._idProperty=e.idProperty||"id";this._bindToExternalToInternalMap=new WeakMap;this._bindToInternalToExternalMap=new WeakMap;this._skippedIndexesFromExternal=[];if(n){for(const e of t){this._items.push(e);this._itemMap.set(this._getItemIdBeforeAdding(e),e)}}}get length(){return this._items.length}get first(){return this._items[0]||null}get last(){return this._items[this.length-1]||null}add(t,e){return this.addMany([t],e)}addMany(t,e){if(e===undefined){e=this._items.length}else if(e>this._items.length||e<0){throw new z("collection-add-item-invalid-index",this)}let n=0;for(const i of t){const t=this._getItemIdBeforeAdding(i);const o=e+n;this._items.splice(o,0,i);this._itemMap.set(t,i);this.fire("add",i,o);n++}this.fire("change",{added:t,removed:[],index:e});return this}get(t){let e;if(typeof t=="string"){e=this._itemMap.get(t)}else if(typeof t=="number"){e=this._items[t]}else{throw new z("collection-get-invalid-arg",this)}return e||null}has(t){if(typeof t=="string"){return this._itemMap.has(t)}else{const e=this._idProperty;const n=t[e];return n&&this._itemMap.has(n)}}getIndex(t){let e;if(typeof t=="string"){e=this._itemMap.get(t)}else{e=t}return e?this._items.indexOf(e):-1}remove(t){const[e,n]=this._remove(t);this.fire("change",{added:[],removed:[e],index:n});return e}map(t,e){return this._items.map(t,e)}find(t,e){return this._items.find(t,e)}filter(t,e){return this._items.filter(t,e)}clear(){if(this._bindToCollection){this.stopListening(this._bindToCollection);this._bindToCollection=null}const t=Array.from(this._items);while(this.length){this._remove(0)}this.fire("change",{added:[],removed:t,index:0})}bindTo(t){if(this._bindToCollection){throw new z("collection-bind-to-rebind",this)}this._bindToCollection=t;return{as:t=>{this._setUpBindToBinding((e=>new t(e)))},using:t=>{if(typeof t=="function"){this._setUpBindToBinding(t)}else{this._setUpBindToBinding((e=>e[t]))}}}}_setUpBindToBinding(t){const e=this._bindToCollection;const n=(n,i,o)=>{const r=e._bindToCollection==this;const 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){this._skippedIndexesFromExternal.push(o);return}let r=o;for(const t of this._skippedIndexesFromExternal){if(o>t){r--}}for(const t of e._skippedIndexesFromExternal){if(r>=t){r++}}this._bindToExternalToInternalMap.set(i,n);this._bindToInternalToExternalMap.set(n,i);this.add(n,r);for(let t=0;t<e._skippedIndexesFromExternal.length;t++){if(r<=e._skippedIndexesFromExternal[t]){e._skippedIndexesFromExternal[t]++}}}};for(const t of e){n(null,t,e.getIndex(t))}this.listenTo(e,"add",n);this.listenTo(e,"remove",((t,e,n)=>{const i=this._bindToExternalToInternalMap.get(e);if(i){this.remove(i)}this._skippedIndexesFromExternal=this._skippedIndexesFromExternal.reduce(((t,e)=>{if(n<e){t.push(e-1)}if(n>e){t.push(e)}return t}),[])}))}_getItemIdBeforeAdding(t){const e=this._idProperty;let n;if(e in t){n=t[e];if(typeof n!="string"){throw new z("collection-add-invalid-id",this)}if(this.get(n)){throw new z("collection-add-item-already-exists",this)}}else{t[e]=n=I()}return n}_remove(t){let e,n,i;let o=false;const r=this._idProperty;if(typeof t=="string"){n=t;i=this._itemMap.get(n);o=!i;if(i){e=this._items.indexOf(i)}}else if(typeof t=="number"){e=t;i=this._items[e];o=!i;if(i){n=i[r]}}else{i=t;n=i[r];e=this._items.indexOf(i);o=e==-1||!this._itemMap.get(n)}if(o){throw new z("collection-remove-404",this)}this._items.splice(e,1);this._itemMap.delete(n);const s=this._bindToInternalToExternalMap.get(i);this._bindToInternalToExternalMap.delete(i);this._bindToExternalToInternalMap.delete(s);this.fire("remove",i,e);return[i,e]}[Symbol.iterator](){return this._items[Symbol.iterator]()}}function dc(t){const e=t.next();if(e.done){return null}return e.value}class uc extends(Ja(mt())){constructor(){super();this._elements=new Set;this._nextEventLoopTimeout=null;this.set("isFocused",false);this.set("focusedElement",null)}add(t){if(this._elements.has(t)){throw new z("focustracker-add-element-already-exist",this)}this.listenTo(t,"focus",(()=>this._focus(t)),{useCapture:true});this.listenTo(t,"blur",(()=>this._blur()),{useCapture:true});this._elements.add(t)}remove(t){if(t===this.focusedElement){this._blur()}if(this._elements.has(t)){this.stopListening(t);this._elements.delete(t)}}destroy(){this.stopListening()}_focus(t){clearTimeout(this._nextEventLoopTimeout);this.focusedElement=t;this.isFocused=true}_blur(){clearTimeout(this._nextEventLoopTimeout);this._nextEventLoopTimeout=setTimeout((()=>{this.focusedElement=null;this.isFocused=false}),0)}}class hc{constructor(){this._listener=new(Ja())}listenTo(t){this._listener.listenTo(t,"keydown",((t,e)=>{this._listener.fire("_keydown:"+Wl(e),e)}))}set(t,e,n={}){const i=ql(t);const o=n.priority;this._listener.listenTo(this._listener,"_keydown:"+i,((t,n)=>{e(n,(()=>{n.preventDefault();n.stopPropagation();t.stop()}));t.return=true}),{priority:o})}press(t){return!!this._listener.fire("_keydown:"+Wl(t),t)}destroy(){this._listener.stopListening()}}function gc(t){const e=new Map;for(const n in t){e.set(n,t[n])}return e}function mc(t){if(St(t)){return new Map(t)}else{return gc(t)}}const fc=1e4;function pc(t,e,n,i){if(Math.max(e.length,t.length)>fc){return t.slice(0,n).concat(e).concat(t.slice(n+i,t.length))}else{const o=Array.from(t);o.splice(n,i,...e);return o}}function bc(t){return!!t&&t.length==1&&/[\u0300-\u036f\u1ab0-\u1aff\u1dc0-\u1dff\u20d0-\u20ff\ufe20-\ufe2f]/.test(t)}function kc(t){return!!t&&t.length==1&&/[\ud800-\udbff]/.test(t)}function wc(t){return!!t&&t.length==1&&/[\udc00-\udfff]/.test(t)}function Ac(t,e){return kc(t.charAt(e-1))&&wc(t.charAt(e))}function Cc(t,e){return bc(t.charAt(e))}const _c=yc();function vc(t,e){const n=String(t).matchAll(_c);return Array.from(n).some((t=>t.index<e&&e<t.index+t[0].length))}function yc(){const t=[/\p{Emoji}[\u{E0020}-\u{E007E}]+\u{E007F}/u,/\p{Emoji}\u{FE0F}?\u{20E3}/u,/\p{Emoji}\u{FE0F}/u,/(?=\p{General_Category=Other_Symbol})\p{Emoji}\p{Emoji_Modifier}*/u];const e=/\p{Regional_Indicator}{2}/u.source;const n="(?:"+t.map((t=>t.source)).join("|")+")";const i=`${e}|${n}(?:‍${n})*`;return new RegExp(i,"ug")}class xc extends cc{constructor(t=[]){super(t,{idProperty:"viewUid"});this.on("add",((t,e,n)=>{this._renderViewIntoCollectionParent(e,n)}));this.on("remove",((t,e)=>{if(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||!Ec(t)){throw new z("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){if(!t.isRendered){t.render()}if(t.element&&this._parentElement){this._parentElement.insertBefore(t.element,this._parentElement.children[e])}}}function Ec(t){return t.every((t=>typeof t=="string"))}var Dc=n(3379);var Sc=n.n(Dc);var Tc=n(6150);var Ic={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Ic.insert="head";Ic.singleton=true;var Mc=Sc()(Tc.Z,Ic);const Bc=Tc.Z.locals||{};class Lc extends(Ja(mt())){constructor(t){super();this.element=null;this.isRendered=false;this.locale=t;this.t=t&&t.t;this._viewCollections=new cc;this._unboundChildren=this.createCollection();this._viewCollections.on("add",((e,n)=>{n.locale=t;n.t=t&&t.t}));this.decorate("render")}get bindTemplate(){if(this._bindTemplate){return this._bindTemplate}return this._bindTemplate=zc.bind(this,this)}createCollection(t){const e=new xc(t);this._viewCollections.add(e);return e}registerChild(t){if(!St(t)){t=[t]}for(const e of t){this._unboundChildren.add(e)}}deregisterChild(t){if(!St(t)){t=[t]}for(const e of t){this._unboundChildren.remove(e)}}setTemplate(t){this.template=new zc(t)}extendTemplate(t){zc.extend(this.template,t)}render(){if(this.isRendered){throw new z("ui-view-render-already-rendered",this)}if(this.template){this.element=this.template.render();this.registerChild(this.template.getViews())}this.isRendered=true}destroy(){this.stopListening();this._viewCollections.map((t=>t.destroy()));if(this.template&&this.template._revertData){this.template.revert(this.element)}}}const Nc="http://www.w3.org/1999/xhtml";class zc extends(K()){constructor(t){super();Object.assign(this,Gc(qc(t)));this._isRendered=false;this._revertData=null}render(){const t=this._renderNode({intoFragment:true});this._isRendered=true;return t}apply(t){this._revertData=sd();this._renderNode({node:t,intoFragment:false,isApplying:true,revertData:this._revertData});return t}revert(t){if(!this._revertData){throw new z("ui-template-revert-not-applied",[this,t])}this._revertTemplateFromNode(t,this._revertData)}*getViews(){function*t(e){if(e.children){for(const n of e.children){if(nd(n)){yield n}else if(id(n)){yield*t(n)}}}}yield*t(this)}static bind(t,e){return{to(n,i){return new Oc({eventNameOrFunction:n,attribute:n,observable:t,emitter:e,callback:i})},if(n,i,o){return new Rc({observable:t,emitter:e,attribute:n,valueIfTrue:i,callback:o})}}}static extend(t,e){if(t._isRendered){throw new z("template-extend-render",[this,t])}td(t,Gc(qc(e)))}_renderNode(t){let e;if(t.node){e=this.tag&&this.text}else{e=this.tag?this.text:!this.text}if(e){throw new z("ui-template-wrong-syntax",this)}if(this.text){return this._renderText(t)}else{return this._renderElement(t)}}_renderElement(t){let e=t.node;if(!e){e=t.node=document.createElementNS(this.ns||Nc,this.tag)}this._renderAttributes(t);this._renderElementChildren(t);this._setUpListeners(t);return e}_renderText(t){let e=t.node;if(e){t.revertData.text=e.textContent}else{e=t.node=document.createTextNode("")}if(Vc(this.text)){this._bindToObservable({schema:this.text,updater:Hc(e),data:t})}else{e.textContent=this.text.join("")}return e}_renderAttributes(t){if(!this.attributes){return}const e=t.node;const n=t.revertData;for(const i in this.attributes){const o=e.getAttribute(i);const r=this.attributes[i];if(n){n.attributes[i]=o}const s=rd(r)?r[0].ns:null;if(Vc(r)){const a=rd(r)?r[0].value:r;if(n&&ad(i)){a.unshift(o)}this._bindToObservable({schema:a,updater:Uc(e,i,s),data:t})}else if(i=="style"&&typeof r[0]!=="string"){this._renderStyleAttribute(r[0],t)}else{if(n&&o&&ad(i)){r.unshift(o)}const t=r.map((t=>t?t.value||t:t)).reduce(((t,e)=>t.concat(e)),[]).reduce(Jc,"");if(!ed(t)){e.setAttributeNS(s,i,t)}}}}_renderStyleAttribute(t,e){const n=e.node;for(const i in t){const o=t[i];if(Vc(o)){this._bindToObservable({schema:[o],updater:Wc(n,i),data:e})}else{n.style[i]=o}}}_renderElementChildren(t){const e=t.node;const n=t.intoFragment?document.createDocumentFragment():e;const i=t.isApplying;let o=0;for(const r of this.children){if(od(r)){if(!i){r.setParent(e);for(const t of r){n.appendChild(t.element)}}}else if(nd(r)){if(!i){if(!r.isRendered){r.render()}n.appendChild(r.element)}}else if(Ya(r)){n.appendChild(r)}else{if(i){const e=t.revertData;const i=sd();e.children.push(i);r._renderNode({intoFragment:false,node:n.childNodes[o++],isApplying:true,revertData:i})}else{n.appendChild(r.render())}}}if(t.intoFragment){e.appendChild(n)}}_setUpListeners(t){if(!this.eventListeners){return}for(const e in this.eventListeners){const n=this.eventListeners[e].map((n=>{const[i,o]=e.split("@");return n.activateDomEventListener(i,o,t)}));if(t.revertData){t.revertData.bindings.push(n)}}}_bindToObservable({schema:t,updater:e,data:n}){const i=n.revertData;Fc(t,e,n);const o=t.filter((t=>!ed(t))).filter((t=>t.observable)).map((i=>i.activateAttributeListener(t,e,n)));if(i){i.bindings.push(o)}}_revertTemplateFromNode(t,e){for(const t of e.bindings){for(const e of t){e()}}if(e.text){t.textContent=e.text;return}const n=t;for(const t in e.attributes){const i=e.attributes[t];if(i===null){n.removeAttribute(t)}else{n.setAttribute(t,i)}}for(let t=0;t<e.children.length;++t){this._revertTemplateFromNode(n.childNodes[t],e.children[t])}}}class Pc{constructor(t){this.attribute=t.attribute;this.observable=t.observable;this.emitter=t.emitter;this.callback=t.callback}getValue(t){const e=this.observable[this.attribute];return this.callback?this.callback(e,t):e}activateAttributeListener(t,e,n){const i=()=>Fc(t,e,n);this.emitter.listenTo(this.observable,`change:${this.attribute}`,i);return()=>{this.emitter.stopListening(this.observable,`change:${this.attribute}`,i)}}}class Oc extends Pc{constructor(t){super(t);this.eventNameOrFunction=t.eventNameOrFunction}activateDomEventListener(t,e,n){const i=(t,n)=>{if(!e||n.target.matches(e)){if(typeof this.eventNameOrFunction=="function"){this.eventNameOrFunction(n)}else{this.observable.fire(this.eventNameOrFunction,n)}}};this.emitter.listenTo(n.node,t,i);return()=>{this.emitter.stopListening(n.node,t,i)}}}class Rc extends Pc{constructor(t){super(t);this.valueIfTrue=t.valueIfTrue}getValue(t){const e=super.getValue(t);return ed(e)?false:this.valueIfTrue||true}}function Vc(t){if(!t){return false}if(t.value){t=t.value}if(Array.isArray(t)){return t.some(Vc)}else if(t instanceof Pc){return true}return false}function jc(t,e){return t.map((t=>{if(t instanceof Pc){return t.getValue(e)}return t}))}function Fc(t,e,{node:n}){const i=jc(t,n);let o;if(t.length==1&&t[0]instanceof Rc){o=i[0]}else{o=i.reduce(Jc,"")}if(ed(o)){e.remove()}else{e.set(o)}}function Hc(t){return{set(e){t.textContent=e},remove(){t.textContent=""}}}function Uc(t,e,n){return{set(i){t.setAttributeNS(n,e,i)},remove(){t.removeAttributeNS(n,e)}}}function Wc(t,e){return{set(n){t.style[e]=n},remove(){t.style[e]=null}}}function qc(t){const e=Ua(t,(t=>{if(t&&(t instanceof Pc||id(t)||nd(t)||od(t))){return t}}));return e}function Gc(t){if(typeof t=="string"){t=Yc(t)}else if(t.text){Zc(t)}if(t.on){t.eventListeners=Kc(t.on);delete t.on}if(!t.text){if(t.attributes){$c(t.attributes)}const e=[];if(t.children){if(od(t.children)){e.push(t.children)}else{for(const n of t.children){if(id(n)||nd(n)||Ya(n)){e.push(n)}else{e.push(new zc(n))}}}}t.children=e}return t}function $c(t){for(const e in t){if(t[e].value){t[e].value=Xl(t[e].value)}Qc(t,e)}}function Kc(t){for(const e in t){Qc(t,e)}return t}function Yc(t){return{text:[t]}}function Zc(t){t.text=Xl(t.text)}function Qc(t,e){t[e]=Xl(t[e])}function Jc(t,e){if(ed(e)){return t}else if(ed(t)){return e}else{return`${t} ${e}`}}function Xc(t,e){for(const n in e){if(t[n]){t[n].push(...e[n])}else{t[n]=e[n]}}}function td(t,e){if(e.attributes){if(!t.attributes){t.attributes={}}Xc(t.attributes,e.attributes)}if(e.eventListeners){if(!t.eventListeners){t.eventListeners={}}Xc(t.eventListeners,e.eventListeners)}if(e.text){t.text.push(...e.text)}if(e.children&&e.children.length){if(t.children.length!=e.children.length){throw new z("ui-template-extend-children-mismatch",t)}let n=0;for(const i of e.children){td(t.children[n++],i)}}}function ed(t){return!t&&t!==0}function nd(t){return t instanceof Lc}function id(t){return t instanceof zc}function od(t){return t instanceof xc}function rd(t){return at(t[0])&&t[0].ns}function sd(){return{children:[],bindings:[],attributes:{}}}function ad(t){return t=="class"||t=="style"}class ld extends xc{constructor(t,e=[]){super(e);this.locale=t}attachToDom(){this._bodyCollectionContainer=new zc({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");if(!t){t=oe(document,"div",{class:"ck-body-wrapper"});document.body.appendChild(t)}t.appendChild(this._bodyCollectionContainer)}detachFromDom(){super.destroy();if(this._bodyCollectionContainer){this._bodyCollectionContainer.remove()}const t=document.querySelector(".ck-body-wrapper");if(t&&t.childElementCount==0){t.remove()}}}var cd=n(1174);var dd={injectType:"singletonStyleTag",attributes:{"data-cke":true}};dd.insert="head";dd.singleton=true;var ud=Sc()(cd.Z,dd);const hd=cd.Z.locals||{};class gd extends Lc{constructor(){super();const t=this.bindTemplate;this.set("content","");this.set("viewBox","0 0 20 20");this.set("fillColor","");this.set("isColorInherited",true);this.setTemplate({tag:"svg",ns:"http://www.w3.org/2000/svg",attributes:{class:["ck","ck-icon","ck-reset_all-excluded",t.if("isColorInherited","ck-icon_inherit-color")],viewBox:t.to("viewBox")}})}render(){super.render();this._updateXMLContent();this._colorFillPaths();this.on("change:content",(()=>{this._updateXMLContent();this._colorFillPaths()}));this.on("change:fillColor",(()=>{this._colorFillPaths()}))}_updateXMLContent(){if(this.content){const t=(new DOMParser).parseFromString(this.content.trim(),"image/svg+xml");const e=t.querySelector("svg");const n=e.getAttribute("viewBox");if(n){this.viewBox=n}for(const{name:t,value:n}of Array.from(e.attributes)){if(gd.presentationalAttributeNames.includes(t)){this.element.setAttribute(t,n)}}while(this.element.firstChild){this.element.removeChild(this.element.firstChild)}while(e.childNodes.length>0){this.element.appendChild(e.childNodes[0])}}}_colorFillPaths(){if(this.fillColor){this.element.querySelectorAll(".ck-icon__fill").forEach((t=>{t.style.fill=this.fillColor}))}}}gd.presentationalAttributeNames=["alignment-baseline","baseline-shift","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-rendering","cursor","direction","display","dominant-baseline","fill","fill-opacity","fill-rule","filter","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","mask","opacity","overflow","paint-order","pointer-events","shape-rendering","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-overflow","text-rendering","transform","unicode-bidi","vector-effect","visibility","white-space","word-spacing","writing-mode"];var md=n(4499);var fd={injectType:"singletonStyleTag",attributes:{"data-cke":true}};fd.insert="head";fd.singleton=true;var pd=Sc()(md.Z,fd);const bd=md.Z.locals||{};class kd extends Lc{constructor(t){super(t);const e=this.bindTemplate;const n=I();this.set("class",undefined);this.set("labelStyle",undefined);this.set("icon",undefined);this.set("isEnabled",true);this.set("isOn",false);this.set("isVisible",true);this.set("isToggleable",false);this.set("keystroke",undefined);this.set("label",undefined);this.set("tabindex",-1);this.set("tooltip",false);this.set("tooltipPosition","s");this.set("type","button");this.set("withText",false);this.set("withKeystroke",false);this.children=this.createCollection();this.labelView=this._createLabelView(n);this.iconView=new gd;this.iconView.extendTemplate({attributes:{class:"ck-button__icon"}});this.keystrokeView=this._createKeystrokeView();this.bind("_tooltipString").to(this,"tooltip",this,"label",this,"keystroke",this._getTooltipString.bind(this));const i={tag:"button",attributes:{class:["ck","ck-button",e.to("class"),e.if("isEnabled","ck-disabled",(t=>!t)),e.if("isVisible","ck-hidden",(t=>!t)),e.to("isOn",(t=>t?"ck-on":"ck-off")),e.if("withText","ck-button_with-text"),e.if("withKeystroke","ck-button_with-keystroke")],type:e.to("type",(t=>t?t:"button")),tabindex:e.to("tabindex"),"aria-labelledby":`ck-editor__aria-label_${n}`,"aria-disabled":e.if("isEnabled",true,(t=>!t)),"aria-pressed":e.to("isOn",(t=>this.isToggleable?String(!!t):false)),"data-cke-tooltip-text":e.to("_tooltipString"),"data-cke-tooltip-position":e.to("tooltipPosition")},children:this.children,on:{click:e.to((t=>{if(this.isEnabled){this.fire("execute")}else{t.preventDefault()}}))}};if(c.isSafari){i.on.mousedown=e.to((t=>{this.focus();t.preventDefault()}))}this.setTemplate(i)}render(){super.render();if(this.icon){this.iconView.bind("content").to(this,"icon");this.children.add(this.iconView)}this.children.add(this.labelView);if(this.withKeystroke&&this.keystroke){this.children.add(this.keystrokeView)}}focus(){this.element.focus()}_createLabelView(t){const e=new Lc;const n=this.bindTemplate;e.setTemplate({tag:"span",attributes:{class:["ck","ck-button__label"],style:n.to("labelStyle"),id:`ck-editor__aria-label_${t}`},children:[{text:this.bindTemplate.to("label")}]});return e}_createKeystrokeView(){const t=new Lc;t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__keystroke"]},children:[{text:this.bindTemplate.to("keystroke",(t=>Gl(t)))}]});return t}_getTooltipString(t,e,n){if(t){if(typeof t=="string"){return t}else{if(n){n=Gl(n)}if(t instanceof Function){return t(e,n)}else{return`${e}${n?` (${n})`:""}`}}}return""}}var wd=n(9681);var Ad={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Ad.insert="head";Ad.singleton=true;var Cd=Sc()(wd.Z,Ad);const _d=wd.Z.locals||{};class vd extends kd{constructor(t){super(t);this.isToggleable=true;this.toggleSwitchView=this._createToggleView();this.extendTemplate({attributes:{class:"ck-switchbutton"}})}render(){super.render();this.children.add(this.toggleSwitchView)}_createToggleView(){const t=new Lc;t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__toggle"]},children:[{tag:"span",attributes:{class:["ck","ck-button__toggle__inner"]}}]});return t}}function yd(t,e){const n=t.t;const 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];if(e&&e!=t.label){t.label=e}return t}))}function xd(t){return t.map(Ed).filter((t=>!!t))}function Ed(t){if(typeof t==="string"){return{model:t,label:t,hasBorder:false,view:{name:"span",styles:{color:t}}}}else{return{model:t.color,label:t.label||t.color,hasBorder:t.hasBorder===undefined?false:t.hasBorder,view:{name:"span",styles:{color:`${t.color}`}}}}}const Dd='$${Delta.CKEditor.Icon[0]}$$';class Sd extends kd{constructor(t){super(t);const e=this.bindTemplate;this.set("color",undefined);this.set("hasBorder",false);this.icon=Dd;this.extendTemplate({attributes:{style:{backgroundColor:e.to("color")},class:["ck","ck-color-grid__tile",e.if("hasBorder","ck-color-table__color-tile_bordered")]}})}render(){super.render();this.iconView.fillColor="hsl(0, 0%, 100%)"}}var Td=n(4923);var Id={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Id.insert="head";Id.singleton=true;var Md=Sc()(Td.Z,Id);const Bd=Td.Z.locals||{};class Ld extends Lc{constructor(t,e){super(t);const n=e&&e.colorDefinitions||[];this.columns=e&&e.columns?e.columns:5;const i={gridTemplateColumns:`repeat( ${this.columns}, 1fr)`};this.set("selectedColor",undefined);this.items=this.createCollection();this.focusTracker=new uc;this.keystrokes=new hc;this.items.on("add",((t,e)=>{e.isOn=e.color===this.selectedColor}));n.forEach((t=>{const e=new Sd;e.set({color:t.color,label:t.label,tooltip:true,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(){if(this.items.length){this.items.first.focus()}}focusLast(){if(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);r({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()}}class Nd{constructor(t){this.editor=t;this._components=new Map}*names(){for(const t of this._components.values()){yield t.originalName}}add(t,e){this._components.set(zd(t),{callback:e,originalName:t})}create(t){if(!this.has(t)){throw new z("componentfactory-item-missing",this,{name:t})}return this._components.get(zd(t)).callback(this.editor.locale)}has(t){return this._components.has(zd(t))}}function zd(t){return String(t).toLowerCase()}var Pd=n(3488);var Od={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Od.insert="head";Od.singleton=true;var Rd=Sc()(Pd.Z,Od);const Vd=Pd.Z.locals||{};class jd extends Lc{constructor(t,e,n){super(t);const i=this.bindTemplate;this.buttonView=e;this.panelView=n;this.set("isOpen",false);this.set("isEnabled",true);this.set("class",undefined);this.set("id",undefined);this.set("panelPosition","auto");this.keystrokes=new hc;this.focusTracker=new uc;this.setTemplate({tag:"div",attributes:{class:["ck","ck-dropdown",i.to("class"),i.if("isEnabled","ck-disabled",(t=>!t))],id:i.to("id"),"aria-describedby":i.to("ariaDescribedById")},children:[e,n]});e.extendTemplate({attributes:{class:["ck-dropdown__button"],"data-cke-tooltip-disabled":i.to("isOpen")}})}render(){super.render();this.focusTracker.add(this.buttonView.element);this.focusTracker.add(this.panelView.element);this.listenTo(this.buttonView,"open",(()=>{this.isOpen=!this.isOpen}));this.panelView.bind("isVisible").to(this,"isOpen");this.on("change:isOpen",((t,e,n)=>{if(!n){return}if(this.panelPosition==="auto"){this.panelView.position=jd._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:true,positions:this._panelPositions}).name}else{this.panelView.position=this.panelPosition}}));this.keystrokes.listenTo(this.element);const t=(t,e)=>{if(this.isOpen){this.isOpen=false;e()}};this.keystrokes.set("arrowdown",((t,e)=>{if(this.buttonView.isEnabled&&!this.isOpen){this.isOpen=true;e()}}));this.keystrokes.set("arrowright",((t,e)=>{if(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:l,northMiddleWest:c}=jd.defaultPanelPositions;if(this.locale.uiLanguageDirection!=="rtl"){return[n,i,s,a,t,o,r,l,c,e]}else{return[i,n,a,s,t,r,o,c,l,e]}}}jd.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-(e.width-t.width)*3/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-(e.width-t.width)*3/4,name:"nmw"})};jd._getOptimalPosition=_l;const Fd='$${Delta.CKEditor.Icon[1]}$$';class Hd extends kd{constructor(t){super(t);this.arrowView=this._createArrowView();this.extendTemplate({attributes:{"aria-haspopup":true,"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 gd;t.content=Fd;t.extendTemplate({attributes:{class:"ck-dropdown__arrow"}});return t}}var Ud=n(66);var Wd={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Wd.insert="head";Wd.singleton=true;var qd=Sc()(Ud.Z,Wd);const Gd=Ud.Z.locals||{};class $d extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.set("class",undefined);this.set("labelStyle",undefined);this.set("icon",undefined);this.set("isEnabled",true);this.set("isOn",false);this.set("isToggleable",false);this.set("isVisible",true);this.set("keystroke",undefined);this.set("withKeystroke",false);this.set("label",undefined);this.set("tabindex",-1);this.set("tooltip",false);this.set("tooltipPosition","s");this.set("type","button");this.set("withText",false);this.children=this.createCollection();this.actionView=this._createActionView();this.arrowView=this._createArrowView();this.keystrokes=new hc;this.focusTracker=new uc;this.setTemplate({tag:"div",attributes:{class:["ck","ck-splitbutton",e.to("class"),e.if("isVisible","ck-hidden",(t=>!t)),this.arrowView.bindTemplate.if("isOn","ck-splitbutton_open")]},children:this.children})}render(){super.render();this.children.add(this.actionView);this.children.add(this.arrowView);this.focusTracker.add(this.actionView.element);this.focusTracker.add(this.arrowView.element);this.keystrokes.listenTo(this.element);this.keystrokes.set("arrowright",((t,e)=>{if(this.focusTracker.focusedElement===this.actionView.element){this.arrowView.focus();e()}}));this.keystrokes.set("arrowleft",((t,e)=>{if(this.focusTracker.focusedElement===this.arrowView.element){this.actionView.focus();e()}}))}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this.actionView.focus()}_createActionView(){const t=new kd;t.bind("icon","isEnabled","isOn","isToggleable","keystroke","label","tabindex","tooltip","tooltipPosition","type","withText").to(this);t.extendTemplate({attributes:{class:"ck-splitbutton__action"}});t.delegate("execute").to(this);return t}_createArrowView(){const t=new kd;const e=t.bindTemplate;t.icon=Fd;t.extendTemplate({attributes:{class:["ck-splitbutton__arrow"],"data-cke-tooltip-disabled":e.to("isOn"),"aria-haspopup":true,"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");return t}}class Kd extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",false);this.set("position","se");this.children=this.createCollection();this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-dropdown__panel",e.to("position",(t=>`ck-dropdown__panel_${t}`)),e.if("isVisible","ck-dropdown__panel-visible")]},children:this.children,on:{selectstart:e.to((t=>t.preventDefault()))}})}focus(){if(this.children.length){const t=this.children.first;if(typeof t.focus==="function"){t.focus()}else{P("ui-dropdown-panel-focus-child-missing-focus",{childView:this.children.first,dropdownPanel:this})}}}focusLast(){if(this.children.length){const t=this.children.last;if(typeof t.focusLast==="function"){t.focusLast()}else{t.focus()}}}}class Yd{constructor(t){this.focusables=t.focusables;this.focusTracker=t.focusTracker;this.keystrokeHandler=t.keystrokeHandler;this.actions=t.actions;if(t.actions&&t.keystrokeHandler){for(const e in t.actions){let n=t.actions[e];if(typeof n=="string"){n=[n]}for(const i of n){t.keystrokeHandler.set(i,((t,n)=>{this[e]();n()}))}}}}get first(){return this.focusables.find(Zd)||null}get last(){return this.focusables.filter(Zd).slice(-1)[0]||null}get next(){return this._getFocusableItem(1)}get previous(){return this._getFocusableItem(-1)}get current(){let t=null;if(this.focusTracker.focusedElement===null){return null}this.focusables.find(((e,n)=>{const i=e.element===this.focusTracker.focusedElement;if(i){t=n}return i}));return t}focusFirst(){this._focus(this.first)}focusLast(){this._focus(this.last)}focusNext(){this._focus(this.next)}focusPrevious(){this._focus(this.previous)}_focus(t){if(t){t.focus()}}_getFocusableItem(t){const e=this.current;const n=this.focusables.length;if(!n){return null}if(e===null){return this[t===1?"first":"last"]}let i=(e+n+t)%n;do{const e=this.focusables.get(i);if(Zd(e)){return e}i=(i+n+t)%n}while(i!==e);return null}}function Zd(t){return!!(t.focus&&Al(t.element))}class Qd extends Lc{constructor(t){super(t);this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__separator"]}})}}class Jd extends Lc{constructor(t){super(t);this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__line-break"]}})}}function Xd(t){return t.bindTemplate.to((e=>{if(e.target===t.element){e.preventDefault()}}))}function tu(t){if(Array.isArray(t)){return{items:t,removeItems:[]}}if(!t){return{items:[],removeItems:[]}}return Object.assign({items:[],removeItems:[]},t)}class eu extends(mt()){constructor(t){super();this.editor=t;this.set("isEnabled",true);this._disableStack=new Set}forceDisabled(t){this._disableStack.add(t);if(this._disableStack.size==1){this.on("set:isEnabled",nu,{priority:"highest"});this.isEnabled=false}}clearForceDisabled(t){this._disableStack.delete(t);if(this._disableStack.size==0){this.off("set:isEnabled",nu);this.isEnabled=true}}destroy(){this.stopListening()}static get isContextPlugin(){return false}}function nu(t){t.return=false;t.stop()}class iu extends(mt()){constructor(t){super();this.editor=t;this.set("value",undefined);this.set("isEnabled",false);this._affectsData=true;this._disableStack=new Set;this.decorate("execute");this.listenTo(this.editor.model.document,"change",(()=>{this.refresh()}));this.on("execute",(t=>{if(!this.isEnabled){t.stop()}}),{priority:"high"});this.listenTo(t,"change:isReadOnly",((t,e,n)=>{if(n&&this.affectsData){this.forceDisabled("readOnlyMode")}else{this.clearForceDisabled("readOnlyMode")}}))}get affectsData(){return this._affectsData}set affectsData(t){this._affectsData=t}refresh(){this.isEnabled=true}forceDisabled(t){this._disableStack.add(t);if(this._disableStack.size==1){this.on("set:isEnabled",ou,{priority:"highest"});this.isEnabled=false}}clearForceDisabled(t){this._disableStack.delete(t);if(this._disableStack.size==0){this.off("set:isEnabled",ou);this.refresh()}}execute(...t){return undefined}destroy(){this.stopListening()}}function ou(t){t.return=false;t.stop()}class ru extends iu{constructor(t){super(t);this._childCommandsDefinitions=[]}refresh(){}execute(...t){const e=this._getFirstEnabledCommand();return!!e&&e.execute(t)}registerChildCommand(t,e={}){L(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 su extends(K()){constructor(t,e=[],n=[]){super();this._context=t;this._plugins=new Map;this._availablePlugins=new Map;for(const t of e){if(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);if(t.pluginName){this._availablePlugins.set(t.pluginName,t)}}}*[Symbol.iterator](){for(const t of this._plugins){if(typeof t[0]=="function"){yield t}}}get(t){const e=this._plugins.get(t);if(!e){let e=t;if(typeof t=="function"){e=t.pluginName||t.name}throw new z("plugincollection-plugin-not-loaded",this._context,{plugin:e})}return e}has(t){return this._plugins.has(t)}init(t,e=[],n=[]){const i=this;const o=this._context;h(t);m(t);const r=t.filter((t=>!d(t,e)));const s=[...g(r)];A(s,n);const a=k(s);return w(a,"init").then((()=>w(a,"afterInit"))).then((()=>a));function l(t){return typeof t==="function"}function c(t){return l(t)&&t.isContextPlugin}function d(t,e){return e.some((e=>{if(e===t){return true}if(u(t)===e){return true}if(u(e)===t){return true}return false}))}function u(t){return l(t)?t.pluginName||t.name:t}function h(t,e=new Set){t.forEach((t=>{if(!l(t)){return}if(e.has(t)){return}e.add(t);if(t.pluginName&&!i._availablePlugins.has(t.pluginName)){i._availablePlugins.set(t.pluginName,t)}if(t.requires){h(t.requires,e)}}))}function g(t,e=new Set){return t.map((t=>l(t)?t:i._availablePlugins.get(t))).reduce(((t,n)=>{if(e.has(n)){return t}e.add(n);if(n.requires){m(n.requires,n);g(n.requires,e).forEach((e=>t.add(e)))}return t.add(n)}),new Set)}function m(t,e=null){t.map((t=>l(t)?t:i._availablePlugins.get(t)||t)).forEach((t=>{f(t,e);p(t,e);b(t,e)}))}function f(t,e){if(l(t)){return}if(e){throw new z("plugincollection-soft-required",o,{missingPlugin:t,requiredBy:u(e)})}throw new z("plugincollection-plugin-not-found",o,{plugin:t})}function p(t,e){if(!c(e)){return}if(c(t)){return}throw new z("plugincollection-context-required",o,{plugin:u(t),requiredBy:u(e)})}function b(t,n){if(!n){return}if(!d(t,e)){return}throw new z("plugincollection-required",o,{plugin:u(t),requiredBy:u(n)})}function k(t){return t.map((t=>{let e=i._contextPlugins.get(t);e=e||new t(o);i._add(t,e);return e}))}function w(t,e){return t.reduce(((t,n)=>{if(!n[e]){return t}if(i._contextPlugins.has(n)){return t}return t.then(n[e].bind(n))}),Promise.resolve())}function A(t,e){for(const n of e){if(typeof n!="function"){throw new z("plugincollection-replace-plugin-invalid-type",null,{pluginItem:n})}const e=n.pluginName;if(!e){throw new z("plugincollection-replace-plugin-missing-name",null,{pluginItem:n})}if(n.requires&&n.requires.length){throw new z("plugincollection-plugin-for-replacing-cannot-have-dependencies",null,{pluginName:e})}const o=i._availablePlugins.get(e);if(!o){throw new z("plugincollection-plugin-for-replacing-not-exist",null,{pluginName:e})}const r=t.indexOf(o);if(r===-1){if(i._contextPlugins.has(o)){return}throw new z("plugincollection-plugin-for-replacing-not-loaded",null,{pluginName:e})}if(o.requires&&o.requires.length){throw new z("plugincollection-replaced-plugin-cannot-have-dependencies",null,{pluginName:e})}t.splice(r,1,n);i._availablePlugins.set(e,n)}}}destroy(){const t=[];for(const[,e]of this){if(typeof e.destroy=="function"&&!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){return}if(this._plugins.has(n)){throw new z("plugincollection-plugin-name-conflict",null,{pluginName:n,plugin1:this._plugins.get(n).constructor,plugin2:t})}this._plugins.set(n,e)}}class au{constructor(t){this.config=new Ga(t,this.constructor.defaultConfig);const e=this.constructor.builtinPlugins;this.config.define("plugins",e);this.plugins=new su(this,e);const n=this.config.get("language")||{};this.locale=new ac({uiLanguage:typeof n==="string"?n:n.ui,contentLanguage:this.config.get("language.content")});this.t=this.locale.t;this.editors=new cc;this._contextOwner=null}initPlugins(){const t=this.config.get("plugins")||[];const e=this.config.get("substitutePlugins")||[];for(const n of t.concat(e)){if(typeof n!="function"){throw new z("context-initplugins-constructor-only",null,{Plugin:n})}if(n.isContextPlugin!==true){throw new z("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 z("context-addeditor-private-context")}this.editors.add(t);if(e){this._contextOwner=t}}_removeEditor(t){if(this.editors.has(t)){this.editors.remove(t)}if(this._contextOwner===t){return this.destroy()}return Promise.resolve()}_getEditorConfig(){const t={};for(const e of this.config.names()){if(!["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 lu extends(mt()){constructor(t){super();this.context=t}destroy(){this.stopListening()}static get isContextPlugin(){return true}}var cu=n(8894);var du={injectType:"singletonStyleTag",attributes:{"data-cke":true}};du.insert="head";du.singleton=true;var uu=Sc()(cu.Z,du);const hu=cu.Z.locals||{};const gu=new WeakMap;function mu(t){const{view:e,element:n,text:i,isDirectHost:o=true,keepOnFocus:r=false}=t;const s=e.document;if(!gu.has(s)){gu.set(s,new Map);s.registerPostFixer((t=>wu(s,t)));s.on("change:isComposing",(()=>{e.change((t=>wu(s,t)))}),{priority:"high"})}gu.get(s).set(n,{text:i,isDirectHost:o,keepOnFocus:r,hostElement:o?n:null});e.change((t=>wu(s,t)))}function fu(t,e){const n=e.document;t.change((t=>{if(!gu.has(n)){return}const i=gu.get(n);const o=i.get(e);t.removeAttribute("data-placeholder",o.hostElement);bu(t,o.hostElement);i.delete(e)}))}function pu(t,e){if(!e.hasClass("ck-placeholder")){t.addClass("ck-placeholder",e);return true}return false}function bu(t,e){if(e.hasClass("ck-placeholder")){t.removeClass("ck-placeholder",e);return true}return false}function ku(t,e){if(!t.isAttached()){return false}const n=Array.from(t.getChildren()).some((t=>!t.is("uiElement")));if(n){return false}const i=t.document;const o=i.selection;const r=o.anchor;if(i.isComposing&&r&&r.parent===t){return false}if(e){return true}if(!i.isFocused){return true}return!!r&&r.parent!==t}function wu(t,e){const n=gu.get(t);const i=[];let o=false;for(const[t,r]of n){if(r.isDirectHost){i.push(t);if(Au(e,t,r)){o=true}}}for(const[t,r]of n){if(r.isDirectHost){continue}const n=Cu(t);if(!n){continue}if(i.includes(n)){continue}r.hostElement=n;if(Au(e,t,r)){o=true}}return o}function Au(t,e,n){const{text:i,isDirectHost:o,hostElement:r}=n;let s=false;if(r.getAttribute("data-placeholder")!==i){t.setAttribute("data-placeholder",i,r);s=true}const a=o||e.childCount==1;if(a&&ku(r,n.keepOnFocus)){if(pu(t,r)){s=true}}else if(bu(t,r)){s=true}return s}function Cu(t){if(t.childCount){const e=t.getChild(0);if(e.is("element")&&!e.is("uiElement")&&!e.is("attributeElement")){return e}}return null}class _u{is(){throw new Error("is() method is abstract")}}var vu=4;function yu(t){return Va(t,vu)}const xu=yu;class Eu extends(K(_u)){constructor(t){super();this.document=t;this.parent=null}get index(){let t;if(!this.parent){return null}if((t=this.parent.getChildIndex(this))==-1){throw new z("view-node-not-found-in-parent",this)}return t}get nextSibling(){const t=this.index;return t!==null&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return t!==null&&this.parent.getChild(t-1)||null}get root(){let t=this;while(t.parent){t=t.parent}return t}isAttached(){return this.root.is("rootElement")}getPath(){const t=[];let e=this;while(e.parent){t.unshift(e.index);e=e.parent}return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;while(n){e[t.parentFirst?"push":"unshift"](n);n=n.parent}return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e);const i=t.getAncestors(e);let o=0;while(n[o]==i[o]&&n[o]){o++}return o===0?null:n[o-1]}isBefore(t){if(this==t){return false}if(this.root!==t.root){return false}const e=this.getPath();const n=t.getPath();const i=Dt(e,n);switch(i){case"prefix":return true;case"extension":return false;default:return e[i]<n[i]}}isAfter(t){if(this==t){return false}if(this.root!==t.root){return false}return!this.isBefore(t)}_remove(){this.parent._removeChildren(this.index)}_fireChange(t,e){this.fire(`change:${t}`,e);if(this.parent){this.parent._fireChange(t,e)}}toJSON(){const t=xu(this);delete t.parent;return t}}Eu.prototype.is=function(t){return t==="node"||t==="view:node"};class Du extends Eu{constructor(t,e){super(t);this._textData=e}get data(){return this._textData}get _data(){return this.data}set _data(t){this._fireChange("text",this);this._textData=t}isSimilar(t){if(!(t instanceof Du)){return false}return this===t||this.data===t.data}_clone(){return new Du(this.document,this.data)}}Du.prototype.is=function(t){return t==="$text"||t==="view:$text"||t==="text"||t==="view:text"||t==="node"||t==="view:node"};class Su extends _u{constructor(t,e,n){super();this.textNode=t;if(e<0||e>t.data.length){throw new z("view-textproxy-wrong-offsetintext",this)}if(n<0||e+n>t.data.length){throw new z("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;while(n!==null){e[t.parentFirst?"push":"unshift"](n);n=n.parent}return e}}Su.prototype.is=function(t){return t==="$textProxy"||t==="view:$textProxy"||t==="textProxy"||t==="view:textProxy"};class Tu{constructor(...t){this._patterns=[];this.add(...t)}add(...t){for(let e of t){if(typeof e=="string"||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=Iu(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=Iu(n,t);if(i){e.push({element:n,pattern:t,match:i})}}}return e.length>0?e:null}getElementName(){if(this._patterns.length!==1){return null}const t=this._patterns[0];const e=t.name;return typeof t!="function"&&e&&!(e instanceof RegExp)?e:null}}function Iu(t,e){if(typeof e=="function"){return e(t)}const n={};if(e.name){n.name=Mu(e.name,t.name);if(!n.name){return null}}if(e.attributes){n.attributes=Pu(e.attributes,t);if(!n.attributes){return null}}if(e.classes){n.classes=Ou(e.classes,t);if(!n.classes){return null}}if(e.styles){n.styles=Ru(e.styles,t);if(!n.styles){return null}}return n}function Mu(t,e){if(t instanceof RegExp){return!!e.match(t)}return t===e}function Bu(t,e,n){const i=Lu(t);const o=Array.from(e);const r=[];i.forEach((([t,e])=>{o.forEach((i=>{if(Nu(t,i)&&zu(e,i,n)){r.push(i)}}))}));if(!i.length||r.length<i.length){return undefined}return r}function Lu(t){if(Array.isArray(t)){return t.map((t=>{if(pe(t)){if(t.key===undefined||t.value===undefined){P("matcher-pattern-missing-key-or-value",t)}return[t.key,t.value]}return[t,true]}))}if(pe(t)){return Object.entries(t)}return[[t,true]]}function Nu(t,e){return t===true||t===e||t instanceof RegExp&&e.match(t)}function zu(t,e,n){if(t===true){return true}const i=n(e);return t===i||t instanceof RegExp&&!!String(i).match(t)}function Pu(t,e){const n=new Set(e.getAttributeKeys());if(pe(t)){if(t.style!==undefined){P("matcher-pattern-deprecated-attributes-style-key",t)}if(t.class!==undefined){P("matcher-pattern-deprecated-attributes-class-key",t)}}else{n.delete("style");n.delete("class")}return Bu(t,n,(t=>e.getAttribute(t)))}function Ou(t,e){return Bu(t,e.getClassNames(),(()=>{}))}function Ru(t,e){return Bu(t,e.getStyleNames(true),(t=>e.getStyle(t)))}var Vu="[object Symbol]";function ju(t){return typeof t=="symbol"||te(t)&&Zt(t)==Vu}const Fu=ju;var Hu=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Uu=/^\w*$/;function Wu(t,e){if(Jt(t)){return false}var n=typeof t;if(n=="number"||n=="symbol"||n=="boolean"||t==null||Fu(t)){return true}return Uu.test(t)||!Hu.test(t)||e!=null&&t in Object(e)}const qu=Wu;var Gu="Expected a function";function $u(t,e){if(typeof t!="function"||e!=null&&typeof e!="function"){throw new TypeError(Gu)}var n=function(){var i=arguments,o=e?e.apply(this,i):i[0],r=n.cache;if(r.has(o)){return r.get(o)}var s=t.apply(this,i);n.cache=r.set(o,s)||r;return s};n.cache=new($u.Cache||ei);return n}$u.Cache=ei;const Ku=$u;var Yu=500;function Zu(t){var e=Ku(t,(function(t){if(n.size===Yu){n.clear()}return t}));var n=e.cache;return e}const Qu=Zu;var Ju=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;var Xu=/\\(\\)?/g;var th=Qu((function(t){var e=[];if(t.charCodeAt(0)===46){e.push("")}t.replace(Ju,(function(t,n,i,o){e.push(i?o.replace(Xu,"$1"):n||t)}));return e}));const eh=th;function nh(t,e){var n=-1,i=t==null?0:t.length,o=Array(i);while(++n<i){o[n]=e(t[n],n,t)}return o}const ih=nh;var oh=1/0;var rh=zt?zt.prototype:undefined,sh=rh?rh.toString:undefined;function ah(t){if(typeof t=="string"){return t}if(Jt(t)){return ih(t,ah)+""}if(Fu(t)){return sh?sh.call(t):""}var e=t+"";return e=="0"&&1/t==-oh?"-0":e}const lh=ah;function ch(t){return t==null?"":lh(t)}const dh=ch;function uh(t,e){if(Jt(t)){return t}return qu(t,e)?[t]:eh(dh(t))}const hh=uh;function gh(t){var e=t==null?0:t.length;return e?t[e-1]:undefined}const mh=gh;var fh=1/0;function ph(t){if(typeof t=="string"||Fu(t)){return t}var e=t+"";return e=="0"&&1/t==-fh?"-0":e}const bh=ph;function kh(t,e){e=hh(e,t);var n=0,i=e.length;while(t!=null&&n<i){t=t[bh(e[n++])]}return n&&n==i?t:undefined}const wh=kh;function Ah(t,e,n){var i=-1,o=t.length;if(e<0){e=-e>o?0:o+e}n=n>o?o:n;if(n<0){n+=o}o=e>n?0:n-e>>>0;e>>>=0;var r=Array(o);while(++i<o){r[i]=t[i+e]}return r}const Ch=Ah;function _h(t,e){return e.length<2?t:wh(t,Ch(e,0,-1))}const vh=_h;function yh(t,e){e=hh(e,t);t=vh(t,e);return t==null||delete t[bh(mh(e))]}const xh=yh;function Eh(t,e){return t==null?true:xh(t,e)}const Dh=Eh;function Sh(t,e,n){var i=t==null?undefined:wh(t,e);return i===undefined?n:i}const Th=Sh;function Ih(t,e,n){if(n!==undefined&&!Ae(t[e],n)||n===undefined&&!(e in t)){hi(t,e,n)}}const Mh=Ih;function Bh(t){return function(e,n,i){var o=-1,r=Object(e),s=i(e),a=s.length;while(a--){var l=s[t?a:++o];if(n(r[l],l,r)===false){break}}return e}}const Lh=Bh;var Nh=Lh();const zh=Nh;function Ph(t){return te(t)&&Wo(t)}const Oh=Ph;function Rh(t,e){if(e==="constructor"&&typeof t[e]==="function"){return}if(e=="__proto__"){return}return t[e]}const Vh=Rh;function jh(t){return ki(t,nr(t))}const Fh=jh;function Hh(t,e,n,i,o,r,s){var a=Vh(t,n),l=Vh(e,n),c=s.get(l);if(c){Mh(t,n,c);return}var d=r?r(a,l,n+"",t,e,s):undefined;var u=d===undefined;if(u){var h=Jt(l),g=!h&&Oi(l),m=!h&&!g&&To(l);d=l;if(h||g||m){if(Jt(a)){d=a}else if(Oh(a)){d=gr(a)}else if(g){u=false;d=ur(l,true)}else if(m){u=false;d=vs(l,true)}else{d=[]}}else if(pe(l)||Si(l)){d=a;if(Si(a)){d=Fh(a)}else if(!at(a)||Ke(a)){d=Ys(l)}}else{u=false}}if(u){s.set(l,d);o(d,l,i,r,s);s["delete"](l)}Mh(t,n,d)}const Uh=Hh;function Wh(t,e,n,i,o){if(t===e){return}zh(e,(function(r,s){o||(o=new si);if(at(r)){Uh(t,e,s,n,Wh,i,o)}else{var a=i?i(Vh(t,s),r,s+"",t,e,o):undefined;if(a===undefined){a=r}Mh(t,s,a)}}),nr)}const qh=Wh;function Gh(t){return t}const $h=Gh;function Kh(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)}const Yh=Kh;var Zh=Math.max;function Qh(t,e,n){e=Zh(e===undefined?t.length-1:e,0);return function(){var i=arguments,o=-1,r=Zh(i.length-e,0),s=Array(r);while(++o<r){s[o]=i[e+o]}o=-1;var a=Array(e+1);while(++o<e){a[o]=i[o]}a[e]=n(s);return Yh(t,this,a)}}const Jh=Qh;function Xh(t){return function(){return t}}const tg=Xh;var eg=!di?$h:function(t,e){return di(t,"toString",{configurable:true,enumerable:false,value:tg(e),writable:true})};const ng=eg;var ig=800,og=16;var rg=Date.now;function sg(t){var e=0,n=0;return function(){var i=rg(),o=og-(i-n);n=i;if(o>0){if(++e>=ig){return arguments[0]}}else{e=0}return t.apply(undefined,arguments)}}const ag=sg;var lg=ag(ng);const cg=lg;function dg(t,e){return cg(Jh(t,e,$h),t+"")}const ug=dg;function hg(t,e,n){if(!at(n)){return false}var i=typeof e;if(i=="number"?Wo(n)&&Fi(e,n.length):i=="string"&&e in n){return Ae(n[e],t)}return false}const gg=hg;function mg(t){return ug((function(e,n){var i=-1,o=n.length,r=o>1?n[o-1]:undefined,s=o>2?n[2]:undefined;r=t.length>3&&typeof r=="function"?(o--,r):undefined;if(s&&gg(n[0],n[1],s)){r=o<3?undefined:r;o=1}e=Object(e);while(++i<o){var a=n[i];if(a){t(e,a,i,r)}}return e}))}const fg=mg;var pg=fg((function(t,e,n){qh(t,e,n)}));const bg=pg;function kg(t,e,n,i){if(!at(t)){return t}e=hh(e,t);var o=-1,r=e.length,s=r-1,a=t;while(a!=null&&++o<r){var l=bh(e[o]),c=n;if(l==="__proto__"||l==="constructor"||l==="prototype"){return t}if(o!=s){var d=a[l];c=i?i(d,l,a):undefined;if(c===undefined){c=at(d)?d:Fi(e[o+1])?[]:{}}}pi(a,l,c);a=a[l]}return t}const wg=kg;function Ag(t,e,n){return t==null?t:wg(t,e,n)}const Cg=Ag;class _g{constructor(t){this._styles={};this._styleProcessor=t}get isEmpty(){const t=Object.entries(this._styles);const e=Array.from(t);return!e.length}get size(){if(this.isEmpty){return 0}return this.getStyleNames().length}setTo(t){this.clear();const e=Array.from(yg(t).entries());for(const[t,n]of e){this._styleProcessor.toNormalizedForm(t,n,this._styles)}}has(t){if(this.isEmpty){return false}const e=this._styleProcessor.getReducedForm(t,this._styles);const n=e.find((([e])=>e===t));return Array.isArray(n)}set(t,e){if(at(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=xg(t);Dh(this._styles,e);delete this._styles[t];this._cleanEmptyObjectsOnPath(e)}getNormalized(t){return this._styleProcessor.getNormalized(t,this._styles)}toString(){if(this.isEmpty){return""}return this._getStylesEntries().map((t=>t.join(":"))).sort().join(";")+";"}getAsString(t){if(this.isEmpty){return}if(this._styles[t]&&!at(this._styles[t])){return this._styles[t]}const e=this._styleProcessor.getReducedForm(t,this._styles);const n=e.find((([e])=>e===t));if(Array.isArray(n)){return n[1]}}getStyleNames(t=false){if(this.isEmpty){return[]}if(t){return this._styleProcessor.getStyleNames(this._styles)}const e=this._getStylesEntries();return e.map((([t])=>t))}clear(){this._styles={}}_getStylesEntries(){const t=[];const 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(".");const n=e.length>1;if(!n){return}const i=e.splice(0,e.length-1).join(".");const o=Th(this._styles,i);if(!o){return}const r=!Array.from(Object.keys(o)).length;if(r){this.remove(i)}}}class vg{constructor(){this._normalizers=new Map;this._extractors=new Map;this._reducers=new Map;this._consumables=new Map}toNormalizedForm(t,e,n){if(at(e)){Eg(n,xg(t),e);return}if(this._normalizers.has(t)){const i=this._normalizers.get(t);const{path:o,value:r}=i(e);Eg(n,o,r)}else{Eg(n,t,e)}}getNormalized(t,e){if(!t){return bg({},e)}if(e[t]!==undefined){return e[t]}if(this._extractors.has(t)){const n=this._extractors.get(t);if(typeof n==="string"){return Th(e,n)}const i=n(t,e);if(i){return i}}return Th(e,xg(t))}getReducedForm(t,e){const n=this.getNormalized(t,e);if(n===undefined){return[]}if(this._reducers.has(t)){const e=this._reducers.get(t);return e(n)}return[[t,n]]}getStyleNames(t){const e=Array.from(this._consumables.keys()).filter((e=>{const n=this.getNormalized(e,t);if(n&&typeof n=="object"){return Object.keys(n).length}return n}));const n=new Set([...e,...Object.keys(t)]);return Array.from(n.values())}getRelatedStyles(t){return this._consumables.get(t)||[]}setNormalizer(t,e){this._normalizers.set(t,e)}setExtractor(t,e){this._extractors.set(t,e)}setReducer(t,e){this._reducers.set(t,e)}setStyleRelation(t,e){this._mapStyleNames(t,e);for(const n of e){this._mapStyleNames(n,[t])}}_mapStyleNames(t,e){if(!this._consumables.has(t)){this._consumables.set(t,[])}this._consumables.get(t).push(...e)}}function yg(t){let e=null;let n=0;let i=0;let o=null;const r=new Map;if(t===""){return r}if(t.charAt(t.length-1)!=";"){t=t+";"}for(let s=0;s<t.length;s++){const a=t.charAt(s);if(e===null){switch(a){case":":if(!o){o=t.substr(n,s-n);i=s+1}break;case'"':case"'":e=a;break;case";":{const e=t.substr(i,s-i);if(o){r.set(o.trim(),e.trim())}o=null;n=s+1;break}}}else if(a===e){e=null}}return r}function xg(t){return t.replace("-",".")}function Eg(t,e,n){let i=n;if(at(n)){i=bg({},Th(t,e),n)}Cg(t,e,i)}class Dg extends Eu{constructor(t,e,n,i){super(t);this.name=e;this._attrs=Sg(n);this._children=[];if(i){this._insertChild(0,i)}this._classes=new Set;if(this._attrs.has("class")){const t=this._attrs.get("class");Tg(this._classes,t);this._attrs.delete("class")}this._styles=new _g(this.document.stylesProcessor);if(this._attrs.has("style")){this._styles.setTo(this._attrs.get("style"));this._attrs.delete("style")}this._customProperties=new Map;this._unsafeAttributesToRender=[]}get childCount(){return this._children.length}get isEmpty(){return this._children.length===0}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}*getAttributeKeys(){if(this._classes.size>0){yield"class"}if(!this._styles.isEmpty){yield"style"}yield*this._attrs.keys()}*getAttributes(){yield*this._attrs.entries();if(this._classes.size>0){yield["class",this.getAttribute("class")]}if(!this._styles.isEmpty){yield["style",this.getAttribute("style")]}}getAttribute(t){if(t=="class"){if(this._classes.size>0){return[...this._classes].join(" ")}return undefined}if(t=="style"){const t=this._styles.toString();return t==""?undefined:t}return this._attrs.get(t)}hasAttribute(t){if(t=="class"){return this._classes.size>0}if(t=="style"){return!this._styles.isEmpty}return this._attrs.has(t)}isSimilar(t){if(!(t instanceof Dg)){return false}if(this===t){return true}if(this.name!=t.name){return false}if(this._attrs.size!==t._attrs.size||this._classes.size!==t._classes.size||this._styles.size!==t._styles.size){return false}for(const[e,n]of this._attrs){if(!t._attrs.has(e)||t._attrs.get(e)!==n){return false}}for(const e of this._classes){if(!t._classes.has(e)){return false}}for(const e of this._styles.getStyleNames()){if(!t._styles.has(e)||t._styles.getAsString(e)!==this._styles.getAsString(e)){return false}}return true}hasClass(...t){for(const e of t){if(!this._classes.has(e)){return false}}return true}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 false}}return true}findAncestor(...t){const e=new Tu(...t);let n=this.parent;while(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(",");const e=this._styles.toString();const 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=false){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);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;return n}_appendChild(t){return this._insertChild(this.childCount,t)}_insertChild(t,e){this._fireChange("children",this);let n=0;const i=Ig(this.document,e);for(const e of i){if(e.parent!==null){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;n<t+e;n++){this._children[n].parent=null}return this._children.splice(t,e)}_setAttribute(t,e){const n=String(e);this._fireChange("attributes",this);if(t=="class"){Tg(this._classes,n)}else if(t=="style"){this._styles.setTo(n)}else{this._attrs.set(t,n)}}_removeAttribute(t){this._fireChange("attributes",this);if(t=="class"){if(this._classes.size>0){this._classes.clear();return true}return false}if(t=="style"){if(!this._styles.isEmpty){this._styles.clear();return true}return false}return this._attrs.delete(t)}_addClass(t){this._fireChange("attributes",this);for(const e of Xl(t)){this._classes.add(e)}}_removeClass(t){this._fireChange("attributes",this);for(const e of Xl(t)){this._classes.delete(e)}}_setStyle(t,e){this._fireChange("attributes",this);if(pe(t)){this._styles.set(t)}else{this._styles.set(t,e)}}_removeStyle(t){this._fireChange("attributes",this);for(const e of Xl(t)){this._styles.remove(e)}}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}Dg.prototype.is=function(t,e){if(!e){return t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="element"||t==="view:element")}};function Sg(t){const e=mc(t);for(const[t,n]of e){if(n===null){e.delete(t)}else if(typeof n!="string"){e.set(t,String(n))}}return e}function Tg(t,e){const n=e.split(/\s+/);t.clear();n.forEach((e=>t.add(e)))}function Ig(t,e){if(typeof e=="string"){return[new Du(t,e)]}if(!St(e)){e=[e]}return Array.from(e).map((e=>{if(typeof e=="string"){return new Du(t,e)}if(e instanceof Su){return new Du(t,e.data)}return e}))}class Mg extends Dg{constructor(...t){super(...t);this.getFillerOffset=Bg}}Mg.prototype.is=function(t,e){if(!e){return t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element")}};function Bg(){const t=[...this.getChildren()];const 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}class Lg extends(mt(Mg)){constructor(...t){super(...t);const e=t[0];this.set("isReadOnly",false);this.set("isFocused",false);this.bind("isReadOnly").to(e);this.bind("isFocused").to(e,"isFocused",(t=>t&&e.selection.editableElement==this));this.listenTo(e.selection,"change",(()=>{this.isFocused=e.isFocused&&e.selection.editableElement==this}))}destroy(){this.stopListening()}}Lg.prototype.is=function(t,e){if(!e){return t==="editableElement"||t==="view:editableElement"||t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="editableElement"||t==="view:editableElement"||t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element")}};const Ng=Symbol("rootName");class zg extends Lg{constructor(t,e){super(t,e);this.rootName="main"}get rootName(){return this.getCustomProperty(Ng)}set rootName(t){this._setCustomProperty(Ng,t)}set _name(t){this.name=t}}zg.prototype.is=function(t,e){if(!e){return 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"}else{return e===this.name&&(t==="rootElement"||t==="view:rootElement"||t==="editableElement"||t==="view:editableElement"||t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element")}};class Pg{constructor(t={}){if(!t.boundaries&&!t.startPosition){throw new z("view-tree-walker-no-start-position",null)}if(t.direction&&t.direction!="forward"&&t.direction!="backward"){throw new z("view-tree-walker-unknown-direction",t.startPosition,{direction:t.direction})}this.boundaries=t.boundaries||null;if(t.startPosition){this.position=Og._createAt(t.startPosition)}else{this.position=Og._createAt(t.boundaries[t.direction=="backward"?"end":"start"])}this.direction=t.direction||"forward";this.singleCharacters=!!t.singleCharacters;this.shallow=!!t.shallow;this.ignoreElementEnd=!!t.ignoreElementEnd;this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null;this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null}[Symbol.iterator](){return this}skip(t){let e,n,i;do{i=this.position;({done:e,value:n}=this.next())}while(!e&&t(n));if(!e){this.position=i}}next(){if(this.direction=="forward"){return this._next()}else{return this._previous()}}_next(){let t=this.position.clone();const e=this.position;const n=t.parent;if(n.parent===null&&t.offset===n.childCount){return{done:true,value:undefined}}if(n===this._boundaryEndParent&&t.offset==this.boundaries.end.offset){return{done:true,value:undefined}}let i;if(n instanceof Du){if(t.isAtEnd){this.position=Og._createAfter(n);return this._next()}i=n.data[t.offset]}else{i=n.getChild(t.offset)}if(i instanceof Dg){if(!this.shallow){t=new Og(i,0)}else{t.offset++}this.position=t;return this._formatReturnValue("elementStart",i,e,t,1)}else if(i instanceof Du){if(this.singleCharacters){t=new Og(i,0);this.position=t;return this._next()}else{let n=i.data.length;let o;if(i==this._boundaryEndParent){n=this.boundaries.end.offset;o=new Su(i,0,n);t=Og._createAfter(o)}else{o=new Su(i,0,i.data.length);t.offset++}this.position=t;return this._formatReturnValue("text",o,e,t,n)}}else if(typeof i=="string"){let i;if(this.singleCharacters){i=1}else{const e=n===this._boundaryEndParent?this.boundaries.end.offset:n.data.length;i=e-t.offset}const o=new Su(n,t.offset,i);t.offset+=i;this.position=t;return this._formatReturnValue("text",o,e,t,i)}else{t=Og._createAfter(n);this.position=t;if(this.ignoreElementEnd){return this._next()}else{return this._formatReturnValue("elementEnd",n,e,t)}}}_previous(){let t=this.position.clone();const e=this.position;const n=t.parent;if(n.parent===null&&t.offset===0){return{done:true,value:undefined}}if(n==this._boundaryStartParent&&t.offset==this.boundaries.start.offset){return{done:true,value:undefined}}let i;if(n instanceof Du){if(t.isAtStart){this.position=Og._createBefore(n);return this._previous()}i=n.data[t.offset-1]}else{i=n.getChild(t.offset-1)}if(i instanceof Dg){if(!this.shallow){t=new Og(i,i.childCount);this.position=t;if(this.ignoreElementEnd){return this._previous()}else{return this._formatReturnValue("elementEnd",i,e,t)}}else{t.offset--;this.position=t;return this._formatReturnValue("elementStart",i,e,t,1)}}else if(i instanceof Du){if(this.singleCharacters){t=new Og(i,i.data.length);this.position=t;return this._previous()}else{let n=i.data.length;let o;if(i==this._boundaryStartParent){const e=this.boundaries.start.offset;o=new Su(i,e,i.data.length-e);n=o.data.length;t=Og._createBefore(o)}else{o=new Su(i,0,i.data.length);t.offset--}this.position=t;return this._formatReturnValue("text",o,e,t,n)}}else if(typeof i=="string"){let i;if(!this.singleCharacters){const e=n===this._boundaryStartParent?this.boundaries.start.offset:0;i=t.offset-e}else{i=1}t.offset-=i;const o=new Su(n,t.offset,i);this.position=t;return this._formatReturnValue("text",o,e,t,i)}else{t=Og._createBefore(n);this.position=t;return this._formatReturnValue("elementStart",n,e,t,1)}}_formatReturnValue(t,e,n,i,o){if(e instanceof Su){if(e.offsetInText+e.data.length==e.textNode.data.length){if(this.direction=="forward"&&!(this.boundaries&&this.boundaries.end.isEqual(this.position))){i=Og._createAfter(e.textNode);this.position=i}else{n=Og._createAfter(e.textNode)}}if(e.offsetInText===0){if(this.direction=="backward"&&!(this.boundaries&&this.boundaries.start.isEqual(this.position))){i=Og._createBefore(e.textNode);this.position=i}else{n=Og._createBefore(e.textNode)}}}return{done:false,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}}class Og extends _u{constructor(t,e){super();this.parent=t;this.offset=e}get nodeAfter(){if(this.parent.is("$text")){return null}return this.parent.getChild(this.offset)||null}get nodeBefore(){if(this.parent.is("$text")){return null}return this.parent.getChild(this.offset-1)||null}get isAtStart(){return this.offset===0}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;while(!(t instanceof Lg)){if(t.parent){t=t.parent}else{return null}}return t}getShiftedBy(t){const e=Og._createAt(this);const n=e.offset+t;e.offset=n<0?0:n;return e}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new Pg(e);n.skip(t);return n.position}getAncestors(){if(this.parent.is("documentFragment")){return[this.parent]}else{return this.parent.getAncestors({includeSelf:true})}}getCommonAncestor(t){const e=this.getAncestors();const n=t.getAncestors();let i=0;while(e[i]==n[i]&&e[i]){i++}return i===0?null:e[i-1]}isEqual(t){return this.parent==t.parent&&this.offset==t.offset}isBefore(t){return this.compareWith(t)=="before"}isAfter(t){return this.compareWith(t)=="after"}compareWith(t){if(this.root!==t.root){return"different"}if(this.isEqual(t)){return"same"}const e=this.parent.is("node")?this.parent.getPath():[];const n=t.parent.is("node")?t.parent.getPath():[];e.push(this.offset);n.push(t.offset);const i=Dt(e,n);switch(i){case"prefix":return"before";case"extension":return"after";default:return e[i]<n[i]?"before":"after"}}getWalker(t={}){t.startPosition=this;return new Pg(t)}clone(){return new Og(this.parent,this.offset)}static _createAt(t,e){if(t instanceof Og){return new this(t.parent,t.offset)}else{const n=t;if(e=="end"){e=n.is("$text")?n.data.length:n.childCount}else if(e=="before"){return this._createBefore(n)}else if(e=="after"){return this._createAfter(n)}else if(e!==0&&!e){throw new z("view-createpositionat-offset-required",n)}return new Og(n,e)}}static _createAfter(t){if(t.is("$textProxy")){return new Og(t.textNode,t.offsetInText+t.data.length)}if(!t.parent){throw new z("view-position-after-root",t,{root:t})}return new Og(t.parent,t.index+1)}static _createBefore(t){if(t.is("$textProxy")){return new Og(t.textNode,t.offsetInText)}if(!t.parent){throw new z("view-position-before-root",t,{root:t})}return new Og(t.parent,t.index)}}Og.prototype.is=function(t){return t==="position"||t==="view:position"};class Rg extends _u{constructor(t,e=null){super();this.start=t.clone();this.end=e?e.clone():t.clone()}*[Symbol.iterator](){yield*new Pg({boundaries:this,ignoreElementEnd:true})}get isCollapsed(){return this.start.isEqual(this.end)}get isFlat(){return this.start.parent===this.end.parent}get root(){return this.start.root}getEnlarged(){let t=this.start.getLastMatchingPosition(Vg,{direction:"backward"});let e=this.end.getLastMatchingPosition(Vg);if(t.parent.is("$text")&&t.isAtStart){t=Og._createBefore(t.parent)}if(e.parent.is("$text")&&e.isAtEnd){e=Og._createAfter(e.parent)}return new Rg(t,e)}getTrimmed(){let t=this.start.getLastMatchingPosition(Vg);if(t.isAfter(this.end)||t.isEqual(this.end)){return new Rg(t,t)}let e=this.end.getLastMatchingPosition(Vg,{direction:"backward"});const n=t.nodeAfter;const i=e.nodeBefore;if(n&&n.is("$text")){t=new Og(n,0)}if(i&&i.is("$text")){e=new Og(i,i.data.length)}return new Rg(t,e)}isEqual(t){return this==t||this.start.isEqual(t.start)&&this.end.isEqual(t.end)}containsPosition(t){return t.isAfter(this.start)&&t.isBefore(this.end)}containsRange(t,e=false){if(t.isCollapsed){e=false}const n=this.containsPosition(t.start)||e&&this.start.isEqual(t.start);const i=this.containsPosition(t.end)||e&&this.end.isEqual(t.end);return n&&i}getDifference(t){const e=[];if(this.isIntersecting(t)){if(this.containsPosition(t.start)){e.push(new Rg(this.start,t.start))}if(this.containsPosition(t.end)){e.push(new Rg(t.end,this.end))}}else{e.push(this.clone())}return e}getIntersection(t){if(this.isIntersecting(t)){let e=this.start;let n=this.end;if(this.containsPosition(t.start)){e=t.start}if(this.containsPosition(t.end)){n=t.end}return new Rg(e,n)}return null}getWalker(t={}){t.boundaries=this;return new Pg(t)}getCommonAncestor(){return this.start.getCommonAncestor(this.end)}getContainedElement(){if(this.isCollapsed){return null}let t=this.start.nodeAfter;let e=this.end.nodeBefore;if(this.start.parent.is("$text")&&this.start.isAtEnd&&this.start.parent.nextSibling){t=this.start.parent.nextSibling}if(this.end.parent.is("$text")&&this.end.isAtStart&&this.end.parent.previousSibling){e=this.end.parent.previousSibling}if(t&&t.is("element")&&t===e){return t}return null}clone(){return new Rg(this.start,this.end)}*getItems(t={}){t.boundaries=this;t.ignoreElementEnd=true;const e=new Pg(t);for(const t of e){yield t.item}}*getPositions(t={}){t.boundaries=this;const e=new Pg(t);yield e.position;for(const t of e){yield t.nextPosition}}isIntersecting(t){return this.start.isBefore(t.end)&&this.end.isAfter(t.start)}static _createFromParentsAndOffsets(t,e,n,i){return new this(new Og(t,e),new Og(n,i))}static _createFromPositionAndShift(t,e){const n=t;const i=t.getShiftedBy(e);return e>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(Og._createBefore(t),e)}}Rg.prototype.is=function(t){return t==="range"||t==="view:range"};function Vg(t){if(t.item.is("attributeElement")||t.item.is("uiElement")){return true}return false}class jg extends(K(_u)){constructor(...t){super();this._ranges=[];this._lastRangeBackward=false;this._isFake=false;this._fakeSelectionLabel="";if(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];const e=this._lastRangeBackward?t.end:t.start;return e.clone()}get focus(){if(!this._ranges.length){return null}const t=this._ranges[this._ranges.length-1];const e=this._lastRangeBackward?t.start:t.end;return e.clone()}get isCollapsed(){return this.rangeCount===1&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}get editableElement(){if(this.anchor){return this.anchor.editableElement}return null}*getRanges(){for(const t of this._ranges){yield t.clone()}}getFirstRange(){let t=null;for(const e of this._ranges){if(!t||e.start.isBefore(t.start)){t=e}}return t?t.clone():null}getLastRange(){let t=null;for(const e of this._ranges){if(!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 false}if(this.isFake&&this.fakeSelectionLabel!=t.fakeSelectionLabel){return false}if(this.rangeCount!=t.rangeCount){return false}else if(this.rangeCount===0){return true}if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus)){return false}for(const e of this._ranges){let n=false;for(const i of t._ranges){if(e.isEqual(i)){n=true;break}}if(!n){return false}}return true}isSimilar(t){if(this.isBackward!=t.isBackward){return false}const e=Et(this.getRanges());const n=Et(t.getRanges());if(e!=n){return false}if(e==0){return true}for(let e of this.getRanges()){e=e.getTrimmed();let n=false;for(let i of t.getRanges()){i=i.getTrimmed();if(e.start.isEqual(i.start)&&e.end.isEqual(i.end)){n=true;break}}if(!n){return false}}return true}getSelectedElement(){if(this.rangeCount!==1){return null}return this.getFirstRange().getContainedElement()}setTo(...t){let[e,n,i]=t;if(typeof n=="object"){i=n;n=undefined}if(e===null){this._setRanges([]);this._setFakeOptions(i)}else if(e instanceof jg||e instanceof Fg){this._setRanges(e.getRanges(),e.isBackward);this._setFakeOptions({fake:e.isFake,label:e.fakeSelectionLabel})}else if(e instanceof Rg){this._setRanges([e],i&&i.backward);this._setFakeOptions(i)}else if(e instanceof Og){this._setRanges([new Rg(e)]);this._setFakeOptions(i)}else if(e instanceof Eu){const t=!!i&&!!i.backward;let o;if(n===undefined){throw new z("view-selection-setto-required-second-parameter",this)}else if(n=="in"){o=Rg._createIn(e)}else if(n=="on"){o=Rg._createOn(e)}else{o=new Rg(Og._createAt(e,n))}this._setRanges([o],t);this._setFakeOptions(i)}else if(St(e)){this._setRanges(e,i&&i.backward);this._setFakeOptions(i)}else{throw new z("view-selection-setto-not-selectable",this)}this.fire("change")}setFocus(t,e){if(this.anchor===null){throw new z("view-selection-setfocus-no-ranges",this)}const n=Og._createAt(t,e);if(n.compareWith(this.focus)=="same"){return}const i=this.anchor;this._ranges.pop();if(n.compareWith(i)=="before"){this._addRange(new Rg(n,i),true)}else{this._addRange(new Rg(i,n))}this.fire("change")}_setRanges(t,e=false){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=false){if(!(t instanceof Rg)){throw new z("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 z("view-selection-range-intersects",this,{addedRange:t,intersectingRange:e})}}this._ranges.push(new Rg(t.start,t.end))}}jg.prototype.is=function(t){return t==="selection"||t==="view:selection"};class Fg extends(K(_u)){constructor(...t){super();this._selection=new jg;this._selection.delegate("change").to(this);if(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)}}Fg.prototype.is=function(t){return t==="selection"||t=="documentSelection"||t=="view:selection"||t=="view:documentSelection"};class Hg extends S{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 Ug=Symbol("bubbling contexts");function Wg(t){class e extends t{fire(t,...e){try{const n=t instanceof S?t:new S(this,t);const i=Kg(this);if(!i.size){return}qg(n,"capturing",this);if(Gg(i,"$capture",n,...e)){return n.return}const o=n.startRange||this.selection.getFirstRange();const r=o?o.getContainedElement():null;const s=r?Boolean($g(i,r)):false;let a=r||Yg(o);qg(n,"atTarget",a);if(!s){if(Gg(i,"$text",n,...e)){return n.return}qg(n,"bubbling",a)}while(a){if(a.is("rootElement")){if(Gg(i,"$root",n,...e)){return n.return}}else if(a.is("element")){if(Gg(i,a.name,n,...e)){return n.return}}if(Gg(i,a,n,...e)){return n.return}a=a.parent;qg(n,"bubbling",a)}qg(n,"bubbling",this);Gg(i,"$document",n,...e);return n.return}catch(t){z.rethrowUnexpectedError(t,this)}}_addEventListener(t,e,n){const i=Xl(n.context||"$document");const o=Kg(this);for(const r of i){let i=o.get(r);if(!i){i=new(K());o.set(r,i)}this.listenTo(i,t,e,n)}}_removeEventListener(t,e){const n=Kg(this);for(const i of n.values()){this.stopListening(i,t,e)}}}return e}{const t=Wg(Object);["fire","_addEventListener","_removeEventListener"].forEach((e=>{Wg[e]=t.prototype[e]}))}function qg(t,e,n){if(t instanceof Hg){t._eventPhase=e;t._currentTarget=n}}function Gg(t,e,n,...i){const o=typeof e=="string"?t.get(e):$g(t,e);if(!o){return false}o.fire(n,...i);return n.stop.called}function $g(t,e){for(const[n,i]of t){if(typeof n=="function"&&n(e)){return i}}return null}function Kg(t){if(!t[Ug]){t[Ug]=new Map}return t[Ug]}function Yg(t){if(!t){return null}const e=t.start.parent;const n=t.end.parent;const i=e.getPath();const o=n.getPath();return i.length>o.length?e:n}class Zg extends(Wg(mt())){constructor(t){super();this.selection=new Fg;this.roots=new cc({idProperty:"rootName"});this.stylesProcessor=t;this.set("isReadOnly",false);this.set("isFocused",false);this.set("isSelecting",false);this.set("isComposing",false);this._postFixers=new Set}getRoot(t="main"){return this.roots.get(t)}registerPostFixer(t){this._postFixers.add(t)}destroy(){this.roots.map((t=>t.destroy()));this.stopListening()}_callPostFixers(t){let e=false;do{for(const n of this._postFixers){e=n(t);if(e){break}}}while(e)}}const Qg=10;class Jg extends Dg{constructor(...t){super(...t);this.getFillerOffset=Xg;this._priority=Qg;this._id=null;this._clonesGroup=null}get priority(){return this._priority}get id(){return this._id}getElementsWithSameId(){if(this.id===null){throw new z("attribute-element-get-elements-with-same-id-no-id",this)}return new Set(this._clonesGroup)}isSimilar(t){if(this.id!==null||t.id!==null){return this.id===t.id}return super.isSimilar(t)&&this.priority==t.priority}_clone(t=false){const e=super._clone(t);e._priority=this._priority;e._id=this._id;return e}}Jg.DEFAULT_PRIORITY=Qg;Jg.prototype.is=function(t,e){if(!e){return t==="attributeElement"||t==="view:attributeElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="attributeElement"||t==="view:attributeElement"||t==="element"||t==="view:element")}};function Xg(){if(tm(this)){return null}let t=this.parent;while(t&&t.is("attributeElement")){if(tm(t)>1){return null}t=t.parent}if(!t||tm(t)>1){return null}return this.childCount}function tm(t){return Array.from(t.getChildren()).filter((t=>!t.is("uiElement"))).length}class em extends Dg{constructor(t,e,n,i){super(t,e,n,i);this.getFillerOffset=nm}_insertChild(t,e){if(e&&(e instanceof Eu||Array.from(e).length>0)){throw new z("view-emptyelement-cannot-add",[this,e])}return 0}}em.prototype.is=function(t,e){if(!e){return t==="emptyElement"||t==="view:emptyElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="emptyElement"||t==="view:emptyElement"||t==="element"||t==="view:element")}};function nm(){return null}class im extends Dg{constructor(...t){super(...t);this.getFillerOffset=rm}_insertChild(t,e){if(e&&(e instanceof Eu||Array.from(e).length>0)){throw new z("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}}im.prototype.is=function(t,e){if(!e){return t==="uiElement"||t==="view:uiElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="uiElement"||t==="view:uiElement"||t==="element"||t==="view:element")}};function om(t){t.document.on("arrowKey",((e,n)=>sm(e,n,t.domConverter)),{priority:"low"})}function rm(){return null}function sm(t,e,n){if(e.keyCode==Hl.arrowright){const t=e.domTarget.ownerDocument.defaultView.getSelection();const i=t.rangeCount==1&&t.getRangeAt(0).collapsed;if(i||e.shiftKey){const e=t.focusNode;const o=t.focusOffset;const r=n.domPositionToView(e,o);if(r===null){return}let s=false;const a=r.getLastMatchingPosition((t=>{if(t.item.is("uiElement")){s=true}if(t.item.is("uiElement")||t.item.is("attributeElement")){return true}return false}));if(s){const e=n.viewPositionToDom(a);if(i){t.collapse(e.parent,e.offset)}else{t.extend(e.parent,e.offset)}}}}}class am extends Dg{constructor(...t){super(...t);this.getFillerOffset=lm}_insertChild(t,e){if(e&&(e instanceof Eu||Array.from(e).length>0)){throw new z("view-rawelement-cannot-add",[this,e])}return 0}render(){}}am.prototype.is=function(t,e){if(!e){return t==="rawElement"||t==="view:rawElement"||t===this.name||t==="view:"+this.name||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="rawElement"||t==="view:rawElement"||t==="element"||t==="view:element")}};function lm(){return null}class cm extends(K(_u)){constructor(t,e){super();this.document=t;this._children=[];if(e){this._insertChild(0,e)}this._customProperties=new Map}[Symbol.iterator](){return this._children[Symbol.iterator]()}get childCount(){return this._children.length}get isEmpty(){return this.childCount===0}get root(){return this}get parent(){return null}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=dm(this.document,e);for(const e of i){if(e.parent!==null){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<t+e;n++){this._children[n].parent=null}return this._children.splice(t,e)}_fireChange(t,e){this.fire("change:"+t,e)}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}cm.prototype.is=function(t){return t==="documentFragment"||t==="view:documentFragment"};function dm(t,e){if(typeof e=="string"){return[new Du(t,e)]}if(!St(e)){e=[e]}return Array.from(e).map((e=>{if(typeof e=="string"){return new Du(t,e)}if(e instanceof Su){return new Du(t,e.data)}return e}))}class um{constructor(t){this.document=t;this._cloneGroups=new Map;this._slotFactory=null}setSelection(...t){this.document.selection._setTo(...t)}setSelectionFocus(...t){this.document.selection._setFocus(...t)}createDocumentFragment(t){return new cm(this.document,t)}createText(t){return new Du(this.document,t)}createAttributeElement(t,e,n={}){const i=new Jg(this.document,t,e);if(typeof n.priority==="number"){i._priority=n.priority}if(n.id){i._id=n.id}if(n.renderUnsafeAttributes){i._unsafeAttributesToRender.push(...n.renderUnsafeAttributes)}return i}createContainerElement(t,e,n={},i={}){let o=null;if(pe(n)){i=n}else{o=n}const r=new Mg(this.document,t,e,o);if(i.renderUnsafeAttributes){r._unsafeAttributesToRender.push(...i.renderUnsafeAttributes)}return r}createEditableElement(t,e,n={}){const i=new Lg(this.document,t,e);if(n.renderUnsafeAttributes){i._unsafeAttributesToRender.push(...n.renderUnsafeAttributes)}return i}createEmptyElement(t,e,n={}){const i=new em(this.document,t,e);if(n.renderUnsafeAttributes){i._unsafeAttributesToRender.push(...n.renderUnsafeAttributes)}return i}createUIElement(t,e,n){const i=new im(this.document,t,e);if(n){i.render=n}return i}createRawElement(t,e,n,i={}){const o=new am(this.document,t,e);if(n){o.render=n}if(i.renderUnsafeAttributes){o._unsafeAttributesToRender.push(...i.renderUnsafeAttributes)}return o}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){if(pe(t)&&n===undefined){e._setStyle(t)}else{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)}breakAttributes(t){if(t instanceof Og){return this._breakAttributes(t)}else{return this._breakAttributesRange(t)}}breakContainer(t){const e=t.parent;if(!e.is("containerElement")){throw new z("view-writer-break-non-container-element",this.document)}if(!e.parent){throw new z("view-writer-break-root",this.document)}if(t.isAtStart){return Og._createBefore(e)}else if(!t.isAtEnd){const n=e._clone(false);this.insert(Og._createAfter(e),n);const i=new Rg(t,Og._createAt(e,"end"));const o=new Og(n,0);this.move(i,o)}return Og._createAfter(e)}mergeAttributes(t){const e=t.offset;const n=t.parent;if(n.is("$text")){return t}if(n.is("attributeElement")&&n.childCount===0){const t=n.parent;const e=n.index;n._remove();this._removeFromClonedElementsGroup(n);return this.mergeAttributes(new Og(t,e))}const i=n.getChild(e-1);const o=n.getChild(e);if(!i||!o){return t}if(i.is("$text")&&o.is("$text")){return bm(i,o)}else if(i.is("attributeElement")&&o.is("attributeElement")&&i.isSimilar(o)){const t=i.childCount;i._appendChild(o.getChildren());o._remove();this._removeFromClonedElementsGroup(o);return this.mergeAttributes(new Og(i,t))}return t}mergeContainers(t){const e=t.nodeBefore;const n=t.nodeAfter;if(!e||!n||!e.is("containerElement")||!n.is("containerElement")){throw new z("view-writer-merge-containers-invalid-position",this.document)}const i=e.getChild(e.childCount-1);const o=i instanceof Du?Og._createAt(i,"end"):Og._createAt(e,"end");this.move(Rg._createIn(n),Og._createAt(e,"end"));this.remove(Rg._createOn(n));return o}insert(t,e){e=St(e)?[...e]:[e];wm(e,this.document);const n=e.reduce(((t,e)=>{const n=t[t.length-1];const i=!e.is("uiElement");if(!n||n.breakAttributes!=i){t.push({breakAttributes:i,nodes:[e]})}else{n.nodes.push(e)}return t}),[]);let i=null;let o=t;for(const{nodes:t,breakAttributes:e}of n){const n=this._insertNodes(o,t,e);if(!i){i=n.start}o=n.end}if(!i){return new Rg(t)}return new Rg(i,o)}remove(t){const e=t instanceof Rg?t:Rg._createOn(t);Cm(e,this.document);if(e.isCollapsed){return new cm(this.document)}const{start:n,end:i}=this._breakAttributesRange(e,true);const o=n.parent;const r=i.offset-n.offset;const s=o._removeChildren(n.offset,r);for(const t of s){this._removeFromClonedElementsGroup(t)}const a=this.mergeAttributes(n);e.start=a;e.end=a.clone();return new cm(this.document,s)}clear(t,e){Cm(t,this.document);const n=t.getWalker({direction:"backward",ignoreElementEnd:true});for(const i of n){const n=i.item;let o;if(n.is("element")&&e.isSimilar(n)){o=Rg._createOn(n)}else if(!i.nextPosition.isAfter(t.start)&&n.is("$textProxy")){const t=n.getAncestors().find((t=>t.is("element")&&e.isSimilar(t)));if(t){o=Rg._createIn(t)}}if(o){if(o.end.isAfter(t.end)){o.end=t.end}if(o.start.isBefore(t.start)){o.start=t.start}this.remove(o)}}}move(t,e){let n;if(e.isAfter(t.end)){e=this._breakAttributes(e,true);const i=e.parent;const o=i.childCount;t=this._breakAttributesRange(t,true);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 Jg)){throw new z("view-writer-wrap-invalid-attribute",this.document)}Cm(t,this.document);if(!t.isCollapsed){return this._wrapRange(t,e)}else{let n=t.start;if(n.parent.is("element")&&!hm(n.parent)){n=n.getLastMatchingPosition((t=>t.item.is("uiElement")))}n=this._wrapPosition(n,e);const i=this.document.selection;if(i.isCollapsed&&i.getFirstPosition().isEqual(t.start)){this.setSelection(n)}return new Rg(n)}}unwrap(t,e){if(!(e instanceof Jg)){throw new z("view-writer-unwrap-invalid-attribute",this.document)}Cm(t,this.document);if(t.isCollapsed){return t}const{start:n,end:i}=this._breakAttributesRange(t,true);const o=n.parent;const r=this._unwrapChildren(o,n.offset,i.offset,e);const s=this.mergeAttributes(r.start);if(!s.isEqual(r.start)){r.end.offset--}const a=this.mergeAttributes(r.end);return new Rg(s,a)}rename(t,e){const n=new Mg(this.document,t,e.getAttributes());this.insert(Og._createAfter(e),n);this.move(Rg._createIn(e),Og._createAt(n,0));this.remove(Rg._createOn(e));return n}clearClonedElementsGroup(t){this._cloneGroups.delete(t)}createPositionAt(t,e){return Og._createAt(t,e)}createPositionAfter(t){return Og._createAfter(t)}createPositionBefore(t){return Og._createBefore(t)}createRange(...t){return new Rg(...t)}createRangeOn(t){return Rg._createOn(t)}createRangeIn(t){return Rg._createIn(t)}createSelection(...t){return new jg(...t)}createSlot(t){if(!this._slotFactory){throw new z("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;if(n){i=gm(t)}else{i=t.parent.is("$text")?t.parent.parent:t.parent}if(!i){throw new z("view-writer-invalid-position-container",this.document)}let o;if(n){o=this._breakAttributes(t,true)}else{o=t.parent.is("$text")?pm(t):t}const r=i._insertChild(o.offset,e);for(const t of e){this._addToClonedElementsGroup(t)}const s=o.getShiftedBy(r);const a=this.mergeAttributes(o);if(!a.isEqual(o)){s.offset--}const l=this.mergeAttributes(s);return new Rg(a,l)}_wrapChildren(t,e,n,i){let o=e;const r=[];while(o<n){const e=t.getChild(o);const n=e.is("$text");const s=e.is("attributeElement");if(s&&this._wrapAttributeElement(i,e)){r.push(new Og(t,o))}else if(n||!s||mm(i,e)){const n=i._clone();e._remove();n._appendChild(e);t._insertChild(o,n);this._addToClonedElementsGroup(n);r.push(new Og(t,o))}else{this._wrapChildren(e,0,e.childCount,i)}o++}let s=0;for(const t of r){t.offset-=s;if(t.offset==e){continue}const i=this.mergeAttributes(t);if(!i.isEqual(t)){s++;n--}}return Rg._createFromParentsAndOffsets(t,e,t,n)}_unwrapChildren(t,e,n,i){let o=e;const r=[];while(o<n){const e=t.getChild(o);if(!e.is("attributeElement")){o++;continue}if(e.isSimilar(i)){const i=e.getChildren();const s=e.childCount;e._remove();t._insertChild(o,i);this._removeFromClonedElementsGroup(e);r.push(new Og(t,o),new Og(t,o+s));o+=s;n+=s-1;continue}if(this._unwrapAttributeElement(i,e)){r.push(new Og(t,o),new Og(t,o+1));o++;continue}this._unwrapChildren(e,0,e.childCount,i);o++}let s=0;for(const t of r){t.offset-=s;if(t.offset==e||t.offset==n){continue}const i=this.mergeAttributes(t);if(!i.isEqual(t)){s++;n--}}return Rg._createFromParentsAndOffsets(t,e,t,n)}_wrapRange(t,e){const{start:n,end:i}=this._breakAttributesRange(t,true);const o=n.parent;const r=this._wrapChildren(o,n.offset,i.offset,e);const s=this.mergeAttributes(r.start);if(!s.isEqual(r.start)){r.end.offset--}const a=this.mergeAttributes(r.end);return new Rg(s,a)}_wrapPosition(t,e){if(e.isSimilar(t.parent)){return fm(t.clone())}if(t.parent.is("$text")){t=pm(t)}const n=this.createAttributeElement("_wrapPosition-fake-element");n._priority=Number.POSITIVE_INFINITY;n.isSimilar=()=>false;t.parent._insertChild(t.offset,n);const i=new Rg(t,t.getShiftedBy(1));this.wrap(i,e);const o=new Og(n.parent,n.index);n._remove();const r=o.nodeBefore;const s=o.nodeAfter;if(r instanceof Du&&s instanceof Du){return bm(r,s)}return fm(o)}_wrapAttributeElement(t,e){if(!_m(t,e)){return false}if(t.name!==e.name||t.priority!==e.priority){return false}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}if(e.hasAttribute(n)&&e.getAttribute(n)!==t.getAttribute(n)){return false}}for(const n of t.getStyleNames()){if(e.hasStyle(n)&&e.getStyle(n)!==t.getStyle(n)){return false}}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}if(!e.hasAttribute(n)){this.setAttribute(n,t.getAttribute(n),e)}}for(const n of t.getStyleNames()){if(!e.hasStyle(n)){this.setStyle(n,t.getStyle(n),e)}}for(const n of t.getClassNames()){if(!e.hasClass(n)){this.addClass(n,e)}}return true}_unwrapAttributeElement(t,e){if(!_m(t,e)){return false}if(t.name!==e.name||t.priority!==e.priority){return false}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}if(!e.hasAttribute(n)||e.getAttribute(n)!==t.getAttribute(n)){return false}}if(!e.hasClass(...t.getClassNames())){return false}for(const n of t.getStyleNames()){if(!e.hasStyle(n)||e.getStyle(n)!==t.getStyle(n)){return false}}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}this.removeAttribute(n,e)}this.removeClass(Array.from(t.getClassNames()),e);this.removeStyle(Array.from(t.getStyleNames()),e);return true}_breakAttributesRange(t,e=false){const n=t.start;const i=t.end;Cm(t,this.document);if(t.isCollapsed){const n=this._breakAttributes(t.start,e);return new Rg(n,n)}const o=this._breakAttributes(i,e);const r=o.parent.childCount;const s=this._breakAttributes(n,e);o.offset+=o.parent.childCount-r;return new Rg(s,o)}_breakAttributes(t,e=false){const n=t.offset;const i=t.parent;if(t.parent.is("emptyElement")){throw new z("view-writer-cannot-break-empty-element",this.document)}if(t.parent.is("uiElement")){throw new z("view-writer-cannot-break-ui-element",this.document)}if(t.parent.is("rawElement")){throw new z("view-writer-cannot-break-raw-element",this.document)}if(!e&&i.is("$text")&&Am(i.parent)){return t.clone()}if(Am(i)){return t.clone()}if(i.is("$text")){return this._breakAttributes(pm(t),e)}const o=i.childCount;if(n==o){const t=new Og(i.parent,i.index+1);return this._breakAttributes(t,e)}else{if(n===0){const t=new Og(i.parent,i.index);return this._breakAttributes(t,e)}else{const t=i.index+1;const o=i._clone();i.parent._insertChild(t,o);this._addToClonedElementsGroup(o);const r=i.childCount-n;const s=i._removeChildren(n,r);o._appendChild(s);const a=new Og(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);if(!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);if(!n){return}n.delete(t)}}function hm(t){return Array.from(t.getChildren()).some((t=>!t.is("uiElement")))}function gm(t){let e=t.parent;while(!Am(e)){if(!e){return undefined}e=e.parent}return e}function mm(t,e){if(t.priority<e.priority){return true}else if(t.priority>e.priority){return false}return t.getIdentity()<e.getIdentity()}function fm(t){const e=t.nodeBefore;if(e&&e.is("$text")){return new Og(e,e.data.length)}const n=t.nodeAfter;if(n&&n.is("$text")){return new Og(n,0)}return t}function pm(t){if(t.offset==t.parent.data.length){return new Og(t.parent.parent,t.parent.index+1)}if(t.offset===0){return new Og(t.parent.parent,t.parent.index)}const e=t.parent.data.slice(t.offset);t.parent._data=t.parent.data.slice(0,t.offset);t.parent.parent._insertChild(t.parent.index+1,new Du(t.root.document,e));return new Og(t.parent.parent,t.parent.index+1)}function bm(t,e){const n=t.data.length;t._data+=e.data;e._remove();return new Og(t,n)}const km=[Du,Jg,Mg,em,am,im];function wm(t,e){for(const n of t){if(!km.some((t=>n instanceof t))){throw new z("view-writer-insert-invalid-node-type",e)}if(!n.is("$text")){wm(n.getChildren(),e)}}}function Am(t){return t&&(t.is("containerElement")||t.is("documentFragment"))}function Cm(t,e){const n=gm(t.start);const i=gm(t.end);if(!n||!i||n!==i){throw new z("view-writer-invalid-range-container",e)}}function _m(t,e){return t.id===null&&e.id===null}const vm=t=>t.createTextNode(" ");const ym=t=>{const e=t.createElement("span");e.dataset.ckeFiller="true";e.innerText=" ";return e};const xm=t=>{const e=t.createElement("br");e.dataset.ckeFiller="true";return e};const Em=7;const Dm="⁠".repeat(Em);function Sm(t){return sl(t)&&t.data.substr(0,Em)===Dm}function Tm(t){return t.data.length==Em&&Sm(t)}function Im(t){if(Sm(t)){return t.data.slice(Em)}else{return t.data}}function Mm(t){t.document.on("arrowKey",Bm,{priority:"low"})}function Bm(t,e){if(e.keyCode==Hl.arrowleft){const t=e.domTarget.ownerDocument.defaultView.getSelection();if(t.rangeCount==1&&t.getRangeAt(0).collapsed){const e=t.getRangeAt(0).startContainer;const n=t.getRangeAt(0).startOffset;if(Sm(e)&&n<=Em){t.collapse(e,0)}}}}var Lm=n(4401);var Nm={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Nm.insert="head";Nm.singleton=true;var zm=Sc()(Lm.Z,Nm);const Pm=Lm.Z.locals||{};class Om extends(mt()){constructor(t,e){super();this.domDocuments=new Set;this.domConverter=t;this.markedAttributes=new Set;this.markedChildren=new Set;this.markedTexts=new Set;this.selection=e;this.set("isFocused",false);this.set("isSelecting",false);if(c.isBlink&&!c.isAndroid){this.on("change:isSelecting",(()=>{if(!this.isSelecting){this.render()}}))}this.set("isComposing",false);this.on("change:isComposing",(()=>{if(!this.isComposing){this.render()}}));this._inlineFiller=null;this._fakeSelectionContainer=null}markToSync(t,e){if(t==="text"){if(this.domConverter.mapViewToDom(e.parent)){this.markedTexts.add(e)}}else{if(!this.domConverter.mapViewToDom(e)){return}if(t==="attributes"){this.markedAttributes.add(e)}else if(t==="children"){this.markedChildren.add(e)}else{throw new z("view-renderer-unknown-type",this)}}}render(){if(this.isComposing&&!c.isAndroid){return}let t=null;const e=c.isBlink&&!c.isAndroid?!this.isSelecting:true;for(const t of this.markedChildren){this._updateChildrenMappings(t)}if(e){if(this._inlineFiller&&!this._isSelectionInInlineFiller()){this._removeInlineFiller()}if(this._inlineFiller){t=this._getInlineFillerPosition()}else if(this._needsInlineFillerAtSelection()){t=this.selection.getFirstPosition();this.markedChildren.add(t.parent)}}else if(this._inlineFiller&&this._inlineFiller.parentNode){t=this.domConverter.domPositionToView(this._inlineFiller);if(t&&t.parent.is("$text")){t=Og._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){if(!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);const n=e.parent.ownerDocument;if(!Sm(e.parent)){this._inlineFiller=Vm(n,e.parent,e.offset)}else{this._inlineFiller=e.parent}}else{this._inlineFiller=null}}this._updateFocus();this._updateSelection();this.markedTexts.clear();this.markedAttributes.clear();this.markedChildren.clear()}_updateChildrenMappings(t){const e=this.domConverter.mapViewToDom(t);if(!e){return}const n=Array.from(this.domConverter.mapViewToDom(t).childNodes);const i=Array.from(this.domConverter.viewChildrenToDom(t,{withChildren:false}));const o=this._diffNodeLists(n,i);const r=this._findReplaceActions(o,n,i);if(r.indexOf("replace")!==-1){const e={equal:0,insert:0,delete:0};for(const o of r){if(o==="replace"){const o=e.equal+e.insert;const r=e.equal+e.delete;const s=t.getChild(o);if(s&&!(s.is("uiElement")||s.is("rawElement"))){this._updateElementMappings(s,n[r])}Sl(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();if(t.parent.is("$text")){return Og._createBefore(t.parent)}else{return t}}_isSelectionInInlineFiller(){if(this.selection.rangeCount!=1||!this.selection.isCollapsed){return false}const t=this.selection.getFirstPosition();const e=this.domConverter.viewPositionToDom(t);if(e&&sl(e.parent)&&Sm(e.parent)){return true}return false}_removeInlineFiller(){const t=this._inlineFiller;if(!Sm(t)){throw new z("view-renderer-filler-was-lost",this)}if(Tm(t)){t.remove()}else{t.data=t.data.substr(Em)}this._inlineFiller=null}_needsInlineFillerAtSelection(){if(this.selection.rangeCount!=1||!this.selection.isCollapsed){return false}const t=this.selection.getFirstPosition();const e=t.parent;const n=t.offset;if(!this.domConverter.mapViewToDom(e.root)){return false}if(!e.is("element")){return false}if(!Rm(e)){return false}if(n===e.getFillerOffset()){return false}const i=t.nodeBefore;const o=t.nodeAfter;if(i instanceof Du||o instanceof Du){return false}if(c.isAndroid&&(i||o)){return false}return true}_updateText(t,e){const n=this.domConverter.findCorrespondingDomText(t);const i=this.domConverter.viewToDom(t);let o=i.data;const r=e.inlineFillerPosition;if(r&&r.parent==t.parent&&r.offset==t.index){o=Dm+o}Gm(n,o)}_updateAttrs(t){const e=this.domConverter.mapViewToDom(t);if(!e){return}const n=Array.from(e.attributes).map((t=>t.name));const i=t.getAttributeKeys();for(const n of i){this.domConverter.setDomElementAttribute(e,n,t.getAttribute(n),t)}for(const i of n){if(!t.hasAttribute(i)){this.domConverter.removeDomElementAttribute(e,i)}}}_updateChildren(t,e){const n=this.domConverter.mapViewToDom(t);if(!n){return}if(c.isAndroid){let t=null;for(const e of Array.from(n.childNodes)){if(t&&sl(t)&&sl(e)){n.normalize();break}t=e}}const i=e.inlineFillerPosition;const o=n.childNodes;const r=Array.from(this.domConverter.viewChildrenToDom(t,{bind:true}));if(i&&i.parent===t){Vm(n.ownerDocument,r,i.offset)}const s=this._diffNodeLists(o,r);const a=c.isAndroid?this._findReplaceActions(s,o,r,{replaceText:true}):s;let l=0;const d=new Set;for(const t of a){if(t==="delete"){d.add(o[l]);Sl(o[l])}else if(t==="equal"||t==="replace"){l++}}l=0;for(const t of a){if(t==="insert"){kl(n,l,r[l]);l++}else if(t==="replace"){Gm(o[l],r[l].data);l++}else if(t==="equal"){this._markDescendantTextToSync(this.domConverter.domToView(r[l]));l++}}for(const t of d){if(!t.parentNode){this.domConverter.unbindDomElement(t)}}}_diffNodeLists(t,e){t=Wm(t,this._fakeSelectionContainer);return y(t,e,Hm.bind(null,this.domConverter))}_findReplaceActions(t,e,n,i={}){if(t.indexOf("insert")===-1||t.indexOf("delete")===-1){return t}let o=[];let r=[];let s=[];const a={equal:0,insert:0,delete:0};for(const l of t){if(l==="insert"){s.push(n[a.equal+a.insert])}else if(l==="delete"){r.push(e[a.equal+a.delete])}else{o=o.concat(y(r,s,i.replaceText?Fm:jm).map((t=>t==="equal"?"replace":t)));o.push("equal");r=[];s=[]}a[l]++}return o.concat(y(r,s,i.replaceText?Fm:jm).map((t=>t==="equal"?"replace":t)))}_markDescendantTextToSync(t){if(!t){return}if(t.is("$text")){this.markedTexts.add(t)}else if(t.is("element")){for(const e of t.getChildren()){this._markDescendantTextToSync(e)}}}_updateSelection(){if(c.isBlink&&!c.isAndroid&&this.isSelecting&&!this.markedChildren.size){return}if(this.selection.rangeCount===0){this._removeDomSelection();this._removeFakeSelection();return}const t=this.domConverter.mapViewToDom(this.selection.editableElement);if(!this.isFocused||!t){return}if(this.selection.isFake){this._updateFakeSelection(t)}else if(this._fakeSelectionContainer&&this._fakeSelectionContainer.isConnected){this._removeFakeSelection();this._updateDomSelection(t)}else if(!(this.isComposing&&c.isAndroid)){this._updateDomSelection(t)}}_updateFakeSelection(t){const e=t.ownerDocument;if(!this._fakeSelectionContainer){this._fakeSelectionContainer=qm(e)}const n=this._fakeSelectionContainer;this.domConverter.bindFakeSelection(n,this.selection);if(!this._fakeSelectionNeedsUpdate(t)){return}if(!n.parentElement||n.parentElement!=t){t.appendChild(n)}n.textContent=this.selection.fakeSelectionLabel||" ";const i=e.getSelection();const 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);const i=this.domConverter.viewPositionToDom(this.selection.focus);e.collapse(n.parent,n.offset);e.extend(i.parent,i.offset);if(c.isGecko){Um(i,e)}}_domSelectionNeedsUpdate(t){if(!this.domConverter.isDomSelectionCorrect(t)){return true}const e=t&&this.domConverter.domSelectionToView(t);if(e&&this.selection.isEqual(e)){return false}if(!this.selection.isCollapsed&&this.selection.isSimilar(e)){return false}return true}_fakeSelectionNeedsUpdate(t){const e=this._fakeSelectionContainer;const n=t.ownerDocument.getSelection();if(!e||e.parentElement!==t){return true}if(n.anchorNode!==e&&!e.contains(n.anchorNode)){return true}return e.textContent!==this.selection.fakeSelectionLabel}_removeDomSelection(){for(const t of this.domDocuments){const e=t.getSelection();if(e.rangeCount){const n=t.activeElement;const i=this.domConverter.mapDomToView(n);if(n&&i){e.removeAllRanges()}}}}_removeFakeSelection(){const t=this._fakeSelectionContainer;if(t){t.remove()}}_updateFocus(){if(this.isFocused){const t=this.selection.editableElement;if(t){this.domConverter.focus(t)}}}}function Rm(t){if(t.getAttribute("contenteditable")=="false"){return false}const e=t.findAncestor((t=>t.hasAttribute("contenteditable")));return!e||e.getAttribute("contenteditable")=="true"}function Vm(t,e,n){const i=e instanceof Array?e:e.childNodes;const o=i[n];if(sl(o)){o.data=Dm+o.data;return o}else{const o=t.createTextNode(Dm);if(Array.isArray(e)){i.splice(n,0,o)}else{kl(e,n,o)}return o}}function jm(t,e){return Ya(t)&&Ya(e)&&!sl(t)&&!sl(e)&&!wl(t)&&!wl(e)&&t.tagName.toLowerCase()===e.tagName.toLowerCase()}function Fm(t,e){return Ya(t)&&Ya(e)&&sl(t)&&sl(e)}function Hm(t,e,n){if(e===n){return true}else if(sl(e)&&sl(n)){return e.data===n.data}else if(t.isBlockFiller(e)&&t.isBlockFiller(n)){return true}return false}function Um(t,e){const n=t.parent;if(n.nodeType!=Node.ELEMENT_NODE||t.offset!=n.childNodes.length-1){return}const i=n.childNodes[t.offset];if(i&&i.tagName=="BR"){e.addRange(e.getRangeAt(0))}}function Wm(t,e){const n=Array.from(t);if(n.length==0||!e){return n}const i=n[n.length-1];if(i==e){n.pop()}return n}function qm(t){const e=t.createElement("div");e.className="ck-fake-selection-container";Object.assign(e.style,{position:"fixed",top:0,left:"-9999px",width:"42px"});e.textContent=" ";return e}function Gm(t,e){const n=t.data;if(n==e){return}const i=k(n,e);for(const e of i){if(e.type==="insert"){t.insertData(e.index,e.values.join(""))}else{t.deleteData(e.index,e.howMany)}}}const $m=xm(il.document);const Km=vm(il.document);const Ym=ym(il.document);const Zm="data-ck-unsafe-attribute-";const Qm="data-ck-unsafe-element";class Jm{constructor(t,e={}){this.document=t;this.renderingMode=e.renderingMode||"editing";this.blockFillerMode=e.blockFillerMode||(this.renderingMode==="editing"?"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=this.renderingMode==="editing"?il.document:il.document.implementation.createHTMLDocument("");this._domToViewMapping=new WeakMap;this._viewToDomMapping=new WeakMap;this._fakeSelectionMapping=new WeakMap;this._rawContentElementMatcher=new Tu;this._encounteredRawContentDomNodes=new WeakSet}bindFakeSelection(t,e){this._fakeSelectionMapping.set(t,new jg(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){if(this.renderingMode==="data"){return true}t=t.toLowerCase();if(t.startsWith("on")){return false}if(t==="srcdoc"&&e.match(/\bon\S+\s*=|javascript:|<\s*\/*script/i)){return false}if(n==="img"&&(t==="src"||t==="srcset")){return true}if(n==="source"&&t==="srcset"){return true}if(e.match(/^\s*(javascript:|data:(image\/svg|text\/x?html))/i)){return false}return true}setContentOf(t,e){if(this.renderingMode==="data"){t.innerHTML=e;return}const n=(new DOMParser).parseFromString(e,"text/html");const i=n.createDocumentFragment();const o=n.body.childNodes;while(o.length>0){i.appendChild(o[0])}const r=n.createTreeWalker(i,NodeFilter.SHOW_ELEMENT);const s=[];let a;while(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();if(this._shouldRenameElement(e)){of(e);t.replaceWith(this._createReplacementDomElement(e,t))}}while(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)}else{if(this.mapViewToDom(t)){return this.mapViewToDom(t)}let n;if(t.is("documentFragment")){n=this._domDocument.createDocumentFragment();if(e.bind){this.bindDocumentFragments(n,t)}}else if(t.is("uiElement")){if(t.name==="$comment"){n=this._domDocument.createComment(t.getCustomProperty("$rawContent"))}else{n=t.render(this._domDocument,this)}if(e.bind){this.bindElements(n,t)}return n}else{if(this._shouldRenameElement(t.name)){of(t.name);n=this._createReplacementDomElement(t.name)}else if(t.hasAttribute("xmlns")){n=this._domDocument.createElementNS(t.getAttribute("xmlns"),t.name)}else{n=this._domDocument.createElement(t.name)}if(t.is("rawElement")){t.render(n,this)}if(e.bind){this.bindElements(n,t)}for(const e of t.getAttributeKeys()){this.setDomElementAttribute(n,e,t.getAttribute(e),t)}}if(e.withChildren!==false){for(const i of this.viewChildrenToDom(t,e)){n.appendChild(i)}}return n}}setDomElementAttribute(t,e,n,i){const o=this.shouldRenderAttribute(e,n,t.tagName.toLowerCase())||i&&i.shouldRenderUnsafeAttribute(e);if(!o){P("domconverter-unsafe-attribute-detected",{domElement:t,key:e,value:n})}if(t.hasAttribute(e)&&!o){t.removeAttribute(e)}else if(t.hasAttribute(Zm+e)&&o){t.removeAttribute(Zm+e)}t.setAttribute(o?e:Zm+e,n)}removeDomElementAttribute(t,e){if(e==Qm){return}t.removeAttribute(e);t.removeAttribute(Zm+e)}*viewChildrenToDom(t,e={}){const n=t.getFillerOffset&&t.getFillerOffset();let i=0;for(const o of t.getChildren()){if(n===i){yield this._getBlockFiller()}const t=o.is("element")&&!!o.getCustomProperty("dataPipeline:transparentRendering")&&!dc(o.getAttributes());if(t&&this.renderingMode=="data"){yield*this.viewChildrenToDom(o,e)}else{if(t){P("domconverter-transparent-rendering-unsupported-in-editing-pipeline",{viewElement:o})}yield this.viewToDom(o,e)}i++}if(n===i){yield this._getBlockFiller()}}viewRangeToDom(t){const e=this.viewPositionToDom(t.start);const n=this.viewPositionToDom(t.end);const i=this._domDocument.createRange();i.setStart(e.parent,e.offset);i.setEnd(n.parent,n.offset);return i}viewPositionToDom(t){const e=t.parent;if(e.is("$text")){const n=this.findCorrespondingDomText(e);if(!n){return null}let i=t.offset;if(Sm(n)){i+=Em}return{parent:n,offset:i}}else{let n,i,o;if(t.offset===0){n=this.mapViewToDom(e);if(!n){return null}o=n.childNodes[0]}else{const e=t.nodeBefore;i=e.is("$text")?this.findCorrespondingDomText(e):this.mapViewToDom(e);if(!i){return null}n=i.parentNode;o=i.nextSibling}if(sl(o)&&Sm(o)){return{parent:o,offset:Em}}const r=i?bl(i)+1:0;return{parent:n,offset:r}}}domToView(t,e={}){if(this.isBlockFiller(t)){return null}const n=this.getHostViewElement(t);if(n){return n}if(wl(t)&&e.skipComments){return null}if(sl(t)){if(Tm(t)){return null}else{const e=this._processDataFromDomText(t);return e===""?null:new Du(this.document,e)}}else{if(this.mapDomToView(t)){return this.mapDomToView(t)}let n;if(this.isDocumentFragment(t)){n=new cm(this.document);if(e.bind){this.bindDocumentFragments(t,n)}}else{n=this._createViewElement(t,e);if(e.bind){this.bindElements(t,n)}const i=t.attributes;if(i){for(let t=i.length,e=0;e<t;e++){n._setAttribute(i[e].name,i[e].value)}}if(this._isViewElementWithRawContent(n,e)||wl(t)){const e=wl(t)?t.data:t.innerHTML;n._setCustomProperty("$rawContent",e);this._encounteredRawContentDomNodes.add(t);return n}}if(e.withChildren!==false){for(const i of this.domChildrenToView(t,e)){n._appendChild(i)}}return n}}*domChildrenToView(t,e){for(let n=0;n<t.childNodes.length;n++){const i=t.childNodes[n];const o=this.domToView(i,e);if(o!==null){yield o}}}domSelectionToView(t){if(t.rangeCount===1){let e=t.getRangeAt(0).startContainer;if(sl(e)){e=e.parentNode}const n=this.fakeSelectionToView(e);if(n){return n}}const e=this.isDomSelectionBackward(t);const n=[];for(let e=0;e<t.rangeCount;e++){const i=t.getRangeAt(e);const o=this.domRangeToView(i);if(o){n.push(o)}}return new jg(n,{backward:e})}domRangeToView(t){const e=this.domPositionToView(t.startContainer,t.startOffset);const n=this.domPositionToView(t.endContainer,t.endOffset);if(e&&n){return new Rg(e,n)}return null}domPositionToView(t,e=0){if(this.isBlockFiller(t)){return this.domPositionToView(t.parentNode,bl(t))}const n=this.mapDomToView(t);if(n&&(n.is("uiElement")||n.is("rawElement"))){return Og._createBefore(n)}if(sl(t)){if(Tm(t)){return this.domPositionToView(t.parentNode,bl(t))}const n=this.findCorrespondingViewText(t);let i=e;if(!n){return null}if(Sm(t)){i-=Em;i=i<0?0:i}return new Og(n,i)}else{if(e===0){const e=this.mapDomToView(t);if(e){return new Og(e,0)}}else{const n=t.childNodes[e-1];if(sl(n)&&Tm(n)){return this.domPositionToView(n.parentNode,bl(n))}const i=sl(n)?this.findCorrespondingViewText(n):this.mapDomToView(n);if(i&&i.parent){return new Og(i.parent,i.index+1)}}return null}}mapDomToView(t){const e=this.getHostViewElement(t);return e||this._domToViewMapping.get(t)}findCorrespondingViewText(t){if(Tm(t)){return null}const e=this.getHostViewElement(t);if(e){return e}const n=t.previousSibling;if(n){if(!this.isElement(n)){return null}const t=this.mapDomToView(n);if(t){const e=t.nextSibling;if(e instanceof Du){return e}else{return null}}}else{const e=this.mapDomToView(t.parentNode);if(e){const t=e.getChild(0);if(t instanceof Du){return t}else{return null}}}return null}mapViewToDom(t){return this._viewToDomMapping.get(t)}findCorrespondingDomText(t){const e=t.previousSibling;if(e&&this.mapViewToDom(e)){return this.mapViewToDom(e).nextSibling}if(!e&&t.parent&&this.mapViewToDom(t.parent)){return this.mapViewToDom(t.parent).childNodes[0]}return null}focus(t){const e=this.mapViewToDom(t);if(e&&e.ownerDocument.activeElement!==e){const{scrollX:t,scrollY:n}=il.window;const i=[];tf(e,(t=>{const{scrollLeft:e,scrollTop:n}=t;i.push([e,n])}));e.focus();tf(e,(t=>{const[e,n]=i.shift();t.scrollLeft=e;t.scrollTop=n}));il.window.scrollTo(t,n)}}isElement(t){return t&&t.nodeType==Node.ELEMENT_NODE}isDocumentFragment(t){return t&&t.nodeType==Node.DOCUMENT_FRAGMENT_NODE}isBlockFiller(t){if(this.blockFillerMode=="br"){return t.isEqualNode($m)}if(t.tagName==="BR"&&nf(t,this.blockElements)&&t.parentNode.childNodes.length===1){return true}return t.isEqualNode(Ym)||ef(t,this.blockElements)}isDomSelectionBackward(t){if(t.isCollapsed){return false}const e=this._domDocument.createRange();try{e.setStart(t.anchorNode,t.anchorOffset);e.setEnd(t.focusNode,t.focusOffset)}catch(t){return false}const n=e.collapsed;e.detach();return n}getHostViewElement(t){const e=ol(t);e.pop();while(e.length){const t=e.pop();const n=this._domToViewMapping.get(t);if(n&&(n.is("uiElement")||n.is("rawElement"))){return n}}return null}isDomSelectionCorrect(t){return this._isDomSelectionPositionCorrect(t.anchorNode,t.anchorOffset)&&this._isDomSelectionPositionCorrect(t.focusNode,t.focusOffset)}registerRawContentMatcher(t){this._rawContentElementMatcher.add(t)}_getBlockFiller(){switch(this.blockFillerMode){case"nbsp":return vm(this._domDocument);case"markedNbsp":return ym(this._domDocument);case"br":return xm(this._domDocument)}}_isDomSelectionPositionCorrect(t,e){if(sl(t)&&Sm(t)&&e<Em){return false}if(this.isElement(t)&&Sm(t.childNodes[e])){return false}const n=this.mapDomToView(t);if(n&&(n.is("uiElement")||n.is("rawElement"))){return false}return true}_processDataFromViewText(t){let e=t.data;if(t.getAncestors().some((t=>this.preElements.includes(t.name)))){return e}if(e.charAt(0)==" "){const n=this._getTouchingInlineViewNode(t,false);const i=n&&n.is("$textProxy")&&this._nodeEndsWithSpace(n);if(i||!n){e=" "+e.substr(1)}}if(e.charAt(e.length-1)==" "){const n=this._getTouchingInlineViewNode(t,true);const i=n&&n.is("$textProxy")&&n.data.charAt(0)==" ";if(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 false}const e=this._processDataFromViewText(t);return e.charAt(e.length-1)==" "}_processDataFromDomText(t){let e=t.data;if(Xm(t,this.preElements)){return Im(t)}e=e.replace(/[ \n\t\r]{1,}/g," ");const n=this._getTouchingInlineDomNode(t,false);const i=this._getTouchingInlineDomNode(t,true);const o=this._checkShouldLeftTrimDomText(t,n);const r=this._checkShouldRightTrimDomText(t,i);if(o){e=e.replace(/^ /,"")}if(r){e=e.replace(/ $/,"")}e=Im(new Text(e));e=e.replace(/ \u00A0/g," ");const s=i&&this.isElement(i)&&i.tagName!="BR";const a=i&&sl(i)&&i.data.charAt(0)==" ";if(/( |\u00A0)\u00A0$/.test(e)||!i||s||a){e=e.replace(/\u00A0$/," ")}if(o||n&&this.isElement(n)&&n.tagName!="BR"){e=e.replace(/^\u00A0/," ")}return e}_checkShouldLeftTrimDomText(t,e){if(!e){return true}if(this.isElement(e)){return e.tagName==="BR"}if(this._encounteredRawContentDomNodes.has(t.previousSibling)){return false}return/[^\S\u00A0]/.test(e.data.charAt(e.data.length-1))}_checkShouldRightTrimDomText(t,e){if(e){return false}return!Sm(t)}_getTouchingInlineViewNode(t,e){const n=new Pg({startPosition:e?Og._createAfter(t):Og._createBefore(t),direction:e?"forward":"backward"});for(const t of n){if(t.item.is("element")&&this.inlineObjectElements.includes(t.item.name)){return t.item}else if(t.item.is("containerElement")){return null}else if(t.item.is("element","br")){return null}else if(t.item.is("$textProxy")){return t.item}}return null}_getTouchingInlineDomNode(t,e){if(!t.parentNode){return null}const n=e?"firstChild":"lastChild";const i=e?"nextSibling":"previousSibling";let o=true;let r=t;do{if(!o&&r[n]){r=r[n]}else if(r[i]){r=r[i];o=false}else{r=r.parentNode;o=true}if(!r||this._isBlockElement(r)){return null}}while(!(sl(r)||r.tagName=="BR"||this._isInlineObjectElement(r)));return r}_isBlockElement(t){return this.isElement(t)&&this.blockElements.includes(t.tagName.toLowerCase())}_isInlineObjectElement(t){return this.isElement(t)&&this.inlineObjectElements.includes(t.tagName.toLowerCase())}_createViewElement(t,e){if(wl(t)){return new im(this.document,"$comment")}const n=e.keepOriginalCase?t.tagName:t.tagName.toLowerCase();return new Dg(this.document,n)}_isViewElementWithRawContent(t,e){return e.withChildren!==false&&!!this._rawContentElementMatcher.match(t)}_shouldRenameElement(t){const e=t.toLowerCase();return this.renderingMode==="editing"&&this.unsafeElements.includes(e)}_createReplacementDomElement(t,e){const n=this._domDocument.createElement("span");n.setAttribute(Qm,t);if(e){while(e.firstChild){n.appendChild(e.firstChild)}for(const t of e.getAttributeNames()){n.setAttribute(t,e.getAttribute(t))}}return n}}function Xm(t,e){const n=ol(t);return n.some((t=>t.tagName&&e.includes(t.tagName.toLowerCase())))}function tf(t,e){let n=t;while(n){e(n);n=n.parentElement}}function ef(t,e){const n=t.isEqualNode(Km);return n&&nf(t,e)&&t.parentNode.childNodes.length===1}function nf(t,e){const n=t.parentNode;return!!n&&!!n.tagName&&e.includes(n.tagName.toLowerCase())}function of(t){if(t==="script"){P("domconverter-unsafe-script-element-detected")}if(t==="style"){P("domconverter-unsafe-style-element-detected")}}class rf extends(Ja()){constructor(t){super();this.view=t;this.document=t.document;this.isEnabled=false}enable(){this.isEnabled=true}disable(){this.isEnabled=false}destroy(){this.disable();this.stopListening()}checkShouldIgnoreEventFromTarget(t){if(t&&t.nodeType===3){t=t.parentNode}if(!t||t.nodeType!==1){return false}return t.matches("[data-cke-ignore-events], [data-cke-ignore-events] *")}}var sf=fg((function(t,e){ki(e,nr(e),t)}));const af=sf;class lf{constructor(t,e,n){this.view=t;this.document=t.document;this.domEvent=e;this.domTarget=e.target;af(this,n)}get target(){return this.view.domConverter.mapDomToView(this.domTarget)}preventDefault(){this.domEvent.preventDefault()}stopPropagation(){this.domEvent.stopPropagation()}}class cf extends rf{constructor(t){super(t);this.useCapture=false}observe(t){const e=typeof this.domEventType=="string"?[this.domEventType]:this.domEventType;e.forEach((e=>{this.listenTo(t,e,((t,e)=>{if(this.isEnabled&&!this.checkShouldIgnoreEventFromTarget(e.target)){this.onDomEvent(e)}}),{useCapture:this.useCapture})}))}fire(t,e,n){if(this.isEnabled){this.document.fire(t,new lf(this.view,e,n))}}}class df extends cf{constructor(t){super(t);this.domEventType=["keydown","keyup"]}onDomEvent(t){const e={keyCode:t.keyCode,altKey:t.altKey,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,metaKey:t.metaKey,get keystroke(){return Wl(this)}};this.fire(t.type,t,e)}}var uf=function(){return Lt.Date.now()};const hf=uf;var gf=/\s/;function mf(t){var e=t.length;while(e--&&gf.test(t.charAt(e))){}return e}const ff=mf;var pf=/^\s+/;function bf(t){return t?t.slice(0,ff(t)+1).replace(pf,""):t}const kf=bf;var wf=0/0;var Af=/^[-+]0x[0-9a-f]+$/i;var Cf=/^0b[01]+$/i;var _f=/^0o[0-7]+$/i;var vf=parseInt;function yf(t){if(typeof t=="number"){return t}if(Fu(t)){return wf}if(at(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=at(e)?e+"":e}if(typeof t!="string"){return t===0?t:+t}t=kf(t);var n=Cf.test(t);return n||_f.test(t)?vf(t.slice(2),n?2:8):Af.test(t)?wf:+t}const xf=yf;var Ef="Expected a function";var Df=Math.max,Sf=Math.min;function Tf(t,e,n){var i,o,r,s,a,l,c=0,d=false,u=false,h=true;if(typeof t!="function"){throw new TypeError(Ef)}e=xf(e)||0;if(at(n)){d=!!n.leading;u="maxWait"in n;r=u?Df(xf(n.maxWait)||0,e):r;h="trailing"in n?!!n.trailing:h}function g(e){var n=i,r=o;i=o=undefined;c=e;s=t.apply(r,n);return s}function m(t){c=t;a=setTimeout(b,e);return d?g(t):s}function f(t){var n=t-l,i=t-c,o=e-n;return u?Sf(o,r-i):o}function p(t){var n=t-l,i=t-c;return l===undefined||n>=e||n<0||u&&i>=r}function b(){var t=hf();if(p(t)){return k(t)}a=setTimeout(b,f(t))}function k(t){a=undefined;if(h&&i){return g(t)}i=o=undefined;return s}function w(){if(a!==undefined){clearTimeout(a)}c=0;i=l=o=a=undefined}function A(){return a===undefined?s:k(hf())}function C(){var t=hf(),n=p(t);i=arguments;o=this;l=t;if(n){if(a===undefined){return m(l)}if(u){clearTimeout(a);a=setTimeout(b,e);return g(l)}}if(a===undefined){a=setTimeout(b,e)}return s}C.cancel=w;C.flush=A;return C}const If=Tf;class Mf extends rf{constructor(t){super(t);this._fireSelectionChangeDoneDebounced=If((t=>{this.document.fire("selectionChangeDone",t)}),200)}observe(){const t=this.document;t.on("arrowKey",((e,n)=>{const i=t.selection;if(i.isFake&&this.isEnabled){n.preventDefault()}}),{context:"$capture"});t.on("arrowKey",((e,n)=>{const i=t.selection;if(i.isFake&&this.isEnabled){this._handleSelectionMove(n.keyCode)}}),{priority:"lowest"})}destroy(){super.destroy();this._fireSelectionChangeDoneDebounced.cancel()}_handleSelectionMove(t){const e=this.document.selection;const n=new jg(e.getRanges(),{backward:e.isBackward,fake:false});if(t==Hl.arrowleft||t==Hl.arrowup){n.setTo(n.getFirstPosition())}if(t==Hl.arrowright||t==Hl.arrowdown){n.setTo(n.getLastPosition())}const i={oldSelection:e,newSelection:n,domSelection:null};this.document.fire("selectionChange",i);this._fireSelectionChangeDoneDebounced(i)}}var Bf="__lodash_hash_undefined__";function Lf(t){this.__data__.set(t,Bf);return this}const Nf=Lf;function zf(t){return this.__data__.has(t)}const Pf=zf;function Of(t){var e=-1,n=t==null?0:t.length;this.__data__=new ei;while(++e<n){this.add(t[e])}}Of.prototype.add=Of.prototype.push=Nf;Of.prototype.has=Pf;const Rf=Of;function Vf(t,e){var n=-1,i=t==null?0:t.length;while(++n<i){if(e(t[n],n,t)){return true}}return false}const jf=Vf;function Ff(t,e){return t.has(e)}const Hf=Ff;var Uf=1,Wf=2;function qf(t,e,n,i,o,r){var s=n&Uf,a=t.length,l=e.length;if(a!=l&&!(s&&l>a)){return false}var c=r.get(t);var d=r.get(e);if(c&&d){return c==e&&d==t}var u=-1,h=true,g=n&Wf?new Rf:undefined;r.set(t,e);r.set(e,t);while(++u<a){var m=t[u],f=e[u];if(i){var p=s?i(f,m,u,e,t,r):i(m,f,u,t,e,r)}if(p!==undefined){if(p){continue}h=false;break}if(g){if(!jf(e,(function(t,e){if(!Hf(g,e)&&(m===t||o(m,t,n,i,r))){return g.push(e)}}))){h=false;break}}else if(!(m===f||o(m,f,n,i,r))){h=false;break}}r["delete"](t);r["delete"](e);return h}const Gf=qf;function $f(t){var e=-1,n=Array(t.size);t.forEach((function(t,i){n[++e]=[i,t]}));return n}const Kf=$f;function Yf(t){var e=-1,n=Array(t.size);t.forEach((function(t){n[++e]=t}));return n}const Zf=Yf;var Qf=1,Jf=2;var Xf="[object Boolean]",tp="[object Date]",ep="[object Error]",np="[object Map]",ip="[object Number]",op="[object RegExp]",rp="[object Set]",sp="[object String]",ap="[object Symbol]";var lp="[object ArrayBuffer]",cp="[object DataView]";var dp=zt?zt.prototype:undefined,up=dp?dp.valueOf:undefined;function hp(t,e,n,i,o,r,s){switch(n){case cp:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset){return false}t=t.buffer;e=e.buffer;case lp:if(t.byteLength!=e.byteLength||!r(new ds(t),new ds(e))){return false}return true;case Xf:case tp:case ip:return Ae(+t,+e);case ep:return t.name==e.name&&t.message==e.message;case op:case sp:return t==e+"";case np:var a=Kf;case rp:var l=i&Qf;a||(a=Zf);if(t.size!=e.size&&!l){return false}var c=s.get(t);if(c){return c==e}i|=Jf;s.set(t,e);var d=Gf(a(t),a(e),i,o,r,s);s["delete"](t);return d;case ap:if(up){return up.call(t)==up.call(e)}}return false}const gp=hp;var mp=1;var fp=Object.prototype;var pp=fp.hasOwnProperty;function bp(t,e,n,i,o,r){var s=n&mp,a=zr(t),l=a.length,c=zr(e),d=c.length;if(l!=d&&!s){return false}var u=l;while(u--){var h=a[u];if(!(s?h in e:pp.call(e,h))){return false}}var g=r.get(t);var m=r.get(e);if(g&&m){return g==e&&m==t}var f=true;r.set(t,e);r.set(e,t);var p=s;while(++u<l){h=a[u];var b=t[h],k=e[h];if(i){var w=s?i(k,b,h,e,t,r):i(b,k,h,t,e,r)}if(!(w===undefined?b===k||o(b,k,n,i,r):w)){f=false;break}p||(p=h=="constructor")}if(f&&!p){var A=t.constructor,C=e.constructor;if(A!=C&&("constructor"in t&&"constructor"in e)&&!(typeof A=="function"&&A instanceof A&&typeof C=="function"&&C instanceof C)){f=false}}r["delete"](t);r["delete"](e);return f}const kp=bp;var wp=1;var Ap="[object Arguments]",Cp="[object Array]",_p="[object Object]";var vp=Object.prototype;var yp=vp.hasOwnProperty;function xp(t,e,n,i,o,r){var s=Jt(t),a=Jt(e),l=s?Cp:os(t),c=a?Cp:os(e);l=l==Ap?_p:l;c=c==Ap?_p:c;var d=l==_p,u=c==_p,h=l==c;if(h&&Oi(t)){if(!Oi(e)){return false}s=true;d=false}if(h&&!d){r||(r=new si);return s||To(t)?Gf(t,e,n,i,o,r):gp(t,e,l,n,i,o,r)}if(!(n&wp)){var g=d&&yp.call(t,"__wrapped__"),m=u&&yp.call(e,"__wrapped__");if(g||m){var f=g?t.value():t,p=m?e.value():e;r||(r=new si);return o(f,p,n,i,r)}}if(!h){return false}r||(r=new si);return kp(t,e,n,i,o,r)}const Ep=xp;function Dp(t,e,n,i,o){if(t===e){return true}if(t==null||e==null||!te(t)&&!te(e)){return t!==t&&e!==e}return Ep(t,e,n,i,Dp,o)}const Sp=Dp;function Tp(t,e,n){n=typeof n=="function"?n:undefined;var i=n?n(t,e):undefined;return i===undefined?Sp(t,e,undefined,n):!!i}const Ip=Tp;class Mp extends rf{constructor(t){super(t);this._config={childList:true,characterData:true,subtree:true};this.domConverter=t.domConverter;this.renderer=t._renderer;this._domElements=[];this._mutationObserver=new window.MutationObserver(this._onMutations.bind(this))}flush(){this._onMutations(this._mutationObserver.takeRecords())}observe(t){this._domElements.push(t);if(this.isEnabled){this._mutationObserver.observe(t,this._config)}}enable(){super.enable();for(const t of this._domElements){this._mutationObserver.observe(t,this._config)}}disable(){super.disable();this._mutationObserver.disconnect()}destroy(){super.destroy();this._mutationObserver.disconnect()}_onMutations(t){if(t.length===0){return}const e=this.domConverter;const n=new Set;const i=new Set;for(const n of t){const t=e.mapDomToView(n.target);if(!t){continue}if(t.is("uiElement")||t.is("rawElement")){continue}if(n.type==="childList"&&!this._isBogusBrMutation(n)){i.add(t)}}for(const o of t){const t=e.mapDomToView(o.target);if(t&&(t.is("uiElement")||t.is("rawElement"))){continue}if(o.type==="characterData"){const t=e.findCorrespondingViewText(o.target);if(t&&!i.has(t.parent)){n.add(t)}else if(!t&&Sm(o.target)){i.add(e.mapDomToView(o.target.parentNode))}}}let o=false;for(const t of n){o=true;this.renderer.markToSync("text",t)}for(const t of i){const n=e.mapViewToDom(t);const i=Array.from(t.getChildren());const r=Array.from(e.domChildrenToView(n,{withChildren:false}));if(!Ip(i,r,Bp)){o=true;this.renderer.markToSync("children",t)}}if(o){this.view.forceRender()}}_isBogusBrMutation(t){let e=null;if(t.nextSibling===null&&t.removedNodes.length===0&&t.addedNodes.length==1){e=this.domConverter.domToView(t.addedNodes[0],{withChildren:false})}return e&&e.is("element","br")}}function Bp(t,e){if(Array.isArray(t)){return}if(t===e){return true}else if(t.is("$text")&&e.is("$text")){return t.data===e.data}return false}class Lp extends cf{constructor(t){super(t);this._isFocusChanging=false;this.domEventType=["focus","blur"];this.useCapture=true;const e=this.document;e.on("focus",(()=>{this._isFocusChanging=true;this._renderTimeoutId=setTimeout((()=>{this.flush();t.change((()=>{}))}),50)}));e.on("blur",((n,i)=>{const o=e.selection.editableElement;if(o===null||o===i.target){e.isFocused=false;this._isFocusChanging=false;t.change((()=>{}))}}))}flush(){if(this._isFocusChanging){this._isFocusChanging=false;this.document.isFocused=true}}onDomEvent(t){this.fire(t.type,t)}destroy(){if(this._renderTimeoutId){clearTimeout(this._renderTimeoutId)}super.destroy()}}class Np extends rf{constructor(t){super(t);this.mutationObserver=t.getObserver(Mp);this.focusObserver=t.getObserver(Lp);this.selection=this.document.selection;this.domConverter=t.domConverter;this._documents=new WeakSet;this._fireSelectionChangeDoneDebounced=If((t=>{this.document.fire("selectionChangeDone",t)}),200);this._clearInfiniteLoopInterval=setInterval((()=>this._clearInfiniteLoop()),1e3);this._documentIsSelectingInactivityTimeoutDebounced=If((()=>this.document.isSelecting=false),5e3);this._loopbackCounter=0}observe(t){const e=t.ownerDocument;const n=()=>{this.document.isSelecting=true;this._documentIsSelectingInactivityTimeoutDebounced()};const i=()=>{if(!this.document.isSelecting){return}this._handleSelectionChange(null,e);this.document.isSelecting=false;this._documentIsSelectingInactivityTimeoutDebounced.cancel()};this.listenTo(t,"selectstart",n,{priority:"highest"});this.listenTo(t,"keydown",i,{priority:"highest",useCapture:true});this.listenTo(t,"keyup",i,{priority:"highest",useCapture:true});if(this._documents.has(e)){return}this.listenTo(e,"mouseup",i,{priority:"highest",useCapture:true});this.listenTo(e,"selectionchange",((t,n)=>{if(this.document.isComposing&&!c.isAndroid){return}this._handleSelectionChange(n,e);this._documentIsSelectingInactivityTimeoutDebounced()}));this._documents.add(e)}destroy(){super.destroy();clearInterval(this._clearInfiniteLoopInterval);this._fireSelectionChangeDoneDebounced.cancel();this._documentIsSelectingInactivityTimeoutDebounced.cancel()}_handleSelectionChange(t,e){if(!this.isEnabled){return}const n=e.defaultView.getSelection();if(this.checkShouldIgnoreEventFromTarget(n.anchorNode)){return}this.mutationObserver.flush();const i=this.domConverter.domSelectionToView(n);if(i.rangeCount==0){this.view.hasDomSelection=false;return}this.view.hasDomSelection=true;if(this.selection.isEqual(i)&&this.domConverter.isDomSelectionCorrect(n)){return}if(++this._loopbackCounter>60){return}this.focusObserver.flush();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)}}_clearInfiniteLoop(){this._loopbackCounter=0}}class zp extends cf{constructor(t){super(t);this.domEventType=["compositionstart","compositionupdate","compositionend"];const e=this.document;e.on("compositionstart",(()=>{e.isComposing=true}),{priority:"low"});e.on("compositionend",(()=>{e.isComposing=false}),{priority:"low"})}onDomEvent(t){this.fire(t.type,t,{data:t.data})}}class Pp{constructor(t,e={}){this._files=e.cacheFiles?Op(t):null;this._native=t}get files(){if(!this._files){this._files=Op(this._native)}return 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}get isCanceled(){return this._native.dropEffect=="none"||!!this._native.mozUserCancelled}}function Op(t){const e=Array.from(t.files||[]);const n=Array.from(t.items||[]);if(e.length){return e}return n.filter((t=>t.kind==="file")).map((t=>t.getAsFile()))}class Rp extends cf{constructor(t){super(t);this.domEventType=["beforeinput"]}onDomEvent(t){const e=t.getTargetRanges();const n=this.view;const i=n.document;let o=null;let r=null;let s=[];if(t.dataTransfer){o=new Pp(t.dataTransfer)}if(t.data!==null){r=t.data}else if(o){r=o.getData("text/plain")}if(i.selection.isFake){s=Array.from(i.selection.getRanges())}else if(e.length){s=e.map((t=>n.domConverter.domRangeToView(t)))}else if(c.isAndroid){const e=t.target.ownerDocument.defaultView.getSelection();s=Array.from(n.domConverter.domSelectionToView(e).getRanges())}if(c.isAndroid&&t.inputType=="insertCompositionText"&&r&&r.endsWith("\n")){this.fire(t.type,t,{inputType:"insertParagraph",targetRanges:[n.createRange(s[0].end)]});return}if(t.inputType=="insertText"&&r&&r.includes("\n")){const e=r.split(/\n{1,2}/g);let n=s;for(let r=0;r<e.length;r++){const s=e[r];if(s!=""){this.fire(t.type,t,{data:s,dataTransfer:o,targetRanges:n,inputType:t.inputType,isComposing:t.isComposing});n=[i.selection.getFirstRange()]}if(r+1<e.length){this.fire(t.type,t,{inputType:"insertParagraph",targetRanges:n});n=[i.selection.getFirstRange()]}}return}this.fire(t.type,t,{data:r,dataTransfer:o,targetRanges:s,inputType:t.inputType,isComposing:t.isComposing})}}class Vp extends rf{constructor(t){super(t);this.document.on("keydown",((t,e)=>{if(this.isEnabled&&$l(e.keyCode)){const n=new Hg(this.document,"arrowKey",this.document.selection.getFirstRange());this.document.fire(n,e);if(n.stop.called){t.stop()}}}))}observe(){}}class jp extends rf{constructor(t){super(t);const e=this.document;e.on("keydown",((t,n)=>{if(!this.isEnabled||n.keyCode!=Hl.tab||n.ctrlKey){return}const i=new Hg(e,"tab",e.selection.getFirstRange());e.fire(i,n);if(i.stop.called){t.stop()}}))}observe(){}}class Fp extends(mt()){constructor(t){super();this.document=new Zg(t);this.domConverter=new Jm(this.document);this.domRoots=new Map;this.set("isRenderingInProgress",false);this.set("hasDomSelection",false);this._renderer=new Om(this.domConverter,this.document.selection);this._renderer.bind("isFocused","isSelecting","isComposing").to(this.document,"isFocused","isSelecting","isComposing");this._initialDomRootAttributes=new WeakMap;this._observers=new Map;this._ongoingChange=false;this._postFixersInProgress=false;this._renderingDisabled=false;this._hasChangedSinceTheLastRendering=false;this._writer=new um(this.document);this.addObserver(Mp);this.addObserver(Lp);this.addObserver(Np);this.addObserver(df);this.addObserver(Mf);this.addObserver(zp);this.addObserver(Vp);this.addObserver(Rp);this.addObserver(jp);Mm(this);om(this);this.on("render",(()=>{this._render();this.document.fire("layoutChanged");this._hasChangedSinceTheLastRendering=false}));this.listenTo(this.document.selection,"change",(()=>{this._hasChangedSinceTheLastRendering=true}));this.listenTo(this.document,"change:isFocused",(()=>{this._hasChangedSinceTheLastRendering=true}))}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;if(e==="class"){this._writer.addClass(o.split(" "),n)}else{this._writer.setAttribute(e,o,n)}}this._initialDomRootAttributes.set(t,i);const o=()=>{this._writer.setAttribute("contenteditable",(!n.isReadOnly).toString(),n);if(n.isReadOnly){this._writer.addClass("ck-read-only",n)}else{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=true}));for(const n of this._observers.values()){n.observe(t,e)}}detachDomRoot(t){const e=this.domRoots.get(t);Array.from(e.attributes).forEach((({name:t})=>e.removeAttribute(t)));const n=this._initialDomRootAttributes.get(e);for(const t in n){e.setAttribute(t,n[t])}this.domRoots.delete(t);this.domConverter.unbindDomElement(e)}getDomRoot(t="main"){return this.domRoots.get(t)}addObserver(t){let e=this._observers.get(t);if(e){return e}e=new t(this);this._observers.set(t,e);for(const[t,n]of this.domRoots){e.observe(n,t)}e.enable();return e}getObserver(t){return this._observers.get(t)}disableObservers(){for(const t of this._observers.values()){t.disable()}}enableObservers(){for(const t of this._observers.values()){t.enable()}}scrollToTheSelection(){const t=this.document.selection.getFirstRange();if(t){Tl({target:this.domConverter.viewRangeToDom(t),viewportOffset:20})}}focus(){if(!this.document.isFocused){const t=this.document.selection.editableElement;if(t){this.domConverter.focus(t);this.forceRender()}else{}}}change(t){if(this.isRenderingInProgress||this._postFixersInProgress){throw new z("cannot-change-view-tree",this)}try{if(this._ongoingChange){return t(this._writer)}this._ongoingChange=true;const e=t(this._writer);this._ongoingChange=false;if(!this._renderingDisabled&&this._hasChangedSinceTheLastRendering){this._postFixersInProgress=true;this.document._callPostFixers(this._writer);this._postFixersInProgress=false;this.fire("render")}return e}catch(t){z.rethrowUnexpectedError(t,this)}}forceRender(){this._hasChangedSinceTheLastRendering=true;this.getObserver(Lp).flush();this.change((()=>{}))}destroy(){for(const t of this._observers.values()){t.destroy()}this.document.destroy();this.stopListening()}createPositionAt(t,e){return Og._createAt(t,e)}createPositionAfter(t){return Og._createAfter(t)}createPositionBefore(t){return Og._createBefore(t)}createRange(...t){return new Rg(...t)}createRangeOn(t){return Rg._createOn(t)}createRangeIn(t){return Rg._createIn(t)}createSelection(...t){return new jg(...t)}_disableRendering(t){this._renderingDisabled=t;if(t==false){this.change((()=>{}))}}_render(){this.isRenderingInProgress=true;this.disableObservers();this._renderer.render();this.enableObservers();this.isRenderingInProgress=false}}class Hp{is(){throw new Error("is() method is abstract")}}class Up extends Hp{constructor(t){super();this.parent=null;this._attrs=mc(t)}get document(){return null}get index(){let t;if(!this.parent){return null}if((t=this.parent.getChildIndex(this))===null){throw new z("model-node-not-found-in-parent",this)}return t}get startOffset(){let t;if(!this.parent){return null}if((t=this.parent.getChildStartOffset(this))===null){throw new z("model-node-not-found-in-parent",this)}return t}get offsetSize(){return 1}get endOffset(){if(!this.parent){return null}return this.startOffset+this.offsetSize}get nextSibling(){const t=this.index;return t!==null&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return t!==null&&this.parent.getChild(t-1)||null}get root(){let t=this;while(t.parent){t=t.parent}return t}isAttached(){return this.root.is("rootElement")}getPath(){const t=[];let e=this;while(e.parent){t.unshift(e.startOffset);e=e.parent}return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;while(n){e[t.parentFirst?"push":"unshift"](n);n=n.parent}return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e);const i=t.getAncestors(e);let o=0;while(n[o]==i[o]&&n[o]){o++}return o===0?null:n[o-1]}isBefore(t){if(this==t){return false}if(this.root!==t.root){return false}const e=this.getPath();const n=t.getPath();const i=Dt(e,n);switch(i){case"prefix":return true;case"extension":return false;default:return e[i]<n[i]}}isAfter(t){if(this==t){return false}if(this.root!==t.root){return false}return!this.isBefore(t)}hasAttribute(t){return this._attrs.has(t)}getAttribute(t){return this._attrs.get(t)}getAttributes(){return this._attrs.entries()}getAttributeKeys(){return this._attrs.keys()}toJSON(){const t={};if(this._attrs.size){t.attributes=Array.from(this._attrs).reduce(((t,e)=>{t[e[0]]=e[1];return t}),{})}return 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=mc(t)}_removeAttribute(t){return this._attrs.delete(t)}_clearAttributes(){this._attrs.clear()}}Up.prototype.is=function(t){return t==="node"||t==="model:node"};class Wp{constructor(t){this._nodes=[];if(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 e==-1?null:e}getNodeStartOffset(t){const e=this.getNodeIndex(t);return e===null?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 z("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&&t<e+n.offsetSize){return this.getNodeIndex(n)}e+=n.offsetSize}if(e!=t){throw new z("model-nodelist-offset-out-of-bounds",this,{offset:t,nodeList:this})}return this.length}_insertNodes(t,e){for(const t of e){if(!(t instanceof Up)){throw new z("model-nodelist-insertnodes-not-node",this)}}this._nodes=pc(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 qp extends Up{constructor(t,e){super(e);this._data=t||""}get offsetSize(){return this.data.length}get data(){return this._data}toJSON(){const t=super.toJSON();t.data=this.data;return t}_clone(){return new qp(this.data,this.getAttributes())}static fromJSON(t){return new qp(t.data,t.attributes)}}qp.prototype.is=function(t){return t==="$text"||t==="model:$text"||t==="text"||t==="model:text"||t==="node"||t==="model:node"};class Gp extends Hp{constructor(t,e,n){super();this.textNode=t;if(e<0||e>t.offsetSize){throw new z("model-textproxy-wrong-offsetintext",this)}if(n<0||e+n>t.offsetSize){throw new z("model-textproxy-wrong-length",this)}this.data=t.data.substring(e,e+n);this.offsetInText=e}get startOffset(){return this.textNode.startOffset!==null?this.textNode.startOffset+this.offsetInText:null}get offsetSize(){return this.data.length}get endOffset(){return this.startOffset!==null?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();if(t.length>0){t[t.length-1]+=this.offsetInText}return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;while(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()}}Gp.prototype.is=function(t){return t==="$textProxy"||t==="model:$textProxy"||t==="textProxy"||t==="model:textProxy"};class $p extends Up{constructor(t,e,n){super(e);this._children=new Wp;this.name=t;if(n){this._insertChild(0,n)}}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return this.childCount===0}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;while(n){if(n.name===t){return n}n=n.parent}return null}toJSON(){const t=super.toJSON();t.name=this.name;if(this._children.length>0){t.children=[];for(const e of this._children){t.children.push(e.toJSON())}}return t}_clone(t=false){const e=t?Array.from(this._children).map((t=>t._clone(true))):undefined;return new $p(this.name,this.getAttributes(),e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=Kp(e);for(const t of n){if(t.parent!==null){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){if(n.name){e.push($p.fromJSON(n))}else{e.push(qp.fromJSON(n))}}}return new $p(t.name,t.attributes,e)}}$p.prototype.is=function(t,e){if(!e){return t==="element"||t==="model:element"||t==="node"||t==="model:node"}return e===this.name&&(t==="element"||t==="model:element")};function Kp(t){if(typeof t=="string"){return[new qp(t)]}if(!St(t)){t=[t]}return Array.from(t).map((t=>{if(typeof t=="string"){return new qp(t)}if(t instanceof Gp){return new qp(t.data,t.getAttributes())}return t}))}class Yp{constructor(t){if(!t||!t.boundaries&&!t.startPosition){throw new z("model-tree-walker-no-start-position",null)}const e=t.direction||"forward";if(e!="forward"&&e!="backward"){throw new z("model-tree-walker-unknown-direction",t,{direction:e})}this.direction=e;this.boundaries=t.boundaries||null;if(t.startPosition){this.position=t.startPosition.clone()}else{this.position=Qp._createAt(this.boundaries[this.direction=="backward"?"end":"start"])}this.position.stickiness="toNone";this.singleCharacters=!!t.singleCharacters;this.shallow=!!t.shallow;this.ignoreElementEnd=!!t.ignoreElementEnd;this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null;this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null;this._visitedParent=this.position.parent}[Symbol.iterator](){return this}skip(t){let e,n,i,o;do{i=this.position;o=this._visitedParent;({done:e,value:n}=this.next())}while(!e&&t(n));if(!e){this.position=i;this._visitedParent=o}}next(){if(this.direction=="forward"){return this._next()}else{return this._previous()}}_next(){const t=this.position;const e=this.position.clone();const n=this._visitedParent;if(n.parent===null&&e.offset===n.maxOffset){return{done:true,value:undefined}}if(n===this._boundaryEndParent&&e.offset==this.boundaries.end.offset){return{done:true,value:undefined}}const i=Jp(e,n);const o=i?i:Xp(e,n,i);if(o instanceof $p){if(!this.shallow){e.path.push(0);this._visitedParent=o}else{e.offset++}this.position=e;return Zp("elementStart",o,t,e,1)}else if(o instanceof qp){let i;if(this.singleCharacters){i=1}else{let t=o.endOffset;if(this._boundaryEndParent==n&&this.boundaries.end.offset<t){t=this.boundaries.end.offset}i=t-e.offset}const r=e.offset-o.startOffset;const s=new Gp(o,r,i);e.offset+=i;this.position=e;return Zp("text",s,t,e,i)}else{e.path.pop();e.offset++;this.position=e;this._visitedParent=n.parent;if(this.ignoreElementEnd){return this._next()}else{return Zp("elementEnd",n,t,e)}}}_previous(){const t=this.position;const e=this.position.clone();const n=this._visitedParent;if(n.parent===null&&e.offset===0){return{done:true,value:undefined}}if(n==this._boundaryStartParent&&e.offset==this.boundaries.start.offset){return{done:true,value:undefined}}const i=e.parent;const o=Jp(e,i);const r=o?o:tb(e,i,o);if(r instanceof $p){e.offset--;if(!this.shallow){e.path.push(r.maxOffset);this.position=e;this._visitedParent=r;if(this.ignoreElementEnd){return this._previous()}else{return Zp("elementEnd",r,t,e)}}else{this.position=e;return Zp("elementStart",r,t,e,1)}}else if(r instanceof qp){let i;if(this.singleCharacters){i=1}else{let t=r.startOffset;if(this._boundaryStartParent==n&&this.boundaries.start.offset>t){t=this.boundaries.start.offset}i=e.offset-t}const o=e.offset-r.startOffset;const s=new Gp(r,o-i,i);e.offset-=i;this.position=e;return Zp("text",s,t,e,i)}else{e.path.pop();this.position=e;this._visitedParent=n.parent;return Zp("elementStart",n,t,e,1)}}}function Zp(t,e,n,i,o){return{done:false,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}class Qp extends Hp{constructor(t,e,n="toNone"){super();if(!t.is("element")&&!t.is("documentFragment")){throw new z("model-position-root-invalid",t)}if(!(e instanceof Array)||e.length===0){throw new z("model-position-path-incorrect-format",t,{path:e})}if(t.is("rootElement")){e=e.slice()}else{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;e<this.path.length-1;e++){t=t.getChild(t.offsetToIndex(this.path[e]));if(!t){throw new z("model-position-path-incorrect",this,{position:this})}}if(t.is("$text")){throw new z("model-position-path-incorrect",this,{position:this})}return t}get index(){return this.parent.offsetToIndex(this.offset)}get textNode(){return Jp(this,this.parent)}get nodeAfter(){const t=this.parent;return Xp(this,t,Jp(this,t))}get nodeBefore(){const t=this.parent;return tb(this,t,Jp(this,t))}get isAtStart(){return this.offset===0}get isAtEnd(){return this.offset==this.parent.maxOffset}compareWith(t){if(this.root!=t.root){return"different"}const e=Dt(this.path,t.path);switch(e){case"same":return"same";case"prefix":return"before";case"extension":return"after";default:return this.path[e]<t.path[e]?"before":"after"}}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new Yp(e);n.skip(t);return n.position}getParentPath(){return this.path.slice(0,-1)}getAncestors(){const t=this.parent;if(t.is("documentFragment")){return[t]}else{return t.getAncestors({includeSelf:true})}}findAncestor(t){const e=this.parent;if(e.is("element")){return e.findAncestor(t,{includeSelf:true})}return null}getCommonPath(t){if(this.root!=t.root){return[]}const e=Dt(this.path,t.path);const n=typeof e=="string"?Math.min(this.path.length,t.path.length):e;return this.path.slice(0,n)}getCommonAncestor(t){const e=this.getAncestors();const n=t.getAncestors();let i=0;while(e[i]==n[i]&&e[i]){i++}return i===0?null:e[i-1]}getShiftedBy(t){const e=this.clone();const n=e.offset+t;e.offset=n<0?0:n;return e}isAfter(t){return this.compareWith(t)=="after"}isBefore(t){return this.compareWith(t)=="before"}isEqual(t){return this.compareWith(t)=="same"}isTouching(t){if(this.root!==t.root){return false}const e=Math.min(this.path.length,t.path.length);for(let n=0;n<e;n++){const e=this.path[n]-t.path[n];if(e<-1||e>1){return false}else if(e===1){return eb(t,this,n)}else if(e===-1){return eb(this,t,n)}}if(this.path.length===t.path.length){return true}else if(this.path.length>t.path.length){return nb(this.path,e)}else{return nb(t.path,e)}}hasSameParentAs(t){if(this.root!==t.root){return false}const e=this.getParentPath();const n=t.getParentPath();return Dt(e,n)=="same"}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=Qp._createAt(this);break}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;const n=e.containsPosition(this)||e.start.isEqual(this)&&this.stickiness=="toNext";if(n){return this._getCombined(t.splitPosition,t.moveTargetPosition)}else{if(t.graveyardPosition){return this._getTransformedByMove(t.graveyardPosition,t.insertionPosition,1)}else{return this._getTransformedByInsertion(t.insertionPosition,1)}}}_getTransformedByMergeOperation(t){const e=t.movedRange;const n=e.containsPosition(this)||e.start.isEqual(this);let i;if(n){i=this._getCombined(t.sourcePosition,t.targetPosition);if(t.sourcePosition.isBefore(t.targetPosition)){i=i._getTransformedByDeletion(t.deletionPosition,1)}}else if(this.isEqual(t.deletionPosition)){i=Qp._createAt(t.deletionPosition)}else{i=this._getTransformedByMove(t.deletionPosition,t.graveyardPosition,1)}return i}_getTransformedByDeletion(t,e){const n=Qp._createAt(this);if(this.root!=t.root){return n}if(Dt(t.getParentPath(),this.getParentPath())=="same"){if(t.offset<this.offset){if(t.offset+e>this.offset){return null}else{n.offset-=e}}}else if(Dt(t.getParentPath(),this.getParentPath())=="prefix"){const i=t.path.length-1;if(t.offset<=this.path[i]){if(t.offset+e>this.path[i]){return null}else{n.path[i]-=e}}}return n}_getTransformedByInsertion(t,e){const n=Qp._createAt(this);if(this.root!=t.root){return n}if(Dt(t.getParentPath(),this.getParentPath())=="same"){if(t.offset<this.offset||t.offset==this.offset&&this.stickiness!="toPrevious"){n.offset+=e}}else if(Dt(t.getParentPath(),this.getParentPath())=="prefix"){const i=t.path.length-1;if(t.offset<=this.path[i]){n.path[i]+=e}}return n}_getTransformedByMove(t,e,n){e=e._getTransformedByDeletion(t,n);if(t.isEqual(e)){return Qp._createAt(this)}const i=this._getTransformedByDeletion(t,n);const o=i===null||t.isEqual(this)&&this.stickiness=="toNext"||t.getShiftedBy(n).isEqual(this)&&this.stickiness=="toPrevious";if(o){return this._getCombined(t,e)}else{return i._getTransformedByInsertion(e,n)}}_getCombined(t,e){const n=t.path.length-1;const i=Qp._createAt(e);i.stickiness=this.stickiness;i.offset=i.offset+this.path[n]-t.offset;i.path=[...i.path,...this.path.slice(n+1)];return i}toJSON(){return{root:this.root.toJSON(),path:Array.from(this.path),stickiness:this.stickiness}}clone(){return new this.constructor(this.root,this.path,this.stickiness)}static _createAt(t,e,n="toNone"){if(t instanceof Qp){return new Qp(t.root,t.path,t.stickiness)}else{const i=t;if(e=="end"){e=i.maxOffset}else if(e=="before"){return this._createBefore(i,n)}else if(e=="after"){return this._createAfter(i,n)}else if(e!==0&&!e){throw new z("model-createpositionat-offset-required",[this,t])}if(!i.is("element")&&!i.is("documentFragment")){throw new z("model-position-parent-incorrect",[this,t])}const o=i.getPath();o.push(e);return new this(i.root,o,n)}}static _createAfter(t,e){if(!t.parent){throw new z("model-position-after-root",[this,t],{root:t})}return this._createAt(t.parent,t.endOffset,e)}static _createBefore(t,e){if(!t.parent){throw new z("model-position-before-root",t,{root:t})}return this._createAt(t.parent,t.startOffset,e)}static fromJSON(t,e){if(t.root==="$graveyard"){const n=new Qp(e.graveyard,t.path);n.stickiness=t.stickiness;return n}if(!e.getRoot(t.root)){throw new z("model-position-fromjson-no-root",e,{rootName:t.root})}return new Qp(e.getRoot(t.root),t.path,t.stickiness)}}Qp.prototype.is=function(t){return t==="position"||t==="model:position"};function Jp(t,e){const n=e.getChild(e.offsetToIndex(t.offset));if(n&&n.is("$text")&&n.startOffset<t.offset){return n}return null}function Xp(t,e,n){if(n!==null){return null}return e.getChild(e.offsetToIndex(t.offset))}function tb(t,e,n){if(n!==null){return null}return e.getChild(e.offsetToIndex(t.offset)-1)}function eb(t,e,n){if(n+1===t.path.length){return false}if(!nb(e.path,n+1)){return false}if(!ib(t,n+1)){return false}return true}function nb(t,e){while(e<t.length){if(t[e]!==0){return false}e++}return true}function ib(t,e){let n=t.parent;let i=t.path.length-1;let o=0;while(i>=e){if(t.path[i]+o!==n.maxOffset){return false}o=1;i--;n=n.parent}return true}class ob extends Hp{constructor(t,e){super();this.start=Qp._createAt(t);this.end=e?Qp._createAt(e):Qp._createAt(t);this.start.stickiness=this.isCollapsed?"toNone":"toNext";this.end.stickiness=this.isCollapsed?"toNone":"toPrevious"}*[Symbol.iterator](){yield*new Yp({boundaries:this,ignoreElementEnd:true})}get isCollapsed(){return this.start.isEqual(this.end)}get isFlat(){const t=this.start.getParentPath();const e=this.end.getParentPath();return Dt(t,e)=="same"}get root(){return this.start.root}containsPosition(t){return t.isAfter(this.start)&&t.isBefore(this.end)}containsRange(t,e=false){if(t.isCollapsed){e=false}const n=this.containsPosition(t.start)||e&&this.start.isEqual(t.start);const i=this.containsPosition(t.end)||e&&this.end.isEqual(t.end);return n&&i}containsItem(t){const e=Qp._createBefore(t);return this.containsPosition(e)||this.start.isEqual(e)}isEqual(t){return this.start.isEqual(t.start)&&this.end.isEqual(t.end)}isIntersecting(t){return this.start.isBefore(t.end)&&this.end.isAfter(t.start)}getDifference(t){const e=[];if(this.isIntersecting(t)){if(this.containsPosition(t.start)){e.push(new ob(this.start,t.start))}if(this.containsPosition(t.end)){e.push(new ob(t.end,this.end))}}else{e.push(new ob(this.start,this.end))}return e}getIntersection(t){if(this.isIntersecting(t)){let e=this.start;let n=this.end;if(this.containsPosition(t.start)){e=t.start}if(this.containsPosition(t.end)){n=t.end}return new ob(e,n)}return null}getJoined(t,e=false){let n=this.isIntersecting(t);if(!n){if(this.start.isBefore(t.start)){n=e?this.end.isTouching(t.start):this.end.isEqual(t.start)}else{n=e?t.end.isTouching(this.start):t.end.isEqual(this.start)}}if(!n){return null}let i=this.start;let o=this.end;if(t.start.isBefore(i)){i=t.start}if(t.end.isAfter(o)){o=t.end}return new ob(i,o)}getMinimalFlatRanges(){const t=[];const e=this.start.getCommonPath(this.end).length;const n=Qp._createAt(this.start);let i=n.parent;while(n.path.length>e+1){const e=i.maxOffset-n.offset;if(e!==0){t.push(new ob(n,n.getShiftedBy(e)))}n.path=n.path.slice(0,-1);n.offset++;i=i.parent}while(n.path.length<=this.end.path.length){const e=this.end.path[n.path.length-1];const i=e-n.offset;if(i!==0){t.push(new ob(n,n.getShiftedBy(i)))}n.offset=e;n.path.push(0)}return t}getWalker(t={}){t.boundaries=this;return new Yp(t)}*getItems(t={}){t.boundaries=this;t.ignoreElementEnd=true;const e=new Yp(t);for(const t of e){yield t.item}}*getPositions(t={}){t.boundaries=this;const e=new Yp(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 ob(this.start,this.end)]}getTransformedByOperations(t){const e=[new ob(this.start,this.end)];for(const n of t){for(let t=0;t<e.length;t++){const i=e[t].getTransformedByOperation(n);e.splice(t,1,...i);t+=i.length-1}}for(let t=0;t<e.length;t++){const n=e[t];for(let i=t+1;i<e.length;i++){const t=e[i];if(n.containsRange(t)||t.containsRange(n)||n.isEqual(t)){e.splice(i,1)}}}return e}getCommonAncestor(){return this.start.getCommonAncestor(this.end)}getContainedElement(){if(this.isCollapsed){return null}const t=this.start.nodeAfter;const e=this.end.nodeBefore;if(t&&t.is("element")&&t===e){return t}return null}toJSON(){return{start:this.start.toJSON(),end:this.end.toJSON()}}clone(){return new this.constructor(this.start,this.end)}_getTransformedByInsertOperation(t,e=false){return this._getTransformedByInsertion(t.position,t.howMany,e)}_getTransformedByMoveOperation(t,e=false){const n=t.sourcePosition;const i=t.howMany;const o=t.targetPosition;return this._getTransformedByMove(n,o,i,e)}_getTransformedBySplitOperation(t){const e=this.start._getTransformedBySplitOperation(t);let n=this.end._getTransformedBySplitOperation(t);if(this.end.isEqual(t.insertionPosition)){n=this.end.getShiftedBy(1)}if(e.root!=n.root){n=this.end.getShiftedBy(-1)}return new ob(e,n)}_getTransformedByMergeOperation(t){if(this.start.isEqual(t.targetPosition)&&this.end.isEqual(t.deletionPosition)){return new ob(this.start)}let e=this.start._getTransformedByMergeOperation(t);let n=this.end._getTransformedByMergeOperation(t);if(e.root!=n.root){n=this.end.getShiftedBy(-1)}if(e.isAfter(n)){if(t.sourcePosition.isBefore(t.targetPosition)){e=Qp._createAt(n);e.offset=0}else{if(!t.deletionPosition.isEqual(e)){n=t.deletionPosition}e=t.targetPosition}return new ob(e,n)}return new ob(e,n)}_getTransformedByInsertion(t,e,n=false){if(n&&this.containsPosition(t)){return[new ob(this.start,t),new ob(t.getShiftedBy(e),this.end._getTransformedByInsertion(t,e))]}else{const n=new ob(this.start,this.end);n.start=n.start._getTransformedByInsertion(t,e);n.end=n.end._getTransformedByInsertion(t,e);return[n]}}_getTransformedByMove(t,e,n,i=false){if(this.isCollapsed){const i=this.start._getTransformedByMove(t,e,n);return[new ob(i)]}const o=ob._createFromPositionAndShift(t,n);const r=e._getTransformedByDeletion(t,n);if(this.containsPosition(e)&&!i){if(o.containsPosition(this.start)||o.containsPosition(this.end)){const i=this.start._getTransformedByMove(t,e,n);const o=this.end._getTransformedByMove(t,e,n);return[new ob(i,o)]}}let s;const a=this.getDifference(o);let l=null;const c=this.getIntersection(o);if(a.length==1){l=new ob(a[0].start._getTransformedByDeletion(t,n),a[0].end._getTransformedByDeletion(t,n))}else if(a.length==2){l=new ob(this.start,this.end._getTransformedByDeletion(t,n))}if(l){s=l._getTransformedByInsertion(r,n,c!==null||i)}else{s=[]}if(c){const t=new ob(c.start._getCombined(o.start,r),c.end._getCombined(o.start,r));if(s.length==2){s.splice(1,0,t)}else{s.push(t)}}return s}_getTransformedByDeletion(t,e){let n=this.start._getTransformedByDeletion(t,e);let i=this.end._getTransformedByDeletion(t,e);if(n==null&&i==null){return null}if(n==null){n=t}if(i==null){i=t}return new ob(n,i)}static _createFromPositionAndShift(t,e){const n=t;const i=t.getShiftedBy(e);return e>0?new this(n,i):new this(i,n)}static _createIn(t){return new this(Qp._createAt(t,0),Qp._createAt(t,t.maxOffset))}static _createOn(t){return this._createFromPositionAndShift(Qp._createBefore(t),t.offsetSize)}static _createFromRanges(t){if(t.length===0){throw new z("range-create-from-ranges-empty-array",null)}else if(t.length==1){return t[0].clone()}const e=t[0];t.sort(((t,e)=>t.start.isAfter(e.start)?1:-1));const n=t.indexOf(e);const i=new this(e.start,e.end);if(n>0){for(let e=n-1;true;e++){if(t[e].end.isEqual(i.start)){i.start=Qp._createAt(t[e].start)}else{break}}}for(let e=n+1;e<t.length;e++){if(t[e].start.isEqual(i.end)){i.end=Qp._createAt(t[e].end)}else{break}}return i}static fromJSON(t,e){return new this(Qp.fromJSON(t.start,e),Qp.fromJSON(t.end,e))}}ob.prototype.is=function(t){return t==="range"||t==="model:range"};class rb extends(K()){constructor(){super();this._modelToViewMapping=new WeakMap;this._viewToModelMapping=new WeakMap;this._viewToModelLengthCallbacks=new Map;this._markerNameToElements=new Map;this._elementToMarkerNames=new Map;this._deferredBindingRemovals=new Map;this._unboundMarkerNames=new Set;this.on("modelToViewPosition",((t,e)=>{if(e.viewPosition){return}const n=this._modelToViewMapping.get(e.modelPosition.parent);if(!n){throw new z("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);const i=this._viewToModelMapping.get(n);const o=this._toModelOffset(e.viewPosition.parent,e.viewPosition.offset,n);e.modelPosition=Qp._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)}}if(e.defer){this._deferredBindingRemovals.set(t,t.root)}else{this._viewToModelMapping.delete(t);if(this._modelToViewMapping.get(n)==t){this._modelToViewMapping.delete(n)}}}unbindModelElement(t){const e=this.toViewElement(t);this._modelToViewMapping.delete(t);if(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);if(n){n.delete(t);if(n.size==0){this._markerNameToElements.delete(e)}}const i=this._elementToMarkerNames.get(t);if(i){i.delete(e);if(i.size==0){this._elementToMarkerNames.delete(t)}}}flushUnboundMarkerNames(){const t=Array.from(this._unboundMarkerNames);this._unboundMarkerNames.clear();return t}flushDeferredBindings(){for(const[t,e]of this._deferredBindingRemovals){if(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 ob(this.toModelPosition(t.start),this.toModelPosition(t.end))}toViewRange(t){return new Rg(this.toViewPosition(t.start),this.toViewPosition(t.end))}toModelPosition(t){const e={viewPosition:t,mapper:this};this.fire("viewToModelPosition",e);return e.modelPosition}toViewPosition(t,e={}){const n={modelPosition:t,mapper:this,isPhantom:e.isPhantom};this.fire("modelToViewPosition",n);return 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;while(!this._viewToModelMapping.has(e)){e=e.parent}return e}_toModelOffset(t,e,n){if(n!=t){const i=this._toModelOffset(t.parent,t.index,n);const o=this._toModelOffset(t,e,t);return i+o}if(t.is("$text")){return e}let i=0;for(let n=0;n<e;n++){i+=this.getModelLength(t.getChild(n))}return i}getModelLength(t){if(this._viewToModelLengthCallbacks.get(t.name)){const e=this._viewToModelLengthCallbacks.get(t.name);return e(t)}else if(this._viewToModelMapping.has(t)){return 1}else if(t.is("$text")){return t.data.length}else if(t.is("uiElement")){return 0}else{let e=0;for(const n of t.getChildren()){e+=this.getModelLength(n)}return e}}findPositionIn(t,e){let n;let i=0;let o=0;let r=0;if(t.is("$text")){return new Og(t,e)}while(o<e){n=t.getChild(r);i=this.getModelLength(n);o+=i;r++}if(o==e){return this._moveViewPositionToTextNode(new Og(t,r))}else{return this.findPositionIn(n,e-(o-i))}}_moveViewPositionToTextNode(t){const e=t.nodeBefore;const n=t.nodeAfter;if(e instanceof Du){return new Og(e,e.data.length)}else if(n instanceof Du){return new Og(n,0)}return t}}class sb{constructor(){this._consumable=new Map;this._textProxyRegistry=new Map}add(t,e){e=ab(e);if(t instanceof Gp){t=this._getSymbolForTextProxy(t)}if(!this._consumable.has(t)){this._consumable.set(t,new Map)}this._consumable.get(t).set(e,true)}consume(t,e){e=ab(e);if(t instanceof Gp){t=this._getSymbolForTextProxy(t)}if(this.test(t,e)){this._consumable.get(t).set(e,false);return true}else{return false}}test(t,e){e=ab(e);if(t instanceof Gp){t=this._getSymbolForTextProxy(t)}const n=this._consumable.get(t);if(n===undefined){return null}const i=n.get(e);if(i===undefined){return null}return i}revert(t,e){e=ab(e);if(t instanceof Gp){t=this._getSymbolForTextProxy(t)}const n=this.test(t,e);if(n===false){this._consumable.get(t).set(e,true);return true}else if(n===true){return false}return null}verifyAllConsumed(t){const e=[];for(const[n,i]of this._consumable){for(const[o,r]of i){const i=o.split(":")[0];if(r&&t==i){e.push({event:o,item:n.name||n.description})}}}if(e.length){throw new z("conversion-model-consumable-not-consumed",null,{items:e})}}_getSymbolForTextProxy(t){let e=null;const n=this._textProxyRegistry.get(t.startOffset);if(n){const i=n.get(t.endOffset);if(i){e=i.get(t.parent)}}if(!e){e=this._addSymbolForTextProxy(t)}return e}_addSymbolForTextProxy(t){const e=t.startOffset;const n=t.endOffset;const i=t.parent;const o=Symbol("$textProxy:"+t.data);let r;let s;r=this._textProxyRegistry.get(e);if(!r){r=new Map;this._textProxyRegistry.set(e,r)}s=r.get(n);if(!s){s=new Map;r.set(n,s)}s.set(i,o);return o}}function ab(t){const e=t.split(":");if(e[0]=="insert"){return e[0]}if(e[0]=="addMarker"||e[0]=="removeMarker"){return t}return e.length>1?e[0]+":"+e[1]:e[0]}class lb extends(K()){constructor(t){super();this._conversionApi={dispatcher:this,...t};this._firedEventsMap=new WeakMap}convertChanges(t,e,n){const i=this._createConversionApi(n,t.getRefreshedItems());for(const e of t.getMarkersToRemove()){this._convertMarkerRemove(e.name,e.range,i)}const o=this._reduceChanges(t.getChanges());for(const t of o){if(t.type==="insert"){this._convertInsert(ob._createFromPositionAndShift(t.position,t.length),i)}else if(t.type==="reinsert"){this._convertReinsert(ob._createFromPositionAndShift(t.position,t.length),i)}else if(t.type==="remove"){this._convertRemove(t.position,t.length,t.name,i)}else{this._convertAttribute(t.range,t.attributeKey,t.attributeOldValue,t.attributeNewValue,i)}}for(const t of i.mapper.flushUnboundMarkerNames()){const n=e.get(t).getRange();this._convertMarkerRemove(t,n,i);this._convertMarkerAdd(t,n,i)}for(const e of t.getMarkersToAdd()){this._convertMarkerAdd(e.name,e.range,i)}i.mapper.flushDeferredBindings();i.consumable.verifyAllConsumed("insert")}convert(t,e,n,i={}){const o=this._createConversionApi(n,undefined,i);this._convertInsert(t,o);for(const[t,n]of e){this._convertMarkerAdd(t,n,o)}o.consumable.verifyAllConsumed("insert")}convertSelection(t,e,n){const i=Array.from(e.getMarkersAtPosition(t.getFirstPosition()));const o=this._createConversionApi(n);this._addConsumablesForSelection(o.consumable,t,i);this.fire("selection",{selection:t},o);if(!t.isCollapsed){return}for(const e of i){const n=e.getRange();if(!cb(t.getFirstPosition(),e,o.mapper)){continue}const i={item:t,markerName:e.name,markerRange:n};if(o.consumable.test(t,"addMarker:"+e.name)){this.fire(`addMarker:${e.name}`,i,o)}}for(const e of t.getAttributeKeys()){const n={item:t,range:t.getFirstRange(),attributeKey:e,attributeOldValue:null,attributeNewValue:t.getAttribute(e)};if(o.consumable.test(t,"attribute:"+n.attributeKey)){this.fire(`attribute:${n.attributeKey}:$text`,n,o)}}}_convertInsert(t,e,n={}){if(!n.doNotAddConsumables){this._addConsumablesForInsert(e.consumable,Array.from(t))}for(const n of Array.from(t.getWalker({shallow:true})).map(ub)){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:ob._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:true}));this._addConsumablesForInsert(e.consumable,n);for(const t of n.map(ub)){this._testAndFire("insert",{...t,reconversion:true},e)}}_convertMarkerAdd(t,e,n){if(e.root.rootName=="$graveyard"){return}const i=`addMarker:${t}`;n.consumable.add(e,i);this.fire(i,{markerName:t,markerRange:e},n);if(!n.consumable.consume(e,i)){return}this._addConsumablesForRange(n.consumable,e,i);for(const o of e.getItems()){if(!n.consumable.test(o,i)){continue}const r={item:o,range:ob._createOn(o),markerName:t,markerRange:e};this.fire(i,r,n)}}_convertMarkerRemove(t,e,n){if(e.root.rootName=="$graveyard"){return}this.fire(`removeMarker:${t}`,{markerName:t,markerRange:e},n)}_reduceChanges(t){const e={changes:t};this.fire("reduceChanges",e);return e.changes}_addConsumablesForInsert(t,e){for(const n of e){const e=n.item;if(t.test(e,"insert")===null){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=db(t,e);const o=e.item.is("$textProxy")?n.consumable._getSymbolForTextProxy(e.item):e.item;const r=this._firedEventsMap.get(n);const s=r.get(o);if(!s){r.set(o,new Set([i]))}else if(!s.has(i)){s.add(i)}else{return}this.fire(i,e,n)}_testAndFireAddAttributes(t,e){const n={item:t,range:ob._createOn(t)};for(const t of n.item.getAttributeKeys()){n.attributeKey=t;n.attributeOldValue=null;n.attributeNewValue=n.item.getAttribute(t);this._testAndFire(`attribute:${t}`,n,e)}}_createConversionApi(t,e=new Set,n={}){const i={...this._conversionApi,consumable:new sb,writer:t,options:n,convertItem:t=>this._convertInsert(ob._createOn(t),i),convertChildren:t=>this._convertInsert(ob._createIn(t),i,{doNotAddConsumables:true}),convertAttributes:t=>this._testAndFireAddAttributes(t,i),canReuseView:t=>!e.has(i.mapper.toModelElement(t))};this._firedEventsMap.set(i,new Map);return i}}function cb(t,e,n){const i=e.getRange();const o=Array.from(t.getAncestors());o.shift();o.reverse();const r=o.some((t=>{if(i.containsItem(t)){const e=n.toViewElement(t);return!!e.getCustomProperty("addHighlight")}}));return!r}function db(t,e){const n=e.item.is("element")?e.item.name:"$text";return`${t}:${n}`}function ub(t){const e=t.item;const n=ob._createFromPositionAndShift(t.previousPosition,t.length);return{item:e,range:n}}class hb extends(K(Hp)){constructor(...t){super();this._lastRangeBackward=false;this._attrs=new Map;this._ranges=[];if(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(){const t=this._ranges.length;if(t===1){return this._ranges[0].isCollapsed}else{return false}}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}isEqual(t){if(this.rangeCount!=t.rangeCount){return false}else if(this.rangeCount===0){return true}if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus)){return false}for(const e of this._ranges){let n=false;for(const i of t._ranges){if(e.isEqual(i)){n=true;break}}if(!n){return false}}return true}*getRanges(){for(const t of this._ranges){yield new ob(t.start,t.end)}}getFirstRange(){let t=null;for(const e of this._ranges){if(!t||e.start.isBefore(t.start)){t=e}}return t?new ob(t.start,t.end):null}getLastRange(){let t=null;for(const e of this._ranges){if(!t||e.end.isAfter(t.end)){t=e}}return t?new ob(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(typeof n=="object"){i=n;n=undefined}if(e===null){this._setRanges([])}else if(e instanceof hb){this._setRanges(e.getRanges(),e.isBackward)}else if(e&&typeof e.getRanges=="function"){this._setRanges(e.getRanges(),e.isBackward)}else if(e instanceof ob){this._setRanges([e],!!i&&!!i.backward)}else if(e instanceof Qp){this._setRanges([new ob(e)])}else if(e instanceof Up){const t=!!i&&!!i.backward;let o;if(n=="in"){o=ob._createIn(e)}else if(n=="on"){o=ob._createOn(e)}else if(n!==undefined){o=new ob(Qp._createAt(e,n))}else{throw new z("model-selection-setto-required-second-parameter",[this,e])}this._setRanges([o],t)}else if(St(e)){this._setRanges(e,i&&!!i.backward)}else{throw new z("model-selection-setto-not-selectable",[this,e])}}_setRanges(t,e=false){const n=Array.from(t);const i=n.some((e=>{if(!(e instanceof ob)){throw new z("model-selection-set-ranges-not-range",[this,t])}return this._ranges.every((t=>!t.isEqual(e)))}));if(n.length===this._ranges.length&&!i){return}this._replaceAllRanges(n);this._lastRangeBackward=!!e;this.fire("change:range",{directChange:true})}setFocus(t,e){if(this.anchor===null){throw new z("model-selection-setfocus-no-ranges",[this,t])}const n=Qp._createAt(t,e);if(n.compareWith(this.focus)=="same"){return}const i=this.anchor;if(this._ranges.length){this._popRange()}if(n.compareWith(i)=="before"){this._pushRange(new ob(n,i));this._lastRangeBackward=true}else{this._pushRange(new ob(i,n));this._lastRangeBackward=false}this.fire("change:range",{directChange:true})}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){if(this.hasAttribute(t)){this._attrs.delete(t);this.fire("change:attribute",{attributeKeys:[t],directChange:true})}}setAttribute(t,e){if(this.getAttribute(t)!==e){this._attrs.set(t,e);this.fire("change:attribute",{attributeKeys:[t],directChange:true})}}getSelectedElement(){if(this.rangeCount!==1){return null}return this.getFirstRange().getContainedElement()}*getSelectedBlocks(){const t=new WeakSet;for(const e of this.getRanges()){const n=fb(e.start,t);if(n&&pb(n,e)){yield n}for(const n of e.getWalker()){const i=n.item;if(n.type=="elementEnd"&&mb(i,t,e)){yield i}}const i=fb(e.end,t);if(i&&!e.end.isTouching(Qp._createAt(i,0))&&pb(i,e)){yield i}}}containsEntireContent(t=this.anchor.root){const e=Qp._createAt(t,0);const n=Qp._createAt(t,"end");return e.isTouching(this.getFirstPosition())&&n.isTouching(this.getLastPosition())}_pushRange(t){this._checkRange(t);this._ranges.push(new ob(t.start,t.end))}_checkRange(t){for(let e=0;e<this._ranges.length;e++){if(t.isIntersecting(this._ranges[e])){throw new z("model-selection-range-intersects",[this,t],{addedRange:t,intersectingRange:this._ranges[e]})}}}_replaceAllRanges(t){this._removeAllRanges();for(const e of t){this._pushRange(e)}}_removeAllRanges(){while(this._ranges.length>0){this._popRange()}}_popRange(){this._ranges.pop()}}hb.prototype.is=function(t){return t==="selection"||t==="model:selection"};function gb(t,e){if(e.has(t)){return false}e.add(t);return t.root.document.model.schema.isBlock(t)&&!!t.parent}function mb(t,e,n){return gb(t,e)&&pb(t,n)}function fb(t,e){const n=t.parent;const i=n.root.document.model.schema;const o=t.parent.getAncestors({parentFirst:true,includeSelf:true});let r=false;const s=o.find((t=>{if(r){return false}r=i.isLimit(t);return!r&&gb(t,e)}));o.forEach((t=>e.add(t)));return s}function pb(t,e){const n=bb(t);if(!n){return true}const i=e.containsRange(ob._createOn(n),true);return!i}function bb(t){const e=t.root.document.model.schema;let n=t.parent;while(n){if(e.isBlock(n)){return n}n=n.parent}}class kb extends(K(ob)){constructor(t,e){super(t,e);wb.call(this)}detach(){this.stopListening()}toRange(){return new ob(this.start,this.end)}static fromRange(t){return new kb(t.start,t.end)}}kb.prototype.is=function(t){return t==="liveRange"||t==="model:liveRange"||t=="range"||t==="model:range"};function wb(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];if(!n.isDocumentOperation){return}Ab.call(this,n)}),{priority:"low"})}function Ab(t){const e=this.getTransformedByOperation(t);const n=ob._createFromRanges(e);const i=!n.isEqual(this);const o=Cb(this,t);let r=null;if(i){if(n.root.rootName=="$graveyard"){if(t.type=="remove"){r=t.sourcePosition}else{r=t.deletionPosition}}const e=this.toRange();this.start=n.start;this.end=n.end;this.fire("change:range",e,{deletionPosition:r})}else if(o){this.fire("change:content",this.toRange(),{deletionPosition:r})}}function Cb(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 false}const _b="selection:";class vb extends(K(Hp)){constructor(t){super();this._selection=new yb(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(false)}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 _b+t}static _isStoreAttributeKey(t){return t.startsWith(_b)}}vb.prototype.is=function(t){return t==="selection"||t=="model:selection"||t=="documentSelection"||t=="model:documentSelection"};class yb extends hb{constructor(t){super();this.markers=new cc({idProperty:"name"});this._attributePriority=new Map;this._selectionRestorePosition=null;this._hasChangedRange=false;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];if(!n.isDocumentOperation||n.type=="marker"||n.type=="rename"||n.type=="noop"){return}if(this._ranges.length==0&&this._selectionRestorePosition){this._fixGraveyardSelection(this._selectionRestorePosition)}this._selectionRestorePosition=null;if(this._hasChangedRange){this._hasChangedRange=false;this.fire("change:range",{directChange:false})}}),{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)=>{Eb(this._model,e)}))}get isCollapsed(){const t=this._ranges.length;return t===0?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<this._ranges.length;t++){this._ranges[t].detach()}this.stopListening()}*getRanges(){if(this._ranges.length){yield*super.getRanges()}else{yield this._document._getDefaultRange()}}getFirstRange(){return super.getFirstRange()||this._document._getDefaultRange()}getLastRange(){return super.getLastRange()||this._document._getDefaultRange()}setTo(...t){super.setTo(...t);this._updateAttributes(true);this.updateMarkers()}setFocus(t,e){super.setFocus(t,e);this._updateAttributes(true);this.updateMarkers()}setAttribute(t,e){if(this._setAttribute(t,e)){const e=[t];this.fire("change:attribute",{attributeKeys:e,directChange:true})}}removeAttribute(t){if(this._removeAttribute(t)){const e=[t];this.fire("change:attribute",{attributeKeys:e,directChange:true})}}overrideGravity(){const t=I();this._overriddenGravityRegister.add(t);if(this._overriddenGravityRegister.size===1){this._updateAttributes(true)}return t}restoreGravity(t){if(!this._overriddenGravityRegister.has(t)){throw new z("document-selection-gravity-wrong-restore",this,{uid:t})}this._overriddenGravityRegister.delete(t);if(!this.isGravityOverridden){this._updateAttributes(true)}}observeMarkers(t){this._observedMarkers.add(t);this.updateMarkers()}_replaceAllRanges(t){this._validateSelectionRanges(t);super._replaceAllRanges(t)}_popRange(){this._ranges.pop().detach()}_pushRange(t){const e=this._prepareRange(t);if(e){this._ranges.push(e)}}_validateSelectionRanges(t){for(const e of t){if(!this._document._validateSelectionRange(e)){throw new z("document-selection-wrong-position",this,{range:e})}}}_prepareRange(t){this._checkRange(t);if(t.root==this._document.graveyard){return}const e=kb.fromRange(t);e.on("change:range",((t,n,i)=>{this._hasChangedRange=true;if(e.root==this._document.graveyard){this._selectionRestorePosition=i.deletionPosition;const t=this._ranges.indexOf(e);this._ranges.splice(t,1);e.detach()}}));return e}updateMarkers(){if(!this._observedMarkers.size){return}const t=[];let e=false;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()){if(i.containsRange(n,!n.isCollapsed)){t.push(e)}}}const n=Array.from(this.markers);for(const n of t){if(!this.markers.has(n)){this.markers.add(n);e=true}}for(const n of Array.from(this.markers)){if(!t.includes(n)){this.markers.remove(n);e=true}}if(e){this.fire("change:marker",{oldMarkers:n,directChange:false})}}_updateMarker(t,e){const n=t.name.split(":",1)[0];if(!this._observedMarkers.has(n)){return}let i=false;const o=Array.from(this.markers);const r=this.markers.has(t);if(!e){if(r){this.markers.remove(t);i=true}}else{let n=false;for(const t of this.getRanges()){if(e.containsRange(t,!t.isCollapsed)){n=true;break}}if(n&&!r){this.markers.add(t);i=true}else if(!n&&r){this.markers.remove(t);i=true}}if(i){this.fire("change:marker",{oldMarkers:o,directChange:false})}}_updateAttributes(t){const e=mc(this._getSurroundingAttributes());const n=mc(this.getAttributes());if(t){this._attributePriority=new Map;this._attrs=new Map}else{for(const[t,e]of this._attributePriority){if(e=="low"){this._attrs.delete(t);this._attributePriority.delete(t)}}}this._setAttributesTo(e);const i=[];for(const[t,e]of this.getAttributes()){if(!n.has(t)||n.get(t)!==e){i.push(t)}}for(const[t]of n){if(!this.hasAttribute(t)){i.push(t)}}if(i.length>0){this.fire("change:attribute",{attributeKeys:i,directChange:false})}}_setAttribute(t,e,n=true){const i=n?"normal":"low";if(i=="low"&&this._attributePriority.get(t)=="normal"){return false}const o=super.getAttribute(t);if(o===e){return false}this._attrs.set(t,e);this._attributePriority.set(t,i);return true}_removeAttribute(t,e=true){const n=e?"normal":"low";if(n=="low"&&this._attributePriority.get(t)=="normal"){return false}this._attributePriority.set(t,n);if(!super.hasAttribute(t)){return false}this._attrs.delete(t);return true}_setAttributesTo(t){const e=new Set;for(const[e,n]of this.getAttributes()){if(t.get(e)===n){continue}this._removeAttribute(e,false)}for(const[n,i]of t){const t=this._setAttribute(n,i,false);if(t){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(_b)){const n=e.substr(_b.length);yield[n,t.getAttribute(e)]}}}}_getSurroundingAttributes(){const t=this.getFirstPosition();const e=this._model.schema;let n=null;if(!this.isCollapsed){const t=this.getFirstRange();for(const i of t){if(i.item.is("element")&&e.isObject(i.item)){break}if(i.type=="text"){n=i.item.getAttributes();break}}}else{const i=t.textNode?t.textNode:t.nodeBefore;const o=t.textNode?t.textNode:t.nodeAfter;if(!this.isGravityOverridden){n=xb(i)}if(!n){n=xb(o)}if(!this.isGravityOverridden&&!n){let t=i;while(t&&!e.isInline(t)&&!n){t=t.previousSibling;n=xb(t)}}if(!n){let t=o;while(t&&!e.isInline(t)&&!n){t=t.nextSibling;n=xb(t)}}if(!n){n=this.getStoredAttributes()}}return n}_fixGraveyardSelection(t){const e=this._model.schema.getNearestSelectionRange(t);if(e){this._pushRange(e)}}}function xb(t){if(t instanceof Gp||t instanceof qp){return t.getAttributes()}return null}function Eb(t,e){const n=t.document.differ;for(const i of n.getChanges()){if(i.type!="insert"){continue}const n=i.position.parent;const o=i.length===n.maxOffset;if(o){t.enqueueChange(e,(t=>{const e=Array.from(n.getAttributeKeys()).filter((t=>t.startsWith(_b)));for(const i of e){t.removeAttribute(i,n)}}))}}}class Db{constructor(t){this._dispatchers=t}add(t){for(const e of this._dispatchers){t(e)}return this}}var Sb=1,Tb=4;function Ib(t){return Va(t,Sb|Tb)}const Mb=Ib;class Bb extends Db{elementToElement(t){return this.add(tk(t))}elementToStructure(t){return this.add(ek(t))}attributeToElement(t){return this.add(nk(t))}attributeToAttribute(t){return this.add(ik(t))}markerToElement(t){return this.add(ok(t))}markerToHighlight(t){return this.add(sk(t))}markerToData(t){return this.add(rk(t))}}function Lb(){return(t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const i=n.writer;const o=n.mapper.toViewPosition(e.range.start);const r=i.createText(e.item.data);i.insert(o,r)}}function Nb(){return(t,e,n)=>{n.convertAttributes(e.item);if(!e.reconversion&&e.item.is("element")&&!e.item.isEmpty){n.convertChildren(e.item)}}}function zb(){return(t,e,n)=>{const i=n.mapper.toViewPosition(e.position);const o=e.position.getShiftedBy(e.length);const r=n.mapper.toViewPosition(o,{isPhantom:true});const s=n.writer.createRange(i,r);const a=n.writer.remove(s.getTrimmed());for(const t of n.writer.createRangeIn(a).getItems()){n.mapper.unbindViewElement(t,{defer:true})}}}function Pb(t,e){const n=t.createAttributeElement("span",e.attributes);if(e.classes){n._addClass(e.classes)}if(typeof e.priority==="number"){n._priority=e.priority}n._id=e.id;return n}function Ob(){return(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})}}function Rb(){return(t,e,n)=>{const i=e.selection;if(!i.isCollapsed){return}if(!n.consumable.consume(i,"selection")){return}const o=n.writer;const r=i.getFirstPosition();const s=n.mapper.toViewPosition(r);const a=o.breakAttributes(s);o.setSelection(a)}}function Vb(){return(t,e,n)=>{const i=n.writer;const o=i.document.selection;for(const t of o.getRanges()){if(t.isCollapsed){if(t.end.parent.isAttached()){n.writer.mergeAttributes(t.start)}}}i.setSelection(null)}}function jb(t){return(e,n,i)=>{if(!i.consumable.test(n.item,e.name)){return}const o=t(n.attributeOldValue,i,n);const r=t(n.attributeNewValue,i,n);if(!o&&!r){return}i.consumable.consume(n.item,e.name);const s=i.writer;const a=s.document.selection;if(n.item instanceof hb||n.item instanceof vb){s.wrap(a.getFirstRange(),r)}else{let t=i.mapper.toViewRange(n.range);if(n.attributeOldValue!==null&&o){t=s.unwrap(t,o)}if(n.attributeNewValue!==null&&r){s.wrap(t,r)}}}}function Fb(t,e=Ck){return(n,i,o)=>{if(!e(i.item,o.consumable,{preflight:true})){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);wk(r,i.item.getChildren(),o,{reconversion:i.reconversion})}}function Hb(t,e){return(n,i,o)=>{if(!e(i.item,o.consumable,{preflight:true})){return}const r=new Map;o.writer._registerSlotFactory(pk(i.item,r,o));const s=t(i.item,o,i);o.writer._clearSlotFactory();if(!s){return}bk(i.item,r,o);e(i.item,o.consumable);const a=o.mapper.toViewPosition(i.range.start);o.mapper.bindElements(i.item,s);o.writer.insert(a,s);o.convertAttributes(i.item);kk(s,r,o,{reconversion:i.reconversion})}}function Ub(t){return(e,n,i)=>{n.isOpening=true;const o=t(n,i);n.isOpening=false;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;const l=i.writer;l.insert(a.toViewPosition(s.start),o);i.mapper.bindElementToMarker(o,n.markerName);if(!s.isCollapsed){l.insert(a.toViewPosition(s.end),r);i.mapper.bindElementToMarker(r,n.markerName)}e.stop()}}function Wb(){return(t,e,n)=>{const i=n.mapper.markerNameToElements(e.markerName);if(!i){return}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()}}function qb(t){return(e,n,i)=>{const o=t(n.markerName,i);if(!o){return}const r=n.markerRange;if(!i.consumable.consume(r,e.name)){return}Gb(r,false,i,n,o);Gb(r,true,i,n,o);e.stop()}}function Gb(t,e,n,i,o){const r=e?t.start:t.end;const s=r.nodeAfter&&r.nodeAfter.is("element")?r.nodeAfter:null;const a=r.nodeBefore&&r.nodeBefore.is("element")?r.nodeBefore:null;if(s||a){let t;let r;if(e&&s||!e&&!a){t=s;r=true}else{t=a;r=false}const l=n.mapper.toViewElement(t);if(l){$b(l,e,r,n,i,o);return}}const l=n.mapper.toViewPosition(r);Kb(l,e,n,i,o)}function $b(t,e,n,i,o,r){const s=`data-${r.group}-${e?"start":"end"}-${n?"before":"after"}`;const 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)}function Kb(t,e,n,i,o){const r=`${o.group}-${e?"start":"end"}`;const s=o.name?{name:o.name}:null;const a=n.writer.createUIElement(r,s);n.writer.insert(t,a);n.mapper.bindElementToMarker(a,i.markerName)}function Yb(t){return(e,n,i)=>{const o=t(n.markerName,i);if(!o){return}const r=i.mapper.markerNameToElements(n.markerName);if(!r){return}for(const t of r){i.mapper.unbindElementFromMarkerName(t,n.markerName);if(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)}else{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);if(n.size==0){i.writer.removeAttribute(t,e)}else{i.writer.setAttribute(t,Array.from(n).join(","),e)}}}}}function Zb(t){return(e,n,i)=>{if(!i.consumable.test(n.item,e.name)){return}const o=t(n.attributeOldValue,i,n);const r=t(n.attributeNewValue,i,n);if(!o&&!r){return}i.consumable.consume(n.item,e.name);const s=i.mapper.toViewElement(n.item);const a=i.writer;if(!s){throw new z("conversion-attribute-to-attribute-on-text",i.dispatcher,n)}if(n.attributeOldValue!==null&&o){if(o.key=="class"){const t=Xl(o.value);for(const e of t){a.removeClass(e,s)}}else if(o.key=="style"){const t=Object.keys(o.value);for(const e of t){a.removeStyle(e,s)}}else{a.removeAttribute(o.key,s)}}if(n.attributeNewValue!==null&&r){if(r.key=="class"){const t=Xl(r.value);for(const e of t){a.addClass(e,s)}}else if(r.key=="style"){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)}}}}function Qb(t){return(e,n,i)=>{if(!n.item){return}if(!(n.item instanceof hb||n.item instanceof vb)&&!n.item.is("$textProxy")){return}const o=hk(t,n,i);if(!o){return}if(!i.consumable.consume(n.item,e.name)){return}const r=i.writer;const s=Pb(r,o);const a=r.document.selection;if(n.item instanceof hb||n.item instanceof vb){r.wrap(a.getFirstRange(),s)}else{const t=i.mapper.toViewRange(n.range);const e=r.wrap(t,s);for(const t of e.getItems()){if(t.is("attributeElement")&&t.isSimilar(s)){i.mapper.bindElementToMarker(t,n.markerName);break}}}}}function Jb(t){return(e,n,i)=>{if(!n.item){return}if(!(n.item instanceof $p)){return}const o=hk(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 ob._createIn(n.item)){i.consumable.consume(t.item,e.name)}const t=r.getCustomProperty("addHighlight");t(r,o,i.writer);i.mapper.bindElementToMarker(r,n.markerName)}}}function Xb(t){return(e,n,i)=>{if(n.markerRange.isCollapsed){return}const o=hk(t,n,i);if(!o){return}const r=Pb(i.writer,o);const s=i.mapper.markerNameToElements(n.markerName);if(!s){return}for(const t of s){i.mapper.unbindElementFromMarkerName(t,n.markerName);if(t.is("attributeElement")){i.writer.unwrap(i.writer.createRangeOn(t),r)}else{const e=t.getCustomProperty("removeHighlight");e(t,o.id,i.writer)}}i.writer.clearClonedElementsGroup(n.markerName);e.stop()}}function tk(t){const e=ak(t.model);const n=lk(t.view,"container");if(e.attributes.length){e.children=true}return i=>{i.on(`insert:${e.name}`,Fb(n,fk(e)),{priority:t.converterPriority||"normal"});if(e.children||e.attributes.length){i.on("reduceChanges",mk(e),{priority:"low"})}}}function ek(t){const e=ak(t.model);const n=lk(t.view,"container");e.children=true;return i=>{if(i._conversionApi.schema.checkChild(e.name,"$text")){throw new z("conversion-element-to-structure-disallowed-text",i,{elementName:e.name})}i.on(`insert:${e.name}`,Hb(n,fk(e)),{priority:t.converterPriority||"normal"});i.on("reduceChanges",mk(e),{priority:"low"})}}function nk(t){t=Mb(t);let e=t.model;if(typeof e=="string"){e={key:e}}let n=`attribute:${e.key}`;if(e.name){n+=":"+e.name}if(e.values){for(const n of e.values){t.view[n]=lk(t.view[n],"attribute")}}else{t.view=lk(t.view,"attribute")}const i=dk(t);return e=>{e.on(n,jb(i),{priority:t.converterPriority||"normal"})}}function ik(t){t=Mb(t);let e=t.model;if(typeof e=="string"){e={key:e}}let n=`attribute:${e.key}`;if(e.name){n+=":"+e.name}if(e.values){for(const n of e.values){t.view[n]=uk(t.view[n])}}else{t.view=uk(t.view)}const i=dk(t);return e=>{e.on(n,Zb(i),{priority:t.converterPriority||"normal"})}}function ok(t){const e=lk(t.view,"ui");return n=>{n.on(`addMarker:${t.model}`,Ub(e),{priority:t.converterPriority||"normal"});n.on(`removeMarker:${t.model}`,Wb(),{priority:t.converterPriority||"normal"})}}function rk(t){t=Mb(t);const e=t.model;let n=t.view;if(!n){n=n=>({group:e,name:n.substr(t.model.length+1)})}return i=>{i.on(`addMarker:${e}`,qb(n),{priority:t.converterPriority||"normal"});i.on(`removeMarker:${e}`,Yb(n),{priority:t.converterPriority||"normal"})}}function sk(t){return e=>{e.on(`addMarker:${t.model}`,Qb(t.view),{priority:t.converterPriority||"normal"});e.on(`addMarker:${t.model}`,Jb(t.view),{priority:t.converterPriority||"normal"});e.on(`removeMarker:${t.model}`,Xb(t.view),{priority:t.converterPriority||"normal"})}}function ak(t){if(typeof t=="string"){t={name:t}}if(!t.attributes){t.attributes=[]}else if(!Array.isArray(t.attributes)){t.attributes=[t.attributes]}t.children=!!t.children;return t}function lk(t,e){if(typeof t=="function"){return t}return(n,i)=>ck(t,i,e)}function ck(t,e,n){if(typeof t=="string"){t={name:t}}let i;const o=e.writer;const r=Object.assign({},t.attributes);if(n=="container"){i=o.createContainerElement(t.name,r)}else if(n=="attribute"){const e={priority:t.priority||Jg.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(typeof e=="string"){o.addClass(e,i)}else{for(const t of e){o.addClass(t,i)}}}return i}function dk(t){if(t.model.values){return(e,n,i)=>{const o=t.view[e];if(o){return o(e,n,i)}return null}}else{return t.view}}function uk(t){if(typeof t=="string"){return e=>({key:t,value:e})}else if(typeof t=="object"){if(t.value){return()=>t}else{return e=>({key:t.key,value:e})}}else{return t}}function hk(t,e,n){const i=typeof t=="function"?t(e,n):t;if(!i){return null}if(!i.priority){i.priority=10}if(!i.id){i.id=e.markerName}return i}function gk(t){return(e,n)=>{if(!e.is("element",t.name)){return false}if(n.type=="attribute"){if(t.attributes.includes(n.attributeKey)){return true}}else{if(t.children){return true}}return false}}function mk(t){const e=gk(t);return(t,n)=>{const i=[];if(!n.reconvertedElements){n.reconvertedElements=new Set}for(const t of n.changes){const o=t.type=="attribute"?t.range.start.nodeAfter:t.position.parent;if(!o||!e(o,t)){i.push(t);continue}if(!n.reconvertedElements.has(o)){n.reconvertedElements.add(o);const t=Qp._createBefore(o);i.push({type:"remove",name:o.name,position:t,length:1},{type:"reinsert",name:o.name,position:t,length:1})}}n.changes=i}}function fk(t){return(e,n,i={})=>{const o=["insert"];for(const n of t.attributes){if(e.hasAttribute(n)){o.push(`attribute:${n}`)}}if(!o.every((t=>n.test(e,t)))){return false}if(!i.preflight){o.forEach((t=>n.consume(e,t)))}return true}}function pk(t,e,n){return(i,o="children")=>{const r=i.createContainerElement("$slot");let s=null;if(o==="children"){s=Array.from(t.getChildren())}else if(typeof o=="function"){s=Array.from(t.getChildren()).filter((t=>o(t)))}else{throw new z("conversion-slot-mode-unknown",n.dispatcher,{modeOrFilter:o})}e.set(r,s);return r}}function bk(t,e,n){const i=Array.from(e.values()).flat();const o=new Set(i);if(o.size!=i.length){throw new z("conversion-slot-filter-overlap",n.dispatcher,{element:t})}if(o.size!=t.childCount){throw new z("conversion-slot-filter-incomplete",n.dispatcher,{element:t})}}function kk(t,e,n,i){n.mapper.on("modelToViewPosition",s,{priority:"highest"});let o=null;let r=null;for([o,r]of e){wk(t,r,n,i);n.writer.move(n.writer.createRangeIn(o),n.writer.createPositionBefore(o));n.writer.remove(o)}n.mapper.off("modelToViewPosition",s);function s(t,e){const n=e.modelPosition.nodeAfter;const i=r.indexOf(n);if(i<0){return}e.viewPosition=e.mapper.findPositionIn(o,i)}}function wk(t,e,n,i){for(const o of e){if(!Ak(t.root,o,n,i)){n.convertItem(o)}}}function Ak(t,e,n,i){const{writer:o,mapper:r}=n;if(!i.reconversion){return false}const s=r.toViewElement(e);if(!s||s.root==t){return false}if(!n.canReuseView(s)){return false}o.move(o.createRangeOn(s),r.toViewPosition(Qp._createBefore(e)));return true}function Ck(t,e,{preflight:n}={}){if(n){return e.test(t,"insert")}else{return e.consume(t,"insert")}}function _k(t){const{schema:e,document:n}=t.model;for(const i of n.getRootNames()){const o=n.getRoot(i);if(o.isEmpty&&!e.checkChild(o,"$text")){if(e.checkChild(o,"paragraph")){t.insertElement("paragraph",o);return true}}}return false}function vk(t,e,n){const i=n.createContext(t);if(!n.checkChild(i,"paragraph")){return false}if(!n.checkChild(i.push("paragraph"),e)){return false}return true}function yk(t,e){const n=e.createElement("paragraph");e.insert(n,t);return e.createPositionAt(n,0)}class xk extends Db{elementToElement(t){return this.add(Tk(t))}elementToAttribute(t){return this.add(Ik(t))}attributeToAttribute(t){return this.add(Mk(t))}elementToMarker(t){return this.add(Bk(t))}dataToMarker(t){return this.add(Lk(t))}}function Ek(){return(t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:true})){const{modelRange:t,modelCursor:i}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t;e.modelCursor=i}}}function Dk(){return(t,e,{schema:n,consumable:i,writer:o})=>{let r=e.modelCursor;if(!i.test(e.viewItem)){return}if(!n.checkChild(r,"$text")){if(!vk(r,"$text",n)){return}if(e.viewItem.data.trim().length==0){return}const t=r.nodeBefore;r=yk(r,o);if(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}}function Sk(t,e){return(n,i)=>{const o=i.newSelection;const r=[];for(const t of o.getRanges()){r.push(e.toModelRange(t))}const s=t.createSelection(r,{backward:o.isBackward});if(!s.isEqual(t.document.selection)){t.change((t=>{t.setSelection(s)}))}}}function Tk(t){t=Mb(t);const e=Pk(t);const n=zk(t.view);const i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"normal"})}}function Ik(t){t=Mb(t);Vk(t);const e=jk(t,false);const n=zk(t.view);const i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"low"})}}function Mk(t){t=Mb(t);let e=null;if(typeof t.view=="string"||t.view.key){e=Rk(t)}Vk(t,e);const n=jk(t,true);return e=>{e.on("element",n,{priority:t.converterPriority||"low"})}}function Bk(t){const e=Uk(t.model);return Tk({...t,model:e})}function Lk(t){t=Mb(t);if(!t.model){t.model=e=>e?t.view+":"+e:t.view}const e={view:t.view,model:t.model};const n=Pk(Wk(e,"start"));const i=Pk(Wk(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=B.get("low");const s=B.get("highest");const a=B.get(t.converterPriority)/s;o.on("element",Nk(e),{priority:r+a})}}function Nk(t){return(e,n,i)=>{const o=`data-${t.view}`;if(!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"})){return}if(!n.modelRange){Object.assign(n,i.convertChildren(n.viewItem,n.modelCursor))}if(i.consumable.consume(n.viewItem,{attributes:o+"-end-after"})){r(n.modelRange.end,n.viewItem.getAttribute(o+"-end-after").split(","))}if(i.consumable.consume(n.viewItem,{attributes:o+"-start-after"})){r(n.modelRange.end,n.viewItem.getAttribute(o+"-start-after").split(","))}if(i.consumable.consume(n.viewItem,{attributes:o+"-end-before"})){r(n.modelRange.start,n.viewItem.getAttribute(o+"-end-before").split(","))}if(i.consumable.consume(n.viewItem,{attributes:o+"-start-before"})){r(n.modelRange.start,n.viewItem.getAttribute(o+"-start-before").split(","))}function r(e,o){for(const r of o){const o=t.model(r,i);const s=i.writer.createElement("$marker",{"data-name":o});i.writer.insert(s,e);if(n.modelCursor.isEqual(e)){n.modelCursor=n.modelCursor.getShiftedBy(1)}else{n.modelCursor=n.modelCursor._getTransformedByInsertion(e,1)}n.modelRange=n.modelRange._getTransformedByInsertion(e,1)[0]}}}}function zk(t){if(typeof t=="string"){return t}if(typeof t=="object"&&typeof t.name=="string"){return t.name}return null}function Pk(t){const e=new Tu(t.view);return(n,i,o)=>{const r=e.match(i.viewItem);if(!r){return}const s=r.match;s.name=true;if(!o.consumable.test(i.viewItem,s)){return}const a=Ok(t.model,i.viewItem,o);if(!a){return}if(!o.safeInsert(a,i.modelCursor)){return}o.consumable.consume(i.viewItem,s);o.convertChildren(i.viewItem,a);o.updateConversionResult(a,i)}}function Ok(t,e,n){if(t instanceof Function){return t(e,n)}else{return n.writer.createElement(t)}}function Rk(t){if(typeof t.view=="string"){t.view={key:t.view}}const e=t.view.key;let n;if(e=="class"||e=="style"){const i=e=="class"?"classes":"styles";n={[i]:t.view.value}}else{const i=typeof t.view.value=="undefined"?/[\s\S]*/:t.view.value;n={attributes:{[e]:i}}}if(t.view.name){n.name=t.view.name}t.view=n;return e}function Vk(t,e=null){const n=e===null?true:t=>t.getAttribute(e);const i=typeof t.model!="object"?t.model:t.model.key;const o=typeof t.model!="object"||typeof t.model.value=="undefined"?n:t.model.value;t.model={key:i,value:o}}function jk(t,e){const n=new Tu(t.view);return(i,o,r)=>{if(!o.modelRange&&e){return}const s=n.match(o.viewItem);if(!s){return}if(Fk(t.view,o.viewItem)){s.match.name=true}else{delete s.match.name}if(!r.consumable.test(o.viewItem,s.match)){return}const a=t.model.key;const l=typeof t.model.value=="function"?t.model.value(o.viewItem,r):t.model.value;if(l===null){return}if(!o.modelRange){Object.assign(o,r.convertChildren(o.viewItem,o.modelCursor))}const c=Hk(o.modelRange,{key:a,value:l},e,r);if(c){if(r.consumable.test(o.viewItem,{name:true})){s.match.name=true}r.consumable.consume(o.viewItem,s.match)}}}function Fk(t,e){const n=typeof t=="function"?t(e):t;if(typeof n=="object"&&!zk(n)){return false}return!n.classes&&!n.attributes&&!n.styles}function Hk(t,e,n,i){let o=false;for(const r of Array.from(t.getItems({shallow:n}))){if(!i.schema.checkAttribute(r,e.key)){continue}o=true;if(r.hasAttribute(e.key)){continue}i.writer.setAttribute(e.key,e.value,r)}return o}function Uk(t){return(e,n)=>{const i=typeof t=="string"?t:t(e,n);return n.writer.createElement("$marker",{"data-name":i})}}function Wk(t,e){const n=(e,n)=>{const i=e.getAttribute("name");const o=t.model(i,n);return n.writer.createElement("$marker",{"data-name":o})};return{view:`${t.view}-${e}`,model:n}}class qk extends(mt()){constructor(t,e){super();this.model=t;this.view=new Fp(e);this.mapper=new rb;this.downcastDispatcher=new lb({mapper:this.mapper,schema:t.schema});const n=this.model.document;const i=n.selection;const o=this.model.markers;this.listenTo(this.model,"_beforeChanges",(()=>{this.view._disableRendering(true)}),{priority:"highest"});this.listenTo(this.model,"_afterChanges",(()=>{this.view._disableRendering(false)}),{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",Sk(this.model,this.mapper));this.downcastDispatcher.on("insert:$text",Lb(),{priority:"lowest"});this.downcastDispatcher.on("insert",Nb(),{priority:"lowest"});this.downcastDispatcher.on("remove",zb(),{priority:"low"});this.downcastDispatcher.on("selection",Vb(),{priority:"high"});this.downcastDispatcher.on("selection",Ob(),{priority:"low"});this.downcastDispatcher.on("selection",Rb(),{priority:"low"});this.view.document.roots.bindTo(this.model.document.roots).using((t=>{if(t.rootName=="$graveyard"){return null}const e=new zg(this.view.document,t.name);e.rootName=t.rootName;this.mapper.bindElements(t,e);return e}))}destroy(){this.view.destroy();this.stopListening()}reconvertMarker(t){const e=typeof t=="string"?t:t.name;const n=this.model.markers.get(e);if(!n){throw new z("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 Gk{constructor(){this._consumables=new Map}add(t,e){let n;if(t.is("$text")||t.is("documentFragment")){this._consumables.set(t,true);return}if(!this._consumables.has(t)){n=new Kk(t);this._consumables.set(t,n)}else{n=this._consumables.get(t)}n.add(e)}test(t,e){const n=this._consumables.get(t);if(n===undefined){return null}if(t.is("$text")||t.is("documentFragment")){return n}return n.test(e)}consume(t,e){if(this.test(t,e)){if(t.is("$text")||t.is("documentFragment")){this._consumables.set(t,false)}else{this._consumables.get(t).consume(e)}return true}return false}revert(t,e){const n=this._consumables.get(t);if(n!==undefined){if(t.is("$text")||t.is("documentFragment")){this._consumables.set(t,true)}else{n.revert(e)}}}static consumablesFromElement(t){const e={element:t,name:true,attributes:[],classes:[],styles:[]};const n=t.getAttributeKeys();for(const t of n){if(t=="style"||t=="class"){continue}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 Gk}if(t.is("$text")){e.add(t);return e}if(t.is("element")){e.add(t,Gk.consumablesFromElement(t))}if(t.is("documentFragment")){e.add(t)}for(const n of t.getChildren()){e=Gk.createFrom(n,e)}return e}}const $k=["attributes","classes","styles"];class Kk{constructor(t){this.element=t;this._canConsumeName=null;this._consumables={attributes:new Map,styles:new Map,classes:new Map}}add(t){if(t.name){this._canConsumeName=true}for(const e of $k){if(e in t){this._add(e,t[e])}}}test(t){if(t.name&&!this._canConsumeName){return this._canConsumeName}for(const e of $k){if(e in t){const n=this._test(e,t[e]);if(n!==true){return n}}}return true}consume(t){if(t.name){this._canConsumeName=false}for(const e of $k){if(e in t){this._consume(e,t[e])}}}revert(t){if(t.name){this._canConsumeName=true}for(const e of $k){if(e in t){this._revert(e,t[e])}}}_add(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){throw new z("viewconsumable-invalid-attribute",this)}i.set(e,true);if(t==="styles"){for(const t of this.element.document.stylesProcessor.getRelatedStyles(e)){i.set(t,true)}}}}_test(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){const t=e=="class"?"classes":"styles";const n=this._test(t,[...this._consumables[t].keys()]);if(n!==true){return n}}else{const t=i.get(e);if(t===undefined){return null}if(!t){return false}}}return true}_consume(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){const t=e=="class"?"classes":"styles";this._consume(t,[...this._consumables[t].keys()])}else{i.set(e,false);if(t=="styles"){for(const t of this.element.document.stylesProcessor.getRelatedStyles(e)){i.set(t,false)}}}}}_revert(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){const t=e=="class"?"classes":"styles";this._revert(t,[...this._consumables[t].keys()])}else{const t=i.get(e);if(t===false){i.set(e,true)}}}}}class Yk extends(mt()){constructor(){super();this._sourceDefinitions={};this._attributeProperties={};this.decorate("checkChild");this.decorate("checkAttribute");this.on("checkAttribute",((t,e)=>{e[0]=new Zk(e[0])}),{priority:"highest"});this.on("checkChild",((t,e)=>{e[0]=new Zk(e[0]);e[1]=this.getDefinition(e[1])}),{priority:"highest"})}register(t,e){if(this._sourceDefinitions[t]){throw new z("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 z("schema-cannot-extend-missing-item",this,{itemName:t})}this._sourceDefinitions[t].push(Object.assign({},e));this._clearCache()}getDefinitions(){if(!this._compiledDefinitions){this._compile()}return this._compiledDefinitions}getDefinition(t){let e;if(typeof t=="string"){e=t}else if("is"in t&&(t.is("$text")||t.is("$textProxy"))){e="$text"}else{e=t.name}return 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);if(!e){return false}return!!(e.isLimit||e.isObject)}isObject(t){const e=this.getDefinition(t);if(!e){return false}return!!(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);if(!e){return false}return!!(e.isSelectable||e.isObject)}isContent(t){const e=this.getDefinition(t);if(!e){return false}return!!(e.isContent||e.isObject)}checkChild(t,e){if(!e){return false}return this._checkContextMatch(e,t)}checkAttribute(t,e){const n=this.getDefinition(t.last);if(!n){return false}return n.allowAttributes.includes(e)}checkMerge(t,e){if(t instanceof Qp){const e=t.nodeBefore;const n=t.nodeAfter;if(!(e instanceof $p)){throw new z("schema-check-merge-no-element-before",this)}if(!(n instanceof $p)){throw new z("schema-check-merge-no-element-after",this)}return this.checkMerge(e,n)}for(const n of e.getChildren()){if(!this.checkChild(t,n)){return false}}return true}addChildCheck(t){this.on("checkChild",((e,[n,i])=>{if(!i){return}const o=t(n,i);if(typeof o=="boolean"){e.stop();e.return=o}}),{priority:"high"})}addAttributeCheck(t){this.on("checkAttribute",((e,[n,i])=>{const o=t(n,i);if(typeof o=="boolean"){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 Qp){e=t.parent}else{const n=t instanceof ob?[t]:Array.from(t.getRanges());e=n.reduce(((t,e)=>{const n=e.getCommonAncestor();if(!t){return n}return t.getCommonAncestor(n,{includeSelf:true})}),null)}while(!this.isLimit(e)){if(e.parent){e=e.parent}else{break}}return e}checkAttributeInSelection(t,e){if(t.isCollapsed){const n=t.getFirstPosition();const i=[...n.getAncestors(),new qp("",t.getAttributes())];return this.checkAttribute(i,e)}else{const n=t.getRanges();for(const t of n){for(const n of t){if(this.checkAttribute(n.item,e)){return true}}}}return false}*getValidRanges(t,e){t=gw(t);for(const n of t){yield*this._getValidRangesForRange(n,e)}}getNearestSelectionRange(t,e="both"){if(this.checkChild(t,"$text")){return new ob(t)}let n,i;const o=t.getAncestors().reverse().find((t=>this.isLimit(t)))||t.root;if(e=="both"||e=="backward"){n=new Yp({boundaries:ob._createIn(o),startPosition:t,direction:"backward"})}if(e=="both"||e=="forward"){i=new Yp({boundaries:ob._createIn(o),startPosition:t})}for(const t of hw(n,i)){const e=t.walker==n?"elementEnd":"elementStart";const i=t.value;if(i.type==e&&this.isObject(i.item)){return ob._createOn(i.item)}if(this.checkChild(i.nextPosition,"$text")){return new ob(i.nextPosition)}}return null}findAllowedParent(t,e){let n=t.parent;while(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)){if(i.schema.checkAttribute(t,o)){n.setAttribute(o,r,t)}}}removeDisallowedAttributes(t,e){for(const n of t){if(n.is("$text")){mw(this,n,e)}else{const t=ob._createIn(n);const i=t.getPositions();for(const t of i){const n=t.nodeBefore||t.parent;mw(this,n,e)}}}}getAttributesWithProperty(t,e,n){const i={};for(const[o,r]of t.getAttributes()){const t=this.getAttributeProperties(o);if(t[e]===undefined){continue}if(n===undefined||n===t[e]){i[o]=r}}return i}createContext(t){return new Zk(t)}_clearCache(){this._compiledDefinitions=null}_compile(){const t={};const e=this._sourceDefinitions;const n=Object.keys(e);for(const i of n){t[i]=Qk(e[i],i)}for(const e of n){Jk(t,e)}for(const e of n){Xk(t,e)}for(const e of n){tw(t,e)}for(const e of n){ew(t,e);nw(t,e)}for(const e of n){iw(t,e);ow(t,e);rw(t,e)}this._compiledDefinitions=t}_checkContextMatch(t,e,n=e.length-1){const i=e.getItem(n);if(t.allowIn.includes(i.name)){if(n==0){return true}else{const t=this.getDefinition(i);return this._checkContextMatch(t,e,n-1)}}else{return false}}*_getValidRangesForRange(t,e){let n=t.start;let i=t.start;for(const o of t.getItems({shallow:true})){if(o.is("element")){yield*this._getValidRangesForRange(ob._createIn(o),e)}if(!this.checkAttribute(o,e)){if(!n.isEqual(i)){yield new ob(n,i)}n=Qp._createAfter(o)}i=Qp._createAfter(o)}if(!n.isEqual(i)){yield new ob(n,i)}}}class Zk{constructor(t){if(t instanceof Zk){return t}let e;if(typeof t=="string"){e=[t]}else if(!Array.isArray(t)){e=t.getAncestors({includeSelf:true})}else{e=t}this._items=e.map(uw)}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 Zk([t]);e._items=[...this._items,...e._items];return 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 Qk(t,e){const n={name:e,allowIn:[],allowContentOf:[],allowWhere:[],allowAttributes:[],allowAttributesOf:[],allowChildren:[],inheritTypesFrom:[]};sw(t,n);aw(t,n,"allowIn");aw(t,n,"allowContentOf");aw(t,n,"allowWhere");aw(t,n,"allowAttributes");aw(t,n,"allowAttributesOf");aw(t,n,"allowChildren");aw(t,n,"inheritTypesFrom");lw(t,n);return n}function Jk(t,e){const n=t[e];for(const i of n.allowChildren){const n=t[i];if(!n){continue}n.allowIn.push(e)}n.allowChildren.length=0}function Xk(t,e){for(const n of t[e].allowContentOf){if(t[n]){const i=cw(t,n);i.forEach((t=>{t.allowIn.push(e)}))}}delete t[e].allowContentOf}function tw(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 ew(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 nw(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){if(!(e in n)){n[e]=i[e]}}}}delete n.inheritTypesFrom}function iw(t,e){const n=t[e];const i=n.allowIn.filter((e=>t[e]));n.allowIn=Array.from(new Set(i))}function ow(t,e){const n=t[e];for(const i of n.allowIn){const n=t[i];n.allowChildren.push(e)}}function rw(t,e){const n=t[e];n.allowAttributes=Array.from(new Set(n.allowAttributes))}function sw(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]}}}function aw(t,e,n){for(const i of t){const t=i[n];if(typeof t=="string"){e[n].push(t)}else if(Array.isArray(t)){e[n].push(...t)}}}function lw(t,e){for(const n of t){const t=n.inheritAllFrom;if(t){e.allowContentOf.push(t);e.allowWhere.push(t);e.allowAttributesOf.push(t);e.inheritTypesFrom.push(t)}}}function cw(t,e){const n=t[e];return dw(t).filter((t=>t.allowIn.includes(n.name)))}function dw(t){return Object.keys(t).map((e=>t[e]))}function uw(t){if(typeof t=="string"||t.is("documentFragment")){return{name:typeof t=="string"?t:"$documentFragment",*getAttributeKeys(){},getAttribute(){}}}else{return{name:t.is("element")?t.name:"$text",*getAttributeKeys(){yield*t.getAttributeKeys()},getAttribute(e){return t.getAttribute(e)}}}}function*hw(t,e){let n=false;while(!n){n=true;if(t){const e=t.next();if(!e.done){n=false;yield{walker:t,value:e.value}}}if(e){const t=e.next();if(!t.done){n=false;yield{walker:e,value:t.value}}}}}function*gw(t){for(const e of t){yield*e.getMinimalFlatRanges()}}function mw(t,e,n){for(const i of e.getAttributeKeys()){if(!t.checkAttribute(e,i)){n.removeAttribute(i,e)}}}class fw extends(K()){constructor(t){super();this._splitParts=new Map;this._cursorParents=new Map;this._modelCursor=null;this._emptyElementsToKeep=new Set;this.conversionApi={...t,consumable:null,writer:null,store:null,convertItem:(t,e)=>this._convertItem(t,e),convertChildren:(t,e)=>this._convertChildren(t,e),safeInsert:(t,e)=>this._safeInsert(t,e),updateConversionResult:(t,e)=>this._updateConversionResult(t,e),splitToAllowedParent:(t,e)=>this._splitToAllowedParent(t,e),getSplitParts:t=>this._getSplitParts(t),keepEmptyElement:t=>this._keepEmptyElement(t)}}convert(t,e,n=["$root"]){this.fire("viewCleanup",t);this._modelCursor=bw(n,e);this.conversionApi.writer=e;this.conversionApi.consumable=Gk.createFrom(t);this.conversionApi.store={};const{modelRange:i}=this._convertItem(t,this._modelCursor);const o=e.createDocumentFragment();if(i){this._removeEmptyElements();for(const t of Array.from(this._modelCursor.parent.getChildren())){e.append(t,o)}o.markers=pw(o,e)}this._modelCursor=null;this._splitParts.clear();this._cursorParents.clear();this._emptyElementsToKeep.clear();this.conversionApi.writer=null;this.conversionApi.store=null;return o}_convertItem(t,e){const n={viewItem:t,modelCursor:e,modelRange:null};if(t.is("element")){this.fire(`element:${t.name}`,n,this.conversionApi)}else if(t.is("$text")){this.fire("text",n,this.conversionApi)}else{this.fire("documentFragment",n,this.conversionApi)}if(n.modelRange&&!(n.modelRange instanceof ob)){throw new z("view-conversion-dispatcher-incorrect-result",this)}return{modelRange:n.modelRange,modelCursor:n.modelCursor}}_convertChildren(t,e){let n=e.is("position")?e:Qp._createAt(e,0);const i=new ob(n);for(const e of Array.from(t.getChildren())){const t=this._convertItem(e,n);if(t.modelRange instanceof ob){i.end=t.modelRange.end;n=t.modelCursor}}return{modelRange:i,modelCursor:n}}_safeInsert(t,e){const n=this._splitToAllowedParent(t,e);if(!n){return false}this.conversionApi.writer.insert(t,n.position);return true}_updateConversionResult(t,e){const n=this._getSplitParts(t);const i=this.conversionApi.writer;if(!e.modelRange){e.modelRange=i.createRange(i.createPositionBefore(t),i.createPositionAfter(n[n.length-1]))}const o=this._cursorParents.get(t);if(o){e.modelCursor=i.createPositionAt(o,0)}else{e.modelCursor=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}}if(this._modelCursor.parent.getAncestors().includes(o)){o=null}}if(!o){if(!vk(e,t,n)){return null}return{position:yk(e,i)}}const r=this.conversionApi.writer.split(e,o);const s=[];for(const t of r.range.getWalker()){if(t.type=="elementEnd"){s.push(t.item)}else{const e=s.pop();const n=t.item;this._registerSplitPair(e,n)}}const a=r.range.end.parent;this._cursorParents.set(t,a);return{position:r.position,cursorParent:a}}_registerSplitPair(t,e){if(!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;if(!this._splitParts.has(t)){e=[t]}else{e=this._splitParts.get(t)}return e}_keepEmptyElement(t){this._emptyElementsToKeep.add(t)}_removeEmptyElements(){let t=false;for(const e of this._splitParts.keys()){if(e.isEmpty&&!this._emptyElementsToKeep.has(e)){this.conversionApi.writer.remove(e);this._splitParts.delete(e);t=true}}if(t){this._removeEmptyElements()}}}function pw(t,e){const n=new Set;const i=new Map;const o=ob._createIn(t).getItems();for(const t of o){if(t.is("element","$marker")){n.add(t)}}for(const t of n){const n=t.getAttribute("data-name");const o=e.createPositionBefore(t);if(!i.has(n)){i.set(n,new ob(o.clone()))}else{i.get(n).end=o.clone()}e.remove(t)}return i}function bw(t,e){let n;for(const i of new Zk(t)){const t={};for(const e of i.getAttributeKeys()){t[e]=i.getAttribute(e)}const o=e.createElement(i.name,t);if(n){e.insert(o,n)}n=Qp._createAt(o,0)}return n}class kw{getHtml(t){const e=document.implementation.createHTMLDocument("");const n=e.createElement("div");n.appendChild(t);return n.innerHTML}}class ww{constructor(t){this.skipComments=true;this.domParser=new DOMParser;this.domConverter=new Jm(t,{renderingMode:"data"});this.htmlWriter=new kw}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=t=="marked"?"markedNbsp":"nbsp"}_toDom(t){if(!t.match(/<(?:html|body|head|meta)(?:\s[^>]*)?>/i)){t=`<body>${t}</body>`}const e=this.domParser.parseFromString(t,"text/html");const n=e.createDocumentFragment();const i=e.body.childNodes;while(i.length>0){n.appendChild(i[0])}return n}}class Aw extends(K()){constructor(t,e){super();this.model=t;this.mapper=new rb;this.downcastDispatcher=new lb({mapper:this.mapper,schema:t.schema});this.downcastDispatcher.on("insert:$text",Lb(),{priority:"lowest"});this.downcastDispatcher.on("insert",Nb(),{priority:"lowest"});this.upcastDispatcher=new fw({schema:t.schema});this.viewDocument=new Zg(e);this.stylesProcessor=e;this.htmlProcessor=new ww(this.viewDocument);this.processor=this.htmlProcessor;this._viewWriter=new um(this.viewDocument);this.upcastDispatcher.on("text",Dk(),{priority:"lowest"});this.upcastDispatcher.on("element",Ek(),{priority:"lowest"});this.upcastDispatcher.on("documentFragment",Ek(),{priority:"lowest"});mt().prototype.decorate.call(this,"init");mt().prototype.decorate.call(this,"set");mt().prototype.decorate.call(this,"get");mt().prototype.decorate.call(this,"toView");mt().prototype.decorate.call(this,"toModel");this.on("init",(()=>{this.fire("ready")}),{priority:"lowest"});this.on("ready",(()=>{this.model.enqueueChange({isUndoable:false},_k)}),{priority:"lowest"})}get(t={}){const{rootName:e="main",trim:n="empty"}=t;if(!this._checkIfRootsExists([e])){throw new z("datacontroller-get-non-existent-root",this)}const i=this.model.document.getRoot(e);if(n==="empty"&&!this.model.hasContent(i,{ignoreWhitespaces:true})){return""}return 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;const i=this._viewWriter;this.mapper.clearBindings();const o=ob._createIn(t);const r=new cm(n);this.mapper.bindElements(t,r);const s=t.is("documentFragment")?t.markers:Cw(t);this.downcastDispatcher.convert(o,s,i,e);return r}init(t){if(this.model.document.version){throw new z("datacontroller-init-document-not-empty",this)}let e={};if(typeof t==="string"){e.main=t}else{e=t}if(!this._checkIfRootsExists(Object.keys(e))){throw new z("datacontroller-init-non-existent-root",this)}this.model.enqueueChange({isUndoable:false},(t=>{for(const n of Object.keys(e)){const i=this.model.document.getRoot(n);t.insert(this.parse(e[n],i),i,0)}}));return Promise.resolve()}set(t,e={}){let n={};if(typeof t==="string"){n.main=t}else{n=t}if(!this._checkIfRootsExists(Object.keys(n))){throw new z("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){if(this.processor&&this.processor!==this.htmlProcessor){this.processor.registerRawContentMatcher(t)}this.htmlProcessor.registerRawContentMatcher(t)}destroy(){this.stopListening()}_checkIfRootsExists(t){for(const e of t){if(!this.model.document.getRootNames().includes(e)){return false}}return true}}function Cw(t){const e=[];const n=t.root.document;if(!n){return new Map}const i=ob._createIn(t);for(const t of n.model.markers){const n=t.getRange();const o=n.isCollapsed;const 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);if(o){e.push([t.name,o])}}}e.sort((([t,e],[n,i])=>{if(e.end.compareWith(i.start)!=="after"){return 1}else if(e.start.compareWith(i.end)!=="before"){return-1}else{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)}}}}));return new Map(e)}class _w{constructor(t,e){this._helpers=new Map;this._downcast=Xl(t);this._createConversionHelpers({name:"downcast",dispatchers:this._downcast,isDowncast:true});this._upcast=Xl(e);this._createConversionHelpers({name:"upcast",dispatchers:this._upcast,isDowncast:false})}addAlias(t,e){const n=this._downcast.includes(e);const i=this._upcast.includes(e);if(!i&&!n){throw new z("conversion-add-alias-dispatcher-not-registered",this)}this._createConversionHelpers({name:t,dispatchers:[e],isDowncast:n})}for(t){if(!this._helpers.has(t)){throw new z("conversion-for-unknown-group",this)}return this._helpers.get(t)}elementToElement(t){this.for("downcast").elementToElement(t);for(const{model:e,view:n}of vw(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 vw(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 vw(t)){this.for("upcast").attributeToAttribute({view:n,model:e})}}_createConversionHelpers({name:t,dispatchers:e,isDowncast:n}){if(this._helpers.has(t)){throw new z("conversion-group-exists",this)}const i=n?new Bb(e):new xk(e);this._helpers.set(t,i)}}function*vw(t){if(t.model.values){for(const e of t.model.values){const n={key:t.model.key,value:e};const i=t.view[e];const o=t.upcastAlso?t.upcastAlso[e]:undefined;yield*yw(n,i,o)}}else{yield*yw(t.model,t.view,t.upcastAlso)}}function*yw(t,e,n){yield{model:t,view:e};if(n){for(const e of Xl(n)){yield{model:t,view:e}}}}class xw{constructor(t){this.baseVersion=t;this.isDocumentOperation=this.baseVersion!==null;this.batch=null}_validate(){}toJSON(){const t=Object.assign({},this);t.__className=this.constructor.className;delete t.batch;delete t.isDocumentOperation;return t}static get className(){return"Operation"}static fromJSON(t,e){return new this(t.baseVersion)}}function Ew(t,e){const n=Iw(e);const i=n.reduce(((t,e)=>t+e.offsetSize),0);const o=t.parent;Bw(t);const r=t.index;o._insertChild(r,n);Mw(o,r+n.length);Mw(o,r);return new ob(t,t.getShiftedBy(i))}function Dw(t){if(!t.isFlat){throw new z("operation-utils-remove-range-not-flat",this)}const e=t.start.parent;Bw(t.start);Bw(t.end);const n=e._removeChildren(t.start.index,t.end.index-t.start.index);Mw(e,t.start.index);return n}function Sw(t,e){if(!t.isFlat){throw new z("operation-utils-move-range-not-flat",this)}const n=Dw(t);e=e._getTransformedByDeletion(t.start,t.end.offset-t.start.offset);return Ew(e,n)}function Tw(t,e,n){Bw(t.start);Bw(t.end);for(const i of t.getItems({shallow:true})){const t=i.is("$textProxy")?i.textNode:i;if(n!==null){t._setAttribute(e,n)}else{t._removeAttribute(e)}Mw(t.parent,t.index)}Mw(t.end.parent,t.end.index)}function Iw(t){const e=[];function n(t){if(typeof t=="string"){e.push(new qp(t))}else if(t instanceof Gp){e.push(new qp(t.data,t.getAttributes()))}else if(t instanceof Up){e.push(t)}else if(St(t)){for(const e of t){n(e)}}}n(t);for(let t=1;t<e.length;t++){const n=e[t];const i=e[t-1];if(n instanceof qp&&i instanceof qp&&Lw(n,i)){e.splice(t-1,2,new qp(i.data+n.data,i.getAttributes()));t--}}return e}function Mw(t,e){const n=t.getChild(e-1);const i=t.getChild(e);if(n&&i&&n.is("$text")&&i.is("$text")&&Lw(n,i)){const o=new qp(n.data+i.data,n.getAttributes());t._removeChildren(e-1,2);t._insertChild(e-1,o)}}function Bw(t){const e=t.textNode;const n=t.parent;if(e){const i=t.offset-e.startOffset;const o=e.index;n._removeChildren(o,1);const r=new qp(e.data.substr(0,i),e.getAttributes());const s=new qp(e.data.substr(i),e.getAttributes());n._insertChild(o,[r,s])}}function Lw(t,e){const n=t.getAttributes();const i=e.getAttributes();for(const t of n){if(t[1]!==e.getAttribute(t[0])){return false}i.next()}return i.next().done}class Nw extends xw{constructor(t,e,n,i){super(i);this.sourcePosition=t.clone();this.sourcePosition.stickiness="toNext";this.howMany=e;this.targetPosition=n.clone();this.targetPosition.stickiness="toNone"}get type(){if(this.targetPosition.root.rootName=="$graveyard"){return"remove"}else if(this.sourcePosition.root.rootName=="$graveyard"){return"reinsert"}return"move"}clone(){return new Nw(this.sourcePosition,this.howMany,this.targetPosition,this.baseVersion)}getMovedRangeStart(){return this.targetPosition._getTransformedByDeletion(this.sourcePosition,this.howMany)}getReversed(){const t=this.sourcePosition._getTransformedByInsertion(this.targetPosition,this.howMany);return new Nw(this.getMovedRangeStart(),this.howMany,t,this.baseVersion+1)}_validate(){const t=this.sourcePosition.parent;const e=this.targetPosition.parent;const n=this.sourcePosition.offset;const i=this.targetPosition.offset;if(n+this.howMany>t.maxOffset){throw new z("move-operation-nodes-do-not-exist",this)}else if(t===e&&n<i&&i<n+this.howMany){throw new z("move-operation-range-into-itself",this)}else if(this.sourcePosition.root==this.targetPosition.root){if(Dt(this.sourcePosition.getParentPath(),this.targetPosition.getParentPath())=="prefix"){const t=this.sourcePosition.path.length-1;if(this.targetPosition.path[t]>=n&&this.targetPosition.path[t]<n+this.howMany){throw new z("move-operation-node-into-itself",this)}}}}_execute(){Sw(ob._createFromPositionAndShift(this.sourcePosition,this.howMany),this.targetPosition)}toJSON(){const t=super.toJSON();t.sourcePosition=this.sourcePosition.toJSON();t.targetPosition=this.targetPosition.toJSON();return t}static get className(){return"MoveOperation"}static fromJSON(t,e){const n=Qp.fromJSON(t.sourcePosition,e);const i=Qp.fromJSON(t.targetPosition,e);return new this(n,t.howMany,i,t.baseVersion)}}class zw extends xw{constructor(t,e,n){super(n);this.position=t.clone();this.position.stickiness="toNone";this.nodes=new Wp(Iw(e));this.shouldReceiveAttributes=false}get type(){return"insert"}get howMany(){return this.nodes.maxOffset}clone(){const t=new Wp([...this.nodes].map((t=>t._clone(true))));const e=new zw(this.position,t,this.baseVersion);e.shouldReceiveAttributes=this.shouldReceiveAttributes;return e}getReversed(){const t=this.position.root.document.graveyard;const e=new Qp(t,[0]);return new Nw(this.position,this.nodes.maxOffset,e,this.baseVersion+1)}_validate(){const t=this.position.parent;if(!t||t.maxOffset<this.position.offset){throw new z("insert-operation-position-invalid",this)}}_execute(){const t=this.nodes;this.nodes=new Wp([...t].map((t=>t._clone(true))));Ew(this.position,t)}toJSON(){const t=super.toJSON();t.position=this.position.toJSON();t.nodes=this.nodes.toJSON();return t}static get className(){return"InsertOperation"}static fromJSON(t,e){const n=[];for(const e of t.nodes){if(e.name){n.push($p.fromJSON(e))}else{n.push(qp.fromJSON(e))}}const i=new zw(Qp.fromJSON(t.position,e),n,t.baseVersion);i.shouldReceiveAttributes=t.shouldReceiveAttributes;return i}}class Pw extends xw{constructor(t,e,n,i,o,r){super(r);this.name=t;this.oldRange=e?e.clone():null;this.newRange=n?n.clone():null;this.affectsData=o;this._markers=i}get type(){return"marker"}clone(){return new Pw(this.name,this.oldRange,this.newRange,this._markers,this.affectsData,this.baseVersion)}getReversed(){return new Pw(this.name,this.newRange,this.oldRange,this._markers,this.affectsData,this.baseVersion+1)}_execute(){if(this.newRange){this._markers._set(this.name,this.newRange,true,this.affectsData)}else{this._markers._remove(this.name)}}toJSON(){const t=super.toJSON();if(this.oldRange){t.oldRange=this.oldRange.toJSON()}if(this.newRange){t.newRange=this.newRange.toJSON()}delete t._markers;return t}static get className(){return"MarkerOperation"}static fromJSON(t,e){return new Pw(t.name,t.oldRange?ob.fromJSON(t.oldRange,e):null,t.newRange?ob.fromJSON(t.newRange,e):null,e.model.markers,t.affectsData,t.baseVersion)}}function Ow(t,e){return Sp(t,e)}const Rw=Ow;class Vw extends xw{constructor(t,e,n,i,o){super(o);this.range=t.clone();this.key=e;this.oldValue=n===undefined?null:n;this.newValue=i===undefined?null:i}get type(){if(this.oldValue===null){return"addAttribute"}else if(this.newValue===null){return"removeAttribute"}else{return"changeAttribute"}}clone(){return new Vw(this.range,this.key,this.oldValue,this.newValue,this.baseVersion)}getReversed(){return new Vw(this.range,this.key,this.newValue,this.oldValue,this.baseVersion+1)}toJSON(){const t=super.toJSON();t.range=this.range.toJSON();return t}_validate(){if(!this.range.isFlat){throw new z("attribute-operation-range-not-flat",this)}for(const t of this.range.getItems({shallow:true})){if(this.oldValue!==null&&!Rw(t.getAttribute(this.key),this.oldValue)){throw new z("attribute-operation-wrong-old-value",this,{item:t,key:this.key,value:this.oldValue})}if(this.oldValue===null&&this.newValue!==null&&t.hasAttribute(this.key)){throw new z("attribute-operation-attribute-exists",this,{node:t,key:this.key})}}}_execute(){if(!Rw(this.oldValue,this.newValue)){Tw(this.range,this.key,this.newValue)}}static get className(){return"AttributeOperation"}static fromJSON(t,e){return new Vw(ob.fromJSON(t.range,e),t.key,t.oldValue,t.newValue,t.baseVersion)}}class jw extends xw{get type(){return"noop"}clone(){return new jw(this.baseVersion)}getReversed(){return new jw(this.baseVersion+1)}_execute(){}static get className(){return"NoOperation"}}class Fw extends xw{constructor(t,e,n,i){super(i);this.position=t;this.position.stickiness="toNext";this.oldName=e;this.newName=n}get type(){return"rename"}clone(){return new Fw(this.position.clone(),this.oldName,this.newName,this.baseVersion)}getReversed(){return new Fw(this.position.clone(),this.newName,this.oldName,this.baseVersion+1)}_validate(){const t=this.position.nodeAfter;if(!(t instanceof $p)){throw new z("rename-operation-wrong-position",this)}else if(t.name!==this.oldName){throw new z("rename-operation-wrong-name",this)}}_execute(){const t=this.position.nodeAfter;t.name=this.newName}toJSON(){const t=super.toJSON();t.position=this.position.toJSON();return t}static get className(){return"RenameOperation"}static fromJSON(t,e){return new Fw(Qp.fromJSON(t.position,e),t.oldName,t.newName,t.baseVersion)}}class Hw extends xw{constructor(t,e,n,i,o){super(o);this.root=t;this.key=e;this.oldValue=n;this.newValue=i}get type(){if(this.oldValue===null){return"addRootAttribute"}else if(this.newValue===null){return"removeRootAttribute"}else{return"changeRootAttribute"}}clone(){return new Hw(this.root,this.key,this.oldValue,this.newValue,this.baseVersion)}getReversed(){return new Hw(this.root,this.key,this.newValue,this.oldValue,this.baseVersion+1)}_validate(){if(this.root!=this.root.root||this.root.is("documentFragment")){throw new z("rootattribute-operation-not-a-root",this,{root:this.root,key:this.key})}if(this.oldValue!==null&&this.root.getAttribute(this.key)!==this.oldValue){throw new z("rootattribute-operation-wrong-old-value",this,{root:this.root,key:this.key})}if(this.oldValue===null&&this.newValue!==null&&this.root.hasAttribute(this.key)){throw new z("rootattribute-operation-attribute-exists",this,{root:this.root,key:this.key})}}_execute(){if(this.newValue!==null){this.root._setAttribute(this.key,this.newValue)}else{this.root._removeAttribute(this.key)}}toJSON(){const t=super.toJSON();t.root=this.root.toJSON();return t}static get className(){return"RootAttributeOperation"}static fromJSON(t,e){if(!e.getRoot(t.root)){throw new z("rootattribute-operation-fromjson-no-root",this,{rootName:t.root})}return new Hw(e.getRoot(t.root),t.key,t.oldValue,t.newValue,t.baseVersion)}}class Uw extends xw{constructor(t,e,n,i,o){super(o);this.sourcePosition=t.clone();this.sourcePosition.stickiness="toPrevious";this.howMany=e;this.targetPosition=n.clone();this.targetPosition.stickiness="toNext";this.graveyardPosition=i.clone()}get type(){return"merge"}get deletionPosition(){return new Qp(this.sourcePosition.root,this.sourcePosition.path.slice(0,-1))}get movedRange(){const t=this.sourcePosition.getShiftedBy(Number.POSITIVE_INFINITY);return new ob(this.sourcePosition,t)}clone(){return new Uw(this.sourcePosition,this.howMany,this.targetPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.targetPosition._getTransformedByMergeOperation(this);const e=this.sourcePosition.path.slice(0,-1);const n=new Qp(this.sourcePosition.root,e)._getTransformedByMergeOperation(this);return new Ww(t,this.howMany,n,this.graveyardPosition,this.baseVersion+1)}_validate(){const t=this.sourcePosition.parent;const e=this.targetPosition.parent;if(!t.parent){throw new z("merge-operation-source-position-invalid",this)}else if(!e.parent){throw new z("merge-operation-target-position-invalid",this)}else if(this.howMany!=t.maxOffset){throw new z("merge-operation-how-many-invalid",this)}}_execute(){const t=this.sourcePosition.parent;const e=ob._createIn(t);Sw(e,this.targetPosition);Sw(ob._createOn(t),this.graveyardPosition)}toJSON(){const t=super.toJSON();t.sourcePosition=t.sourcePosition.toJSON();t.targetPosition=t.targetPosition.toJSON();t.graveyardPosition=t.graveyardPosition.toJSON();return t}static get className(){return"MergeOperation"}static fromJSON(t,e){const n=Qp.fromJSON(t.sourcePosition,e);const i=Qp.fromJSON(t.targetPosition,e);const o=Qp.fromJSON(t.graveyardPosition,e);return new this(n,t.howMany,i,o,t.baseVersion)}}class Ww extends xw{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;if(this.graveyardPosition){this.graveyardPosition.stickiness="toNext"}}get type(){return"split"}get moveTargetPosition(){const t=this.insertionPosition.path.slice();t.push(0);return new Qp(this.insertionPosition.root,t)}get movedRange(){const t=this.splitPosition.getShiftedBy(Number.POSITIVE_INFINITY);return new ob(this.splitPosition,t)}clone(){return new Ww(this.splitPosition,this.howMany,this.insertionPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.splitPosition.root.document.graveyard;const e=new Qp(t,[0]);return new Uw(this.moveTargetPosition,this.howMany,this.splitPosition,e,this.baseVersion+1)}_validate(){const t=this.splitPosition.parent;const e=this.splitPosition.offset;if(!t||t.maxOffset<e){throw new z("split-operation-position-invalid",this)}else if(!t.parent){throw new z("split-operation-split-in-root",this)}else if(this.howMany!=t.maxOffset-this.splitPosition.offset){throw new z("split-operation-how-many-invalid",this)}else if(this.graveyardPosition&&!this.graveyardPosition.nodeAfter){throw new z("split-operation-graveyard-position-invalid",this)}}_execute(){const t=this.splitPosition.parent;if(this.graveyardPosition){Sw(ob._createFromPositionAndShift(this.graveyardPosition,1),this.insertionPosition)}else{const e=t._clone();Ew(this.insertionPosition,e)}const e=new ob(Qp._createAt(t,this.splitPosition.offset),Qp._createAt(t,t.maxOffset));Sw(e,this.moveTargetPosition)}toJSON(){const t=super.toJSON();t.splitPosition=this.splitPosition.toJSON();t.insertionPosition=this.insertionPosition.toJSON();if(this.graveyardPosition){t.graveyardPosition=this.graveyardPosition.toJSON()}return t}static get className(){return"SplitOperation"}static getInsertionPosition(t){const e=t.path.slice(0,-1);e[e.length-1]++;return new Qp(t.root,e,"toPrevious")}static fromJSON(t,e){const n=Qp.fromJSON(t.splitPosition,e);const i=Qp.fromJSON(t.insertionPosition,e);const o=t.graveyardPosition?Qp.fromJSON(t.graveyardPosition,e):null;return new this(n,t.howMany,i,o,t.baseVersion)}}const qw={};qw[Vw.className]=Vw;qw[zw.className]=zw;qw[Pw.className]=Pw;qw[Nw.className]=Nw;qw[jw.className]=jw;qw[xw.className]=xw;qw[Fw.className]=Fw;qw[Hw.className]=Hw;qw[Ww.className]=Ww;qw[Uw.className]=Uw;class Gw{static fromJSON(t,e){return qw[t.__className].fromJSON(t,e)}}const $w=new Map;function Kw(t,e,n){let i=$w.get(t);if(!i){i=new Map;$w.set(t,i)}i.set(e,n)}function Yw(t,e){const n=$w.get(t);if(n&&n.has(e)){return n.get(e)}return Zw}function Zw(t){return[t]}function Qw(t,e,n={}){const i=Yw(t.constructor,e.constructor);try{t=t.clone();return i(t,e,n)}catch(t){throw t}}function Jw(t,e,n){t=t.slice();e=e.slice();const i=new Xw(n.document,n.useRelations,n.forceWeakRemove);i.setOriginalOperations(t);i.setOriginalOperations(e);const o=i.originalOperations;if(t.length==0||e.length==0){return{operationsA:t,operationsB:e,originalOperations:o}}const r=new WeakMap;for(const e of t){r.set(e,0)}const s={nextBaseVersionA:t[t.length-1].baseVersion+1,nextBaseVersionB:e[e.length-1].baseVersion+1,originalOperationsACount:t.length,originalOperationsBCount:e.length};let a=0;while(a<t.length){const n=t[a];const o=r.get(n);if(o==e.length){a++;continue}const s=e[o];const l=Qw(n,s,i.getContext(n,s,true));const c=Qw(s,n,i.getContext(s,n,false));i.updateRelation(n,s);i.setOriginalOperations(l,n);i.setOriginalOperations(c,s);for(const t of l){r.set(t,o+c.length)}t.splice(a,1,...l);e.splice(o,1,...c)}if(n.padWithNoOps){const n=t.length-s.originalOperationsACount;const i=e.length-s.originalOperationsBCount;eA(t,i-n);eA(e,n-i)}tA(t,s.nextBaseVersionB);tA(e,s.nextBaseVersionA);return{operationsA:t,operationsB:e,originalOperations:o}}class Xw{constructor(t,e,n=false){this.originalOperations=new Map;this._history=t.history;this._useRelations=e;this._forceWeakRemove=!!n;this._relations=new Map}setOriginalOperations(t,e=null){const n=e?this.originalOperations.get(e):null;for(const e of t){this.originalOperations.set(e,n||e)}}updateRelation(t,e){if(t instanceof Nw){if(e instanceof Uw){if(t.targetPosition.isEqual(e.sourcePosition)||e.movedRange.containsPosition(t.targetPosition)){this._setRelation(t,e,"insertAtSource")}else if(t.targetPosition.isEqual(e.deletionPosition)){this._setRelation(t,e,"insertBetween")}else if(t.targetPosition.isAfter(e.sourcePosition)){this._setRelation(t,e,"moveTargetAfter")}}else if(e instanceof Nw){if(t.targetPosition.isEqual(e.sourcePosition)||t.targetPosition.isBefore(e.sourcePosition)){this._setRelation(t,e,"insertBefore")}else{this._setRelation(t,e,"insertAfter")}}}else if(t instanceof Ww){if(e instanceof Uw){if(t.splitPosition.isBefore(e.sourcePosition)){this._setRelation(t,e,"splitBefore")}}else if(e instanceof Nw){if(t.splitPosition.isEqual(e.sourcePosition)||t.splitPosition.isBefore(e.sourcePosition)){this._setRelation(t,e,"splitBefore")}else{const n=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&n.containsPosition(t.splitPosition)){const i=n.end.offset-t.splitPosition.offset;const o=t.splitPosition.offset-n.start.offset;this._setRelation(t,e,{howMany:i,offset:o})}}}}else if(t instanceof Uw){if(e instanceof Uw){if(!t.targetPosition.isEqual(e.sourcePosition)){this._setRelation(t,e,"mergeTargetNotMoved")}if(t.sourcePosition.isEqual(e.targetPosition)){this._setRelation(t,e,"mergeSourceNotMoved")}if(t.sourcePosition.isEqual(e.sourcePosition)){this._setRelation(t,e,"mergeSameElement")}}else if(e instanceof Ww){if(t.sourcePosition.isEqual(e.splitPosition)){this._setRelation(t,e,"splitAtSource")}}}else if(t instanceof Pw){const n=t.newRange;if(!n){return}if(e instanceof Nw){const i=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);const o=i.containsPosition(n.start)||i.start.isEqual(n.start);const r=i.containsPosition(n.end)||i.end.isEqual(n.end);if((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 Uw){const i=n.start.isEqual(e.targetPosition);const o=n.start.isEqual(e.deletionPosition);const r=n.end.isEqual(e.deletionPosition);const s=n.end.isEqual(e.sourcePosition);if(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);const i=this._history.getUndoneOperation(n);if(!i){return null}const o=this.originalOperations.get(t);const r=this._relations.get(o);if(r){return r.get(i)||null}return null}_setRelation(t,e,n){const i=this.originalOperations.get(t);const o=this.originalOperations.get(e);let r=this._relations.get(i);if(!r){r=new Map;this._relations.set(i,r)}r.set(o,n)}}function tA(t,e){for(const n of t){n.baseVersion=e++}}function eA(t,e){for(let n=0;n<e;n++){t.push(new jw(0))}}Kw(Vw,Vw,((t,e,n)=>{if(t.key===e.key&&t.range.start.hasSameParentAs(e.range.start)){const i=t.range.getDifference(e.range).map((e=>new Vw(e,t.key,t.oldValue,t.newValue,0)));const o=t.range.getIntersection(e.range);if(o){if(n.aIsStrong){i.push(new Vw(o,e.key,e.newValue,t.newValue,0))}}if(i.length==0){return[new jw(0)]}return i}else{return[t]}}));Kw(Vw,zw,((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);const i=n.map((e=>new Vw(e,t.key,t.oldValue,t.newValue,t.baseVersion)));if(e.shouldReceiveAttributes){const n=nA(e,t.key,t.oldValue);if(n){i.unshift(n)}}return i}t.range=t.range._getTransformedByInsertion(e.position,e.howMany,false)[0];return[t]}));function nA(t,e,n){const i=t.nodes;const o=i.getNode(0).getAttribute(e);if(o==n){return null}const r=new ob(t.position,t.position.getShiftedBy(t.howMany));return new Vw(r,e,o,n,0)}Kw(Vw,Uw,((t,e)=>{const n=[];if(t.range.start.hasSameParentAs(e.deletionPosition)){if(t.range.containsPosition(e.deletionPosition)||t.range.start.isEqual(e.deletionPosition)){n.push(ob._createFromPositionAndShift(e.graveyardPosition,1))}}const i=t.range._getTransformedByMergeOperation(e);if(!i.isCollapsed){n.push(i)}return n.map((e=>new Vw(e,t.key,t.oldValue,t.newValue,t.baseVersion)))}));Kw(Vw,Nw,((t,e)=>{const n=iA(t.range,e);return n.map((e=>new Vw(e,t.key,t.oldValue,t.newValue,t.baseVersion)))}));function iA(t,e){const n=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);let i=null;let o=[];if(n.containsRange(t,true)){i=t}else if(t.start.hasSameParentAs(n.start)){o=t.getDifference(n);i=t.getIntersection(n)}else{o=[t]}const r=[];for(let t of o){t=t._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=e.getMovedRangeStart();const i=t.start.hasSameParentAs(n);const o=t._getTransformedByInsertion(n,e.howMany,i);r.push(...o)}if(i){r.push(i._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany,false)[0])}return r}Kw(Vw,Ww,((t,e)=>{if(t.range.end.isEqual(e.insertionPosition)){if(!e.graveyardPosition){t.range.end.offset++}return[t]}if(t.range.start.hasSameParentAs(e.splitPosition)&&t.range.containsPosition(e.splitPosition)){const n=t.clone();n.range=new ob(e.moveTargetPosition.clone(),t.range.end._getCombined(e.splitPosition,e.moveTargetPosition));t.range.end=e.splitPosition.clone();t.range.end.stickiness="toPrevious";return[t,n]}t.range=t.range._getTransformedBySplitOperation(e);return[t]}));Kw(zw,Vw,((t,e)=>{const n=[t];if(t.shouldReceiveAttributes&&t.position.hasSameParentAs(e.range.start)&&e.range.containsPosition(t.position)){const i=nA(t,e.key,e.newValue);if(i){n.push(i)}}return n}));Kw(zw,zw,((t,e,n)=>{if(t.position.isEqual(e.position)&&n.aIsStrong){return[t]}t.position=t.position._getTransformedByInsertOperation(e);return[t]}));Kw(zw,Nw,((t,e)=>{t.position=t.position._getTransformedByMoveOperation(e);return[t]}));Kw(zw,Ww,((t,e)=>{t.position=t.position._getTransformedBySplitOperation(e);return[t]}));Kw(zw,Uw,((t,e)=>{t.position=t.position._getTransformedByMergeOperation(e);return[t]}));Kw(Pw,zw,((t,e)=>{if(t.oldRange){t.oldRange=t.oldRange._getTransformedByInsertOperation(e)[0]}if(t.newRange){t.newRange=t.newRange._getTransformedByInsertOperation(e)[0]}return[t]}));Kw(Pw,Pw,((t,e,n)=>{if(t.name==e.name){if(n.aIsStrong){t.oldRange=e.newRange?e.newRange.clone():null}else{return[new jw(0)]}}return[t]}));Kw(Pw,Uw,((t,e)=>{if(t.oldRange){t.oldRange=t.oldRange._getTransformedByMergeOperation(e)}if(t.newRange){t.newRange=t.newRange._getTransformedByMergeOperation(e)}return[t]}));Kw(Pw,Nw,((t,e,n)=>{if(t.oldRange){t.oldRange=ob._createFromRanges(t.oldRange._getTransformedByMoveOperation(e))}if(t.newRange){if(n.abRelation){const i=ob._createFromRanges(t.newRange._getTransformedByMoveOperation(e));if(n.abRelation.side=="left"&&e.targetPosition.isEqual(t.newRange.start)){t.newRange.end=i.end;t.newRange.start.path=n.abRelation.path;return[t]}else if(n.abRelation.side=="right"&&e.targetPosition.isEqual(t.newRange.end)){t.newRange.start=i.start;t.newRange.end.path=n.abRelation.path;return[t]}}t.newRange=ob._createFromRanges(t.newRange._getTransformedByMoveOperation(e))}return[t]}));Kw(Pw,Ww,((t,e,n)=>{if(t.oldRange){t.oldRange=t.oldRange._getTransformedBySplitOperation(e)}if(t.newRange){if(n.abRelation){const i=t.newRange._getTransformedBySplitOperation(e);if(t.newRange.start.isEqual(e.splitPosition)&&n.abRelation.wasStartBeforeMergedElement){t.newRange.start=Qp._createAt(e.insertionPosition)}else if(t.newRange.start.isEqual(e.splitPosition)&&!n.abRelation.wasInLeftElement){t.newRange.start=Qp._createAt(e.moveTargetPosition)}if(t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasInRightElement){t.newRange.end=Qp._createAt(e.moveTargetPosition)}else if(t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasEndBeforeMergedElement){t.newRange.end=Qp._createAt(e.insertionPosition)}else{t.newRange.end=i.end}return[t]}t.newRange=t.newRange._getTransformedBySplitOperation(e)}return[t]}));Kw(Uw,zw,((t,e)=>{if(t.sourcePosition.hasSameParentAs(e.position)){t.howMany+=e.howMany}t.sourcePosition=t.sourcePosition._getTransformedByInsertOperation(e);t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e);return[t]}));Kw(Uw,Uw,((t,e,n)=>{if(t.sourcePosition.isEqual(e.sourcePosition)&&t.targetPosition.isEqual(e.targetPosition)){if(!n.bWasUndone){return[new jw(0)]}else{const n=e.graveyardPosition.path.slice();n.push(0);t.sourcePosition=new Qp(e.graveyardPosition.root,n);t.howMany=0;return[t]}}if(t.sourcePosition.isEqual(e.sourcePosition)&&!t.targetPosition.isEqual(e.targetPosition)&&!n.bWasUndone&&n.abRelation!="splitAtSource"){const i=t.targetPosition.root.rootName=="$graveyard";const o=e.targetPosition.root.rootName=="$graveyard";const r=i&&!o;const s=o&&!i;const a=s||!r&&n.aIsStrong;if(a){const n=e.targetPosition._getTransformedByMergeOperation(e);const i=t.targetPosition._getTransformedByMergeOperation(e);return[new Nw(n,t.howMany,i,0)]}else{return[new jw(0)]}}if(t.sourcePosition.hasSameParentAs(e.targetPosition)){t.howMany+=e.howMany}t.sourcePosition=t.sourcePosition._getTransformedByMergeOperation(e);t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e);if(!t.graveyardPosition.isEqual(e.graveyardPosition)||!n.aIsStrong){t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)}return[t]}));Kw(Uw,Nw,((t,e,n)=>{const i=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);if(e.type=="remove"&&!n.bWasUndone&&!n.forceWeakRemove){if(t.deletionPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.sourcePosition)){return[new jw(0)]}}if(t.sourcePosition.hasSameParentAs(e.targetPosition)){t.howMany+=e.howMany}if(t.sourcePosition.hasSameParentAs(e.sourcePosition)){t.howMany-=e.howMany}t.sourcePosition=t.sourcePosition._getTransformedByMoveOperation(e);t.targetPosition=t.targetPosition._getTransformedByMoveOperation(e);if(!t.graveyardPosition.isEqual(e.targetPosition)){t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)}return[t]}));Kw(Uw,Ww,((t,e,n)=>{if(e.graveyardPosition){t.graveyardPosition=t.graveyardPosition._getTransformedByDeletion(e.graveyardPosition,1);if(t.deletionPosition.isEqual(e.graveyardPosition)){t.howMany=e.howMany}}if(t.targetPosition.isEqual(e.splitPosition)){const i=e.howMany!=0;const o=e.graveyardPosition&&t.deletionPosition.isEqual(e.graveyardPosition);if(i||o||n.abRelation=="mergeTargetNotMoved"){t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e);return[t]}}if(t.sourcePosition.isEqual(e.splitPosition)){if(n.abRelation=="mergeSourceNotMoved"){t.howMany=0;t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e);return[t]}if(n.abRelation=="mergeSameElement"||t.sourcePosition.offset>0){t.sourcePosition=e.moveTargetPosition.clone();t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e);return[t]}}if(t.sourcePosition.hasSameParentAs(e.splitPosition)){t.howMany=e.splitPosition.offset}t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e);t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e);return[t]}));Kw(Nw,zw,((t,e)=>{const n=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);const i=n._getTransformedByInsertOperation(e,false)[0];t.sourcePosition=i.start;t.howMany=i.end.offset-i.start.offset;if(!t.targetPosition.isEqual(e.position)){t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e)}return[t]}));Kw(Nw,Nw,((t,e,n)=>{const i=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);const o=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);let r=n.aIsStrong;let s=!n.aIsStrong;if(n.abRelation=="insertBefore"||n.baRelation=="insertAfter"){s=true}else if(n.abRelation=="insertAfter"||n.baRelation=="insertBefore"){s=false}let a;if(t.targetPosition.isEqual(e.targetPosition)&&s){a=t.targetPosition._getTransformedByDeletion(e.sourcePosition,e.howMany)}else{a=t.targetPosition._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany)}if(oA(t,e)&&oA(e,t)){return[e.getReversed()]}const l=i.containsPosition(e.targetPosition);if(l&&i.containsRange(o,true)){i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);return rA([i],a)}const c=o.containsPosition(t.targetPosition);if(c&&o.containsRange(i,true)){i.start=i.start._getCombined(e.sourcePosition,e.getMovedRangeStart());i.end=i.end._getCombined(e.sourcePosition,e.getMovedRangeStart());return rA([i],a)}const d=Dt(t.sourcePosition.getParentPath(),e.sourcePosition.getParentPath());if(d=="prefix"||d=="extension"){i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);return rA([i],a)}if(t.type=="remove"&&e.type!="remove"&&!n.aWasUndone&&!n.forceWeakRemove){r=true}else if(t.type!="remove"&&e.type=="remove"&&!n.bWasUndone&&!n.forceWeakRemove){r=false}const u=[];const h=i.getDifference(o);for(const t of h){t.start=t.start._getTransformedByDeletion(e.sourcePosition,e.howMany);t.end=t.end._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=Dt(t.start.getParentPath(),e.getMovedRangeStart().getParentPath())=="same";const i=t._getTransformedByInsertion(e.getMovedRangeStart(),e.howMany,n);u.push(...i)}const g=i.getIntersection(o);if(g!==null&&r){g.start=g.start._getCombined(e.sourcePosition,e.getMovedRangeStart());g.end=g.end._getCombined(e.sourcePosition,e.getMovedRangeStart());if(u.length===0){u.push(g)}else if(u.length==1){if(o.start.isBefore(i.start)||o.start.isEqual(i.start)){u.unshift(g)}else{u.push(g)}}else{u.splice(1,0,g)}}if(u.length===0){return[new jw(t.baseVersion)]}return rA(u,a)}));Kw(Nw,Ww,((t,e,n)=>{let i=t.targetPosition.clone();if(!t.targetPosition.isEqual(e.insertionPosition)||!e.graveyardPosition||n.abRelation=="moveTargetAfter"){i=t.targetPosition._getTransformedBySplitOperation(e)}const o=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);if(o.end.isEqual(e.insertionPosition)){if(!e.graveyardPosition){t.howMany++}t.targetPosition=i;return[t]}if(o.start.hasSameParentAs(e.splitPosition)&&o.containsPosition(e.splitPosition)){let t=new ob(e.splitPosition,o.end);t=t._getTransformedBySplitOperation(e);const n=[new ob(o.start,e.splitPosition),t];return rA(n,i)}if(t.targetPosition.isEqual(e.splitPosition)&&n.abRelation=="insertAtSource"){i=e.moveTargetPosition}if(t.targetPosition.isEqual(e.insertionPosition)&&n.abRelation=="insertBetween"){i=t.targetPosition}const r=o._getTransformedBySplitOperation(e);const s=[r];if(e.graveyardPosition){const i=o.start.isEqual(e.graveyardPosition)||o.containsPosition(e.graveyardPosition);if(t.howMany>1&&i&&!n.aWasUndone){s.push(ob._createFromPositionAndShift(e.insertionPosition,1))}}return rA(s,i)}));Kw(Nw,Uw,((t,e,n)=>{const i=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);if(e.deletionPosition.hasSameParentAs(t.sourcePosition)&&i.containsPosition(e.sourcePosition)){if(t.type=="remove"&&!n.forceWeakRemove){if(!n.aWasUndone){const n=[];let i=e.graveyardPosition.clone();let o=e.targetPosition._getTransformedByMergeOperation(e);if(t.howMany>1){n.push(new Nw(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);const s=new Nw(i,1,r,0);const a=s.getMovedRangeStart().path.slice();a.push(0);const l=new Qp(s.targetPosition.root,a);o=o._getTransformedByMove(i,r,1);const c=new Nw(o,e.howMany,l,0);n.push(s);n.push(c);return n}}else{if(t.howMany==1){if(!n.bWasUndone){return[new jw(0)]}else{t.sourcePosition=e.graveyardPosition.clone();t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e);return[t]}}}}const o=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);const r=o._getTransformedByMergeOperation(e);t.sourcePosition=r.start;t.howMany=r.end.offset-r.start.offset;t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e);return[t]}));Kw(Fw,zw,((t,e)=>{t.position=t.position._getTransformedByInsertOperation(e);return[t]}));Kw(Fw,Uw,((t,e)=>{if(t.position.isEqual(e.deletionPosition)){t.position=e.graveyardPosition.clone();t.position.stickiness="toNext";return[t]}t.position=t.position._getTransformedByMergeOperation(e);return[t]}));Kw(Fw,Nw,((t,e)=>{t.position=t.position._getTransformedByMoveOperation(e);return[t]}));Kw(Fw,Fw,((t,e,n)=>{if(t.position.isEqual(e.position)){if(n.aIsStrong){t.oldName=e.newName}else{return[new jw(0)]}}return[t]}));Kw(Fw,Ww,((t,e)=>{const n=t.position.path;const i=e.splitPosition.getParentPath();if(Dt(n,i)=="same"&&!e.graveyardPosition){const e=new Fw(t.position.getShiftedBy(1),t.oldName,t.newName,0);return[t,e]}t.position=t.position._getTransformedBySplitOperation(e);return[t]}));Kw(Hw,Hw,((t,e,n)=>{if(t.root===e.root&&t.key===e.key){if(!n.aIsStrong||t.newValue===e.newValue){return[new jw(0)]}else{t.oldValue=e.newValue}}return[t]}));Kw(Ww,zw,((t,e)=>{if(t.splitPosition.hasSameParentAs(e.position)&&t.splitPosition.offset<e.position.offset){t.howMany+=e.howMany}t.splitPosition=t.splitPosition._getTransformedByInsertOperation(e);t.insertionPosition=t.insertionPosition._getTransformedByInsertOperation(e);return[t]}));Kw(Ww,Uw,((t,e,n)=>{if(!t.graveyardPosition&&!n.bWasUndone&&t.splitPosition.hasSameParentAs(e.sourcePosition)){const n=e.graveyardPosition.path.slice();n.push(0);const i=new Qp(e.graveyardPosition.root,n);const o=Ww.getInsertionPosition(new Qp(e.graveyardPosition.root,n));const r=new Ww(i,0,o,null,0);t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);t.graveyardPosition=r.insertionPosition.clone();t.graveyardPosition.stickiness="toNext";return[r,t]}if(t.splitPosition.hasSameParentAs(e.deletionPosition)&&!t.splitPosition.isAfter(e.deletionPosition)){t.howMany--}if(t.splitPosition.hasSameParentAs(e.targetPosition)){t.howMany+=e.howMany}t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);if(t.graveyardPosition){t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)}return[t]}));Kw(Ww,Nw,((t,e,n)=>{const i=ob._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);const i=t.graveyardPosition._getTransformedByMoveOperation(e);const o=i.path.slice();o.push(0);const r=new Qp(i.root,o);const s=new Nw(n,t.howMany,r,0);return[s]}t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)}const o=t.splitPosition.isEqual(e.targetPosition);if(o&&(n.baRelation=="insertAtSource"||n.abRelation=="splitBefore")){t.howMany+=e.howMany;t.splitPosition=t.splitPosition._getTransformedByDeletion(e.sourcePosition,e.howMany);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);return[t]}if(o&&n.abRelation&&n.abRelation.howMany){const{howMany:e,offset:i}=n.abRelation;t.howMany+=e;t.splitPosition=t.splitPosition.getShiftedBy(i);return[t]}if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.splitPosition)){const n=e.howMany-(t.splitPosition.offset-e.sourcePosition.offset);t.howMany-=n;if(t.splitPosition.hasSameParentAs(e.targetPosition)&&t.splitPosition.offset<e.targetPosition.offset){t.howMany+=e.howMany}t.splitPosition=e.sourcePosition.clone();t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);return[t]}if(!e.sourcePosition.isEqual(e.targetPosition)){if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&t.splitPosition.offset<=e.sourcePosition.offset){t.howMany-=e.howMany}if(t.splitPosition.hasSameParentAs(e.targetPosition)&&t.splitPosition.offset<e.targetPosition.offset){t.howMany+=e.howMany}}t.splitPosition.stickiness="toNone";t.splitPosition=t.splitPosition._getTransformedByMoveOperation(e);t.splitPosition.stickiness="toNext";if(t.graveyardPosition){t.insertionPosition=t.insertionPosition._getTransformedByMoveOperation(e)}else{t.insertionPosition=Ww.getInsertionPosition(t.splitPosition)}return[t]}));Kw(Ww,Ww,((t,e,n)=>{if(t.splitPosition.isEqual(e.splitPosition)){if(!t.graveyardPosition&&!e.graveyardPosition){return[new jw(0)]}if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition)){return[new jw(0)]}if(n.abRelation=="splitBefore"){t.howMany=0;t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e);return[t]}}if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition)){const i=t.splitPosition.root.rootName=="$graveyard";const o=e.splitPosition.root.rootName=="$graveyard";const r=i&&!o;const s=o&&!i;const a=s||!r&&n.aIsStrong;if(a){const n=[];if(e.howMany){n.push(new Nw(e.moveTargetPosition,e.howMany,e.splitPosition,0))}if(t.howMany){n.push(new Nw(t.splitPosition,t.howMany,t.moveTargetPosition,0))}return n}else{return[new jw(0)]}}if(t.graveyardPosition){t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e)}if(t.splitPosition.isEqual(e.insertionPosition)&&n.abRelation=="splitBefore"){t.howMany++;return[t]}if(e.splitPosition.isEqual(t.insertionPosition)&&n.baRelation=="splitBefore"){const n=e.insertionPosition.path.slice();n.push(0);const i=new Qp(e.insertionPosition.root,n);const o=new Nw(t.insertionPosition,1,i,0);return[t,o]}if(t.splitPosition.hasSameParentAs(e.splitPosition)&&t.splitPosition.offset<e.splitPosition.offset){t.howMany-=e.howMany}t.splitPosition=t.splitPosition._getTransformedBySplitOperation(e);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);return[t]}));function oA(t,e){return t.targetPosition._getTransformedByDeletion(e.sourcePosition,e.howMany)===null}function rA(t,e){const n=[];for(let i=0;i<t.length;i++){const o=t[i];const r=new Nw(o.start,o.end.offset-o.start.offset,e,0);n.push(r);for(let e=i+1;e<t.length;e++){t[e]=t[e]._getTransformedByMove(r.sourcePosition,r.targetPosition,r.howMany)[0]}e=e._getTransformedByMove(r.sourcePosition,r.targetPosition,r.howMany)}return n}class sA extends(K(Qp)){constructor(t,e,n="toNone"){super(t,e,n);if(!this.root.is("rootElement")){throw new z("model-liveposition-root-not-rootelement",t)}aA.call(this)}detach(){this.stopListening()}toPosition(){return new Qp(this.root,this.path.slice(),this.stickiness)}static fromPosition(t,e){return new this(t.root,t.path.slice(),e?e:t.stickiness)}}sA.prototype.is=function(t){return t==="livePosition"||t==="model:livePosition"||t=="position"||t==="model:position"};function aA(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];if(!n.isDocumentOperation){return}lA.call(this,n)}),{priority:"low"})}function lA(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)}}class cA{constructor(t={}){if(typeof t==="string"){t=t==="transparent"?{isUndoable:false}:{};P("batch-constructor-deprecated-string-type")}const{isUndoable:e=true,isLocal:n=true,isUndo:i=false,isTyping:o=false}=t;this.operations=[];this.isUndoable=e;this.isLocal=n;this.isUndo=i;this.isTyping=o}get type(){P("batch-type-deprecated");return"default"}get baseVersion(){for(const t of this.operations){if(t.baseVersion!==null){return t.baseVersion}}return null}addOperation(t){t.batch=this;this.operations.push(t);return t}}class dA{constructor(t){this._changesInElement=new Map;this._elementSnapshots=new Map;this._changedMarkers=new Map;this._changeCount=0;this._cachedChanges=null;this._cachedChangesWithGraveyard=null;this._refreshedItems=new Set;this._markerCollection=t}get isEmpty(){return this._changesInElement.size==0&&this._changedMarkers.size==0}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:true})){if(this._isInInsertedElement(t.parent)){continue}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);const n=this._isInInsertedElement(e.targetPosition.parent);if(!t){this._markRemove(e.sourcePosition.parent,e.sourcePosition.offset,e.howMany)}if(!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=ob._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;if(!this._isInInsertedElement(t)){this._markRemove(t,e.splitPosition.offset,e.howMany)}if(!this._isInInsertedElement(e.insertionPosition.parent)){this._markInsert(e.insertionPosition.parent,e.insertionPosition.offset,1)}if(e.graveyardPosition){this._markRemove(e.graveyardPosition.parent,e.graveyardPosition.offset,1)}break}case"merge":{const t=e.sourcePosition.parent;if(!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;if(!this._isInInsertedElement(i)){this._markInsert(i,e.targetPosition.offset,t.maxOffset)}break}}this._cachedChanges=null}bufferMarkerChange(t,e,n){const i=this._changedMarkers.get(t);if(!i){this._changedMarkers.set(t,{newMarkerData:n,oldMarkerData:e})}else{i.newMarkerData=n;if(i.oldMarkerData.range==null&&n.range==null){this._changedMarkers.delete(t)}}}getMarkersToRemove(){const t=[];for(const[e,n]of this._changedMarkers){if(n.oldMarkerData.range!=null){t.push({name:e,range:n.oldMarkerData.range})}}return t}getMarkersToAdd(){const t=[];for(const[e,n]of this._changedMarkers){if(n.newMarkerData.range!=null){t.push({name:e,range:n.newMarkerData.range})}}return t}getChangedMarkers(){return Array.from(this._changedMarkers).map((([t,e])=>({name:t,data:{oldRange:e.oldMarkerData.range,newRange:e.newMarkerData.range}})))}hasDataChanges(){if(this._changesInElement.size>0){return true}for(const{newMarkerData:t,oldMarkerData:e}of this._changedMarkers.values()){if(t.affectsData!==e.affectsData){return true}if(t.affectsData){const n=t.range&&!e.range;const i=!t.range&&e.range;const o=t.range&&e.range&&!t.range.isEqual(e.range);if(n||i||o){return true}}}return false}getChanges(t={}){if(this._cachedChanges){if(t.includeChangesInGraveyard){return this._cachedChangesWithGraveyard.slice()}else{return this._cachedChanges.slice()}}let e=[];for(const t of this._changesInElement.keys()){const n=this._changesInElement.get(t).sort(((t,e)=>{if(t.offset===e.offset){if(t.type!=e.type){return t.type=="remove"?-1:1}return 0}return t.offset<e.offset?-1:1}));const i=this._elementSnapshots.get(t);const o=uA(t.getChildren());const r=hA(i.length,n);let s=0;let a=0;for(const n of r){if(n==="i"){e.push(this._getInsertDiff(t,s,o[s]));s++}else if(n==="r"){e.push(this._getRemoveDiff(t,s,i[a]));a++}else if(n==="a"){const n=o[s].attributes;const r=i[a].attributes;let l;if(o[s].name=="$text"){l=new ob(Qp._createAt(t,s),Qp._createAt(t,s+1))}else{const e=t.offsetToIndex(s);l=new ob(Qp._createAt(t,s),Qp._createAt(t.getChild(e),0))}e.push(...this._getAttributesDiff(l,r,n));s++;a++}else{s++;a++}}}e.sort(((t,e)=>{if(t.position.root!=e.position.root){return t.position.root.rootName<e.position.root.rootName?-1:1}if(t.position.isEqual(e.position)){return t.changeCount-e.changeCount}return t.position.isBefore(e.position)?-1:1}));for(let t=1,n=0;t<e.length;t++){const i=e[n];const o=e[t];const r=i.type=="remove"&&o.type=="remove"&&i.name=="$text"&&o.name=="$text"&&i.position.isEqual(o.position);const s=i.type=="insert"&&o.type=="insert"&&i.name=="$text"&&o.name=="$text"&&i.position.parent==o.position.parent&&i.position.offset+i.length==o.position.offset;const a=i.type=="attribute"&&o.type=="attribute"&&i.position.parent==o.position.parent&&i.range.isFlat&&o.range.isFlat&&i.position.offset+i.length==o.position.offset&&i.attributeKey==o.attributeKey&&i.attributeOldValue==o.attributeOldValue&&i.attributeNewValue==o.attributeNewValue;if(r||s||a){i.length++;if(a){i.range.end=i.range.end.getShiftedBy(1)}e[t]=null}else{n=t}}e=e.filter((t=>t));for(const t of e){delete t.changeCount;if(t.type=="attribute"){delete t.position;delete t.length}}this._changeCount=0;this._cachedChangesWithGraveyard=e;this._cachedChanges=e.filter(gA);if(t.includeChangesInGraveyard){return this._cachedChangesWithGraveyard.slice()}else{return this._cachedChanges.slice()}}getRefreshedItems(){return new Set(this._refreshedItems)}reset(){this._changesInElement.clear();this._elementSnapshots.clear();this._changedMarkers.clear();this._refreshedItems=new Set;this._cachedChanges=null}_refreshItem(t){if(this._isInInsertedElement(t.parent)){return}this._markRemove(t.parent,t.startOffset,t.offsetSize);this._markInsert(t.parent,t.startOffset,t.offsetSize);this._refreshedItems.add(t);const e=ob._createOn(t);for(const t of this._markerCollection.getMarkersIntersectingRange(e)){const e=t.getData();this.bufferMarkerChange(t.name,e,e)}this._cachedChanges=null}_markInsert(t,e,n){const i={type:"insert",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i)}_markRemove(t,e,n){const i={type:"remove",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i);this._removeAllNestedChanges(t,e,n)}_markAttribute(t){const e={type:"attribute",offset:t.startOffset,howMany:t.offsetSize,count:this._changeCount++};this._markChange(t.parent,e)}_markChange(t,e){this._makeSnapshot(t);const n=this._getChangesForElement(t);this._handleChange(e,n);n.push(e);for(let t=0;t<n.length;t++){if(n[t].howMany<1){n.splice(t,1);t--}}}_getChangesForElement(t){let e;if(this._changesInElement.has(t)){e=this._changesInElement.get(t)}else{e=[];this._changesInElement.set(t,e)}return e}_makeSnapshot(t){if(!this._elementSnapshots.has(t)){this._elementSnapshots.set(t,uA(t.getChildren()))}}_handleChange(t,e){t.nodesToHandle=t.howMany;for(const n of e){const i=t.offset+t.howMany;const o=n.offset+n.howMany;if(t.type=="insert"){if(n.type=="insert"){if(t.offset<=n.offset){n.offset+=t.howMany}else if(t.offset<o){n.howMany+=t.nodesToHandle;t.nodesToHandle=0}}if(n.type=="remove"){if(t.offset<n.offset){n.offset+=t.howMany}}if(n.type=="attribute"){if(t.offset<=n.offset){n.offset+=t.howMany}else if(t.offset<o){const o=n.howMany;n.howMany=t.offset-n.offset;e.unshift({type:"attribute",offset:i,howMany:o-n.howMany,count:this._changeCount++})}}}if(t.type=="remove"){if(n.type=="insert"){if(i<=n.offset){n.offset-=t.howMany}else if(i<=o){if(t.offset<n.offset){const e=i-n.offset;n.offset=t.offset;n.howMany-=e;t.nodesToHandle-=e}else{n.howMany-=t.nodesToHandle;t.nodesToHandle=0}}else{if(t.offset<=n.offset){t.nodesToHandle-=n.howMany;n.howMany=0}else if(t.offset<o){const e=o-t.offset;n.howMany-=e;t.nodesToHandle-=e}}}if(n.type=="remove"){if(i<=n.offset){n.offset-=t.howMany}else if(t.offset<n.offset){t.nodesToHandle+=n.howMany;n.howMany=0}}if(n.type=="attribute"){if(i<=n.offset){n.offset-=t.howMany}else if(t.offset<n.offset){const e=i-n.offset;n.offset=t.offset;n.howMany-=e}else if(t.offset<o){if(i<=o){const i=n.howMany;n.howMany=t.offset-n.offset;const o=i-n.howMany-t.nodesToHandle;e.unshift({type:"attribute",offset:t.offset,howMany:o,count:this._changeCount++})}else{n.howMany-=o-t.offset}}}}if(t.type=="attribute"){if(n.type=="insert"){if(t.offset<n.offset&&i>n.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 if(t.offset>=n.offset&&t.offset<o){if(i>o){t.nodesToHandle=i-o;t.offset=o}else{t.nodesToHandle=0}}}if(n.type=="remove"){if(t.offset<n.offset&&i>n.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}}if(n.type=="attribute"){if(t.offset>=n.offset&&i<=o){t.nodesToHandle=0;t.howMany=0;t.offset=0}else if(t.offset<=n.offset&&i>=o){n.howMany=0}}}}t.howMany=t.nodesToHandle;delete t.nodesToHandle}_getInsertDiff(t,e,n){return{type:"insert",position:Qp._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++}}_getRemoveDiff(t,e,n){return{type:"remove",position:Qp._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++}}_getAttributesDiff(t,e,n){const i=[];n=new Map(n);for(const[o,r]of e){const e=n.has(o)?n.get(o):null;if(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 false}const n=this._changesInElement.get(e);const i=t.startOffset;if(n){for(const t of n){if(t.type=="insert"&&i>=t.offset&&i<t.offset+t.howMany){return true}}}return this._isInInsertedElement(e)}_removeAllNestedChanges(t,e,n){const i=new ob(Qp._createAt(t,e),Qp._createAt(t,e+n));for(const t of i.getItems({shallow:true})){if(t.is("element")){this._elementSnapshots.delete(t);this._changesInElement.delete(t);this._removeAllNestedChanges(t,0,t.maxOffset)}}}}function uA(t){const e=[];for(const n of t){if(n.is("$text")){for(let t=0;t<n.data.length;t++){e.push({name:"$text",attributes:new Map(n.getAttributes())})}}else{e.push({name:n.name,attributes:new Map(n.getAttributes())})}}return e}function hA(t,e){const n=[];let i=0;let o=0;for(const t of e){if(t.offset>i){for(let e=0;e<t.offset-i;e++){n.push("e")}o+=t.offset-i}if(t.type=="insert"){for(let e=0;e<t.howMany;e++){n.push("i")}i=t.offset+t.howMany}else if(t.type=="remove"){for(let e=0;e<t.howMany;e++){n.push("r")}i=t.offset;o+=t.howMany}else{n.push(..."a".repeat(t.howMany).split(""));i=t.offset+t.howMany;o+=t.howMany}}if(o<t){for(let e=0;e<t-o-i;e++){n.push("e")}}return n}function gA(t){const e="position"in t&&t.position.root.rootName=="$graveyard";const n="range"in t&&t.range.root.rootName=="$graveyard";return!e&&!n}class mA{constructor(){this._operations=[];this._undoPairs=new Map;this._undoneOperations=new Set;this._baseVersionToOperationIndex=new Map;this._version=0;this._gaps=new Map}get version(){return this._version}set version(t){if(this._operations.length&&t>this._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 z("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];if(t===undefined){t=n.baseVersion}let i=e-1;for(const[e,n]of this._gaps){if(t>e&&t<n){t=n}if(i>e&&i<n){i=e-1}}if(i<n.baseVersion||t>this.lastOperation.baseVersion){return[]}let o=this._baseVersionToOperationIndex.get(t);if(o===undefined){o=0}let r=this._baseVersionToOperationIndex.get(i);if(r===undefined){r=this._operations.length-1}return this._operations.slice(o,r+1)}getOperation(t){const e=this._baseVersionToOperationIndex.get(t);if(e===undefined){return}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 fA extends $p{constructor(t,e,n="main"){super(e);this._document=t;this.rootName=n}get document(){return this._document}toJSON(){return this.rootName}}fA.prototype.is=function(t,e){if(!e){return t==="rootElement"||t==="model:rootElement"||t==="element"||t==="model:element"||t==="node"||t==="model:node"}return e===this.name&&(t==="rootElement"||t==="model:rootElement"||t==="element"||t==="model:element")};const pA="$graveyard";class bA extends(K()){constructor(t){super();this.model=t;this.history=new mA;this.selection=new vb(this);this.roots=new cc({idProperty:"rootName"});this.differ=new dA(t.markers);this._postFixers=new Set;this._hasSelectionChangedFromTheLastChangeBlock=false;this.createRoot("$root",pA);this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];if(n.isDocumentOperation){this.differ.bufferOperation(n)}}),{priority:"high"});this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];if(n.isDocumentOperation){this.history.addOperation(n)}}),{priority:"low"});this.listenTo(this.selection,"change",(()=>{this._hasSelectionChangedFromTheLastChangeBlock=true}));this.listenTo(t.markers,"update",((t,e,n,i,o)=>{const r={...e.getData(),range:i};this.differ.bufferMarkerChange(e.name,o,r);if(n===null){e.on("change",((t,n)=>{const i=e.getData();this.differ.bufferMarkerChange(e.name,{...i,range:n},i)}))}}))}get version(){return this.history.version}set version(t){this.history.version=t}get graveyard(){return this.getRoot(pA)}createRoot(t="$root",e="main"){if(this.roots.get(e)){throw new z("model-document-createroot-name-exists",this,{name:e})}const n=new fA(this,t,e);this.roots.add(n);return n}destroy(){this.selection.destroy();this.stopListening()}getRoot(t="main"){return this.roots.get(t)}getRootNames(){return Array.from(this.roots,(t=>t.rootName)).filter((t=>t!=pA))}registerPostFixer(t){this._postFixers.add(t)}toJSON(){const t=xu(this);t.selection="[engine.model.DocumentSelection]";t.model="[engine.model.Model]";return t}_handleChangeBlock(t){if(this._hasDocumentChangedFromTheLastChangeBlock()){this._callPostFixers(t);this.selection.refresh();if(this.differ.hasDataChanges()){this.fire("change:data",t.batch)}else{this.fire("change",t.batch)}this.selection.refresh();this.differ.reset()}this._hasSelectionChangedFromTheLastChangeBlock=false}_hasDocumentChangedFromTheLastChangeBlock(){return!this.differ.isEmpty||this._hasSelectionChangedFromTheLastChangeBlock}_getDefaultRoot(){for(const t of this.roots){if(t!==this.graveyard){return t}}return this.graveyard}_getDefaultRange(){const t=this._getDefaultRoot();const e=this.model;const n=e.schema;const i=e.createPositionFromPath(t,[0]);const o=n.getNearestSelectionRange(i);return o||e.createRange(i)}_validateSelectionRange(t){return kA(t.start)&&kA(t.end)}_callPostFixers(t){let e=false;do{for(const n of this._postFixers){this.selection.refresh();e=n(t);if(e){break}}}while(e)}}function kA(t){const e=t.textNode;if(e){const n=e.data;const i=t.offset-e.startOffset;return!Ac(n,i)&&!Cc(n,i)}return true}class wA extends(K()){constructor(){super(...arguments);this._markers=new Map}[Symbol.iterator](){return this._markers.values()}has(t){const e=t instanceof AA?t.name:t;return this._markers.has(e)}get(t){return this._markers.get(t)||null}_set(t,e,n=false,i=false){const o=t instanceof AA?t.name:t;if(o.includes(",")){throw new z("markercollection-incorrect-marker-name",this)}const r=this._markers.get(o);if(r){const t=r.getData();const s=r.getRange();let a=false;if(!s.isEqual(e)){r._attachLiveRange(kb.fromRange(e));a=true}if(n!=r.managedUsingOperations){r._managedUsingOperations=n;a=true}if(typeof i==="boolean"&&i!=r.affectsData){r._affectsData=i;a=true}if(a){this.fire(`update:${o}`,r,s,e,t)}return r}const s=kb.fromRange(e);const a=new AA(o,s,n,i);this._markers.set(o,a);this.fire(`update:${o}`,a,null,e,{...a.getData(),range:null});return a}_remove(t){const e=t instanceof AA?t.name:t;const n=this._markers.get(e);if(n){this._markers.delete(e);this.fire(`update:${e}`,n,n.getRange(),null,n.getData());this._destroyMarker(n);return true}return false}_refresh(t){const e=t instanceof AA?t.name:t;const n=this._markers.get(e);if(!n){throw new z("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){if(e.getRange().containsPosition(t)){yield e}}}*getMarkersIntersectingRange(t){for(const e of this){if(e.getRange().getIntersection(t)!==null){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()){if(e.name.startsWith(t+":")){yield e}}}_destroyMarker(t){t.stopListening();t._detachLiveRange()}}class AA extends(K(Hp)){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 z("marker-destroyed",this)}return this._managedUsingOperations}get affectsData(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._affectsData}getData(){return{range:this.getRange(),affectsData:this.affectsData,managedUsingOperations:this.managedUsingOperations}}getStart(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._liveRange.start.clone()}getEnd(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._liveRange.end.clone()}getRange(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._liveRange.toRange()}_attachLiveRange(t){if(this._liveRange){this._detachLiveRange()}t.delegate("change:range").to(this);t.delegate("change:content").to(this);this._liveRange=t;return t}_detachLiveRange(){this._liveRange.stopDelegating("change:range",this);this._liveRange.stopDelegating("change:content",this);this._liveRange.detach();this._liveRange=null}}AA.prototype.is=function(t){return t==="marker"||t==="model:marker"};class CA extends xw{constructor(t,e){super(null);this.sourcePosition=t.clone();this.howMany=e}get type(){return"detach"}toJSON(){const t=super.toJSON();t.sourcePosition=this.sourcePosition.toJSON();return t}_validate(){if(this.sourcePosition.root.document){throw new z("detach-operation-on-document-node",this)}}_execute(){Dw(ob._createFromPositionAndShift(this.sourcePosition,this.howMany))}static get className(){return"DetachOperation"}}class _A extends Hp{constructor(t){super();this.markers=new Map;this._children=new Wp;if(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 this.childCount===0}get nextSibling(){return null}get previousSibling(){return null}get root(){return this}get parent(){return null}get document(){return null}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){if(n.name){e.push($p.fromJSON(n))}else{e.push(qp.fromJSON(n))}}return new _A(e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=vA(e);for(const t of n){if(t.parent!==null){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}}_A.prototype.is=function(t){return t==="documentFragment"||t==="model:documentFragment"};function vA(t){if(typeof t=="string"){return[new qp(t)]}if(!St(t)){t=[t]}return Array.from(t).map((t=>{if(typeof t=="string"){return new qp(t)}if(t instanceof Gp){return new qp(t.data,t.getAttributes())}return t}))}class yA{constructor(t,e){this.model=t;this.batch=e}createText(t,e){return new qp(t,e)}createElement(t,e){return new $p(t,e)}createDocumentFragment(){return new _A}cloneElement(t,e=true){return t._clone(e)}insert(t,e,n=0){this._assertWriterUsedCorrectly();if(t instanceof qp&&t.data==""){return}const i=Qp._createAt(e,n);if(t.parent){if(TA(t.root,i.root)){this.move(ob._createOn(t),i);return}else{if(t.root.document){throw new z("model-writer-insert-forbidden-move",this)}else{this.remove(t)}}}const o=i.root.document?i.root.document.version:null;const r=new zw(i,t,o);if(t instanceof qp){r.shouldReceiveAttributes=true}this.batch.addOperation(r);this.model.applyOperation(r);if(t instanceof _A){for(const[e,n]of t.markers){const t=Qp._createAt(n.root,0);const o=new ob(n.start._getCombined(t,i),n.end._getCombined(t,i));const r={range:o,usingOperation:true,affectsData:true};if(this.model.markers.has(e)){this.updateMarker(e,r)}else{this.addMarker(e,r)}}}}insertText(t,e,n,i){if(e instanceof _A||e instanceof $p||e instanceof Qp){this.insert(this.createText(t),e,n)}else{this.insert(this.createText(t,e),n,i)}}insertElement(t,e,n,i){if(e instanceof _A||e instanceof $p||e instanceof Qp){this.insert(this.createElement(t),e,n)}else{this.insert(this.createElement(t,e),n,i)}}append(t,e){this.insert(t,e,"end")}appendText(t,e,n){if(e instanceof _A||e instanceof $p){this.insert(this.createText(t),e,"end")}else{this.insert(this.createText(t,e),n,"end")}}appendElement(t,e,n){if(e instanceof _A||e instanceof $p){this.insert(this.createElement(t),e,"end")}else{this.insert(this.createElement(t,e),n,"end")}}setAttribute(t,e,n){this._assertWriterUsedCorrectly();if(n instanceof ob){const i=n.getMinimalFlatRanges();for(const n of i){xA(this,t,e,n)}}else{EA(this,t,e,n)}}setAttributes(t,e){for(const[n,i]of mc(t)){this.setAttribute(n,i,e)}}removeAttribute(t,e){this._assertWriterUsedCorrectly();if(e instanceof ob){const n=e.getMinimalFlatRanges();for(const e of n){xA(this,t,null,e)}}else{EA(this,t,null,e)}}clearAttributes(t){this._assertWriterUsedCorrectly();const e=t=>{for(const e of t.getAttributeKeys()){this.removeAttribute(e,t)}};if(!(t instanceof ob)){e(t)}else{for(const n of t.getItems()){e(n)}}}move(t,e,n){this._assertWriterUsedCorrectly();if(!(t instanceof ob)){throw new z("writer-move-invalid-range",this)}if(!t.isFlat){throw new z("writer-move-range-not-flat",this)}const i=Qp._createAt(e,n);if(i.isEqual(t.start)){return}this._addOperationForAffectedMarkers("move",t);if(!TA(t.root,i.root)){throw new z("writer-move-different-document",this)}const o=t.root.document?t.root.document.version:null;const r=new Nw(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 ob?t:ob._createOn(t);const n=e.getMinimalFlatRanges().reverse();for(const t of n){this._addOperationForAffectedMarkers("move",t);SA(t.start,t.end.offset-t.start.offset,this.batch,this.model)}}merge(t){this._assertWriterUsedCorrectly();const e=t.nodeBefore;const n=t.nodeAfter;this._addOperationForAffectedMarkers("merge",t);if(!(e instanceof $p)){throw new z("writer-merge-no-element-before",this)}if(!(n instanceof $p)){throw new z("writer-merge-no-element-after",this)}if(!t.root.document){this._mergeDetached(t)}else{this._merge(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;const n=t.nodeAfter;this.move(ob._createIn(n),Qp._createAt(e,"end"));this.remove(n)}_merge(t){const e=Qp._createAt(t.nodeBefore,"end");const n=Qp._createAt(t.nodeAfter,0);const i=t.root.document.graveyard;const o=new Qp(i,[0]);const r=t.root.document.version;const s=new Uw(n,t.nodeAfter.maxOffset,e,o,r);this.batch.addOperation(s);this.model.applyOperation(s)}rename(t,e){this._assertWriterUsedCorrectly();if(!(t instanceof $p)){throw new z("writer-rename-not-element-instance",this)}const n=t.root.document?t.root.document.version:null;const i=new Fw(Qp._createBefore(t),t.name,e,n);this.batch.addOperation(i);this.model.applyOperation(i)}split(t,e){this._assertWriterUsedCorrectly();let n=t.parent;if(!n.parent){throw new z("writer-split-element-no-parent",this)}if(!e){e=n.parent}if(!t.parent.getAncestors({includeSelf:true}).includes(e)){throw new z("writer-split-invalid-limit-element",this)}let i;let o;do{const e=n.root.document?n.root.document.version:null;const r=n.maxOffset-t.offset;const s=Ww.getInsertionPosition(t);const a=new Ww(t,r,s,null,e);this.batch.addOperation(a);this.model.applyOperation(a);if(!i&&!o){i=n;o=t.parent.nextSibling}t=this.createPositionAfter(t.parent);n=t.parent}while(n!==e);return{position:t,range:new ob(Qp._createAt(i,"end"),Qp._createAt(o,0))}}wrap(t,e){this._assertWriterUsedCorrectly();if(!t.isFlat){throw new z("writer-wrap-range-not-flat",this)}const n=e instanceof $p?e:new $p(e);if(n.childCount>0){throw new z("writer-wrap-element-not-empty",this)}if(n.parent!==null){throw new z("writer-wrap-element-attached",this)}this.insert(n,t.start);const i=new ob(t.start.getShiftedBy(1),t.end.getShiftedBy(1));this.move(i,Qp._createAt(n,0))}unwrap(t){this._assertWriterUsedCorrectly();if(t.parent===null){throw new z("writer-unwrap-element-no-parent",this)}this.move(ob._createIn(t),this.createPositionAfter(t));this.remove(t)}addMarker(t,e){this._assertWriterUsedCorrectly();if(!e||typeof e.usingOperation!="boolean"){throw new z("writer-addmarker-no-usingoperation",this)}const n=e.usingOperation;const i=e.range;const o=e.affectsData===undefined?false:e.affectsData;if(this.model.markers.has(t)){throw new z("writer-addmarker-marker-exists",this)}if(!i){throw new z("writer-addmarker-no-range",this)}if(!n){return this.model.markers._set(t,i,n,o)}DA(this,t,null,i,o);return this.model.markers.get(t)}updateMarker(t,e){this._assertWriterUsedCorrectly();const n=typeof t=="string"?t:t.name;const i=this.model.markers.get(n);if(!i){throw new z("writer-updatemarker-marker-not-exists",this)}if(!e){P("writer-updatemarker-reconvert-using-editingcontroller",{markerName:n});this.model.markers._refresh(i);return}const o=typeof e.usingOperation=="boolean";const r=typeof e.affectsData=="boolean";const s=r?e.affectsData:i.affectsData;if(!o&&!e.range&&!r){throw new z("writer-updatemarker-wrong-options",this)}const a=i.getRange();const l=e.range?e.range:a;if(o&&e.usingOperation!==i.managedUsingOperations){if(e.usingOperation){DA(this,n,null,l,s)}else{DA(this,n,a,null,s);this.model.markers._set(n,l,undefined,s)}return}if(i.managedUsingOperations){DA(this,n,a,l,s)}else{this.model.markers._set(n,l,undefined,s)}}removeMarker(t){this._assertWriterUsedCorrectly();const e=typeof t=="string"?t:t.name;if(!this.model.markers.has(e)){throw new z("writer-removemarker-no-marker",this)}const n=this.model.markers.get(e);if(!n.managedUsingOperations){this.model.markers._remove(e);return}const i=n.getRange();DA(this,e,i,null,n.affectsData)}setSelection(...t){this._assertWriterUsedCorrectly();this.model.document.selection._setTo(...t)}setSelectionFocus(t,e){this._assertWriterUsedCorrectly();this.model.document.selection._setFocus(t,e)}setSelectionAttribute(t,e){this._assertWriterUsedCorrectly();if(typeof t==="string"){this._setSelectionAttribute(t,e)}else{for(const[e,n]of mc(t)){this._setSelectionAttribute(e,n)}}}removeSelectionAttribute(t){this._assertWriterUsedCorrectly();if(typeof t==="string"){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=vb._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=vb._getStoreAttributeKey(t);this.removeAttribute(n,e.anchor.parent)}e._removeAttribute(t)}_assertWriterUsedCorrectly(){if(this.model._currentWriter!==this){throw new z("writer-incorrect-use",this)}}_addOperationForAffectedMarkers(t,e){for(const n of this.model.markers){if(!n.managedUsingOperations){continue}const i=n.getRange();let o=false;if(t==="move"){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;const n=t.nodeBefore;const r=t.nodeAfter;const s=i.start.parent==n&&i.start.isAtEnd;const a=i.end.parent==r&&i.end.offset==0;const l=i.end.nodeAfter==r;const c=i.start.nodeAfter==r;o=s||a||l||c}if(o){this.updateMarker(n.name,{range:i})}}}}function xA(t,e,n,i){const o=t.model;const r=o.document;let s=i.start;let a;let l;let c;for(const t of i.getWalker({shallow:true})){c=t.item.getAttribute(e);if(a&&l!=c){if(l!=n){d()}s=a}a=t.nextPosition;l=c}if(a instanceof Qp&&a!=s&&l!=n){d()}function d(){const i=new ob(s,a);const c=i.root.document?r.version:null;const d=new Vw(i,e,l,n,c);t.batch.addOperation(d);o.applyOperation(d)}}function EA(t,e,n,i){const o=t.model;const r=o.document;const s=i.getAttribute(e);let a,l;if(s!=n){const c=i.root===i;if(c){const t=i.document?r.version:null;l=new Hw(i,e,s,n,t)}else{a=new ob(Qp._createBefore(i),t.createPositionAfter(i));const o=a.root.document?r.version:null;l=new Vw(a,e,s,n,o)}t.batch.addOperation(l);o.applyOperation(l)}}function DA(t,e,n,i,o){const r=t.model;const s=r.document;const a=new Pw(e,n,i,r.markers,!!o,s.version);t.batch.addOperation(a);r.applyOperation(a)}function SA(t,e,n,i){let o;if(t.root.document){const n=i.document;const r=new Qp(n.graveyard,[0]);o=new Nw(t,e,r,n.version)}else{o=new CA(t,e)}n.addOperation(o);i.applyOperation(o)}function TA(t,e){if(t===e){return true}if(t instanceof fA&&e instanceof fA){return true}return false}function IA(t){t.document.registerPostFixer((e=>MA(e,t)))}function MA(t,e){const n=e.document.selection;const i=e.schema;const o=[];let r=false;for(const t of n.getRanges()){const e=BA(t,i);if(e&&!e.isEqual(t)){o.push(e);r=true}else{o.push(t)}}if(r){t.setSelection(OA(o),{backward:n.isBackward})}return false}function BA(t,e){if(t.isCollapsed){return LA(t,e)}return NA(t,e)}function LA(t,e){const n=t.start;const i=e.getNearestSelectionRange(n);if(!i){const t=n.getAncestors().reverse().find((t=>e.isObject(t)));if(t){return ob._createOn(t)}return null}if(!i.isCollapsed){return i}const o=i.start;if(n.isEqual(o)){return null}return new ob(o)}function NA(t,e){const{start:n,end:i}=t;const o=e.checkChild(n,"$text");const r=e.checkChild(i,"$text");const s=e.getLimitElement(n);const a=e.getLimitElement(i);if(s===a){if(o&&r){return null}if(PA(n,i,e)){const t=n.nodeAfter&&e.isSelectable(n.nodeAfter);const o=t?null:e.getNearestSelectionRange(n,"forward");const r=i.nodeBefore&&e.isSelectable(i.nodeBefore);const s=r?null:e.getNearestSelectionRange(i,"backward");const a=o?o.start:n;const l=s?s.end:i;return new ob(a,l)}}const l=s&&!s.is("rootElement");const c=a&&!a.is("rootElement");if(l||c){const t=n.nodeAfter&&i.nodeBefore&&n.nodeAfter.parent===i.nodeBefore.parent;const o=l&&(!t||!RA(n.nodeAfter,e));const r=c&&(!t||!RA(i.nodeBefore,e));let d=n;let u=i;if(o){d=Qp._createBefore(zA(s,e))}if(r){u=Qp._createAfter(zA(a,e))}return new ob(d,u)}return null}function zA(t,e){let n=t;let i=n;while(e.isLimit(i)&&i.parent){n=i;i=i.parent}return n}function PA(t,e,n){const i=t.nodeAfter&&!n.isLimit(t.nodeAfter)||n.checkChild(t,"$text");const o=e.nodeBefore&&!n.isLimit(e.nodeBefore)||n.checkChild(e,"$text");return i||o}function OA(t){const e=[...t];const n=new Set;let i=1;while(i<e.length){const t=e[i];const o=e.slice(0,i);for(const[r,s]of o.entries()){if(n.has(r)){continue}if(t.isEqual(s)){n.add(r)}else if(t.isIntersecting(s)){n.add(r);n.add(i);const o=t.getJoined(s);e.push(o)}}i++}const o=e.filter(((t,e)=>!n.has(e)));return o}function RA(t,e){return t&&e.isSelectable(t)}function VA(t,e,n={}){if(e.isCollapsed){return}const i=e.getFirstRange();if(i.root.rootName=="$graveyard"){return}const o=t.schema;t.change((t=>{if(!n.doNotResetEntireContent&&JA(o,e)){QA(t,e);return}const r={};if(!n.doNotAutoparagraph){const t=e.getSelectedElement();if(t){Object.assign(r,o.getAttributesWithProperty(t,"copyOnReplace",true))}}const[s,a]=jA(i);if(!s.isTouching(a)){t.remove(t.createRange(s,a))}if(!n.leaveUnmerged){HA(t,s,a);o.removeDisallowedAttributes(s.parent.getChildren(),t)}XA(t,e,s);if(!n.doNotAutoparagraph&&KA(o,s)){ZA(t,s,e,r)}s.detach();a.detach()}))}function jA(t){const e=t.root.document.model;const n=t.start;let i=t.end;if(e.hasContent(t,{ignoreMarkers:true})){const n=FA(i);if(n&&i.isTouching(e.createPositionAt(n,0))){const n=e.createSelection(t);e.modifySelection(n,{direction:"backward"});const o=n.getLastPosition();const r=e.createRange(o,i);if(!e.hasContent(r,{ignoreMarkers:true})){i=o}}}return[sA.fromPosition(n,"toPrevious"),sA.fromPosition(i,"toNext")]}function FA(t){const e=t.parent;const n=e.root.document.model.schema;const i=e.getAncestors({parentFirst:true,includeSelf:true});for(const t of i){if(n.isLimit(t)){return null}if(n.isBlock(t)){return t}}}function HA(t,e,n){const i=t.model;if(!GA(t.model.schema,e,n)){return}const[o,r]=$A(e,n);if(!o||!r){return}if(!i.hasContent(o,{ignoreMarkers:true})&&i.hasContent(r,{ignoreMarkers:true})){WA(t,e,n,o.parent)}else{UA(t,e,n,o.parent)}}function UA(t,e,n,i){const o=e.parent;const r=n.parent;if(o==i||r==i){return}e=t.createPositionAfter(o);n=t.createPositionBefore(r);if(!n.isEqual(e)){t.insert(r,e)}t.merge(e);while(n.parent.isEmpty){const e=n.parent;n=t.createPositionBefore(e);t.remove(e)}if(!GA(t.model.schema,e,n)){return}UA(t,e,n,i)}function WA(t,e,n,i){const o=e.parent;const r=n.parent;if(o==i||r==i){return}e=t.createPositionAfter(o);n=t.createPositionBefore(r);if(!n.isEqual(e)){t.insert(o,n)}while(e.parent.isEmpty){const n=e.parent;e=t.createPositionBefore(n);t.remove(n)}n=t.createPositionBefore(r);qA(t,n);if(!GA(t.model.schema,e,n)){return}WA(t,e,n,i)}function qA(t,e){const n=e.nodeBefore;const i=e.nodeAfter;if(n.name!=i.name){t.rename(n,i.name)}t.clearAttributes(n);t.setAttributes(Object.fromEntries(i.getAttributes()),n);t.merge(e)}function GA(t,e,n){const i=e.parent;const o=n.parent;if(i==o){return false}if(t.isLimit(i)||t.isLimit(o)){return false}return YA(e,n,t)}function $A(t,e){const n=t.getAncestors();const i=e.getAncestors();let o=0;while(n[o]&&n[o]==i[o]){o++}return[n[o],i[o]]}function KA(t,e){const n=t.checkChild(e,"$text");const i=t.checkChild(e,"paragraph");return!n&&i}function YA(t,e,n){const i=new ob(t,e);for(const t of i.getWalker()){if(n.isLimit(t.item)){return false}}return true}function ZA(t,e,n,i={}){const o=t.createElement("paragraph");t.model.schema.setAllowedAttributes(o,i,t);t.insert(o,e);XA(t,n,t.createPositionAt(o,0))}function QA(t,e){const n=t.model.schema.getLimitElement(e);t.remove(t.createRangeIn(n));ZA(t,t.createPositionAt(n,0),e)}function JA(t,e){const n=t.getLimitElement(e);if(!e.containsEntireContent(n)){return false}const i=e.getFirstRange();if(i.start.parent==i.end.parent){return false}return t.checkChild(n,"paragraph")}function XA(t,e,n){if(e instanceof vb){t.setSelection(n)}else{e.setTo(n)}}function tC(t,e){return t.change((t=>{const n=t.createDocumentFragment();const i=e.getFirstRange();if(!i||i.isCollapsed){return n}const o=i.start.root;const r=i.start.getCommonPath(i.end);const s=o.getNodeByPath(r);let a;if(i.start.parent==i.end.parent){a=i}else{a=t.createRange(t.createPositionAt(s,i.start.path[r.length]),t.createPositionAt(s,i.end.path[r.length]+1))}const l=a.end.offset-a.start.offset;for(const e of a.getItems({shallow:true})){if(e.is("$textProxy")){t.appendText(e.data,e.getAttributes(),n)}else{t.append(t.cloneElement(e,true),n)}}if(a!=i){const e=i._getTransformedByMove(a.start,t.createPositionAt(n,0),l)[0];const o=t.createRange(t.createPositionAt(n,0),e.start);const r=t.createRange(e.end,t.createPositionAt(n,"end"));eC(r,t);eC(o,t)}return n}))}function eC(t,e){const n=[];Array.from(t.getItems({direction:"backward"})).map((t=>e.createRangeOn(t))).filter((e=>{const n=(e.start.isAfter(t.start)||e.start.isEqual(t.start))&&(e.end.isBefore(t.end)||e.end.isEqual(t.end));return n})).forEach((t=>{n.push(t.start.parent);e.remove(t)}));n.forEach((t=>{let n=t;while(n.parent&&n.isEmpty){const t=e.createRangeOn(n);n=n.parent;e.remove(t)}}))}function nC(t,e,n,i){return t.change((o=>{let r;if(!n){r=t.document.selection}else if(n instanceof hb||n instanceof vb){r=n}else{r=o.createSelection(n,i)}if(!r.isCollapsed){t.deleteContent(r,{doNotAutoparagraph:true})}const s=new iC(t,o,r.anchor);const a=[];let l;if(e.is("documentFragment")){if(e.markers.size){const t=[];for(const[n,i]of e.markers){const{start:e,end:o}=i;const r=e.isEqual(o);t.push({position:e,name:n,isCollapsed:r},{position:o,name:n,isCollapsed:r})}t.sort((({position:t},{position:e})=>t.isBefore(e)?1:-1));for(const{position:n,name:i,isCollapsed:r}of t){let t=null;let s=null;const l=n.parent===e&&n.isAtStart;const c=n.parent===e&&n.isAtEnd;if(!l&&!c){t=o.createElement("$marker");o.insert(t,n)}else if(r){s=l?"start":"end"}a.push({name:i,element:t,collapsed:s})}}l=e.getChildren()}else{l=[e]}s.handleNodes(l);let c=s.getSelectionRange();if(e.is("documentFragment")&&a.length){const t=c?kb.fromRange(c):null;const e={};for(let t=a.length-1;t>=0;t--){const{name:n,element:i,collapsed:r}=a[t];const l=!e[n];if(l){e[n]=[]}if(i){const t=o.createPositionAt(i,"before");e[n].push(t);o.remove(i)}else{const t=s.getAffectedRange();if(!t){if(r){e[n].push(s.position)}continue}if(r){e[n].push(t[r])}else{e[n].push(l?t.start:t.end)}}}for(const[t,[n,i]]of Object.entries(e)){if(n&&i&&n.root===i.root){o.addMarker(t,{usingOperation:true,affectsData:true,range:new ob(n,i)})}}if(t){c=t.toRange();t.detach()}}if(c){if(r instanceof vb){o.setSelection(c)}else{r.setTo(c)}}else{}const d=s.getAffectedRange()||t.createRange(r.anchor);s.destroy();return d}))}class iC{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();if(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);const n=this.writer.createPositionAfter(t);if(n.isAfter(e)){this._lastNode=t;if(this.position.parent!=t||!this.position.isAtEnd){throw new z("insertcontent-invalid-insertion-position",this)}this.position=n;this._setAffectedBoundaries(this.position)}}getSelectionRange(){if(this._nodeToSelect){return ob._createOn(this._nodeToSelect)}return this.model.schema.getNearestSelectionRange(this.position)}getAffectedRange(){if(!this._affectedStart){return null}return new ob(this._affectedStart,this._affectedEnd)}destroy(){if(this._affectedStart){this._affectedStart.detach()}if(this._affectedEnd){this._affectedEnd.detach()}}_handleNode(t){if(this.schema.isObject(t)){this._handleObject(t);return}let e=this._checkAndAutoParagraphToAllowedPosition(t);if(!e){e=this._checkAndSplitToAllowedPosition(t);if(!e){this._handleDisallowedNode(t);return}}this._appendToFragment(t);if(!this._firstNode){this._firstNode=t}this._lastNode=t}_insertPartialFragment(){if(this._documentFragment.isEmpty){return}const t=sA.fromPosition(this.position,"toNext");this._setAffectedBoundaries(this.position);if(this._documentFragment.getChild(0)==this._firstNode){this.writer.insert(this._firstNode,this.position);this._mergeOnLeft();this.position=t.toPosition()}if(!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){if(this._checkAndSplitToAllowedPosition(t)){this._appendToFragment(t)}else{this._tryAutoparagraphing(t)}}_handleDisallowedNode(t){if(t.is("element")){this.handleNodes(t.getChildren())}else{this._tryAutoparagraphing(t)}}_appendToFragment(t){if(!this.schema.checkChild(this.position,t)){throw new z("insertcontent-wrong-position",this,{node:t,position:this.position})}this.writer.insert(t,this._documentFragmentPosition);this._documentFragmentPosition=this._documentFragmentPosition.getShiftedBy(t.offsetSize);if(this.schema.isObject(t)&&!this.schema.checkChild(this.position,"$text")){this._nodeToSelect=t}else{this._nodeToSelect=null}this._filterAttributesOf.push(t)}_setAffectedBoundaries(t){if(!this._affectedStart){this._affectedStart=sA.fromPosition(t,"toPrevious")}if(!this._affectedEnd||this._affectedEnd.isBefore(t)){if(this._affectedEnd){this._affectedEnd.detach()}this._affectedEnd=sA.fromPosition(t,"toNext")}}_mergeOnLeft(){const t=this._firstNode;if(!(t instanceof $p)){return}if(!this._canMergeLeft(t)){return}const e=sA._createBefore(t);e.stickiness="toNext";const n=sA.fromPosition(this.position,"toNext");if(this._affectedStart.isEqual(e)){this._affectedStart.detach();this._affectedStart=sA._createAt(e.nodeBefore,"end","toPrevious")}if(this._firstNode===this._lastNode){this._firstNode=e.nodeBefore;this._lastNode=e.nodeBefore}this.writer.merge(e);if(e.isEqual(this._affectedEnd)&&this._firstNode===this._lastNode){this._affectedEnd.detach();this._affectedEnd=sA._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 $p)){return}if(!this._canMergeRight(t)){return}const e=sA._createAfter(t);e.stickiness="toNext";if(!this.position.isEqual(e)){throw new z("insertcontent-invalid-insertion-position",this)}this.position=Qp._createAt(e.nodeBefore,"end");const n=sA.fromPosition(this.position,"toPrevious");if(this._affectedEnd.isEqual(e)){this._affectedEnd.detach();this._affectedEnd=sA._createAt(e.nodeBefore,"end","toNext")}if(this._firstNode===this._lastNode){this._firstNode=e.nodeBefore;this._lastNode=e.nodeBefore}this.writer.merge(e);if(e.getShiftedBy(-1).isEqual(this._affectedStart)&&this._firstNode===this._lastNode){this._affectedStart.detach();this._affectedStart=sA._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 $p&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(e,t)}_canMergeRight(t){const e=t.nextSibling;return e instanceof $p&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(t,e)}_tryAutoparagraphing(t){const e=this.writer.createElement("paragraph");if(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 true}if(!this.schema.checkChild(this.position.parent,"paragraph")||!this.schema.checkChild("paragraph",t)){return false}this._insertPartialFragment();const e=this.writer.createElement("paragraph");this.writer.insert(e,this.position);this._setAffectedBoundaries(this.position);this._lastAutoParagraph=e;this.position=this.writer.createPositionAt(e,0);return true}_checkAndSplitToAllowedPosition(t){const e=this._getAllowedIn(this.position.parent,t);if(!e){return false}if(e!=this.position.parent){this._insertPartialFragment()}while(e!=this.position.parent){if(this.position.isAtStart){const t=this.position.parent;this.position=this.writer.createPositionBefore(t);if(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 true}_getAllowedIn(t,e){if(this.schema.checkChild(t,e)){return t}if(this.schema.isLimit(t)){return null}return this._getAllowedIn(t.parent,e)}}function oC(t,e,n="auto"){const i=t.getSelectedElement();if(i&&e.schema.isObject(i)&&!e.schema.isInline(i)){if(n=="before"||n=="after"){return e.createRange(e.createPositionAt(i,n))}return e.createRangeOn(i)}const o=dc(t.getSelectedBlocks());if(!o){return e.createRange(t.focus)}if(o.isEmpty){return e.createRange(e.createPositionAt(o,0))}const r=e.createPositionAfter(o);if(t.focus.isTouching(r)){return e.createRange(r)}return e.createRange(e.createPositionBefore(o))}function rC(t,e,n,i,o={}){if(!t.schema.isObject(e)){throw new z("insertobject-element-not-an-object",t,{object:e})}let r;if(!n){r=t.document.selection}else if(n instanceof hb||n instanceof vb){r=n}else{r=t.createSelection(n,i)}let s=r;if(o.findOptimalPosition&&t.schema.isBlock(e)){s=t.createSelection(oC(r,t,o.findOptimalPosition))}const a=dc(r.getSelectedBlocks());const l={};if(a){Object.assign(l,t.schema.getAttributesWithProperty(a,"copyOnReplace",true))}return t.change((n=>{if(!s.isCollapsed){t.deleteContent(s,{doNotAutoparagraph:true})}let i=e;const r=s.anchor.parent;if(!t.schema.checkChild(r,e)&&t.schema.checkChild(r,"paragraph")&&t.schema.checkChild("paragraph",e)){i=n.createElement("paragraph");n.insert(e,i)}t.schema.setAllowedAttributes(i,l,n);const a=t.insertContent(i,s);if(a.isCollapsed){return a}if(o.setSelection){sC(n,e,o.setSelection,l)}return a}))}function sC(t,e,n,i){const o=t.model;if(n=="on"){t.setSelection(e,"on");return}if(n!="after"){throw new z("insertobject-invalid-place-parameter-value",o)}let r=e.nextSibling;if(o.schema.isInline(e)){t.setSelection(e,"after");return}const s=r&&o.schema.checkChild(r,"$text");if(!s&&o.schema.checkChild(e.parent,"paragraph")){r=t.createElement("paragraph");o.schema.setAllowedAttributes(r,i,t);o.insertContent(r,t.createPositionAfter(e))}if(r){t.setSelection(r,0)}}const aC=' ,.?!:;"-()';function lC(t,e,n={}){const i=t.schema;const o=n.direction!="backward";const r=n.unit?n.unit:"character";const s=!!n.treatEmojiAsSingleUnit;const a=e.focus;const l=new Yp({boundaries:hC(a,o),singleCharacters:true,direction:o?"forward":"backward"});const c={walker:l,schema:i,isForward:o,unit:r,treatEmojiAsSingleUnit:s};let d;while(d=l.next()){if(d.done){return}const n=cC(c,d.value);if(n){if(e instanceof vb){t.change((t=>{t.setSelectionFocus(n)}))}else{e.setFocus(n)}return}}}function cC(t,e){const{isForward:n,walker:i,unit:o,schema:r,treatEmojiAsSingleUnit:s}=t;const{type:a,item:l,nextPosition:c}=e;if(a=="text"){if(t.unit==="word"){return uC(i,n)}return dC(i,o,s)}if(a==(n?"elementStart":"elementEnd")){if(r.isSelectable(l)){return Qp._createAt(l,n?"after":"before")}if(r.checkChild(c,"$text")){return c}}else{if(r.isLimit(l)){i.skip((()=>true));return}if(r.checkChild(c,"$text")){return c}}}function dC(t,e,n){const i=t.position.textNode;if(i){const o=i.data;let r=t.position.offset-i.startOffset;while(Ac(o,r)||e=="character"&&Cc(o,r)||n&&vc(o,r)){t.next();r=t.position.offset-i.startOffset}}return t.position}function uC(t,e){let n=t.position.textNode;if(!n){n=e?t.position.nodeAfter:t.position.nodeBefore}while(n&&n.is("$text")){const i=t.position.offset-n.startOffset;if(mC(n,i,e)){n=e?t.position.nodeAfter:t.position.nodeBefore}else if(gC(n.data,i,e)){break}else{t.next()}}return t.position}function hC(t,e){const n=t.root;const i=Qp._createAt(n,e?"end":0);if(e){return new ob(t,i)}else{return new ob(i,t)}}function gC(t,e,n){const i=e+(n?0:-1);return aC.includes(t.charAt(i))}function mC(t,e,n){return e===(n?t.offsetSize:0)}class fC extends(mt()){constructor(){super();this.markers=new wA;this.document=new bA(this);this.schema=new Yk;this._pendingChanges=[];this._currentWriter=null;["insertContent","insertObject","deleteContent","modifySelection","getSelectedContent","applyOperation"].forEach((t=>this.decorate(t)));this.on("applyOperation",((t,e)=>{const n=e[0];n._validate()}),{priority:"highest"});this.schema.register("$root",{isLimit:true});this.schema.register("$container",{allowIn:["$root","$container"]});this.schema.register("$block",{allowIn:["$root","$container"],isBlock:true});this.schema.register("$blockObject",{allowWhere:"$block",isBlock:true,isObject:true});this.schema.register("$inlineObject",{allowWhere:"$text",allowAttributesOf:"$text",isInline:true,isObject:true});this.schema.register("$text",{allowIn:"$block",isInline:true,isContent:true});this.schema.register("$clipboardHolder",{allowContentOf:"$root",allowChildren:"$text",isLimit:true});this.schema.register("$documentFragment",{allowContentOf:"$root",allowChildren:"$text",isLimit:true});this.schema.register("$marker");this.schema.addChildCheck(((t,e)=>{if(e.name==="$marker"){return true}}));IA(this);this.document.registerPostFixer(_k)}change(t){try{if(this._pendingChanges.length===0){this._pendingChanges.push({batch:new cA,callback:t});return this._runPendingChanges()[0]}else{return t(this._currentWriter)}}catch(t){z.rethrowUnexpectedError(t,this)}}enqueueChange(t,e){try{if(!t){t=new cA}else if(typeof t==="function"){e=t;t=new cA}else if(!(t instanceof cA)){t=new cA(t)}this._pendingChanges.push({batch:t,callback:e});if(this._pendingChanges.length==1){this._runPendingChanges()}}catch(t){z.rethrowUnexpectedError(t,this)}}applyOperation(t){t._execute()}insertContent(t,e,n){return nC(this,t,e,n)}insertObject(t,e,n,i){return rC(this,t,e,n,i)}deleteContent(t,e){VA(this,t,e)}modifySelection(t,e){lC(this,t,e)}getSelectedContent(t){return tC(this,t)}hasContent(t,e={}){const n=t instanceof ob?t:ob._createIn(t);if(n.isCollapsed){return false}const{ignoreWhitespaces:i=false,ignoreMarkers:o=false}=e;if(!o){for(const t of this.markers.getMarkersIntersectingRange(n)){if(t.affectsData){return true}}}for(const t of n.getItems()){if(this.schema.isContent(t)){if(t.is("$textProxy")){if(!i){return true}else if(t.data.search(/\S/)!==-1){return true}}else{return true}}}return false}createPositionFromPath(t,e,n){return new Qp(t,e,n)}createPositionAt(t,e){return Qp._createAt(t,e)}createPositionAfter(t){return Qp._createAfter(t)}createPositionBefore(t){return Qp._createBefore(t)}createRange(t,e){return new ob(t,e)}createRangeIn(t){return ob._createIn(t)}createRangeOn(t){return ob._createOn(t)}createSelection(...t){return new hb(...t)}createBatch(t){return new cA(t)}createOperationFromJSON(t){return Gw.fromJSON(t,this.document)}destroy(){this.document.destroy();this.stopListening()}_runPendingChanges(){const t=[];this.fire("_beforeChanges");try{while(this._pendingChanges.length){const e=this._pendingChanges[0].batch;this._currentWriter=new yA(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}}class pC extends cf{constructor(t){super(t);this.domEventType="click"}onDomEvent(t){this.fire(t.type,t)}}class bC extends cf{constructor(t){super(t);this.domEventType=["mousedown","mouseup","mouseover","mouseout"]}onDomEvent(t){this.fire(t.type,t)}}class kC{constructor(t){this.document=t}createDocumentFragment(t){return new cm(this.document,t)}createElement(t,e,n){return new Dg(this.document,t,e,n)}createText(t){return new Du(this.document,t)}clone(t,e=false){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;if(e){return this.removeChildren(e.getChildIndex(t),1,e)}return[]}replace(t,e){const n=t.parent;if(n){const i=n.getChildIndex(t);this.removeChildren(i,1,n);this.insertChild(i,e,n);return true}return false}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 Dg(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){if(pe(t)&&n===undefined){e._setStyle(t)}else{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 Og._createAt(t,e)}createPositionAfter(t){return Og._createAfter(t)}createPositionBefore(t){return Og._createBefore(t)}createRange(t,e){return new Rg(t,e)}createRangeOn(t){return Rg._createOn(t)}createRangeIn(t){return Rg._createIn(t)}createSelection(...t){return new jg(...t)}}const wC=/^#([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;const AC=/^rgb\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}[0-9]{1,3}[ %]?\)$/i;const CC=/^rgba\([ ]?([0-9]{1,3}[ %]?,[ ]?){3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i;const _C=/^hsl\([ ]?([0-9]{1,3}[ %]?[,]?[ ]*){3}(1|[0-9]+%|[0]?\.?[0-9]+)?\)$/i;const vC=/^hsla\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i;const yC=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 xC(t){if(t.startsWith("#")){return wC.test(t)}if(t.startsWith("rgb")){return AC.test(t)||CC.test(t)}if(t.startsWith("hsl")){return _C.test(t)||vC.test(t)}return yC.has(t.toLowerCase())}const EC=["none","hidden","dotted","dashed","solid","double","groove","ridge","inset","outset"];function DC(t){return EC.includes(t)}const SC=/^([+-]?[0-9]*([.][0-9]+)?(px|cm|mm|in|pc|pt|ch|em|ex|rem|vh|vw|vmin|vmax)|0)$/;function TC(t){return SC.test(t)}const IC=/^[+-]?[0-9]*([.][0-9]+)?%$/;function MC(t){return IC.test(t)}const BC=["repeat-x","repeat-y","repeat","space","round","no-repeat"];function LC(t){return BC.includes(t)}const NC=["center","top","bottom","left","right"];function zC(t){return NC.includes(t)}const PC=["fixed","scroll","local"];function OC(t){return PC.includes(t)}const RC=/^url\(/;function VC(t){return RC.test(t)}function jC(t=""){if(t===""){return{top:undefined,right:undefined,bottom:undefined,left:undefined}}const e=WC(t);const n=e[0];const i=e[2]||n;const o=e[1]||n;const r=e[3]||o;return{top:n,bottom:i,right:o,left:r}}function FC(t){return e=>{const{top:n,right:i,bottom:o,left:r}=e;const s=[];if(![n,i,r,o].every((t=>!!t))){if(n){s.push([t+"-top",n])}if(i){s.push([t+"-right",i])}if(o){s.push([t+"-bottom",o])}if(r){s.push([t+"-left",r])}}else{s.push([t,HC(e)])}return s}}function HC({top:t,right:e,bottom:n,left:i}){const o=[];if(i!==e){o.push(t,e,n,i)}else if(n!==t){o.push(t,e,n)}else if(e!==t){o.push(t,e)}else{o.push(t)}return o.join(" ")}function UC(t){return e=>({path:t,value:jC(e)})}function WC(t){return t.replace(/, /g,",").split(" ").map((t=>t.replace(/,/g,", ")))}function qC(t){t.setNormalizer("background",GC());t.setNormalizer("background-color",$C());t.setReducer("background",KC());t.setStyleRelation("background",["background-color"])}function GC(){return t=>{const e={};const n=WC(t);for(const t of n){if(LC(t)){e.repeat=e.repeat||[];e.repeat.push(t)}else if(zC(t)){e.position=e.position||[];e.position.push(t)}else if(OC(t)){e.attachment=t}else if(xC(t)){e.color=t}else if(VC(t)){e.image=t}}return{path:"background",value:e}}}function $C(){return t=>({path:"background.color",value:t})}function KC(){return t=>{const e=[];e.push(["background-color",t.color]);return e}}function YC(t){t.setNormalizer("border",ZC());t.setNormalizer("border-top",QC("top"));t.setNormalizer("border-right",QC("right"));t.setNormalizer("border-bottom",QC("bottom"));t.setNormalizer("border-left",QC("left"));t.setNormalizer("border-color",JC("color"));t.setNormalizer("border-width",JC("width"));t.setNormalizer("border-style",JC("style"));t.setNormalizer("border-top-color",t_("color","top"));t.setNormalizer("border-top-style",t_("style","top"));t.setNormalizer("border-top-width",t_("width","top"));t.setNormalizer("border-right-color",t_("color","right"));t.setNormalizer("border-right-style",t_("style","right"));t.setNormalizer("border-right-width",t_("width","right"));t.setNormalizer("border-bottom-color",t_("color","bottom"));t.setNormalizer("border-bottom-style",t_("style","bottom"));t.setNormalizer("border-bottom-width",t_("width","bottom"));t.setNormalizer("border-left-color",t_("color","left"));t.setNormalizer("border-left-style",t_("style","left"));t.setNormalizer("border-left-width",t_("width","left"));t.setExtractor("border-top",e_("top"));t.setExtractor("border-right",e_("right"));t.setExtractor("border-bottom",e_("bottom"));t.setExtractor("border-left",e_("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",FC("border-color"));t.setReducer("border-style",FC("border-style"));t.setReducer("border-width",FC("border-width"));t.setReducer("border-top",r_("top"));t.setReducer("border-right",r_("right"));t.setReducer("border-bottom",r_("bottom"));t.setReducer("border-left",r_("left"));t.setReducer("border",o_());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 ZC(){return t=>{const{color:e,style:n,width:i}=i_(t);return{path:"border",value:{color:jC(e),style:jC(n),width:jC(i)}}}}function QC(t){return e=>{const{color:n,style:i,width:o}=i_(e);const r={};if(n!==undefined){r.color={[t]:n}}if(i!==undefined){r.style={[t]:i}}if(o!==undefined){r.width={[t]:o}}return{path:"border",value:r}}}function JC(t){return e=>({path:"border",value:XC(e,t)})}function XC(t,e){return{[e]:jC(t)}}function t_(t,e){return n=>({path:"border",value:{[t]:{[e]:n}}})}function e_(t){return(e,n)=>{if(n.border){return n_(n.border,t)}}}function n_(t,e){const n={};if(t.width&&t.width[e]){n.width=t.width[e]}if(t.style&&t.style[e]){n.style=t.style[e]}if(t.color&&t.color[e]){n.color=t.color[e]}return n}function i_(t){const e={};const n=WC(t);for(const t of n){if(TC(t)||/thin|medium|thick/.test(t)){e.width=t}else if(DC(t)){e.style=t}else{e.color=t}}return e}function o_(){return e=>{const n=n_(e,"top");const i=n_(e,"right");const o=n_(e,"bottom");const r=n_(e,"left");const s=[n,i,o,r];const a={width:t(s,"width"),style:t(s,"style"),color:t(s,"color")};const l=s_(a,"all");if(l.length){return l}const c=Object.entries(a).reduce(((t,[e,n])=>{if(n){t.push([`border-${e}`,n]);s.forEach((t=>delete t[e]))}return t}),[]);return[...c,...s_(n,"top"),...s_(i,"right"),...s_(o,"bottom"),...s_(r,"left")]};function t(t,e){return t.map((t=>t[e])).reduce(((t,e)=>t==e?t:null))}}function r_(t){return e=>s_(e,t)}function s_(t,e){const n=[];if(t&&t.width){n.push("width")}if(t&&t.style){n.push("style")}if(t&&t.color){n.push("color")}if(n.length==3){const i=n.map((e=>t[e])).join(" ");return[e=="all"?["border",i]:[`border-${e}`,i]]}if(e=="all"){return[]}return n.map((n=>[`border-${e}-${n}`,t[n]]))}function a_(t){t.setNormalizer("margin",UC("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",FC("margin"));t.setStyleRelation("margin",["margin-top","margin-right","margin-bottom","margin-left"])}function l_(t){t.setNormalizer("padding",UC("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",FC("padding"));t.setStyleRelation("padding",["padding-top","padding-right","padding-bottom","padding-left"])}class c_{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 z("commandcollection-command-not-found",this,{commandName:t})}return n.execute(...e)}*names(){yield*this._commands.keys()}*commands(){yield*this._commands.values()}[Symbol.iterator](){return this._commands[Symbol.iterator]()}destroy(){for(const t of this.commands()){t.destroy()}}}class d_ extends hc{constructor(t){super();this.editor=t}set(t,e,n={}){if(typeof e=="string"){const t=e;e=(e,n)=>{this.editor.execute(t);n()}}super.set(t,e,n)}}class u_ extends(mt()){constructor(t={}){super();const e=this.constructor;const n=t.language||e.defaultConfig&&e.defaultConfig.language;this._context=t.context||new au({language:n});this._context._addEditor(this,!t.context);const i=Array.from(e.builtinPlugins||[]);this.config=new Ga(t,e.defaultConfig);this.config.define("plugins",i);this.config.define(this._context._getEditorConfig());this.plugins=new su(this,i,this._context.plugins);this.locale=this._context.locale;this.t=this.locale.t;this._readOnlyLocks=new Set;this.commands=new c_;this.set("state","initializing");this.once("ready",(()=>this.state="ready"),{priority:"high"});this.once("destroy",(()=>this.state="destroyed"),{priority:"high"});this.model=new fC;const o=new vg;this.data=new Aw(this.model,o);this.editing=new qk(this.model,o);this.editing.view.document.bind("isReadOnly").to(this);this.conversion=new _w([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 d_(this);this.keystrokes.listenTo(this.editing.view.document)}get isReadOnly(){return this._readOnlyLocks.size>0}set isReadOnly(t){throw new z("editor-isreadonly-has-no-setter")}enableReadOnlyMode(t){if(typeof t!=="string"&&typeof t!=="symbol"){throw new z("editor-read-only-lock-id-invalid",null,{lockId:t})}if(this._readOnlyLocks.has(t)){return}this._readOnlyLocks.add(t);if(this._readOnlyLocks.size===1){this.fire("change:isReadOnly","isReadOnly",true,false)}}disableReadOnlyMode(t){if(typeof t!=="string"&&typeof t!=="symbol"){throw new z("editor-read-only-lock-id-invalid",null,{lockId:t})}if(!this._readOnlyLocks.has(t)){return}this._readOnlyLocks.delete(t);if(this._readOnlyLocks.size===0){this.fire("change:isReadOnly","isReadOnly",false,true)}}initPlugins(){const t=this.config;const e=t.get("plugins");const n=t.get("removePlugins")||[];const i=t.get("extraPlugins")||[];const o=t.get("substitutePlugins")||[];return this.plugins.init(e.concat(i),n,o)}destroy(){let t=Promise.resolve();if(this.state=="initializing"){t=new Promise((t=>this.once("ready",t)))}return 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){z.rethrowUnexpectedError(t,this)}}focus(){this.editing.view.focus()}}function h_(t){if(!Ke(t.updateSourceElement)){throw new z("attachtoform-missing-elementapi-interface",t)}const e=t.sourceElement;if(g_(e)&&e.form){let n;const i=e.form;const o=()=>t.updateSourceElement();if(Ke(i.submit)){n=i.submit;i.submit=()=>{o();n.apply(i)}}i.addEventListener("submit",o);t.on("destroy",(()=>{i.removeEventListener("submit",o);if(n){i.submit=n}}))}}function g_(t){return!!t&&t.tagName.toLowerCase()==="textarea"}function m_(t){class e extends t{setData(t){this.data.set(t)}getData(t){return this.data.get(t)}}return e}{const t=m_(Object);m_.setData=t.prototype.setData;m_.getData=t.prototype.getData}function f_(t){class e extends t{updateSourceElement(t=this.data.get()){if(!this.sourceElement){throw new z("editor-missing-sourceelement",this)}const e=this.config.get("updateSourceElementOnDestroy");const n=this.sourceElement instanceof HTMLTextAreaElement;if(!e&&!n){fl(this.sourceElement,"");return}fl(this.sourceElement,t)}}return e}f_.updateSourceElement=f_(Object).prototype.updateSourceElement;function p_(t){const e=t.sourceElement;if(!e){return}if(e.ckeditorInstance){throw new CKEditorError("editor-source-element-already-used",t)}e.ckeditorInstance=t;t.once("destroy",(()=>{delete e.ckeditorInstance}))}class b_ extends lu{static get pluginName(){return"PendingActions"}init(){this.set("hasAny",false);this._actions=new cc({idProperty:"_id"});this._actions.delegate("add","remove").to(this)}add(t){if(typeof t!=="string"){throw new z("pendingactions-add-invalid-message",this)}const e=new(mt());e.set("message",t);this._actions.add(e);this.hasAny=true;return 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 k_='$${Delta.CKEditor.Icon[2]}$$';const w_='$${Delta.CKEditor.Icon[3]}$$';const A_='$${Delta.CKEditor.Icon[4]}$$';const C_='$${Delta.CKEditor.Icon[5]}$$';const __='$${Delta.CKEditor.Icon[6]}$$';const v_='$${Delta.CKEditor.Icon[7]}$$';const y_='$${Delta.CKEditor.Icon[8]}$$';const x_='$${Delta.CKEditor.Icon[9]}$$';const E_='$${Delta.CKEditor.Icon[10]}$$';const D_='$${Delta.CKEditor.Icon[11]}$$';const S_='$${Delta.CKEditor.Icon[12]}$$';const T_='$${Delta.CKEditor.Icon[13]}$$';const I_='$${Delta.CKEditor.Icon[14]}$$';const M_='$${Delta.CKEditor.Icon[15]}$$';const B_='$${Delta.CKEditor.Icon[16]}$$';const L_='$${Delta.CKEditor.Icon[17]}$$';const N_='$${Delta.CKEditor.Icon[18]}$$';const z_='$${Delta.CKEditor.Icon[19]}$$';const P_='$${Delta.CKEditor.Icon[20]}$$';const O_='$${Delta.CKEditor.Icon[21]}$$';const R_='$${Delta.CKEditor.Icon[22]}$$';const V_='$${Delta.CKEditor.Icon[23]}$$';const j_='$${Delta.CKEditor.Icon[24]}$$';const F_='$${Delta.CKEditor.Icon[25]}$$';const H_='$${Delta.CKEditor.Icon[26]}$$';const U_='$${Delta.CKEditor.Icon[27]}$$';const W_='$${Delta.CKEditor.Icon[28]}$$';const q_='$${Delta.CKEditor.Icon[29]}$$';const G_='$${Delta.CKEditor.Icon[30]}$$';const $_='$${Delta.CKEditor.Icon[31]}$$';const K_='$${Delta.CKEditor.Icon[32]}$$';const Y_='$${Delta.CKEditor.Icon[33]}$$';const Z_='$${Delta.CKEditor.Icon[34]}$$';const Q_='$${Delta.CKEditor.Icon[35]}$$';const J_={bold:$_,cancel:k_,caption:w_,check:A_,cog:C_,eraser:__,image:y_,lowVision:v_,importExport:Q_,paragraph:K_,plus:Y_,text:Z_,alignBottom:x_,alignMiddle:E_,alignTop:D_,alignLeft:S_,alignCenter:T_,alignRight:I_,alignJustify:M_,objectLeft:O_,objectCenter:L_,objectRight:R_,objectFullWidth:z_,objectInline:P_,objectBlockLeft:B_,objectBlockRight:N_,objectSizeFull:V_,objectSizeLarge:j_,objectSizeSmall:F_,objectSizeMedium:H_,pencil:U_,pilcrow:W_,quote:q_,threeVerticalDots:G_};var X_=n(5571);var tv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tv.insert="head";tv.singleton=true;var ev=Sc()(X_.Z,tv);const nv=X_.Z.locals||{};const{threeVerticalDots:iv}=J_;const ov={alignLeft:J_.alignLeft,bold:J_.bold,importExport:J_.importExport,paragraph:J_.paragraph,plus:J_.plus,text:J_.text,threeVerticalDots:J_.threeVerticalDots};class rv extends Lc{constructor(t,e){super(t);const n=this.bindTemplate;const i=this.t;this.options=e||{};this.set("ariaLabel",i("Editor toolbar"));this.set("maxWidth","auto");this.items=this.createCollection();this.focusTracker=new uc;this.keystrokes=new hc;this.set("class",undefined);this.set("isCompact",false);this.itemsView=new sv(t);this.children=this.createCollection();this.children.add(this.itemsView);this.focusables=this.createCollection();const o=t.uiLanguageDirection==="rtl";this._focusCycler=new Yd({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")];if(this.options.shouldGroupWhenFull&&this.options.isFloating){r.push("ck-toolbar_floating")}this.setTemplate({tag:"div",attributes:{class:r,role:"toolbar","aria-label":n.to("ariaLabel"),style:{maxWidth:n.to("maxWidth")}},children:this.children,on:{mousedown:Xd(this)}});this._behavior=this.options.shouldGroupWhenFull?new lv(this):new av(this)}render(){super.render();for(const t of this.items){this.focusTracker.add(t.element)}this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)}));this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)}));this.keystrokes.listenTo(this.element);this._behavior.render(this)}destroy(){this._behavior.destroy();this.focusTracker.destroy();this.keystrokes.destroy();return 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=tu(t);const o=n||i.removeItems;const r=this._cleanItemsConfiguration(i.items,e,o).map((t=>{if(at(t)){return this._createNestedToolbarDropdown(t,e,o)}else if(t==="|"){return new Qd}else if(t==="-"){return new Jd}return e.create(t)})).filter((t=>!!t));return r}_cleanItemsConfiguration(t,e,n){const i=t.filter(((t,i,o)=>{if(t==="|"){return true}if(n.indexOf(t)!==-1){return false}if(t==="-"){if(this.options.shouldGroupWhenFull){P("toolbarview-line-break-ignored-when-grouping-items",o);return false}return true}if(!at(t)&&!e.has(t)){P("toolbarview-item-unavailable",{item:t});return false}return true}));return this._cleanSeparatorsAndLineBreaks(i)}_cleanSeparatorsAndLineBreaks(t){const e=t=>t!=="-"&&t!=="|";const n=t.length;const i=t.findIndex(e);if(i===-1){return[]}const o=n-t.slice().reverse().findIndex(e);return t.slice(i,o).filter(((t,n,i)=>{if(e(t)){return true}const o=n>0&&i[n-1]===t;return!o}))}_createNestedToolbarDropdown(t,e,n){let{label:i,icon:o,items:r,tooltip:s=true,withText:a=false}=t;r=this._cleanItemsConfiguration(r,e,n);if(!r.length){return null}const l=this.locale;const c=yv(l);if(!i){P("toolbarview-nested-toolbar-dropdown-missing-label",t)}c.class="ck-toolbar__nested-toolbar-dropdown";c.buttonView.set({label:i,tooltip:s,withText:!!a});if(o!==false){c.buttonView.icon=ov[o]||o||iv}else{c.buttonView.withText=true}xv(c,(()=>c.toolbarView._buildItemsFromConfig(r,e,n)));return c}}class sv extends Lc{constructor(t){super(t);this.children=this.createCollection();this.setTemplate({tag:"div",attributes:{class:["ck","ck-toolbar__items"]},children:this.children})}}class av{constructor(t){const e=t.bindTemplate;t.set("isVertical",false);t.itemsView.children.bindTo(t.items).using((t=>t));t.focusables.bindTo(t.items).using((t=>t));t.extendTemplate({attributes:{class:[e.if("isVertical","ck-toolbar_vertical")]}})}render(){}destroy(){}}class lv{constructor(t){this.view=t;this.viewChildren=t.children;this.viewFocusables=t.focusables;this.viewItemsView=t.itemsView;this.viewFocusTracker=t.focusTracker;this.viewLocale=t.locale;this.ungroupedItems=t.createCollection();this.groupedItems=t.createCollection();this.groupedItemsDropdown=this._createGroupedItemsDropdown();this.resizeObserver=null;this.cachedPadding=null;this.shouldUpdateGroupingOnNextResize=false;t.itemsView.children.bindTo(this.ungroupedItems).using((t=>t));this.ungroupedItems.on("change",this._updateFocusCycleableItems.bind(this));t.children.on("change",this._updateFocusCycleableItems.bind(this));t.items.on("change",((t,e)=>{const n=e.index;const i=Array.from(e.added);for(const t of e.removed){if(n>=this.ungroupedItems.length){this.groupedItems.remove(t)}else{this.ungroupedItems.remove(t)}}for(let t=n;t<n+i.length;t++){const e=i[t-n];if(t>this.ungroupedItems.length){this.groupedItems.add(e,t-this.ungroupedItems.length)}else{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(!Al(this.viewElement)){this.shouldUpdateGroupingOnNextResize=true;return}const t=this.groupedItems.length;let e;while(this._areItemsOverflowing){this._groupLastItem();e=true}if(!e&&this.groupedItems.length){while(this.groupedItems.length&&!this._areItemsOverflowing){this._ungroupFirstItem()}if(this._areItemsOverflowing){this._groupLastItem()}}if(this.groupedItems.length!==t){this.view.fire("groupedItemsUpdate")}}get _areItemsOverflowing(){if(!this.ungroupedItems.length){return false}const t=this.viewElement;const e=this.viewLocale.uiLanguageDirection;const n=new dl(t.lastChild);const i=new dl(t);if(!this.cachedPadding){const n=il.window.getComputedStyle(t);const i=e==="ltr"?"paddingRight":"paddingLeft";this.cachedPadding=Number.parseInt(n[i])}if(e==="ltr"){return n.right>i.right-this.cachedPadding}else{return n.left<i.left+this.cachedPadding}}_enableGroupingOnResize(){let t;this.resizeObserver=new ml(this.viewElement,(e=>{if(!t||t!==e.contentRect.width||this.shouldUpdateGroupingOnNextResize){this.shouldUpdateGroupingOnNextResize=false;this._updateGrouping();t=e.contentRect.width}}));this._updateGrouping()}_enableGroupingOnMaxWidthChange(t){t.on("change:maxWidth",(()=>{this._updateGrouping()}))}_groupLastItem(){if(!this.groupedItems.length){this.viewChildren.add(new Qd);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));if(!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;const e=t.t;const n=yv(t);n.class="ck-toolbar__grouped-dropdown";n.panelPosition=t.uiLanguageDirection==="ltr"?"sw":"se";xv(n,this.groupedItems);n.buttonView.set({label:e("Show more items"),tooltip:true,tooltipPosition:t.uiLanguageDirection==="rtl"?"se":"sw",icon:iv});return n}_updateFocusCycleableItems(){this.viewFocusables.clear();this.ungroupedItems.map((t=>{this.viewFocusables.add(t)}));if(this.groupedItems.length){this.viewFocusables.add(this.groupedItemsDropdown)}}}var cv=n(1162);var dv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};dv.insert="head";dv.singleton=true;var uv=Sc()(cv.Z,dv);const hv=cv.Z.locals||{};class gv extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.items=this.createCollection();this.focusTracker=new uc;this.keystrokes=new hc;this._focusCycler=new Yd({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"arrowup",focusNext:"arrowdown"}});this.set("ariaLabel",undefined);this.setTemplate({tag:"ul",attributes:{class:["ck","ck-reset","ck-list"],"aria-label":e.to("ariaLabel")},children:this.items})}render(){super.render();for(const t of this.items){this.focusTracker.add(t.element)}this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)}));this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)}));this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}}class mv extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",true);this.children=this.createCollection();this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__item",e.if("isVisible","ck-hidden",(t=>!t))]},children:this.children})}focus(){this.children.first.focus()}}class fv extends Lc{constructor(t){super(t);this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__separator"]}})}}var pv=n(5075);var bv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};bv.insert="head";bv.singleton=true;var kv=Sc()(pv.Z,bv);const wv=pv.Z.locals||{};var Av=n(6875);var Cv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Cv.insert="head";Cv.singleton=true;var _v=Sc()(Av.Z,Cv);const vv=Av.Z.locals||{};function yv(t,e=Hd){const n=new e(t);const i=new Kd(t);const o=new jd(t,n,i);n.bind("isEnabled").to(o);if(n instanceof $d){n.arrowView.bind("isOn").to(o,"isOpen")}else{n.bind("isOn").to(o,"isOpen")}Iv(o);return o}function xv(t,e,n={}){t.extendTemplate({attributes:{class:["ck-toolbar-dropdown"]}});if(t.isOpen){Ev(t,e,n)}else{t.once("change:isOpen",(()=>Ev(t,e,n)),{priority:"highest"})}if(n.enableActiveItemFocusOnDropdownOpen){Tv(t,(()=>t.toolbarView.items.find((t=>t.isOn))))}}function Ev(t,e,n){const i=t.locale;const o=i.t;const r=t.toolbarView=new rv(i);const s=typeof e=="function"?e():e;r.ariaLabel=n.ariaLabel||o("Dropdown toolbar");if(n.maxWidth){r.maxWidth=n.maxWidth}if(n.class){r.class=n.class}if(n.isCompact){r.isCompact=n.isCompact}if(n.isVertical){r.isVertical=true}if(s instanceof xc){r.items.bindTo(s).using((t=>t))}else{r.items.addMany(s)}t.panelView.children.add(r);r.items.delegate("execute").to(t)}function Dv(t,e,n={}){if(t.isOpen){Sv(t,e,n)}else{t.once("change:isOpen",(()=>Sv(t,e,n)),{priority:"highest"})}Tv(t,(()=>t.listView.items.find((t=>{if(t instanceof mv){return t.children.first.isOn}return false}))))}function Sv(t,e,n){const i=t.locale;const o=t.listView=new gv(i);const r=typeof e=="function"?e():e;o.ariaLabel=n.ariaLabel;o.items.bindTo(r).using((t=>{if(t.type==="separator"){return new fv(i)}else if(t.type==="button"||t.type==="switchbutton"){const e=new mv(i);let n;if(t.type==="button"){n=new kd(i)}else{n=new vd(i)}n.bind(...Object.keys(t.model)).to(t.model);n.delegate("execute").to(e);e.children.add(n);return e}return null}));t.panelView.children.add(o);o.items.delegate("execute").to(t)}function Tv(t,e){t.on("change:isOpen",(()=>{if(!t.isOpen){return}const n=e();if(!n){return}if(typeof n.focus==="function"){n.focus()}else{P("ui-dropdown-focus-child-on-open-child-missing-focus",{view:n})}}),{priority:B.low-10})}function Iv(t){Mv(t);Bv(t);Lv(t);Nv(t);zv(t);Pv(t)}function Mv(e){e.on("render",(()=>{t({emitter:e,activator:()=>e.isOpen,callback:()=>{e.isOpen=false},contextElements:[e.element]})}))}function Bv(t){t.on("execute",(e=>{if(e.source instanceof vd){return}t.isOpen=false}))}function Lv(t){t.focusTracker.on("change:isFocused",((e,n,i)=>{if(t.isOpen&&!i){t.isOpen=false}}))}function Nv(t){t.keystrokes.set("arrowdown",((e,n)=>{if(t.isOpen){t.panelView.focus();n()}}));t.keystrokes.set("arrowup",((e,n)=>{if(t.isOpen){t.panelView.focusLast();n()}}))}function zv(t){t.on("change:isOpen",((e,n,i)=>{if(i){return}const o=t.panelView.element;if(o&&o.contains(il.document.activeElement)){t.buttonView.focus()}}))}function Pv(t){t.on("change:isOpen",((e,n,i)=>{if(!i){return}t.panelView.focus()}),{priority:"low"})}var Ov=n(8245);var Rv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Rv.insert="head";Rv.singleton=true;var Vv=Sc()(Ov.Z,Rv);const jv=Ov.Z.locals||{};const Fv=pl("px");const Hv=il.document.body;class Uv extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.set("top",0);this.set("left",0);this.set("position","arrow_nw");this.set("isVisible",false);this.set("withArrow",true);this.set("class",undefined);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",Fv),left:e.to("left",Fv)}},children:this.content})}show(){this.isVisible=true}hide(){this.isVisible=false}attachTo(t){this.show();const e=Uv.defaultPositions;const 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:Hv,fitInViewport:true},t);const i=Uv._getOptimalPosition(n);const o=parseInt(i.left);const r=parseInt(i.top);const s=i.name;const a=i.config||{};const{withArrow:l=true}=a;this.top=r;this.left=o;this.position=s;this.withArrow=l}pin(t){this.unpin();this._pinWhenIsVisibleCallback=()=>{if(this.isVisible){this._startPinning(t)}else{this._stopPinning()}};this._startPinning(t);this.listenTo(this,"change:isVisible",this._pinWhenIsVisibleCallback)}unpin(){if(this._pinWhenIsVisibleCallback){this._stopPinning();this.stopListening(this,"change:isVisible",this._pinWhenIsVisibleCallback);this._pinWhenIsVisibleCallback=null;this.hide()}}_startPinning(t){this.attachTo(t);const e=Wv(t.target);const n=t.limiter?Wv(t.limiter):Hv;this.listenTo(il.document,"scroll",((i,o)=>{const r=o.target;const s=e&&r.contains(e);const a=n&&r.contains(n);if(s||a||!e||!n){this.attachTo(t)}}),{useCapture:true});this.listenTo(il.window,"resize",(()=>{this.attachTo(t)}))}_stopPinning(){this.stopListening(il.document,"scroll");this.stopListening(il.window,"resize")}}Uv.arrowSideOffset=25;Uv.arrowHeightOffset=10;Uv.stickyVerticalOffset=20;Uv._getOptimalPosition=_l;Uv.defaultPositions=qv();function Wv(t){if(qa(t)){return t}if(al(t)){return t.commonAncestorContainer}if(typeof t=="function"){return Wv(t())}return null}function qv(t={}){const{sideOffset:e=Uv.arrowSideOffset,heightOffset:n=Uv.arrowHeightOffset,stickyVerticalOffset:i=Uv.stickyVerticalOffset,config:o}=t;return{northWestArrowSouthWest:(t,n)=>({top:r(t,n),left:t.left-e,name:"arrow_sw",...o&&{config:o}}),northWestArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.left-n.width*.25-e,name:"arrow_smw",...o&&{config:o}}),northWestArrowSouth:(t,e)=>({top:r(t,e),left:t.left-e.width/2,name:"arrow_s",...o&&{config:o}}),northWestArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.left-n.width*.75+e,name:"arrow_sme",...o&&{config:o}}),northWestArrowSouthEast:(t,n)=>({top:r(t,n),left:t.left-n.width+e,name:"arrow_se",...o&&{config:o}}),northArrowSouthWest:(t,n)=>({top:r(t,n),left:t.left+t.width/2-e,name:"arrow_sw",...o&&{config:o}}),northArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.left+t.width/2-n.width*.25-e,name:"arrow_smw",...o&&{config:o}}),northArrowSouth:(t,e)=>({top:r(t,e),left:t.left+t.width/2-e.width/2,name:"arrow_s",...o&&{config:o}}),northArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.left+t.width/2-n.width*.75+e,name:"arrow_sme",...o&&{config:o}}),northArrowSouthEast:(t,n)=>({top:r(t,n),left:t.left+t.width/2-n.width+e,name:"arrow_se",...o&&{config:o}}),northEastArrowSouthWest:(t,n)=>({top:r(t,n),left:t.right-e,name:"arrow_sw",...o&&{config:o}}),northEastArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.right-n.width*.25-e,name:"arrow_smw",...o&&{config:o}}),northEastArrowSouth:(t,e)=>({top:r(t,e),left:t.right-e.width/2,name:"arrow_s",...o&&{config:o}}),northEastArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.right-n.width*.75+e,name:"arrow_sme",...o&&{config:o}}),northEastArrowSouthEast:(t,n)=>({top:r(t,n),left:t.right-n.width+e,name:"arrow_se",...o&&{config:o}}),southWestArrowNorthWest:t=>({top:s(t),left:t.left-e,name:"arrow_nw",...o&&{config:o}}),southWestArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.left-n.width*.25-e,name:"arrow_nmw",...o&&{config:o}}),southWestArrowNorth:(t,e)=>({top:s(t),left:t.left-e.width/2,name:"arrow_n",...o&&{config:o}}),southWestArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.left-n.width*.75+e,name:"arrow_nme",...o&&{config:o}}),southWestArrowNorthEast:(t,n)=>({top:s(t),left:t.left-n.width+e,name:"arrow_ne",...o&&{config:o}}),southArrowNorthWest:t=>({top:s(t),left:t.left+t.width/2-e,name:"arrow_nw",...o&&{config:o}}),southArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.left+t.width/2-n.width*.25-e,name:"arrow_nmw",...o&&{config:o}}),southArrowNorth:(t,e)=>({top:s(t),left:t.left+t.width/2-e.width/2,name:"arrow_n",...o&&{config:o}}),southArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.left+t.width/2-n.width*.75+e,name:"arrow_nme",...o&&{config:o}}),southArrowNorthEast:(t,n)=>({top:s(t),left:t.left+t.width/2-n.width+e,name:"arrow_ne",...o&&{config:o}}),southEastArrowNorthWest:t=>({top:s(t),left:t.right-e,name:"arrow_nw",...o&&{config:o}}),southEastArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.right-n.width*.25-e,name:"arrow_nmw",...o&&{config:o}}),southEastArrowNorth:(t,e)=>({top:s(t),left:t.right-e.width/2,name:"arrow_n",...o&&{config:o}}),southEastArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.right-n.width*.75+e,name:"arrow_nme",...o&&{config:o}}),southEastArrowNorthEast:(t,n)=>({top:s(t),left:t.right-n.width+e,name:"arrow_ne",...o&&{config:o}}),westArrowEast:(t,e)=>({top:t.top+t.height/2-e.height/2,left:t.left-e.width-n,name:"arrow_e",...o&&{config:o}}),eastArrowWest:(t,e)=>({top:t.top+t.height/2-e.height/2,left:t.right+n,name:"arrow_w",...o&&{config:o}}),viewportStickyNorth:(t,e,n)=>{if(!t.getIntersection(n)){return null}return{top:n.top+i,left:t.left+t.width/2-e.width/2,name:"arrowless",config:{withArrow:false,...o}}}};function r(t,e){return t.top-e.height-n}function s(t){return t.bottom+n}}var Gv=n(9948);var $v={injectType:"singletonStyleTag",attributes:{"data-cke":true}};$v.insert="head";$v.singleton=true;var Kv=Sc()(Gv.Z,$v);const Yv=Gv.Z.locals||{};const Zv="ck-tooltip";class Qv extends(Ja()){constructor(t){super();Qv._editors.add(t);if(Qv._instance){return Qv._instance}Qv._instance=this;this.tooltipTextView=new Lc(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 Uv(t.locale);this.balloonPanelView.class=Zv;this.balloonPanelView.content.add(this.tooltipTextView);this._resizeObserver=null;this._currentElementWithTooltip=null;this._currentTooltipPosition=null;this._pinTooltipDebounced=If(this._pinTooltip,600);this.listenTo(il.document,"mouseenter",this._onEnterOrFocus.bind(this),{useCapture:true});this.listenTo(il.document,"mouseleave",this._onLeaveOrBlur.bind(this),{useCapture:true});this.listenTo(il.document,"focus",this._onEnterOrFocus.bind(this),{useCapture:true});this.listenTo(il.document,"blur",this._onLeaveOrBlur.bind(this),{useCapture:true});this.listenTo(il.document,"scroll",this._onScroll.bind(this),{useCapture:true});this._watchdogExcluded=true}destroy(t){const e=t.ui.view&&t.ui.view.body;Qv._editors.delete(t);this.stopListening(t.ui);if(e&&e.has(this.balloonPanelView)){e.remove(this.balloonPanelView)}if(!Qv._editors.size){this._unpinTooltip();this.balloonPanelView.destroy();this.stopListening();Qv._instance=null}}static getPositioningFunctions(t){const e=Qv.defaultBalloonPositions;return{s:[e.southArrowNorth,e.southArrowNorthEast,e.southArrowNorthWest],n:[e.northArrowSouth],e:[e.eastArrowWest],w:[e.westArrowEast],sw:[e.southArrowNorthEast],se:[e.southArrowNorthWest]}[t]}_onEnterOrFocus(t,{target:e}){const n=Jv(e);if(!n){return}if(n===this._currentElementWithTooltip){return}this._unpinTooltip();this._pinTooltipDebounced(n,Xv(n))}_onLeaveOrBlur(t,{target:e,relatedTarget:n}){if(t.name==="mouseleave"){if(!qa(e)){return}if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip){return}const t=Jv(e);const i=Jv(n);if(t&&t!==i){this._unpinTooltip()}}else{if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip){return}this._unpinTooltip()}}_onScroll(t,{target:e}){if(!this._currentElementWithTooltip){return}if(e.contains(this.balloonPanelView.element)&&e.contains(this._currentElementWithTooltip)){return}this._unpinTooltip()}_pinTooltip(t,{text:e,position:n,cssClass:i}){const o=dc(Qv._editors.values()).ui.view.body;if(!o.has(this.balloonPanelView)){o.add(this.balloonPanelView)}this.tooltipTextView.text=e;this.balloonPanelView.pin({target:t,positions:Qv.getPositioningFunctions(n)});this._resizeObserver=new ml(t,(()=>{if(!Al(t)){this._unpinTooltip()}}));this.balloonPanelView.class=[Zv,i].filter((t=>t)).join(" ");for(const t of Qv._editors){this.listenTo(t.ui,"update",this._updateTooltipPosition.bind(this),{priority:"low"})}this._currentElementWithTooltip=t;this._currentTooltipPosition=n}_unpinTooltip(){this._pinTooltipDebounced.cancel();this.balloonPanelView.unpin();for(const t of Qv._editors){this.stopListening(t.ui,"update")}this._currentElementWithTooltip=null;this._currentTooltipPosition=null;if(this._resizeObserver){this._resizeObserver.destroy()}}_updateTooltipPosition(){if(!Al(this._currentElementWithTooltip)){this._unpinTooltip();return}this.balloonPanelView.pin({target:this._currentElementWithTooltip,positions:Qv.getPositioningFunctions(this._currentTooltipPosition)})}}Qv.defaultBalloonPositions=qv({heightOffset:5,sideOffset:13});Qv._editors=new Set;Qv._instance=null;function Jv(t){if(!qa(t)){return null}return t.closest("[data-cke-tooltip-text]:not([data-cke-tooltip-disabled])")}function Xv(t){return{text:t.dataset.ckeTooltipText,position:t.dataset.ckeTooltipPosition||"s",cssClass:t.dataset.ckeTooltipClass||""}}class ty extends(mt()){constructor(t){super();this.editor=t;this.componentFactory=new Nd(t);this.focusTracker=new uc;this.tooltipManager=new Qv(t);this.set("viewportOffset",this._readViewportOffsetFromConfig());this.isReady=false;this.once("ready",(()=>{this.isReady=true}));this._editableElementsMap=new Map;this._focusableToolbarDefinitions=[];this.listenTo(t.editing.view.document,"layoutChanged",(()=>this.update()));this._initFocusTracking()}get element(){return null}update(){this.fire("update")}destroy(){this.stopListening();this.focusTracker.destroy();this.tooltipManager.destroy(this.editor);for(const t of this._editableElementsMap.values()){t.ckeditorInstance=null}this._editableElementsMap=new Map;this._focusableToolbarDefinitions=[]}setEditableElement(t,e){this._editableElementsMap.set(t,e);if(!e.ckeditorInstance){e.ckeditorInstance=this.editor}this.focusTracker.add(e);const n=()=>{if(this.editor.editing.view.getDomRoot(t)){return}this.editor.keystrokes.listenTo(e)};if(this.isReady){n()}else{this.once("ready",n)}}getEditableElement(t="main"){return this._editableElementsMap.get(t)}getEditableElementsNames(){return this._editableElementsMap.keys()}addToolbar(t,e={}){if(t.isRendered){this.focusTracker.add(t.element);this.editor.keystrokes.listenTo(t.element)}else{t.once("render",(()=>{this.focusTracker.add(t.element);this.editor.keystrokes.listenTo(t.element)}))}this._focusableToolbarDefinitions.push({toolbarView:t,options:e})}get _editableElements(){console.warn("editor-ui-deprecated-editable-elements: "+"The EditorUI#_editableElements property has been deprecated and will be removed in the near future.",{editorUI:this});return this._editableElementsMap}_readViewportOffsetFromConfig(){const t=this.editor;const e=t.config.get("ui.viewportOffset");if(e){return e}const n=t.config.get("toolbar.viewportTopOffset");if(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.");return{top:n}}return{top:0}}_initFocusTracking(){const t=this.editor;const e=t.editing.view;let n;let i;t.keystrokes.set("Alt+F10",((t,o)=>{const r=this.focusTracker.focusedElement;if(Array.from(this._editableElementsMap.values()).includes(r)&&!Array.from(e.domRoots.values()).includes(r)){n=r}const s=this._getCurrentFocusedToolbarDefinition();if(!s||!i){i=this._getFocusableCandidateToolbarDefinitions()}for(let t=0;t<i.length;t++){const t=i.shift();i.push(t);if(t!==s&&this._focusFocusableCandidateToolbar(t)){if(s&&s.options.afterBlur){s.options.afterBlur()}break}}o()}));t.keystrokes.set("Esc",((e,i)=>{const o=this._getCurrentFocusedToolbarDefinition();if(!o){return}if(n){n.focus();n=null}else{t.editing.view.focus()}if(o.options.afterBlur){o.options.afterBlur()}i()}))}_getFocusableCandidateToolbarDefinitions(){const t=[];for(const e of this._focusableToolbarDefinitions){const{toolbarView:n,options:i}=e;if(Al(n.element)||i.beforeFocus){t.push(e)}}t.sort(((t,e)=>ey(t)-ey(e)));return 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;if(n){n()}if(!Al(e.element)){return false}e.focus();return true}}function ey(t){const{toolbarView:e,options:n}=t;let i=10;if(Al(e.element)){i--}if(n.isContextual){i--}return i}var ny=n(4547);var iy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};iy.insert="head";iy.singleton=true;var oy=Sc()(ny.Z,iy);const ry=ny.Z.locals||{};class sy extends Lc{constructor(t){super(t);this.body=new ld(t)}render(){super.render();this.body.attachToDom()}destroy(){this.body.detachFromDom();return super.destroy()}}var ay=n(2751);var ly={injectType:"singletonStyleTag",attributes:{"data-cke":true}};ly.insert="head";ly.singleton=true;var cy=Sc()(ay.Z,ly);const dy=ay.Z.locals||{};class uy extends Lc{constructor(t){super(t);this.set("text",undefined);this.set("for",undefined);this.id=`ck-editor__label_${I()}`;const e=this.bindTemplate;this.setTemplate({tag:"label",attributes:{class:["ck","ck-label"],id:this.id,for:e.to("for")},children:[{text:e.to("text")}]})}}class hy extends sy{constructor(t){super(t);this.top=this.createCollection();this.main=this.createCollection();this._voiceLabelView=this._createVoiceLabel();this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-editor","ck-rounded-corners"],role:"application",dir:t.uiLanguageDirection,lang:t.uiLanguage,"aria-labelledby":this._voiceLabelView.id},children:[this._voiceLabelView,{tag:"div",attributes:{class:["ck","ck-editor__top","ck-reset_all"],role:"presentation"},children:this.top},{tag:"div",attributes:{class:["ck","ck-editor__main"],role:"presentation"},children:this.main}]})}_createVoiceLabel(){const t=this.t;const e=new uy;e.text=t("Rich Text Editor");e.extendTemplate({attributes:{class:"ck-voice-label"}});return e}}class gy extends Lc{constructor(t,e,n){super(t);this.setTemplate({tag:"div",attributes:{class:["ck","ck-content","ck-editor__editable","ck-rounded-corners"],lang:t.contentLanguage,dir:t.contentLanguageDirection}});this.name=null;this.set("isFocused",false);this._editableElement=n;this._hasExternalElement=!!this._editableElement;this._editingView=e}render(){super.render();if(this._hasExternalElement){this.template.apply(this.element=this._editableElement)}else{this._editableElement=this.element}this.on("change:isFocused",(()=>this._updateIsFocusedClasses()));this._updateIsFocusedClasses()}destroy(){if(this._hasExternalElement){this.template.revert(this._editableElement)}super.destroy()}_updateIsFocusedClasses(){const t=this._editingView;if(t.isRenderingInProgress){n(this)}else{e(this)}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)}))}function n(i){t.once("change:isRenderingInProgress",((t,o,r)=>{if(!r){e(i)}else{n(i)}}))}}}class my extends gy{constructor(t,e,n,i={}){super(t,e,n);const o=t.t;this.extendTemplate({attributes:{role:"textbox",class:"ck-editor__editable_inline"}});this._generateLabel=i.label||(()=>o("Editor editing area: %0",this.name))}render(){super.render();const t=this._editingView;t.change((e=>{const n=t.document.getRoot(this.name);e.setAttribute("aria-label",this._generateLabel(this),n)}))}}var fy=n(5523);var py={injectType:"singletonStyleTag",attributes:{"data-cke":true}};py.insert="head";py.singleton=true;var by=Sc()(fy.Z,py);const ky=fy.Z.locals||{};class wy extends Lc{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("label",e.label||"");this.set("class",e.class||null);this.children=this.createCollection();this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__header",n.to("class")]},children:this.children});const i=new Lc(t);i.setTemplate({tag:"h2",attributes:{class:["ck","ck-form__header__label"]},children:[{text:n.to("label")}]});this.children.add(i)}}var Ay=n(6985);var Cy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Cy.insert="head";Cy.singleton=true;var _y=Sc()(Ay.Z,Cy);const vy=Ay.Z.locals||{};class yy extends Lc{constructor(t){super(t);this.set("value",undefined);this.set("id",undefined);this.set("placeholder",undefined);this.set("isReadOnly",false);this.set("hasError",false);this.set("ariaDescribedById",undefined);this.focusTracker=new uc;this.bind("isFocused").to(this.focusTracker);this.set("isEmpty",true);this.set("inputMode","text");const e=this.bindTemplate;this.setTemplate({tag:"input",attributes:{class:["ck","ck-input",e.if("isFocused","ck-input_focused"),e.if("isEmpty","ck-input-text_empty"),e.if("hasError","ck-error")],id:e.to("id"),placeholder:e.to("placeholder"),readonly:e.to("isReadOnly"),inputmode:e.to("inputMode"),"aria-invalid":e.if("hasError",true),"aria-describedby":e.to("ariaDescribedById")},on:{input:e.to(((...t)=>{this.fire("input",...t);this._updateIsEmpty()})),change:e.to(this._updateIsEmpty.bind(this))}})}render(){super.render();this.focusTracker.add(this.element);this._setDomElementValue(this.value);this._updateIsEmpty();this.on("change:value",((t,e,n)=>{this._setDomElementValue(n);this._updateIsEmpty()}))}destroy(){super.destroy();this.focusTracker.destroy()}select(){this.element.select()}focus(){this.element.focus()}_updateIsEmpty(){this.isEmpty=xy(this.element)}_setDomElementValue(t){this.element.value=!t&&t!==0?"":t}}function xy(t){return!t.value}class Ey extends yy{constructor(t){super(t);this.extendTemplate({attributes:{type:"text",class:["ck-input-text"]}})}}class Dy extends yy{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")}})}}class Sy extends(null&&View){constructor(t){super(t);const e=this.bindTemplate;this.setTemplate({tag:"iframe",attributes:{class:["ck","ck-reset_all"],sandbox:"allow-same-origin allow-scripts"},on:{load:e.to("loaded")}})}render(){return new Promise((t=>{this.on("loaded",t);return super.render()}))}}var Ty=n(8111);var Iy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Iy.insert="head";Iy.singleton=true;var My=Sc()(Ty.Z,Iy);const By=Ty.Z.locals||{};class Ly extends Lc{constructor(t,e){super(t);const n=`ck-labeled-field-view-${I()}`;const i=`ck-labeled-field-view-status-${I()}`;this.fieldView=e(this,n,i);this.set("label",undefined);this.set("isEnabled",true);this.set("isEmpty",true);this.set("isFocused",false);this.set("errorText",null);this.set("infoText",null);this.set("class",undefined);this.set("placeholder",undefined);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 uy(this.locale);e.for=t;e.bind("text").to(this,"label");return e}_createStatusView(t){const e=new Lc(this.locale);const n=this.bindTemplate;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")}]});return e}focus(){this.fieldView.focus()}}function Ny(t,e,n){const i=new Ey(t.locale);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);return i}function zy(t,e,n){const i=new Dy(t.locale);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);return i}function Py(t,e,n){const i=yv(t.locale);i.set({id:e,ariaDescribedById:n});i.bind("isEnabled").to(t);return i}class Oy extends lu{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 Ry extends(mt()){constructor(t,e){super();if(e){af(this,e)}if(t){this.set(t)}}}const Vy='$${Delta.CKEditor.Icon[36]}$$';const jy='$${Delta.CKEditor.Icon[37]}$$';var Fy=n(1757);var Hy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Hy.insert="head";Hy.singleton=true;var Uy=Sc()(Fy.Z,Hy);const Wy=Fy.Z.locals||{};var qy=n(3553);var Gy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Gy.insert="head";Gy.singleton=true;var $y=Sc()(qy.Z,Gy);const Ky=qy.Z.locals||{};const Yy=pl("px");class Zy extends eu{static get pluginName(){return"ContextualBalloon"}constructor(t){super(t);this._view=null;this._rotatorView=null;this._fakePanelsView=null;this.positionLimiter=()=>{const t=this.editor.editing.view;const e=t.document;const n=e.selection.editableElement;if(n){return t.domConverter.mapViewToDom(n.root)}return null};this.set("visibleView",null);this._viewToStack=new Map;this._idToStack=new Map;this.set("_numberOfStacks",0);this.set("_singleViewMode",false);this._rotatorView=null;this._fakePanelsView=null}destroy(){super.destroy();if(this._view){this._view.destroy()}if(this._rotatorView){this._rotatorView.destroy()}if(this._fakePanelsView){this._fakePanelsView.destroy()}}get view(){if(!this._view){this._createPanelView()}return this._view}hasView(t){return Array.from(this._viewToStack.keys()).includes(t)}add(t){if(!this._view){this._createPanelView()}if(this.hasView(t.view)){throw new z("contextualballoon-add-view-exist",[this,t])}const e=t.stackId||"main";if(!this._idToStack.has(e)){this._idToStack.set(e,new Map([[t.view,t]]));this._viewToStack.set(t.view,this._idToStack.get(e));this._numberOfStacks=this._idToStack.size;if(!this._visibleStack||t.singleViewMode){this.showStack(e)}return}const n=this._idToStack.get(e);if(t.singleViewMode){this.showStack(e)}n.set(t.view,t);this._viewToStack.set(t.view,n);if(n===this._visibleStack){this._showView(t)}}remove(t){if(!this.hasView(t)){throw new z("contextualballoon-remove-view-not-exist",[this,t])}const e=this._viewToStack.get(t);if(this._singleViewMode&&this.visibleView===t){this._singleViewMode=false}if(this.visibleView===t){if(e.size===1){if(this._idToStack.size>1){this._showNextStack()}else{this.view.hide();this.visibleView=null;this._rotatorView.hideView()}}else{this._showView(Array.from(e.values())[e.size-2])}}if(e.size===1){this._idToStack.delete(this._getStackId(e));this._numberOfStacks=this._idToStack.size}else{e.delete(t)}this._viewToStack.delete(t)}updatePosition(t){if(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 z("contextualballoon-showstack-stack-not-exist",this)}if(this._visibleStack===e){return}this._showView(Array.from(e.values()).pop())}_createPanelView(){this._view=new Uv(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){const e=Array.from(this._idToStack.entries()).find((e=>e[1]===t));return e[0]}_showNextStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)+1;if(!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;if(!t[e]){e=t.length-1}this.showStack(this._getStackId(t[e]))}_createRotatorView(){const t=new Qy(this.editor.locale);const e=this.editor.locale.t;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",(()=>{if(t.focusTracker.isFocused){this.editor.editing.view.focus()}this._showNextStack()}));t.buttonPrevView.on("execute",(()=>{if(t.focusTracker.isFocused){this.editor.editing.view.focus()}this._showPrevStack()}));return t}_createFakePanelsView(){const t=new Jy(this.editor.locale,this.view);t.bind("numberOfPanels").to(this,"_numberOfStacks",this,"_singleViewMode",((t,e)=>{const n=!e&&t>=2;return n?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);return t}_showView({view:t,balloonClassName:e="",withArrow:n=true,singleViewMode:i=false}){this.view.class=e;this.view.withArrow=n;this._rotatorView.showView(t);this.visibleView=t;this.view.pin(this._getBalloonPosition());this._fakePanelsView.updatePosition();if(i){this._singleViewMode=true}}_getBalloonPosition(){let t=Array.from(this._visibleStack.values()).pop().position;if(t){if(!t.limiter){t=Object.assign({},t,{limiter:this.positionLimiter})}t=Object.assign({},t,{viewportOffsetConfig:this.editor.ui.viewportOffset})}return t}}class Qy extends Lc{constructor(t){super(t);const e=t.t;const n=this.bindTemplate;this.set("isNavigationVisible",true);this.focusTracker=new uc;this.buttonPrevView=this._createButtonView(e("Previous"),Vy);this.buttonNextView=this._createButtonView(e("Next"),jy);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 kd(this.locale);n.set({label:t,icon:e,tooltip:true});return n}}class Jy extends Lc{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",Yy),left:n.to("left",Yy),width:n.to("width",Yy),height:n.to("height",Yy)}},children:this.content});this.on("change:numberOfPanels",((t,e,n,i)=>{if(n>i){this._addPanels(n-i)}else{this._removePanels(i-n)}this.updatePosition()}))}_addPanels(t){while(t--){const t=new Lc;t.setTemplate({tag:"div"});this.content.add(t);this.registerChild(t)}}_removePanels(t){while(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;const{width:n,height:i}=new dl(this._balloonPanelView.element);Object.assign(this,{top:t,left:e,width:n,height:i})}}}var Xy=n(3609);var tx={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tx.insert="head";tx.singleton=true;var ex=Sc()(Xy.Z,tx);const nx=Xy.Z.locals||{};const ix=pl("px");class ox extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.set("isActive",false);this.set("isSticky",false);this.set("limiterElement",null);this.set("limiterBottomOffset",50);this.set("viewportTopOffset",0);this.set("_marginLeft",null);this.set("_isStickyToTheLimiter",false);this.set("_hasViewportTopOffset",false);this.content=this.createCollection();this._contentPanelPlaceholder=new zc({tag:"div",attributes:{class:["ck","ck-sticky-panel__placeholder"],style:{display:e.to("isSticky",(t=>t?"block":"none")),height:e.to("isSticky",(t=>t?ix(this._panelRect.height):null))}}}).render();this._contentPanel=new zc({tag:"div",attributes:{class:["ck","ck-sticky-panel__content",e.if("isSticky","ck-sticky-panel__content_sticky"),e.if("_isStickyToTheLimiter","ck-sticky-panel__content_sticky_bottom-limit")],style:{width:e.to("isSticky",(t=>t?ix(this._contentPanelPlaceholder.getBoundingClientRect().width):null)),top:e.to("_hasViewportTopOffset",(t=>t?ix(this.viewportTopOffset):null)),bottom:e.to("_isStickyToTheLimiter",(t=>t?ix(this.limiterBottomOffset):null)),marginLeft:e.to("_marginLeft")}},children:this.content}).render();this.setTemplate({tag:"div",attributes:{class:["ck","ck-sticky-panel"]},children:[this._contentPanelPlaceholder,this._contentPanel]})}render(){super.render();this._checkIfShouldBeSticky();this.listenTo(il.window,"scroll",(()=>{this._checkIfShouldBeSticky()}));this.listenTo(this,"change:isActive",(()=>{this._checkIfShouldBeSticky()}))}_checkIfShouldBeSticky(){const t=this._panelRect=this._contentPanel.getBoundingClientRect();let e;if(!this.limiterElement){this.isSticky=false}else{e=this._limiterRect=this.limiterElement.getBoundingClientRect();this.isSticky=this.isActive&&e.top<this.viewportTopOffset&&this._panelRect.height+this.limiterBottomOffset<e.height}if(this.isSticky){this._isStickyToTheLimiter=e.bottom<t.height+this.limiterBottomOffset+this.viewportTopOffset;this._hasViewportTopOffset=!this._isStickyToTheLimiter&&!!this.viewportTopOffset;this._marginLeft=this._isStickyToTheLimiter?null:ix(-il.window.scrollX)}else{this._isStickyToTheLimiter=false;this._hasViewportTopOffset=false;this._marginLeft=null}}}const rx=pl("px");class sx extends(null&&Plugin){static get pluginName(){return"BalloonToolbar"}static get requires(){return[ContextualBalloon]}constructor(t){super(t);this._balloonConfig=normalizeToolbarConfig(t.config.get("balloonToolbar"));this.toolbarView=this._createToolbarView();this.focusTracker=new FocusTracker;t.ui.once("ready",(()=>{this.focusTracker.add(t.ui.getEditableElement());this.focusTracker.add(this.toolbarView.element)}));t.ui.addToolbar(this.toolbarView,{beforeFocus:()=>this.show(true),afterBlur:()=>this.hide(),isContextual:true});this._resizeObserver=null;this._balloon=t.plugins.get(ContextualBalloon);this._fireSelectionChangeDebounced=debounce((()=>this.fire("_selectionChangeDebounced")),200);this.decorate("show")}init(){const t=this.editor;const e=t.model.document.selection;this.listenTo(this.focusTracker,"change:isFocused",((t,e,n)=>{const i=this._balloon.visibleView===this.toolbarView;if(!n&&i){this.hide()}else if(n){this.show()}}));this.listenTo(e,"change:range",((t,n)=>{if(n.directChange||e.isCollapsed){this.hide()}this._fireSelectionChangeDebounced()}));this.listenTo(this,"_selectionChangeDebounced",(()=>{if(this.editor.editing.view.document.isFocused){this.show()}}));if(!this._balloonConfig.shouldNotGroupWhenFull){this.listenTo(t,"ready",(()=>{const e=t.ui.view.editable.element;this._resizeObserver=new ResizeObserver(e,(t=>{this.toolbarView.maxWidth=rx(t.contentRect.width*.9)}))}))}this.listenTo(this.toolbarView,"groupedItemsUpdate",(()=>{this._updatePosition()}))}afterInit(){const t=this.editor.ui.componentFactory;this.toolbarView.fillFromConfig(this._balloonConfig,t)}_createToolbarView(){const t=this.editor.locale.t;const e=!this._balloonConfig.shouldNotGroupWhenFull;const n=new ToolbarView(this.editor.locale,{shouldGroupWhenFull:e,isFloating:true});n.ariaLabel=t("Editor contextual toolbar");n.render();return n}show(t=false){const e=this.editor;const n=e.model.document.selection;const i=e.model.schema;if(this._balloon.hasView(this.toolbarView)){return}if(n.isCollapsed&&!t){return}if(ax(n,i)){return}if(Array.from(this.toolbarView.items).every((t=>t.isEnabled!==undefined&&!t.isEnabled))){return}this.listenTo(this.editor.ui,"update",(()=>{this._updatePosition()}));this._balloon.add({view:this.toolbarView,position:this._getBalloonPositionData(),balloonClassName:"ck-toolbar-container"})}hide(){if(this._balloon.hasView(this.toolbarView)){this.stopListening(this.editor.ui,"update");this._balloon.remove(this.toolbarView)}}_getBalloonPositionData(){const t=this.editor;const e=t.editing.view;const n=e.document;const i=n.selection;const o=n.selection.isBackward;return{target:()=>{const t=o?i.getFirstRange():i.getLastRange();const n=Rect.getDomRangeRects(e.domConverter.viewRangeToDom(t));if(o){return n[0]}else{if(n.length>1&&n[n.length-1].width===0){n.pop()}return n[n.length-1]}},positions:this._getBalloonPositions(o)}}_updatePosition(){this._balloon.updatePosition(this._getBalloonPositionData())}destroy(){super.destroy();this.stopListening();this._fireSelectionChangeDebounced.cancel();this.toolbarView.destroy();this.focusTracker.destroy();if(this._resizeObserver){this._resizeObserver.destroy()}}_getBalloonPositions(t){const e=env.isSafari&&env.isiOS;const n=e?generatePositions({heightOffset:Math.max(BalloonPanelView.arrowHeightOffset,Math.round(20/global.window.visualViewport.scale))}):BalloonPanelView.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]}}function ax(t,e){if(t.rangeCount===1){return false}return[...t.getRanges()].every((t=>{const n=t.getContainedElement();return n&&e.isSelectable(n)}))}var lx=n(6706);var cx={injectType:"singletonStyleTag",attributes:{"data-cke":true}};cx.insert="head";cx.singleton=true;var dx=Sc()(lx.Z,cx);const ux=lx.Z.locals||{};const hx=pl("px");class gx extends(null&&ButtonView){constructor(t){super(t);const e=this.bindTemplate;this.isVisible=false;this.isToggleable=true;this.set("top",0);this.set("left",0);this.extendTemplate({attributes:{class:"ck-block-toolbar-button",style:{top:e.to("top",(t=>hx(t))),left:e.to("left",(t=>hx(t)))}}})}}const mx=pl("px");const{pilcrow:fx}=J_;class px extends(null&&Plugin){static get pluginName(){return"BlockToolbar"}constructor(t){super(t);this._blockToolbarConfig=normalizeToolbarConfig(this.editor.config.get("blockToolbar"));this.toolbarView=this._createToolbarView();this.panelView=this._createPanelView();this.buttonView=this._createButtonView();this._resizeObserver=null;clickOutsideHandler({emitter:this.panelView,contextElements:[this.panelView.element,this.buttonView.element],activator:()=>this.panelView.isVisible,callback:()=>this._hidePanel()})}init(){const t=this.editor;this.listenTo(t.model.document.selection,"change:range",((t,e)=>{if(e.directChange){this._hidePanel()}}));this.listenTo(t.ui,"update",(()=>this._updateButton()));this.listenTo(t,"change:isReadOnly",(()=>this._updateButton()),{priority:"low"});this.listenTo(t.ui.focusTracker,"change:isFocused",(()=>this._updateButton()));this.listenTo(this.buttonView,"change:isVisible",((t,e,n)=>{if(n){this.buttonView.listenTo(window,"resize",(()=>this._updateButton()))}else{this.buttonView.stopListening(window,"resize");this._hidePanel()}}));t.ui.addToolbar(this.toolbarView,{beforeFocus:()=>this._showPanel(),afterBlur:()=>this._hidePanel()})}afterInit(){const t=this.editor.ui.componentFactory;const e=this._blockToolbarConfig;this.toolbarView.fillFromConfig(e,t);for(const t of this.toolbarView.items){t.on("execute",(()=>this._hidePanel(true)),{priority:"high"})}if(!e.shouldNotGroupWhenFull){this.listenTo(this.editor,"ready",(()=>{const t=this.editor.ui.view.editable.element;this._resizeObserver=new ResizeObserver(t,(()=>{this.toolbarView.maxWidth=this._getToolbarMaxWidth()}))}))}}destroy(){super.destroy();this.panelView.destroy();this.buttonView.destroy();this.toolbarView.destroy();if(this._resizeObserver){this._resizeObserver.destroy()}}_createToolbarView(){const t=this.editor.locale.t;const e=!this._blockToolbarConfig.shouldNotGroupWhenFull;const n=new ToolbarView(this.editor.locale,{shouldGroupWhenFull:e,isFloating:true});n.ariaLabel=t("Editor block content toolbar");n.focusTracker.on("change:isFocused",((t,e,n)=>{if(!n){this._hidePanel()}}));return n}_createPanelView(){const t=this.editor;const e=new BalloonPanelView(t.locale);e.content.add(this.toolbarView);e.class="ck-toolbar-container";t.ui.view.body.add(e);t.ui.focusTracker.add(e.element);this.toolbarView.keystrokes.set("Esc",((t,e)=>{this._hidePanel(true);e()}));return e}_createButtonView(){const t=this.editor;const e=t.t;const n=new BlockButtonView(t.locale);const i=n.bindTemplate;n.set({label:e("Edit block"),icon:fx,withText:false});n.extendTemplate({on:{mousedown:i.to((t=>{if(env.isSafari&&this.panelView.isVisible){this.toolbarView.focus()}t.preventDefault()}))}});n.bind("isOn").to(this.panelView,"isVisible");n.bind("tooltip").to(this.panelView,"isVisible",(t=>!t));this.listenTo(n,"execute",(()=>{if(!this.panelView.isVisible){this._showPanel()}else{this._hidePanel(true)}}));t.ui.view.body.add(n);t.ui.focusTracker.add(n.element);return n}_updateButton(){const t=this.editor;const e=t.model;const n=t.editing.view;if(!t.ui.focusTracker.isFocused){this._hideButton();return}if(t.isReadOnly){this._hideButton();return}const i=Array.from(e.document.selection.getSelectedBlocks())[0];if(!i||Array.from(this.toolbarView.items).every((t=>!t.isEnabled))){this._hideButton();return}const o=n.domConverter.mapViewToDom(t.editing.mapper.toViewElement(i));this.buttonView.isVisible=true;this._attachButtonToElement(o);if(this.panelView.isVisible){this._showPanel()}}_hideButton(){this.buttonView.isVisible=false}_showPanel(){if(!this.buttonView.isVisible){return}const t=this.panelView.isVisible;this.panelView.show();this.toolbarView.maxWidth=this._getToolbarMaxWidth();this.panelView.pin({target:this.buttonView.element,limiter:this.editor.ui.getEditableElement()});if(!t){this.toolbarView.items.get(0).focus()}}_hidePanel(t){this.panelView.isVisible=false;if(t){this.editor.editing.view.focus()}}_attachButtonToElement(t){const e=window.getComputedStyle(t);const n=new Rect(this.editor.ui.getEditableElement());const i=parseInt(e.paddingTop,10);const o=parseInt(e.lineHeight,10)||parseInt(e.fontSize,10)*1.2;const r=getOptimalPosition({element:this.buttonView.element,target:t,positions:[(t,e)=>{let r;if(this.editor.locale.uiLanguageDirection==="ltr"){r=n.left-e.width}else{r=n.right}return{top:t.top+i+(o-e.height)/2,left:r}}]});this.buttonView.top=r.top;this.buttonView.left=r.left}_getToolbarMaxWidth(){const t=this.editor.ui.view.editable.element;const e=new Rect(t);const n=new Rect(this.buttonView.element);const i=this.editor.locale.uiLanguageDirection==="rtl";const o=i?n.left-e.right+n.width:e.left-n.left;return mx(e.width+o)}}class bx extends ty{constructor(t,e){super(t);this.view=e;this._toolbarConfig=tu(t.config.get("toolbar"));this._elementReplacer=new xt}get element(){return this.view.element}init(t){const e=this.editor;const n=this.view;const i=e.editing.view;const o=n.editable;const r=i.document.getRoot();o.name=r.rootName;n.render();const s=o.element;this.setEditableElement(o.name,s);n.editable.bind("isFocused").to(this.focusTracker);i.attachDomRoot(s);if(t){this._elementReplacer.replace(t,this.element)}this._initPlaceholder();this._initToolbar();this.fire("ready")}destroy(){super.destroy();const t=this.view;const e=this.editor.editing.view;this._elementReplacer.restore();e.detachDomRoot(t.editable.name);t.destroy()}_initToolbar(){const t=this.view;t.stickyPanel.bind("isActive").to(this.focusTracker,"isFocused");t.stickyPanel.limiterElement=t.element;t.stickyPanel.bind("viewportTopOffset").to(this,"viewportOffset",(({top:t})=>t||0));t.toolbar.fillFromConfig(this._toolbarConfig,this.componentFactory);this.addToolbar(t.toolbar)}_initPlaceholder(){const t=this.editor;const e=t.editing.view;const n=e.document.getRoot();const i=t.sourceElement;const o=t.config.get("placeholder")||i&&i.tagName.toLowerCase()==="textarea"&&i.getAttribute("placeholder");if(o){mu({view:e,element:n,text:o,isDirectHost:false,keepOnFocus:true})}}}var kx=n(3638);var wx={injectType:"singletonStyleTag",attributes:{"data-cke":true}};wx.insert="head";wx.singleton=true;var Ax=Sc()(kx.Z,wx);const Cx=kx.Z.locals||{};class _x extends hy{constructor(t,e,n={}){super(t);this.stickyPanel=new ox(t);this.toolbar=new rv(t,{shouldGroupWhenFull:n.shouldToolbarGroupWhenFull});this.editable=new my(t,e)}render(){super.render();this.stickyPanel.content.add(this.toolbar);this.top.add(this.stickyPanel);this.main.add(this.editable)}}class vx extends(m_(f_(u_))){constructor(t,e={}){if(!xx(t)&&e.initialData!==undefined){throw new z("editor-create-initial-data",null)}super(e);if(this.config.get("initialData")===undefined){this.config.set("initialData",yx(t))}if(xx(t)){this.sourceElement=t}this.model.document.createRoot();const n=!this.config.get("toolbar.shouldNotGroupWhenFull");const i=new _x(this.locale,this.editing.view,{shouldToolbarGroupWhenFull:n});this.ui=new bx(this,i);h_(this)}destroy(){if(this.sourceElement){this.updateSourceElement()}this.ui.destroy();return super.destroy()}static create(t,e={}){return new Promise((n=>{const i=new this(t,e);n(i.initPlugins().then((()=>i.ui.init(xx(t)?t:null))).then((()=>i.data.init(i.config.get("initialData")))).then((()=>i.fire("ready"))).then((()=>i)))}))}}function yx(t){return xx(t)?rl(t):t}function xx(t){return qa(t)}const Ex=["left","right","center","justify"];function Dx(t){return Ex.includes(t)}function Sx(t,e){if(e.contentLanguageDirection=="rtl"){return t==="right"}else{return t==="left"}}function Tx(t){const e=t.map((t=>{let e;if(typeof t=="string"){e={name:t}}else{e=t}return e})).filter((t=>{const e=Ex.includes(t.name);if(!e){P("alignment-config-name-not-recognized",{option:t})}return e}));const n=e.filter((t=>Boolean(t.className))).length;if(n&&n<e.length){throw new z("alignment-config-classnames-are-missing",{configuredOptions:t})}e.forEach(((e,n,i)=>{const o=i.slice(n+1);const r=o.some((t=>t.name==e.name));if(r){throw new z("alignment-config-name-already-defined",{option:e,configuredOptions:t})}if(e.className){const n=o.some((t=>t.className==e.className));if(n){throw new z("alignment-config-classname-already-defined",{option:e,configuredOptions:t})}}}));return e}const Ix="alignment";class Mx extends iu{refresh(){const t=this.editor;const e=t.locale;const n=dc(this.editor.model.document.selection.getSelectedBlocks());this.isEnabled=Boolean(n)&&this._canBeAligned(n);if(this.isEnabled&&n.hasAttribute("alignment")){this.value=n.getAttribute("alignment")}else{this.value=e.contentLanguageDirection==="rtl"?"right":"left"}}execute(t={}){const e=this.editor;const n=e.locale;const i=e.model;const o=i.document;const r=t.value;i.change((t=>{const e=Array.from(o.selection.getSelectedBlocks()).filter((t=>this._canBeAligned(t)));const i=e[0].getAttribute("alignment");const s=Sx(r,n)||i===r||!r;if(s){Bx(e,t)}else{Lx(e,t,r)}}))}_canBeAligned(t){return this.editor.model.schema.checkAttribute(t,Ix)}}function Bx(t,e){for(const n of t){e.removeAttribute(Ix,n)}}function Lx(t,e,n){for(const i of t){e.setAttribute(Ix,n,i)}}class Nx extends eu{static get pluginName(){return"AlignmentEditing"}constructor(t){super(t);t.config.define("alignment",{options:Ex.map((t=>({name:t})))})}init(){const t=this.editor;const e=t.locale;const n=t.model.schema;const i=Tx(t.config.get("alignment.options"));const o=i.filter((t=>Dx(t.name)&&!Sx(t.name,e)));const r=o.some((t=>!!t.className));n.extend("$block",{allowAttributes:"alignment"});t.model.schema.setAttributeProperties("alignment",{isFormatting:true});if(r){t.conversion.attributeToAttribute(Rx(o))}else{t.conversion.for("downcast").attributeToAttribute(zx(o))}const s=Px(o);for(const e of s){t.conversion.for("upcast").attributeToAttribute(e)}const a=Ox(o);for(const e of a){t.conversion.for("upcast").attributeToAttribute(e)}t.commands.add("alignment",new Mx(t))}}function zx(t){const e={};for(const{name:n}of t){e[n]={key:"style",value:{"text-align":n}}}const n={model:{key:"alignment",values:t.map((t=>t.name))},view:e};return n}function Px(t){const e=[];for(const{name:n}of t){e.push({view:{key:"style",value:{"text-align":n}},model:{key:"alignment",value:n}})}return e}function Ox(t){const e=[];for(const{name:n}of t){e.push({view:{key:"align",value:n},model:{key:"alignment",value:n}})}return e}function Rx(t){const e={};for(const n of t){e[n.name]={key:"class",value:n.className}}const n={model:{key:"alignment",values:t.map((t=>t.name))},view:e};return n}const Vx=new Map([["left",J_.alignLeft],["right",J_.alignRight],["center",J_.alignCenter],["justify",J_.alignJustify]]);class jx extends eu{get localizedOptionTitles(){const t=this.editor.t;return{left:t("Align left"),right:t("Align right"),center:t("Align center"),justify:t("Justify")}}static get pluginName(){return"AlignmentUI"}init(){const t=this.editor;const e=t.ui.componentFactory;const n=t.t;const i=Tx(t.config.get("alignment.options"));i.map((t=>t.name)).filter(Dx).forEach((t=>this._addButton(t)));e.add("alignment",(o=>{const r=yv(o);xv(r,(()=>i.map((t=>e.create(`alignment:${t.name}`)))),{enableActiveItemFocusOnDropdownOpen:true,isVertical:true,ariaLabel:n("Text alignment toolbar")});r.buttonView.set({label:n("Text alignment"),tooltip:true});r.extendTemplate({attributes:{class:"ck-alignment-dropdown"}});const s=o.contentLanguageDirection==="rtl"?Vx.get("right"):Vx.get("left");const a=t.commands.get("alignment");r.buttonView.bind("icon").to(a,"value",(t=>Vx.get(t)||s));r.bind("isEnabled").to(a,"isEnabled");this.listenTo(r,"execute",(()=>{t.editing.view.focus()}));return r}))}_addButton(t){const e=this.editor;e.ui.componentFactory.add(`alignment:${t}`,(n=>{const i=e.commands.get("alignment");const o=new kd(n);o.set({label:this.localizedOptionTitles[t],icon:Vx.get(t),tooltip:true,isToggleable:true});o.bind("isEnabled").to(i);o.bind("isOn").to(i,"value",(e=>e===t));this.listenTo(o,"execute",(()=>{e.execute("alignment",{value:t});e.editing.view.focus()}));return o}))}}class Fx extends eu{static get requires(){return[Nx,jx]}static get pluginName(){return"Alignment"}}class Hx{constructor(t,e=20){this._batch=null;this.model=t;this._size=0;this.limit=e;this._isLocked=false;this._changeCallback=(t,e)=>{if(e.isLocal&&e.isUndoable&&e!==this._batch){this._reset(true)}};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(){if(!this._batch){this._batch=this.model.createBatch({isTyping:true})}return this._batch}get size(){return this._size}input(t){this._size+=t;if(this._size>=this.limit){this._reset(true)}}get isLocked(){return this._isLocked}lock(){this._isLocked=true}unlock(){this._isLocked=false}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=false){if(!this.isLocked||t){this._batch=null;this._size=0}}}class Ux extends iu{constructor(t,e){super(t);this._buffer=new Hx(t.model,e)}get buffer(){return this._buffer}destroy(){super.destroy();this._buffer.destroy()}execute(t={}){const e=this.editor.model;const n=e.document;const i=t.text||"";const o=i.length;let r=n.selection;if(t.selection){r=t.selection}else if(t.range){r=e.createSelection(t.range)}const s=t.resultRange;e.enqueueChange(this._buffer.batch,(t=>{this._buffer.lock();e.deleteContent(r);if(i){e.insertContent(t.createText(i,n.selection.getAttributes()),r)}if(s){t.setSelection(s)}else if(!r.is("documentSelection")){t.setSelection(r)}this._buffer.unlock();this._buffer.input(o)}))}}const Wx=["insertText","insertReplacementText"];class qx extends rf{constructor(t){super(t);if(c.isAndroid){Wx.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(!Wx.includes(s)){return}const l=new S(e,"insertText");e.fire(l,new lf(t,a,{text:o,selection:t.createSelection(r)}));if(l.stop.called){n.stop()}}));e.on("compositionend",((n,{data:i,domEvent:o})=>{if(!this.isEnabled||c.isAndroid){return}if(!i){return}e.fire("insertText",new lf(t,o,{text:i,selection:e.selection}))}),{priority:"lowest"})}observe(){}}class Gx extends eu{static get pluginName(){return"Input"}init(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=e.document.selection;n.addObserver(qx);const o=new Ux(t,t.config.get("typing.undoStep")||20);t.commands.add("insertText",o);t.commands.add("input",o);this.listenTo(n.document,"insertText",((i,o)=>{if(!n.document.isComposing){o.preventDefault()}const{text:r,selection:s,resultRange:a}=o;const l=Array.from(s.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));let d=r;if(c.isAndroid){const t=Array.from(l[0].getItems()).reduce(((t,e)=>t+(e.is("$textProxy")?e.data:"")),"");if(t){if(t.length<=d.length){if(d.startsWith(t)){d=d.substring(t.length);l[0].start=l[0].start.getShiftedBy(t.length)}}else{if(t.startsWith(d)){l[0].start=l[0].start.getShiftedBy(d.length);d=""}}}}const u={text:d,selection:e.createSelection(l)};if(a){u.resultRange=t.editing.mapper.toModelRange(a)}t.execute("insertText",u)}));if(c.isAndroid){this.listenTo(n.document,"keydown",((t,r)=>{if(i.isCollapsed||r.keyCode!=229||!n.document.isComposing){return}$x(e,o)}))}else{this.listenTo(n.document,"compositionstart",(()=>{if(i.isCollapsed){return}$x(e,o)}))}}}function $x(t,e){if(!e.isEnabled){return}const n=e.buffer;n.lock();t.enqueueChange(n.batch,(()=>{t.deleteContent(t.document.selection)}));n.unlock()}class Kx extends iu{constructor(t,e){super(t);this.direction=e;this._buffer=new Hx(t.model,t.config.get("typing.undoStep"))}get buffer(){return this._buffer}execute(t={}){const e=this.editor.model;const n=e.document;e.enqueueChange(this._buffer.batch,(i=>{this._buffer.lock();const o=i.createSelection(t.selection||n.selection);const r=t.sequence||1;const s=o.isCollapsed;if(o.isCollapsed){e.modifySelection(o,{direction:this.direction,unit:t.unit,treatEmojiAsSingleUnit:true})}if(this._shouldEntireContentBeReplacedWithParagraph(r)){this._replaceEntireContentWithParagraph(i);return}if(this._shouldReplaceFirstBlockWithParagraph(o,r)){this.editor.execute("paragraph",{selection:o});return}if(o.isCollapsed){return}let a=0;o.getFirstRange().getMinimalFlatRanges().forEach((t=>{a+=Et(t.getWalker({singleCharacters:true,ignoreElementEnd:true,shallow:true}))}));e.deleteContent(o,{doNotResetEntireContent:s,direction:this.direction});this._buffer.input(a);i.setSelection(o);this._buffer.unlock()}))}_shouldEntireContentBeReplacedWithParagraph(t){if(t>1){return false}const e=this.editor.model;const n=e.document;const i=n.selection;const o=e.schema.getLimitElement(i);const r=i.isCollapsed&&i.containsEntireContent(o);if(!r){return false}if(!e.schema.checkChild(o,"paragraph")){return false}const s=o.getChild(0);if(s&&s.is("element","paragraph")){return false}return true}_replaceEntireContentWithParagraph(t){const e=this.editor.model;const n=e.document;const i=n.selection;const o=e.schema.getLimitElement(i);const r=t.createElement("paragraph");t.remove(t.createRangeIn(o));t.insert(r,o);t.setSelection(r,0)}_shouldReplaceFirstBlockWithParagraph(t,e){const n=this.editor.model;if(e>1||this.direction!="backward"){return false}if(!t.isCollapsed){return false}const i=t.getFirstPosition();const o=n.schema.getLimitElement(i);const r=o.getChild(0);if(i.parent!=r){return false}if(!t.containsEntireContent(r)){return false}if(!n.schema.checkChild(o,"paragraph")){return false}if(r.name=="paragraph"){return false}return true}}const Yx="character";const Zx="word";const Qx="codePoint";const Jx="selection";const Xx="backward";const tE="forward";const eE={deleteContent:{unit:Jx,direction:Xx},deleteContentBackward:{unit:Qx,direction:Xx},deleteWordBackward:{unit:Zx,direction:Xx},deleteHardLineBackward:{unit:Jx,direction:Xx},deleteSoftLineBackward:{unit:Jx,direction:Xx},deleteContentForward:{unit:Yx,direction:tE},deleteWordForward:{unit:Zx,direction:tE},deleteHardLineForward:{unit:Jx,direction:tE},deleteSoftLineForward:{unit:Jx,direction:tE}};class nE extends rf{constructor(t){super(t);const e=t.document;let n=0;e.on("keydown",(()=>{n++}));e.on("keyup",(()=>{n=0}));e.on("beforeinput",((i,o)=>{if(!this.isEnabled){return}const{targetRanges:r,domEvent:s,inputType:a}=o;const l=eE[a];if(!l){return}const d={direction:l.direction,unit:l.unit,sequence:n};if(d.unit==Jx){d.selectionToRemove=t.createSelection(r[0])}if(c.isAndroid&&a==="deleteContentBackward"){d.sequence=1;if(r.length==1&&(r[0].start.parent!=r[0].end.parent||r[0].start.offset+1!=r[0].end.offset)){d.unit=Jx;d.selectionToRemove=t.createSelection(r)}}const u=new Hg(e,"delete",r[0]);e.fire(u,new lf(t,s,d));if(u.stop.called){i.stop()}}));if(c.isBlink){iE(this)}}observe(){}}function iE(t){const e=t.view;const n=e.document;let i=null;let o=false;n.on("keydown",((t,{keyCode:e})=>{i=e;o=false}));n.on("keyup",((a,{keyCode:l,domEvent:c})=>{const d=n.selection;const u=t.isEnabled&&l==i&&r(l)&&!d.isCollapsed&&!o;i=null;if(u){const t=d.getFirstRange();const i=new Hg(n,"delete",t);const o={unit:Jx,direction:s(l),selectionToRemove:d};n.fire(i,new lf(e,c,o))}}));n.on("beforeinput",((t,{inputType:e})=>{const n=eE[e];const a=r(i)&&n&&n.direction==s(i);if(a){o=true}}),{priority:"high"});n.on("beforeinput",((t,{inputType:e,data:n})=>{const o=i==Hl["delete"]&&e=="insertText"&&n=="";if(o){t.stop()}}),{priority:"high"});function r(t){return t==Hl.backspace||t==Hl["delete"]}function s(t){return t==Hl.backspace?Xx:tE}}class oE extends eu{static get pluginName(){return"Delete"}init(){const t=this.editor;const e=t.editing.view;const n=e.document;const i=t.model.document;e.addObserver(nE);this._undoOnBackspace=false;const o=new Kx(t,"forward");t.commands.add("deleteForward",o);t.commands.add("forwardDelete",o);t.commands.add("delete",new Kx(t,"backward"));this.listenTo(n,"delete",((i,o)=>{if(!n.isComposing){o.preventDefault()}const{direction:r,sequence:s,selectionToRemove:a,unit:l}=o;const c=r==="forward"?"deleteForward":"delete";const d={sequence:s};if(l=="selection"){const e=Array.from(a.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));d.selection=t.model.createSelection(e)}else{d.unit=l}t.execute(c,d);e.scrollToTheSelection()}),{priority:"low"});if(this.editor.plugins.has("UndoEditing")){this.listenTo(n,"delete",((e,n)=>{if(this._undoOnBackspace&&n.direction=="backward"&&n.sequence==1&&n.unit=="codePoint"){this._undoOnBackspace=false;t.execute("undo");n.preventDefault();e.stop()}}),{context:"$capture"});this.listenTo(i,"change",(()=>{this._undoOnBackspace=false}))}}requestUndoOnBackspace(){if(this.editor.plugins.has("UndoEditing")){this._undoOnBackspace=true}}}class rE extends eu{static get requires(){return[Gx,oE]}static get pluginName(){return"Typing"}}function sE(t,e){let n=t.start;const i=Array.from(t.getItems()).reduce(((t,i)=>{if(!(i.is("$text")||i.is("$textProxy"))){n=e.createPositionAfter(i);return""}return t+i.data}),"");return{text:i,range:e.createRange(n,t.end)}}class aE extends(mt()){constructor(t,e){super();this.model=t;this.testCallback=e;this._hasMatch=false;this.set("isEnabled",true);this.on("change:isEnabled",(()=>{if(this.isEnabled){this._startListening()}else{this.stopListening(t.document.selection);this.stopListening(t.document)}}));this._startListening()}get hasMatch(){return this._hasMatch}_startListening(){const t=this.model;const e=t.document;this.listenTo(e.selection,"change:range",((t,{directChange:n})=>{if(!n){return}if(!e.selection.isCollapsed){if(this.hasMatch){this.fire("unmatched");this._hasMatch=false}return}this._evaluateTextBeforeSelection("selection")}));this.listenTo(e,"change:data",((t,e)=>{if(e.isUndo||!e.isLocal){return}this._evaluateTextBeforeSelection("data",{batch:e})}))}_evaluateTextBeforeSelection(t,e={}){const n=this.model;const i=n.document;const o=i.selection;const r=n.createRange(n.createPositionAt(o.focus.parent,0),o.focus);const{text:s,range:a}=sE(r,n);const l=this.testCallback(s);if(!l&&this.hasMatch){this.fire("unmatched")}this._hasMatch=!!l;if(l){const n=Object.assign(e,{text:s,range:a});if(typeof l=="object"){Object.assign(n,l)}this.fire(`matched:${t}`,n)}}}class lE extends eu{static get pluginName(){return"TwoStepCaretMovement"}constructor(t){super(t);this.attributes=new Set;this._overrideUid=null}init(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=t.locale;const 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==Hl.arrowright;const r=e.keyCode==Hl.arrowleft;if(!n&&!r){return}const s=i.contentLanguageDirection;let a=false;if(s==="ltr"&&n||s==="rtl"&&r){a=this._handleForwardMovement(e)}else{a=this._handleBackwardMovement(e)}if(a===true){t.stop()}}),{context:"$text",priority:"highest"});this._isNextGravityRestorationSkipped=false;this.listenTo(o,"change:range",((t,e)=>{if(this._isNextGravityRestorationSkipped){this._isNextGravityRestorationSkipped=false;return}if(!this._isGravityOverridden){return}if(!e.directChange&&gE(o.getFirstPosition(),this.attributes)){return}this._restoreGravity()}))}registerAttribute(t){this.attributes.add(t)}_handleForwardMovement(t){const e=this.attributes;const n=this.editor.model;const i=n.document.selection;const o=i.getFirstPosition();if(this._isGravityOverridden){return false}if(o.isAtStart&&cE(i,e)){return false}if(gE(o,e)){uE(t);this._overrideGravity();return true}return false}_handleBackwardMovement(t){const e=this.attributes;const n=this.editor.model;const i=n.document.selection;const o=i.getFirstPosition();if(this._isGravityOverridden){uE(t);this._restoreGravity();dE(n,e,o);return true}else{if(o.isAtStart){if(cE(i,e)){uE(t);dE(n,e,o);return true}return false}if(hE(o,e)){if(o.isAtEnd&&!cE(i,e)&&gE(o,e)){uE(t);dE(n,e,o);return true}this._isNextGravityRestorationSkipped=true;this._overrideGravity();return false}}return false}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 cE(t,e){for(const n of e){if(t.hasAttribute(n)){return true}}return false}function dE(t,e,n){const i=n.nodeBefore;t.change((t=>{if(i){t.setSelectionAttribute(i.getAttributes())}else{t.removeSelectionAttribute(e)}}))}function uE(t){t.preventDefault()}function hE(t,e){const n=t.getShiftedBy(-1);return gE(n,e)}function gE(t,e){const{nodeBefore:n,nodeAfter:i}=t;for(const t of e){const e=n?n.getAttribute(t):undefined;const o=i?i.getAttribute(t):undefined;if(o!==e){return true}}return false}var mE=/[\\^$.*+?()[\]{}|]/g,fE=RegExp(mE.source);function pE(t){t=dh(t);return t&&fE.test(t)?t.replace(mE,"\\$&"):t}const bE=pE;const kE={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:xE('"'),to:[null,"“",null,"”"]},quotesSecondary:{from:xE("'"),to:[null,"‘",null,"’"]},quotesPrimaryEnGb:{from:xE("'"),to:[null,"‘",null,"’"]},quotesSecondaryEnGb:{from:xE('"'),to:[null,"“",null,"”"]},quotesPrimaryPl:{from:xE('"'),to:[null,"„",null,"”"]},quotesSecondaryPl:{from:xE("'"),to:[null,"‚",null,"’"]}};const wE={symbols:["copyright","registeredTrademark","trademark"],mathematical:["oneHalf","oneThird","twoThirds","oneForth","threeQuarters","lessThanOrEqual","greaterThanOrEqual","notEqual","arrowLeft","arrowRight"],typography:["horizontalEllipsis","enDash","emDash"],quotes:["quotesPrimary","quotesSecondary"]};const AE=["symbols","mathematical","typography","quotes"];class CE extends eu{static get requires(){return["Delete","Input"]}static get pluginName(){return"TextTransformation"}constructor(t){super(t);t.config.define("typing",{transformations:{include:AE}})}init(){const t=this.editor.model;const e=t.document.selection;e.on("change:range",(()=>{this.isEnabled=!e.anchor.parent.is("element","codeBlock")}));this._enableTransformationWatchers()}_enableTransformationWatchers(){const t=this.editor;const e=t.model;const n=t.plugins.get("Delete");const i=EE(t.config.get("typing.transformations"));const o=t=>{for(const e of i){const n=e.from;const i=n.test(t);if(i){return{normalizedTransformation:e}}}};const r=new aE(t.model,o);r.on("matched:data",((t,i)=>{if(!i.batch.isTyping){return}const{from:o,to:r}=i.normalizedTransformation;const s=o.exec(i.text);const a=r(s.slice(1));const l=i.range;let c=s.index;e.enqueueChange((t=>{for(let n=1;n<s.length;n++){const i=s[n];const o=a[n-1];if(o==null){c+=i.length;continue}const r=l.start.getShiftedBy(c);const d=e.createRange(r,r.getShiftedBy(i.length));const u=yE(r);e.insertContent(t.createText(o,u),d);c+=o.length}e.enqueueChange((()=>{n.requestUndoOnBackspace()}))}))}));r.bind("isEnabled").to(this)}}function _E(t){if(typeof t=="string"){return new RegExp(`(${bE(t)})$`)}return t}function vE(t){if(typeof t=="string"){return()=>[t]}else if(t instanceof Array){return()=>t}return t}function yE(t){const e=t.textNode?t.textNode:t.nodeAfter;return e.getAttributes()}function xE(t){return new RegExp(`(^|\\s)(${t})([^${t}]*)(${t})$`)}function EE(t){const e=t.extra||[];const n=t.remove||[];const i=t=>!n.includes(t);const o=t.include.concat(e).filter(i);return DE(o).filter(i).map((t=>typeof t=="string"&&kE[t]?kE[t]:t)).filter((t=>typeof t==="object")).map((t=>({from:_E(t.from),to:vE(t.to)})))}function DE(t){const e=new Set;for(const n of t){if(typeof n=="string"&&wE[n]){for(const t of wE[n]){e.add(t)}}else{e.add(n)}}return Array.from(e)}function SE(t,e,n,i){return i.createRange(TE(t,e,n,true,i),TE(t,e,n,false,i))}function TE(t,e,n,i,o){let r=t.textNode||(i?t.nodeBefore:t.nodeAfter);let s=null;while(r&&r.getAttribute(e)==n){s=r;r=i?r.previousSibling:r.nextSibling}return s?o.createPositionAt(s,i?"before":"after"):t}function IE(t,e,n,i){const o=t.editing.view;const r=new Set;o.document.registerPostFixer((o=>{const s=t.model.document.selection;let a=false;if(s.hasAttribute(e)){const l=SE(s.getFirstPosition(),e,s.getAttribute(e),t.model);const c=t.editing.mapper.toViewRange(l);for(const t of c.getItems()){if(t.is("element",n)&&!t.hasClass(i)){o.addClass(i,t);r.add(t);a=true}}}return a}));t.conversion.for("editingDowncast").add((t=>{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 e(){o.change((t=>{for(const e of r.values()){t.removeClass(i,e);r.delete(e)}}))}}))}function ME(t,e,n,i){let o;let r=null;if(typeof i=="function"){o=i}else{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 l=dc(t.model.document.selection.getRanges());if(!l.isCollapsed){return}if(a.isUndo||!a.isLocal){return}const c=Array.from(t.model.document.differ.getChanges());const d=c[0];if(c.length!=1||d.type!=="insert"||d.name!="$text"||d.length!=1){return}const u=d.position.parent;if(u.is("element","codeBlock")){return}if(u.is("element","listItem")&&typeof i!=="function"&&!["numberedList","bulletedList","todoList"].includes(i)){return}if(r&&r.value===true){return}const h=u.getChild(0);const g=t.model.createRangeOn(h);if(!g.containsRange(l)&&!l.end.isEqual(g.end)){return}const m=n.exec(h.data.substr(0,l.end.offset));if(!m){return}t.model.enqueueChange((e=>{const n=e.createPositionAt(u,0);const i=e.createPositionAt(u,m[0].length);const r=new kb(n,i);const s=o({match:m});if(s!==false){e.remove(r);const n=t.model.document.selection.getFirstRange();const i=e.createRangeIn(u);if(u.isEmpty&&!i.isEqual(n)&&!i.containsRange(n,true)){e.remove(u)}}r.detach();t.model.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}))}))}function BE(t,e,n,i){let o;let r;if(n instanceof RegExp){o=n}else{r=n}r=r||(t=>{let e;const n=[];const i=[];while((e=o.exec(t))!==null){if(e&&e.length<4){break}let{index:t,1:o,2:r,3:s}=e;const a=o+r+s;t+=e[0].length-a.length;const l=[t,t+o.length];const c=[t+o.length+r.length,t+o.length+r.length+s.length];n.push(l);n.push(c);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;const a=s.document.selection;if(!a.isCollapsed){return}const l=Array.from(s.document.differ.getChanges());const c=l[0];if(l.length!=1||c.type!=="insert"||c.name!="$text"||c.length!=1){return}const d=a.focus;const u=d.parent;const{text:h,range:g}=NE(s.createRange(s.createPositionAt(u,0),d),s);const m=r(h);const f=LE(g.start,m.format,s);const p=LE(g.start,m.remove,s);if(!(f.length&&p.length)){return}s.enqueueChange((e=>{const n=i(e,f);if(n===false){return}for(const t of p.reverse()){e.remove(t)}s.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}))}))}function LE(t,e,n){return e.filter((t=>t[0]!==undefined&&t[1]!==undefined)).map((e=>n.createRange(t.getShiftedBy(e[0]),t.getShiftedBy(e[1]))))}function NE(t,e){let n=t.start;const i=Array.from(t.getItems()).reduce(((t,i)=>{if(!(i.is("$text")||i.is("$textProxy"))||i.getAttribute("code")){n=e.createPositionAfter(i);return""}return t+i.data}),"");return{text:i,range:e.createRange(n,t.end)}}class zE extends eu{static get requires(){return[oE]}static get pluginName(){return"Autoformat"}afterInit(){this._addListAutoformats();this._addBasicStylesAutoformats();this._addHeadingAutoformats();this._addBlockQuoteAutoformats();this._addCodeBlockAutoformats();this._addHorizontalLineAutoformats()}_addListAutoformats(){const t=this.editor.commands;if(t.get("bulletedList")){ME(this.editor,this,/^[*-]\s$/,"bulletedList")}if(t.get("numberedList")){ME(this.editor,this,/^1[.|)]\s$/,"numberedList")}if(t.get("todoList")){ME(this.editor,this,/^\[\s?\]\s$/,"todoList")}if(t.get("checkTodoList")){ME(this.editor,this,/^\[\s?x\s?\]\s$/,(()=>{this.editor.execute("todoList");this.editor.execute("checkTodoList")}))}}_addBasicStylesAutoformats(){const t=this.editor.commands;if(t.get("bold")){const t=PE(this.editor,"bold");BE(this.editor,this,/(?:^|\s)(\*\*)([^*]+)(\*\*)$/g,t);BE(this.editor,this,/(?:^|\s)(__)([^_]+)(__)$/g,t)}if(t.get("italic")){const t=PE(this.editor,"italic");BE(this.editor,this,/(?:^|\s)(\*)([^*_]+)(\*)$/g,t);BE(this.editor,this,/(?:^|\s)(_)([^_]+)(_)$/g,t)}if(t.get("code")){const t=PE(this.editor,"code");BE(this.editor,this,/(`)([^`]+)(`)$/g,t)}if(t.get("strikethrough")){const t=PE(this.editor,"strikethrough");BE(this.editor,this,/(~~)([^~]+)(~~)$/g,t)}}_addHeadingAutoformats(){const t=this.editor.commands.get("heading");if(t){t.modelElements.filter((t=>t.match(/^heading[1-6]$/))).forEach((e=>{const n=e[7];const i=new RegExp(`^(#{${n}})\\s$`);ME(this.editor,this,i,(()=>{if(!t.isEnabled||t.value===e){return false}this.editor.execute("heading",{value:e})}))}))}}_addBlockQuoteAutoformats(){if(this.editor.commands.get("blockQuote")){ME(this.editor,this,/^>\s$/,"blockQuote")}}_addCodeBlockAutoformats(){const t=this.editor;const e=t.model.document.selection;if(t.commands.get("codeBlock")){ME(t,this,/^```$/,(()=>{if(e.getFirstPosition().parent.is("element","listItem")){return false}this.editor.execute("codeBlock",{usePreviousLanguageChoice:true})}))}}_addHorizontalLineAutoformats(){if(this.editor.commands.get("horizontalLine")){ME(this.editor,this,/^---$/,"horizontalLine")}}}function PE(t,e){return(n,i)=>{const o=t.commands.get(e);if(!o.isEnabled){return false}const r=t.model.schema.getValidRanges(i,e);for(const t of r){n.setAttribute(e,true,t)}n.removeSelectionAttribute(e)}}class OE extends cf{constructor(t){super(t);const e=this.document;this.domEventType=["paste","copy","cut","drop","dragover","dragstart","dragend","dragenter","dragleave"];this.listenTo(e,"paste",n("clipboardInput"),{priority:"low"});this.listenTo(e,"drop",n("clipboardInput"),{priority:"low"});this.listenTo(e,"dragover",n("dragging"),{priority:"low"});function n(t){return(n,i)=>{i.preventDefault();const o=i.dropRange?[i.dropRange]:null;const r=new S(e,t);e.fire(r,{dataTransfer:i.dataTransfer,method:n.name,targetRanges:o,target:i.target});if(r.stop.called){i.stopPropagation()}}}}onDomEvent(t){const e="clipboardData"in t?t.clipboardData:t.dataTransfer;const n=t.type=="drop"||t.type=="paste";const i={dataTransfer:new Pp(e,{cacheFiles:n})};if(t.type=="drop"||t.type=="dragover"){i.dropRange=RE(this.view,t)}this.fire(t.type,t,i)}}function RE(t,e){const n=e.target.ownerDocument;const i=e.clientX;const o=e.clientY;let r;if(n.caretRangeFromPoint&&n.caretRangeFromPoint(i,o)){r=n.caretRangeFromPoint(i,o)}else if(e.rangeParent){r=n.createRange();r.setStart(e.rangeParent,e.rangeOffset);r.collapse(true)}if(r){return t.domConverter.domRangeToView(r)}return null}function VE(t){t=t.replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r?\n\r?\n/g,"</p><p>").replace(/\r?\n/g,"<br>").replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/^\s/,"&nbsp;").replace(/\s$/,"&nbsp;").replace(/\s\s/g," &nbsp;");if(t.includes("</p><p>")||t.includes("<br>")){t=`<p>${t}</p>`}return t}function jE(t){return t.replace(/<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g,((t,e)=>{if(e.length==1){return" "}return e})).replace(/<!--[\s\S]*?-->/g,"")}const FE=["figcaption","li"];function HE(t){let e="";if(t.is("$text")||t.is("$textProxy")){e=t.data}else if(t.is("element","img")&&t.hasAttribute("alt")){e=t.getAttribute("alt")}else if(t.is("element","br")){e="\n"}else{let n=null;for(const i of t.getChildren()){const t=HE(i);if(n&&(n.is("containerElement")||i.is("containerElement"))){if(FE.includes(n.name)||FE.includes(i.name)){e+="\n"}else{e+="\n\n"}}e+=t;n=i}}return e}class UE extends eu{static get pluginName(){return"ClipboardPipeline"}init(){const t=this.editor;const e=t.editing.view;e.addObserver(OE);this._setupPasteDrop();this._setupCopyCut()}_setupPasteDrop(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=n.document;this.listenTo(i,"clipboardInput",(e=>{if(t.isReadOnly){e.stop()}}),{priority:"highest"});this.listenTo(i,"clipboardInput",((t,e)=>{const i=e.dataTransfer;let o;if(e.content){o=e.content}else{let t="";if(i.getData("text/html")){t=jE(i.getData("text/html"))}else if(i.getData("text/plain")){t=VE(i.getData("text/plain"))}o=this.editor.data.htmlProcessor.toView(t)}const r=new S(this,"inputTransformation");this.fire(r,{content:o,dataTransfer:i,targetRanges:e.targetRanges,method:e.method});if(r.stop.called){t.stop()}n.scrollToTheSelection()}),{priority:"low"});this.listenTo(this,"inputTransformation",((t,n)=>{if(n.content.isEmpty){return}const i=this.editor.data;const o=i.toModel(n.content,"$clipboardHolder");if(o.childCount==0){return}t.stop();e.change((()=>{this.fire("contentInsertion",{content:o,method:n.method,dataTransfer:n.dataTransfer,targetRanges:n.targetRanges})}))}),{priority:"low"});this.listenTo(this,"contentInsertion",((t,n)=>{n.resultRange=e.insertContent(n.content)}),{priority:"low"})}_setupCopyCut(){const t=this.editor;const e=t.model.document;const n=t.editing.view;const i=n.document;const o=(n,o)=>{const r=o.dataTransfer;o.preventDefault();const s=t.data.toView(t.model.getSelectedContent(e.selection));i.fire("clipboardOutput",{dataTransfer:r,content:s,method:n.name})};this.listenTo(i,"copy",o,{priority:"low"});this.listenTo(i,"cut",((e,n)=>{if(t.isReadOnly){n.preventDefault()}else{o(e,n)}}),{priority:"low"});this.listenTo(i,"clipboardOutput",((n,i)=>{if(!i.content.isEmpty){i.dataTransfer.setData("text/html",this.editor.data.htmlProcessor.toData(i.content));i.dataTransfer.setData("text/plain",HE(i.content))}if(i.method=="cut"){t.model.deleteContent(e.selection)}}),{priority:"low"})}}function*WE(t,e){for(const n of e){if(n&&t.getAttributeProperties(n[0]).copyOnEnter){yield n}}}class qE extends iu{execute(){this.editor.model.change((t=>{this.enterBlock(t);this.fire("afterExecute",{writer:t})}))}enterBlock(t){const e=this.editor.model;const n=e.document.selection;const i=e.schema;const o=n.isCollapsed;const r=n.getFirstRange();const s=r.start.parent;const a=r.end.parent;if(i.isLimit(s)||i.isLimit(a)){if(!o&&s==a){e.deleteContent(n)}return false}if(o){const e=WE(t.model.schema,n.getAttributes());GE(t,r.start);t.setSelectionAttribute(e);return true}else{const i=!(r.start.isAtStart&&r.end.isAtEnd);const o=s==a;e.deleteContent(n,{leaveUnmerged:i});if(i){if(o){GE(t,n.focus);return true}else{t.setSelection(a,0)}}}return false}}function GE(t,e){t.split(e);t.setSelection(e.parent.nextSibling,0)}const $E={insertParagraph:{isSoft:false},insertLineBreak:{isSoft:true}};class KE extends rf{constructor(t){super(t);const e=this.document;e.on("beforeinput",((n,i)=>{if(!this.isEnabled){return}const o=i.domEvent;const r=$E[i.inputType];if(!r){return}const s=new Hg(e,"enter",i.targetRanges[0]);e.fire(s,new lf(t,o,{isSoft:r.isSoft}));if(s.stop.called){n.stop()}}))}observe(){}}class YE extends eu{static get pluginName(){return"Enter"}init(){const t=this.editor;const e=t.editing.view;const n=e.document;e.addObserver(KE);t.commands.add("enter",new qE(t));this.listenTo(n,"enter",((i,o)=>{if(!n.isComposing){o.preventDefault()}if(o.isSoft){return}t.execute("enter");e.scrollToTheSelection()}),{priority:"low"})}}class ZE extends iu{execute(){const t=this.editor.model;const e=t.document;t.change((n=>{JE(t,n,e.selection);this.fire("afterExecute",{writer:n})}))}refresh(){const t=this.editor.model;const e=t.document;this.isEnabled=QE(t.schema,e.selection)}}function QE(t,e){if(e.rangeCount>1){return false}const n=e.anchor;if(!n||!t.checkChild(n,"softBreak")){return false}const i=e.getFirstRange();const o=i.start.parent;const r=i.end.parent;if((tD(o,t)||tD(r,t))&&o!==r){return false}return true}function JE(t,e,n){const i=n.isCollapsed;const o=n.getFirstRange();const r=o.start.parent;const s=o.end.parent;const a=r==s;if(i){const i=WE(t.schema,n.getAttributes());XE(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});if(a){XE(t,e,n.focus)}else{if(i){e.setSelection(s,0)}}}}function XE(t,e,n){const i=e.createElement("softBreak");t.insertContent(i,n);e.setSelection(i,"after")}function tD(t,e){if(t.is("rootElement")){return false}return e.isLimit(t)||tD(t.parent,e)}class eD extends eu{static get pluginName(){return"ShiftEnter"}init(){const t=this.editor;const e=t.model.schema;const n=t.conversion;const i=t.editing.view;const o=i.document;e.register("softBreak",{allowWhere:"$text",isInline:true});n.for("upcast").elementToElement({model:"softBreak",view:"br"});n.for("downcast").elementToElement({model:"softBreak",view:(t,{writer:e})=>e.createEmptyElement("br")});i.addObserver(KE);t.commands.add("shiftEnter",new ZE(t));this.listenTo(o,"enter",((e,n)=>{if(!o.isComposing){n.preventDefault()}if(!n.isSoft){return}t.execute("shiftEnter");i.scrollToTheSelection()}),{priority:"low"})}}class nD extends(K()){constructor(){super();this._stack=[]}add(t,e){const n=this._stack;const i=n[0];this._insertDescriptor(t);const o=n[0];if(i!==o&&!iD(i,o)){this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}}remove(t,e){const n=this._stack;const i=n[0];this._removeDescriptor(t);const o=n[0];if(i!==o&&!iD(i,o)){this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}}_insertDescriptor(t){const e=this._stack;const n=e.findIndex((e=>e.id===t.id));if(iD(t,e[n])){return}if(n>-1){e.splice(n,1)}let i=0;while(e[i]&&oD(e[i],t)){i++}e.splice(i,0,t)}_removeDescriptor(t){const e=this._stack;const n=e.findIndex((e=>e.id===t));if(n>-1){e.splice(n,1)}}}function iD(t,e){return t&&e&&t.priority==e.priority&&rD(t.classes)==rD(e.classes)}function oD(t,e){if(t.priority>e.priority){return true}else if(t.priority<e.priority){return false}return rD(t.classes)>rD(e.classes)}function rD(t){return Array.isArray(t)?t.sort().join(","):t}const sD='$${Delta.CKEditor.Icon[38]}$$';const aD="ck-widget";const lD="ck-widget_selected";function cD(t){if(!t.is("element")){return false}return!!t.getCustomProperty("widget")}function dD(t,e,n={}){if(!t.is("containerElement")){throw new z("widget-to-widget-wrong-element-type",null,{element:t})}e.setAttribute("contenteditable","false",t);e.addClass(aD,t);e.setCustomProperty("widget",true,t);t.getFillerOffset=wD;e.setCustomProperty("widgetLabel",[],t);if(n.label){mD(t,n.label)}if(n.hasSelectionHandle){AD(t,e)}gD(t,e);return t}function uD(t,e,n){if(e.classes){n.addClass(Xl(e.classes),t)}if(e.attributes){for(const i in e.attributes){n.setAttribute(i,e.attributes[i],t)}}}function hD(t,e,n){if(e.classes){n.removeClass(Xl(e.classes),t)}if(e.attributes){for(const i in e.attributes){n.removeAttribute(i,t)}}}function gD(t,e,n=uD,i=hD){const o=new nD;o.on("change:top",((e,o)=>{if(o.oldDescriptor){i(t,o.oldDescriptor,o.writer)}if(o.newDescriptor){n(t,o.newDescriptor,o.writer)}}));const r=(t,e,n)=>o.add(e,n);const s=(t,e,n)=>o.remove(e,n);e.setCustomProperty("addHighlight",r,t);e.setCustomProperty("removeHighlight",s,t)}function mD(t,e){const n=t.getCustomProperty("widgetLabel");n.push(e)}function fD(t){const e=t.getCustomProperty("widgetLabel");return e.reduce(((t,e)=>{if(typeof e==="function"){return t?t+". "+e():e()}else{return t?t+". "+e:e}}),"")}function pD(t,e,n={}){e.addClass(["ck-editor__editable","ck-editor__nested-editable"],t);e.setAttribute("role","textbox",t);if(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)=>{if(o){e.addClass("ck-editor__nested-editable_focused",t)}else{e.removeClass("ck-editor__nested-editable_focused",t)}}));gD(t,e);return t}function bD(t,e){const n=t.getSelectedElement();if(n){const i=ED(t);if(i){return e.createRange(e.createPositionAt(n,i))}}return oC(t,e)}function kD(t,e){return(n,i)=>{const{mapper:o,viewPosition:r}=i;const s=o.findMappedViewAncestor(r);if(!e(s)){return}const a=o.toModelElement(s);i.modelPosition=t.createPositionAt(a,r.isAtStart?"before":"after")}}function wD(){return null}function AD(t,e){const n=e.createUIElement("div",{class:"ck ck-widget__selection-handle"},(function(t){const e=this.toDomElement(t);const n=new gd;n.set("content",sD);n.render();e.appendChild(n.element);return e}));e.insert(e.createPositionAt(t,0),n);e.addClass(["ck-widget_with-selection-handle"],t)}const CD="widget-type-around";function _D(t,e,n){return!!t&&cD(t)&&!n.isInline(e)}function vD(t){return t.closest(".ck-widget__type-around__button")}function yD(t){return t.classList.contains("ck-widget__type-around__button_before")?"before":"after"}function xD(t,e){const n=t.closest(".ck-widget");return e.mapDomToView(n)}function ED(t){return t.getAttribute(CD)}const DD='$${Delta.CKEditor.Icon[39]}$$';var SD=n(5137);var TD={injectType:"singletonStyleTag",attributes:{"data-cke":true}};TD.insert="head";TD.singleton=true;var ID=Sc()(SD.Z,TD);const MD=SD.Z.locals||{};const BD=["before","after"];const LD=(new DOMParser).parseFromString(DD,"image/svg+xml").firstChild;const ND="ck-widget__type-around_disabled";class zD extends eu{static get pluginName(){return"WidgetTypeAround"}static get requires(){return[YE,oE]}constructor(t){super(t);this._currentFakeCaretModelElement=null}init(){const t=this.editor;const e=t.editing.view;this.on("change:isEnabled",((n,i,o)=>{e.change((t=>{for(const n of e.document.roots){if(o){t.removeClass(ND,n)}else{t.addClass(ND,n)}}}));if(!o){t.model.change((t=>{t.removeSelectionAttribute(CD)}))}}));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;const i=n.editing.view;const o=n.model.schema.getAttributesWithProperty(t,"copyOnReplace",true);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)=>{if(this.isEnabled){n(...t)}}),i)}_insertParagraphAccordingToFakeCaretPosition(){const t=this.editor;const e=t.model;const n=e.document.selection;const i=ED(n);if(!i){return false}const o=n.getSelectedElement();this._insertParagraph(o,i);return true}_enableTypeAroundUIInjection(){const t=this.editor;const e=t.model.schema;const n=t.locale.t;const 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){return}if(_D(s,o.item,e)){PD(r.writer,i,s);const t=s.getCustomProperty("widgetLabel");t.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;const e=t.model;const n=e.document.selection;const i=e.schema;const o=t.editing.view;this._listenToIfEnabled(o.document,"arrowKey",((t,e)=>{this._handleArrowKeyPress(t,e)}),{context:[cD,"$text"],priority:"high"});this._listenToIfEnabled(n,"change:range",((e,n)=>{if(!n.directChange){return}t.model.change((t=>{t.removeSelectionAttribute(CD)}))}));this._listenToIfEnabled(e.document,"change:data",(()=>{const e=n.getSelectedElement();if(e){const n=t.editing.mapper.toViewElement(e);if(_D(n,e,i)){return}}t.model.change((t=>{t.removeSelectionAttribute(CD)}))}));this._listenToIfEnabled(t.editing.downcastDispatcher,"selection",((t,e,n)=>{const o=n.writer;if(this._currentFakeCaretModelElement){const t=n.mapper.toViewElement(this._currentFakeCaretModelElement);if(t){o.removeClass(BD.map(r),t);this._currentFakeCaretModelElement=null}}const s=e.selection.getSelectedElement();if(!s){return}const a=n.mapper.toViewElement(s);if(!_D(a,s,i)){return}const l=ED(e.selection);if(!l){return}o.addClass(r(l),a);this._currentFakeCaretModelElement=s}));this._listenToIfEnabled(t.ui.focusTracker,"change:isFocused",((e,n,i)=>{if(!i){t.model.change((t=>{t.removeSelectionAttribute(CD)}))}}));function r(t){return`ck-widget_type-around_show-fake-caret_${t}`}}_handleArrowKeyPress(t,e){const n=this.editor;const i=n.model;const o=i.document.selection;const r=i.schema;const s=n.editing.view;const a=e.keyCode;const l=Zl(a,n.locale.contentLanguageDirection);const c=s.document.selection.getSelectedElement();const d=n.editing.mapper.toModelElement(c);let u;if(_D(c,d,r)){u=this._handleArrowKeyPressOnSelectedWidget(l)}else if(o.isCollapsed){u=this._handleArrowKeyPressWhenSelectionNextToAWidget(l)}else if(!e.shiftKey){u=this._handleArrowKeyPressWhenNonCollapsedSelection(l)}if(u){e.preventDefault();t.stop()}}_handleArrowKeyPressOnSelectedWidget(t){const e=this.editor;const n=e.model;const i=n.document.selection;const o=ED(i);return n.change((e=>{if(o){const n=o===(t?"after":"before");if(!n){e.removeSelectionAttribute(CD);return true}}else{e.setSelectionAttribute(CD,t?"after":"before");return true}return false}))}_handleArrowKeyPressWhenSelectionNextToAWidget(t){const e=this.editor;const n=e.model;const i=n.schema;const o=e.plugins.get("Widget");const r=o._getObjectElementNextToSelection(t);const s=e.editing.mapper.toViewElement(r);if(_D(s,r,i)){n.change((e=>{o._setSelectionOverElement(r);e.setSelectionAttribute(CD,t?"before":"after")}));return true}return false}_handleArrowKeyPressWhenNonCollapsedSelection(t){const e=this.editor;const n=e.model;const i=n.schema;const o=e.editing.mapper;const r=n.document.selection;const s=t?r.getLastPosition().nodeBefore:r.getFirstPosition().nodeAfter;const a=o.toViewElement(s);if(_D(a,s,i)){n.change((e=>{e.setSelection(s,"on");e.setSelectionAttribute(CD,t?"after":"before")}));return true}return false}_enableInsertingParagraphsOnButtonClick(){const t=this.editor;const e=t.editing.view;this._listenToIfEnabled(e.document,"mousedown",((n,i)=>{const o=vD(i.domTarget);if(!o){return}const r=yD(o);const s=xD(o,e.domConverter);const a=t.editing.mapper.toModelElement(s);this._insertParagraph(a,r);i.preventDefault();n.stop()}))}_enableInsertingParagraphsOnEnterKeypress(){const t=this.editor;const e=t.model.document.selection;const n=t.editing.view;this._listenToIfEnabled(n.document,"enter",((n,i)=>{if(n.eventPhase!="atTarget"){return}const o=e.getSelectedElement();const r=t.editing.mapper.toViewElement(o);const s=t.model.schema;let a;if(this._insertParagraphAccordingToFakeCaretPosition()){a=true}else if(_D(r,o,s)){this._insertParagraph(o,i.isSoft?"before":"after");a=true}if(a){i.preventDefault();n.stop()}}),{context:cD})}_enableInsertingParagraphsOnTypingKeystroke(){const t=this.editor;const e=t.editing.view.document;this._listenToIfEnabled(e,"insertText",((t,n)=>{if(this._insertParagraphAccordingToFakeCaretPosition()){n.selection=e.selection}}),{priority:"high"});if(c.isAndroid){this._listenToIfEnabled(e,"keydown",((t,e)=>{if(e.keyCode==229){this._insertParagraphAccordingToFakeCaretPosition()}}))}else{this._listenToIfEnabled(e,"compositionstart",(()=>{this._insertParagraphAccordingToFakeCaretPosition()}),{priority:"high"})}}_enableDeleteIntegration(){const t=this.editor;const e=t.editing.view;const n=t.model;const i=n.schema;this._listenToIfEnabled(e.document,"delete",((e,o)=>{if(e.eventPhase!="atTarget"){return}const r=ED(n.document.selection);if(!r){return}const s=o.direction;const a=n.document.selection.getSelectedElement();const l=r==="before";const c=s=="forward";const d=l===c;if(d){t.execute("delete",{selection:n.createSelection(a,"on")})}else{const e=i.getNearestSelectionRange(n.createPositionAt(a,r),s);if(e){if(!e.isCollapsed){n.change((n=>{n.setSelection(e);t.execute(c?"deleteForward":"delete")}))}else{const o=n.createSelection(e.start);n.modifySelection(o,{direction:s});if(!o.focus.isEqual(e.start)){n.change((n=>{n.setSelection(e);t.execute(c?"deleteForward":"delete")}))}else{const t=VD(i,e.start.parent);n.deleteContent(n.createSelection(t,"on"),{doNotAutoparagraph:true})}}}}o.preventDefault();e.stop()}),{context:cD})}_enableInsertContentIntegration(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;this._listenToIfEnabled(t.model,"insertContent",((t,[i,o])=>{if(o&&!o.is("documentSelection")){return}const r=ED(n);if(!r){return}t.stop();return e.change((t=>{const o=n.getSelectedElement();const s=e.createPositionAt(o,r);const a=t.createSelection(s);const l=e.insertContent(i,a);t.setSelection(a);return l}))}),{priority:"high"})}_enableInsertObjectIntegration(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;this._listenToIfEnabled(t.model,"insertObject",((t,e)=>{const[,i,,o={}]=e;if(i&&!i.is("documentSelection")){return}const r=ED(n);if(!r){return}o.findOptimalPosition=r;e[3]=o}),{priority:"high"})}_enableDeleteContentIntegration(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;this._listenToIfEnabled(t.model,"deleteContent",((t,[e])=>{if(e&&!e.is("documentSelection")){return}const i=ED(n);if(i){t.stop()}}),{priority:"high"})}}function PD(t,e,n){const i=t.createUIElement("div",{class:"ck ck-reset_all ck-widget__type-around"},(function(t){const n=this.toDomElement(t);OD(n,e);RD(n);return n}));t.insert(t.createPositionAt(n,"end"),i)}function OD(t,e){for(const n of BD){const i=new zc({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(LD,true)]});t.appendChild(i.render())}}function RD(t){const e=new zc({tag:"div",attributes:{class:["ck","ck-widget__type-around__fake-caret"]}});t.appendChild(e.render())}function VD(t,e){let n=e;for(const i of e.getAncestors({parentFirst:true})){if(i.childCount>1||t.isLimit(i)){break}n=i}return n}function jD(t){const e=t.model;return(n,i)=>{const o=i.keyCode==Hl.arrowup;const r=i.keyCode==Hl.arrowdown;const s=i.shiftKey;const a=e.document.selection;if(!o&&!r){return}const l=r;if(s&&qD(a,l)){return}const c=FD(t,a,l);if(!c){return}if(c.isCollapsed){if(a.isCollapsed){return}else if(s){return}}if(c.isCollapsed||WD(t,c,l)){e.change((t=>{const n=l?c.end:c.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 FD(t,e,n){const i=t.model;if(n){const t=e.isCollapsed?e.focus:e.getLastPosition();const n=HD(i,t,"forward");if(!n){return null}const o=i.createRange(t,n);const r=UD(i.schema,o,"backward");if(r){return i.createRange(t,r)}return null}else{const t=e.isCollapsed?e.focus:e.getFirstPosition();const n=HD(i,t,"backward");if(!n){return null}const o=i.createRange(n,t);const r=UD(i.schema,o,"forward");if(r){return i.createRange(r,t)}return null}}function HD(t,e,n){const i=t.schema;const o=t.createRangeIn(e.root);const r=n=="forward"?"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 UD(t,e,n){const i=n=="backward"?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}function WD(t,e,n){const i=t.model;const o=t.view.domConverter;if(n){const t=i.createSelection(e.start);i.modifySelection(t);if(!t.focus.isAtEnd&&!e.start.isEqual(t.focus)){e=i.createRange(t.focus,e.end)}}const r=t.mapper.toViewRange(e);const s=o.viewRangeToDom(r);const a=dl.getDomRangeRects(s);let l;for(const t of a){if(l===undefined){l=Math.round(t.bottom);continue}if(Math.round(t.top)>=l){return false}l=Math.max(l,Math.round(t.bottom))}return true}function qD(t,e){return!t.isCollapsed&&t.isBackward==e}var GD=n(6507);var $D={injectType:"singletonStyleTag",attributes:{"data-cke":true}};$D.insert="head";$D.singleton=true;var KD=Sc()(GD.Z,$D);const YD=GD.Z.locals||{};class ZD extends eu{static get pluginName(){return"Widget"}static get requires(){return[zD,oE]}init(){const t=this.editor;const e=t.editing.view;const n=e.document;this._previouslySelected=new Set;this.editor.editing.downcastDispatcher.on("selection",((e,n,i)=>{const o=i.writer;const r=n.selection;if(r.isCollapsed){return}const s=r.getSelectedElement();if(!s){return}const a=t.editing.mapper.toViewElement(s);if(!cD(a)){return}if(!i.consumable.consume(r,"selection")){return}o.setSelection(o.createRangeOn(a),{fake:true,label:fD(a)})}));this.editor.editing.downcastDispatcher.on("selection",((t,e,n)=>{this._clearPreviouslySelectedWidgets(n.writer);const i=n.writer;const o=i.document.selection;let r=null;for(const t of o.getRanges()){for(const e of t){const t=e.item;if(cD(t)&&!JD(t,r)){i.addClass(lD,t);this._previouslySelected.add(t);r=t}}}}),{priority:"low"});e.addObserver(bC);this.listenTo(n,"mousedown",((...t)=>this._onMousedown(...t)));this.listenTo(n,"arrowKey",((...t)=>{this._handleSelectionChangeOnArrowKeyPress(...t)}),{context:[cD,"$text"]});this.listenTo(n,"arrowKey",((...t)=>{this._preventDefaultOnArrowKeyPress(...t)}),{context:"$root"});this.listenTo(n,"arrowKey",jD(this.editor.editing),{context:"$text"});this.listenTo(n,"delete",((t,e)=>{if(this._handleDelete(e.direction=="forward")){e.preventDefault();t.stop()}}),{context:"$root"})}_onMousedown(t,e){const n=this.editor;const i=n.editing.view;const o=i.document;let r=e.target;if(QD(r)){if((c.isSafari||c.isGecko)&&e.domEvent.detail>=3){const t=n.editing.mapper;const i=r.is("attributeElement")?r.findAncestor((t=>!t.is("attributeElement"))):r;const o=t.toModelElement(i);e.preventDefault();this.editor.model.change((t=>{t.setSelection(o,"in")}))}return}if(!cD(r)){r=r.findAncestor(cD);if(!r){return}}if(c.isAndroid){e.preventDefault()}if(!o.isFocused){i.focus()}const s=n.editing.mapper.toModelElement(r);this._setSelectionOverElement(s)}_handleSelectionChangeOnArrowKeyPress(t,e){const n=e.keyCode;const i=this.editor.model;const o=i.schema;const r=i.document.selection;const s=r.getSelectedElement();const a=Kl(n,this.editor.locale.contentLanguageDirection);const l=a=="down"||a=="right";const c=a=="up"||a=="down";if(s&&o.isObject(s)){const n=l?r.getLastPosition():r.getFirstPosition();const s=o.getNearestSelectionRange(n,l?"forward":"backward");if(s){i.change((t=>{t.setSelection(s)}));e.preventDefault();t.stop()}return}if(!r.isCollapsed&&!e.shiftKey){const n=r.getFirstPosition();const s=r.getLastPosition();const a=n.nodeAfter;const c=s.nodeBefore;if(a&&o.isObject(a)||c&&o.isObject(c)){i.change((t=>{t.setSelection(l?s:n)}));e.preventDefault();t.stop()}return}if(!r.isCollapsed){return}const d=this._getObjectElementNextToSelection(l);if(d&&o.isObject(d)){if(o.isInline(d)&&c){return}this._setSelectionOverElement(d);e.preventDefault();t.stop()}}_preventDefaultOnArrowKeyPress(t,e){const n=this.editor.model;const i=n.schema;const o=n.document.selection.getSelectedElement();if(o&&i.isObject(o)){e.preventDefault();t.stop()}}_handleDelete(t){if(this.editor.isReadOnly){return}const e=this.editor.model.document;const n=e.selection;if(!n.isCollapsed){return}const i=this._getObjectElementNextToSelection(t);if(i){this.editor.model.change((t=>{let e=n.anchor.parent;while(e.isEmpty){const n=e;e=n.parent;t.remove(n)}this._setSelectionOverElement(i)}));return true}}_setSelectionOverElement(t){this.editor.model.change((e=>{e.setSelection(e.createRangeOn(t))}))}_getObjectElementNextToSelection(t){const e=this.editor.model;const n=e.schema;const i=e.document.selection;const o=e.createSelection(i);e.modifySelection(o,{direction:t?"forward":"backward"});if(o.isEqual(i)){return null}const r=t?o.focus.nodeBefore:o.focus.nodeAfter;if(!!r&&n.isObject(r)){return r}return null}_clearPreviouslySelectedWidgets(t){for(const e of this._previouslySelected){t.removeClass(lD,e)}this._previouslySelected.clear()}}function QD(t){let e=t;while(e){if(e.is("editableElement")&&!e.is("rootElement")){return true}if(cD(e)){return false}e=e.parent}return false}function JD(t,e){if(!e){return false}return Array.from(t.getAncestors()).includes(e)}class XD extends eu{static get requires(){return[Zy]}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=>{if(nS(t.editing.view.document.selection)){e.stop()}}),{priority:"high"})}this._toolbarDefinitions=new Map;this._balloon=this.editor.plugins.get("ContextualBalloon");this.on("change:isEnabled",(()=>{this._updateToolbarsVisibility()}));this.listenTo(t.ui,"update",(()=>{this._updateToolbarsVisibility()}));this.listenTo(t.ui.focusTracker,"change:isFocused",(()=>{this._updateToolbarsVisibility()}),{priority:"low"})}destroy(){super.destroy();for(const t of this._toolbarDefinitions.values()){t.view.destroy()}}register(t,{ariaLabel:e,items:n,getRelatedElement:i,balloonClassName:o="ck-toolbar-container"}){if(!n.length){P("widget-toolbar-no-items",{toolbarId:t});return}const r=this.editor;const s=r.t;const a=new rv(r.locale);a.ariaLabel=e||s("Widget toolbar");if(this._toolbarDefinitions.has(t)){throw new z("widget-toolbar-duplicated",this,{toolbarId:t})}const l={view:a,getRelatedElement:i,balloonClassName:o,itemsConfig:n,initialized:false};r.ui.addToolbar(a,{isContextual:true,beforeFocus:()=>{const t=i(r.editing.view.document.selection);if(t){this._showToolbar(l,t)}},afterBlur:()=>{this._hideToolbar(l)}});this._toolbarDefinitions.set(t,l)}_updateToolbarsVisibility(){let t=0;let e=null;let 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._isToolbarInBalloon(i)){this._hideToolbar(i)}}else if(!this.editor.ui.focusTracker.isFocused){if(this._isToolbarVisible(i)){this._hideToolbar(i)}}else{const r=o.getAncestors().length;if(r>t){t=r;e=o;n=i}}}if(n){this._showToolbar(n,e)}}_hideToolbar(t){this._balloon.remove(t.view);this.stopListening(this._balloon,"change:visibleView")}_showToolbar(t,e){if(this._isToolbarVisible(t)){tS(this.editor,e)}else if(!this._isToolbarInBalloon(t)){if(!t.initialized){t.initialized=true;t.view.fillFromConfig(t.itemsConfig,this.editor.ui.componentFactory)}this._balloon.add({view:t.view,position:eS(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);tS(this.editor,e)}}}))}}_isToolbarVisible(t){return this._balloon.visibleView===t.view}_isToolbarInBalloon(t){return this._balloon.hasView(t.view)}}function tS(t,e){const n=t.plugins.get("ContextualBalloon");const i=eS(t,e);n.updatePosition(i)}function eS(t,e){const n=t.editing.view;const i=Uv.defaultPositions;return{target:n.domConverter.mapViewToDom(e),positions:[i.northArrowSouth,i.northArrowSouthWest,i.northArrowSouthEast,i.southArrowNorth,i.southArrowNorthWest,i.southArrowNorthEast,i.viewportStickyNorth]}}function nS(t){const e=t.getSelectedElement();return!!(e&&cD(e))}class iS extends(mt()){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 dl(e);this.activeHandlePosition=aS(t);this._referenceCoordinates=rS(e,lS(this.activeHandlePosition));this._originalWidth=i.width;this._originalHeight=i.height;this._aspectRatio=i.width/i.height;const o=n.style.width;if(o&&o.match(/^\d+(\.\d*)?%$/)){this._originalWidthPercents=parseFloat(o)}else{this._originalWidthPercents=oS(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 oS(t,e){const n=t.parentElement;const i=parseFloat(n.ownerDocument.defaultView.getComputedStyle(n).width);return e.width/i*100}function rS(t,e){const n=new dl(t);const i=e.split("-");const o={x:i[1]=="right"?n.right:n.left,y:i[0]=="bottom"?n.bottom:n.top};o.x+=t.ownerDocument.defaultView.scrollX;o.y+=t.ownerDocument.defaultView.scrollY;return o}function sS(t){return`ck-widget__resizer__handle-${t}`}function aS(t){const e=["top-left","top-right","bottom-right","bottom-left"];for(const n of e){if(t.classList.contains(sS(n))){return n}}}function lS(t){const e=t.split("-");const n={top:"bottom",bottom:"top",left:"right",right:"left"};return`${n[e[0]]}-${n[e[1]]}`}class cS extends Lc{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)=>t!==null&&e!==null));this.bind("_label").to(e,"proposedHandleHostWidth",e,"proposedHandleHostHeight",e,"proposedWidthPercents",((e,n,i)=>{if(t.unit==="px"){return`${e}×${n}`}else{return`${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=false}}class dS extends(mt()){constructor(t){super();this._options=t;this._viewResizerWrapper=null;this.set("isEnabled",true);this.set("isSelected",false);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=>{if(!this.state.proposedWidth&&!this.state.proposedWidthPercents){this._cleanup();t.stop()}}),{priority:"high"})}get state(){return this._state}show(){const t=this._options.editor.editing.view;t.change((t=>{t.removeClass("ck-hidden",this._viewResizerWrapper)}))}hide(){const t=this._options.editor.editing.view;t.change((t=>{t.addClass("ck-hidden",this._viewResizerWrapper)}))}attach(){const t=this;const e=this._options.viewElement;const n=this._options.editor.editing.view;n.change((n=>{const i=n.createUIElement("div",{class:"ck ck-reset_all ck-widget__resizer"},(function(e){const n=this.toDomElement(e);t._appendHandles(n);t._appendSizeUI(n);return n}));n.insert(n.createPositionAt(e,"end"),i);n.addClass("ck-widget_with-resizer",e);this._viewResizerWrapper=i;if(!this.isVisible){this.hide()}}));this.on("change:isVisible",(()=>{if(this.isVisible){this.show();this.redraw()}else{this.hide()}}))}begin(t){this._state=new iS(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);const n=this._options.editor.editing.view;n.change((t=>{const n=this._options.unit||"%";const i=(n==="%"?e.widthPercents:e.width)+n;t.setStyle("width",i,this._options.viewElement)}));const i=this._getHandleHost();const o=new dl(i);const r=Math.round(o.width);const s=Math.round(o.height);const a=new dl(i);e.width=Math.round(a.width);e.height=Math.round(a.height);this.redraw(o);this.state.update({...e,handleHostWidth:r,handleHostHeight:s})}commit(){const t=this._options.unit||"%";const 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(!gS(e)){return}const n=e.parentElement;const i=this._getHandleHost();const o=this._viewResizerWrapper;const r=[o.getStyle("width"),o.getStyle("height"),o.getStyle("left"),o.getStyle("top")];let s;if(n.isSameNode(i)){const e=t||new dl(i);s=[e.width+"px",e.height+"px",undefined,undefined]}else{s=[i.offsetWidth+"px",i.offsetHeight+"px",i.offsetLeft+"px",i.offsetTop+"px"]}if(Dt(r,s)!=="same"){this._options.editor.editing.view.change((t=>{t.setStyle({width:s[0],height:s[1],left:s[2],top:s[3]},o)}))}}containsHandle(t){return this._domResizerWrapper.contains(t)}static isResizeHandle(t){return t.classList.contains("ck-widget__resizer__handle")}_cleanup(){this._sizeView._dismiss();const t=this._options.editor.editing.view;t.change((t=>{t.setStyle("width",this._initialViewWidth,this._options.viewElement)}))}_proposeNewSize(t){const e=this.state;const n=hS(t);const i=this._options.isCentered?this._options.isCentered(this):true;const o={x:e._referenceCoordinates.x-(n.x+e.originalWidth),y:n.y-e.originalHeight-e._referenceCoordinates.y};if(i&&e.activeHandlePosition.endsWith("-right")){o.x=n.x-(e._referenceCoordinates.x+e.originalWidth)}if(i){o.x*=2}let r=Math.abs(e.originalWidth+o.x);let s=Math.abs(e.originalHeight+o.y);const a=r/e.aspectRatio>s?"width":"height";if(a=="width"){s=r/e.aspectRatio}else{r=s*e.aspectRatio}return{width:Math.round(r),height:Math.round(s),widthPercents:Math.min(Math.round(e.originalWidthPercents/e.originalWidth*r*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 n of e){t.appendChild(new zc({tag:"div",attributes:{class:`ck-widget__resizer__handle ${uS(n)}`}}).render())}}_appendSizeUI(t){this._sizeView=new cS;this._sizeView.render();t.appendChild(this._sizeView.element)}}function uS(t){return`ck-widget__resizer__handle-${t}`}function hS(t){return{x:t.pageX,y:t.pageY}}function gS(t){return t&&t.ownerDocument&&t.ownerDocument.contains(t)}var mS="Expected a function";function fS(t,e,n){var i=true,o=true;if(typeof t!="function"){throw new TypeError(mS)}if(at(n)){i="leading"in n?!!n.leading:i;o="trailing"in n?!!n.trailing:o}return If(t,e,{leading:i,maxWait:e,trailing:o})}const pS=fS;var bS=n(2263);var kS={injectType:"singletonStyleTag",attributes:{"data-cke":true}};kS.insert="head";kS.singleton=true;var wS=Sc()(bS.Z,kS);const AS=bS.Z.locals||{};class CS extends eu{static get pluginName(){return"WidgetResize"}init(){const t=this.editor.editing;const e=il.window.document;this.set("selectedResizer",null);this.set("_activeResizer",null);this._resizers=new Map;t.view.addObserver(bC);this._observer=new(Ja());this.listenTo(t.view.document,"mousedown",this._mouseDownListener.bind(this),{priority:"high"});this._observer.listenTo(e,"mousemove",this._mouseMoveListener.bind(this));this._observer.listenTo(e,"mouseup",this._mouseUpListener.bind(this));this._redrawSelectedResizerThrottled=pS((()=>this.redrawSelectedResizer()),200);this.editor.ui.on("update",this._redrawSelectedResizerThrottled);this.editor.model.document.on("change",(()=>{for(const[t,e]of this._resizers){if(!t.isAttached()){this._resizers.delete(t);e.destroy()}}}),{priority:"lowest"});this._observer.listenTo(il.window,"resize",this._redrawSelectedResizerThrottled);const n=this.editor.editing.view.document.selection;n.on("change",(()=>{const t=n.getSelectedElement();const e=this.getResizerByViewElement(t)||null;if(e){this.select(e)}else{this.deselect()}}))}redrawSelectedResizer(){if(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=true}deselect(){if(this.selectedResizer){this.selectedResizer.isSelected=false}this.selectedResizer=null}attachTo(t){const e=new dS(t);const n=this.editor.plugins;e.attach();if(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;const o=i.getSelectedElement();if(this.getResizerByViewElement(o)==e){this.select(e)}return 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;if(!dS.isResizeHandle(n)){return}this._activeResizer=this._getResizerByHandle(n)||null;if(this._activeResizer){this._activeResizer.begin(n);t.stop();e.preventDefault()}}_mouseMoveListener(t,e){if(this._activeResizer){this._activeResizer.updateSize(e)}}_mouseUpListener(){if(this._activeResizer){this._activeResizer.commit();this._activeResizer=null}}}var _S=n(390);var vS={injectType:"singletonStyleTag",attributes:{"data-cke":true}};vS.insert="head";vS.singleton=true;var yS=Sc()(_S.Z,vS);const xS=_S.Z.locals||{};class ES extends eu{static get pluginName(){return"DragDrop"}static get requires(){return[UE,ZD]}init(){const t=this.editor;const e=t.editing.view;this._draggedRange=null;this._draggingUid="";this._draggableElement=null;this._updateDropMarkerThrottled=pS((t=>this._updateDropMarker(t)),40);this._removeDropMarkerDelayed=NS((()=>this._removeDropMarker()),40);this._clearDraggableAttributesDelayed=NS((()=>this._clearDraggableAttributes()),40);e.addObserver(OE);e.addObserver(bC);this._setupDragging();this._setupContentInsertionIntegration();this._setupClipboardInputIntegration();this._setupDropMarker();this._setupDraggableAttributeHandling();this.listenTo(t,"change:isReadOnly",((t,e,n)=>{if(n){this.forceDisabled("readOnlyMode")}else{this.clearForceDisabled("readOnlyMode")}}));this.on("change:isEnabled",((t,e,n)=>{if(!n){this._finalizeDragging(false)}}));if(c.isAndroid){this.forceDisabled("noAndroidSupport")}}destroy(){if(this._draggedRange){this._draggedRange.detach();this._draggedRange=null}this._updateDropMarkerThrottled.cancel();this._removeDropMarkerDelayed.cancel();this._clearDraggableAttributesDelayed.cancel();return super.destroy()}_setupDragging(){const t=this.editor;const e=t.model;const n=e.document;const i=t.editing.view;const o=i.document;this.listenTo(o,"dragstart",((i,r)=>{const s=n.selection;if(r.target&&r.target.is("editableElement")){r.preventDefault();return}const a=r.target?zS(r.target):null;if(a){const n=t.editing.mapper.toModelElement(a);this._draggedRange=kb.fromRange(e.createRangeOn(n));if(t.plugins.has("WidgetToolbarRepository")){t.plugins.get("WidgetToolbarRepository").forceDisabled("dragDrop")}}else if(!o.selection.isCollapsed){const t=o.selection.getSelectedElement();if(!t||!cD(t)){this._draggedRange=kb.fromRange(s.getFirstRange())}}if(!this._draggedRange){r.preventDefault();return}this._draggingUid=I();r.dataTransfer.effectAllowed=this.isEnabled?"copyMove":"copy";r.dataTransfer.setData("application/ckeditor5-dragging-uid",this._draggingUid);const l=e.createSelection(this._draggedRange.toRange());const c=t.data.toView(e.getSelectedContent(l));o.fire("clipboardOutput",{dataTransfer:r.dataTransfer,content:c,method:"dragstart"});if(!this.isEnabled){this._draggedRange.detach();this._draggedRange=null;this._draggingUid=""}}),{priority:"low"});this.listenTo(o,"dragend",((t,e)=>{this._finalizeDragging(!e.dataTransfer.isCanceled&&e.dataTransfer.dropEffect=="move")}),{priority:"low"});this.listenTo(o,"dragenter",(()=>{if(!this.isEnabled){return}i.focus()}));this.listenTo(o,"dragleave",(()=>{this._removeDropMarkerDelayed()}));this.listenTo(o,"dragging",((e,n)=>{if(!this.isEnabled){n.dataTransfer.dropEffect="none";return}this._removeDropMarkerDelayed.cancel();const i=DS(t,n.targetRanges,n.target);if(!this._draggedRange){n.dataTransfer.dropEffect="copy"}if(!c.isGecko){if(n.dataTransfer.effectAllowed=="copy"){n.dataTransfer.dropEffect="copy"}else if(["all","copyMove"].includes(n.dataTransfer.effectAllowed)){n.dataTransfer.dropEffect="move"}}if(i){this._updateDropMarkerThrottled(i)}}),{priority:"low"})}_setupClipboardInputIntegration(){const t=this.editor;const e=t.editing.view;const n=e.document;this.listenTo(n,"clipboardInput",((e,n)=>{if(n.method!="drop"){return}const i=DS(t,n.targetRanges,n.target);this._removeDropMarker();if(!i){this._finalizeDragging(false);e.stop();return}if(this._draggedRange&&this._draggingUid!=n.dataTransfer.getData("application/ckeditor5-dragging-uid")){this._draggedRange.detach();this._draggedRange=null;this._draggingUid=""}const o=LS(n.dataTransfer)=="move";if(o&&this._draggedRange&&this._draggedRange.containsRange(i,true)){this._finalizeDragging(false);e.stop();return}n.targetRanges=[t.editing.mapper.toViewRange(i)]}),{priority:"high"})}_setupContentInsertionIntegration(){const t=this.editor.plugins.get(UE);t.on("contentInsertion",((t,e)=>{if(!this.isEnabled||e.method!=="drop"){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||e.method!=="drop"){return}const n=LS(e.dataTransfer)=="move";const i=!e.resultRange||!e.resultRange.isCollapsed;this._finalizeDragging(i&&n)}),{priority:"lowest"})}_setupDraggableAttributeHandling(){const t=this.editor;const e=t.editing.view;const n=e.document;this.listenTo(n,"mousedown",((i,o)=>{if(c.isAndroid||!o){return}this._clearDraggableAttributesDelayed.cancel();let r=zS(o.target);if(c.isBlink&&!t.isReadOnly&&!r&&!n.selection.isCollapsed){const t=n.selection.getSelectedElement();if(!t||!cD(t)){r=n.selection.editableElement}}if(r){e.change((t=>{t.setAttribute("draggable","true",r)}));this._draggableElement=t.editing.mapper.toModelElement(r)}}));this.listenTo(n,"mouseup",(()=>{if(!c.isAndroid){this._clearDraggableAttributesDelayed()}}))}_clearDraggableAttributes(){const t=this.editor.editing;t.view.change((e=>{if(this._draggableElement&&this._draggableElement.root.rootName!="$graveyard"){e.removeAttribute("draggable",t.mapper.toViewElement(this._draggableElement))}this._draggableElement=null}))}_setupDropMarker(){const t=this.editor;t.conversion.for("editingDowncast").markerToHighlight({model:"drop-target",view:{classes:["ck-clipboard-drop-target-range"]}});t.conversion.for("editingDowncast").markerToElement({model:"drop-target",view:(e,{writer:n})=>{const i=t.model.schema.checkChild(e.markerRange.start,"$text");if(!i){return}return n.createUIElement("span",{class:"ck ck-clipboard-drop-target-position"},(function(t){const e=this.toDomElement(t);e.append("⁠",t.createElement("span"),"⁠");return e}))}})}_updateDropMarker(t){const e=this.editor;const n=e.model.markers;e.model.change((e=>{if(n.has("drop-target")){if(!n.get("drop-target").getRange().isEqual(t)){e.updateMarker("drop-target",{range:t})}}else{e.addMarker("drop-target",{range:t,usingOperation:false,affectsData:false})}}))}_removeDropMarker(){const t=this.editor.model;this._removeDropMarkerDelayed.cancel();this._updateDropMarkerThrottled.cancel();if(t.markers.has("drop-target")){t.change((t=>{t.removeMarker("drop-target")}))}}_finalizeDragging(t){const e=this.editor;const n=e.model;this._removeDropMarker();this._clearDraggableAttributes();if(e.plugins.has("WidgetToolbarRepository")){e.plugins.get("WidgetToolbarRepository").clearForceDisabled("dragDrop")}this._draggingUid="";if(!this._draggedRange){return}if(t&&this.isEnabled){n.deleteContent(n.createSelection(this._draggedRange),{doNotAutoparagraph:true})}this._draggedRange.detach();this._draggedRange=null}}function DS(t,e,n){const i=t.model;const o=t.editing.mapper;let r=null;const s=e?e[0].start:null;if(n.is("uiElement")){n=n.parent}r=SS(t,n);if(r){return r}const a=BS(t,n);const l=s?o.toModelPosition(s):null;if(!l){return TS(t,a)}r=IS(t,l,a);if(r){return r}r=i.schema.getNearestSelectionRange(l,c.isGecko?"forward":"backward");if(r){return r}return MS(t,l.parent)}function SS(t,e){const n=t.model;const i=t.editing.mapper;if(cD(e)){return n.createRangeOn(i.toModelElement(e))}if(!e.is("editableElement")){const t=e.findAncestor((t=>cD(t)||t.is("editableElement")));if(cD(t)){return n.createRangeOn(i.toModelElement(t))}}return null}function TS(t,e){const n=t.model;const i=n.schema;const o=n.createPositionAt(e,0);return i.getNearestSelectionRange(o,"forward")}function IS(t,e,n){const i=t.model;if(!i.schema.checkChild(n,"$block")){return null}const o=i.createPositionAt(n,0);const r=e.path.slice(0,o.path.length);const s=i.createPositionFromPath(e.root,r);const a=s.nodeAfter;if(a&&i.schema.isObject(a)){return i.createRangeOn(a)}return null}function MS(t,e){const n=t.model;let i=e;while(i){if(n.schema.isObject(i)){return n.createRangeOn(i)}i=i.parent}return null}function BS(t,e){const n=t.editing.mapper;const i=t.editing.view;const o=n.toModelElement(e);if(o){return o}const r=i.createPositionBefore(e);const s=n.findMappedViewAncestor(r);return n.toModelElement(s)}function LS(t){if(c.isGecko){return t.dropEffect}return["all","copyMove"].includes(t.effectAllowed)?"move":"copy"}function NS(t,e){let n;function i(...o){i.cancel();n=setTimeout((()=>t(...o)),e)}i.cancel=()=>{clearTimeout(n)};return i}function zS(t){if(t.is("editableElement")){return null}if(t.hasClass("ck-widget__selection-handle")){return t.findAncestor(cD)}if(cD(t)){return t}const e=t.findAncestor((t=>cD(t)||t.is("editableElement")));if(cD(e)){return e}return null}class PS extends eu{static get pluginName(){return"PastePlainText"}static get requires(){return[UE]}init(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=n.document;const o=e.document.selection;let r=false;n.addObserver(OE);this.listenTo(i,"keydown",((t,e)=>{r=e.shiftKey}));t.plugins.get(UE).on("contentInsertion",((t,n)=>{if(!r&&!OS(n.content,e.schema)){return}e.change((t=>{const i=Array.from(o.getAttributes()).filter((([t])=>e.schema.getAttributeProperties(t).isFormatting));if(!o.isCollapsed){e.deleteContent(o,{doNotAutoparagraph:true})}i.push(...o.getAttributes());const r=t.createRangeIn(n.content);for(const e of r.getItems()){if(e.is("$textProxy")){t.setAttributes(i,e)}}}))}))}}function OS(t,e){if(t.childCount>1){return false}const n=t.getChild(0);if(e.isObject(n)){return false}return Array.from(n.getAttributeKeys()).length==0}class RS extends eu{static get pluginName(){return"Clipboard"}static get requires(){return[UE,ES,PS]}}class VS extends iu{constructor(t){super(t);this._stack=[];this._createdBatches=new WeakSet;this.refresh();this.listenTo(t.data,"set",((t,e)=>{e[1]={...e[1]};const n=e[1];if(!n.batchType){n.batchType={isUndoable:false}}}),{priority:"high"});this.listenTo(t.data,"set",((t,e)=>{const n=e[1];if(!n.batchType.isUndoable){this.clearStack()}}))}refresh(){this.isEnabled=this._stack.length>0}addBatch(t){const e=this.editor.model.document.selection;const 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;const o=i.document;const r=[];const s=t.map((t=>t.getTransformedByOperations(n)));const a=s.flat();for(const t of s){const e=t.filter((t=>t.root!=o.graveyard)).filter((t=>!FS(t,a)));if(!e.length){continue}jS(e);r.push(e[0])}if(r.length){i.change((t=>{t.setSelection(r,{backward:e})}))}}_undo(t,e){const n=this.editor.model;const 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;const r=Array.from(i.history.getOperations(o));const s=Jw([t.getReversed()],r,{useRelations:true,document:this.editor.model.document,padWithNoOps:false,forceWeakRemove:true});const a=s.operationsA;for(const o of a){e.addOperation(o);n.applyOperation(o);i.history.setOperationAsUndone(t,o)}}}}function jS(t){t.sort(((t,e)=>t.start.isBefore(e.start)?-1:1));for(let e=1;e<t.length;e++){const n=t[e-1];const i=n.getJoined(t[e],true);if(i){e--;t.splice(e,2,i)}}}function FS(t,e){return e.some((e=>e!==t&&e.containsRange(t,true)))}class HS extends VS{execute(t=null){const e=t?this._stack.findIndex((e=>e.batch==t)):this._stack.length-1;const n=this._stack.splice(e,1)[0];const i=this.editor.model.createBatch({isUndo:true});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 US extends VS{execute(){const t=this._stack.pop();const e=this.editor.model.createBatch({isUndo:true});this.editor.model.enqueueChange(e,(()=>{const n=t.batch.operations[t.batch.operations.length-1];const i=n.baseVersion+1;const o=this.editor.model.document.history.getOperations(i);this._restoreSelection(t.selection.ranges,t.selection.isBackward,o);this._undo(t.batch,e)}));this.refresh()}}class WS extends eu{static get pluginName(){return"UndoEditing"}constructor(t){super(t);this._batchRegistry=new WeakSet}init(){const t=this.editor;this._undoCommand=new HS(t);this._redoCommand=new US(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;const o=this._redoCommand._createdBatches.has(i);const r=this._undoCommand._createdBatches.has(i);const s=this._batchRegistry.has(i);if(s){return}this._batchRegistry.add(i);if(!i.isUndoable){return}if(o){this._undoCommand.addBatch(i)}else if(!r){this._undoCommand.addBatch(i);this._redoCommand.clearStack()}}),{priority:"highest"});this.listenTo(this._undoCommand,"revert",((t,e,n)=>{this._redoCommand.addBatch(n)}));t.keystrokes.set("CTRL+Z","undo");t.keystrokes.set("CTRL+Y","redo");t.keystrokes.set("CTRL+SHIFT+Z","redo")}}const qS='$${Delta.CKEditor.Icon[40]}$$';const GS='$${Delta.CKEditor.Icon[41]}$$';class $S extends eu{static get pluginName(){return"UndoUI"}init(){const t=this.editor;const e=t.locale;const n=t.t;const i=e.uiLanguageDirection=="ltr"?qS:GS;const o=e.uiLanguageDirection=="ltr"?GS:qS;this._addButton("undo",n("Undo"),"CTRL+Z",i);this._addButton("redo",n("Redo"),"CTRL+Y",o)}_addButton(t,e,n,i){const o=this.editor;o.ui.componentFactory.add(t,(r=>{const s=o.commands.get(t);const a=new kd(r);a.set({label:e,icon:i,keystroke:n,tooltip:true});a.bind("isEnabled").to(s,"isEnabled");this.listenTo(a,"execute",(()=>{o.execute(t);o.editing.view.focus()}));return a}))}}class KS extends eu{static get requires(){return[WS,$S]}static get pluginName(){return"Undo"}}function YS(t){return t.createContainerElement("span",{class:"image-inline"},t.createEmptyElement("img"))}function ZS(t){return t.createContainerElement("figure",{class:"image"},[t.createEmptyElement("img"),t.createSlot()])}function QS(t,e){const n=t.plugins.get("ImageUtils");const i=t.plugins.has("ImageInlineEditing")&&t.plugins.has("ImageBlockEditing");return t=>{if(!n.isInlineImageView(t)){return null}if(!i){return o(t)}const r=t.getStyle("display")=="block"||t.findAncestor(n.isBlockImageView)?"imageBlock":"imageInline";if(r!==e){return null}return o(t)};function o(t){const e={name:true};if(t.hasAttribute("src")){e.attributes=["src"]}return e}}function JS(t,e){const n=dc(e.getSelectedBlocks());if(!n||t.isObject(n)){return"imageBlock"}if(n.isEmpty&&n.name!="listItem"){return"imageBlock"}return"imageInline"}class XS extends eu{static get pluginName(){return"ImageUtils"}isImage(t){return this.isInlineImage(t)||this.isBlockImage(t)}isInlineImageView(t){return!!t&&t.is("element","img")}isBlockImageView(t){return!!t&&t.is("element","figure")&&t.hasClass("image")}insertImage(t={},e=null,n=null){const i=this.editor;const o=i.model;const r=o.document.selection;n=iT(i,e||r,n);t={...Object.fromEntries(r.getAttributes()),...t};for(const e in t){if(!o.schema.checkAttribute(n,e)){delete t[e]}}return o.change((i=>{const r=i.createElement(n,t);o.insertObject(r,e,null,{setSelection:"on",findOptimalPosition:!e&&n!="imageInline"});if(r.parent){return r}return null}))}getClosestSelectedImageWidget(t){const e=t.getFirstPosition();if(!e){return null}const n=t.getSelectedElement();if(n&&this.isImageWidget(n)){return n}let i=e.parent;while(i){if(i.is("element")&&this.isImageWidget(i)){return i}i=i.parent}return null}getClosestSelectedImageElement(t){const e=t.getSelectedElement();return this.isImage(e)?e:t.getFirstPosition().findAncestor("imageBlock")}isImageAllowed(){const t=this.editor.model;const e=t.document.selection;return tT(this.editor,e)&&eT(e)}toImageWidget(t,e,n){e.setCustomProperty("image",true,t);const i=()=>{const e=this.findViewImgElement(t);const i=e.getAttribute("alt");return i?`${i} ${n}`:n};return dD(t,e,{label:i})}isImageWidget(t){return!!t.getCustomProperty("image")&&cD(t)}isBlockImage(t){return!!t&&t.is("element","imageBlock")}isInlineImage(t){return!!t&&t.is("element","imageInline")}findViewImgElement(t){if(this.isInlineImageView(t)){return t}const e=this.editor.editing.view;for(const{item:n}of e.createRangeIn(t)){if(this.isInlineImageView(n)){return n}}}}function tT(t,e){const n=iT(t,e);if(n=="imageBlock"){const n=nT(e,t.model);if(t.model.schema.checkChild(n,"imageBlock")){return true}}else if(t.model.schema.checkChild(e.focus,"imageInline")){return true}return false}function eT(t){return[...t.focus.getAncestors()].every((t=>!t.is("element","imageBlock")))}function nT(t,e){const n=bD(t,e);const i=n.start.parent;if(i.isEmpty&&!i.is("element","$root")){return i.parent}return i}function iT(t,e,n){const i=t.model.schema;const o=t.config.get("image.insert.type");if(!t.plugins.has("ImageBlockEditing")){return"imageInline"}if(!t.plugins.has("ImageInlineEditing")){return"imageBlock"}if(n){return n}if(o==="inline"){return"imageInline"}if(o==="block"){return"imageBlock"}if(e.is("selection")){return JS(i,e)}return i.checkChild(e,"imageInline")?"imageInline":"imageBlock"}const oT=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 rT extends eu{static get requires(){return[RS,XS,KS,oE]}static get pluginName(){return"AutoImage"}constructor(t){super(t);this._timeoutId=null;this._positionToInsert=null}init(){const t=this.editor;const e=t.model.document;this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",(()=>{const t=e.selection.getFirstRange();const n=sA.fromPosition(t.start);n.stickiness="toPrevious";const i=sA.fromPosition(t.end);i.stickiness="toNext";e.once("change:data",(()=>{this._embedImageBetweenPositions(n,i);n.detach();i.detach()}),{priority:"high"})}));t.commands.get("undo").on("execute",(()=>{if(this._timeoutId){il.window.clearTimeout(this._timeoutId);this._positionToInsert.detach();this._timeoutId=null;this._positionToInsert=null}}),{priority:"high"})}_embedImageBetweenPositions(t,e){const n=this.editor;const i=new kb(t,e);const o=i.getWalker({ignoreElementEnd:true});const r=Object.fromEntries(n.model.document.selection.getAttributes());const s=this.editor.plugins.get("ImageUtils");let a="";for(const t of o){if(t.item.is("$textProxy")){a+=t.item.data}}a=a.trim();if(!a.match(oT)){i.detach();return}this._positionToInsert=sA.fromPosition(t);this._timeoutId=il.window.setTimeout((()=>{const t=n.commands.get("insertImage");if(!t.isEnabled){i.detach();return}n.model.change((t=>{this._timeoutId=null;t.remove(i);i.detach();let e;if(this._positionToInsert.root.rootName!=="$graveyard"){e=this._positionToInsert.toPosition()}s.insertImage({...r,src:a},e);this._positionToInsert.detach();this._positionToInsert=null}));n.plugins.get("Delete").requestUndoOnBackspace()}),100)}}function sT(t,e,n){var i=t.length;n=n===undefined?i:n;return!e&&n>=i?t:Ch(t,e,n)}const aT=sT;var lT="\\ud800-\\udfff",cT="\\u0300-\\u036f",dT="\\ufe20-\\ufe2f",uT="\\u20d0-\\u20ff",hT=cT+dT+uT,gT="\\ufe0e\\ufe0f";var mT="\\u200d";var fT=RegExp("["+mT+lT+hT+gT+"]");function pT(t){return fT.test(t)}const bT=pT;function kT(t){return t.split("")}const wT=kT;var AT="\\ud800-\\udfff",CT="\\u0300-\\u036f",_T="\\ufe20-\\ufe2f",vT="\\u20d0-\\u20ff",yT=CT+_T+vT,xT="\\ufe0e\\ufe0f";var ET="["+AT+"]",DT="["+yT+"]",ST="\\ud83c[\\udffb-\\udfff]",TT="(?:"+DT+"|"+ST+")",IT="[^"+AT+"]",MT="(?:\\ud83c[\\udde6-\\uddff]){2}",BT="[\\ud800-\\udbff][\\udc00-\\udfff]",LT="\\u200d";var NT=TT+"?",zT="["+xT+"]?",PT="(?:"+LT+"(?:"+[IT,MT,BT].join("|")+")"+zT+NT+")*",OT=zT+NT+PT,RT="(?:"+[IT+DT+"?",DT,MT,BT,ET].join("|")+")";var VT=RegExp(ST+"(?="+ST+")|"+RT+OT,"g");function jT(t){return t.match(VT)||[]}const FT=jT;function HT(t){return bT(t)?FT(t):wT(t)}const UT=HT;function WT(t){return function(e){e=dh(e);var n=bT(e)?UT(e):undefined;var i=n?n[0]:e.charAt(0);var o=n?aT(n,1).join(""):e.slice(1);return i[t]()+o}}const qT=WT;var GT=qT("toUpperCase");const $T=GT;const KT=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g;const YT=/^(?:(?:https?|ftps?|mailto):|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))/i;const ZT=/^[\S]+@((?![-_])(?:[-\w\u00a1-\uffff]{0,63}[^-_]\.))+(?:[a-z\u00a1-\uffff]{2,})$/i;const QT=/^((\w+:(\/{2,})?)|(\W))/i;const JT="Ctrl+K";function XT(t){return t.is("attributeElement")&&!!t.getCustomProperty("link")}function tI(t,{writer:e}){const n=e.createAttributeElement("a",{href:t},{priority:5});e.setCustomProperty("link",true,n);return n}function eI(t){t=String(t);return nI(t)?t:"#"}function nI(t){const e=t.replace(KT,"");return e.match(YT)}function iI(t,e){const n={"Open in a new tab":t("Open in a new tab"),Downloadable:t("Downloadable")};e.forEach((t=>{if(t.label&&n[t.label]){t.label=n[t.label]}return t}));return e}function oI(t){const e=[];if(t){for(const[n,i]of Object.entries(t)){const t=Object.assign({},i,{id:`link${$T(n)}`});e.push(t)}}return e}function rI(t,e){if(!t){return false}return e.checkAttribute(t.name,"linkHref")}function sI(t){return ZT.test(t)}function aI(t,e){const n=sI(t)?"mailto:":e;const i=!!n&&!lI(t);return t&&i?n+t:t}function lI(t){return QT.test(t)}function cI(t){window.open(t,"_blank","noopener")}const dI=4;const uI=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");const hI=2;class gI extends eu{static get requires(){return[oE]}static get pluginName(){return"AutoLink"}init(){const t=this.editor;const e=t.model.document.selection;e.on("change:range",(()=>{this.isEnabled=!e.anchor.parent.is("element","codeBlock")}));this._enableTypingHandling()}afterInit(){this._enableEnterHandling();this._enableShiftEnterHandling()}_enableTypingHandling(){const t=this.editor;const e=new aE(t.model,(t=>{if(!mI(t)){return}const e=fI(t.substr(0,t.length-1));if(e){return{url:e}}}));e.on("matched:data",((e,n)=>{const{batch:i,range:o,url:r}=n;if(!i.isTyping){return}const s=o.end.getShiftedBy(-1);const a=s.getShiftedBy(-r.length);const l=t.model.createRange(a,s);this._applyAutoLink(r,l)}));e.bind("isEnabled").to(this)}_enableEnterHandling(){const t=this.editor;const e=t.model;const n=t.commands.get("enter");if(!n){return}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;const e=t.model;const n=t.commands.get("shiftEnter");if(!n){return}n.on("execute",(()=>{const t=e.document.selection.getFirstPosition();const n=e.createRange(e.createPositionAt(t.parent,0),t.getShiftedBy(-1));this._checkAndApplyAutoLinkOnRange(n)}))}_checkAndApplyAutoLinkOnRange(t){const e=this.editor.model;const{text:n,range:i}=sE(t,e);const o=fI(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;const i=this.editor.config.get("link.defaultProtocol");const o=aI(t,i);if(!this.isEnabled||!pI(e,n)||!lI(o)||bI(e)){return}this._persistAutoLink(o,e)}_persistAutoLink(t,e){const n=this.editor.model;const i=this.editor.plugins.get("Delete");n.enqueueChange((o=>{o.setAttribute("linkHref",t,e);n.enqueueChange((()=>{i.requestUndoOnBackspace()}))}))}}function mI(t){return t.length>dI&&t[t.length-1]===" "&&t[t.length-2]!==" "}function fI(t){const e=uI.exec(t);return e?e[hI]:null}function pI(t,e){return e.schema.checkAttributeInSelection(e.createSelection(t),"linkHref")}function bI(t){const e=t.start.nodeAfter;return e&&e.hasAttribute("linkHref")}class kI extends eu{static get pluginName(){return"Autosave"}static get requires(){return[b_]}constructor(t){super(t);const e=t.config.get("autosave")||{};const n=e.waitingTime||1e3;this.set("state","synchronized");this._debouncedSave=If(this._save.bind(this),n);this._lastDocumentVersion=t.model.document.version;this._savePromise=null;this._domEmitter=Object.create(Ja);this._config=e;this._pendingActions=t.plugins.get(b_);this._makeImmediateSave=false}init(){const t=this.editor;const e=t.model.document;this.listenTo(t,"ready",(()=>{this.listenTo(e,"change:data",((t,e)=>{if(!this._saveCallbacks.length){return}if(!e.isLocal){return}if(this.state==="synchronized"){this.state="waiting";this._setPendingAction()}if(this.state==="waiting"){this._debouncedSave()}}))}));this.listenTo(t,"destroy",(()=>this._flush()),{priority:"highest"});this._domEmitter.listenTo(window,"beforeunload",((t,e)=>{if(this._pendingActions.hasAny){e.returnValue=this._pendingActions.first.message}}))}destroy(){this._domEmitter.stopListening();super.destroy()}save(){this._debouncedSave.cancel();return this._save()}_flush(){this._debouncedSave.flush()}_save(){if(this._savePromise){this._makeImmediateSave=this.editor.model.document.version>this._lastDocumentVersion;return this._savePromise}this._setPendingAction();this.state="saving";this._lastDocumentVersion=this.editor.model.document.version;this._savePromise=Promise.resolve().then((()=>Promise.all(this._saveCallbacks.map((t=>t(this.editor)))))).finally((()=>{this._savePromise=null})).then((()=>{if(this._makeImmediateSave){this._makeImmediateSave=false;return this._save()}else{if(this.editor.model.document.version>this._lastDocumentVersion){this.state="waiting";this._debouncedSave()}else{this.state="synchronized";this._pendingActions.remove(this._action);this._action=null}}})).catch((t=>{this.state="error";this.state="saving";this._debouncedSave();throw t}));return this._savePromise}_setPendingAction(){const t=this.editor.t;if(!this._action){this._action=this._pendingActions.add(t("Saving changes"))}}get _saveCallbacks(){const t=[];if(this.adapter&&this.adapter.save){t.push(this.adapter.save)}if(this._config.save){t.push(this._config.save)}return t}}x(kI,mt);class wI extends(mt()){constructor(){super();const t=new window.FileReader;this._reader=t;this._data=undefined;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;this.total=t.size;return 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 AI extends eu{static get pluginName(){return"FileRepository"}static get requires(){return[b_]}init(){this.loaders=new cc;this.loaders.on("change",(()=>this._updatePendingAction()));this._loadersMap=new Map;this._pendingAction=null;this.set("uploaded",0);this.set("uploadTotal",null);this.bind("uploadedPercent").to(this,"uploaded",this,"uploadTotal",((t,e)=>e?t/e*100:0))}getLoader(t){return this._loadersMap.get(t)||null}createLoader(t){if(!this.createUploadAdapter){P("filerepository-no-upload-adapter");return null}const e=new CI(Promise.resolve(t),this.createUploadAdapter);this.loaders.add(e);this._loadersMap.set(t,e);if(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){if(e.uploadTotal){t+=e.uploadTotal}}this.uploadTotal=t}));return e}destroyLoader(t){const e=t instanceof CI?t:this.getLoader(t);e._destroy();this.loaders.remove(e);this._loadersMap.forEach(((t,n)=>{if(t===e){this._loadersMap.delete(n)}}))}_updatePendingAction(){const t=this.editor.plugins.get(b_);if(this.loaders.length){if(!this._pendingAction){const e=this.editor.t;const 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 CI extends(mt()){constructor(t,e){super();this.id=I();this._filePromiseWrapper=this._createFilePromiseWrapper(t);this._adapter=e(this);this._reader=new wI;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(){if(!this._filePromiseWrapper){return Promise.resolve(null)}else{return this._filePromiseWrapper.promise.then((t=>this._filePromiseWrapper?t:null))}}get data(){return this._reader.data}read(){if(this.status!="idle"){throw new z("filerepository-read-wrong-status",this)}this.status="reading";return this.file.then((t=>this._reader.read(t))).then((t=>{if(this.status!=="reading"){throw this.status}this.status="idle";return t})).catch((t=>{if(t==="aborted"){this.status="aborted";throw"aborted"}this.status="error";throw this._reader.error?this._reader.error:t}))}upload(){if(this.status!="idle"){throw new z("filerepository-upload-wrong-status",this)}this.status="uploading";return this.file.then((()=>this._adapter.upload())).then((t=>{this.uploadResponse=t;this.status="idle";return t})).catch((t=>{if(this.status==="aborted"){throw"aborted"}this.status="error";throw t}))}abort(){const t=this.status;this.status="aborted";if(!this._filePromiseWrapper.isFulfilled){this._filePromiseWrapper.promise.catch((()=>{}));this._filePromiseWrapper.rejecter("aborted")}else if(t=="reading"){this._reader.abort()}else if(t=="uploading"&&this._adapter.abort){this._adapter.abort()}this._destroy()}_destroy(){this._filePromiseWrapper=undefined;this._reader=undefined;this._adapter=undefined;this.uploadResponse=undefined}_createFilePromiseWrapper(t){const e={};e.promise=new Promise(((n,i)=>{e.rejecter=i;e.isFulfilled=false;t.then((t=>{e.isFulfilled=true;n(t)})).catch((t=>{e.isFulfilled=true;i(t)}))}));return e}}class _I extends eu{static get requires(){return[AI]}static get pluginName(){return"Base64UploadAdapter"}init(){this.editor.plugins.get(AI).createUploadAdapter=t=>new vI(t)}}class vI{constructor(t){this.loader=t}upload(){return new Promise(((t,e)=>{const n=this.reader=new window.FileReader;n.addEventListener("load",(()=>{t({default:n.result})}));n.addEventListener("error",(t=>{e(t)}));n.addEventListener("abort",(()=>{e()}));this.loader.file.then((t=>{n.readAsDataURL(t)}))}))}abort(){this.reader.abort()}}class yI extends iu{refresh(){this.value=this._getValue();this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model;const n=e.schema;const i=e.document.selection;const o=Array.from(i.getSelectedBlocks());const r=t.forceValue===undefined?!this.value:t.forceValue;e.change((t=>{if(!r){this._removeQuote(t,o.filter(xI))}else{const e=o.filter((t=>xI(t)||DI(n,t)));this._applyQuote(t,e)}}))}_getValue(){const t=this.editor.model.document.selection;const e=dc(t.getSelectedBlocks());return!!(e&&xI(e))}_checkEnabled(){if(this.value){return true}const t=this.editor.model.document.selection;const e=this.editor.model.schema;const n=dc(t.getSelectedBlocks());if(!n){return false}return DI(e,n)}_removeQuote(t,e){EI(t,e).reverse().forEach((e=>{if(e.start.isAtStart&&e.end.isAtEnd){t.unwrap(e.start.parent);return}if(e.start.isAtStart){const n=t.createPositionBefore(e.start.parent);t.move(e,n);return}if(!e.end.isAtEnd){t.split(e.end)}const n=t.createPositionAfter(e.end.parent);t.move(e,n)}))}_applyQuote(t,e){const n=[];EI(t,e).reverse().forEach((e=>{let i=xI(e.start);if(!i){i=t.createElement("blockQuote");t.wrap(e,i)}n.push(i)}));n.reverse().reduce(((e,n)=>{if(e.nextSibling==n){t.merge(t.createPositionAfter(e));return e}return n}))}}function xI(t){return t.parent.name=="blockQuote"?t.parent:null}function EI(t,e){let n;let i=0;const o=[];while(i<e.length){const r=e[i];const s=e[i+1];if(!n){n=t.createPositionBefore(r)}if(!s||r.nextSibling!=s){o.push(t.createRange(n,t.createPositionAfter(r)));n=null}i++}return o}function DI(t,e){const n=t.checkChild(e.parent,"blockQuote");const i=t.checkChild(["$root","blockQuote"],e);return n&&i}class SI extends eu{static get pluginName(){return"BlockQuoteEditing"}static get requires(){return[YE,oE]}init(){const t=this.editor;const e=t.model.schema;t.commands.add("blockQuote",new yI(t));e.register("blockQuote",{inheritAllFrom:"$container"});t.conversion.elementToElement({model:"blockQuote",view:"blockquote"});t.model.document.registerPostFixer((n=>{const i=t.model.document.differ.getChanges();for(const t of i){if(t.type=="insert"){const i=t.position.nodeAfter;if(!i){continue}if(i.is("element","blockQuote")&&i.isEmpty){n.remove(i);return true}else if(i.is("element","blockQuote")&&!e.checkChild(t.position,i)){n.unwrap(i);return true}else 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)){n.unwrap(i);return true}}}}else if(t.type=="remove"){const e=t.position.parent;if(e.is("element","blockQuote")&&e.isEmpty){n.remove(e);return true}}}return false}));const n=this.editor.editing.view.document;const i=t.model.document.selection;const o=t.commands.get("blockQuote");this.listenTo(n,"enter",((e,n)=>{if(!i.isCollapsed||!o.value){return}const r=i.getLastPosition().parent;if(r.isEmpty){t.execute("blockQuote");t.editing.view.scrollToTheSelection();n.preventDefault();e.stop()}}),{context:"blockquote"});this.listenTo(n,"delete",((e,n)=>{if(n.direction!="backward"||!i.isCollapsed||!o.value){return}const r=i.getLastPosition().parent;if(r.isEmpty&&!r.previousSibling){t.execute("blockQuote");t.editing.view.scrollToTheSelection();n.preventDefault();e.stop()}}),{context:"blockquote"})}}var TI=n(636);var II={injectType:"singletonStyleTag",attributes:{"data-cke":true}};II.insert="head";II.singleton=true;var MI=Sc()(TI.Z,II);const BI=TI.Z.locals||{};class LI extends eu{static get pluginName(){return"BlockQuoteUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("blockQuote",(n=>{const i=t.commands.get("blockQuote");const o=new kd(n);o.set({label:e("Block quote"),icon:J_.quote,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute("blockQuote");t.editing.view.focus()}));return o}))}}class NI extends eu{static get requires(){return[SI,LI]}static get pluginName(){return"BlockQuote"}}class zI extends iu{constructor(t,e){super(t);this.attributeKey=e}refresh(){const t=this.editor.model;const e=t.document;this.value=this._getValueFromFirstAllowedNode();this.isEnabled=t.schema.checkAttributeInSelection(e.selection,this.attributeKey)}execute(t={}){const e=this.editor.model;const n=e.document;const i=n.selection;const o=t.forceValue===undefined?!this.value:t.forceValue;e.change((t=>{if(i.isCollapsed){if(o){t.setSelectionAttribute(this.attributeKey,true)}else{t.removeSelectionAttribute(this.attributeKey)}}else{const n=e.schema.getValidRanges(i.getRanges(),this.attributeKey);for(const e of n){if(o){t.setAttribute(this.attributeKey,o,e)}else{t.removeAttribute(this.attributeKey,e)}}}}))}_getValueFromFirstAllowedNode(){const t=this.editor.model;const e=t.schema;const 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 false}}const PI="bold";class OI extends eu{static get pluginName(){return"BoldEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:PI});t.model.schema.setAttributeProperties(PI,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:PI,view:"strong",upcastAlso:["b",t=>{const e=t.getStyle("font-weight");if(!e){return null}if(e=="bold"||Number(e)>=600){return{name:true,styles:["font-weight"]}}return null}]});t.commands.add(PI,new zI(t,PI));t.keystrokes.set("CTRL+B",PI)}}const RI="bold";class VI extends eu{static get pluginName(){return"BoldUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(RI,(n=>{const i=t.commands.get(RI);const o=new kd(n);o.set({label:e("Bold"),icon:J_.bold,keystroke:"CTRL+B",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(RI);t.editing.view.focus()}));return o}))}}class jI extends eu{static get requires(){return[OI,VI]}static get pluginName(){return"Bold"}}const FI="code";const HI="ck-code_selected";class UI extends eu{static get pluginName(){return"CodeEditing"}static get requires(){return[lE]}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:FI});t.model.schema.setAttributeProperties(FI,{isFormatting:true,copyOnEnter:false});t.conversion.attributeToElement({model:FI,view:"code",upcastAlso:{styles:{"word-wrap":"break-word"}}});t.commands.add(FI,new zI(t,FI));t.plugins.get(lE).registerAttribute(FI);IE(t,FI,"code",HI)}}const WI='$${Delta.CKEditor.Icon[42]}$$';var qI=n(8180);var GI={injectType:"singletonStyleTag",attributes:{"data-cke":true}};GI.insert="head";GI.singleton=true;var $I=Sc()(qI.Z,GI);const KI=qI.Z.locals||{};const YI="code";class ZI extends eu{static get pluginName(){return"CodeUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(YI,(n=>{const i=t.commands.get(YI);const o=new kd(n);o.set({label:e("Code"),icon:WI,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(YI);t.editing.view.focus()}));return o}))}}class QI extends eu{static get requires(){return[UI,ZI]}static get pluginName(){return"Code"}}const JI={block:[{model:"codeBlock",view:"pre"},{model:"paragraph",view:"p"},{model:"blockQuote",view:"blockquote"},{model:"listItem",view:"li"},{model:"pageBreak",view:"div"},{model:"rawHtml",view:"div"},{model:"table",view:"table"},{model:"tableRow",view:"tr"},{model:"tableCell",view:"td"},{model:"tableCell",view:"th"},{model:"caption",view:"caption"},{model:"caption",view:"figcaption"},{model:"imageBlock",view:"img"},{model:"imageInline",view:"img"},{model:"htmlP",view:"p",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlBlockquote",view:"blockquote",modelSchema:{inheritAllFrom:"$container"}},{model:"htmlTable",view:"table",modelSchema:{allowWhere:"$block",isBlock:true}},{model:"htmlTbody",view:"tbody",modelSchema:{allowIn:"htmlTable",isBlock:false}},{model:"htmlThead",view:"thead",modelSchema:{allowIn:"htmlTable",isBlock:false}},{model:"htmlTfoot",view:"tfoot",modelSchema:{allowIn:"htmlTable",isBlock:false}},{model:"htmlCaption",view:"caption",modelSchema:{allowIn:"htmlTable",allowChildren:"$text",isBlock:false}},{model:"htmlColgroup",view:"colgroup",modelSchema:{allowIn:"htmlTable",allowChildren:"col",isBlock:false}},{model:"htmlCol",view:"col",modelSchema:{allowIn:"htmlColgroup",isBlock:false}},{model:"htmlTr",view:"tr",modelSchema:{allowIn:["htmlTable","htmlThead","htmlTbody"],isLimit:true}},{model:"htmlTd",view:"td",modelSchema:{allowIn:"htmlTr",allowContentOf:"$container",isLimit:true,isBlock:false}},{model:"htmlTh",view:"th",modelSchema:{allowIn:"htmlTr",allowContentOf:"$container",isLimit:true,isBlock:false}},{model:"htmlFigure",view:"figure",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlFigcaption",view:"figcaption",modelSchema:{allowIn:"htmlFigure",allowChildren:"$text",isBlock:false}},{model:"htmlAddress",view:"address",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlAside",view:"aside",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlMain",view:"main",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlDetails",view:"details",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlSummary",view:"summary",modelSchema:{allowChildren:"$text",allowIn:"htmlDetails",isBlock:false}},{model:"htmlDiv",view:"div",paragraphLikeModel:"htmlDivParagraph",modelSchema:{inheritAllFrom:"$container"}},{model:"htmlFieldset",view:"fieldset",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlLegend",view:"legend",modelSchema:{allowIn:"htmlFieldset",allowChildren:"$text"}},{model:"htmlHeader",view:"header",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlFooter",view:"footer",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlForm",view:"form",modelSchema:{inheritAllFrom:"$container",isBlock:true}},{model:"htmlHgroup",view:"hgroup",modelSchema:{allowChildren:["htmlH1","htmlH2","htmlH3","htmlH4","htmlH5","htmlH6"],isBlock:false}},{model:"htmlH1",view:"h1",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH2",view:"h2",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH3",view:"h3",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH4",view:"h4",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH5",view:"h5",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH6",view:"h6",modelSchema:{inheritAllFrom:"$block"}},{model:"$htmlList",modelSchema:{allowWhere:"$container",allowChildren:["$htmlList","htmlLi"],isBlock:false}},{model:"htmlDir",view:"dir",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlMenu",view:"menu",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlUl",view:"ul",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlOl",view:"ol",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlLi",view:"li",modelSchema:{allowIn:"$htmlList",allowChildren:"$text",isBlock:false}},{model:"htmlPre",view:"pre",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlArticle",view:"article",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlSection",view:"section",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlNav",view:"nav",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlDl",view:"dl",modelSchema:{allowWhere:"$container",allowChildren:["htmlDt","htmlDd"],isBlock:false}},{model:"htmlDt",view:"dt",modelSchema:{allowChildren:"$block",isBlock:false}},{model:"htmlDd",view:"dd",modelSchema:{allowChildren:"$block",isBlock:false}},{model:"htmlCenter",view:"center",modelSchema:{inheritAllFrom:"$container",isBlock:false}}],inline:[{model:"htmlAcronym",view:"acronym",attributeProperties:{copyOnEnter:true}},{model:"htmlTt",view:"tt",attributeProperties:{copyOnEnter:true}},{model:"htmlFont",view:"font",attributeProperties:{copyOnEnter:true}},{model:"htmlTime",view:"time",attributeProperties:{copyOnEnter:true}},{model:"htmlVar",view:"var",attributeProperties:{copyOnEnter:true}},{model:"htmlBig",view:"big",attributeProperties:{copyOnEnter:true}},{model:"htmlSmall",view:"small",attributeProperties:{copyOnEnter:true}},{model:"htmlSamp",view:"samp",attributeProperties:{copyOnEnter:true}},{model:"htmlQ",view:"q",attributeProperties:{copyOnEnter:true}},{model:"htmlOutput",view:"output",attributeProperties:{copyOnEnter:true}},{model:"htmlKbd",view:"kbd",attributeProperties:{copyOnEnter:true}},{model:"htmlBdi",view:"bdi",attributeProperties:{copyOnEnter:true}},{model:"htmlBdo",view:"bdo",attributeProperties:{copyOnEnter:true}},{model:"htmlAbbr",view:"abbr",attributeProperties:{copyOnEnter:true}},{model:"htmlA",view:"a",priority:5,coupledAttribute:"linkHref",attributeProperties:{copyOnEnter:true}},{model:"htmlStrong",view:"strong",coupledAttribute:"bold",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlB",view:"b",coupledAttribute:"bold",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlI",view:"i",coupledAttribute:"italic",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlEm",view:"em",coupledAttribute:"italic",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlS",view:"s",coupledAttribute:"strikethrough",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlDel",view:"del",coupledAttribute:"strikethrough",attributeProperties:{copyOnEnter:true}},{model:"htmlIns",view:"ins",attributeProperties:{copyOnEnter:true}},{model:"htmlU",view:"u",coupledAttribute:"underline",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlSub",view:"sub",coupledAttribute:"subscript",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlSup",view:"sup",coupledAttribute:"superscript",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlCode",view:"code",coupledAttribute:"code",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlMark",view:"mark",attributeProperties:{copyOnEnter:true}},{model:"htmlSpan",view:"span",attributeProperties:{copyOnEnter:true}},{model:"htmlCite",view:"cite",attributeProperties:{copyOnEnter:true}},{model:"htmlLabel",view:"label",attributeProperties:{copyOnEnter:true}},{model:"htmlDfn",view:"dfn",attributeProperties:{copyOnEnter:true}},{model:"htmlObject",view:"object",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlIframe",view:"iframe",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlInput",view:"input",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlButton",view:"button",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlTextarea",view:"textarea",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlSelect",view:"select",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlVideo",view:"video",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlEmbed",view:"embed",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlOembed",view:"oembed",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlAudio",view:"audio",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlImg",view:"img",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlCanvas",view:"canvas",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlMeter",view:"meter",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlProgress",view:"progress",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlScript",view:"script",modelSchema:{allowWhere:["$text","$block"],isInline:true}},{model:"htmlStyle",view:"style",modelSchema:{allowWhere:["$text","$block"],isInline:true}},{model:"htmlCustomElement",view:"$customElement",modelSchema:{allowWhere:["$text","$block"],isInline:true}}]};var XI=fg((function(t,e,n,i){qh(t,e,n,i)}));const tM=XI;class eM extends eu{constructor(t){super(t);this._definitions=new Map}static get pluginName(){return"DataSchema"}init(){for(const t of JI.block){this.registerBlockElement(t)}for(const t of JI.inline){this.registerInlineElement(t)}}registerBlockElement(t){this._definitions.set(t.model,{...t,isBlock:true})}registerInlineElement(t){this._definitions.set(t.model,{...t,isInline:true})}extendBlockElement(t){this._extendDefinition({...t,isBlock:true})}extendInlineElement(t){this._extendDefinition({...t,isInline:true})}getDefinitionsForView(t,e){const n=new Set;for(const i of this._getMatchingViewDefinitions(t)){if(e){for(const t of this._getReferences(i.model)){n.add(t)}}n.add(i)}return n}_getMatchingViewDefinitions(t){return Array.from(this._definitions.values()).filter((e=>e.view&&nM(t,e.view)))}*_getReferences(t){const{modelSchema:e}=this._definitions.get(t);if(!e){return}const n=["inheritAllFrom","inheritTypesFrom","allowWhere","allowContentOf","allowAttributesOf"];for(const i of n){for(const n of Xl(e[i]||[])){const e=this._definitions.get(n);if(n!==t&&e){yield*this._getReferences(e.model);yield e}}}}_extendDefinition(t){const e=this._definitions.get(t.model);const n=tM({},e,t,((t,e)=>Array.isArray(t)?t.concat(e):undefined));this._definitions.set(t.model,n)}}function nM(t,e){if(typeof t==="string"){return t===e}if(t instanceof RegExp){return t.test(e)}return false}function iM(t,e,n,i){if(e){rM(t,e,i)}if(n){oM(t,n,i)}}function oM(t,e,n){if(e.attributes){for(const[i,o]of Object.entries(e.attributes)){t.setAttribute(i,o,n)}}if(e.styles){t.setStyle(e.styles,n)}if(e.classes){t.addClass(e.classes,n)}}function rM(t,e,n){if(e.attributes){for(const[i]of Object.entries(e.attributes)){t.removeAttribute(i,n)}}if(e.styles){for(const i of Object.keys(e.styles)){t.removeStyle(i,n)}}if(e.classes){t.removeClass(e.classes,n)}}function sM(t,e){const n=Mb(t);for(const i in e){if(Array.isArray(e[i])){n[i]=Array.from(new Set([...t[i]||[],...e[i]]))}else{n[i]={...t[i],...e[i]}}}return n}function aM({model:t}){return(e,n)=>n.writer.createElement(t,{htmlContent:e.getCustomProperty("$rawContent")})}function lM(t,{view:e,isInline:n}){const i=t.t;return(t,{writer:o})=>{const r=i("HTML object");const s=cM(e,t,o);const a=t.getAttribute("htmlAttributes");o.addClass("html-object-embed__content",s);if(a){oM(o,a,s)}const l=o.createContainerElement(n?"span":"div",{class:"html-object-embed","data-html-object-embed-label":r},s);return dD(l,o,{widgetLabel:r})}}function cM(t,e,n){return n.createRawElement(t,null,((t,n)=>{n.setContentOf(t,e.getAttribute("htmlContent"))}))}function dM({view:t,model:e},n){return i=>{i.on(`element:${t}`,((t,i,o)=>{let r=n.processViewAttributes(i.viewItem,o);if(!r&&!o.consumable.test(i.viewItem,{name:true})){return}r=r||{};o.consumable.consume(i.viewItem,{name:true});if(!i.modelRange){i=Object.assign(i,o.convertChildren(i.viewItem,i.modelCursor))}for(const t of i.modelRange.getItems()){if(o.schema.checkAttribute(t,e)){const n=t.getAttribute(e);const i=sM(r,n||{});o.writer.setAttribute(e,i,t)}}}),{priority:"low"})}}function uM({priority:t,view:e}){return(n,i)=>{if(!n){return}const{writer:o}=i;const r=o.createAttributeElement(e,null,{priority:t});oM(o,n,r);return r}}function hM({view:t},e){return n=>{n.on(`element:${t}`,((t,n,i)=>{if(!n.modelRange||n.modelRange.isCollapsed){return}const o=e.processViewAttributes(n.viewItem,i);if(o){i.writer.setAttribute("htmlAttributes",o,n.modelRange)}}),{priority:"low"})}}function gM({model:t}){return e=>{e.on(`attribute:htmlAttributes:${t}`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.writer;const s=n.mapper.toViewElement(e.item);iM(r,i,o,s)}))}}function mM(t,e,n,i){var o=t.length,r=n+(i?1:-1);while(i?r--:++r<o){if(e(t[r],r,t)){return r}}return-1}const fM=mM;function pM(t){return t!==t}const bM=pM;function kM(t,e,n){var i=n-1,o=t.length;while(++i<o){if(t[i]===e){return i}}return-1}const wM=kM;function AM(t,e,n){return e===e?wM(t,e,n):fM(t,bM,n)}const CM=AM;function _M(t,e,n,i){var o=n-1,r=t.length;while(++o<r){if(i(t[o],e)){return o}}return-1}const vM=_M;var yM=Array.prototype;var xM=yM.splice;function EM(t,e,n,i){var o=i?vM:CM,r=-1,s=e.length,a=t;if(t===e){e=gr(e)}if(n){a=ih(t,Ao(n))}while(++r<s){var l=0,c=e[r],d=n?n(c):c;while((l=o(a,d,l,i))>-1){if(a!==t){xM.call(a,l,1)}xM.call(t,l,1)}}return t}const DM=EM;function SM(t,e){return t&&t.length&&e&&e.length?DM(t,e):t}const TM=SM;var IM=ug(TM);const MM=IM;var BM=n(8468);var LM={injectType:"singletonStyleTag",attributes:{"data-cke":true}};LM.insert="head";LM.singleton=true;var NM=Sc()(BM.Z,LM);const zM=BM.Z.locals||{};class PM extends eu{constructor(t){super(t);this._dataSchema=t.plugins.get("DataSchema");this._allowedAttributes=new Tu;this._disallowedAttributes=new Tu;this._allowedElements=new Set;this._disallowedElements=new Set;this._dataInitialized=false;this._coupledAttributes=null;this._registerElementsAfterInit();this._registerElementHandlers();this._registerModelPostFixer()}static get pluginName(){return"DataFilter"}static get requires(){return[eM,ZD]}loadAllowedConfig(t){for(const e of t){const t=e.name||/[\s\S]+/;const n=UM(e);this.allowElement(t);n.forEach((t=>this.allowAttributes(t)))}}loadDisallowedConfig(t){for(const e of t){const t=e.name||/[\s\S]+/;const n=UM(e);if(n.length==0){this.disallowElement(t)}else{n.forEach((t=>this.disallowAttributes(t)))}}}allowElement(t){for(const e of this._dataSchema.getDefinitionsForView(t,true)){if(this._allowedElements.has(e)){continue}this._allowedElements.add(e);if(this._dataInitialized){this.editor.data.once("set",(()=>{this._fireRegisterEvent(e)}),{priority:B.get("highest")+1})}this._coupledAttributes=null}}disallowElement(t){for(const e of this._dataSchema.getDefinitionsForView(t,false)){this._disallowedElements.add(e.view)}}allowAttributes(t){this._allowedAttributes.add(t)}disallowAttributes(t){this._disallowedAttributes.add(t)}processViewAttributes(t,e){OM(t,e,this._disallowedAttributes);return OM(t,e,this._allowedAttributes)}_registerElementsAfterInit(){this.editor.data.on("init",(()=>{this._dataInitialized=true;for(const t of this._allowedElements){this._fireRegisterEvent(t)}}),{priority:B.get("highest")+1})}_registerElementHandlers(){this.on("register",((t,e)=>{const n=this.editor.model.schema;if(e.isObject&&!n.isRegistered(e.model)){this._registerObjectElement(e)}else if(e.isBlock){this._registerBlockElement(e)}else if(e.isInline){this._registerInlineElement(e)}else{throw new z("data-filter-invalid-definition",null,e)}t.stop()}),{priority:"lowest"})}_registerModelPostFixer(){const t=this.editor.model;t.document.registerPostFixer((e=>{const n=t.document.differ.getChanges();let i=false;const o=this._getCoupledAttributesMap();for(const t of n){if(t.type!="attribute"||t.attributeNewValue!==null){continue}const n=o.get(t.attributeKey);if(!n){continue}for(const{item:o}of t.range.getWalker({shallow:true})){for(const t of n){if(o.hasAttribute(t)){e.removeAttribute(t,o);i=true}}}}return i}))}_getCoupledAttributesMap(){if(this._coupledAttributes){return this._coupledAttributes}this._coupledAttributes=new Map;for(const t of this._allowedElements){if(t.coupledAttribute&&t.model){const e=this._coupledAttributes.get(t.coupledAttribute);if(e){e.push(t.model)}else{this._coupledAttributes.set(t.coupledAttribute,[t.model])}}}}_fireRegisterEvent(t){if(t.view&&this._disallowedElements.has(t.view)){return}this.fire(t.view?`register:${t.view}`:"register",t)}_registerObjectElement(t){const e=this.editor;const n=e.model.schema;const i=e.conversion;const{view:o,model:r}=t;n.register(r,t.modelSchema);if(!o){return}n.extend(t.model,{allowAttributes:["htmlAttributes","htmlContent"]});e.data.registerRawContentMatcher({name:o});i.for("upcast").elementToElement({view:o,model:aM(t),converterPriority:B.get("low")+1});i.for("upcast").add(hM(t,this));i.for("editingDowncast").elementToStructure({model:{name:r,attributes:["htmlAttributes"]},view:lM(e,t)});i.for("dataDowncast").elementToElement({model:r,view:(t,{writer:e})=>cM(o,t,e)});i.for("dataDowncast").add(gM(t))}_registerBlockElement(t){const e=this.editor;const n=e.model.schema;const i=e.conversion;const{view:o,model:r}=t;if(!n.isRegistered(t.model)){n.register(t.model,t.modelSchema);if(!o){return}i.for("upcast").elementToElement({model:r,view:o,converterPriority:B.get("low")+1});i.for("downcast").elementToElement({model:r,view:o})}if(!o){return}n.extend(t.model,{allowAttributes:"htmlAttributes"});i.for("upcast").add(hM(t,this));i.for("downcast").add(gM(t))}_registerInlineElement(t){const e=this.editor;const n=e.model.schema;const i=e.conversion;const o=t.model;n.extend("$text",{allowAttributes:o});if(t.attributeProperties){n.setAttributeProperties(o,t.attributeProperties)}i.for("upcast").add(dM(t,this));i.for("downcast").attributeToElement({model:o,view:uM(t)})}}function OM(t,e,n){const i=RM(t,e,n);const{attributes:o,styles:r,classes:s}=jM(i);const a={};if(o.size){for(const t of o){if(!WM(t)){o.delete(t)}}}if(o.size){a.attributes=FM(o,(e=>t.getAttribute(e)))}if(r.size){a.styles=FM(r,(e=>t.getStyle(e)))}if(s.size){a.classes=Array.from(s)}if(!Object.keys(a).length){return null}return a}function RM(t,{consumable:e},n){const i=n.matchAll(t)||[];const o=[];for(const n of i){VM(e,t,n);delete n.match.name;e.consume(t,n.match);o.push(n)}return o}function VM(t,e,n){for(const i of["attributes","classes","styles"]){const o=n.match[i];if(!o){continue}for(const n of Array.from(o)){if(!t.test(e,{[i]:[n]})){MM(o,n)}}}}function jM(t){const e={attributes:new Set,classes:new Set,styles:new Set};for(const n of t){for(const t in e){const i=n.match[t]||[];i.forEach((n=>e[t].add(n)))}}return e}function FM(t,e){const n={};for(const i of t){const t=e(i);if(t!==undefined){n[i]=e(i)}}return n}function HM(t,e){const{name:n}=t;if(pe(t[e])){return Object.entries(t[e]).map((([t,i])=>({name:n,[e]:{[t]:i}})))}if(Array.isArray(t[e])){return t[e].map((t=>({name:n,[e]:[t]})))}return[t]}function UM(t){const{name:e,attributes:n,classes:i,styles:o}=t;const r=[];if(n){r.push(...HM({name:e,attributes:n},"attributes"))}if(i){r.push(...HM({name:e,classes:i},"classes"))}if(o){r.push(...HM({name:e,styles:o},"styles"))}return r}function WM(t){try{document.createAttribute(t)}catch(t){return false}return true}class qM extends iu{constructor(t){super(t);this.affectsData=false}execute(){const t=this.editor.model;const e=t.document.selection;let n=t.schema.getLimitElement(e);if(e.containsEntireContent(n)||!GM(t.schema,n)){do{n=n.parent;if(!n){return}}while(!GM(t.schema,n))}t.change((t=>{t.setSelection(n,"in")}))}}function GM(t,e){return t.isLimit(e)&&(t.checkChild(e,"$text")||t.checkChild(e,"paragraph"))}const $M=ql("Ctrl+A");class KM extends eu{static get pluginName(){return"SelectAllEditing"}init(){const t=this.editor;const e=t.editing.view;const n=e.document;t.commands.add("selectAll",new qM(t));this.listenTo(n,"keydown",((e,n)=>{if(Wl(n)===$M){t.execute("selectAll");n.preventDefault()}}))}}const YM='$${Delta.CKEditor.Icon[43]}$$';class ZM extends eu{static get pluginName(){return"SelectAllUI"}init(){const t=this.editor;t.ui.componentFactory.add("selectAll",(e=>{const n=t.commands.get("selectAll");const i=new kd(e);const o=e.t;i.set({label:o("Select all"),icon:YM,keystroke:"Ctrl+A",tooltip:true});i.bind("isEnabled").to(n,"isEnabled");this.listenTo(i,"execute",(()=>{t.execute("selectAll");t.editing.view.focus()}));return i}))}}class QM extends eu{static get requires(){return[KM,ZM]}static get pluginName(){return"SelectAll"}}class JM extends eu{static get requires(){return[RS,YE,QM,eD,rE,KS]}static get pluginName(){return"Essentials"}}class XM extends eu{static get requires(){return[PM]}static get pluginName(){return"CodeBlockElementSupport"}init(){if(!this.editor.plugins.has("CodeBlockEditing")){return}const t=this.editor.plugins.get(PM);t.on("register:pre",((e,n)=>{if(n.model!=="codeBlock"){return}const i=this.editor;const o=i.model.schema;const r=i.conversion;o.extend("codeBlock",{allowAttributes:["htmlAttributes","htmlContentAttributes"]});r.for("upcast").add(tB(t));r.for("downcast").add(eB());e.stop()}))}}function tB(t){return e=>{e.on("element:code",((e,n,i)=>{const o=n.viewItem;const r=o.parent;if(!r||!r.is("element","pre")){return}s(r,"htmlAttributes");s(o,"htmlContentAttributes");function s(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}}),{priority:"low"})}}function eB(){return t=>{t.on("attribute:htmlAttributes:codeBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.mapper.toViewElement(e.item);const s=r.parent;iM(n.writer,i,o,s)}));t.on("attribute:htmlContentAttributes:codeBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.mapper.toViewElement(e.item);iM(n.writer,i,o,r)}))}}class nB extends eu{static get requires(){return[PM]}static get pluginName(){return"DualContentModelElementSupport"}init(){const t=this.editor.plugins.get(PM);t.on("register",((t,e)=>{const n=this.editor;const i=n.model.schema;const o=n.conversion;if(!e.paragraphLikeModel){return}if(i.isRegistered(e.model)||i.isRegistered(e.paragraphLikeModel)){return}const r={model:e.paragraphLikeModel,view:e.view};i.register(e.model,e.modelSchema);i.register(r.model,{inheritAllFrom:"$block"});o.for("upcast").elementToElement({view:e.view,model:(t,{writer:n})=>{if(this._hasBlockContent(t)){return n.createElement(e.model)}return n.createElement(r.model)},converterPriority:B.get("low")+1});o.for("downcast").elementToElement({view:e.view,model:e.model});this._addAttributeConversion(e);o.for("downcast").elementToElement({view:r.view,model:r.model});this._addAttributeConversion(r);t.stop()}))}_hasBlockContent(t){const e=this.editor.editing.view;const n=e.domConverter.blockElements;for(const i of e.createRangeIn(t).getItems()){if(i.is("element")&&n.includes(i.name)){return true}}return false}_addAttributeConversion(t){const e=this.editor;const n=e.conversion;const i=e.plugins.get(PM);e.model.schema.extend(t.model,{allowAttributes:"htmlAttributes"});n.for("upcast").add(hM(t,i));n.for("downcast").add(gM(t))}}class iB extends eu{static get requires(){return[eM]}static get pluginName(){return"HeadingElementSupport"}init(){const t=this.editor;if(!t.plugins.has("HeadingEditing")){return}const e=t.plugins.get(eM);const n=t.config.get("heading.options");const i=[];for(const t of n){if("model"in t&&"view"in t){e.registerBlockElement({view:t.view,model:t.model});i.push(t.model)}}e.extendBlockElement({model:"htmlHgroup",modelSchema:{allowChildren:i}})}}class oB extends eu{static get requires(){return[PM]}static get pluginName(){return"ImageElementSupport"}init(){const t=this.editor;if(!t.plugins.has("ImageInlineEditing")&&!t.plugins.has("ImageBlockEditing")){return}const e=t.model.schema;const n=t.conversion;const i=t.plugins.get(PM);i.on("register:figure",(()=>{n.for("upcast").add(sB(i))}));i.on("register:img",((t,o)=>{if(o.model!=="imageBlock"&&o.model!=="imageInline"){return}if(e.isRegistered("imageBlock")){e.extend("imageBlock",{allowAttributes:["htmlAttributes","htmlFigureAttributes","htmlLinkAttributes"]})}if(e.isRegistered("imageInline")){e.extend("imageInline",{allowAttributes:["htmlA","htmlAttributes"]})}n.for("upcast").add(rB(i));n.for("downcast").add(aB());t.stop()}))}}function rB(t){return e=>{e.on("element:img",((e,n,i)=>{if(!n.modelRange){return}const o=n.viewItem;const r=o.parent;s(o,"htmlAttributes");if(r.is("element","a")){a(r)}function s(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}function a(t){if(n.modelRange&&n.modelRange.getContainedElement().is("element","imageBlock")){s(t,"htmlLinkAttributes")}}}),{priority:"low"})}}function sB(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("image")){return}const r=t.processViewAttributes(o,i);if(r){i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}}),{priority:"low"})}}function aB(){return t=>{e("htmlAttributes");n("img","htmlAttributes");n("figure","htmlFigureAttributes");n("a","htmlLinkAttributes");function e(e){t.on(`attribute:${e}:imageInline`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.mapper.toViewElement(e.item);iM(n.writer,i,o,r)}),{priority:"low"})}function n(e,n){t.on(`attribute:${n}:imageBlock`,((t,n,i)=>{if(!i.consumable.test(n.item,t.name)){return}const{attributeOldValue:o,attributeNewValue:r}=n;const s=i.mapper.toViewElement(n.item);const a=lB(i.writer,s,e);if(a){iM(i.writer,o,r,a);i.consumable.consume(n.item,t.name)}}),{priority:"low"});if(e==="a"){t.on("attribute:linkHref:imageBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,"attribute:htmlLinkAttributes:imageBlock")){return}const i=n.mapper.toViewElement(e.item);const o=lB(n.writer,i,"a");oM(n.writer,e.item.getAttribute("htmlLinkAttributes"),o)}),{priority:"low"})}}}}function lB(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker()){if(t.is("element",n)){return t}}}class cB extends eu{static get requires(){return[PM]}static get pluginName(){return"MediaEmbedElementSupport"}init(){const t=this.editor;if(!t.plugins.has("MediaEmbed")||t.config.get("mediaEmbed.previewsInData")){return}const e=t.model.schema;const n=t.conversion;const i=this.editor.plugins.get(PM);const o=this.editor.plugins.get(eM);const r=t.config.get("mediaEmbed.elementName");o.registerBlockElement({model:"media",view:r});i.on("register:figure",(()=>{n.for("upcast").add(uB(i))}));i.on(`register:${r}`,((t,o)=>{if(o.model!=="media"){return}e.extend("media",{allowAttributes:["htmlAttributes","htmlFigureAttributes"]});n.for("upcast").add(dB(i,r));n.for("dataDowncast").add(hB(r));t.stop()}))}}function dB(t,e){return t=>{t.on(`element:${e}`,n,{priority:"low"})};function n(e,n,i){const o=n.viewItem;r(o,"htmlAttributes");function r(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}}}function uB(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("media")){return}const r=t.processViewAttributes(o,i);if(r){i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}}),{priority:"low"})}}function hB(t){return e=>{n(t,"htmlAttributes");n("figure","htmlFigureAttributes");function n(t,n){e.on(`attribute:${n}:media`,((e,n,i)=>{if(!i.consumable.consume(n.item,e.name)){return}const{attributeOldValue:o,attributeNewValue:r}=n;const s=i.mapper.toViewElement(n.item);const a=gB(i.writer,s,t);iM(i.writer,o,r,a)}))}}}function gB(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker()){if(t.is("element",n)){return t}}}class mB extends eu{static get requires(){return[PM]}static get pluginName(){return"ScriptElementSupport"}init(){const t=this.editor.plugins.get(PM);t.on("register:script",((e,n)=>{const i=this.editor;const o=i.model.schema;const r=i.conversion;o.register("htmlScript",n.modelSchema);o.extend("htmlScript",{allowAttributes:["htmlAttributes","htmlContent"],isContent:true});i.data.registerRawContentMatcher({name:"script"});r.for("upcast").elementToElement({view:"script",model:aM(n)});r.for("upcast").add(hM(n,t));r.for("downcast").elementToElement({model:"htmlScript",view:(t,{writer:e})=>cM("script",t,e)});r.for("downcast").add(gM(n));e.stop()}))}}class fB extends eu{static get requires(){return[PM]}static get pluginName(){return"TableElementSupport"}init(){const t=this.editor;if(!t.plugins.has("TableEditing")){return}const e=t.model.schema;const n=t.conversion;const i=t.plugins.get(PM);i.on("register:figure",(()=>{n.for("upcast").add(bB(i))}));i.on("register:table",((t,o)=>{if(o.model!=="table"){return}e.extend("table",{allowAttributes:["htmlAttributes","htmlFigureAttributes","htmlTheadAttributes","htmlTbodyAttributes"]});n.for("upcast").add(pB(i));n.for("downcast").add(kB());t.stop()}))}}function pB(t){return e=>{e.on("element:table",((e,n,i)=>{const o=n.viewItem;r(o,"htmlAttributes");for(const t of o.getChildren()){if(t.is("element","thead")){r(t,"htmlTheadAttributes")}if(t.is("element","tbody")){r(t,"htmlTbodyAttributes")}}function r(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}}),{priority:"low"})}}function bB(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("table")){return}const r=t.processViewAttributes(o,i);if(r){i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}}),{priority:"low"})}}function kB(){return t=>{e("table","htmlAttributes");e("figure","htmlFigureAttributes");e("thead","htmlTheadAttributes");e("tbody","htmlTbodyAttributes");function e(e,n){t.on(`attribute:${n}:table`,((t,n,i)=>{if(!i.consumable.consume(n.item,t.name)){return}const o=i.mapper.toViewElement(n.item);const r=wB(i.writer,o,e);oM(i.writer,n.attributeNewValue,r)}))}}}function wB(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker()){if(t.is("element",n)){return t}}}class AB extends eu{static get requires(){return[PM]}static get pluginName(){return"StyleElementSupport"}init(){const t=this.editor.plugins.get(PM);t.on("register:style",((e,n)=>{const i=this.editor;const o=i.model.schema;const r=i.conversion;o.register("htmlStyle",n.modelSchema);o.extend("htmlStyle",{allowAttributes:["htmlAttributes","htmlContent"],isContent:true});i.data.registerRawContentMatcher({name:"style"});r.for("upcast").elementToElement({view:"style",model:aM(n)});r.for("upcast").add(hM(n,t));r.for("downcast").elementToElement({model:"htmlStyle",view:(t,{writer:e})=>cM("style",t,e)});r.for("downcast").add(gM(n));e.stop()}))}}class CB extends eu{static get requires(){return[PM]}static get pluginName(){return"DocumentListElementSupport"}init(){const t=this.editor;if(!t.plugins.has("DocumentListEditing")){return}const e=t.model.schema;const n=t.conversion;const i=t.plugins.get(PM);const o=t.plugins.get("DocumentListEditing");o.registerDowncastStrategy({scope:"item",attributeName:"htmlLiAttributes",setAttributeOnDowncast(t,e,n){oM(t,e,n)}});o.registerDowncastStrategy({scope:"list",attributeName:"htmlListAttributes",setAttributeOnDowncast(t,e,n){oM(t,e,n)}});i.on("register",((t,o)=>{if(!["ul","ol","li"].includes(o.view)){return}t.stop();if(e.checkAttribute("$block","htmlListAttributes")){return}e.extend("$block",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]});e.extend("$blockObject",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]});e.extend("$container",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]});n.for("upcast").add((t=>{t.on("element:ul",_B("htmlListAttributes",i),{priority:"low"});t.on("element:ol",_B("htmlListAttributes",i),{priority:"low"});t.on("element:li",_B("htmlLiAttributes",i),{priority:"low"})}))}));o.on("postFixer",((t,{listNodes:e,writer:n})=>{const i=[];for(const{node:o,previous:r}of e){if(!r){continue}const e=o.getAttribute("listIndent");const s=r.getAttribute("listIndent");let a=null;if(e>s){i[s]=r}else if(e<s){a=i[e];i.length=e}else{a=r}if(!a){continue}if(a.getAttribute("listType")==o.getAttribute("listType")){const e=a.getAttribute("htmlListAttributes");if(!Rw(o.getAttribute("htmlListAttributes"),e)){n.setAttribute("htmlListAttributes",e,o);t.return=true}}if(a.getAttribute("listItemId")==o.getAttribute("listItemId")){const e=a.getAttribute("htmlLiAttributes");if(!Rw(o.getAttribute("htmlLiAttributes"),e)){n.setAttribute("htmlLiAttributes",e,o);t.return=true}}}}))}afterInit(){const t=this.editor;if(!t.commands.get("indentList")){return}this.listenTo(t.commands.get("indentList"),"afterExecute",((e,n)=>{t.model.change((t=>{for(const e of n){t.setAttribute("htmlListAttributes",{},e)}}))}))}}function _B(t,e){return(n,i,o)=>{const r=i.viewItem;if(!i.modelRange){Object.assign(i,o.convertChildren(i.viewItem,i.modelCursor))}const s=e.processViewAttributes(r,o);for(const e of i.modelRange.getItems({shallow:true})){if(!e.hasAttribute("listItemId")){continue}if(e.hasAttribute(t)){continue}o.writer.setAttribute(t,s||{},e)}}}class vB extends eu{static get requires(){return[PM,eM]}static get pluginName(){return"CustomElementSupport"}init(){const t=this.editor.plugins.get(PM);const e=this.editor.plugins.get(eM);t.on("register:$customElement",((n,i)=>{n.stop();const o=this.editor;const r=o.model.schema;const s=o.conversion;const a=o.editing.view.domConverter.unsafeElements;const l=o.data.htmlProcessor.domConverter.preElements;r.register(i.model,i.modelSchema);r.extend(i.model,{allowAttributes:["htmlElementName","htmlAttributes","htmlContent"],isContent:true});s.for("upcast").elementToElement({view:/.*/,model:(n,r)=>{if(n.name=="$comment"){return}if(!yB(n.name)){return}if(e.getDefinitionsForView(n.name).size){return}if(!a.includes(n.name)){a.push(n.name)}if(!l.includes(n.name)){l.push(n.name)}const s=r.writer.createElement(i.model,{htmlElementName:n.name});const c=t.processViewAttributes(n,r);if(c){r.writer.setAttribute("htmlAttributes",c,s)}const d=new kC(n.document);const u=d.createDocumentFragment(n);const h=o.data.processor.toData(u);r.writer.setAttribute("htmlContent",h,s);for(const{item:t}of o.editing.view.createRangeIn(n)){r.consumable.consume(t,{name:true})}return s},converterPriority:"low"});s.for("editingDowncast").elementToElement({model:{name:i.model,attributes:["htmlElementName","htmlAttributes","htmlContent"]},view:(t,{writer:e})=>{const n=t.getAttribute("htmlElementName");const i=e.createRawElement(n);if(t.hasAttribute("htmlAttributes")){oM(e,t.getAttribute("htmlAttributes"),i)}return i}});s.for("dataDowncast").elementToElement({model:{name:i.model,attributes:["htmlElementName","htmlAttributes","htmlContent"]},view:(t,{writer:e})=>{const n=t.getAttribute("htmlElementName");const i=t.getAttribute("htmlContent");const o=e.createRawElement(n,null,((t,e)=>{e.setContentOf(t,i);const n=t.firstChild;n.remove();while(n.firstChild){t.appendChild(n.firstChild)}}));if(t.hasAttribute("htmlAttributes")){oM(e,t.getAttribute("htmlAttributes"),o)}return o}})}))}}function yB(t){try{document.createElement(t)}catch(t){return false}return true}class xB extends eu{static get pluginName(){return"GeneralHtmlSupport"}static get requires(){return[PM,XM,nB,iB,oB,cB,mB,fB,AB,CB,vB]}init(){const t=this.editor;const e=t.plugins.get(PM);e.loadAllowedConfig(t.config.get("htmlSupport.allow")||[]);e.loadDisallowedConfig(t.config.get("htmlSupport.disallow")||[])}getGhsAttributeNameForElement(t){const e=this.editor.plugins.get("DataSchema");const n=Array.from(e.getDefinitionsForView(t,false));if(n&&n.length&&n[0].isInline&&!n[0].isObject){return n[0].model}return"htmlAttributes"}addModelHtmlClass(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of EB(i,n,o)){SB(t,r,o,"classes",(t=>{for(const n of Xl(e)){t.add(n)}}))}}))}removeModelHtmlClass(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of EB(i,n,o)){SB(t,r,o,"classes",(t=>{for(const n of Xl(e)){t.delete(n)}}))}}))}setModelHtmlAttributes(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of EB(i,n,o)){SB(t,r,o,"attributes",(t=>{for(const[n,i]of Object.entries(e)){t.set(n,i)}}))}}))}removeModelHtmlAttributes(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of EB(i,n,o)){SB(t,r,o,"attributes",(t=>{for(const n of Xl(e)){t.delete(n)}}))}}))}setModelHtmlStyles(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of EB(i,n,o)){SB(t,r,o,"styles",(t=>{for(const[n,i]of Object.entries(e)){t.set(n,i)}}))}}))}removeModelHtmlStyles(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of EB(i,n,o)){SB(t,r,o,"styles",(t=>{for(const n of Xl(e)){t.delete(n)}}))}}))}}function*EB(t,e,n){if(e.is("documentSelection")&&e.isCollapsed){if(t.schema.checkAttributeInSelection(e,n)){yield e}}else{for(const i of DB(t,e,n)){yield*i.getItems({shallow:true})}}}function DB(t,e,n){if(e.is("node")||e.is("$text")||e.is("$textProxy")){if(t.schema.checkAttribute(e,n)){return[t.createRangeOn(e)]}else{return[]}}else{return t.schema.getValidRanges(t.createSelection(e).getRanges(),n)}}function SB(t,e,n,i,o){const r=e.getAttribute(n);const s={};for(const t of["attributes","styles","classes"]){if(t!=i){if(r&&r[t]){s[t]=r[t]}}else{const e=t=="classes"?new Set(r&&r[t]||[]):new Map(Object.entries(r&&r[t]||{}));o(e);if(e.size){s[t]=t=="classes"?Array.from(e):Object.fromEntries(e)}}}if(Object.keys(s).length){if(e.is("documentSelection")){t.setSelectionAttribute(n,s)}else{t.setAttribute(n,s,e)}}else if(r){if(e.is("documentSelection")){t.removeSelectionAttribute(n)}else{t.removeAttribute(n,e)}}}class TB extends iu{refresh(){const t=this.editor.model;const e=t.document;const n=dc(e.selection.getSelectedBlocks());this.value=!!n&&n.is("element","paragraph");this.isEnabled=!!n&&IB(n,t.schema)}execute(t={}){const e=this.editor.model;const n=e.document;e.change((i=>{const o=(t.selection||n.selection).getSelectedBlocks();for(const t of o){if(!t.is("element","paragraph")&&IB(t,e.schema)){i.rename(t,"paragraph")}}}))}}function IB(t,e){return e.checkChild(t.parent,"paragraph")&&!e.isObject(t)}class MB extends iu{execute(t){const e=this.editor.model;const n=t.attributes;let i=t.position;e.change((t=>{const o=t.createElement("paragraph");if(n){e.schema.setAllowedAttributes(o,n,t)}if(!e.schema.checkChild(i.parent,o)){const n=e.schema.findAllowedParent(i,o);if(!n){return}i=t.split(i,n).position}e.insertContent(o,i);t.setSelection(o,"in")}))}}class BB extends eu{static get pluginName(){return"Paragraph"}init(){const t=this.editor;const e=t.model;t.commands.add("paragraph",new TB(t));t.commands.add("insertParagraph",new MB(t));e.schema.register("paragraph",{inheritAllFrom:"$block"});t.conversion.elementToElement({model:"paragraph",view:"p"});t.conversion.for("upcast").elementToElement({model:(t,{writer:e})=>{if(!BB.paragraphLikeElements.has(t.name)){return null}if(t.isEmpty){return null}return e.createElement("paragraph")},view:/.+/,converterPriority:"low"})}}BB.paragraphLikeElements=new Set(["blockquote","dd","div","dt","h1","h2","h3","h4","h5","h6","li","p","td","th"]);const LB=J_.paragraph;class NB extends(null&&Plugin){static get requires(){return[Paragraph]}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("paragraph",(n=>{const i=new ButtonView(n);const o=t.commands.get("paragraph");i.label=e("Paragraph");i.icon=LB;i.tooltip=true;i.isToggleable=true;i.bind("isEnabled").to(o);i.bind("isOn").to(o,"value");i.on("execute",(()=>{t.execute("paragraph")}));return i}))}}class zB extends iu{constructor(t,e){super(t);this.modelElements=e}refresh(){const t=dc(this.editor.model.document.selection.getSelectedBlocks());this.value=!!t&&this.modelElements.includes(t.name)&&t.name;this.isEnabled=!!t&&this.modelElements.some((e=>PB(t,e,this.editor.model.schema)))}execute(t){const e=this.editor.model;const n=e.document;const i=t.value;e.change((t=>{const o=Array.from(n.selection.getSelectedBlocks()).filter((t=>PB(t,i,e.schema)));for(const e of o){if(!e.is("element",i)){t.rename(e,i)}}}))}}function PB(t,e,n){return n.checkChild(t.parent,e)&&!n.isObject(t)}const OB="paragraph";class RB extends eu{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[BB]}init(){const t=this.editor;const e=t.config.get("heading.options");const n=[];for(const i of e){if(i.model==="paragraph"){continue}t.model.schema.register(i.model,{inheritAllFrom:"$block"});t.conversion.elementToElement(i);n.push(i.model)}this._addDefaultH1Conversion(t);t.commands.add("heading",new zB(t,n))}afterInit(){const t=this.editor;const e=t.commands.get("enter");const n=t.config.get("heading.options");if(e){this.listenTo(e,"afterExecute",((e,i)=>{const o=t.model.document.selection.getFirstPosition().parent;const r=n.some((t=>o.is("element",t.model)));if(r&&!o.is("element",OB)&&o.childCount===0){i.writer.rename(o,OB)}}))}}_addDefaultH1Conversion(t){t.conversion.for("upcast").elementToElement({model:"heading1",view:"h1",converterPriority:B.get("low")+1})}}function VB(t){const e=t.t;const 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];if(e&&e!=t.title){t.title=e}return t}))}var jB=n(3230);var FB={injectType:"singletonStyleTag",attributes:{"data-cke":true}};FB.insert="head";FB.singleton=true;var HB=Sc()(jB.Z,FB);const UB=jB.Z.locals||{};class WB extends eu{static get pluginName(){return"HeadingUI"}init(){const t=this.editor;const e=t.t;const n=VB(t);const i=e("Choose heading");const o=e("Heading");t.ui.componentFactory.add("heading",(e=>{const r={};const s=new cc;const a=t.commands.get("heading");const l=t.commands.get("paragraph");const c=[a];for(const t of n){const e={type:"button",model:new Ry({label:t.title,class:t.class,withText:true})};if(t.model==="paragraph"){e.model.bind("isOn").to(l,"value");e.model.set("commandName","paragraph");c.push(l)}else{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=yv(e);Dv(d,s);d.buttonView.set({isOn:false,withText:true,tooltip:o});d.extendTemplate({attributes:{class:["ck-heading-dropdown"]}});d.bind("isEnabled").toMany(c,"isEnabled",((...t)=>t.some((t=>t))));d.buttonView.bind("label").to(a,"value",l,"value",((t,e)=>{const n=t||e&&"paragraph";if(typeof n==="boolean"){return i}if(!r[n]){return i}return r[n]}));this.listenTo(d,"execute",(e=>{const{commandName:n,commandValue:i}=e.source;t.execute(n,i?{value:i}:undefined);t.editing.view.focus()}));return d}))}}class qB extends eu{static get requires(){return[RB,WB]}static get pluginName(){return"Heading"}}class GB extends eu{static get pluginName(){return"HtmlComment"}init(){const t=this.editor;t.data.processor.skipComments=false;t.model.schema.addAttributeCheck(((t,e)=>{if(t.endsWith("$root")&&e.startsWith("$comment")){return true}}));t.conversion.for("upcast").elementToMarker({view:"$comment",model:(t,{writer:e})=>{const n=this.editor.model.document.getRoot();const i=t.getCustomProperty("$rawContent");const o=`$comment:${I()}`;e.setAttribute(o,i,n);return o}});t.conversion.for("dataDowncast").markerToElement({model:"$comment",view:(t,{writer:e})=>{const n=this.editor.model.document.getRoot();const i=t.markerName;const o=n.getAttribute(i);const r=e.createUIElement("$comment");e.setCustomProperty("$rawContent",o,r);return r}});t.model.document.registerPostFixer((e=>{const n=t.model.document.getRoot();const i=t.model.document.differ.getChangedMarkers();const o=i.filter((t=>t.name.startsWith("$comment")));const r=o.filter((t=>{const e=t.data.newRange;return e&&e.root.rootName==="$graveyard"}));if(r.length===0){return false}for(const t of r){e.removeMarker(t.name);e.removeAttribute(t.name,n)}return true}));t.data.on("set",(()=>{for(const e of t.model.markers.getMarkersGroup("$comment")){this.removeHtmlComment(e.name)}}),{priority:"high"});t.model.on("deleteContent",((e,[n])=>{for(const e of n.getRanges()){const n=t.model.schema.getLimitElement(e);const i=t.model.createPositionAt(n,0);const o=t.model.createPositionAt(n,"end");let r;if(i.isTouching(e.start)&&o.isTouching(e.end)){r=this.getHtmlCommentsInRange(t.model.createRange(i,o))}else{r=this.getHtmlCommentsInRange(e,{skipBoundaries:true})}for(const t of r){this.removeHtmlComment(t)}}}),{priority:"high"})}createHtmlComment(t,e){const n=I();const i=this.editor;const o=i.model;const r=o.document.getRoot();const s=`$comment:${n}`;return o.change((n=>{const i=n.createRange(t);n.addMarker(s,{usingOperation:true,affectsData:true,range:i});n.setAttribute(s,e,r);return s}))}removeHtmlComment(t){const e=this.editor;const n=e.model.document.getRoot();const i=e.model.markers.get(t);if(!i){return false}e.model.change((e=>{e.removeMarker(i);e.removeAttribute(t,n)}));return true}getHtmlCommentData(t){const e=this.editor;const n=e.model.markers.get(t);const i=e.model.document.getRoot();if(!n){return null}return{content:i.getAttribute(t),position:n.getStart()}}getHtmlCommentsInRange(t,{skipBoundaries:e=false}={}){const n=!e;return Array.from(this.editor.model.markers.getMarkersGroup("$comment")).filter((e=>i(e,t))).map((t=>t.name));function i(t,e){const i=t.getRange().start;return(i.isAfter(e.start)||n&&i.isEqual(e.start))&&(i.isBefore(e.end)||n&&i.isEqual(e.end))}}}class $B extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!n;if(this.isEnabled&&n.hasAttribute("alt")){this.value=n.getAttribute("alt")}else{this.value=false}}execute(t){const e=this.editor;const n=e.plugins.get("ImageUtils");const i=e.model;const o=n.getClosestSelectedImageElement(i.document.selection);i.change((e=>{e.setAttribute("alt",t.newValue,o)}))}}class KB extends eu{static get requires(){return[XS]}static get pluginName(){return"ImageTextAlternativeEditing"}init(){this.editor.commands.add("imageTextAlternative",new $B(this.editor))}}var YB=n(6831);var ZB={injectType:"singletonStyleTag",attributes:{"data-cke":true}};ZB.insert="head";ZB.singleton=true;var QB=Sc()(YB.Z,ZB);const JB=YB.Z.locals||{};var XB=n(1590);var tL={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tL.insert="head";tL.singleton=true;var eL=Sc()(XB.Z,tL);const nL=XB.Z.locals||{};class iL extends Lc{constructor(t){super(t);const n=this.locale.t;this.focusTracker=new uc;this.keystrokes=new hc;this.labeledInput=this._createLabeledInputView();this.saveButtonView=this._createButton(n("Save"),J_.check,"ck-button-save");this.saveButtonView.type="submit";this.cancelButtonView=this._createButton(n("Cancel"),J_.cancel,"ck-button-cancel","cancel");this._focusables=new xc;this._focusCycler=new Yd({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]});e(this)}render(){super.render();this.keystrokes.listenTo(this.element);o({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 kd(this.locale);o.set({label:t,icon:e,tooltip:true});o.extendTemplate({attributes:{class:n}});if(i){o.delegate("execute").to(this,i)}return o}_createLabeledInputView(){const t=this.locale.t;const e=new Ly(this.locale,Ny);e.label=t("Text alternative");return e}}function oL(t){const e=t.plugins.get("ContextualBalloon");if(t.plugins.get("ImageUtils").getClosestSelectedImageWidget(t.editing.view.document.selection)){const n=rL(t);e.updatePosition(n)}}function rL(t){const e=t.editing.view;const n=Uv.defaultPositions;const 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 sL extends eu{static get requires(){return[Zy]}static get pluginName(){return"ImageTextAlternativeUI"}init(){this._createButton()}destroy(){super.destroy();if(this._form){this._form.destroy()}}_createButton(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("imageTextAlternative",(n=>{const i=t.commands.get("imageTextAlternative");const o=new kd(n);o.set({label:e("Change image text alternative"),icon:J_.lowVision,tooltip:true});o.bind("isEnabled").to(i,"isEnabled");o.bind("isOn").to(i,"value",(t=>!!t));this.listenTo(o,"execute",(()=>{this._showForm()}));return o}))}_createForm(){const e=this.editor;const n=e.editing.view;const i=n.document;const o=e.plugins.get("ImageUtils");this._balloon=this.editor.plugins.get("ContextualBalloon");this._form=new iL(e.locale);this._form.render();this.listenTo(this._form,"submit",(()=>{e.execute("imageTextAlternative",{newValue:this._form.labeledInput.fieldView.element.value});this._hideForm(true)}));this.listenTo(this._form,"cancel",(()=>{this._hideForm(true)}));this._form.keystrokes.set("Esc",((t,e)=>{this._hideForm(true);e()}));this.listenTo(e.ui,"update",(()=>{if(!o.getClosestSelectedImageWidget(i.selection)){this._hideForm(true)}else if(this._isVisible){oL(e)}}));t({emitter:this._form,activator:()=>this._isVisible,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideForm()})}_showForm(){if(this._isVisible){return}if(!this._form){this._createForm()}const t=this.editor;const e=t.commands.get("imageTextAlternative");const n=this._form.labeledInput;this._form.disableCssTransitions();if(!this._isInBalloon){this._balloon.add({view:this._form,position:rL(t)})}n.fieldView.value=n.fieldView.element.value=e.value||"";this._form.labeledInput.fieldView.select();this._form.enableCssTransitions()}_hideForm(t){if(!this._isInBalloon){return}if(this._form.focusTracker.isFocused){this._form.saveButtonView.focus()}this._balloon.remove(this._form);if(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 aL extends eu{static get requires(){return[KB,sL]}static get pluginName(){return"ImageTextAlternative"}}function lL(t){return t=>{t.on("element:figure",e)};function e(e,n,i){if(!i.consumable.test(n.viewItem,{name:true,classes:"image"})){return}const o=t.findViewImgElement(n.viewItem);if(!o||!i.consumable.test(o,{name:true})){return}i.consumable.consume(n.viewItem,{name:true,classes:"image"});const r=i.convertItem(o,n.modelCursor);const s=dc(r.modelRange.getItems());if(!s){i.consumable.revert(n.viewItem,{name:true,classes:"image"});return}i.convertChildren(n.viewItem,s);i.updateConversionResult(s,n)}}function cL(t){const e=["srcset","media","type","sizes"];return t=>{t.on("element:picture",n)};function n(n,i,o){const r=i.viewItem;if(!o.consumable.test(r,{name:true})){return}const s=new Map;for(const t of r.getChildren()){if(t.is("element","source")){const n={};for(const i of e){if(t.hasAttribute(i)){if(o.consumable.test(t,{attributes:i})){n[i]=t.getAttribute(i)}}}if(Object.keys(n).length){s.set(t,n)}}}const a=t.findViewImgElement(r);if(!a){return}let l=i.modelCursor.parent;if(!l.is("element","imageBlock")){const t=o.convertItem(a,i.modelCursor);i.modelRange=t.modelRange;i.modelCursor=t.modelCursor;l=first(t.modelRange.getItems())}o.consumable.consume(r,{name:true});for(const[t,e]of s){o.consumable.consume(t,{attributes:Object.keys(e)})}if(s.size){o.writer.setAttribute("sources",Array.from(s.values()),l)}o.convertChildren(r,l)}}function dL(t,e){return t=>{t.on(`attribute:srcset:${e}`,n)};function n(e,n,i){if(!i.consumable.consume(n.item,e.name)){return}const o=i.writer;const r=i.mapper.toViewElement(n.item);const s=t.findViewImgElement(r);if(n.attributeNewValue===null){const t=n.attributeOldValue;if(t.data){o.removeAttribute("srcset",s);o.removeAttribute("sizes",s);if(t.width){o.removeAttribute("width",s)}}}else{const t=n.attributeNewValue;if(t.data){o.setAttribute("srcset",t.data,s);o.setAttribute("sizes","100vw",s);if(t.width){o.setAttribute("width",t.width,s)}}}}}function uL(t){return t=>{t.on("attribute:sources:imageBlock",e);t.on("attribute:sources:imageInline",e)};function e(e,n,i){if(!i.consumable.consume(n.item,e.name)){return}const o=i.writer;const r=i.mapper.toViewElement(n.item);const s=t.findViewImgElement(r);if(n.attributeNewValue&&n.attributeNewValue.length){const t=o.createContainerElement("picture",null,n.attributeNewValue.map((t=>o.createEmptyElement("source",t))));const e=[];let i=s.parent;while(i&&i.is("attributeElement")){const t=i.parent;o.unwrap(o.createRangeOn(s),i);e.unshift(i);i=t}o.insert(o.createPositionBefore(s),t);o.move(o.createRangeOn(s),o.createPositionAt(t,"end"));for(const n of e){o.wrap(o.createRangeOn(t),n)}}else if(s.parent.is("element","picture")){const t=s.parent;o.move(o.createRangeOn(s),o.createPositionBefore(t));o.remove(t)}}}function hL(t,e,n){return t=>{t.on(`attribute:${n}:${e}`,i)};function i(e,n,i){if(!i.consumable.consume(n.item,e.name)){return}const o=i.writer;const r=i.mapper.toViewElement(n.item);const s=t.findViewImgElement(r);o.setAttribute(n.attributeKey,n.attributeNewValue||"",s)}}class gL extends rf{observe(t){this.listenTo(t,"load",((t,e)=>{const n=e.target;if(this.checkShouldIgnoreEventFromTarget(n)){return}if(n.tagName=="IMG"){this._fireEvents(e)}}),{useCapture:true})}_fireEvents(t){if(this.isEnabled){this.document.fire("layoutChanged");this.document.fire("imageLoaded",t)}}}class mL extends iu{constructor(t){super(t);const e=t.config.get("image.insert.type");if(!t.plugins.has("ImageBlockEditing")){if(e==="block"){P("image-block-plugin-required")}}if(!t.plugins.has("ImageInlineEditing")){if(e==="inline"){P("image-inline-plugin-required")}}}refresh(){this.isEnabled=this.editor.plugins.get("ImageUtils").isImageAllowed()}execute(t){const e=Xl(t.source);const n=this.editor.model.document.selection;const i=this.editor.plugins.get("ImageUtils");const o=Object.fromEntries(n.getAttributes());e.forEach(((t,e)=>{const r=n.getSelectedElement();if(typeof t==="string"){t={src:t}}if(e&&r&&i.isImage(r)){const e=this.editor.model.createPositionAfter(r);i.insertImage({...t,...o},e)}else{i.insertImage({...t,...o})}}))}}class fL extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=this.editor.model.document.selection.getSelectedElement();this.isEnabled=e.isImage(n);this.value=this.isEnabled?n.getAttribute("src"):null}execute(t){const e=this.editor.model.document.selection.getSelectedElement();this.editor.model.change((n=>{n.setAttribute("src",t.source,e);n.removeAttribute("srcset",e);n.removeAttribute("sizes",e)}))}}class pL extends eu{static get requires(){return[XS]}static get pluginName(){return"ImageEditing"}init(){const t=this.editor;const e=t.conversion;t.editing.view.addObserver(gL);e.for("upcast").attributeToAttribute({view:{name:"img",key:"alt"},model:"alt"}).attributeToAttribute({view:{name:"img",key:"srcset"},model:{key:"srcset",value:t=>{const e={data:t.getAttribute("srcset")};if(t.hasAttribute("width")){e.width=t.getAttribute("width")}return e}}});const n=new mL(t);const i=new fL(t);t.commands.add("insertImage",n);t.commands.add("replaceImageSource",i);t.commands.add("imageInsert",n)}}class bL extends iu{constructor(t,e){super(t);this._modelElementName=e}refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(this.editor.model.document.selection);if(this._modelElementName==="imageBlock"){this.isEnabled=e.isInlineImage(n)}else{this.isEnabled=e.isBlockImage(n)}}execute(){const t=this.editor;const e=this.editor.model;const n=t.plugins.get("ImageUtils");const i=n.getClosestSelectedImageElement(e.document.selection);const o=Object.fromEntries(i.getAttributes());if(!o.src&&!o.uploadId){return null}return e.change((t=>{const r=Array.from(e.markers).filter((t=>t.getRange().containsItem(i)));const s=n.insertImage(o,e.createSelection(i,"on"),this._modelElementName);if(!s){return null}const a=t.createRangeOn(s);for(const e of r){const n=e.getRange();const i=n.root.rootName!="$graveyard"?n.getJoined(a,true):a;t.updateMarker(e,{range:i})}return{oldElement:i,newElement:s}}))}}class kL extends eu{static get requires(){return[pL,XS,UE]}static get pluginName(){return"ImageBlockEditing"}init(){const t=this.editor;const e=t.model.schema;e.register("imageBlock",{inheritAllFrom:"$blockObject",allowAttributes:["alt","src","srcset"]});this._setupConversion();if(t.plugins.has("ImageInlineEditing")){t.commands.add("imageTypeBlock",new bL(this.editor,"imageBlock"));this._setupClipboardIntegration()}}_setupConversion(){const t=this.editor;const e=t.t;const n=t.conversion;const i=t.plugins.get("ImageUtils");n.for("dataDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:e})=>ZS(e)});n.for("editingDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:n})=>i.toImageWidget(ZS(n),n,e("image widget"))});n.for("downcast").add(hL(i,"imageBlock","src")).add(hL(i,"imageBlock","alt")).add(dL(i,"imageBlock"));n.for("upcast").elementToElement({view:QS(t,"imageBlock"),model:(t,{writer:e})=>e.createElement("imageBlock",t.hasAttribute("src")?{src:t.getAttribute("src")}:null)}).add(lL(i))}_setupClipboardIntegration(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=t.plugins.get("ImageUtils");this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isInlineImageView)){return}if(r.targetRanges){a=t.editing.mapper.toModelRange(r.targetRanges[0])}else{a=e.document.selection.getFirstRange()}const l=e.createSelection(a);if(JS(e.schema,l)==="imageBlock"){const t=new kC(n.document);const e=s.map((e=>t.createElement("figure",{class:"image"},e)));r.content=t.createDocumentFragment(e)}}))}}var wL=n(9048);var AL={injectType:"singletonStyleTag",attributes:{"data-cke":true}};AL.insert="head";AL.singleton=true;var CL=Sc()(wL.Z,AL);const _L=wL.Z.locals||{};class vL extends eu{static get requires(){return[kL,ZD,aL]}static get pluginName(){return"ImageBlock"}}class yL extends eu{static get requires(){return[pL,XS,UE]}static get pluginName(){return"ImageInlineEditing"}init(){const t=this.editor;const e=t.model.schema;e.register("imageInline",{inheritAllFrom:"$inlineObject",allowAttributes:["alt","src","srcset"]});e.addChildCheck(((t,e)=>{if(t.endsWith("caption")&&e.name==="imageInline"){return false}}));this._setupConversion();if(t.plugins.has("ImageBlockEditing")){t.commands.add("imageTypeInline",new bL(this.editor,"imageInline"));this._setupClipboardIntegration()}}_setupConversion(){const t=this.editor;const e=t.t;const n=t.conversion;const 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(YS(n),n,e("image widget"))});n.for("downcast").add(hL(i,"imageInline","src")).add(hL(i,"imageInline","alt")).add(dL(i,"imageInline"));n.for("upcast").elementToElement({view:QS(t,"imageInline"),model:(t,{writer:e})=>e.createElement("imageInline",t.hasAttribute("src")?{src:t.getAttribute("src")}:null)})}_setupClipboardIntegration(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=t.plugins.get("ImageUtils");this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isBlockImageView)){return}if(r.targetRanges){a=t.editing.mapper.toModelRange(r.targetRanges[0])}else{a=e.document.selection.getFirstRange()}const l=e.createSelection(a);if(JS(e.schema,l)==="imageInline"){const t=new kC(n.document);const e=s.map((e=>{if(e.childCount===1){Array.from(e.getAttributes()).forEach((n=>t.setAttribute(...n,i.findViewImgElement(e))));return e.getChild(0)}else{return e}}));r.content=t.createDocumentFragment(e)}}))}}class xL extends eu{static get requires(){return[yL,ZD,aL]}static get pluginName(){return"ImageInline"}}class EL extends eu{static get requires(){return[vL,xL]}static get pluginName(){return"Image"}}class DL extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageCaptionUtils");if(!t.plugins.has(kL)){this.isEnabled=false;this.value=false;return}const n=t.model.document.selection;const i=n.getSelectedElement();if(!i){const t=e.getCaptionFromModelSelection(n);this.isEnabled=!!t;this.value=!!t;return}this.isEnabled=this.editor.plugins.get("ImageUtils").isImage(i);if(!this.isEnabled){this.value=false}else{this.value=!!e.getCaptionFromImageModelElement(i)}}execute(t={}){const{focusCaptionOnShow:e}=t;this.editor.model.change((t=>{if(this.value){this._hideImageCaption(t)}else{this._showImageCaption(t,e)}}))}_showImageCaption(t,e){const n=this.editor.model;const i=n.document.selection;const o=this.editor.plugins.get("ImageCaptionEditing");let r=i.getSelectedElement();const s=o._getSavedCaption(r);if(this.editor.plugins.get("ImageUtils").isInlineImage(r)){this.editor.execute("imageTypeBlock");r=i.getSelectedElement()}const a=s||t.createElement("caption");t.append(a,r);if(e){t.setSelection(a,"in")}}_hideImageCaption(t){const e=this.editor;const n=e.model.document.selection;const i=e.plugins.get("ImageCaptionEditing");const o=e.plugins.get("ImageCaptionUtils");let r=n.getSelectedElement();let s;if(r){s=o.getCaptionFromImageModelElement(r)}else{s=o.getCaptionFromModelSelection(n);r=s.parent}i._saveCaption(r,s);t.setSelection(r,"on");t.remove(s)}}class SL extends eu{static get pluginName(){return"ImageCaptionUtils"}static get requires(){return[XS]}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");const n=t.getFirstPosition().findAncestor("caption");if(!n){return null}if(e.isBlockImage(n.parent)){return n}return null}matchImageCaptionViewElement(t){const e=this.editor.plugins.get("ImageUtils");if(t.name=="figcaption"&&e.isBlockImageView(t.parent)){return{name:true}}return null}}class TL extends eu{static get requires(){return[XS,SL]}static get pluginName(){return"ImageCaptionEditing"}constructor(t){super(t);this._savedCaptionsMap=new WeakMap}init(){const t=this.editor;const e=t.model.schema;if(!e.isRegistered("caption")){e.register("caption",{allowIn:"imageBlock",allowContentOf:"$block",isLimit:true})}else{e.extend("caption",{allowIn:"imageBlock"})}t.commands.add("toggleImageCaption",new DL(this.editor));this._setupConversion();this._setupImageTypeCommandsIntegration();this._registerCaptionReconversion()}_setupConversion(){const t=this.editor;const e=t.editing.view;const n=t.plugins.get("ImageUtils");const i=t.plugins.get("ImageCaptionUtils");const 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})=>{if(!n.isBlockImage(t.parent)){return null}return e.createContainerElement("figcaption")}});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",true,r);mu({view:e,element:r,text:o("Enter image caption"),keepOnFocus:true});const s=t.parent.getAttribute("alt");const a=s?o("Caption for image: %0",[s]):o("Caption for the image");return pD(r,i,{label:a})}})}_setupImageTypeCommandsIntegration(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=t.plugins.get("ImageCaptionUtils");const i=t.commands.get("imageTypeInline");const o=t.commands.get("imageTypeBlock");const 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){this._saveCaption(o,t);return}}const r=this._getSavedCaption(i);if(r){this._saveCaption(o,r)}};if(i){this.listenTo(i,"execute",r,{priority:"low"})}if(o){this.listenTo(o,"execute",r,{priority:"low"})}}_getSavedCaption(t){const e=this._savedCaptionsMap.get(t);return e?$p.fromJSON(e):null}_saveCaption(t,e){this._savedCaptionsMap.set(t,e.toJSON())}_registerCaptionReconversion(){const t=this.editor;const e=t.model;const n=t.plugins.get("ImageUtils");const i=t.plugins.get("ImageCaptionUtils");e.document.on("change:data",(()=>{const o=e.document.differ.getChanges();for(const e of o){if(e.attributeKey!=="alt"){continue}const o=e.range.start.nodeAfter;if(n.isBlockImage(o)){const e=i.getCaptionFromImageModelElement(o);if(!e){return}t.editing.reconvertItem(e)}}}))}}class IL extends eu{static get requires(){return[SL]}static get pluginName(){return"ImageCaptionUI"}init(){const t=this.editor;const e=t.editing.view;const n=t.plugins.get("ImageCaptionUtils");const i=t.t;t.ui.componentFactory.add("toggleImageCaption",(o=>{const r=t.commands.get("toggleImageCaption");const s=new kd(o);s.set({icon:J_.caption,tooltip:true,isToggleable:true});s.bind("isOn","isEnabled").to(r,"value","isEnabled");s.bind("label").to(r,"value",(t=>t?i("Toggle caption off"):i("Toggle caption on")));this.listenTo(s,"execute",(()=>{t.execute("toggleImageCaption",{focusCaptionOnShow:true});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()}));return s}))}}var ML=n(8662);var BL={injectType:"singletonStyleTag",attributes:{"data-cke":true}};BL.insert="head";BL.singleton=true;var LL=Sc()(ML.Z,BL);const NL=ML.Z.locals||{};class zL extends eu{static get requires(){return[TL,IL]}static get pluginName(){return"ImageCaption"}}class PL extends Lc{constructor(t){super(t);this.buttonView=new kd(t);this._fileInputView=new OL(t);this._fileInputView.bind("acceptedType").to(this);this._fileInputView.bind("allowMultipleFiles").to(this);this._fileInputView.delegate("done").to(this);this.setTemplate({tag:"span",attributes:{class:"ck-file-dialog-button"},children:[this.buttonView,this._fileInputView]});this.buttonView.on("execute",(()=>{this._fileInputView.open()}))}focus(){this.buttonView.focus()}}class OL extends Lc{constructor(t){super(t);this.set("acceptedType",undefined);this.set("allowMultipleFiles",false);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((()=>{if(this.element&&this.element.files&&this.element.files.length){this.fire("done",this.element.files)}this.element.value=""}))}})}open(){this.element.click()}}class RL extends(null&&Plugin){static get requires(){return[FileRepository]}static get pluginName(){return"SimpleUploadAdapter"}init(){const t=this.editor.config.get("simpleUpload");if(!t){return}if(!t.uploadUrl){logWarning("simple-upload-adapter-missing-uploadurl");return}this.editor.plugins.get(FileRepository).createUploadAdapter=e=>new VL(e,t)}}class VL{constructor(t,e){this.loader=t;this.options=e}upload(){return this.loader.file.then((t=>new Promise(((e,n)=>{this._initRequest();this._initListeners(e,n,t);this._sendRequest(t)}))))}abort(){if(this.xhr){this.xhr.abort()}}_initRequest(){const t=this.xhr=new XMLHttpRequest;t.open("POST",this.options.uploadUrl,true);t.responseType="json"}_initListeners(t,e,n){const i=this.xhr;const o=this.loader;const r=`Couldn't upload file: ${n.name}.`;i.addEventListener("error",(()=>e(r)));i.addEventListener("abort",(()=>e()));i.addEventListener("load",(()=>{const n=i.response;if(!n||n.error){return e(n&&n.error&&n.error.message?n.error.message:r)}const o=n.url?{default:n.url}:n.urls;t({...n,urls:o})}));if(i.upload){i.upload.addEventListener("progress",(t=>{if(t.lengthComputable){o.uploadTotal=t.total;o.uploaded=t.loaded}}))}}_sendRequest(t){const e=this.options.headers||{};const n=this.options.withCredentials||false;for(const t of Object.keys(e)){this.xhr.setRequestHeader(t,e[t])}this.xhr.withCredentials=n;const i=new FormData;i.append("upload",t);this.xhr.send(i)}}function jL(t){const e=t.map((t=>t.replace("+","\\+")));return new RegExp(`^image\\/(${e.join("|")})$`)}function FL(t){return new Promise(((e,n)=>{const i=t.getAttribute("src");fetch(i).then((t=>t.blob())).then((t=>{const n=UL(t,i);const o=n.replace("image/","");const r=`image.${o}`;const s=new File([t],r,{type:n});e(s)})).catch((t=>t&&t.name==="TypeError"?WL(i).then(e).catch(n):n(t)))}))}function HL(t,e){if(!t.isInlineImageView(e)||!e.getAttribute("src")){return false}return e.getAttribute("src").match(/^data:image\/\w+;base64,/g)||e.getAttribute("src").match(/^blob:/g)}function UL(t,e){if(t.type){return t.type}else if(e.match(/data:(image\/\w+);base64/)){return e.match(/data:(image\/\w+);base64/)[1].toLowerCase()}else{return"image/jpeg"}}function WL(t){return qL(t).then((e=>{const n=UL(e,t);const i=n.replace("image/","");const o=`image.${i}`;return new File([e],o,{type:n})}))}function qL(t){return new Promise(((e,n)=>{const i=il.document.createElement("img");i.addEventListener("load",(()=>{const t=il.document.createElement("canvas");t.width=i.width;t.height=i.height;const o=t.getContext("2d");o.drawImage(i,0,0);t.toBlob((t=>t?e(t):n()))}));i.addEventListener("error",(()=>n()));i.src=t}))}class GL extends eu{static get pluginName(){return"ImageUploadUI"}init(){const t=this.editor;const e=t.t;const n=n=>{const i=new PL(n);const o=t.commands.get("uploadImage");const r=t.config.get("image.upload.types");const s=jL(r);i.set({acceptedType:r.map((t=>`image/${t}`)).join(","),allowMultipleFiles:true});i.buttonView.set({label:e("Insert image"),icon:J_.image,tooltip:true});i.buttonView.bind("isEnabled").to(o);i.on("done",((e,n)=>{const i=Array.from(n).filter((t=>s.test(t.type)));if(i.length){t.execute("uploadImage",{file:i});t.editing.view.focus()}}));return i};t.ui.componentFactory.add("uploadImage",n);t.ui.componentFactory.add("imageUpload",n)}}var $L=n(5870);var KL={injectType:"singletonStyleTag",attributes:{"data-cke":true}};KL.insert="head";KL.singleton=true;var YL=Sc()($L.Z,KL);const ZL=$L.Z.locals||{};var QL=n(9899);var JL={injectType:"singletonStyleTag",attributes:{"data-cke":true}};JL.insert="head";JL.singleton=true;var XL=Sc()(QL.Z,JL);const tN=QL.Z.locals||{};var eN=n(9825);var nN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};nN.insert="head";nN.singleton=true;var iN=Sc()(eN.Z,nN);const oN=eN.Z.locals||{};class rN extends eu{static get pluginName(){return"ImageUploadProgress"}constructor(t){super(t);this.placeholder="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="}init(){const t=this.editor;if(t.plugins.has("ImageBlockEditing")){t.editing.downcastDispatcher.on("attribute:uploadStatus:imageBlock",((...t)=>this.uploadStatusChange(...t)))}if(t.plugins.has("ImageInlineEditing")){t.editing.downcastDispatcher.on("attribute:uploadStatus:imageInline",((...t)=>this.uploadStatusChange(...t)))}}uploadStatusChange(t,e,n){const i=this.editor;const o=e.item;const r=o.getAttribute("uploadId");if(!n.consumable.consume(e.item,t.name)){return}const s=i.plugins.get("ImageUtils");const a=i.plugins.get(AI);const l=r?e.attributeNewValue:null;const c=this.placeholder;const d=i.editing.mapper.toViewElement(o);const u=n.writer;if(l=="reading"){sN(d,u);lN(s,c,d,u);return}if(l=="uploading"){const t=a.loaders.get(r);sN(d,u);if(!t){lN(s,c,d,u)}else{cN(d,u);dN(d,u,t,i.editing.view);bN(s,d,u,t)}return}if(l=="complete"&&a.loaders.get(r)){hN(d,u,i.editing.view)}uN(d,u);cN(d,u);aN(d,u)}}function sN(t,e){if(!t.hasClass("ck-appear")){e.addClass("ck-appear",t)}}function aN(t,e){e.removeClass("ck-appear",t)}function lN(t,e,n,i){if(!n.hasClass("ck-image-upload-placeholder")){i.addClass("ck-image-upload-placeholder",n)}const o=t.findViewImgElement(n);if(o.getAttribute("src")!==e){i.setAttribute("src",e,o)}if(!fN(n,"placeholder")){i.insert(i.createPositionAfter(o),mN(i))}}function cN(t,e){if(t.hasClass("ck-image-upload-placeholder")){e.removeClass("ck-image-upload-placeholder",t)}pN(t,e,"placeholder")}function dN(t,e,n,i){const o=gN(e);e.insert(e.createPositionAt(t,"end"),o);n.on("change:uploadedPercent",((t,e,n)=>{i.change((t=>{t.setStyle("width",n+"%",o)}))}))}function uN(t,e){pN(t,e,"progressBar")}function hN(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)}function gN(t){const e=t.createUIElement("div",{class:"ck-progress-bar"});t.setCustomProperty("progressBar",true,e);return e}function mN(t){const e=t.createUIElement("div",{class:"ck-upload-placeholder-loader"});t.setCustomProperty("placeholder",true,e);return e}function fN(t,e){for(const n of t.getChildren()){if(n.getCustomProperty(e)){return n}}}function pN(t,e,n){const i=fN(t,n);if(i){e.remove(e.createRangeOn(i))}}function bN(t,e,n,i){if(i.data){const o=t.findViewImgElement(e);n.setAttribute("src",i.data,o)}}class kN extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=t.model.document.selection.getSelectedElement();this.isEnabled=e.isImageAllowed()||e.isImage(n)}execute(t){const e=Xl(t.file);const n=this.editor.model.document.selection;const i=this.editor.plugins.get("ImageUtils");const 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;const o=i.plugins.get(AI);const r=o.createLoader(t);const s=i.plugins.get("ImageUtils");if(!r){return}s.insertImage({...e,uploadId:r.id},n)}}class wN extends eu{static get requires(){return[AI,Oy,UE,XS]}static get pluginName(){return"ImageUploadEditing"}constructor(t){super(t);t.config.define("image",{upload:{types:["jpeg","png","gif","bmp","webp","tiff"]}});this._uploadImageElements=new Map}init(){const t=this.editor;const e=t.model.document;const n=t.conversion;const i=t.plugins.get(AI);const o=t.plugins.get("ImageUtils");const r=jL(t.config.get("image.upload.types"));const s=new kN(t);t.commands.add("uploadImage",s);t.commands.add("imageUpload",s);n.for("upcast").attributeToAttribute({view:{name:"img",key:"uploadId"},model:"uploadId"});this.listenTo(t.editing.view.document,"clipboardInput",((e,n)=>{if(AN(n.dataTransfer)){return}const i=Array.from(n.dataTransfer.files).filter((t=>{if(!t){return false}return r.test(t.type)}));if(!i.length){return}e.stop();t.model.change((e=>{if(n.targetRanges){e.setSelection(n.targetRanges.map((e=>t.editing.mapper.toModelRange(e))))}t.model.enqueueChange((()=>{t.execute("uploadImage",{file:i})}))}))}));this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",((e,n)=>{const r=Array.from(t.editing.view.createRangeIn(n.content)).filter((t=>HL(o,t.item)&&!t.item.getAttribute("uploadProcessed"))).map((t=>({promise:FL(t.item),imageElement:t.item})));if(!r.length){return}const s=new kC(t.editing.view.document);for(const t of r){s.setAttribute("uploadProcessed",true,t.imageElement);const e=i.createLoader(t.promise);if(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:true}).reverse();const o=new Set;for(const e of n){if(e.type=="insert"&&e.name!="$text"){const n=e.position.nodeAfter;const r=e.position.root.rootName=="$graveyard";for(const e of CN(t,n)){const t=e.getAttribute("uploadId");if(!t){continue}const n=i.loaders.get(t);if(!n){continue}if(r){if(!o.has(t)){n.abort()}}else{o.add(t);this._uploadImageElements.set(t,e);if(n.status=="idle"){this._readAndUpload(n)}}}}}}));this.on("uploadComplete",((t,{imageElement:e,data:n})=>{const i=n.urls?n.urls:n;this.editor.model.change((t=>{t.setAttribute("src",i.default,e);this._parseAndSetSrcsetAttributeOnImage(i,e,t)}))}),{priority:"low"})}afterInit(){const t=this.editor.model.schema;if(this.editor.plugins.has("ImageBlockEditing")){t.extend("imageBlock",{allowAttributes:["uploadId","uploadStatus"]})}if(this.editor.plugins.has("ImageInlineEditing")){t.extend("imageInline",{allowAttributes:["uploadId","uploadStatus"]})}}_readAndUpload(t){const e=this.editor;const n=e.model;const i=e.locale.t;const o=e.plugins.get(AI);const r=e.plugins.get(Oy);const s=e.plugins.get("ImageUtils");const a=this._uploadImageElements;n.enqueueChange({isUndoable:false},(e=>{e.setAttribute("uploadStatus","reading",a.get(t.id))}));return t.read().then((()=>{const i=t.upload();const o=a.get(t.id);if(c.isSafari){const t=e.editing.mapper.toViewElement(o);const n=s.findViewImgElement(t);e.editing.view.once("render",(()=>{if(!n.parent){return}const t=e.editing.view.domConverter.mapViewToDom(n.parent);if(!t){return}const i=t.style.display;t.style.display="none";t._ckHack=t.offsetHeight;t.style.display=i}))}n.enqueueChange({isUndoable:false},(t=>{t.setAttribute("uploadStatus","uploading",o)}));return i})).then((e=>{n.enqueueChange({isUndoable:false},(n=>{const i=a.get(t.id);n.setAttribute("uploadStatus","complete",i);this.fire("uploadComplete",{data:e,imageElement:i})}));l()})).catch((e=>{if(t.status!=="error"&&t.status!=="aborted"){throw e}if(t.status=="error"&&e){r.showWarning(e,{title:i("Upload failed"),namespace:"upload"})}n.enqueueChange({isUndoable:false},(e=>{e.remove(a.get(t.id))}));l()}));function l(){n.enqueueChange({isUndoable:false},(e=>{const n=a.get(t.id);e.removeAttribute("uploadId",n);e.removeAttribute("uploadStatus",n);a.delete(t.id)}));o.destroyLoader(t)}}_parseAndSetSrcsetAttributeOnImage(t,e,n){let i=0;const o=Object.keys(t).filter((t=>{const e=parseInt(t,10);if(!isNaN(e)){i=Math.max(i,e);return true}})).map((e=>`${t[e]} ${e}w`)).join(", ");if(o!=""){n.setAttribute("srcset",{data:o,width:i},e)}}}function AN(t){return Array.from(t.types).includes("text/html")&&t.getData("text/html")!==""}function CN(t,e){const n=t.plugins.get("ImageUtils");return Array.from(t.model.createRangeOn(e)).filter((t=>n.isImage(t.item))).map((t=>t.item))}class _N extends eu{static get pluginName(){return"ImageUpload"}static get requires(){return[wN,GL,rN]}}var vN=n(5150);var yN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};yN.insert="head";yN.singleton=true;var xN=Sc()(vN.Z,yN);const EN=vN.Z.locals||{};class DN extends Lc{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("class",e.class||null);this.children=this.createCollection();if(e.children){e.children.forEach((t=>this.children.add(t)))}this.set("_role",null);this.set("_ariaLabelledBy",null);if(e.labelView){this.set({_role:"group",_ariaLabelledBy:e.labelView.id})}this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__row",n.to("class")],role:n.to("_role"),"aria-labelledby":n.to("_ariaLabelledBy")},children:this.children})}}var SN=n(9292);var TN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};TN.insert="head";TN.singleton=true;var IN=Sc()(SN.Z,TN);const MN=SN.Z.locals||{};class BN extends Lc{constructor(t,e){super(t);const{insertButtonView:n,cancelButtonView:i}=this._createActionButtons(t);this.insertButtonView=n;this.cancelButtonView=i;this.set("imageURLInputValue","");this.focusTracker=new uc;this.keystrokes=new hc;this._focusables=new xc;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.set("_integrations",new cc);if(e){for(const[t,n]of Object.entries(e)){if(t==="insertImageViaUrl"){n.fieldView.bind("value").to(this,"imageURLInputValue",(t=>t||""));n.fieldView.on("input",(()=>{this.imageURLInputValue=n.fieldView.element.value.trim()}))}n.name=t;this._integrations.add(n)}}this.setTemplate({tag:"form",attributes:{class:["ck","ck-image-insert-form"],tabindex:"-1"},children:[...this._integrations,new DN(t,{children:[this.insertButtonView,this.cancelButtonView],class:"ck-image-insert-form__action-row"})]})}render(){super.render();o({view:this});const t=[...this._integrations,this.insertButtonView,this.cancelButtonView];t.forEach((t=>{this._focusables.add(t);this.focusTracker.add(t.element)}));this.keystrokes.listenTo(this.element);const e=t=>t.stopPropagation();this.keystrokes.set("arrowright",e);this.keystrokes.set("arrowleft",e);this.keystrokes.set("arrowup",e);this.keystrokes.set("arrowdown",e);this.listenTo(t[0].element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}getIntegration(t){return this._integrations.find((e=>e.name===t))}_createActionButtons(t){const e=t.t;const n=new kd(t);const i=new kd(t);n.set({label:e("Insert"),icon:J_.check,class:"ck-button-save",type:"submit",withText:true,isEnabled:this.imageURLInputValue});i.set({label:e("Cancel"),icon:J_.cancel,class:"ck-button-cancel",withText:true});n.bind("isEnabled").to(this,"imageURLInputValue",(t=>!!t));n.delegate("execute").to(this,"submit");i.delegate("execute").to(this,"cancel");return{insertButtonView:n,cancelButtonView:i}}focus(){this._focusCycler.focusFirst()}}function LN(t){const e=t.config.get("image.insert.integrations");const n=t.plugins.get("ImageInsertUI");const i={insertImageViaUrl:NN(t.locale)};if(!e){return i}if(e.find((t=>t==="openCKFinder"))&&t.ui.componentFactory.has("ckfinder")){const e=t.ui.componentFactory.create("ckfinder");e.set({withText:true,class:"ck-image-insert__ck-finder-button"});e.delegate("execute").to(n,"cancel");i.openCKFinder=e}return e.reduce(((e,n)=>{if(i[n]){e[n]=i[n]}else if(t.ui.componentFactory.has(n)){e[n]=t.ui.componentFactory.create(n)}return e}),{})}function NN(t){const e=t.t;const n=new Ly(t,Ny);n.set({label:e("Insert image via URL")});n.fieldView.placeholder="https://example.com/image.png";return n}class zN extends eu{static get pluginName(){return"ImageInsertUI"}init(){const t=this.editor;const e=t=>this._createDropdownView(t);t.ui.componentFactory.add("insertImage",e);t.ui.componentFactory.add("imageInsert",e)}_createDropdownView(t){const e=this.editor;const n=t.t;const i=e.commands.get("uploadImage");const o=e.commands.get("insertImage");this.dropdownView=yv(t,i?$d:undefined);const r=this.dropdownView.buttonView;const s=this.dropdownView.panelView;r.set({label:n("Insert image"),icon:J_.image,tooltip:true});s.extendTemplate({attributes:{class:"ck-image-insert__panel"}});if(i){const t=this.dropdownView.buttonView;t.actionView=e.ui.componentFactory.create("uploadImage");t.actionView.extendTemplate({attributes:{class:"ck ck-button ck-splitbutton__action"}})}return this._setUpDropdown(i||o)}_setUpDropdown(t){const e=this.editor;const n=e.t;const i=this.dropdownView;const o=i.panelView;const r=this.editor.plugins.get("ImageUtils");const s=e.commands.get("replaceImageSource");let a;i.bind("isEnabled").to(t);i.once("change:isOpen",(()=>{a=new BN(e.locale,LN(e));a.delegate("submit","cancel").to(i);o.children.add(a)}));i.on("change:isOpen",(()=>{const t=e.model.document.selection.getSelectedElement();const o=a.insertButtonView;const l=a.getIntegration("insertImageViaUrl");if(i.isOpen){if(r.isImage(t)){a.imageURLInputValue=s.value;o.label=n("Update");l.label=n("Update image URL")}else{a.imageURLInputValue="";o.label=n("Insert");l.label=n("Insert image via URL")}}}),{priority:"low"});this.delegate("cancel").to(i);i.on("submit",(()=>{c();l()}));i.on("cancel",(()=>{c()}));function l(){const t=e.model.document.selection.getSelectedElement();if(r.isImage(t)){e.execute("replaceImageSource",{source:a.imageURLInputValue})}else{e.execute("insertImage",{source:a.imageURLInputValue})}}function c(){e.editing.view.focus();i.isOpen=false}return i}}class PN extends eu{static get pluginName(){return"ImageInsertViaUrl"}static get requires(){return[zN]}}class ON extends eu{static get pluginName(){return"ImageInsert"}static get requires(){return[_N,PN,zN]}}class RN extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(t.model.document.selection);this.isEnabled=!!n;if(!n||!n.hasAttribute("width")){this.value=null}else{this.value={width:n.getAttribute("width"),height:null}}}execute(t){const e=this.editor;const n=e.model;const i=e.plugins.get("ImageUtils");const o=i.getClosestSelectedImageElement(n.document.selection);this.value={width:t.width,height:null};if(o){n.change((e=>{e.setAttribute("width",t.width,o)}))}}}class VN extends eu{static get requires(){return[XS]}static get pluginName(){return"ImageResizeEditing"}constructor(t){super(t);t.config.define("image",{resizeUnit:"%",resizeOptions:[{name:"resizeImage:original",value:null,icon:"original"},{name:"resizeImage:25",value:"25",icon:"small"},{name:"resizeImage:50",value:"50",icon:"medium"},{name:"resizeImage:75",value:"75",icon:"large"}]})}init(){const t=this.editor;const e=new RN(t);this._registerSchema();this._registerConverters("imageBlock");this._registerConverters("imageInline");t.commands.add("resizeImage",e);t.commands.add("imageResize",e)}_registerSchema(){if(this.editor.plugins.has("ImageBlockEditing")){this.editor.model.schema.extend("imageBlock",{allowAttributes:"width"})}if(this.editor.plugins.has("ImageInlineEditing")){this.editor.model.schema.extend("imageInline",{allowAttributes:"width"})}}_registerConverters(t){const e=this.editor;e.conversion.for("downcast").add((e=>e.on(`attribute:width:${t}`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const i=n.writer;const o=n.mapper.toViewElement(e.item);if(e.attributeNewValue!==null){i.setStyle("width",e.attributeNewValue,o);i.addClass("image_resized",o)}else{i.removeStyle("width",o);i.removeClass("image_resized",o)}}))));e.conversion.for("upcast").attributeToAttribute({view:{name:t==="imageBlock"?"figure":"img",styles:{width:/.+/}},model:{key:"width",value:t=>t.getStyle("width")}})}}const jN={small:J_.objectSizeSmall,medium:J_.objectSizeMedium,large:J_.objectSizeLarge,original:J_.objectSizeFull};class FN extends eu{static get requires(){return[VN]}static get pluginName(){return"ImageResizeButtons"}constructor(t){super(t);this._resizeUnit=t.config.get("image.resizeUnit")}init(){const t=this.editor;const e=t.config.get("image.resizeOptions");const 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;const{name:n,value:i,icon:o}=t;const r=i?i+this._resizeUnit:null;e.ui.componentFactory.add(n,(n=>{const i=new kd(n);const s=e.commands.get("resizeImage");const a=this._getOptionLabelValue(t,true);if(!jN[o]){throw new z("imageresizebuttons-missing-icon",e,t)}i.set({label:a,icon:jN[o],tooltip:a,isToggleable:true});i.bind("isEnabled").to(this);i.bind("isOn").to(s,"value",HN(r));this.listenTo(i,"execute",(()=>{e.execute("resizeImage",{width:r})}));return i}))}_registerImageResizeDropdown(t){const e=this.editor;const n=e.t;const i=t.find((t=>!t.value));const o=o=>{const r=e.commands.get("resizeImage");const s=yv(o,Hd);const a=s.buttonView;a.set({tooltip:n("Resize image"),commandValue:i.value,icon:jN.medium,isToggleable:true,label:this._getOptionLabelValue(i),withText:true,class:"ck-resize-image-button"});a.bind("label").to(r,"value",(t=>{if(t&&t.width){return t.width}else{return this._getOptionLabelValue(i)}}));s.bind("isOn").to(r);s.bind("isEnabled").to(this);Dv(s,(()=>this._getResizeDropdownListItemDefinitions(t,r)),{ariaLabel:n("Image resize list")});this.listenTo(s,"execute",(t=>{e.execute(t.source.commandName,{width:t.source.commandValue});e.editing.view.focus()}));return s};e.ui.componentFactory.add("resizeImage",o);e.ui.componentFactory.add("imageResize",o)}_getOptionLabelValue(t,e){const n=this.editor.t;if(t.label){return t.label}else if(e){if(t.value){return n("Resize image to %0",t.value+this._resizeUnit)}else{return n("Resize image to the original size")}}else{if(t.value){return t.value+this._resizeUnit}else{return n("Original")}}}_getResizeDropdownListItemDefinitions(t,e){const n=new cc;t.map((t=>{const i=t.value?t.value+this._resizeUnit:null;const o={type:"button",model:new Ry({commandName:"resizeImage",commandValue:i,label:this._getOptionLabelValue(t),withText:true,icon:null})};o.model.bind("isOn").to(e,"value",HN(i));n.add(o)}));return n}}function HN(t){return e=>{if(t===null&&e===t){return true}return e&&e.width===t}}const UN="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";const WN=/(image|image-inline)/;const qN="image_resized";class GN extends eu{static get requires(){return[CS]}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;const e=t.editing.view;e.addObserver(gL);this.listenTo(e.document,"imageLoaded",((n,i)=>{if(!i.target.matches(UN)){return}const o=t.editing.view.domConverter;const r=o.domToView(i.target);const s=r.findAncestor({classes:WN});let a=this.editor.plugins.get(CS).getResizerByViewElement(s);if(a){a.redraw();return}const l=t.editing.mapper;const c=l.toModelElement(s);a=t.plugins.get(CS).attachTo({unit:t.config.get("image.resizeUnit"),modelElement:c,viewElement:s,editor:t,getHandleHost(t){return t.querySelector("img")},getResizeHost(){return o.mapViewToDom(l.toViewElement(c.parent))},isCentered(){const t=c.getAttribute("imageStyle");return!t||t=="block"||t=="alignCenter"},onCommit(n){e.change((t=>{t.removeClass(qN,s)}));t.execute("resizeImage",{width:n})}});a.on("updateSize",(()=>{if(!s.hasClass(qN)){e.change((t=>{t.addClass(qN,s)}))}}));a.bind("isEnabled").to(this)}))}}var $N=n(1043);var KN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};KN.insert="head";KN.singleton=true;var YN=Sc()($N.Z,KN);const ZN=$N.Z.locals||{};class QN extends eu{static get requires(){return[VN,GN,FN]}static get pluginName(){return"ImageResize"}}class JN extends iu{constructor(t,e){super(t);this._defaultStyles={imageBlock:false,imageInline:false};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;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!n;if(!this.isEnabled){this.value=false}else if(n.hasAttribute("imageStyle")){this.value=n.getAttribute("imageStyle")}else{this.value=this._defaultStyles[n.name]}}execute(t={}){const e=this.editor;const n=e.model;const i=e.plugins.get("ImageUtils");n.change((e=>{const o=t.value;let r=i.getClosestSelectedImageElement(n.document.selection);if(o&&this.shouldConvertImageType(o,r)){this.editor.execute(i.isBlockImage(r)?"imageTypeInline":"imageTypeBlock");r=i.getClosestSelectedImageElement(n.document.selection)}if(!o||this._styles.get(o).isDefault){e.removeAttribute("imageStyle",r)}else{e.setAttribute("imageStyle",o,r)}}))}shouldConvertImageType(t,e){const n=this._styles.get(t).modelElements;return!n.includes(e.name)}}const{objectFullWidth:XN,objectInline:tz,objectLeft:ez,objectRight:nz,objectCenter:iz,objectBlockLeft:oz,objectBlockRight:rz}=J_;const sz={get inline(){return{name:"inline",title:"In line",icon:tz,modelElements:["imageInline"],isDefault:true}},get alignLeft(){return{name:"alignLeft",title:"Left aligned image",icon:ez,modelElements:["imageBlock","imageInline"],className:"image-style-align-left"}},get alignBlockLeft(){return{name:"alignBlockLeft",title:"Left aligned image",icon:oz,modelElements:["imageBlock"],className:"image-style-block-align-left"}},get alignCenter(){return{name:"alignCenter",title:"Centered image",icon:iz,modelElements:["imageBlock"],className:"image-style-align-center"}},get alignRight(){return{name:"alignRight",title:"Right aligned image",icon:nz,modelElements:["imageBlock","imageInline"],className:"image-style-align-right"}},get alignBlockRight(){return{name:"alignBlockRight",title:"Right aligned image",icon:rz,modelElements:["imageBlock"],className:"image-style-block-align-right"}},get block(){return{name:"block",title:"Centered image",icon:iz,modelElements:["imageBlock"],isDefault:true}},get side(){return{name:"side",title:"Side image",icon:nz,modelElements:["imageBlock"],className:"image-style-side"}}};const az={full:XN,left:oz,right:rz,center:iz,inlineLeft:ez,inlineRight:nz,inline:tz};const lz=[{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 cz(t){const e=t.configuredStyles.options||[];const n=e.map((t=>hz(t))).filter((e=>gz(e,t)));return n}function dz(t,e){if(t&&e){return{options:["inline","alignLeft","alignRight","alignCenter","alignBlockLeft","alignBlockRight","block","side"]}}else if(t){return{options:["block","side"]}}else if(e){return{options:["inline","alignLeft","alignRight"]}}return{}}function uz(t){if(t.has("ImageBlockEditing")&&t.has("ImageInlineEditing")){return[...lz]}else{return[]}}function hz(t){if(typeof t==="string"){if(!sz[t]){t={name:t}}else{t={...sz[t]}}}else{t=mz(sz[t.name],t)}if(typeof t.icon==="string"){t.icon=az[t.icon]||t.icon}return t}function gz(t,{isBlockPluginLoaded:e,isInlinePluginLoaded:n}){const{modelElements:i,name:o}=t;if(!i||!i.length||!o){fz({style:t});return false}else{const o=[e?"imageBlock":null,n?"imageInline":null];if(!i.some((t=>o.includes(t)))){P("image-style-missing-dependency",{style:t,missingPlugins:i.map((t=>t==="imageBlock"?"ImageBlockEditing":"ImageInlineEditing"))});return false}}return true}function mz(t,e){const n={...e};for(const i in t){if(!Object.prototype.hasOwnProperty.call(e,i)){n[i]=t[i]}}return n}function fz(t){P("image-style-configuration-definition-invalid",t)}const pz={normalizeStyles:cz,getDefaultStylesConfiguration:dz,getDefaultDropdownDefinitions:uz,warnInvalidStyle:fz,DEFAULT_OPTIONS:sz,DEFAULT_ICONS:az,DEFAULT_DROPDOWN_DEFINITIONS:lz};function bz(t){return(e,n,i)=>{if(!i.consumable.consume(n.item,e.name)){return}const o=wz(n.attributeNewValue,t);const r=wz(n.attributeOldValue,t);const s=i.mapper.toViewElement(n.item);const a=i.writer;if(r){a.removeClass(r.className,s)}if(o){a.addClass(o.className,s)}}}function kz(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;const r=dc(n.modelRange.getItems());if(!r){return}if(!i.schema.checkAttribute(r,"imageStyle")){return}for(const t of e[r.name]){if(i.consumable.consume(o,{classes:t.className})){i.writer.setAttribute("imageStyle",t.name,r)}}}}function wz(t,e){for(const n of e){if(n.name===t){return n}}}class Az extends eu{static get pluginName(){return"ImageStyleEditing"}static get requires(){return[XS]}init(){const{normalizeStyles:t,getDefaultStylesConfiguration:e}=pz;const n=this.editor;const i=n.plugins.has("ImageBlockEditing");const 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 JN(n,this.normalizedStyles))}_setupConversion(t,e){const n=this.editor;const i=n.model.schema;const o=bz(this.normalizedStyles);const r=kz(this.normalizedStyles);n.editing.downcastDispatcher.on("attribute:imageStyle",o);n.data.downcastDispatcher.on("attribute:imageStyle",o);if(t){i.extend("imageBlock",{allowAttributes:"imageStyle"});n.data.upcastDispatcher.on("element:figure",r,{priority:"low"})}if(e){i.extend("imageInline",{allowAttributes:"imageStyle"});n.data.upcastDispatcher.on("element:img",r,{priority:"low"})}}_setupPostFixer(){const t=this.editor;const e=t.model.document;const n=t.plugins.get(XS);const i=new Map(this.normalizedStyles.map((t=>[t.name,t])));e.registerPostFixer((t=>{let o=false;for(const r of e.differ.getChanges()){if(r.type=="insert"||r.type=="attribute"&&r.attributeKey=="imageStyle"){let e=r.type=="insert"?r.position.nodeAfter:r.range.start.nodeAfter;if(e&&e.is("element","paragraph")&&e.childCount>0){e=e.getChild(0)}if(!n.isImage(e)){continue}const s=e.getAttribute("imageStyle");if(!s){continue}const a=i.get(s);if(!a||!a.modelElements.includes(e.name)){t.removeAttribute("imageStyle",e);o=true}}}return o}))}}var Cz=n(4622);var _z={injectType:"singletonStyleTag",attributes:{"data-cke":true}};_z.insert="head";_z.singleton=true;var vz=Sc()(Cz.Z,_z);const yz=Cz.Z.locals||{};class xz extends eu{static get requires(){return[Az]}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;const e=this.editor.config.get("image.toolbar")||[];const n=Ez(t.get("ImageStyleEditing").normalizedStyles,this.localizedDefaultStylesTitles);for(const t of n){this._createButton(t)}const i=Ez([...e.filter(at),...pz.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;const l=s.filter((t=>e.find((({name:e})=>Dz(e)===t)))).map((t=>{const e=n.create(t);if(t===r){o=e}return e}));if(s.length!==l.length){pz.warnInvalidStyle({dropdown:t})}const c=yv(i,$d);const d=c.buttonView;const u=d.arrowView;xv(c,l,{enableActiveItemFocusOnDropdownOpen:true});d.set({label:Sz(a,o.label),class:null,tooltip:true});u.unbind("label");u.set({label:a});d.bind("icon").toMany(l,"isOn",((...t)=>{const e=t.findIndex($h);return e<0?o.icon:l[e].icon}));d.bind("label").toMany(l,"isOn",((...t)=>{const e=t.findIndex($h);return Sz(a,e<0?o.label:l[e].label)}));d.bind("isOn").toMany(l,"isOn",((...t)=>t.some($h)));d.bind("class").toMany(l,"isOn",((...t)=>t.some($h)?"ck-splitbutton_flatten":null));d.on("execute",(()=>{if(!l.some((({isOn:t})=>t))){o.fire("execute")}else{c.isOpen=!c.isOpen}}));c.bind("isEnabled").toMany(l,"isEnabled",((...t)=>t.some($h)));this.listenTo(c,"execute",(()=>{this.editor.editing.view.focus()}));return c}))}_createButton(t){const e=t.name;this.editor.ui.componentFactory.add(Dz(e),(n=>{const i=this.editor.commands.get("imageStyle");const o=new kd(n);o.set({label:t.title,icon:t.icon,tooltip:true,isToggleable:true});o.bind("isEnabled").to(i,"isEnabled");o.bind("isOn").to(i,"value",(t=>t===e));o.on("execute",this._executeCommand.bind(this,e));return o}))}_executeCommand(t){this.editor.execute("imageStyle",{value:t});this.editor.editing.view.focus()}}function Ez(t,e){for(const n of t){if(e[n.title]){n.title=e[n.title]}}return t}function Dz(t){return`imageStyle:${t}`}function Sz(t,e){return(t?t+": ":"")+e}class Tz extends eu{static get requires(){return[Az,xz]}static get pluginName(){return"ImageStyle"}}class Iz extends eu{static get requires(){return[XD,XS]}static get pluginName(){return"ImageToolbar"}afterInit(){const t=this.editor;const e=t.t;const n=t.plugins.get(XD);const i=t.plugins.get("ImageUtils");n.register("image",{ariaLabel:e("Image toolbar"),items:Mz(t.config.get("image.toolbar")||[]),getRelatedElement:t=>i.getClosestSelectedImageWidget(t)})}}function Mz(t){return t.map((t=>at(t)?t.name:t))}class Bz extends eu{static get pluginName(){return"IndentEditing"}init(){const t=this.editor;t.commands.add("indent",new ru(t));t.commands.add("outdent",new ru(t))}}const Lz='$${Delta.CKEditor.Icon[44]}$$';const Nz='$${Delta.CKEditor.Icon[45]}$$';class zz extends eu{static get pluginName(){return"IndentUI"}init(){const t=this.editor;const e=t.locale;const n=t.t;const i=e.uiLanguageDirection=="ltr"?Lz:Nz;const o=e.uiLanguageDirection=="ltr"?Nz:Lz;this._defineButton("indent",n("Increase indent"),i);this._defineButton("outdent",n("Decrease indent"),o)}_defineButton(t,e,n){const i=this.editor;i.ui.componentFactory.add(t,(o=>{const r=i.commands.get(t);const s=new kd(o);s.set({label:e,icon:n,tooltip:true});s.bind("isOn","isEnabled").to(r,"value","isEnabled");this.listenTo(s,"execute",(()=>{i.execute(t);i.editing.view.focus()}));return s}))}}class Pz extends eu{static get pluginName(){return"Indent"}static get requires(){return[Bz,zz]}}class Oz extends iu{constructor(t,e){super(t);this._indentBehavior=e}refresh(){const t=this.editor;const e=t.model;const n=dc(e.document.selection.getSelectedBlocks());if(!n||!e.schema.checkAttribute(n,"blockIndent")){this.isEnabled=false;return}this.isEnabled=this._indentBehavior.checkEnabled(n.getAttribute("blockIndent"))}execute(){const t=this.editor.model;const e=Rz(t);t.change((t=>{for(const n of e){const e=n.getAttribute("blockIndent");const i=this._indentBehavior.getNextIndent(e);if(i){t.setAttribute("blockIndent",i,n)}else{t.removeAttribute("blockIndent",n)}}}))}}function Rz(t){const e=t.document.selection;const n=t.schema;const i=Array.from(e.getSelectedBlocks());return i.filter((t=>n.checkAttribute(t,"blockIndent")))}class Vz{constructor(t){this.isForward=t.direction==="forward";this.offset=t.offset;this.unit=t.unit}checkEnabled(t){const e=parseFloat(t||0);return this.isForward||e>0}getNextIndent(t){const e=parseFloat(t||0);const n=!t||t.endsWith(this.unit);if(!n){return this.isForward?this.offset+this.unit:undefined}const i=this.isForward?this.offset:-this.offset;const o=e+i;return o>0?o+this.unit:undefined}}class jz{constructor(t){this.isForward=t.direction==="forward";this.classes=t.classes}checkEnabled(t){const e=this.classes.indexOf(t);if(this.isForward){return e<this.classes.length-1}else{return e>=0}}getNextIndent(t){const e=this.classes.indexOf(t);const n=this.isForward?1:-1;return this.classes[e+n]}}const Fz=["paragraph","heading1","heading2","heading3","heading4","heading5","heading6"];class Hz extends eu{constructor(t){super(t);t.config.define("indentBlock",{offset:40,unit:"px"})}static get pluginName(){return"IndentBlock"}init(){const t=this.editor;const e=t.config.get("indentBlock");const n=!e.classes||!e.classes.length;const i=Object.assign({direction:"forward"},e);const o=Object.assign({direction:"backward"},e);if(n){t.data.addStyleProcessorRules(a_);this._setupConversionUsingOffset(t.conversion);t.commands.add("indentBlock",new Oz(t,new Vz(i)));t.commands.add("outdentBlock",new Oz(t,new Vz(o)))}else{this._setupConversionUsingClasses(e.classes);t.commands.add("indentBlock",new Oz(t,new jz(i)));t.commands.add("outdentBlock",new Oz(t,new jz(o)))}}afterInit(){const t=this.editor;const e=t.model.schema;const n=t.commands.get("indent");const i=t.commands.get("outdent");const o=t.config.get("heading.options");const r=o&&o.map((t=>t.model));const s=r||Fz;s.forEach((t=>{if(e.isRegistered(t)){e.extend(t,{allowAttributes:"blockIndent"})}}));e.setAttributeProperties("blockIndent",{isFormatting:true});n.registerChildCommand(t.commands.get("indentBlock"));i.registerChildCommand(t.commands.get("outdentBlock"))}_setupConversionUsingOffset(){const t=this.editor.conversion;const e=this.editor.locale;const n=e.contentLanguageDirection==="rtl"?"margin-right":"margin-left";t.for("upcast").attributeToAttribute({view:{styles:{[n]:/[\s\S]+/}},model:{key:"blockIndent",value:t=>t.getStyle(n)}});t.for("downcast").attributeToAttribute({model:"blockIndent",view:t=>({key:"style",value:{[n]:t}})})}_setupConversionUsingClasses(t){const e={model:{key:"blockIndent",values:[]},view:{}};for(const n of t){e.model.values.push(n);e.view[n]={key:"class",value:[n]}}this.editor.conversion.attributeToAttribute(e)}}const Uz="italic";class Wz extends eu{static get pluginName(){return"ItalicEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:Uz});t.model.schema.setAttributeProperties(Uz,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:Uz,view:"i",upcastAlso:["em",{styles:{"font-style":"italic"}}]});t.commands.add(Uz,new zI(t,Uz));t.keystrokes.set("CTRL+I",Uz)}}const qz='$${Delta.CKEditor.Icon[46]}$$';const Gz="italic";class $z extends eu{static get pluginName(){return"ItalicUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(Gz,(n=>{const i=t.commands.get(Gz);const o=new kd(n);o.set({label:e("Italic"),icon:qz,keystroke:"CTRL+I",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(Gz);t.editing.view.focus()}));return o}))}}class Kz extends eu{static get requires(){return[Wz,$z]}static get pluginName(){return"Italic"}}class Yz{constructor(){this._definitions=new Set}get length(){return this._definitions.size}add(t){if(Array.isArray(t)){t.forEach((t=>this._definitions.add(t)))}else{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;const o=i.document.selection;for(const t of this._definitions){const r=i.createAttributeElement("a",t.attributes,{priority:5});if(t.classes){i.addClass(t.classes,r)}for(const e in t.styles){i.setStyle(e,t.styles[e],r)}i.setCustomProperty("link",true,r);if(t.callback(e.attributeNewValue)){if(e.item.is("selection")){i.wrap(o.getFirstRange(),r)}else{i.wrap(n.mapper.toViewRange(e.range),r)}}else{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);const r=Array.from(o.getChildren()).find((t=>t.name==="a"));for(const t of this._definitions){const i=mc(t.attributes);if(t.callback(e.attributeNewValue)){for(const[t,e]of i){if(t==="class"){n.addClass(e,r)}else{n.setAttribute(t,e,r)}}if(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){if(t==="class"){n.removeClass(e,r)}else{n.removeAttribute(t,r)}}if(t.classes){n.removeClass(t.classes,r)}for(const e in t.styles){n.removeStyle(e,r)}}}}))}}}class Zz extends iu{constructor(t){super(t);this.manualDecorators=new cc;this.automaticDecorators=new Yz}restoreManualDecoratorStates(){for(const t of this.manualDecorators){t.value=this._getDecoratorStateFromModel(t.id)}}refresh(){const t=this.editor.model;const e=t.document.selection;const n=e.getSelectedElement()||dc(e.getSelectedBlocks());if(rI(n,t.schema)){this.value=n.getAttribute("linkHref");this.isEnabled=t.schema.checkAttribute(n,"linkHref")}else{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;const i=n.document.selection;const o=[];const r=[];for(const t in e){if(e[t]){o.push(t)}else{r.push(t)}}n.change((e=>{if(i.isCollapsed){const s=i.getFirstPosition();if(i.hasAttribute("linkHref")){const a=SE(s,"linkHref",i.getAttribute("linkHref"),n);e.setAttribute("linkHref",t,a);o.forEach((t=>{e.setAttribute(t,true,a)}));r.forEach((t=>{e.removeAttribute(t,a)}));e.setSelection(e.createPositionAfter(a.end.nodeBefore))}else if(t!==""){const r=mc(i.getAttributes());r.set("linkHref",t);o.forEach((t=>{r.set(t,true)}));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");const a=[];for(const t of i.getSelectedBlocks()){if(n.schema.checkAttribute(t,"linkHref")){a.push(e.createRangeOn(t))}}const l=a.slice();for(const t of s){if(this._isRangeToUpdate(t,a)){l.push(t)}}for(const n of l){e.setAttribute("linkHref",t,n);o.forEach((t=>{e.setAttribute(t,true,n)}));r.forEach((t=>{e.removeAttribute(t,n)}))}}}))}_getDecoratorStateFromModel(t){const e=this.editor.model;const n=e.document.selection;const i=n.getSelectedElement();if(rI(i,e.schema)){return i.getAttribute(t)}return n.getAttribute(t)}_isRangeToUpdate(t,e){for(const n of e){if(n.containsRange(t)){return false}}return true}}class Qz extends iu{refresh(){const t=this.editor.model;const e=t.document.selection;const n=e.getSelectedElement();if(rI(n,t.schema)){this.isEnabled=t.schema.checkAttribute(n,"linkHref")}else{this.isEnabled=t.schema.checkAttributeInSelection(e,"linkHref")}}execute(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;const i=t.commands.get("link");e.change((t=>{const o=n.isCollapsed?[SE(n.getFirstPosition(),"linkHref",n.getAttribute("linkHref"),e)]:e.schema.getValidRanges(n.getRanges(),"linkHref");for(const e of o){t.removeAttribute("linkHref",e);if(i){for(const n of i.manualDecorators){t.removeAttribute(n.id,e)}}}}))}}class Jz{constructor({id:t,label:e,attributes:n,classes:i,styles:o,defaultValue:r}){this.id=t;this.set("value");this.defaultValue=r;this.label=e;this.attributes=n;this.classes=i;this.styles=o}_createPattern(){return{attributes:this.attributes,classes:this.classes,styles:this.styles}}}x(Jz,mt);var Xz=n(399);var tP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tP.insert="head";tP.singleton=true;var eP=Sc()(Xz.Z,tP);const nP=Xz.Z.locals||{};const iP="ck-link_selected";const oP="automatic";const rP="manual";const sP=/^(https?:)?\/\//;class aP extends eu{static get pluginName(){return"LinkEditing"}static get requires(){return[lE,Gx,UE]}constructor(t){super(t);t.config.define("link",{addTargetToExternalLinks:false})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:"linkHref"});t.conversion.for("dataDowncast").attributeToElement({model:"linkHref",view:tI});t.conversion.for("editingDowncast").attributeToElement({model:"linkHref",view:(t,e)=>tI(eI(t),e)});t.conversion.for("upcast").elementToAttribute({view:{name:"a",attributes:{href:true}},model:{key:"linkHref",value:t=>t.getAttribute("href")}});t.commands.add("link",new Zz(t));t.commands.add("unlink",new Qz(t));const e=iI(t.t,oI(t.config.get("link.decorators")));this._enableAutomaticDecorators(e.filter((t=>t.mode===oP)));this._enableManualDecorators(e.filter((t=>t.mode===rP)));const n=t.plugins.get(lE);n.registerAttribute("linkHref");IE(t,"linkHref","a",iP);this._enableLinkOpen();this._enableInsertContentSelectionAttributesFixer();this._enableClickingAfterLink();this._enableTypingOverLink();this._handleDeleteContentAfterLink();this._enableClipboardIntegration()}_enableAutomaticDecorators(t){const e=this.editor;const n=e.commands.get("link");const i=n.automaticDecorators;if(e.config.get("link.addTargetToExternalLinks")){i.add({id:"linkIsExternal",mode:oP,callback:t=>sP.test(t),attributes:{target:"_blank",rel:"noopener noreferrer"}})}i.add(t);if(i.length){e.conversion.for("downcast").add(i.getDispatcher())}}_enableManualDecorators(t){if(!t.length){return}const e=this.editor;const n=e.commands.get("link");const i=n.manualDecorators;t.forEach((t=>{e.model.schema.extend("$text",{allowAttributes:t.id});t=new Jz(t);i.add(t);e.conversion.for("downcast").attributeToElement({model:t.id,view:(e,{writer:n,schema:i},{item:o})=>{if(!(o.is("selection")||i.isInline(o))){return}if(e){const e=n.createAttributeElement("a",t.attributes,{priority:5});if(t.classes){n.addClass(t.classes,e)}for(const i in t.styles){n.setStyle(i,t.styles[i],e)}n.setCustomProperty("link",true,e);return e}}});e.conversion.for("upcast").elementToAttribute({view:{name:"a",...t._createPattern()},model:{key:t.id}})}))}_enableLinkOpen(){const t=this.editor;const e=t.editing.view;const n=e.document;this.listenTo(n,"click",((t,e)=>{const n=c.isMac?e.domEvent.metaKey:e.domEvent.ctrlKey;if(!n){return}let i=e.domTarget;if(i.tagName.toLowerCase()!="a"){i=i.closest("a")}if(!i){return}const o=i.getAttribute("href");if(!o){return}t.stop();e.preventDefault();cI(o)}),{context:"$capture"});this.listenTo(n,"keydown",((e,n)=>{const i=t.commands.get("link").value;const o=i&&n.keyCode===Hl.enter&&n.altKey;if(!o){return}e.stop();cI(i)}))}_enableInsertContentSelectionAttributesFixer(){const t=this.editor;const e=t.model;const n=e.document.selection;this.listenTo(e,"insertContent",(()=>{const t=n.anchor.nodeBefore;const i=n.anchor.nodeAfter;if(!n.hasAttribute("linkHref")){return}if(!t){return}if(!t.hasAttribute("linkHref")){return}if(i&&i.hasAttribute("linkHref")){return}e.change((t=>{lP(t,uP(e.schema))}))}),{priority:"low"})}_enableClickingAfterLink(){const t=this.editor;const e=t.model;t.editing.view.addObserver(bC);let n=false;this.listenTo(t.editing.view.document,"mousedown",(()=>{n=true}));this.listenTo(t.editing.view.document,"selectionChange",(()=>{if(!n){return}n=false;const t=e.document.selection;if(!t.isCollapsed){return}if(!t.hasAttribute("linkHref")){return}const i=t.getFirstPosition();const o=SE(i,"linkHref",t.getAttribute("linkHref"),e);if(i.isTouching(o.start)||i.isTouching(o.end)){e.change((t=>{lP(t,uP(e.schema))}))}}))}_enableTypingOverLink(){const t=this.editor;const e=t.editing.view;let n;let i;this.listenTo(e.document,"delete",(()=>{i=true}),{priority:"high"});this.listenTo(t.model,"deleteContent",(()=>{const e=t.model.document.selection;if(e.isCollapsed){return}if(i){i=false;return}if(!dP(t)){return}if(cP(t.model)){n=e.getAttributes()}}),{priority:"high"});this.listenTo(t.model,"insertContent",((e,[o])=>{i=false;if(!dP(t)){return}if(!n){return}t.model.change((t=>{for(const[e,i]of n){t.setAttribute(e,i,o)}}));n=null}),{priority:"high"})}_handleDeleteContentAfterLink(){const t=this.editor;const e=t.model;const n=e.document.selection;const i=t.editing.view;let o=false;let r=false;this.listenTo(i.document,"delete",((t,e)=>{r=e.direction==="backward"}),{priority:"high"});this.listenTo(e,"deleteContent",(()=>{o=false;const t=n.getFirstPosition();const i=n.getAttribute("linkHref");if(!i){return}const r=SE(t,"linkHref",i,e);o=r.containsPosition(t)||r.end.isEqual(t)}),{priority:"high"});this.listenTo(e,"deleteContent",(()=>{if(!r){return}r=false;if(o){return}t.model.enqueueChange((t=>{lP(t,uP(e.schema))}))}),{priority:"low"})}_enableClipboardIntegration(){const t=this.editor;const e=t.model;const n=this.editor.config.get("link.defaultProtocol");if(!n){return}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=aI(i.getAttribute("linkHref"),n);t.setAttribute("linkHref",e,i)}}}))}))}}function lP(t,e){t.removeSelectionAttribute("linkHref");for(const n of e){t.removeSelectionAttribute(n)}}function cP(t){const e=t.document.selection;const n=e.getFirstPosition();const i=e.getLastPosition();const o=n.nodeAfter;if(!o){return false}if(!o.is("$text")){return false}if(!o.hasAttribute("linkHref")){return false}const r=i.textNode||i.nodeBefore;if(o===r){return true}const s=SE(n,"linkHref",o.getAttribute("linkHref"),t);return s.containsRange(t.createRange(n,i),true)}function dP(t){const e=t.model.change((t=>t.batch));return e.isTyping}function uP(t){const e=t.getDefinition("$text").allowAttributes;return e.filter((t=>t.startsWith("link")))}var hP=n(4827);var gP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};gP.insert="head";gP.singleton=true;var mP=Sc()(hP.Z,gP);const fP=hP.Z.locals||{};class pP extends Lc{constructor(t,n){super(t);const i=t.t;this.focusTracker=new uc;this.keystrokes=new hc;this.urlInputView=this._createUrlInput();this.saveButtonView=this._createButton(i("Save"),J_.check,"ck-button-save");this.saveButtonView.type="submit";this.cancelButtonView=this._createButton(i("Cancel"),J_.cancel,"ck-button-cancel","cancel");this._manualDecoratorSwitches=this._createManualDecoratorSwitches(n);this.children=this._createFormChildren(n.manualDecorators);this._focusables=new xc;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});const o=["ck","ck-link-form","ck-responsive-form"];if(n.manualDecorators.length){o.push("ck-link-form_layout-vertical","ck-vertical-form")}this.setTemplate({tag:"form",attributes:{class:o,tabindex:"-1"},children:this.children});e(this)}getDecoratorSwitchesState(){return Array.from(this._manualDecoratorSwitches).reduce(((t,e)=>{t[e.name]=e.isOn;return t}),{})}render(){super.render();o({view:this});const t=[this.urlInputView,...this._manualDecoratorSwitches,this.saveButtonView,this.cancelButtonView];t.forEach((t=>{this._focusables.add(t);this.focusTracker.add(t.element)}));this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}_createUrlInput(){const t=this.locale.t;const e=new Ly(this.locale,Ny);e.label=t("Link URL");return e}_createButton(t,e,n,i){const o=new kd(this.locale);o.set({label:t,icon:e,tooltip:true});o.extendTemplate({attributes:{class:n}});if(i){o.delegate("execute").to(this,i)}return o}_createManualDecoratorSwitches(t){const e=this.createCollection();for(const n of t.manualDecorators){const i=new vd(this.locale);i.set({name:n.id,label:n.label,withText:true});i.bind("isOn").toMany([n,t],"value",((t,e)=>e===undefined&&t===undefined?n.defaultValue:t));i.on("execute",(()=>{n.set("value",!i.isOn)}));e.add(i)}return e}_createFormChildren(t){const e=this.createCollection();e.add(this.urlInputView);if(t.length){const t=new Lc;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)}e.add(this.saveButtonView);e.add(this.cancelButtonView);return e}}var bP=n(9465);var kP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};kP.insert="head";kP.singleton=true;var wP=Sc()(bP.Z,kP);const AP=bP.Z.locals||{};const CP='$${Delta.CKEditor.Icon[47]}$$';class _P extends Lc{constructor(t){super(t);const e=t.t;this.focusTracker=new uc;this.keystrokes=new hc;this.previewButtonView=this._createPreviewButton();this.unlinkButtonView=this._createButton(e("Unlink"),CP,"unlink");this.editButtonView=this._createButton(e("Edit link"),J_.pencil,"edit");this.set("href");this._focusables=new xc;this._focusCycler=new Yd({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();const t=[this.previewButtonView,this.editButtonView,this.unlinkButtonView];t.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 kd(this.locale);i.set({label:t,icon:e,tooltip:true});i.delegate("execute").to(this,n);return i}_createPreviewButton(){const t=new kd(this.locale);const e=this.bindTemplate;const n=this.t;t.set({withText:true,tooltip:n("Open link in new tab")});t.extendTemplate({attributes:{class:["ck","ck-link-actions__preview"],href:e.to("href",(t=>t&&eI(t))),target:"_blank",rel:"noopener noreferrer"}});t.bind("label").to(this,"href",(t=>t||n("This link has no URL")));t.bind("isEnabled").to(this,"href",(t=>!!t));t.template.tag="a";t.template.eventListeners={};return t}}const vP='$${Delta.CKEditor.Icon[48]}$$';const yP="link-ui";class xP extends eu{static get requires(){return[Zy]}static get pluginName(){return"LinkUI"}init(){const t=this.editor;t.editing.view.addObserver(pC);this.actionsView=null;this.formView=null;this._balloon=t.plugins.get(Zy);this._createToolbarLinkButton();this._enableBalloonActivators();t.conversion.for("editingDowncast").markerToHighlight({model:yP,view:{classes:["ck-fake-link-selection"]}});t.conversion.for("editingDowncast").markerToElement({model:yP,view:{name:"span",classes:["ck-fake-link-selection","ck-fake-link-selection_collapsed"]}})}destroy(){super.destroy();if(this.formView){this.formView.destroy()}if(this.actionsView){this.actionsView.destroy()}}_createViews(){this.actionsView=this._createActionsView();this.formView=this._createFormView();this._enableUserBalloonInteractions()}_createActionsView(){const t=this.editor;const e=new _P(t.locale);const n=t.commands.get("link");const i=t.commands.get("unlink");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(JT,((t,e)=>{this._addFormView();e()}));return e}_createFormView(){const t=this.editor;const e=t.commands.get("link");const n=t.config.get("link.defaultProtocol");const i=new pP(t.locale,e);i.urlInputView.fieldView.bind("value").to(e,"value");i.urlInputView.bind("isReadOnly").to(e,"isEnabled",(t=>!t));i.saveButtonView.bind("isEnabled").to(e);this.listenTo(i,"submit",(()=>{const{value:e}=i.urlInputView.fieldView.element;const o=aI(e,n);t.execute("link",o,i.getDecoratorSwitchesState());this._closeFormView()}));this.listenTo(i,"cancel",(()=>{this._closeFormView()}));i.keystrokes.set("Esc",((t,e)=>{this._closeFormView();e()}));return i}_createToolbarLinkButton(){const t=this.editor;const e=t.commands.get("link");const n=t.t;t.ui.componentFactory.add("link",(t=>{const i=new kd(t);i.isEnabled=true;i.label=n("Link");i.icon=vP;i.keystroke=JT;i.tooltip=true;i.isToggleable=true;i.bind("isEnabled").to(e,"isEnabled");i.bind("isOn").to(e,"value",(t=>!!t));this.listenTo(i,"execute",(()=>this._showUI(true)));return i}))}_enableBalloonActivators(){const t=this.editor;const e=t.editing.view.document;this.listenTo(e,"click",(()=>{const t=this._getSelectedLinkElement();if(t){this._showUI()}}));t.keystrokes.set(JT,((e,n)=>{n();if(t.commands.get("link").isEnabled){this._showUI(true)}}))}_enableUserBalloonInteractions(){this.editor.keystrokes.set("Tab",((t,e)=>{if(this._areActionsVisible&&!this.actionsView.focusTracker.isFocused){this.actionsView.focus();e()}}),{priority:"high"});this.editor.keystrokes.set("Esc",((t,e)=>{if(this._isUIVisible){this._hideUI();e()}}));t({emitter:this.formView,activator:()=>this._isUIInPanel,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideUI()})}_addActionsView(){if(!this.actionsView){this._createViews()}if(this._areActionsInPanel){return}this._balloon.add({view:this.actionsView,position:this._getBalloonPositionData()})}_addFormView(){if(!this.formView){this._createViews()}if(this._isFormInPanel){return}const t=this.editor;const e=t.commands.get("link");this.formView.disableCssTransitions();this._balloon.add({view:this.formView,position:this._getBalloonPositionData()});if(this._balloon.visibleView===this.formView){this.formView.urlInputView.fieldView.select()}this.formView.enableCssTransitions();this.formView.urlInputView.fieldView.element.value=e.value||""}_closeFormView(){const t=this.editor.commands.get("link");t.restoreManualDecoratorStates();if(t.value!==undefined){this._removeFormView()}else{this._hideUI()}}_removeFormView(){if(this._isFormInPanel){this.formView.saveButtonView.focus();this._balloon.remove(this.formView);this.editor.editing.view.focus();this._hideFakeVisualSelection()}}_showUI(t=false){if(!this.formView){this._createViews()}if(!this._getSelectedLinkElement()){this._showFakeVisualSelection();this._addActionsView();if(t){this._balloon.showStack("main")}this._addFormView()}else{if(this._areActionsVisible){this._addFormView()}else{this._addActionsView()}if(t){this._balloon.showStack("main")}}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;const e=t.editing.view.document;let n=this._getSelectedLinkElement();let i=r();const o=()=>{const t=this._getSelectedLinkElement();const e=r();if(n&&!t||!n&&e!==i){this._hideUI()}else if(this._isUIVisible){this._balloon.updatePosition(this._getBalloonPositionData())}n=t;i=e};function r(){return e.selection.focus.getAncestors().reverse().find((t=>t.is("element")))}this.listenTo(t.ui,"update",o);this.listenTo(this._balloon,"change:visibleView",o)}get _isFormInPanel(){return this._balloon.hasView(this.formView)}get _areActionsInPanel(){return this._balloon.hasView(this.actionsView)}get _areActionsVisible(){return this._balloon.visibleView===this.actionsView}get _isUIInPanel(){return this._isFormInPanel||this._areActionsInPanel}get _isUIVisible(){const t=this._balloon.visibleView;return t==this.formView||this._areActionsVisible}_getBalloonPositionData(){const t=this.editor.editing.view;const e=this.editor.model;const n=t.document;let i=null;if(e.markers.has(yP)){const e=Array.from(this.editor.editing.mapper.markerNameToElements(yP));const 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;const e=t.document.selection;const n=e.getSelectedElement();if(e.isCollapsed||n&&cD(n)){return EP(e.getFirstPosition())}else{const n=e.getFirstRange().getTrimmed();const i=EP(n.start);const o=EP(n.end);if(!i||i!=o){return null}if(t.createRangeIn(i).getTrimmed().isEqual(n)){return i}else{return null}}}_showFakeVisualSelection(){const t=this.editor.model;t.change((e=>{const n=t.document.selection.getFirstRange();if(t.markers.has(yP)){e.updateMarker(yP,{range:n})}else{if(n.start.isAtEnd){const i=n.start.getLastMatchingPosition((({item:e})=>!t.schema.isContent(e)),{boundaries:n});e.addMarker(yP,{usingOperation:false,affectsData:false,range:e.createRange(i,n.end)})}else{e.addMarker(yP,{usingOperation:false,affectsData:false,range:n})}}}))}_hideFakeVisualSelection(){const t=this.editor.model;if(t.markers.has(yP)){t.change((t=>{t.removeMarker(yP)}))}}}function EP(t){return t.getAncestors().find((t=>XT(t)))}class DP extends eu{static get requires(){return[aP,xP,gI]}static get pluginName(){return"Link"}}class SP extends eu{static get requires(){return["ImageEditing","ImageUtils",aP]}static get pluginName(){return"LinkImageEditing"}init(){const t=this.editor;const e=t.model.schema;if(t.plugins.has("ImageBlockEditing")){e.extend("imageBlock",{allowAttributes:["linkHref"]})}t.conversion.for("upcast").add(TP(t));t.conversion.for("downcast").add(IP(t));this._enableAutomaticDecorators();this._enableManualDecorators()}_enableAutomaticDecorators(){const t=this.editor;const e=t.commands.get("link");const n=e.automaticDecorators;if(n.length){t.conversion.for("downcast").add(n.getDispatcherForLinkedImage())}}_enableManualDecorators(){const t=this.editor;const e=t.commands.get("link");for(const n of e.manualDecorators){if(t.plugins.has("ImageBlockEditing")){t.model.schema.extend("imageBlock",{allowAttributes:n.id})}if(t.plugins.has("ImageInlineEditing")){t.model.schema.extend("imageInline",{allowAttributes:n.id})}t.conversion.for("downcast").add(MP(n));t.conversion.for("upcast").add(BP(t,n))}}}function TP(t){const e=t.plugins.has("ImageInlineEditing");const n=t.plugins.get("ImageUtils");return t=>{t.on("element:a",((t,i,o)=>{const r=i.viewItem;const s=n.findViewImgElement(r);if(!s){return}const a=s.findAncestor((t=>n.isBlockImageView(t)));if(e&&!a){return}const l={attributes:["href"]};if(!o.consumable.consume(r,l)){return}const c=r.getAttribute("href");if(!c){return}let d=i.modelCursor.parent;if(!d.is("element","imageBlock")){const t=o.convertItem(s,i.modelCursor);i.modelRange=t.modelRange;i.modelCursor=t.modelCursor;d=i.modelCursor.nodeBefore}if(d&&d.is("element","imageBlock")){o.writer.setAttribute("linkHref",c,d)}}),{priority:"high"})}}function IP(t){const e=t.plugins.get("ImageUtils");return t=>{t.on("attribute:linkHref:imageBlock",((t,n,i)=>{if(!i.consumable.consume(n.item,t.name)){return}const o=i.mapper.toViewElement(n.item);const r=i.writer;const s=Array.from(o.getChildren()).find((t=>t.name==="a"));const a=e.findViewImgElement(o);const l=a.parent.is("element","picture")?a.parent:a;if(s){if(n.attributeNewValue){r.setAttribute("href",n.attributeNewValue,s)}else{r.move(r.createRangeOn(l),r.createPositionAt(o,0));r.remove(s)}}else{const t=r.createContainerElement("a",{href:n.attributeNewValue});r.insert(r.createPositionAt(o,0),t);r.move(r.createRangeOn(l),r.createPositionAt(t,0))}}),{priority:"high"})}}function MP(t){return e=>{e.on(`attribute:${t.id}:imageBlock`,((e,n,i)=>{const o=i.mapper.toViewElement(n.item);const r=Array.from(o.getChildren()).find((t=>t.name==="a"));if(!r){return}for(const[e,n]of mc(t.attributes)){i.writer.setAttribute(e,n,r)}if(t.classes){i.writer.addClass(t.classes,r)}for(const e in t.styles){i.writer.setStyle(e,t.styles[e],r)}}))}}function BP(t,e){const n=t.plugins.has("ImageInlineEditing");const i=t.plugins.get("ImageUtils");return t=>{t.on("element:a",((t,o,r)=>{const s=o.viewItem;const a=i.findViewImgElement(s);if(!a){return}const l=a.findAncestor((t=>i.isBlockImageView(t)));if(n&&!l){return}const c=new Tu(e._createPattern());const d=c.match(s);if(!d){return}if(!r.consumable.consume(s,d.match)){return}const u=o.modelCursor.nodeBefore||o.modelCursor.parent;r.writer.setAttribute(e.id,true,u)}),{priority:"high"})}}class LP extends eu{static get requires(){return[aP,xP,"ImageBlockEditing"]}static get pluginName(){return"LinkImageUI"}init(){const t=this.editor;const e=t.editing.view.document;this.listenTo(e,"click",((e,n)=>{if(this._isSelectedLinkedImage(t.model.document.selection)){n.preventDefault();e.stop()}}),{priority:"high"});this._createToolbarLinkImageButton()}_createToolbarLinkImageButton(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("linkImage",(n=>{const i=new kd(n);const o=t.plugins.get("LinkUI");const r=t.commands.get("link");i.set({isEnabled:true,label:e("Link image"),icon:vP,keystroke:JT,tooltip:true,isToggleable:true});i.bind("isEnabled").to(r,"isEnabled");i.bind("isOn").to(r,"value",(t=>!!t));this.listenTo(i,"execute",(()=>{if(this._isSelectedLinkedImage(t.model.document.selection)){o._addActionsView()}else{o._showUI(true)}}));return i}))}_isSelectedLinkedImage(t){const e=t.getSelectedElement();const n=this.editor.plugins.get("ImageUtils");return n.isImage(e)&&e.hasAttribute("linkHref")}}var NP=n(3858);var zP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};zP.insert="head";zP.singleton=true;var PP=Sc()(NP.Z,zP);const OP=NP.Z.locals||{};class RP extends eu{static get requires(){return[SP,LP]}static get pluginName(){return"LinkImage"}}class VP extends iu{constructor(t,e){super(t);this.type=e}refresh(){this.value=this._getValue();this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model;const n=e.document;const i=Array.from(n.selection.getSelectedBlocks()).filter((t=>FP(t,e.schema)));const o=t.forceValue!==undefined?!t.forceValue:this.value;e.change((t=>{if(o){let e=i[i.length-1].nextSibling;let n=Number.POSITIVE_INFINITY;let o=[];while(e&&e.name=="listItem"&&e.getAttribute("listIndent")!==0){const t=e.getAttribute("listIndent");if(t<n){n=t}const i=t-n;o.push({element:e,listIndent:i});e=e.nextSibling}o=o.reverse();for(const e of o){t.setAttribute("listIndent",e.listIndent,e.element)}}if(!o){let t=Number.POSITIVE_INFINITY;for(const e of i){if(e.is("element","listItem")&&e.getAttribute("listIndent")<t){t=e.getAttribute("listIndent")}}t=t===0?1:t;jP(i,true,t);jP(i,false,t)}for(const e of i.reverse()){if(o&&e.name=="listItem"){t.rename(e,"paragraph")}else if(!o&&e.name!="listItem"){t.setAttributes({listType:this.type,listIndent:0},e);t.rename(e,"listItem")}else if(!o&&e.name=="listItem"&&e.getAttribute("listType")!=this.type){t.setAttribute("listType",this.type,e)}}this.fire("_executeCleanup",i)}))}_getValue(){const t=dc(this.editor.model.document.selection.getSelectedBlocks());return!!t&&t.is("element","listItem")&&t.getAttribute("listType")==this.type}_checkEnabled(){if(this.value){return true}const t=this.editor.model.document.selection;const e=this.editor.model.schema;const n=dc(t.getSelectedBlocks());if(!n){return false}return FP(n,e)}}function jP(t,e,n){const i=e?t[0]:t[t.length-1];if(i.is("element","listItem")){let o=i[e?"previousSibling":"nextSibling"];let r=i.getAttribute("listIndent");while(o&&o.is("element","listItem")&&o.getAttribute("listIndent")>=n){if(r>o.getAttribute("listIndent")){r=o.getAttribute("listIndent")}if(o.getAttribute("listIndent")==r){t[e?"unshift":"push"](o)}o=o[e?"previousSibling":"nextSibling"]}}}function FP(t,e){return e.checkChild(t.parent,"listItem")&&!e.isObject(t)}class HP extends iu{constructor(t,e){super(t);this._indentBy=e=="forward"?1:-1}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model;const e=t.document;let n=Array.from(e.selection.getSelectedBlocks());t.change((t=>{const e=n[n.length-1];let i=e.nextSibling;while(i&&i.name=="listItem"&&i.getAttribute("listIndent")>e.getAttribute("listIndent")){n.push(i);i=i.nextSibling}if(this._indentBy<0){n=n.reverse()}for(const e of n){const n=e.getAttribute("listIndent")+this._indentBy;if(n<0){t.rename(e,"paragraph")}else{t.setAttribute("listIndent",n,e)}}this.fire("_executeCleanup",n)}))}_checkEnabled(){const t=dc(this.editor.model.document.selection.getSelectedBlocks());if(!t||!t.is("element","listItem")){return false}if(this._indentBy>0){const e=t.getAttribute("listIndent");const n=t.getAttribute("listType");let i=t.previousSibling;while(i&&i.is("element","listItem")&&i.getAttribute("listIndent")>=e){if(i.getAttribute("listIndent")==e){return i.getAttribute("listType")==n}i=i.previousSibling}return false}return true}}function UP(t){const e=t.createContainerElement("li");e.getFillerOffset=nO;return e}function WP(t,e){const n=e.mapper;const i=e.writer;const o=t.getAttribute("listType")=="numbered"?"ol":"ul";const r=UP(i);const s=i.createContainerElement(o,null);i.insert(i.createPositionAt(s,0),r);n.bindElements(t,r);return r}function qP(t,e,n,i){const o=e.parent;const r=n.mapper;const s=n.writer;let a=r.toViewPosition(i.createPositionBefore(t));const l=KP(t.previousSibling,{sameIndent:true,smallerIndent:true,listIndent:t.getAttribute("listIndent")});const c=t.previousSibling;if(l&&l.getAttribute("listIndent")==t.getAttribute("listIndent")){const t=r.toViewElement(l);a=s.breakContainer(s.createPositionAfter(t))}else{if(c&&c.name=="listItem"){a=r.toViewPosition(i.createPositionAt(c,"end"));const t=r.findMappedViewAncestor(a);const e=ZP(t);if(e){a=s.createPositionBefore(e)}else{a=s.createPositionAt(t,"end")}}else{a=r.toViewPosition(i.createPositionBefore(t))}}a=$P(a);s.insert(a,o);if(c&&c.name=="listItem"){const t=r.toViewElement(c);const n=s.createRange(s.createPositionAt(t,0),a);const i=n.getWalker({ignoreElementEnd:true});for(const t of i){if(t.item.is("element","li")){const n=s.breakContainer(s.createPositionBefore(t.item));const o=t.item.parent;const r=s.createPositionAt(e,"end");GP(s,r.nodeBefore,r.nodeAfter);s.move(s.createRangeOn(o),r);i.position=n}}}else{const n=o.nextSibling;if(n&&(n.is("element","ul")||n.is("element","ol"))){let i=null;for(const e of n.getChildren()){const n=r.toModelElement(e);if(n&&n.getAttribute("listIndent")>t.getAttribute("listIndent")){i=e}else{break}}if(i){s.breakContainer(s.createPositionAfter(i));s.move(s.createRangeOn(i.parent),s.createPositionAt(e,"end"))}}}GP(s,o,o.nextSibling);GP(s,o.previousSibling,o)}function GP(t,e,n){if(!e||!n||e.name!="ul"&&e.name!="ol"){return null}if(e.name!=n.name||e.getAttribute("class")!==n.getAttribute("class")){return null}return t.mergeContainers(t.createPositionAfter(e))}function $P(t){return t.getLastMatchingPosition((t=>t.item.is("uiElement")))}function KP(t,e){const n=!!e.sameIndent;const i=!!e.smallerIndent;const o=e.listIndent;let r=t;while(r&&r.name=="listItem"){const t=r.getAttribute("listIndent");if(n&&o==t||i&&o>t){return r}if(e.direction==="forward"){r=r.nextSibling}else{r=r.previousSibling}}return null}function YP(t,e,n,i){t.ui.componentFactory.add(e,(o=>{const r=t.commands.get(e);const s=new kd(o);s.set({label:n,icon:i,tooltip:true,isToggleable:true});s.bind("isOn","isEnabled").to(r,"value","isEnabled");s.on("execute",(()=>{t.execute(e);t.editing.view.focus()}));return s}))}function ZP(t){for(const e of t.getChildren()){if(e.name=="ul"||e.name=="ol"){return e}}return null}function QP(t,e){const n=[];const i=t.parent;const o={ignoreElementEnd:false,startPosition:t,shallow:true,direction:e};const r=i.getAttribute("listIndent");const s=[...new Yp(o)].filter((t=>t.item.is("element"))).map((t=>t.item));for(const t of s){if(!t.is("element","listItem")){break}if(t.getAttribute("listIndent")<r){break}if(t.getAttribute("listIndent")>r){continue}if(t.getAttribute("listType")!==i.getAttribute("listType")){break}if(t.getAttribute("listStyle")!==i.getAttribute("listStyle")){break}if(t.getAttribute("listReversed")!==i.getAttribute("listReversed")){break}if(t.getAttribute("listStart")!==i.getAttribute("listStart")){break}if(e==="backward"){n.unshift(t)}else{n.push(t)}}return n}function JP(t){const e=t.document;let n=[...e.selection.getSelectedBlocks()].filter((t=>t.is("element","listItem"))).map((e=>{const n=t.change((t=>t.createPositionAt(e,0)));return[...QP(n,"backward"),...QP(n,"forward")]})).flat();n=[...new Set(n)];return n}const XP=["disc","circle","square"];const tO=["decimal","decimal-leading-zero","lower-roman","upper-roman","lower-latin","upper-latin"];function eO(t){if(XP.includes(t)){return"bulleted"}if(tO.includes(t)){return"numbered"}return null}function nO(){const t=!this.isEmpty&&(this.getChild(0).name=="ul"||this.getChild(0).name=="ol");if(this.isEmpty||t){return 0}return Bg.call(this)}class iO extends eu{static get pluginName(){return"ListUtils"}getListTypeFromListStyleType(t){return eO(t)}getSelectedListItems(t){return JP(t)}getSiblingNodes(t,e){return QP(t,e)}}function oO(t){return(e,n,i)=>{const o=i.consumable;if(!o.test(n.item,"insert")||!o.test(n.item,"attribute:listType")||!o.test(n.item,"attribute:listIndent")){return}o.consume(n.item,"insert");o.consume(n.item,"attribute:listType");o.consume(n.item,"attribute:listIndent");const r=n.item;const s=WP(r,i);qP(r,s,i,t)}}function rO(t){return(e,n,i)=>{const o=i.mapper.toViewPosition(n.position);const r=o.getLastMatchingPosition((t=>!t.item.is("element","li")));const s=r.nodeAfter;const a=i.writer;a.breakContainer(a.createPositionBefore(s));a.breakContainer(a.createPositionAfter(s));const l=s.parent;const c=l.previousSibling;const d=a.createRangeOn(l);const u=a.remove(d);if(c&&c.nextSibling){GP(a,c,c.nextSibling)}const h=i.mapper.toModelElement(s);AO(h.getAttribute("listIndent")+1,n.position,d.start,s,i,t);for(const t of a.createRangeIn(u).getItems()){i.mapper.unbindViewElement(t)}e.stop()}}const sO=(t,e,n)=>{if(!n.consumable.test(e.item,t.name)){return}const i=n.mapper.toViewElement(e.item);const o=n.writer;o.breakContainer(o.createPositionBefore(i));o.breakContainer(o.createPositionAfter(i));const r=i.parent;const s=e.attributeNewValue=="numbered"?"ol":"ul";o.rename(s,r)};const aO=(t,e,n)=>{n.consumable.consume(e.item,t.name);const i=n.mapper.toViewElement(e.item);const o=i.parent;const r=n.writer;GP(r,o,o.nextSibling);GP(r,o.previousSibling,o)};function lO(t){return(e,n,i)=>{if(!i.consumable.consume(n.item,"attribute:listIndent")){return}const o=i.mapper.toViewElement(n.item);const r=i.writer;r.breakContainer(r.createPositionBefore(o));r.breakContainer(r.createPositionAfter(o));const s=o.parent;const a=s.previousSibling;const l=r.createRangeOn(s);r.remove(l);if(a&&a.nextSibling){GP(r,a,a.nextSibling)}AO(n.attributeOldValue+1,n.range.start,l.start,o,i,t);qP(n.item,o,i,t);for(const t of n.item.getChildren()){i.consumable.consume(t,"insert")}}}const cO=(t,e,n)=>{if(!n.consumable.test(e.item,t.name)){return}if(e.item.name!="listItem"){let t=n.mapper.toViewPosition(e.range.start);const i=n.writer;const o=[];while(t.parent.name=="ul"||t.parent.name=="ol"){t=i.breakContainer(t);if(t.parent.name!="li"){break}const e=t;const n=i.createPositionAt(t.parent,"end");if(!e.isEqual(n)){const t=i.remove(i.createRange(e,n));o.push(t)}t=i.createPositionAfter(t.parent)}if(o.length>0){for(let e=0;e<o.length;e++){const n=t.nodeBefore;const r=i.insert(t,o[e]);t=r.end;if(e>0){const e=GP(i,n,n.nextSibling);if(e&&e.parent==n){t.offset--}}}GP(i,t.nodeBefore,t.nodeAfter)}}};const dO=(t,e,n)=>{const i=n.mapper.toViewPosition(e.position);const o=i.nodeBefore;const r=i.nodeAfter;GP(n.writer,o,r)};const uO=(t,e,n)=>{if(n.consumable.consume(e.viewItem,{name:true})){const t=n.writer;const i=t.createElement("listItem");const o=_O(e.viewItem);t.setAttribute("listIndent",o,i);const r=e.viewItem.parent&&e.viewItem.parent.name=="ol"?"numbered":"bulleted";t.setAttribute("listType",r,i);if(!n.safeInsert(i,e.modelCursor)){return}const s=kO(i,e.viewItem.getChildren(),n);e.modelRange=t.createRange(e.modelCursor,s);n.updateConversionResult(i,e)}};const hO=(t,e,n)=>{if(n.consumable.test(e.viewItem,{name:true})){const t=Array.from(e.viewItem.getChildren());for(const e of t){const t=!(e.is("element","li")||CO(e));if(t){e._remove()}}}};const gO=(t,e,n)=>{if(n.consumable.test(e.viewItem,{name:true})){if(e.viewItem.childCount===0){return}const t=[...e.viewItem.getChildren()];let n=false;for(const e of t){if(n&&!CO(e)){e._remove()}if(CO(e)){n=true}}}};function mO(t){return(e,n)=>{if(n.isPhantom){return}const i=n.modelPosition.nodeBefore;if(i&&i.is("element","listItem")){const e=n.mapper.toViewElement(i);const o=e.getAncestors().find(CO);const r=t.createPositionAt(e,0).getWalker();for(const t of r){if(t.type=="elementStart"&&t.item.is("element","li")){n.viewPosition=t.previousPosition;break}else if(t.type=="elementEnd"&&t.item==o){n.viewPosition=t.nextPosition;break}}}}}function fO(t){return(e,n)=>{const i=n.viewPosition;const o=i.parent;const r=n.mapper;if(o.name=="ul"||o.name=="ol"){if(!i.isAtEnd){const e=r.toModelElement(i.nodeAfter);n.modelPosition=t.createPositionBefore(e)}else{const e=r.toModelElement(i.nodeBefore);const o=r.getModelLength(i.nodeBefore);n.modelPosition=t.createPositionBefore(e).getShiftedBy(o)}e.stop()}else if(o.name=="li"&&i.nodeBefore&&(i.nodeBefore.name=="ul"||i.nodeBefore.name=="ol")){const s=r.toModelElement(o);let a=1;let l=i.nodeBefore;while(l&&CO(l)){a+=r.getModelLength(l);l=l.previousSibling}n.modelPosition=t.createPositionBefore(s).getShiftedBy(a);e.stop()}}}function pO(t,e){const n=t.document.differ.getChanges();const i=new Map;let o=false;for(const i of n){if(i.type=="insert"&&i.name=="listItem"){r(i.position)}else if(i.type=="insert"&&i.name!="listItem"){if(i.name!="$text"){const n=i.position.nodeAfter;if(n.hasAttribute("listIndent")){e.removeAttribute("listIndent",n);o=true}if(n.hasAttribute("listType")){e.removeAttribute("listType",n);o=true}if(n.hasAttribute("listStyle")){e.removeAttribute("listStyle",n);o=true}if(n.hasAttribute("listReversed")){e.removeAttribute("listReversed",n);o=true}if(n.hasAttribute("listStart")){e.removeAttribute("listStart",n);o=true}for(const e of Array.from(t.createRangeIn(n)).filter((t=>t.item.is("element","listItem")))){r(e.previousPosition)}}const n=i.position.getShiftedBy(i.length);r(n)}else if(i.type=="remove"&&i.name=="listItem"){r(i.position)}else if(i.type=="attribute"&&i.attributeKey=="listIndent"){r(i.range.start)}else if(i.type=="attribute"&&i.attributeKey=="listType"){r(i.range.start)}}for(const t of i.values()){s(t);a(t)}return o;function r(t){const e=t.nodeBefore;if(!e||!e.is("element","listItem")){const e=t.nodeAfter;if(e&&e.is("element","listItem")){i.set(e,e)}}else{let t=e;if(i.has(t)){return}for(let e=t.previousSibling;e&&e.is("element","listItem");e=t.previousSibling){t=e;if(i.has(t)){return}}i.set(e,t)}}function s(t){let n=0;let i=null;while(t&&t.is("element","listItem")){const r=t.getAttribute("listIndent");if(r>n){let s;if(i===null){i=r-n;s=n}else{if(i>r){i=r}s=r-i}e.setAttribute("listIndent",s,t);o=true}else{i=null;n=t.getAttribute("listIndent")+1}t=t.nextSibling}}function a(t){let n=[];let i=null;while(t&&t.is("element","listItem")){const r=t.getAttribute("listIndent");if(i&&i.getAttribute("listIndent")>r){n=n.slice(0,r+1)}if(r!=0){if(n[r]){const i=n[r];if(t.getAttribute("listType")!=i){e.setAttribute("listType",i,t);o=true}}else{n[r]=t.getAttribute("listType")}}i=t;t=t.nextSibling}}}const bO=function(t,[e,n,i]){const o=this;let r=e.is("documentFragment")?e.getChild(0):e;let s;if(!n){s=o.document.selection}else{s=o.createSelection(n,i)}if(r&&r.is("element","listItem")){const t=s.getFirstPosition();let e=null;if(t.parent.is("element","listItem")){e=t.parent}else if(t.nodeBefore&&t.nodeBefore.is("element","listItem")){e=t.nodeBefore}if(e){const t=e.getAttribute("listIndent");if(t>0){while(r&&r.is("element","listItem")){r._setAttribute("listIndent",r.getAttribute("listIndent")+t);r=r.nextSibling}}}}};function kO(t,e,n){const{writer:i,schema:o}=n;let r=i.createPositionAfter(t);for(const s of e){if(s.name=="ul"||s.name=="ol"){r=n.convertItem(s,r).modelCursor}else{const e=n.convertItem(s,i.createPositionAt(t,"end"));const a=e.modelRange.start.nodeAfter;const l=a&&a.is("element")&&!o.checkChild(t,a.name);if(l){if(e.modelCursor.parent.is("element","listItem")){t=e.modelCursor.parent}else{t=wO(e.modelCursor)}r=i.createPositionAfter(t)}}}return r}function wO(t){const e=new Yp({startPosition:t});let n;do{n=e.next()}while(!n.value.item.is("element","listItem"));return n.value.item}function AO(t,e,n,i,o,r){const s=KP(e.nodeBefore,{sameIndent:true,smallerIndent:true,listIndent:t});const a=o.mapper;const l=o.writer;const c=s?s.getAttribute("listIndent"):null;let d;if(!s){d=n}else if(c==t){const t=a.toViewElement(s).parent;d=l.createPositionAfter(t)}else{const t=r.createPositionAt(s,"end");d=a.toViewPosition(t)}d=$P(d);for(const t of[...i.getChildren()]){if(CO(t)){d=l.move(l.createRangeOn(t),d).end;GP(l,t,t.nextSibling);GP(l,t.previousSibling,t)}}}function CO(t){return t.is("element","ol")||t.is("element","ul")}function _O(t){let e=0;let n=t.parent;while(n){if(n.is("element","li")){e++}else{const t=n.previousSibling;if(t&&t.is("element","li")){e++}}n=n.parent}return e}var vO=n(9989);var yO={injectType:"singletonStyleTag",attributes:{"data-cke":true}};yO.insert="head";yO.singleton=true;var xO=Sc()(vO.Z,yO);const EO=vO.Z.locals||{};class DO extends eu{static get pluginName(){return"ListEditing"}static get requires(){return[YE,oE,iO]}init(){const t=this.editor;t.model.schema.register("listItem",{inheritAllFrom:"$block",allowAttributes:["listType","listIndent"]});const e=t.data;const n=t.editing;t.model.document.registerPostFixer((e=>pO(t.model,e)));n.mapper.registerViewToModelLength("li",SO);e.mapper.registerViewToModelLength("li",SO);n.mapper.on("modelToViewPosition",mO(n.view));n.mapper.on("viewToModelPosition",fO(t.model));e.mapper.on("modelToViewPosition",mO(n.view));t.conversion.for("editingDowncast").add((e=>{e.on("insert",cO,{priority:"high"});e.on("insert:listItem",oO(t.model));e.on("attribute:listType:listItem",sO,{priority:"high"});e.on("attribute:listType:listItem",aO,{priority:"low"});e.on("attribute:listIndent:listItem",lO(t.model));e.on("remove:listItem",rO(t.model));e.on("remove",dO,{priority:"low"})}));t.conversion.for("dataDowncast").add((e=>{e.on("insert",cO,{priority:"high"});e.on("insert:listItem",oO(t.model))}));t.conversion.for("upcast").add((t=>{t.on("element:ul",hO,{priority:"high"});t.on("element:ol",hO,{priority:"high"});t.on("element:li",gO,{priority:"high"});t.on("element:li",uO)}));t.model.on("insertContent",bO,{priority:"high"});t.commands.add("numberedList",new VP(t,"numbered"));t.commands.add("bulletedList",new VP(t,"bulleted"));t.commands.add("indentList",new HP(t,"forward"));t.commands.add("outdentList",new HP(t,"backward"));const i=n.view.document;this.listenTo(i,"enter",((t,e)=>{const n=this.editor.model.document;const i=n.selection.getLastPosition().parent;if(n.selection.isCollapsed&&i.name=="listItem"&&i.isEmpty){this.editor.execute("outdentList");e.preventDefault();t.stop()}}),{context:"li"});this.listenTo(i,"delete",((t,e)=>{if(e.direction!=="backward"){return}const n=this.editor.model.document.selection;if(!n.isCollapsed){return}const i=n.getFirstPosition();if(!i.isAtStart){return}const o=i.parent;if(o.name!=="listItem"){return}const r=o.previousSibling&&o.previousSibling.name==="listItem";if(r){return}this.editor.execute("outdentList");e.preventDefault();t.stop()}),{context:"li"});this.listenTo(t.editing.view.document,"tab",((e,n)=>{const i=n.shiftKey?"outdentList":"indentList";const o=this.editor.commands.get(i);if(o.isEnabled){t.execute(i);n.stopPropagation();n.preventDefault();e.stop()}}),{context:"li"})}afterInit(){const t=this.editor.commands;const e=t.get("indent");const n=t.get("outdent");if(e){e.registerChildCommand(t.get("indentList"))}if(n){n.registerChildCommand(t.get("outdentList"))}}}function SO(t){let e=1;for(const n of t.getChildren()){if(n.name=="ul"||n.name=="ol"){for(const t of n.getChildren()){e+=SO(t)}}}return e}const TO='$${Delta.CKEditor.Icon[49]}$$';const IO='$${Delta.CKEditor.Icon[50]}$$';class MO extends eu{static get pluginName(){return"ListUI"}init(){const t=this.editor.t;YP(this.editor,"numberedList",t("Numbered List"),TO);YP(this.editor,"bulletedList",t("Bulleted List"),IO)}}class BO extends eu{static get requires(){return[DO,MO]}static get pluginName(){return"List"}}class LO extends iu{constructor(t,e){super(t);this.defaultType=e}refresh(){this.value=this._getValue();this.isEnabled=this._checkEnabled()}execute(t={}){this._tryToConvertItemsToList(t);const e=this.editor.model;const n=JP(e);if(!n.length){return}e.change((e=>{for(const i of n){e.setAttribute("listStyle",t.type||this.defaultType,i)}}))}_getValue(){const t=this.editor.model.document.selection.getFirstPosition().parent;if(t&&t.is("element","listItem")){return t.getAttribute("listStyle")}return null}_checkEnabled(){const t=this.editor;const e=t.commands.get("numberedList");const n=t.commands.get("bulletedList");return e.isEnabled||n.isEnabled}_tryToConvertItemsToList(t){if(!t.type){return}const e=eO(t.type);if(!e){return}const n=this.editor;const i=`${e}List`;const o=n.commands.get(i);if(!o.value){n.execute(i)}}}class NO extends iu{refresh(){const t=this._getValue();this.value=t;this.isEnabled=t!=null}execute(t={}){const e=this.editor.model;const n=JP(e).filter((t=>t.getAttribute("listType")=="numbered"));e.change((e=>{for(const i of n){e.setAttribute("listReversed",!!t.reversed,i)}}))}_getValue(){const t=this.editor.model.document.selection.getFirstPosition().parent;if(t&&t.is("element","listItem")&&t.getAttribute("listType")=="numbered"){return t.getAttribute("listReversed")}return null}}class zO extends iu{refresh(){const t=this._getValue();this.value=t;this.isEnabled=t!=null}execute({startIndex:t=1}={}){const e=this.editor.model;const n=JP(e).filter((t=>t.getAttribute("listType")=="numbered"));e.change((e=>{for(const i of n){e.setAttribute("listStart",t>=0?t:1,i)}}))}_getValue(){const t=this.editor.model.document.selection.getFirstPosition().parent;if(t&&t.is("element","listItem")&&t.getAttribute("listType")=="numbered"){return t.getAttribute("listStart")}return null}}const PO="default";class OO extends eu{static get requires(){return[DO]}static get pluginName(){return"ListPropertiesEditing"}constructor(t){super(t);t.config.define("list",{properties:{styles:true,startIndex:false,reversed:false}})}init(){const t=this.editor;const e=t.model;const n=t.config.get("list.properties");const i=RO(n);e.schema.extend("listItem",{allowAttributes:i.map((t=>t.attributeName))});for(const e of i){e.addCommand(t)}this.listenTo(t.commands.get("indentList"),"_executeCleanup",FO(t,i));this.listenTo(t.commands.get("outdentList"),"_executeCleanup",HO(t,i));this.listenTo(t.commands.get("bulletedList"),"_executeCleanup",$O(t));this.listenTo(t.commands.get("numberedList"),"_executeCleanup",$O(t));e.document.registerPostFixer(UO(t,i));t.conversion.for("upcast").add(VO(i));t.conversion.for("downcast").add(jO(i));this._mergeListAttributesWhileMergingLists(i)}afterInit(){const t=this.editor;if(t.commands.get("todoList")){t.model.document.registerPostFixer(GO(t))}}_mergeListAttributesWhileMergingLists(t){const e=this.editor;const n=e.model;let i;this.listenTo(n,"deleteContent",((t,[e])=>{const n=e.getFirstPosition();const o=e.getLastPosition();if(n.parent===o.parent){return}if(!n.parent.is("element","listItem")){return}const r=o.parent.nextSibling;if(!r||!r.is("element","listItem")){return}const s=KP(n.parent,{sameIndent:true,listIndent:r.getAttribute("listIndent")});if(!s){return}if(s.getAttribute("listType")===r.getAttribute("listType")){i=s}}),{priority:"high"});this.listenTo(n,"deleteContent",(()=>{if(!i){return}n.change((e=>{const n=KP(i.nextSibling,{sameIndent:true,listIndent:i.getAttribute("listIndent"),direction:"forward"});if(!n){i=null;return}const o=[n,...QP(e.createPositionAt(n,0),"forward")];for(const n of o){for(const o of t){if(o.appliesToListItem(n)){const t=o.attributeName;const r=i.getAttribute(t);e.setAttribute(t,r,n)}}}}));i=null}),{priority:"low"})}}function RO(t){const e=[];if(t.styles){e.push({attributeName:"listStyle",defaultValue:PO,addCommand(t){t.commands.add("listStyle",new LO(t,PO))},appliesToListItem(){return true},setAttributeOnDowncast(t,e,n){if(e&&e!==PO){t.setStyle("list-style-type",e,n)}else{t.removeStyle("list-style-type",n)}},getAttributeOnUpcast(t){return t.getStyle("list-style-type")||PO}})}if(t.reversed){e.push({attributeName:"listReversed",defaultValue:false,addCommand(t){t.commands.add("listReversed",new NO(t))},appliesToListItem(t){return t.getAttribute("listType")=="numbered"},setAttributeOnDowncast(t,e,n){if(e){t.setAttribute("reversed","reversed",n)}else{t.removeAttribute("reversed",n)}},getAttributeOnUpcast(t){return t.hasAttribute("reversed")}})}if(t.startIndex){e.push({attributeName:"listStart",defaultValue:1,addCommand(t){t.commands.add("listStart",new zO(t))},appliesToListItem(t){return t.getAttribute("listType")=="numbered"},setAttributeOnDowncast(t,e,n){if(e==0||e>1){t.setAttribute("start",e,n)}else{t.removeAttribute("start",n)}},getAttributeOnUpcast(t){const e=t.getAttribute("start");return e>=0?e:1}})}return e}function VO(t){return e=>{e.on("element:li",((e,n,i)=>{const o=n.viewItem.parent;const r=n.modelRange.start.nodeAfter||n.modelRange.end.nodeBefore;for(const e of t){if(e.appliesToListItem(r)){const t=e.getAttributeOnUpcast(o);i.writer.setAttribute(e.attributeName,t,r)}}}),{priority:"low"})}}function jO(t){return n=>{for(const i of t){n.on(`attribute:${i.attributeName}:listItem`,((t,n,o)=>{const r=o.writer;const s=n.item;const a=KP(s.previousSibling,{sameIndent:true,listIndent:s.getAttribute("listIndent"),direction:"backward"});const l=o.mapper.toViewElement(s);if(!e(s,a)){r.breakContainer(r.createPositionBefore(l))}i.setAttributeOnDowncast(r,n.attributeNewValue,l.parent)}),{priority:"low"})}};function e(t,e){return e&&t.getAttribute("listType")===e.getAttribute("listType")&&t.getAttribute("listIndent")===e.getAttribute("listIndent")&&t.getAttribute("listStyle")===e.getAttribute("listStyle")&&t.getAttribute("listReversed")===e.getAttribute("listReversed")&&t.getAttribute("listStart")===e.getAttribute("listStart")}}function FO(t,e){return(n,i)=>{const o=i[0];const r=o.getAttribute("listIndent");const s=i.filter((t=>t.getAttribute("listIndent")===r));let a=null;if(o.previousSibling.getAttribute("listIndent")+1!==r){a=KP(o.previousSibling,{sameIndent:true,direction:"backward",listIndent:r})}t.model.change((t=>{for(const n of s){for(const i of e){if(i.appliesToListItem(n)){const e=a==null?i.defaultValue:a.getAttribute(i.attributeName);t.setAttribute(i.attributeName,e,n)}}}}))}}function HO(t,e){return(n,i)=>{i=i.reverse().filter((t=>t.is("element","listItem")));if(!i.length){return}const o=i[0].getAttribute("listIndent");const r=i[0].getAttribute("listType");let s=i[0].previousSibling;if(s.is("element","listItem")){while(s.getAttribute("listIndent")!==o){s=s.previousSibling}}else{s=null}if(!s){s=i[i.length-1].nextSibling}if(!s||!s.is("element","listItem")){return}if(s.getAttribute("listType")!==r){return}t.model.change((t=>{const n=i.filter((t=>t.getAttribute("listIndent")===o));for(const i of n){for(const n of e){if(n.appliesToListItem(i)){const e=n.attributeName;const o=s.getAttribute(e);t.setAttribute(e,o,i)}}}}))}}function UO(t,e){return n=>{let i=false;const o=KO(t.model.document.differ.getChanges()).filter((t=>t.getAttribute("listType")!=="todo"));if(!o.length){return i}let r=o[o.length-1].nextSibling;if(!r||!r.is("element","listItem")){r=o[0].previousSibling;if(r){const t=o[0].getAttribute("listIndent");while(r.is("element","listItem")&&r.getAttribute("listIndent")!==t){r=r.previousSibling;if(!r){break}}}}for(const t of e){const e=t.attributeName;for(const s of o){if(!t.appliesToListItem(s)){n.removeAttribute(e,s);continue}if(!s.hasAttribute(e)){if(WO(r,s,t)){n.setAttribute(e,r.getAttribute(e),s)}else{n.setAttribute(e,t.defaultValue,s)}i=true}else{const o=s.previousSibling;if(qO(o,s,t.attributeName)){n.setAttribute(e,o.getAttribute(e),s);i=true}}}}return i}}function WO(t,e,n){if(!t){return false}const i=t.getAttribute(n.attributeName);if(!i){return false}if(i==n.defaultValue){return false}if(t.getAttribute("listType")!==e.getAttribute("listType")){return false}return true}function qO(t,e,n){if(!t||!t.is("element","listItem")){return false}if(e.getAttribute("listType")!==t.getAttribute("listType")){return false}const i=t.getAttribute("listIndent");if(i<1||i!==e.getAttribute("listIndent")){return false}const o=t.getAttribute(n);if(!o||o===e.getAttribute(n)){return false}return true}function GO(t){return e=>{const n=KO(t.model.document.differ.getChanges()).filter((t=>t.getAttribute("listType")==="todo"&&(t.hasAttribute("listStyle")||t.hasAttribute("listReversed")||t.hasAttribute("listStart"))));if(!n.length){return false}for(const t of n){e.removeAttribute("listStyle",t);e.removeAttribute("listReversed",t);e.removeAttribute("listStart",t)}return true}}function $O(t){return(e,n)=>{n=n.filter((t=>t.is("element","listItem")));t.model.change((t=>{for(const e of n){t.removeAttribute("listStyle",e)}}))}}function KO(t){const e=[];for(const n of t){const t=YO(n);if(t&&t.is("element","listItem")){e.push(t)}}return e}function YO(t){if(t.type==="attribute"){return t.range.start.nodeAfter}if(t.type==="insert"){return t.position.nodeAfter}return null}var ZO=n(3195);var QO={injectType:"singletonStyleTag",attributes:{"data-cke":true}};QO.insert="head";QO.singleton=true;var JO=Sc()(ZO.Z,QO);const XO=ZO.Z.locals||{};class tR extends Lc{constructor(t,e){super(t);const n=this.bindTemplate;this.set("isCollapsed",false);this.set("label","");this.buttonView=this._createButtonView();this.children=this.createCollection();this.set("_collapsibleAriaLabelUid",undefined);if(e){this.children.addMany(e)}this.setTemplate({tag:"div",attributes:{class:["ck","ck-collapsible",n.if("isCollapsed","ck-collapsible_collapsed")]},children:[this.buttonView,{tag:"div",attributes:{class:["ck","ck-collapsible__children"],role:"region",hidden:n.if("isCollapsed","hidden"),"aria-labelledby":n.to("_collapsibleAriaLabelUid")},children:this.children}]})}render(){super.render();this._collapsibleAriaLabelUid=this.buttonView.labelView.element.id}_createButtonView(){const t=new kd(this.locale);const e=t.bindTemplate;t.set({withText:true,icon:Fd});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}));return t}}var eR=n(7133);var nR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};nR.insert="head";nR.singleton=true;var iR=Sc()(eR.Z,nR);const oR=eR.Z.locals||{};class rR extends Lc{constructor(t,{enabledProperties:e,styleButtonViews:n,styleGridAriaLabel:i}){super(t);this.stylesView=null;this.additionalPropertiesCollapsibleView=null;this.startIndexFieldView=null;this.reversedSwitchButtonView=null;this.focusTracker=new uc;this.keystrokes=new hc;this.focusables=new xc;const o=["ck","ck-list-properties"];this.children=this.createCollection();this.focusCycler=new Yd({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});if(e.styles){this.stylesView=this._createStylesView(n,i);this.children.add(this.stylesView)}else{o.push("ck-list-properties_without-styles")}if(e.startIndex||e.reversed){this._addNumberedListPropertyViews(e);o.push("ck-list-properties_with-numbered-properties")}this.setTemplate({tag:"div",attributes:{class:o},children:this.children})}render(){super.render();if(this.stylesView){this.focusables.add(this.stylesView);this.focusTracker.add(this.stylesView.element);if(this.startIndexFieldView||this.reversedSwitchButtonView){this.focusables.add(this.children.last.buttonView);this.focusTracker.add(this.children.last.buttonView.element)}for(const t of this.stylesView.children){this.stylesView.focusTracker.add(t.element)}r({keystrokeHandler:this.stylesView.keystrokes,focusTracker:this.stylesView.focusTracker,gridItems:this.stylesView.children,numberOfColumns:()=>il.window.getComputedStyle(this.stylesView.element).getPropertyValue("grid-template-columns").split(" ").length,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}if(this.startIndexFieldView){this.focusables.add(this.startIndexFieldView);this.focusTracker.add(this.startIndexFieldView.element);this.listenTo(this.startIndexFieldView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"});const t=t=>t.stopPropagation();this.keystrokes.set("arrowright",t);this.keystrokes.set("arrowleft",t);this.keystrokes.set("arrowup",t);this.keystrokes.set("arrowdown",t)}if(this.reversedSwitchButtonView){this.focusables.add(this.reversedSwitchButtonView);this.focusTracker.add(this.reversedSwitchButtonView.element)}this.keystrokes.listenTo(this.element)}focus(){this.focusCycler.focusFirst()}focusLast(){this.focusCycler.focusLast()}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}_createStylesView(t,e){const n=new Lc(this.locale);n.children=n.createCollection();n.children.addMany(t);n.setTemplate({tag:"div",attributes:{"aria-label":e,class:["ck","ck-list-styles-list"]},children:n.children});n.children.delegate("execute").to(this);n.focus=function(){this.children.first.focus()};n.focusTracker=new uc;n.keystrokes=new hc;n.render();n.keystrokes.listenTo(n.element);return n}_addNumberedListPropertyViews(t){const e=this.locale.t;const n=[];if(t.startIndex){this.startIndexFieldView=this._createStartIndexField();n.push(this.startIndexFieldView)}if(t.reversed){this.reversedSwitchButtonView=this._createReversedSwitchButton();n.push(this.reversedSwitchButtonView)}if(t.styles){this.additionalPropertiesCollapsibleView=new tR(this.locale,n);this.additionalPropertiesCollapsibleView.set({label:e("List properties"),isCollapsed:true});this.additionalPropertiesCollapsibleView.buttonView.bind("isEnabled").toMany(n,"isEnabled",((...t)=>t.some((t=>t))));this.additionalPropertiesCollapsibleView.buttonView.on("change:isEnabled",((t,e,n)=>{if(!n){this.additionalPropertiesCollapsibleView.isCollapsed=true}}));this.children.add(this.additionalPropertiesCollapsibleView)}else{this.children.addMany(n)}}_createStartIndexField(){const t=this.locale.t;const e=new Ly(this.locale,zy);e.set({label:t("Start at"),class:"ck-numbered-list-properties__start-index"});e.fieldView.set({min:0,step:1,value:1,inputMode:"numeric"});e.fieldView.on("input",(()=>{const n=e.fieldView.element;const i=n.valueAsNumber;if(Number.isNaN(i)){return}if(!n.checkValidity()){e.errorText=t("Start index must be greater than 0.")}else{this.fire("listStart",{startIndex:i})}}));return e}_createReversedSwitchButton(){const t=this.locale.t;const e=new vd(this.locale);e.set({withText:true,label:t("Reversed order"),class:"ck-numbered-list-properties__reversed-order"});e.delegate("execute").to(this,"listReversed");return e}}const sR='$${Delta.CKEditor.Icon[51]}$$';const aR='$${Delta.CKEditor.Icon[52]}$$';const lR='$${Delta.CKEditor.Icon[53]}$$';const cR='$${Delta.CKEditor.Icon[54]}$$';const dR='$${Delta.CKEditor.Icon[55]}$$';const uR='$${Delta.CKEditor.Icon[56]}$$';const hR='$${Delta.CKEditor.Icon[57]}$$';const gR='$${Delta.CKEditor.Icon[58]}$$';const mR='$${Delta.CKEditor.Icon[59]}$$';var fR=n(4553);var pR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};pR.insert="head";pR.singleton=true;var bR=Sc()(fR.Z,pR);const kR=fR.Z.locals||{};class wR extends eu{static get pluginName(){return"ListPropertiesUI"}init(){const t=this.editor;const e=t.locale.t;const n=t.config.get("list.properties");if(n.styles){t.ui.componentFactory.add("bulletedList",AR({editor:t,parentCommandName:"bulletedList",buttonLabel:e("Bulleted List"),buttonIcon:IO,styleGridAriaLabel:e("Bulleted list styles toolbar"),styleDefinitions:[{label:e("Toggle the disc list style"),tooltip:e("Disc"),type:"disc",icon:sR},{label:e("Toggle the circle list style"),tooltip:e("Circle"),type:"circle",icon:aR},{label:e("Toggle the square list style"),tooltip:e("Square"),type:"square",icon:lR}]}))}if(n.styles||n.startIndex||n.reversed){t.ui.componentFactory.add("numberedList",AR({editor:t,parentCommandName:"numberedList",buttonLabel:e("Numbered List"),buttonIcon:TO,styleGridAriaLabel:e("Numbered list styles toolbar"),styleDefinitions:[{label:e("Toggle the decimal list style"),tooltip:e("Decimal"),type:"decimal",icon:cR},{label:e("Toggle the decimal with leading zero list style"),tooltip:e("Decimal with leading zero"),type:"decimal-leading-zero",icon:dR},{label:e("Toggle the lower–roman list style"),tooltip:e("Lower–roman"),type:"lower-roman",icon:uR},{label:e("Toggle the upper–roman list style"),tooltip:e("Upper-roman"),type:"upper-roman",icon:hR},{label:e("Toggle the lower–latin list style"),tooltip:e("Lower-latin"),type:"lower-latin",icon:gR},{label:e("Toggle the upper–latin list style"),tooltip:e("Upper-latin"),type:"upper-latin",icon:mR}]}))}}}function AR({editor:t,parentCommandName:e,buttonLabel:n,buttonIcon:i,styleGridAriaLabel:o,styleDefinitions:r}){const s=t.commands.get(e);return a=>{const l=yv(a,$d);const c=l.buttonView;l.bind("isEnabled").to(s);l.class="ck-list-styles-dropdown";c.on("execute",(()=>{t.execute(e);t.editing.view.focus()}));c.set({label:n,icon:i,tooltip:true,isToggleable:true});c.bind("isOn").to(s,"value",(t=>!!t));l.once("change:isOpen",(()=>{const n=_R({editor:t,dropdownView:l,parentCommandName:e,styleGridAriaLabel:o,styleDefinitions:r});l.panelView.children.add(n)}));l.on("execute",(()=>{t.editing.view.focus()}));return l}}function CR({editor:t,listStyleCommand:e,parentCommandName:n}){const i=t.locale;const o=t.commands.get(n);return({label:n,type:r,icon:s,tooltip:a})=>{const l=new kd(i);l.set({label:n,icon:s,tooltip:a});e.on("change:value",(()=>{l.isOn=e.value===r}));l.on("execute",(()=>{if(o.value){if(e.value!==r){t.execute("listStyle",{type:r})}else{t.execute("listStyle",{type:e.defaultType})}}else{t.model.change((()=>{t.execute("listStyle",{type:r})}))}}));return l}}function _R({editor:t,dropdownView:e,parentCommandName:n,styleDefinitions:i,styleGridAriaLabel:o}){const r=t.locale;const s=t.config.get("list.properties");let a=null;if(n!="numberedList"){s.startIndex=false;s.reversed=false}if(s.styles){const e=t.commands.get("listStyle");const o=CR({editor:t,parentCommandName:n,listStyleCommand:e});const r=typeof e.isStyleTypeSupported=="function"?t=>e.isStyleTypeSupported(t.type):()=>true;a=i.filter(r).map(o)}const l=new rR(r,{styleGridAriaLabel:o,enabledProperties:s,styleButtonViews:a});if(s.styles){Tv(e,(()=>l.stylesView.children.find((t=>t.isOn))))}if(s.startIndex){const e=t.commands.get("listStart");l.startIndexFieldView.bind("isEnabled").to(e);l.startIndexFieldView.fieldView.bind("value").to(e);l.on("listStart",((e,n)=>t.execute("listStart",n)))}if(s.reversed){const e=t.commands.get("listReversed");l.reversedSwitchButtonView.bind("isEnabled").to(e);l.reversedSwitchButtonView.bind("isOn").to(e,"value",(t=>!!t));l.on("listReversed",(()=>{const n=e.value;t.execute("listReversed",{reversed:!n})}))}l.delegate("execute").to(e);return l}class vR extends eu{static get requires(){return[OO,wR]}static get pluginName(){return"ListProperties"}}function yR(t,e){return t=>{t.on("attribute:url:media",n)};function n(n,i,o){if(!o.consumable.consume(i.item,n.name)){return}const r=i.attributeNewValue;const s=o.writer;const a=o.mapper.toViewElement(i.item);const l=[...a.getChildren()].find((t=>t.getCustomProperty("media-content")));s.remove(l);const c=t.getMediaViewElement(s,r,e);s.insert(s.createPositionAt(a,0),c)}}function xR(t,e,n){e.setCustomProperty("media",true,t);return dD(t,e,{label:n})}function ER(t){const e=t.getSelectedElement();if(e&&DR(e)){return e}return null}function DR(t){return!!t.getCustomProperty("media")&&cD(t)}function SR(t,e,n,i){return t.createContainerElement("figure",{class:"media"},[e.getMediaViewElement(t,n,i),t.createSlot()])}function TR(t){const e=t.getSelectedElement();if(e&&e.is("element","media")){return e}return null}function IR(t,e,n,i){t.change((o=>{const r=o.createElement("media",{url:e});t.insertObject(r,n,null,{setSelection:"on",findOptimalPosition:i})}))}class MR extends iu{refresh(){const t=this.editor.model;const e=t.document.selection;const n=TR(e);this.value=n?n.getAttribute("url"):null;this.isEnabled=LR(e)||BR(e,t)}execute(t){const e=this.editor.model;const n=e.document.selection;const i=TR(n);if(i){e.change((e=>{e.setAttribute("url",t,i)}))}else{IR(e,t,n,true)}}}function BR(t,e){const n=bD(t,e);let i=n.start.parent;if(i.isEmpty&&!e.schema.isLimit(i)){i=i.parent}return e.schema.checkChild(i,"media")}function LR(t){const e=t.getSelectedElement();return!!e&&e.name==="media"}const NR='$${Delta.CKEditor.Icon[60]}$$';const zR="0 0 64 42";class PR{constructor(t,e){const n=e.providers;const i=e.extraProviders||[];const o=new Set(e.removeProviders);const r=n.concat(i).filter((t=>{const e=t.name;if(!e){P("media-embed-no-provider-name",{provider:t});return false}return!o.has(e)}));this.locale=t;this.providerDefinitions=r}hasMedia(t){return!!this._getMedia(t)}getMediaViewElement(t,e,n){return this._getMedia(e).getViewElement(t,n)}_getMedia(t){if(!t){return new OR(this.locale)}t=t.trim();for(const e of this.providerDefinitions){const n=e.html;const i=Xl(e.url);for(const e of i){const i=this._getUrlMatches(t,e);if(i){return new OR(this.locale,t,i,n)}}}return null}_getUrlMatches(t,e){let n=t.match(e);if(n){return n}let i=t.replace(/^https?:\/\//,"");n=i.match(e);if(n){return n}i=i.replace(/^www\./,"");n=i.match(e);if(n){return n}return null}}class OR{constructor(t,e,n,i){this.url=this._getValidUrl(e);this._locale=t;this._match=n;this._previewRenderer=i}getViewElement(t,e){const n={};let i;if(e.renderForEditingView||e.renderMediaPreview&&this.url&&this._previewRenderer){if(this.url){n["data-oembed-url"]=this.url}if(e.renderForEditingView){n.class="ck-media__wrapper"}const o=this._getPreviewHtml(e);i=t.createRawElement("div",n,((t,e)=>{e.setContentOf(t,o)}))}else{if(this.url){n.url=this.url}i=t.createEmptyElement(e.elementName,n)}t.setCustomProperty("media-content",true,i);return i}_getPreviewHtml(t){if(this._previewRenderer){return this._previewRenderer(this._match)}else{if(this.url&&t.renderForEditingView){return this._getPlaceholderHtml()}return""}}_getPlaceholderHtml(){const t=new gd;const e=this._locale.t;t.content=NR;t.viewBox=zR;const n=new zc({tag:"div",attributes:{class:"ck ck-reset_all ck-media__placeholder"},children:[{tag:"div",attributes:{class:"ck-media__placeholder__icon"},children:[t]},{tag:"a",attributes:{class:"ck-media__placeholder__url",target:"_blank",rel:"noopener noreferrer",href:this.url,"data-cke-tooltip-text":e("Open media in new tab")},children:[{tag:"span",attributes:{class:"ck-media__placeholder__url__text"},children:[this.url]}]}]}).render();return n.outerHTML}_getValidUrl(t){if(!t){return null}if(t.match(/^https?/)){return t}return"https://"+t}}var RR=n(952);var VR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};VR.insert="head";VR.singleton=true;var jR=Sc()(RR.Z,VR);const FR=RR.Z.locals||{};class HR extends eu{static get pluginName(){return"MediaEmbedEditing"}constructor(t){super(t);t.config.define("mediaEmbed",{elementName:"oembed",providers:[{name:"dailymotion",url:/^dailymotion\.com\/video\/(\w+)/,html:t=>{const e=t[1];return'<div style="position: relative; padding-bottom: 100%; height: 0; ">'+`<iframe src="https://www.dailymotion.com/embed/video/${e}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" width="480" height="270" allowfullscreen allow="autoplay">'+"</iframe>"+"</div>"}},{name:"spotify",url:[/^open\.spotify\.com\/(artist\/\w+)/,/^open\.spotify\.com\/(album\/\w+)/,/^open\.spotify\.com\/(track\/\w+)/],html:t=>{const e=t[1];return'<div style="position: relative; padding-bottom: 100%; height: 0; padding-bottom: 126%;">'+`<iframe src="https://open.spotify.com/embed/${e}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" allowtransparency="true" allow="encrypted-media">'+"</iframe>"+"</div>"}},{name:"youtube",url:[/^(?:m\.)?youtube\.com\/watch\?v=([\w-]+)(?:&t=(\d+))?/,/^(?:m\.)?youtube\.com\/v\/([\w-]+)(?:\?t=(\d+))?/,/^youtube\.com\/embed\/([\w-]+)(?:\?start=(\d+))?/,/^youtu\.be\/([\w-]+)(?:\?t=(\d+))?/],html:t=>{const e=t[1];const n=t[2];return'<div style="position: relative; padding-bottom: 100%; height: 0; padding-bottom: 56.2493%;">'+`<iframe src="https://www.youtube.com/embed/${e}${n?`?start=${n}`:""}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" allow="autoplay; encrypted-media" allowfullscreen>'+"</iframe>"+"</div>"}},{name:"vimeo",url:[/^vimeo\.com\/(\d+)/,/^vimeo\.com\/[^/]+\/[^/]+\/video\/(\d+)/,/^vimeo\.com\/album\/[^/]+\/video\/(\d+)/,/^vimeo\.com\/channels\/[^/]+\/(\d+)/,/^vimeo\.com\/groups\/[^/]+\/videos\/(\d+)/,/^vimeo\.com\/ondemand\/[^/]+\/(\d+)/,/^player\.vimeo\.com\/video\/(\d+)/],html:t=>{const e=t[1];return'<div style="position: relative; padding-bottom: 100%; height: 0; padding-bottom: 56.2493%;">'+`<iframe src="https://player.vimeo.com/video/${e}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen>'+"</iframe>"+"</div>"}},{name:"instagram",url:/^instagram\.com\/p\/(\w+)/},{name:"twitter",url:/^twitter\.com/},{name:"googleMaps",url:[/^google\.com\/maps/,/^goo\.gl\/maps/,/^maps\.google\.com/,/^maps\.app\.goo\.gl/]},{name:"flickr",url:/^flickr\.com/},{name:"facebook",url:/^facebook\.com/}]});this.registry=new PR(t.locale,t.config.get("mediaEmbed"))}init(){const t=this.editor;const e=t.model.schema;const n=t.t;const i=t.conversion;const o=t.config.get("mediaEmbed.previewsInData");const r=t.config.get("mediaEmbed.elementName");const s=this.registry;t.commands.add("mediaEmbed",new MR(t));e.register("media",{inheritAllFrom:"$blockObject",allowAttributes:["url"]});i.for("dataDowncast").elementToStructure({model:"media",view:(t,{writer:e})=>{const n=t.getAttribute("url");return SR(e,s,n,{elementName:r,renderMediaPreview:n&&o})}});i.for("dataDowncast").add(yR(s,{elementName:r,renderMediaPreview:o}));i.for("editingDowncast").elementToStructure({model:"media",view:(t,{writer:e})=>{const i=t.getAttribute("url");const o=SR(e,s,i,{elementName:r,renderForEditingView:true});return xR(o,e,n("media widget"))}});i.for("editingDowncast").add(yR(s,{elementName:r,renderForEditingView:true}));i.for("upcast").elementToElement({view:t=>["oembed",r].includes(t.name)&&t.getAttribute("url")?{name:true}:null,model:(t,{writer:e})=>{const n=t.getAttribute("url");if(s.hasMedia(n)){return e.createElement("media",{url:n})}}}).elementToElement({view:{name:"div",attributes:{"data-oembed-url":true}},model:(t,{writer:e})=>{const n=t.getAttribute("data-oembed-url");if(s.hasMedia(n)){return e.createElement("media",{url:n})}}}).add((t=>{t.on("element:figure",e);function e(t,e,n){if(!n.consumable.consume(e.viewItem,{name:true,classes:"media"})){return}const{modelRange:i,modelCursor:o}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=i;e.modelCursor=o;const r=dc(i.getItems());if(!r){n.consumable.revert(e.viewItem,{name:true,classes:"media"})}}}))}}const UR=/^(?:http(s)?:\/\/)?[\w-]+\.[\w-.~:/?#[\]@!$&'()*+,;=%]+$/;class WR extends eu{static get requires(){return[RS,oE,KS]}static get pluginName(){return"AutoMediaEmbed"}constructor(t){super(t);this._timeoutId=null;this._positionToInsert=null}init(){const t=this.editor;const e=t.model.document;this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",(()=>{const t=e.selection.getFirstRange();const n=sA.fromPosition(t.start);n.stickiness="toPrevious";const i=sA.fromPosition(t.end);i.stickiness="toNext";e.once("change:data",(()=>{this._embedMediaBetweenPositions(n,i);n.detach();i.detach()}),{priority:"high"})}));t.commands.get("undo").on("execute",(()=>{if(this._timeoutId){il.window.clearTimeout(this._timeoutId);this._positionToInsert.detach();this._timeoutId=null;this._positionToInsert=null}}),{priority:"high"})}_embedMediaBetweenPositions(t,e){const n=this.editor;const i=n.plugins.get(HR).registry;const o=new kb(t,e);const r=o.getWalker({ignoreElementEnd:true});let s="";for(const t of r){if(t.item.is("$textProxy")){s+=t.item.data}}s=s.trim();if(!s.match(UR)){o.detach();return}if(!i.hasMedia(s)){o.detach();return}const a=n.commands.get("mediaEmbed");if(!a.isEnabled){o.detach();return}this._positionToInsert=sA.fromPosition(t);this._timeoutId=il.window.setTimeout((()=>{n.model.change((t=>{this._timeoutId=null;t.remove(o);o.detach();let e;if(this._positionToInsert.root.rootName!=="$graveyard"){e=this._positionToInsert}IR(n.model,s,e,false);this._positionToInsert.detach();this._positionToInsert=null}));n.plugins.get("Delete").requestUndoOnBackspace()}),100)}}var qR=n(3525);var GR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};GR.insert="head";GR.singleton=true;var $R=Sc()(qR.Z,GR);const KR=qR.Z.locals||{};class YR extends Lc{constructor(t,n){super(n);const i=n.t;this.focusTracker=new uc;this.keystrokes=new hc;this.set("mediaURLInputValue","");this.urlInputView=this._createUrlInput();this.saveButtonView=this._createButton(i("Save"),J_.check,"ck-button-save");this.saveButtonView.type="submit";this.saveButtonView.bind("isEnabled").to(this,"mediaURLInputValue",(t=>!!t));this.cancelButtonView=this._createButton(i("Cancel"),J_.cancel,"ck-button-cancel","cancel");this._focusables=new xc;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this._validators=t;this.setTemplate({tag:"form",attributes:{class:["ck","ck-media-form","ck-responsive-form"],tabindex:"-1"},children:[this.urlInputView,this.saveButtonView,this.cancelButtonView]});e(this)}render(){super.render();o({view:this});const t=[this.urlInputView,this.saveButtonView,this.cancelButtonView];t.forEach((t=>{this._focusables.add(t);this.focusTracker.add(t.element)}));this.keystrokes.listenTo(this.element);const e=t=>t.stopPropagation();this.keystrokes.set("arrowright",e);this.keystrokes.set("arrowleft",e);this.keystrokes.set("arrowup",e);this.keystrokes.set("arrowdown",e);this.listenTo(this.urlInputView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}get url(){return this.urlInputView.fieldView.element.value.trim()}set url(t){this.urlInputView.fieldView.element.value=t.trim()}isValid(){this.resetFormStatus();for(const t of this._validators){const e=t(this);if(e){this.urlInputView.errorText=e;return false}}return true}resetFormStatus(){this.urlInputView.errorText=null;this.urlInputView.infoText=this._urlInputViewInfoDefault}_createUrlInput(){const t=this.locale.t;const e=new Ly(this.locale,Ny);const n=e.fieldView;this._urlInputViewInfoDefault=t("Paste the media URL in the input.");this._urlInputViewInfoTip=t("Tip: Paste the URL into the content to embed faster.");e.label=t("Media URL");e.infoText=this._urlInputViewInfoDefault;n.on("input",(()=>{e.infoText=n.element.value?this._urlInputViewInfoTip:this._urlInputViewInfoDefault;this.mediaURLInputValue=n.element.value.trim()}));return e}_createButton(t,e,n,i){const o=new kd(this.locale);o.set({label:t,icon:e,tooltip:true});o.extendTemplate({attributes:{class:n}});if(i){o.delegate("execute").to(this,i)}return o}}const ZR='$${Delta.CKEditor.Icon[61]}$$';class QR extends eu{static get requires(){return[HR]}static get pluginName(){return"MediaEmbedUI"}init(){const t=this.editor;const e=t.commands.get("mediaEmbed");t.ui.componentFactory.add("mediaEmbed",(t=>{const n=yv(t);this._setUpDropdown(n,e);return n}))}_setUpDropdown(t,e){const n=this.editor;const i=n.t;const o=t.buttonView;const r=n.plugins.get(HR).registry;t.once("change:isOpen",(()=>{const i=new YR(JR(n.t,r),n.locale);t.panelView.children.add(i);o.on("open",(()=>{i.disableCssTransitions();i.url=e.value||"";i.urlInputView.fieldView.select();i.enableCssTransitions()}),{priority:"low"});t.on("submit",(()=>{if(i.isValid()){n.execute("mediaEmbed",i.url);n.editing.view.focus()}}));t.on("change:isOpen",(()=>i.resetFormStatus()));t.on("cancel",(()=>{n.editing.view.focus()}));i.delegate("submit","cancel").to(t);i.urlInputView.bind("value").to(e,"value");i.urlInputView.bind("isReadOnly").to(e,"isEnabled",(t=>!t))}));t.bind("isEnabled").to(e);o.set({label:i("Insert media"),icon:ZR,tooltip:true})}}function JR(t,e){return[e=>{if(!e.url.length){return t("The URL must not be empty.")}},n=>{if(!e.hasMedia(n.url)){return t("This media URL is not supported.")}}]}var XR=n(5777);var tV={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tV.insert="head";tV.singleton=true;var eV=Sc()(XR.Z,tV);const nV=XR.Z.locals||{};class iV extends eu{static get requires(){return[HR,QR,WR,ZD]}static get pluginName(){return"MediaEmbed"}}class oV extends eu{static get requires(){return[XD]}static get pluginName(){return"MediaEmbedToolbar"}afterInit(){const t=this.editor;const e=t.t;const n=t.plugins.get(XD);n.register("mediaEmbed",{ariaLabel:e("Media toolbar"),items:t.config.get("mediaEmbed.toolbar")||[],getRelatedElement:ER})}}class rV extends iu{refresh(){const t=this.editor.model;const e=t.schema;const n=t.document.selection;this.isEnabled=sV(n,e,t)}execute(){const t=this.editor.model;t.change((e=>{const n=e.createElement("pageBreak");t.insertObject(n,null,null,{setSelection:"after"})}))}}function sV(t,e,n){const i=aV(t,n);return e.checkChild(i,"pageBreak")}function aV(t,e){const n=bD(t,e);const i=n.start.parent;if(i.isEmpty&&!i.is("element","$root")){return i.parent}return i}var lV=n(6448);var cV={injectType:"singletonStyleTag",attributes:{"data-cke":true}};cV.insert="head";cV.singleton=true;var dV=Sc()(lV.Z,cV);const uV=lV.Z.locals||{};class hV extends eu{static get pluginName(){return"PageBreakEditing"}init(){const t=this.editor;const e=t.model.schema;const n=t.t;const i=t.conversion;e.register("pageBreak",{inheritAllFrom:"$blockObject"});i.for("dataDowncast").elementToStructure({model:"pageBreak",view:(t,{writer:e})=>{const n=e.createContainerElement("div",{class:"page-break",style:"page-break-after: always"},e.createContainerElement("span",{style:"display: none"}));return n}});i.for("editingDowncast").elementToStructure({model:"pageBreak",view:(t,{writer:e})=>{const i=n("Page break");const o=e.createContainerElement("div");const r=e.createRawElement("span",{class:"page-break__label"},(function(t){t.innerText=n("Page break")}));e.addClass("page-break",o);e.insert(e.createPositionAt(o,0),r);return gV(o,e,i)}});i.for("upcast").elementToElement({view:t=>{const e=t.getStyle("page-break-before")=="always";const n=t.getStyle("page-break-after")=="always";if(!e&&!n){return null}if(t.childCount==1){const e=t.getChild(0);if(!e.is("element","span")||e.getStyle("display")!="none"){return null}}else if(t.childCount>1){return null}return{name:true}},model:"pageBreak",converterPriority:"high"});t.commands.add("pageBreak",new rV(t))}}function gV(t,e,n){e.setCustomProperty("pageBreak",true,t);return dD(t,e,{label:n})}const mV='$${Delta.CKEditor.Icon[62]}$$';class fV extends eu{static get pluginName(){return"PageBreakUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("pageBreak",(n=>{const i=t.commands.get("pageBreak");const o=new kd(n);o.set({label:e("Page break"),icon:mV,tooltip:true});o.bind("isEnabled").to(i,"isEnabled");this.listenTo(o,"execute",(()=>{t.execute("pageBreak");t.editing.view.focus()}));return o}))}}class pV extends eu{static get requires(){return[hV,fV,ZD]}static get pluginName(){return"PageBreak"}}function bV(t,e){for(const n of t.getChildren()){if(n.is("element","b")&&n.getStyle("font-weight")==="normal"){const i=t.getChildIndex(n);e.remove(n);e.insertChild(i,n.getChildren(),t)}}}function kV(t,e){const n=new Zg(e.document.stylesProcessor);const i=new Jm(n,{renderingMode:"data"});const o=i.blockElements;const r=i.inlineObjectElements;const s=[];for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","br")){const n=wV(t,"forward",e,{blockElements:o,inlineObjectElements:r});const i=wV(t,"backward",e,{blockElements:o,inlineObjectElements:r});const a=AV(n,o);const l=AV(i,o);if(l||a){s.push(t)}}}for(const t of s){if(t.hasClass("Apple-interchange-newline")){e.remove(t)}else{e.replace(t,e.createElement("p"))}}}function wV(t,e,n,{blockElements:i,inlineObjectElements:o}){let r=n.createPositionAt(t,e=="forward"?"after":"before");r=r.getLastMatchingPosition((({item:t})=>t.is("element")&&!i.includes(t.name)&&!o.includes(t.name)),{direction:e});return e=="forward"?r.nodeAfter:r.nodeBefore}function AV(t,e){return!!t&&t.is("element")&&e.includes(t.name)}function CV(t,e){if(!t.childCount){return}const n=new kC(t.document);const i=vV(t,n);if(!i.length){return}let o=null;let r=1;i.forEach(((t,s)=>{const a=BV(i[s-1],t);const l=a?null:i[s-1];const c=NV(l,t);if(a){o=null;r=1}if(!o||c!==0){const i=yV(t,e);if(!o){o=SV(i,t.element,n)}else if(t.indent>r){const t=o.getChild(o.childCount-1);const e=t.getChild(t.childCount-1);o=SV(i,e,n);r+=1}else if(t.indent<r){const e=r-t.indent;o=zV(o,e);r=t.indent}if(t.indent<=r){if(!o.is("element",i.type)){o=n.rename(i.type,o)}}}const d=TV(t.element,n);n.appendChild(d,o)}))}function _V(t,e){for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","li")){const n=t.getChild(0);if(n&&n.is("element","p")){e.unwrapElement(n)}}}}function vV(t,e){const n=e.createRangeIn(t);const i=new Tu({name:/^p|h\d+$/,styles:{"mso-list":/.*/}});const o=[];for(const t of n){if(t.type==="elementStart"&&i.match(t.item)){const e=IV(t.item);o.push({element:t.item,id:e.id,order:e.order,indent:e.indent})}}return o}function yV(t,e){const n=new RegExp(`@list l${t.id}:level${t.indent}\\s*({[^}]*)`,"gi");const i=/mso-level-number-format:([^;]{0,100});/gi;const o=/mso-level-start-at:\s{0,100}([0-9]{0,10})\s{0,100};/gi;const r=n.exec(e);let s="decimal";let a="ol";let l=null;if(r&&r[1]){const e=i.exec(r[1]);if(e&&e[1]){s=e[1].trim();a=s!=="bullet"&&s!=="image"?"ol":"ul"}if(s==="bullet"){const e=xV(t.element);if(e){s=e}}else{const t=o.exec(r[1]);if(t&&t[1]){l=parseInt(t[1])}}}return{type:a,startIndex:l,style:DV(s)}}function xV(t){const e=EV(t);if(!e){return null}const n=e._data;if(n==="o"){return"circle"}else if(n==="·"){return"disc"}else if(n==="§"){return"square"}return null}function EV(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.is("$text")){return t}return t.getChild(0)}return null}function DV(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 SV(t,e,n){const i=e.parent;const o=n.createElement(t.type);const r=i.getChildIndex(e)+1;n.insertChild(r,o,i);if(t.style){n.setStyle("list-style-type",t.style,o)}if(t.startIndex&&t.startIndex>1){n.setAttribute("start",t.startIndex,o)}return o}function TV(t,e){MV(t,e);return e.rename("li",t)}function IV(t){const e={};const n=t.getStyle("mso-list");if(n){const t=n.match(/(^|\s{1,100})l(\d+)/i);const i=n.match(/\s{0,100}lfo(\d+)/i);const o=n.match(/\s{0,100}level(\d+)/i);if(t&&i&&o){e.id=t[2];e.order=i[1];e.indent=parseInt(o[1])}}return e}function MV(t,e){const n=new Tu({name:"span",styles:{"mso-list":"Ignore"}});const i=e.createRangeIn(t);for(const t of i){if(t.type==="elementStart"&&n.match(t.item)){e.remove(t.item)}}}function BV(t,e){if(!t){return true}if(t.id!==e.id){if(e.indent-t.indent===1){return false}return true}const n=e.element.previousSibling;if(!n){return true}return!LV(n)}function LV(t){return t.is("element","ol")||t.is("element","ul")}function NV(t,e){return t?e.indent-t.indent:e.indent-1}function zV(t,e){const n=t.getAncestors({parentFirst:true});let i=null;let o=0;for(const t of n){if(t.is("element","ul")||t.is("element","ol")){o++}if(o===e){i=t;break}}return i}const PV=/id=("|')docs-internal-guid-[-0-9a-f]+("|')/i;class OV{constructor(t){this.document=t}isActive(t){return PV.test(t)}execute(t){const e=new kC(this.document);const{body:n}=t._parsedData;bV(n,e);_V(n,e);kV(n,e);t.content=n}}function RV(t,e){if(!t.childCount){return}const n=new kC(t.document);const i=jV(t,n);FV(i,t,n);UV(i,t,n);HV(t,n);const o=WV(t,n);if(o.length){GV(o,qV(e),n)}}function VV(t){return btoa(t.match(/\w{2}/g).map((t=>String.fromCharCode(parseInt(t,16)))).join(""))}function jV(t,e){const n=e.createRangeIn(t);const i=new Tu({name:/v:(.+)/});const o=[];for(const t of n){if(t.type!="elementStart"){continue}const e=t.item;const n=e.previousSibling;const r=n&&n.is("element")?n.name:null;if(i.match(e)&&e.getAttribute("o:gfxdata")&&r!=="v:shapetype"){o.push(t.item.getAttribute("id"))}}return o}function FV(t,e,n){const i=n.createRangeIn(e);const o=new Tu({name:"img"});const r=[];for(const e of i){if(e.item.is("element")&&o.match(e.item)){const n=e.item;const i=n.getAttribute("v:shapes")?n.getAttribute("v:shapes").split(" "):[];if(i.length&&i.every((e=>t.indexOf(e)>-1))){r.push(n)}else if(!n.getAttribute("src")){r.push(n)}}}for(const t of r){n.remove(t)}}function HV(t,e){const n=e.createRangeIn(t);const i=new Tu({name:/v:(.+)/});const o=[];for(const t of n){if(t.type=="elementStart"&&i.match(t.item)){o.push(t.item)}}for(const t of o){e.remove(t)}}function UV(t,e,n){const i=n.createRangeIn(e);const o=[];for(const e of i){if(e.type=="elementStart"&&e.item.is("element","v:shape")){const n=e.item.getAttribute("id");if(t.includes(n)){continue}if(!r(e.item.parent.getChildren(),n)){o.push(e.item)}}}for(const t of o){const e={src:s(t)};if(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(n.name=="img"&&n.getAttribute("v:shapes")==e){return true}if(r(n.getChildren(),e)){return true}}}return false}function s(t){for(const e of t.getChildren()){if(e.is("element")&&e.getAttribute("src")){return e.getAttribute("src")}}}}function WV(t,e){const n=e.createRangeIn(t);const i=new Tu({name:"img"});const o=[];for(const t of n){if(t.item.is("element")&&i.match(t.item)){if(t.item.getAttribute("src").startsWith("file://")){o.push(t.item)}}}return o}function qV(t){if(!t){return[]}const e=/{\\pict[\s\S]+?\\bliptag-?\d+(\\blipupi-?\d+)?({\\\*\\blipuid\s?[\da-fA-F]+)?[\s}]*?/;const n=new RegExp("(?:("+e.source+"))([\\da-fA-F\\s]+)\\}","g");const i=t.match(n);const o=[];if(i){for(const t of i){let n=false;if(t.includes("\\pngblip")){n="image/png"}else if(t.includes("\\jpegblip")){n="image/jpeg"}if(n){o.push({hex:t.replace(e,"").replace(/[^\da-fA-F]/g,""),type:n})}}}return o}function GV(t,e,n){if(t.length===e.length){for(let i=0;i<t.length;i++){const o=`data:${e[i].type};base64,${VV(e[i].hex)}`;n.setAttribute("src",o,t[i])}}}const $V=/<meta\s*name="?generator"?\s*content="?microsoft\s*word\s*\d+"?\/?>/i;const KV=/xmlns:o="urn:schemas-microsoft-com/i;class YV{constructor(t){this.document=t}isActive(t){return $V.test(t)||KV.test(t)}execute(t){const{body:e,stylesString:n}=t._parsedData;CV(e,n);RV(e,t.dataTransfer.getData("text/rtf"));t.content=e}}function ZV(t){return JV(JV(t)).replace(/(<span\s+style=['"]mso-spacerun:yes['"]>[^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<span\s+style=['"]mso-spacerun:yes['"]><\/span>/g,"").replace(/ <\//g," </").replace(/ <o:p><\/o:p>/g," <o:p></o:p>").replace(/<o:p>(&nbsp;|\u00A0)<\/o:p>/g,"").replace(/>([^\S\r\n]*[\r\n]\s*)</g,"><")}function QV(t){t.querySelectorAll("span[style*=spacerun]").forEach((t=>{const e=t;const n=e.innerText.length||0;e.innerText=Array(n+1).join("  ").substr(0,n)}))}function JV(t){return t.replace(/<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g,((t,e)=>e.length===1?" ":Array(e.length+1).join("  ").substr(0,e.length)))}function XV(t,e){const n=new DOMParser;t=t.replace(/<!--\[if gte vml 1]>/g,"");const i=ZV(nj(t));const o=n.parseFromString(i,"text/html");QV(o);const r=o.body.innerHTML;const s=tj(o,e);const a=ej(o);return{body:s,bodyString:r,styles:a.styles,stylesString:a.stylesString}}function tj(t,e){const n=new Zg(e);const i=new Jm(n,{renderingMode:"data"});const o=t.createDocumentFragment();const r=t.body.childNodes;while(r.length>0){o.appendChild(r[0])}return i.domToView(o,{skipComments:true})}function ej(t){const e=[];const n=[];const i=Array.from(t.getElementsByTagName("style"));for(const t of i){if(t.sheet&&t.sheet.cssRules&&t.sheet.cssRules.length){e.push(t.sheet);n.push(t.innerHTML)}}return{styles:e,stylesString:n.join(" ")}}function nj(t){const e="</body>";const n="</html>";const 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):"")}class ij extends eu{static get pluginName(){return"PasteFromOffice"}static get requires(){return[UE]}init(){const t=this.editor;const e=t.editing.view.document;const n=[];n.push(new YV(e));n.push(new OV(e));t.plugins.get("ClipboardPipeline").on("inputTransformation",((i,o)=>{if(o._isTransformedWithPasteFromOffice){return}const r=t.model.document.selection.getFirstPosition().parent;if(r.is("element","codeBlock")){return}const s=o.dataTransfer.getData("text/html");const a=n.find((t=>t.isActive(s)));if(a){o._parsedData=XV(s,e.stylesProcessor);a.execute(o);o._isTransformedWithPasteFromOffice=true}}),{priority:"high"})}}const oj='$${Delta.CKEditor.Icon[63]}$$';const rj="removeFormat";class sj extends eu{static get pluginName(){return"RemoveFormatUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(rj,(n=>{const i=t.commands.get(rj);const o=new kd(n);o.set({label:e("Remove Format"),icon:oj,tooltip:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(rj);t.editing.view.focus()}));return o}))}}class aj extends iu{refresh(){const t=this.editor.model;this.isEnabled=!!dc(this._getFormattingItems(t.document.selection,t.schema))}execute(){const t=this.editor.model;const e=t.schema;t.change((n=>{for(const i of this._getFormattingItems(t.document.selection,e)){if(i.is("selection")){for(const t of this._getFormattingAttributes(i,e)){n.removeSelectionAttribute(t)}}else{const t=n.createRangeOn(i);for(const o of this._getFormattingAttributes(i,e)){n.removeAttribute(o,t)}}}}))}*_getFormattingItems(t,e){const n=t=>!!dc(this._getFormattingAttributes(t,e));for(const i of t.getRanges()){for(const t of i.getItems()){if(!e.isBlock(t)&&n(t)){yield t}}}for(const e of t.getSelectedBlocks()){if(n(e)){yield e}}if(n(t)){yield t}}*_getFormattingAttributes(t,e){for(const[n]of t.getAttributes()){const t=e.getAttributeProperties(n);if(t&&t.isFormatting){yield n}}}}class lj extends eu{static get pluginName(){return"RemoveFormatEditing"}init(){const t=this.editor;t.commands.add("removeFormat",new aj(t))}}class cj extends eu{static get requires(){return[lj,sj]}static get pluginName(){return"RemoveFormat"}}class dj extends wy{constructor(t,e){super(t);const n=t.t;this.set("class","ck-special-characters-navigation");this.groupDropdownView=this._createGroupDropdown(e);this.groupDropdownView.panelPosition=t.uiLanguageDirection==="rtl"?"se":"sw";this.label=n("Special characters");this.children.add(this.groupDropdownView)}get currentGroupName(){return this.groupDropdownView.value}focus(){this.groupDropdownView.focus()}_createGroupDropdown(t){const e=this.locale;const n=e.t;const i=yv(e);const o=this._getCharacterGroupListItemDefinitions(i,t);i.set("value",o.first.model.name);i.buttonView.bind("label").to(i,"value",(e=>t.get(e)));i.buttonView.set({isOn:false,withText:true,tooltip:n("Character categories"),class:["ck-dropdown__button_label-width_auto"]});i.on("execute",(t=>{i.value=t.source.name}));i.delegate("execute").to(this);Dv(i,o);return i}_getCharacterGroupListItemDefinitions(t,e){const n=new cc;for(const[i,o]of e){const e={type:"button",model:new Ry({name:i,label:o,withText:true})};e.model.bind("isOn").to(t,"value",(t=>t===e.model.name));n.add(e)}return n}}var uj=n(4046);var hj={injectType:"singletonStyleTag",attributes:{"data-cke":true}};hj.insert="head";hj.singleton=true;var gj=Sc()(uj.Z,hj);const mj=uj.Z.locals||{};class fj extends Lc{constructor(t){super(t);this.tiles=this.createCollection();this.setTemplate({tag:"div",children:[{tag:"div",attributes:{class:["ck","ck-character-grid__tiles"]},children:this.tiles}],attributes:{class:["ck","ck-character-grid"]}});this.focusTracker=new uc;this.keystrokes=new hc;r({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.tiles,numberOfColumns:()=>il.window.getComputedStyle(this.element.firstChild).getPropertyValue("grid-template-columns").split(" ").length,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}createTile(t,e){const n=new kd(this.locale);n.set({label:t,withText:true,class:"ck-character-grid__tile"});n.extendTemplate({attributes:{title:e},on:{mouseover:n.bindTemplate.to("mouseover"),focus:n.bindTemplate.to("focus")}});n.on("mouseover",(()=>{this.fire("tileHover",{name:e,character:t})}));n.on("focus",(()=>{this.fire("tileFocus",{name:e,character:t})}));n.on("execute",(()=>{this.fire("execute",{name:e,character:t})}));return n}render(){super.render();for(const t of this.tiles){this.focusTracker.add(t.element)}this.tiles.on("change",((t,{added:e,removed:n})=>{if(e.length>0){for(const t of e){this.focusTracker.add(t.element)}}if(n.length>0){for(const t of n){this.focusTracker.remove(t.element)}}}));this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.keystrokes.destroy()}focus(){this.tiles.get(0).focus()}}var pj=n(4779);var bj={injectType:"singletonStyleTag",attributes:{"data-cke":true}};bj.insert="head";bj.singleton=true;var kj=Sc()(pj.Z,bj);const wj=pj.Z.locals||{};class Aj extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.set("character",null);this.set("name",null);this.bind("code").to(this,"character",Cj);this.setTemplate({tag:"div",children:[{tag:"span",attributes:{class:["ck-character-info__name"]},children:[{text:e.to("name",(t=>t?t:"​"))}]},{tag:"span",attributes:{class:["ck-character-info__code"]},children:[{text:e.to("code")}]}],attributes:{class:["ck","ck-character-info"]}})}}function Cj(t){if(t===null){return""}const e=t.codePointAt(0).toString(16);return"U+"+("0000"+e).slice(-4)}class _j extends Lc{constructor(t,e,n,i){super(t);this.items=this.createCollection();this.focusTracker=new uc;this.keystrokes=new hc;this._focusCycler=new Yd({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.navigationView=e;this.gridView=n;this.infoView=i;this.setTemplate({tag:"div",children:[this.navigationView,this.gridView,this.infoView],attributes:{tabindex:"-1"}});this.items.add(this.navigationView.groupDropdownView.buttonView);this.items.add(this.gridView)}render(){super.render();this.focusTracker.add(this.navigationView.groupDropdownView.buttonView.element);this.focusTracker.add(this.gridView.element);this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this.navigationView.focus()}}const vj='$${Delta.CKEditor.Icon[64]}$$';var yj=n(8170);var xj={injectType:"singletonStyleTag",attributes:{"data-cke":true}};xj.insert="head";xj.singleton=true;var Ej=Sc()(yj.Z,xj);const Dj=yj.Z.locals||{};const Sj="All";class Tj extends eu{static get requires(){return[rE]}static get pluginName(){return"SpecialCharacters"}constructor(t){super(t);const e=t.t;this._characters=new Map;this._groups=new Map;this._allSpecialCharactersGroupLabel=e("All")}init(){const t=this.editor;const e=t.t;const n=t.commands.get("input");t.ui.componentFactory.add("specialCharacters",(i=>{const o=yv(i);let r;o.buttonView.set({label:e("Special characters"),icon:vj,tooltip:true});o.bind("isEnabled").to(n);o.on("execute",((e,n)=>{t.execute("insertText",{text:n.character});t.editing.view.focus()}));o.on("change:isOpen",(()=>{if(!r){r=this._createDropdownPanelContent(i,o);const t=new _j(i,r.navigationView,r.gridView,r.infoView);o.panelView.children.add(t)}r.infoView.set({character:null,name:null})}));return o}))}addItems(t,e,n={label:t}){if(t===Sj){throw new z("special-character-invalid-group-name",null)}const i=this._getGroup(t,n.label);for(const t of e){i.items.add(t.title);this._characters.set(t.title,t.character)}}getGroups(){const t=Array.from(this._groups.keys());const e=this.editor.config.get("specialCharacters.order")||[];const n=e.find((e=>!t.includes(e)));if(n){throw new z("special-character-invalid-order-group-name",null,{invalidGroup:n})}return new Set([...e,...t])}getCharactersForGroup(t){if(t===Sj){return new Set(this._characters.keys())}const e=this._groups.get(t);if(e){return e.items}}getCharacter(t){return this._characters.get(t)}_getGroup(t,e){if(!this._groups.has(t)){this._groups.set(t,{items:new Set,label:e})}return this._groups.get(t)}_updateGrid(t,e){e.tiles.clear();const n=this.getCharactersForGroup(t);for(const t of n){const n=this.getCharacter(t);e.tiles.add(e.createTile(n,t))}}_createDropdownPanelContent(t,e){const n=new Map([[Sj,this._allSpecialCharactersGroupLabel],...Array.from(this.getGroups()).map((t=>[t,this._groups.get(t).label]))]);const i=new dj(t,n);const o=new fj(t);const r=new Aj(t);o.delegate("execute").to(e);o.on("tileHover",((t,e)=>{r.set(e)}));o.on("tileFocus",((t,e)=>{r.set(e)}));i.on("execute",(()=>{this._updateGrid(i.currentGroupName,o)}));this._updateGrid(i.currentGroupName,o);return{navigationView:i,gridView:o,infoView:r}}}class Ij extends eu{static get pluginName(){return"SpecialCharactersArrows"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Arrows",[{title:e("leftwards simple arrow"),character:"←"},{title:e("rightwards simple arrow"),character:"→"},{title:e("upwards simple arrow"),character:"↑"},{title:e("downwards simple arrow"),character:"↓"},{title:e("leftwards double arrow"),character:"⇐"},{title:e("rightwards double arrow"),character:"⇒"},{title:e("upwards double arrow"),character:"⇑"},{title:e("downwards double arrow"),character:"⇓"},{title:e("leftwards dashed arrow"),character:"⇠"},{title:e("rightwards dashed arrow"),character:"⇢"},{title:e("upwards dashed arrow"),character:"⇡"},{title:e("downwards dashed arrow"),character:"⇣"},{title:e("leftwards arrow to bar"),character:"⇤"},{title:e("rightwards arrow to bar"),character:"⇥"},{title:e("upwards arrow to bar"),character:"⤒"},{title:e("downwards arrow to bar"),character:"⤓"},{title:e("up down arrow with base"),character:"↨"},{title:e("back with leftwards arrow above"),character:"🔙"},{title:e("end with leftwards arrow above"),character:"🔚"},{title:e("on with exclamation mark with left right arrow above"),character:"🔛"},{title:e("soon with rightwards arrow above"),character:"🔜"},{title:e("top with upwards arrow above"),character:"🔝"}],{label:e("Arrows")})}}class Mj extends eu{static get pluginName(){return"SpecialCharactersCurrency"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Currency",[{character:"$",title:e("Dollar sign")},{character:"€",title:e("Euro sign")},{character:"¥",title:e("Yen sign")},{character:"£",title:e("Pound sign")},{character:"¢",title:e("Cent sign")},{character:"₠",title:e("Euro-currency sign")},{character:"₡",title:e("Colon sign")},{character:"₢",title:e("Cruzeiro sign")},{character:"₣",title:e("French franc sign")},{character:"₤",title:e("Lira sign")},{character:"¤",title:e("Currency sign")},{character:"₿",title:e("Bitcoin sign")},{character:"₥",title:e("Mill sign")},{character:"₦",title:e("Naira sign")},{character:"₧",title:e("Peseta sign")},{character:"₨",title:e("Rupee sign")},{character:"₩",title:e("Won sign")},{character:"₪",title:e("New sheqel sign")},{character:"₫",title:e("Dong sign")},{character:"₭",title:e("Kip sign")},{character:"₮",title:e("Tugrik sign")},{character:"₯",title:e("Drachma sign")},{character:"₰",title:e("German penny sign")},{character:"₱",title:e("Peso sign")},{character:"₲",title:e("Guarani sign")},{character:"₳",title:e("Austral sign")},{character:"₴",title:e("Hryvnia sign")},{character:"₵",title:e("Cedi sign")},{character:"₶",title:e("Livre tournois sign")},{character:"₷",title:e("Spesmilo sign")},{character:"₸",title:e("Tenge sign")},{character:"₹",title:e("Indian rupee sign")},{character:"₺",title:e("Turkish lira sign")},{character:"₻",title:e("Nordic mark sign")},{character:"₼",title:e("Manat sign")},{character:"₽",title:e("Ruble sign")}],{label:e("Currency")})}}class Bj extends eu{static get pluginName(){return"SpecialCharactersMathematical"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Mathematical",[{character:"<",title:e("Less-than sign")},{character:">",title:e("Greater-than sign")},{character:"≤",title:e("Less-than or equal to")},{character:"≥",title:e("Greater-than or equal to")},{character:"–",title:e("En dash")},{character:"—",title:e("Em dash")},{character:"¯",title:e("Macron")},{character:"‾",title:e("Overline")},{character:"°",title:e("Degree sign")},{character:"−",title:e("Minus sign")},{character:"±",title:e("Plus-minus sign")},{character:"÷",title:e("Division sign")},{character:"⁄",title:e("Fraction slash")},{character:"×",title:e("Multiplication sign")},{character:"ƒ",title:e("Latin small letter f with hook")},{character:"∫",title:e("Integral")},{character:"∑",title:e("N-ary summation")},{character:"∞",title:e("Infinity")},{character:"√",title:e("Square root")},{character:"∼",title:e("Tilde operator")},{character:"≅",title:e("Approximately equal to")},{character:"≈",title:e("Almost equal to")},{character:"≠",title:e("Not equal to")},{character:"≡",title:e("Identical to")},{character:"∈",title:e("Element of")},{character:"∉",title:e("Not an element of")},{character:"∋",title:e("Contains as member")},{character:"∏",title:e("N-ary product")},{character:"∧",title:e("Logical and")},{character:"∨",title:e("Logical or")},{character:"¬",title:e("Not sign")},{character:"∩",title:e("Intersection")},{character:"∪",title:e("Union")},{character:"∂",title:e("Partial differential")},{character:"∀",title:e("For all")},{character:"∃",title:e("There exists")},{character:"∅",title:e("Empty set")},{character:"∇",title:e("Nabla")},{character:"∗",title:e("Asterisk operator")},{character:"∝",title:e("Proportional to")},{character:"∠",title:e("Angle")},{character:"¼",title:e("Vulgar fraction one quarter")},{character:"½",title:e("Vulgar fraction one half")},{character:"¾",title:e("Vulgar fraction three quarters")}],{label:e("Mathematical")})}}class Lj extends eu{static get pluginName(){return"SpecialCharactersLatin"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Latin",[{character:"Ā",title:e("Latin capital letter a with macron")},{character:"ā",title:e("Latin small letter a with macron")},{character:"Ă",title:e("Latin capital letter a with breve")},{character:"ă",title:e("Latin small letter a with breve")},{character:"Ą",title:e("Latin capital letter a with ogonek")},{character:"ą",title:e("Latin small letter a with ogonek")},{character:"Ć",title:e("Latin capital letter c with acute")},{character:"ć",title:e("Latin small letter c with acute")},{character:"Ĉ",title:e("Latin capital letter c with circumflex")},{character:"ĉ",title:e("Latin small letter c with circumflex")},{character:"Ċ",title:e("Latin capital letter c with dot above")},{character:"ċ",title:e("Latin small letter c with dot above")},{character:"Č",title:e("Latin capital letter c with caron")},{character:"č",title:e("Latin small letter c with caron")},{character:"Ď",title:e("Latin capital letter d with caron")},{character:"ď",title:e("Latin small letter d with caron")},{character:"Đ",title:e("Latin capital letter d with stroke")},{character:"đ",title:e("Latin small letter d with stroke")},{character:"Ē",title:e("Latin capital letter e with macron")},{character:"ē",title:e("Latin small letter e with macron")},{character:"Ĕ",title:e("Latin capital letter e with breve")},{character:"ĕ",title:e("Latin small letter e with breve")},{character:"Ė",title:e("Latin capital letter e with dot above")},{character:"ė",title:e("Latin small letter e with dot above")},{character:"Ę",title:e("Latin capital letter e with ogonek")},{character:"ę",title:e("Latin small letter e with ogonek")},{character:"Ě",title:e("Latin capital letter e with caron")},{character:"ě",title:e("Latin small letter e with caron")},{character:"Ĝ",title:e("Latin capital letter g with circumflex")},{character:"ĝ",title:e("Latin small letter g with circumflex")},{character:"Ğ",title:e("Latin capital letter g with breve")},{character:"ğ",title:e("Latin small letter g with breve")},{character:"Ġ",title:e("Latin capital letter g with dot above")},{character:"ġ",title:e("Latin small letter g with dot above")},{character:"Ģ",title:e("Latin capital letter g with cedilla")},{character:"ģ",title:e("Latin small letter g with cedilla")},{character:"Ĥ",title:e("Latin capital letter h with circumflex")},{character:"ĥ",title:e("Latin small letter h with circumflex")},{character:"Ħ",title:e("Latin capital letter h with stroke")},{character:"ħ",title:e("Latin small letter h with stroke")},{character:"Ĩ",title:e("Latin capital letter i with tilde")},{character:"ĩ",title:e("Latin small letter i with tilde")},{character:"Ī",title:e("Latin capital letter i with macron")},{character:"ī",title:e("Latin small letter i with macron")},{character:"Ĭ",title:e("Latin capital letter i with breve")},{character:"ĭ",title:e("Latin small letter i with breve")},{character:"Į",title:e("Latin capital letter i with ogonek")},{character:"į",title:e("Latin small letter i with ogonek")},{character:"İ",title:e("Latin capital letter i with dot above")},{character:"ı",title:e("Latin small letter dotless i")},{character:"IJ",title:e("Latin capital ligature ij")},{character:"ij",title:e("Latin small ligature ij")},{character:"Ĵ",title:e("Latin capital letter j with circumflex")},{character:"ĵ",title:e("Latin small letter j with circumflex")},{character:"Ķ",title:e("Latin capital letter k with cedilla")},{character:"ķ",title:e("Latin small letter k with cedilla")},{character:"ĸ",title:e("Latin small letter kra")},{character:"Ĺ",title:e("Latin capital letter l with acute")},{character:"ĺ",title:e("Latin small letter l with acute")},{character:"Ļ",title:e("Latin capital letter l with cedilla")},{character:"ļ",title:e("Latin small letter l with cedilla")},{character:"Ľ",title:e("Latin capital letter l with caron")},{character:"ľ",title:e("Latin small letter l with caron")},{character:"Ŀ",title:e("Latin capital letter l with middle dot")},{character:"ŀ",title:e("Latin small letter l with middle dot")},{character:"Ł",title:e("Latin capital letter l with stroke")},{character:"ł",title:e("Latin small letter l with stroke")},{character:"Ń",title:e("Latin capital letter n with acute")},{character:"ń",title:e("Latin small letter n with acute")},{character:"Ņ",title:e("Latin capital letter n with cedilla")},{character:"ņ",title:e("Latin small letter n with cedilla")},{character:"Ň",title:e("Latin capital letter n with caron")},{character:"ň",title:e("Latin small letter n with caron")},{character:"ʼn",title:e("Latin small letter n preceded by apostrophe")},{character:"Ŋ",title:e("Latin capital letter eng")},{character:"ŋ",title:e("Latin small letter eng")},{character:"Ō",title:e("Latin capital letter o with macron")},{character:"ō",title:e("Latin small letter o with macron")},{character:"Ŏ",title:e("Latin capital letter o with breve")},{character:"ŏ",title:e("Latin small letter o with breve")},{character:"Ő",title:e("Latin capital letter o with double acute")},{character:"ő",title:e("Latin small letter o with double acute")},{character:"Œ",title:e("Latin capital ligature oe")},{character:"œ",title:e("Latin small ligature oe")},{character:"Ŕ",title:e("Latin capital letter r with acute")},{character:"ŕ",title:e("Latin small letter r with acute")},{character:"Ŗ",title:e("Latin capital letter r with cedilla")},{character:"ŗ",title:e("Latin small letter r with cedilla")},{character:"Ř",title:e("Latin capital letter r with caron")},{character:"ř",title:e("Latin small letter r with caron")},{character:"Ś",title:e("Latin capital letter s with acute")},{character:"ś",title:e("Latin small letter s with acute")},{character:"Ŝ",title:e("Latin capital letter s with circumflex")},{character:"ŝ",title:e("Latin small letter s with circumflex")},{character:"Ş",title:e("Latin capital letter s with cedilla")},{character:"ş",title:e("Latin small letter s with cedilla")},{character:"Š",title:e("Latin capital letter s with caron")},{character:"š",title:e("Latin small letter s with caron")},{character:"Ţ",title:e("Latin capital letter t with cedilla")},{character:"ţ",title:e("Latin small letter t with cedilla")},{character:"Ť",title:e("Latin capital letter t with caron")},{character:"ť",title:e("Latin small letter t with caron")},{character:"Ŧ",title:e("Latin capital letter t with stroke")},{character:"ŧ",title:e("Latin small letter t with stroke")},{character:"Ũ",title:e("Latin capital letter u with tilde")},{character:"ũ",title:e("Latin small letter u with tilde")},{character:"Ū",title:e("Latin capital letter u with macron")},{character:"ū",title:e("Latin small letter u with macron")},{character:"Ŭ",title:e("Latin capital letter u with breve")},{character:"ŭ",title:e("Latin small letter u with breve")},{character:"Ů",title:e("Latin capital letter u with ring above")},{character:"ů",title:e("Latin small letter u with ring above")},{character:"Ű",title:e("Latin capital letter u with double acute")},{character:"ű",title:e("Latin small letter u with double acute")},{character:"Ų",title:e("Latin capital letter u with ogonek")},{character:"ų",title:e("Latin small letter u with ogonek")},{character:"Ŵ",title:e("Latin capital letter w with circumflex")},{character:"ŵ",title:e("Latin small letter w with circumflex")},{character:"Ŷ",title:e("Latin capital letter y with circumflex")},{character:"ŷ",title:e("Latin small letter y with circumflex")},{character:"Ÿ",title:e("Latin capital letter y with diaeresis")},{character:"Ź",title:e("Latin capital letter z with acute")},{character:"ź",title:e("Latin small letter z with acute")},{character:"Ż",title:e("Latin capital letter z with dot above")},{character:"ż",title:e("Latin small letter z with dot above")},{character:"Ž",title:e("Latin capital letter z with caron")},{character:"ž",title:e("Latin small letter z with caron")},{character:"ſ",title:e("Latin small letter long s")}],{label:e("Latin")})}}class Nj extends eu{static get pluginName(){return"SpecialCharactersText"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Text",[{character:"‹",title:e("Single left-pointing angle quotation mark")},{character:"›",title:e("Single right-pointing angle quotation mark")},{character:"«",title:e("Left-pointing double angle quotation mark")},{character:"»",title:e("Right-pointing double angle quotation mark")},{character:"‘",title:e("Left single quotation mark")},{character:"’",title:e("Right single quotation mark")},{character:"“",title:e("Left double quotation mark")},{character:"”",title:e("Right double quotation mark")},{character:"‚",title:e("Single low-9 quotation mark")},{character:"„",title:e("Double low-9 quotation mark")},{character:"¡",title:e("Inverted exclamation mark")},{character:"¿",title:e("Inverted question mark")},{character:"‥",title:e("Two dot leader")},{character:"…",title:e("Horizontal ellipsis")},{character:"‡",title:e("Double dagger")},{character:"‰",title:e("Per mille sign")},{character:"‱",title:e("Per ten thousand sign")},{character:"‼",title:e("Double exclamation mark")},{character:"⁈",title:e("Question exclamation mark")},{character:"⁉",title:e("Exclamation question mark")},{character:"⁇",title:e("Double question mark")},{character:"©",title:e("Copyright sign")},{character:"®",title:e("Registered sign")},{character:"™",title:e("Trade mark sign")},{character:"§",title:e("Section sign")},{character:"¶",title:e("Paragraph sign")},{character:"⁋",title:e("Reversed paragraph sign")}],{label:e("Text")})}}class zj extends eu{static get requires(){return[Mj,Nj,Bj,Ij,Lj]}}const Pj="strikethrough";class Oj extends eu{static get pluginName(){return"StrikethroughEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:Pj});t.model.schema.setAttributeProperties(Pj,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:Pj,view:"s",upcastAlso:["del","strike",{styles:{"text-decoration":"line-through"}}]});t.commands.add(Pj,new zI(t,Pj));t.keystrokes.set("CTRL+SHIFT+X","strikethrough")}}const Rj='$${Delta.CKEditor.Icon[65]}$$';const Vj="strikethrough";class jj extends eu{static get pluginName(){return"StrikethroughUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(Vj,(n=>{const i=t.commands.get(Vj);const o=new kd(n);o.set({label:e("Strikethrough"),icon:Rj,keystroke:"CTRL+SHIFT+X",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(Vj);t.editing.view.focus()}));return o}))}}class Fj extends eu{static get requires(){return[Oj,jj]}static get pluginName(){return"Strikethrough"}}const Hj=["caption","colgroup","dd","dt","figcaption","legend","li","optgroup","option","rp","rt","summary","tbody","td","tfoot","th","thead","tr"];class Uj extends kd{constructor(t,e){super(t);this.styleDefinition=e;this.previewView=this._createPreview();this.set({label:e.name,class:"ck-style-grid__button",withText:true});this.extendTemplate({attributes:{role:"option"}});this.children.add(this.previewView,0)}_createPreview(){const{element:t,classes:e}=this.styleDefinition;const n=new Lc(this.locale);n.setTemplate({tag:"div",attributes:{class:["ck","ck-reset_all-excluded","ck-style-grid__button__preview","ck-content"],"aria-hidden":"true"},children:[{tag:this._isPreviewable(t)?t:"div",attributes:{class:e},children:[{text:"AaBbCcDdEeFfGgHhIiJj"}]}]});return n}_isPreviewable(t){return!Hj.includes(t)}}var Wj=n(3875);var qj={injectType:"singletonStyleTag",attributes:{"data-cke":true}};qj.insert="head";qj.singleton=true;var Gj=Sc()(Wj.Z,qj);const $j=Wj.Z.locals||{};class Kj extends Lc{constructor(t,e){super(t);this.focusTracker=new uc;this.keystrokes=new hc;this.set("activeStyles",[]);this.set("enabledStyles",[]);this.children=this.createCollection();this.children.delegate("execute").to(this);for(const n of e){const e=new Uj(t,n);this.children.add(e)}this.on("change:activeStyles",(()=>{for(const t of this.children){t.isOn=this.activeStyles.includes(t.styleDefinition.name)}}));this.on("change:enabledStyles",(()=>{for(const t of this.children){t.isEnabled=this.enabledStyles.includes(t.styleDefinition.name)}}));this.setTemplate({tag:"div",attributes:{class:["ck","ck-style-grid"],role:"listbox"},children:this.children})}render(){super.render();for(const t of this.children){this.focusTracker.add(t.element)}r({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.children,numberOfColumns:3,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection});this.keystrokes.listenTo(this.element)}focus(){this.children.first.focus()}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}}var Yj=n(9545);var Zj={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Zj.insert="head";Zj.singleton=true;var Qj=Sc()(Yj.Z,Zj);const Jj=Yj.Z.locals||{};class Xj extends Lc{constructor(t,e,n){super(t);this.labelView=new uy(t);this.labelView.text=e;this.gridView=new Kj(t,n);this.setTemplate({tag:"div",attributes:{class:["ck","ck-style-panel__style-group"],role:"group","aria-labelledby":this.labelView.id},children:[this.labelView,this.gridView]})}}var tF=n(6746);var eF={injectType:"singletonStyleTag",attributes:{"data-cke":true}};eF.insert="head";eF.singleton=true;var nF=Sc()(tF.Z,eF);const iF=tF.Z.locals||{};class oF extends Lc{constructor(t,e){super(t);const n=t.t;this.focusTracker=new uc;this.keystrokes=new hc;this.children=this.createCollection();this.blockStylesGroupView=new Xj(t,n("Block styles"),e.block);this.inlineStylesGroupView=new Xj(t,n("Text styles"),e.inline);this.set("activeStyles",[]);this.set("enabledStyles",[]);this._focusables=new xc;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:["shift + tab"],focusNext:["tab"]}});if(e.block.length){this.children.add(this.blockStylesGroupView)}if(e.inline.length){this.children.add(this.inlineStylesGroupView)}this.blockStylesGroupView.gridView.delegate("execute").to(this);this.inlineStylesGroupView.gridView.delegate("execute").to(this);this.blockStylesGroupView.gridView.bind("activeStyles","enabledStyles").to(this);this.inlineStylesGroupView.gridView.bind("activeStyles","enabledStyles").to(this);this.setTemplate({tag:"div",attributes:{class:["ck","ck-style-panel"]},children:this.children})}render(){super.render();this._focusables.add(this.blockStylesGroupView.gridView);this._focusables.add(this.inlineStylesGroupView.gridView);this.focusTracker.add(this.blockStylesGroupView.gridView.element);this.focusTracker.add(this.inlineStylesGroupView.gridView.element);this.keystrokes.listenTo(this.element)}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}}function rF(t,e=[]){const n={block:[],inline:[]};for(const i of e){const e=[];const o=[];for(const n of t.getDefinitionsForView(i.element)){if(n.isBlock){e.push(n.model)}else{o.push(n.model)}}if(e.length){n.block.push({...i,modelElements:e,isBlock:true})}else{n.inline.push({...i,ghsAttributes:o})}}return n}var sF=n(2844);var aF={injectType:"singletonStyleTag",attributes:{"data-cke":true}};aF.insert="head";aF.singleton=true;var lF=Sc()(sF.Z,aF);const cF=sF.Z.locals||{};class dF extends eu{static get pluginName(){return"StyleUI"}init(){const t=this.editor;const e=t.plugins.get("DataSchema");const n=rF(e,t.config.get("style.definitions"));t.ui.componentFactory.add("style",(e=>{const i=e.t;const o=yv(e);const r=t.commands.get("style");o.once("change:isOpen",(()=>{const t=new oF(e,n);o.panelView.children.add(t);t.delegate("execute").to(o);t.bind("activeStyles").to(r,"value");t.bind("enabledStyles").to(r,"enabledStyles")}));o.bind("isEnabled").to(r);o.buttonView.withText=true;o.buttonView.bind("label").to(r,"value",(t=>{if(t.length>1){return i("Multiple styles")}else if(t.length===1){return t[0]}else{return i("Styles")}}));o.bind("class").to(r,"value",(t=>{const e=["ck-style-dropdown"];if(t.length>1){e.push("ck-style-dropdown_multiple-active")}return e.join(" ")}));o.on("execute",(e=>{t.execute("style",{styleName:e.source.styleDefinition.name});t.editing.view.focus()}));return o}))}}class uF extends iu{constructor(t,e){super(t);this.set("value",[]);this.set("enabledStyles",[]);this._styleDefinitions=e}refresh(){const t=this.editor.model;const e=t.document.selection;const n=new Set;const i=new Set;for(const o of this._styleDefinitions.inline){for(const r of o.ghsAttributes){if(t.schema.checkAttributeInSelection(e,r)){i.add(o.name)}const s=this._getValueFromFirstAllowedNode(r);if(hF(s,o.classes)){n.add(o.name)}}}const o=dc(e.getSelectedBlocks());if(o){const e=o.getAncestors({includeSelf:true,parentFirst:true});for(const o of e){if(t.schema.isLimit(o)){break}if(!t.schema.checkAttribute(o,"htmlAttributes")){continue}for(const t of this._styleDefinitions.block){if(!t.modelElements.includes(o.name)){continue}i.add(t.name);const e=o.getAttribute("htmlAttributes");if(hF(e,t.classes)){n.add(t.name)}}}}this.enabledStyles=Array.from(i).sort();this.isEnabled=this.enabledStyles.length>0;this.value=this.isEnabled?Array.from(n).sort():[]}execute({styleName:t,forceValue:e}){if(!this.enabledStyles.includes(t)){P("style-command-executed-with-incorrect-style-name");return}const n=this.editor.model;const i=n.document.selection;const o=this.editor.plugins.get("GeneralHtmlSupport");const r=[...this._styleDefinitions.inline,...this._styleDefinitions.block].find((({name:e})=>e==t));const s=e===undefined?!this.value.includes(r.name):e;n.change((()=>{let t;if(r.isBlock){t=gF(i.getSelectedBlocks(),r.modelElements,n.schema)}else{t=[i]}for(const e of t){if(s){o.addModelHtmlClass(r.element,r.classes,e)}else{o.removeModelHtmlClass(r.element,r.classes,e)}}}))}_getValueFromFirstAllowedNode(t){const e=this.editor.model;const n=e.schema;const i=e.document.selection;if(i.isCollapsed){return i.getAttribute(t)}for(const e of i.getRanges()){for(const i of e.getItems()){if(n.checkAttribute(i,t)){return i.getAttribute(t)}}}return null}}function hF(t,e){if(!t||!t.classes){return false}return e.every((e=>t.classes.includes(e)))}function gF(t,e,n){const i=new Set;for(const o of t){const t=o.getAncestors({includeSelf:true,parentFirst:true});for(const o of t){if(n.isLimit(o)){break}if(e.includes(o.name)){i.add(o);break}}}return i}class mF extends eu{static get pluginName(){return"StyleEditing"}static get requires(){return["GeneralHtmlSupport"]}init(){const t=this.editor;const e=t.plugins.get("DataSchema");const n=rF(e,t.config.get("style.definitions"));t.commands.add("style",new uF(t,n));this._configureGHSDataFilter(n)}_configureGHSDataFilter({block:t,inline:e}){const n=this.editor.plugins.get("DataFilter");n.loadAllowedConfig(t.map(fF));n.loadAllowedConfig(e.map(fF))}}function fF({element:t,classes:e}){return{name:t,classes:e}}class pF extends eu{static get pluginName(){return"Style"}static get requires(){return[mF,dF]}}const bF="subscript";class kF extends eu{static get pluginName(){return"SubscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:bF});t.model.schema.setAttributeProperties(bF,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:bF,view:"sub",upcastAlso:[{styles:{"vertical-align":"sub"}}]});t.commands.add(bF,new zI(t,bF))}}const wF='$${Delta.CKEditor.Icon[66]}$$';const AF="subscript";class CF extends eu{static get pluginName(){return"SubscriptUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(AF,(n=>{const i=t.commands.get(AF);const o=new kd(n);o.set({label:e("Subscript"),icon:wF,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(AF);t.editing.view.focus()}));return o}))}}class _F extends eu{static get requires(){return[kF,CF]}static get pluginName(){return"Subscript"}}const vF="superscript";class yF extends eu{static get pluginName(){return"SuperscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:vF});t.model.schema.setAttributeProperties(vF,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:vF,view:"sup",upcastAlso:[{styles:{"vertical-align":"super"}}]});t.commands.add(vF,new zI(t,vF))}}const xF='$${Delta.CKEditor.Icon[67]}$$';const EF="superscript";class DF extends eu{static get pluginName(){return"SuperscriptUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(EF,(n=>{const i=t.commands.get(EF);const o=new kd(n);o.set({label:e("Superscript"),icon:xF,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(EF);t.editing.view.focus()}));return o}))}}class SF extends eu{static get requires(){return[yF,DF]}static get pluginName(){return"Superscript"}}function TF(t,e){const{viewElement:n,defaultValue:i,modelAttribute:o,styleName:r,reduceBoxSides:s=false,shouldUpcast:a=(()=>true)}=e;t.for("upcast").attributeToAttribute({view:{name:n,styles:{[r]:/[\s\S]+/}},model:{key:o,value:t=>{if(!a(t)){return}const e=t.getNormalizedStyle(r);const n=s?LF(e):e;if(i!==n){return n}}}})}function IF(t,e,n,i){t.for("upcast").add((t=>t.on("element:"+e,((t,e,o)=>{if(!e.modelRange){return}const r=["border-top-width","border-top-color","border-top-style","border-bottom-width","border-bottom-color","border-bottom-style","border-right-width","border-right-color","border-right-style","border-left-width","border-left-color","border-left-style"].filter((t=>e.viewItem.hasStyle(t)));if(!r.length){return}const s={styles:r};if(!o.consumable.test(e.viewItem,s)){return}const a=[...e.modelRange.getItems({shallow:true})].pop();o.consumable.consume(e.viewItem,s);const l={style:e.viewItem.getNormalizedStyle("border-style"),color:e.viewItem.getNormalizedStyle("border-color"),width:e.viewItem.getNormalizedStyle("border-width")};const c={style:LF(l.style),color:LF(l.color),width:LF(l.width)};if(c.style!==i.style){o.writer.setAttribute(n.style,c.style,a)}if(c.color!==i.color){o.writer.setAttribute(n.color,c.color,a)}if(c.width!==i.width){o.writer.setAttribute(n.width,c.width,a)}}))))}function MF(t,{modelElement:e,modelAttribute:n,styleName:i}){t.for("downcast").attributeToAttribute({model:{name:e,key:n},view:t=>({key:"style",value:{[i]:t}})})}function BF(t,{modelAttribute:e,styleName:n}){t.for("downcast").add((t=>t.on(`attribute:${e}:table`,((t,e,i)=>{const{item:o,attributeNewValue:r}=e;const{mapper:s,writer:a}=i;if(!i.consumable.consume(e.item,t.name)){return}const l=[...s.toViewElement(o).getChildren()].find((t=>t.is("element","table")));if(r){a.setStyle(n,r,l)}else{a.removeStyle(n,l)}}))))}function LF(t){if(!t){return}const e=["top","right","bottom","left"].map((e=>t[e])).reduce(((t,e)=>t==e?t:null));return e||t}function NF(t,e,n,i,o=1){if(e>o){i.setAttribute(t,e,n)}else{i.removeAttribute(t,n)}}function zF(t,e,n={}){const i=t.createElement("tableCell",n);t.insertElement("paragraph",i);t.insert(i,e);return i}function PF(t,e){const n=e.parent.parent;const i=parseInt(n.getAttribute("headingColumns")||0);const{column:o}=t.getCellLocation(e);return!!i&&o<i}function OF(t,e,n){const{modelAttribute:i}=n;t.extend("tableCell",{allowAttributes:[i]});TF(e,{viewElement:/^(td|th)$/,...n});MF(e,{modelElement:"tableCell",...n})}function RF(){return t=>{t.on("element:figure",((t,e,n)=>{if(!n.consumable.test(e.viewItem,{name:true,classes:"table"})){return}const i=HF(e.viewItem);if(!i||!n.consumable.test(i,{name:true})){return}n.consumable.consume(e.viewItem,{name:true,classes:"table"});const o=n.convertItem(i,e.modelCursor);const r=dc(o.modelRange.getItems());if(!r){n.consumable.revert(e.viewItem,{name:true,classes:"table"});return}n.convertChildren(e.viewItem,n.writer.createPositionAt(r,"end"));n.updateConversionResult(r,e)}))}}function VF(){return t=>{t.on("element:table",((t,e,n)=>{const i=e.viewItem;if(!n.consumable.test(i,{name:true})){return}const{rows:o,headingRows:r,headingColumns:s}=UF(i);const a={};if(s){a.headingColumns=s}if(r){a.headingRows=r}const l=n.writer.createElement("table",a);if(!n.safeInsert(l,e.modelCursor)){return}n.consumable.consume(i,{name:true});o.forEach((t=>n.convertItem(t,n.writer.createPositionAt(l,"end"))));n.convertChildren(i,n.writer.createPositionAt(l,"end"));if(l.isEmpty){const t=n.writer.createElement("tableRow");n.writer.insert(t,n.writer.createPositionAt(l,"end"));zF(n.writer,n.writer.createPositionAt(t,"end"))}n.updateConversionResult(l,e)}))}}function jF(){return t=>{t.on("element:tr",((t,e)=>{if(e.viewItem.isEmpty&&e.modelCursor.index==0){t.stop()}}),{priority:"high"})}}function FF(t){return e=>{e.on(`element:${t}`,((t,e,{writer:n})=>{if(!e.modelRange){return}const i=e.modelRange.start.nodeAfter;const o=n.createPositionAt(i,0);if(e.viewItem.isEmpty){n.insertElement("paragraph",o);return}const r=Array.from(i.getChildren());if(r.every((t=>t.is("element","$marker")))){const t=n.createElement("paragraph");n.insert(t,n.createPositionAt(i,0));for(const e of r){n.move(n.createRangeOn(e),n.createPositionAt(t,"end"))}}}),{priority:"low"})}}function HF(t){for(const e of t.getChildren()){if(e.is("element","table")){return e}}}function UF(t){const e={headingRows:0,headingColumns:0};const n=[];const i=[];let o;for(const r of Array.from(t.getChildren())){if(r.name==="tbody"||r.name==="thead"||r.name==="tfoot"){if(r.name==="thead"&&!o){o=r}const t=Array.from(r.getChildren()).filter((t=>t.is("element","tr")));for(const r of t){if(r.parent.name==="thead"&&r.parent===o){e.headingRows++;n.push(r)}else{i.push(r);const t=WF(r,e,o);if(t>e.headingColumns){e.headingColumns=t}}}}}e.rows=[...n,...i];return e}function WF(t){let e=0;let n=0;const i=Array.from(t.getChildren()).filter((t=>t.name==="th"||t.name==="td"));while(n<i.length&&i[n].name==="th"){const t=i[n];const o=parseInt(t.getAttribute("colspan")||1);e=e+o;n++}return e}class qF{constructor(t,e={}){this._table=t;this._startRow=e.row!==undefined?e.row:e.startRow||0;this._endRow=e.row!==undefined?e.row:e.endRow;this._startColumn=e.column!==undefined?e.column:e.startColumn||0;this._endColumn=e.column!==undefined?e.column:e.endColumn;this._includeAllSlots=!!e.includeAllSlots;this._skipRows=new Set;this._row=0;this._rowIndex=0;this._column=0;this._cellIndex=0;this._spannedCells=new Map;this._nextCellAtColumn=-1}[Symbol.iterator](){return this}next(){const t=this._table.getChild(this._rowIndex);if(!t||this._isOverEndRow()){return{done:true}}if(!t.is("element","tableRow")){this._rowIndex++;return this.next()}if(this._isOverEndColumn()){return this._advanceToNextRow()}let e=null;const n=this._getSpanned();if(n){if(this._includeAllSlots&&!this._shouldSkipSlot()){e=this._formatOutValue(n.cell,n.row,n.column)}}else{const n=t.getChild(this._cellIndex);if(!n){return this._advanceToNextRow()}const i=parseInt(n.getAttribute("colspan")||1);const o=parseInt(n.getAttribute("rowspan")||1);if(i>1||o>1){this._recordSpans(n,o,i)}if(!this._shouldSkipSlot()){e=this._formatOutValue(n)}this._nextCellAtColumn=this._column+i}this._column++;if(this._column==this._nextCellAtColumn){this._cellIndex++}return e||this.next()}skipRow(t){this._skipRows.add(t)}_advanceToNextRow(){this._row++;this._rowIndex++;this._column=0;this._cellIndex=0;this._nextCellAtColumn=-1;return this.next()}_isOverEndRow(){return this._endRow!==undefined&&this._row>this._endRow}_isOverEndColumn(){return this._endColumn!==undefined&&this._column>this._endColumn}_formatOutValue(t,e=this._row,n=this._column){return{done:false,value:new GF(this,t,e,n)}}_shouldSkipSlot(){const t=this._skipRows.has(this._row);const e=this._row<this._startRow;const n=this._column<this._startColumn;const i=this._endColumn!==undefined&&this._column>this._endColumn;return t||e||n||i}_getSpanned(){const t=this._spannedCells.get(this._row);if(!t){return null}return t.get(this._column)||null}_recordSpans(t,e,n){const i={cell:t,row:this._row,column:this._column};for(let t=this._row;t<this._row+e;t++){for(let e=this._column;e<this._column+n;e++){if(t!=this._row||e!=this._column){this._markSpannedCell(t,e,i)}}}}_markSpannedCell(t,e,n){if(!this._spannedCells.has(t)){this._spannedCells.set(t,new Map)}const i=this._spannedCells.get(t);i.set(e,n)}}class GF{constructor(t,e,n,i){this.cell=e;this.row=t._row;this.column=t._column;this.cellAnchorRow=n;this.cellAnchorColumn=i;this._cellIndex=t._cellIndex;this._rowIndex=t._rowIndex;this._table=t._table}get isAnchor(){return this.row===this.cellAnchorRow&&this.column===this.cellAnchorColumn}get cellWidth(){return parseInt(this.cell.getAttribute("colspan")||1)}get cellHeight(){return parseInt(this.cell.getAttribute("rowspan")||1)}get rowIndex(){return this._rowIndex}getPositionBefore(){const t=this._table.root.document.model;return t.createPositionAt(this._table.getChild(this.row),this._cellIndex)}}function $F(t,e={}){return(n,{writer:i})=>{const o=n.getAttribute("headingRows")||0;const r=[];if(o>0){r.push(i.createContainerElement("thead",null,i.createSlot((t=>t.is("element","tableRow")&&t.index<o))))}if(o<t.getRows(n)){r.push(i.createContainerElement("tbody",null,i.createSlot((t=>t.is("element","tableRow")&&t.index>=o))))}const s=i.createContainerElement("figure",{class:"table"},[i.createContainerElement("table",null,r),i.createSlot((t=>!t.is("element","tableRow")))]);return e.asWidget?JF(s,i):s}}function KF(){return(t,{writer:e})=>t.isEmpty?e.createEmptyElement("tr"):e.createContainerElement("tr")}function YF(t={}){return(e,{writer:n})=>{const i=e.parent;const o=i.parent;const r=o.getChildIndex(i);const s=new qF(o,{row:r});const a=o.getAttribute("headingRows")||0;const l=o.getAttribute("headingColumns")||0;for(const i of s){if(i.cell==e){const e=i.row<a||i.column<l;const o=e?"th":"td";return t.asWidget?pD(n.createEditableElement(o),n):n.createContainerElement(o)}}}}function ZF(t={}){return(e,{writer:n})=>{if(!e.parent.is("element","tableCell")){return}if(!QF(e)){return}if(t.asWidget){return n.createContainerElement("span",{class:"ck-table-bogus-paragraph"})}else{const t=n.createContainerElement("p");n.setCustomProperty("dataPipeline:transparentRendering",true,t);return t}}}function QF(t){const e=t.parent;const n=e.childCount==1;return n&&!XF(t)}function JF(t,e){e.setCustomProperty("table",true,t);return dD(t,e,{hasSelectionHandle:true})}function XF(t){return!![...t.getAttributeKeys()].length}class tH extends iu{refresh(){const t=this.editor.model;const e=t.document.selection;const n=t.schema;this.isEnabled=eH(e,n)}execute(t={}){const e=this.editor.model;const n=this.editor.plugins.get("TableUtils");const i=this.editor.config.get("table");const o=i.defaultHeadings.rows;const r=i.defaultHeadings.columns;if(t.headingRows===undefined&&o){t.headingRows=o}if(t.headingColumns===undefined&&r){t.headingColumns=r}e.change((i=>{const o=n.createTable(i,t);e.insertObject(o,null,null,{findOptimalPosition:"auto"});i.setSelection(i.createPositionAt(o.getNodeByPath([0,0,0]),0))}))}}function eH(t,e){const n=t.getFirstPosition().parent;const i=n===n.root?n:n.parent;return e.checkChild(i,"table")}class nH extends iu{constructor(t,e={}){super(t);this.order=e.order||"below"}refresh(){const t=this.editor.model.document.selection;const e=this.editor.plugins.get("TableUtils");const n=!!e.getSelectionAffectedTableCells(t).length;this.isEnabled=n}execute(){const t=this.editor;const e=t.model.document.selection;const n=t.plugins.get("TableUtils");const i=this.order==="above";const o=n.getSelectionAffectedTableCells(e);const r=n.getRowIndexes(o);const s=i?r.first:r.last;const a=o[0].findAncestor("table");n.insertRows(a,{at:i?s:s+1,copyStructureFromAbove:!i})}}class iH extends iu{constructor(t,e={}){super(t);this.order=e.order||"right"}refresh(){const t=this.editor.model.document.selection;const e=this.editor.plugins.get("TableUtils");const n=!!e.getSelectionAffectedTableCells(t).length;this.isEnabled=n}execute(){const t=this.editor;const e=t.model.document.selection;const n=t.plugins.get("TableUtils");const i=this.order==="left";const o=n.getSelectionAffectedTableCells(e);const r=n.getColumnIndexes(o);const s=i?r.first:r.last;const a=o[0].findAncestor("table");n.insertColumns(a,{columns:1,at:i?s:s+1})}}class oH extends iu{constructor(t,e={}){super(t);this.direction=e.direction||"horizontally"}refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);this.isEnabled=e.length===1}execute(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection)[0];const n=this.direction==="horizontally";if(n){t.splitCellHorizontally(e,2)}else{t.splitCellVertically(e,2)}}}function rH(t,e,n){const{startRow:i,startColumn:o,endRow:r,endColumn:s}=e;const a=n.createElement("table");const l=r-i+1;for(let t=0;t<l;t++){n.insertElement("tableRow",a,"end")}const c=[...new qF(t,{startRow:i,endRow:r,startColumn:o,endColumn:s,includeAllSlots:true})];for(const{row:t,column:e,cell:l,isAnchor:d,cellAnchorRow:u,cellAnchorColumn:h}of c){const c=t-i;const g=a.getChild(c);if(!d){if(u<i||h<o){zF(n,n.createPositionAt(g,"end"))}}else{const i=n.cloneElement(l);n.append(i,g);dH(i,t,e,r,s,n)}}uH(a,t,i,o,n);return a}function sH(t,e,n=0){const i=[];const o=new qF(t,{startRow:n,endRow:e-1});for(const t of o){const{row:n,cellHeight:o}=t;const r=n+o-1;if(n<e&&e<=r){i.push(t)}}return i}function aH(t,e,n){const i=t.parent;const o=i.parent;const r=i.index;const s=parseInt(t.getAttribute("rowspan"));const a=e-r;const l={};const c=s-a;if(c>1){l.rowspan=c}const d=parseInt(t.getAttribute("colspan")||1);if(d>1){l.colspan=d}const u=r;const h=u+a;const g=[...new qF(o,{startRow:u,endRow:h,includeAllSlots:true})];let m=null;let f;for(const e of g){const{row:i,column:o,cell:r}=e;if(r===t&&f===undefined){f=o}if(f!==undefined&&f===o&&i===h){m=zF(n,e.getPositionBefore(),l)}}NF("rowspan",a,t,n);return m}function lH(t,e){const n=[];const i=new qF(t);for(const t of i){const{column:i,cellWidth:o}=t;const r=i+o-1;if(i<e&&e<=r){n.push(t)}}return n}function cH(t,e,n,i){const o=parseInt(t.getAttribute("colspan"));const r=n-e;const s={};const a=o-r;if(a>1){s.colspan=a}const l=parseInt(t.getAttribute("rowspan")||1);if(l>1){s.rowspan=l}const c=zF(i,i.createPositionAfter(t),s);NF("colspan",r,t,i);return c}function dH(t,e,n,i,o,r){const s=parseInt(t.getAttribute("colspan")||1);const a=parseInt(t.getAttribute("rowspan")||1);const l=n+s-1;if(l>o){const e=o-n+1;NF("colspan",e,t,r,1)}const c=e+a-1;if(c>i){const n=i-e+1;NF("rowspan",n,t,r,1)}}function uH(t,e,n,i,o){const r=parseInt(e.getAttribute("headingRows")||0);if(r>0){const e=r-n;NF("headingRows",e,t,o,0)}const s=parseInt(e.getAttribute("headingColumns")||0);if(s>0){const e=s-i;NF("headingColumns",e,t,o,0)}}function hH(t,e){const n=e.getColumns(t);const i=new Array(n).fill(0);for(const{column:e}of new qF(t)){i[e]++}const o=i.reduce(((t,e,n)=>e?t:[...t,n]),[]);if(o.length>0){const n=o[o.length-1];e.removeColumns(t,{at:n});return true}return false}function gH(t,e){const n=[];const i=e.getRows(t);for(let e=0;e<i;e++){const i=t.getChild(e);if(i.isEmpty){n.push(e)}}if(n.length>0){const i=n[n.length-1];e.removeRows(t,{at:i});return true}return false}function mH(t,e){const n=hH(t,e);if(!n){gH(t,e)}}function fH(t,e){const n=Array.from(new qF(t,{startColumn:e.firstColumn,endColumn:e.lastColumn,row:e.lastRow}));const i=n.every((({cellHeight:t})=>t===1));if(i){return e.lastRow}const o=n[0].cellHeight-1;return e.lastRow+o}function pH(t,e){const n=Array.from(new qF(t,{startRow:e.firstRow,endRow:e.lastRow,column:e.lastColumn}));const i=n.every((({cellWidth:t})=>t===1));if(i){return e.lastColumn}const o=n[0].cellWidth-1;return e.lastColumn+o}class bH extends iu{constructor(t,e){super(t);this.direction=e.direction;this.isHorizontal=this.direction=="right"||this.direction=="left"}refresh(){const t=this._getMergeableCell();this.value=t;this.isEnabled=!!t}execute(){const t=this.editor.model;const e=t.document;const n=this.editor.plugins.get("TableUtils");const i=n.getTableCellsContainingSelection(e.selection)[0];const o=this.value;const r=this.direction;t.change((t=>{const e=r=="right"||r=="down";const n=e?i:o;const s=e?o:i;const a=s.parent;AH(s,n,t);const l=this.isHorizontal?"colspan":"rowspan";const c=parseInt(i.getAttribute(l)||1);const d=parseInt(o.getAttribute(l)||1);t.setAttribute(l,c+d,n);t.setSelection(t.createRangeIn(n));const u=this.editor.plugins.get("TableUtils");const h=a.findAncestor("table");mH(h,u)}))}_getMergeableCell(){const t=this.editor.model;const e=t.document;const n=this.editor.plugins.get("TableUtils");const i=n.getTableCellsContainingSelection(e.selection)[0];if(!i){return}const o=this.isHorizontal?kH(i,this.direction,n):wH(i,this.direction,n);if(!o){return}const r=this.isHorizontal?"rowspan":"colspan";const s=parseInt(i.getAttribute(r)||1);const a=parseInt(o.getAttribute(r)||1);if(a===s){return o}}}function kH(t,e,n){const i=t.parent;const o=i.parent;const r=e=="right"?t.nextSibling:t.previousSibling;const s=(o.getAttribute("headingColumns")||0)>0;if(!r){return}const a=e=="right"?t:r;const l=e=="right"?r:t;const{column:c}=n.getCellLocation(a);const{column:d}=n.getCellLocation(l);const u=parseInt(a.getAttribute("colspan")||1);const h=PF(n,a,o);const g=PF(n,l,o);if(s&&h!=g){return}const m=c+u===d;return m?r:undefined}function wH(t,e,n){const i=t.parent;const o=i.parent;const r=o.getChildIndex(i);if(e=="down"&&r===n.getRows(o)-1||e=="up"&&r===0){return}const s=parseInt(t.getAttribute("rowspan")||1);const a=o.getAttribute("headingRows")||0;const l=e=="down"&&r+s===a;const c=e=="up"&&r===a;if(a&&(l||c)){return}const d=parseInt(t.getAttribute("rowspan")||1);const u=e=="down"?r+d:r;const h=[...new qF(o,{endRow:u})];const g=h.find((e=>e.cell===t));const m=g.column;const f=h.find((({row:t,cellHeight:n,column:i})=>{if(i!==m){return false}if(e=="down"){return t===u}else{return u===t+n}}));return f&&f.cell}function AH(t,e,n){if(!CH(t)){if(CH(e)){n.remove(n.createRangeIn(e))}n.move(n.createRangeIn(t),n.createPositionAt(e,"end"))}n.remove(t)}function CH(t){return t.childCount==1&&t.getChild(0).is("element","paragraph")&&t.getChild(0).isEmpty}class _H extends iu{refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);const n=e[0];if(n){const i=n.findAncestor("table");const o=this.editor.plugins.get("TableUtils").getRows(i);const r=o-1;const s=t.getRowIndexes(e);const a=s.first===0&&s.last===r;this.isEnabled=!a}else{this.isEnabled=false}}execute(){const t=this.editor.model;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.document.selection);const i=e.getRowIndexes(n);const o=n[0];const r=o.findAncestor("table");const s=e.getCellLocation(o).column;t.change((t=>{const n=i.last-i.first+1;e.removeRows(r,{at:i.first,rows:n});const o=vH(r,i.first,s,e.getRows(r));t.setSelection(t.createPositionAt(o,0))}))}}function vH(t,e,n,i){const o=t.getChild(Math.min(e,i-1));let r=o.getChild(0);let s=0;for(const t of o.getChildren()){if(s>n){return r}r=t;s+=parseInt(t.getAttribute("colspan")||1)}return r}class yH extends iu{refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);const n=e[0];if(n){const i=n.findAncestor("table");const o=t.getColumns(i);const{first:r,last:s}=t.getColumnIndexes(e);this.isEnabled=s-r<o-1}else{this.isEnabled=false}}execute(){const t=this.editor.plugins.get("TableUtils");const[e,n]=EH(this.editor.model.document.selection,t);const i=e.parent.parent;const o=[...new qF(i)];const r={first:o.find((t=>t.cell===e)).column,last:o.find((t=>t.cell===n)).column};const s=xH(o,e,n,r);this.editor.model.change((t=>{const e=r.last-r.first+1;this.editor.plugins.get("TableUtils").removeColumns(i,{at:r.first,columns:e});t.setSelection(t.createPositionAt(s,0))}))}}function xH(t,e,n,i){const o=parseInt(n.getAttribute("colspan")||1);if(o>1){return n}else if(e.previousSibling||n.nextSibling){return n.nextSibling||e.previousSibling}else{if(i.first){return t.reverse().find((({column:t})=>t<i.first)).cell}else{return t.reverse().find((({column:t})=>t>i.last)).cell}}}function EH(t,e){const n=e.getSelectionAffectedTableCells(t);const i=n[0];const o=n.pop();const r=[i,o];return i.isBefore(o)?r:r.reverse()}class DH extends iu{refresh(){const t=this.editor.plugins.get("TableUtils");const e=this.editor.model;const n=t.getSelectionAffectedTableCells(e.document.selection);const i=n.length>0;this.isEnabled=i;this.value=i&&n.every((t=>this._isInHeading(t,t.parent.parent)))}execute(t={}){if(t.forceValue===this.value){return}const e=this.editor.plugins.get("TableUtils");const n=this.editor.model;const i=e.getSelectionAffectedTableCells(n.document.selection);const o=i[0].findAncestor("table");const{first:r,last:s}=e.getRowIndexes(i);const a=this.value?r:s+1;const l=o.getAttribute("headingRows")||0;n.change((t=>{if(a){const e=a>l?l:0;const n=sH(o,a,e);for(const{cell:e}of n){aH(e,a,t)}}NF("headingRows",a,o,t,0)}))}_isInHeading(t,e){const n=parseInt(e.getAttribute("headingRows")||0);return!!n&&t.parent.index<n}}class SH extends iu{refresh(){const t=this.editor.model;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.document.selection);const i=n.length>0;this.isEnabled=i;this.value=i&&n.every((t=>PF(e,t)))}execute(t={}){if(t.forceValue===this.value){return}const e=this.editor.plugins.get("TableUtils");const n=this.editor.model;const i=e.getSelectionAffectedTableCells(n.document.selection);const o=i[0].findAncestor("table");const{first:r,last:s}=e.getColumnIndexes(i);const a=this.value?r:s+1;n.change((t=>{if(a){const e=lH(o,a);for(const{cell:n,column:i}of e){cH(n,i,a,t)}}NF("headingColumns",a,o,t,0)}))}}class TH extends eu{static get pluginName(){return"TableUtils"}init(){this.decorate("insertColumns");this.decorate("insertRows")}getCellLocation(t){const e=t.parent;const n=e.parent;const i=n.getChildIndex(e);const o=new qF(n,{row:i});for(const{cell:e,row:n,column:i}of o){if(e===t){return{row:n,column:i}}}}createTable(t,e){const n=t.createElement("table");const i=parseInt(e.rows)||2;const o=parseInt(e.columns)||2;IH(t,n,0,i,o);if(e.headingRows){NF("headingRows",Math.min(e.headingRows,i),n,t,0)}if(e.headingColumns){NF("headingColumns",Math.min(e.headingColumns,o),n,t,0)}return n}insertRows(t,e={}){const n=this.editor.model;const i=e.at||0;const o=e.rows||1;const r=e.copyStructureFromAbove!==undefined;const s=e.copyStructureFromAbove?i-1:i;const a=this.getRows(t);const l=this.getColumns(t);if(i>a){throw new z("tableutils-insertrows-insert-out-of-range",this,{options:e})}n.change((e=>{const n=t.getAttribute("headingRows")||0;if(n>i){NF("headingRows",n+o,t,e,0)}if(!r&&(i===0||i===a)){IH(e,t,i,o,l);return}const c=r?Math.max(i,s):i;const d=new qF(t,{endRow:c});const u=new Array(l).fill(1);for(const{row:t,column:n,cellHeight:a,cellWidth:l,cell:c}of d){const d=t+a-1;const h=t<i&&i<=d;const g=t<=s&&s<=d;if(h){e.setAttribute("rowspan",a+o,c);u[n]=-l}else if(r&&g){u[n]=l}}for(let n=0;n<o;n++){const n=e.createElement("tableRow");e.insert(n,t,i);for(let t=0;t<u.length;t++){const i=u[t];const o=e.createPositionAt(n,"end");if(i>0){zF(e,o,i>1?{colspan:i}:null)}t+=Math.abs(i)-1}}}))}insertColumns(t,e={}){const n=this.editor.model;const i=e.at||0;const o=e.columns||1;n.change((e=>{const n=t.getAttribute("headingColumns");if(i<n){e.setAttribute("headingColumns",n+o,t)}const r=this.getColumns(t);if(i===0||r===i){for(const n of t.getChildren()){if(!n.is("element","tableRow")){continue}MH(o,e,e.createPositionAt(n,i?"end":0))}return}const s=new qF(t,{column:i,includeAllSlots:true});for(const t of s){const{row:n,cell:r,cellAnchorColumn:a,cellAnchorRow:l,cellWidth:c,cellHeight:d}=t;if(a<i){e.setAttribute("colspan",c+o,r);const t=l+d-1;for(let e=n;e<=t;e++){s.skipRow(e)}}else{MH(o,e,t.getPositionBefore())}}}))}removeRows(t,e){const n=this.editor.model;const i=e.rows||1;const o=this.getRows(t);const r=e.at;const s=r+i-1;if(s>o-1){throw new z("tableutils-removerows-row-index-out-of-range",this,{table:t,options:e})}n.change((e=>{const{cellsToMove:n,cellsToTrim:i}=zH(t,r,s);if(n.size){const i=s+1;PH(t,i,n,e)}for(let n=s;n>=r;n--){e.remove(t.getChild(n))}for(const{rowspan:t,cell:n}of i){NF("rowspan",t,n,e)}NH(t,r,s,e);if(!hH(t,this)){gH(t,this)}}))}removeColumns(t,e){const n=this.editor.model;const i=e.at;const o=e.columns||1;const r=e.at+o-1;n.change((e=>{LH(t,{first:i,last:r},e);for(let n=r;n>=i;n--){for(const{cell:i,column:o,cellWidth:r}of[...new qF(t)]){if(o<=n&&r>1&&o+r>n){NF("colspan",r-1,i,e)}else if(o===n){e.remove(i)}}}if(!gH(t,this)){hH(t,this)}}))}splitCellVertically(t,e=2){const n=this.editor.model;const i=t.parent;const o=i.parent;const r=parseInt(t.getAttribute("rowspan")||1);const s=parseInt(t.getAttribute("colspan")||1);n.change((n=>{if(s>1){const{newCellsSpan:i,updatedSpan:o}=BH(s,e);NF("colspan",o,t,n);const a={};if(i>1){a.colspan=i}if(r>1){a.rowspan=r}const l=s>e?e-1:s-1;MH(l,n,n.createPositionAfter(t),a)}if(s<e){const i=e-s;const a=[...new qF(o)];const{column:l}=a.find((({cell:e})=>e===t));const c=a.filter((({cell:e,cellWidth:n,column:i})=>{const o=e!==t&&i===l;const r=i<l&&i+n>l;return o||r}));for(const{cell:t,cellWidth:e}of c){n.setAttribute("colspan",e+i,t)}const d={};if(r>1){d.rowspan=r}MH(i,n,n.createPositionAfter(t),d);const u=o.getAttribute("headingColumns")||0;if(u>l){NF("headingColumns",u+i,o,n)}}}))}splitCellHorizontally(t,e=2){const n=this.editor.model;const i=t.parent;const o=i.parent;const r=o.getChildIndex(i);const s=parseInt(t.getAttribute("rowspan")||1);const a=parseInt(t.getAttribute("colspan")||1);n.change((n=>{if(s>1){const i=[...new qF(o,{startRow:r,endRow:r+s-1,includeAllSlots:true})];const{newCellsSpan:l,updatedSpan:c}=BH(s,e);NF("rowspan",c,t,n);const{column:d}=i.find((({cell:e})=>e===t));const u={};if(l>1){u.rowspan=l}if(a>1){u.colspan=a}for(const t of i){const{column:e,row:i}=t;const o=i>=r+c;const s=e===d;const a=(i+r+c)%l===0;if(o&&s&&a){MH(1,n,t.getPositionBefore(),u)}}}if(s<e){const i=e-s;const l=[...new qF(o,{startRow:0,endRow:r})];for(const{cell:e,cellHeight:o,row:s}of l){if(e!==t&&s+o>r){const t=o+i;n.setAttribute("rowspan",t,e)}}const c={};if(a>1){c.colspan=a}IH(n,o,r+1,i,1,c);const d=o.getAttribute("headingRows")||0;if(d>r){NF("headingRows",d+i,o,n)}}}))}getColumns(t){const e=t.getChild(0);return[...e.getChildren()].reduce(((t,e)=>{const n=parseInt(e.getAttribute("colspan")||1);return t+n}),0)}getRows(t){return Array.from(t.getChildren()).reduce(((t,e)=>e.is("element","tableRow")?t+1:t),0)}createTableWalker(t,e={}){return new qF(t,e)}getSelectedTableCells(t){const e=[];for(const n of this.sortRanges(t.getRanges())){const t=n.getContainedElement();if(t&&t.is("element","tableCell")){e.push(t)}}return e}getTableCellsContainingSelection(t){const e=[];for(const n of t.getRanges()){const t=n.start.findAncestor("tableCell");if(t){e.push(t)}}return e}getSelectionAffectedTableCells(t){const e=this.getSelectedTableCells(t);if(e.length){return e}return this.getTableCellsContainingSelection(t)}getRowIndexes(t){const e=t.map((t=>t.parent.index));return this._getFirstLastIndexesObject(e)}getColumnIndexes(t){const e=t[0].findAncestor("table");const n=[...new qF(e)];const i=n.filter((e=>t.includes(e.cell))).map((t=>t.column));return this._getFirstLastIndexesObject(i)}isSelectionRectangular(t){if(t.length<2||!this._areCellInTheSameTableSection(t)){return false}const e=new Set;const n=new Set;let i=0;for(const o of t){const{row:t,column:r}=this.getCellLocation(o);const s=parseInt(o.getAttribute("rowspan")||1);const a=parseInt(o.getAttribute("colspan")||1);e.add(t);n.add(r);if(s>1){e.add(t+s-1)}if(a>1){n.add(r+a-1)}i+=s*a}const o=RH(e,n);return o==i}sortRanges(t){return Array.from(t).sort(OH)}_getFirstLastIndexesObject(t){const e=t.sort(((t,e)=>t-e));const n=e[0];const i=e[e.length-1];return{first:n,last:i}}_areCellInTheSameTableSection(t){const e=t[0].findAncestor("table");const n=this.getRowIndexes(t);const i=parseInt(e.getAttribute("headingRows")||0);if(!this._areIndexesInSameSection(n,i)){return false}const o=parseInt(e.getAttribute("headingColumns")||0);const r=this.getColumnIndexes(t);return this._areIndexesInSameSection(r,o)}_areIndexesInSameSection({first:t,last:e},n){const i=t<n;const o=e<n;return i===o}}function IH(t,e,n,i,o,r={}){for(let s=0;s<i;s++){const i=t.createElement("tableRow");t.insert(i,e,n);MH(o,t,t.createPositionAt(i,"end"),r)}}function MH(t,e,n,i={}){for(let o=0;o<t;o++){zF(e,n,i)}}function BH(t,e){if(t<e){return{newCellsSpan:1,updatedSpan:1}}const n=Math.floor(t/e);const i=t-n*e+n;return{newCellsSpan:n,updatedSpan:i}}function LH(t,e,n){const i=t.getAttribute("headingColumns")||0;if(i&&e.first<i){const o=Math.min(i-1,e.last)-e.first+1;n.setAttribute("headingColumns",i-o,t)}}function NH(t,e,n,i){const o=t.getAttribute("headingRows")||0;if(e<o){const r=n<o?o-(n-e+1):e;NF("headingRows",r,t,i,0)}}function zH(t,e,n){const i=new Map;const o=[];for(const{row:r,column:s,cellHeight:a,cell:l}of new qF(t,{endRow:n})){const t=r+a-1;const c=r>=e&&r<=n&&t>n;if(c){const t=n-r+1;const e=a-t;i.set(s,{cell:l,rowspan:e})}const d=r<e&&t>=e;if(d){let i;if(t>=n){i=n-e+1}else{i=t-e+1}o.push({cell:l,rowspan:a-i})}}return{cellsToMove:i,cellsToTrim:o}}function PH(t,e,n,i){const o=new qF(t,{includeAllSlots:true,row:e});const r=[...o];const s=t.getChild(e);let a;for(const{column:t,cell:e,isAnchor:o}of r){if(n.has(t)){const{cell:e,rowspan:o}=n.get(t);const r=a?i.createPositionAfter(a):i.createPositionAt(s,0);i.move(i.createRangeOn(e),r);NF("rowspan",o,e,i);a=e}else if(o){a=e}}}function OH(t,e){const n=t.start;const i=e.start;return n.isBefore(i)?-1:1}function RH(t,e){const n=Array.from(t.values());const i=Array.from(e.values());const o=Math.max(...n);const r=Math.min(...n);const s=Math.max(...i);const a=Math.min(...i);return(o-r+1)*(s-a+1)}class VH extends iu{refresh(){const t=this.editor.plugins.get(TH);const e=t.getSelectedTableCells(this.editor.model.document.selection);this.isEnabled=t.isSelectionRectangular(e,this.editor.plugins.get(TH))}execute(){const t=this.editor.model;const e=this.editor.plugins.get(TH);t.change((n=>{const i=e.getSelectedTableCells(t.document.selection);const o=i.shift();const{mergeWidth:r,mergeHeight:s}=HH(o,i,e);NF("colspan",r,o,n);NF("rowspan",s,o,n);for(const t of i){jH(t,o,n)}const a=o.findAncestor("table");mH(a,e);n.setSelection(o,"in")}))}}function jH(t,e,n){if(!FH(t)){if(FH(e)){n.remove(n.createRangeIn(e))}n.move(n.createRangeIn(t),n.createPositionAt(e,"end"))}n.remove(t)}function FH(t){return t.childCount==1&&t.getChild(0).is("element","paragraph")&&t.getChild(0).isEmpty}function HH(t,e,n){let i=0;let o=0;for(const t of e){const{row:e,column:r}=n.getCellLocation(t);i=UH(t,r,i,"colspan");o=UH(t,e,o,"rowspan")}const{row:r,column:s}=n.getCellLocation(t);const a=i-s;const l=o-r;return{mergeWidth:a,mergeHeight:l}}function UH(t,e,n,i){const o=parseInt(t.getAttribute(i)||1);return Math.max(n,e+o)}class WH extends iu{constructor(t){super(t);this.affectsData=false}refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);this.isEnabled=e.length>0}execute(){const t=this.editor.model;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.document.selection);const i=e.getRowIndexes(n);const o=n[0].findAncestor("table");const r=[];for(let e=i.first;e<=i.last;e++){for(const n of o.getChild(e).getChildren()){r.push(t.createRangeOn(n))}}t.change((t=>{t.setSelection(r)}))}}class qH extends iu{constructor(t){super(t);this.affectsData=false}refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);this.isEnabled=e.length>0}execute(){const t=this.editor.plugins.get("TableUtils");const e=this.editor.model;const n=t.getSelectionAffectedTableCells(e.document.selection);const i=n[0];const o=n.pop();const r=i.findAncestor("table");const s=t.getCellLocation(i);const a=t.getCellLocation(o);const l=Math.min(s.column,a.column);const c=Math.max(s.column,a.column);const d=[];for(const t of new qF(r,{startColumn:l,endColumn:c})){d.push(e.createRangeOn(t.cell))}e.change((t=>{t.setSelection(d)}))}}function GH(t){t.document.registerPostFixer((e=>$H(e,t)))}function $H(t,e){const n=e.document.differ.getChanges();let i=false;const o=new Set;for(const e of n){let n;if(e.name=="table"&&e.type=="insert"){n=e.position.nodeAfter}if(e.name=="tableRow"||e.name=="tableCell"){n=e.position.findAncestor("table")}if(JH(e)){n=e.range.start.findAncestor("table")}if(n&&!o.has(n)){i=KH(n,t)||i;i=YH(n,t)||i;o.add(n)}}return i}function KH(t,e){let n=false;const i=ZH(t);if(i.length){n=true;for(const t of i){NF("rowspan",t.rowspan,t.cell,e,1)}}return n}function YH(t,e){let n=false;const i=QH(t);const o=[];for(const[e,n]of i.entries()){if(!n&&t.getChild(e).is("element","tableRow")){o.push(e)}}if(o.length){n=true;for(const n of o.reverse()){e.remove(t.getChild(n));i.splice(n,1)}}const r=i.filter(((e,n)=>t.getChild(n).is("element","tableRow")));const s=r[0];const a=r.every((t=>t===s));if(!a){const i=r.reduce(((t,e)=>e>t?e:t),0);for(const[o,s]of r.entries()){const r=i-s;if(r){for(let n=0;n<r;n++){zF(e,e.createPositionAt(t.getChild(o),"end"))}n=true}}}return n}function ZH(t){const e=parseInt(t.getAttribute("headingRows")||0);const n=Array.from(t.getChildren()).reduce(((t,e)=>e.is("element","tableRow")?t+1:t),0);const i=[];for(const{row:o,cell:r,cellHeight:s}of new qF(t)){if(s<2){continue}const t=o<e;const a=t?e:n;if(o+s>a){const t=a-o;i.push({cell:r,rowspan:t})}}return i}function QH(t){const e=new Array(t.childCount).fill(0);for(const{rowIndex:n}of new qF(t,{includeAllSlots:true})){e[n]++}return e}function JH(t){const e=t.type==="attribute";const n=t.attributeKey;return e&&(n==="headingRows"||n==="colspan"||n==="rowspan")}function XH(t){t.document.registerPostFixer((e=>tU(e,t)))}function tU(t,e){const n=e.document.differ.getChanges();let i=false;for(const e of n){if(e.type=="insert"&&e.name=="table"){i=eU(e.position.nodeAfter,t)||i}if(e.type=="insert"&&e.name=="tableRow"){i=nU(e.position.nodeAfter,t)||i}if(e.type=="insert"&&e.name=="tableCell"){i=iU(e.position.nodeAfter,t)||i}if(oU(e)){i=iU(e.position.parent,t)||i}}return i}function eU(t,e){let n=false;for(const i of t.getChildren()){if(i.is("element","tableRow")){n=nU(i,e)||n}}return n}function nU(t,e){let n=false;for(const i of t.getChildren()){n=iU(i,e)||n}return n}function iU(t,e){if(t.childCount==0){e.insertElement("paragraph",t);return true}const n=Array.from(t.getChildren()).filter((t=>t.is("$text")));for(const t of n){e.wrap(e.createRangeOn(t),"paragraph")}return!!n.length}function oU(t){if(!t.position||!t.position.parent.is("element","tableCell")){return false}return t.type=="insert"&&t.name=="$text"||t.type=="remove"}function rU(t,e){const n=t.document.differ;for(const t of n.getChanges()){let n;let i=false;if(t.type=="attribute"){const e=t.range.start.nodeAfter;if(!e||!e.is("element","table")){continue}if(t.attributeKey!="headingRows"&&t.attributeKey!="headingColumns"){continue}n=e;i=t.attributeKey=="headingRows"}else if(t.name=="tableRow"||t.name=="tableCell"){n=t.position.findAncestor("table");i=t.name=="tableRow"}if(!n){continue}const o=n.getAttribute("headingRows")||0;const r=n.getAttribute("headingColumns")||0;const s=new qF(n);for(const t of s){const n=t.row<o||t.column<r;const s=n?"th":"td";const a=e.mapper.toViewElement(t.cell);if(a&&a.is("element")&&a.name!=s){e.reconvertItem(i?t.cell.parent:t.cell)}}}}function sU(t,e){const n=t.document.differ;const i=new Set;for(const t of n.getChanges()){const e=t.type=="attribute"?t.range.start.parent:t.position.parent;if(e.is("element","tableCell")){i.add(e)}}for(const t of i.values()){const n=Array.from(t.getChildren()).filter((t=>aU(t,e.mapper)));for(const t of n){e.reconvertItem(t)}}}function aU(t,e){if(!t.is("element","paragraph")){return false}const n=e.toViewElement(t);if(!n){return false}return QF(t)!==n.is("element","span")}var lU=n(4777);var cU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};cU.insert="head";cU.singleton=true;var dU=Sc()(lU.Z,cU);const uU=lU.Z.locals||{};class hU extends eu{static get pluginName(){return"TableEditing"}static get requires(){return[TH]}init(){const t=this.editor;const e=t.model;const n=e.schema;const i=t.conversion;const o=t.plugins.get(TH);n.register("table",{inheritAllFrom:"$blockObject",allowAttributes:["headingRows","headingColumns"]});n.register("tableRow",{allowIn:"table",isLimit:true});n.register("tableCell",{allowContentOf:"$container",allowIn:"tableRow",allowAttributes:["colspan","rowspan"],isLimit:true,isSelectable:true});i.for("upcast").add(RF());i.for("upcast").add(VF());i.for("editingDowncast").elementToStructure({model:{name:"table",attributes:["headingRows"]},view:$F(o,{asWidget:true})});i.for("dataDowncast").elementToStructure({model:{name:"table",attributes:["headingRows"]},view:$F(o)});i.for("upcast").elementToElement({model:"tableRow",view:"tr"});i.for("upcast").add(jF());i.for("downcast").elementToElement({model:"tableRow",view:KF()});i.for("upcast").elementToElement({model:"tableCell",view:"td"});i.for("upcast").elementToElement({model:"tableCell",view:"th"});i.for("upcast").add(FF("td"));i.for("upcast").add(FF("th"));i.for("editingDowncast").elementToElement({model:"tableCell",view:YF({asWidget:true})});i.for("dataDowncast").elementToElement({model:"tableCell",view:YF()});i.for("editingDowncast").elementToElement({model:"paragraph",view:ZF({asWidget:true}),converterPriority:"high"});i.for("dataDowncast").elementToElement({model:"paragraph",view:ZF(),converterPriority:"high"});i.for("downcast").attributeToAttribute({model:"colspan",view:"colspan"});i.for("upcast").attributeToAttribute({model:{key:"colspan",value:gU("colspan")},view:"colspan"});i.for("downcast").attributeToAttribute({model:"rowspan",view:"rowspan"});i.for("upcast").attributeToAttribute({model:{key:"rowspan",value:gU("rowspan")},view:"rowspan"});t.config.define("table.defaultHeadings.rows",0);t.config.define("table.defaultHeadings.columns",0);t.commands.add("insertTable",new tH(t));t.commands.add("insertTableRowAbove",new nH(t,{order:"above"}));t.commands.add("insertTableRowBelow",new nH(t,{order:"below"}));t.commands.add("insertTableColumnLeft",new iH(t,{order:"left"}));t.commands.add("insertTableColumnRight",new iH(t,{order:"right"}));t.commands.add("removeTableRow",new _H(t));t.commands.add("removeTableColumn",new yH(t));t.commands.add("splitTableCellVertically",new oH(t,{direction:"vertically"}));t.commands.add("splitTableCellHorizontally",new oH(t,{direction:"horizontally"}));t.commands.add("mergeTableCells",new VH(t));t.commands.add("mergeTableCellRight",new bH(t,{direction:"right"}));t.commands.add("mergeTableCellLeft",new bH(t,{direction:"left"}));t.commands.add("mergeTableCellDown",new bH(t,{direction:"down"}));t.commands.add("mergeTableCellUp",new bH(t,{direction:"up"}));t.commands.add("setTableColumnHeader",new SH(t));t.commands.add("setTableRowHeader",new DH(t));t.commands.add("selectTableRow",new WH(t));t.commands.add("selectTableColumn",new qH(t));GH(e);XH(e);this.listenTo(e.document,"change:data",(()=>{rU(e,t.editing);sU(e,t.editing)}))}}function gU(t){return e=>{const n=parseInt(e.getAttribute(t));if(Number.isNaN(n)||n<=0){return null}return n}}var mU=n(8085);var fU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};fU.insert="head";fU.singleton=true;var pU=Sc()(mU.Z,fU);const bU=mU.Z.locals||{};class kU extends Lc{constructor(t){super(t);const e=this.bindTemplate;this.items=this._createGridCollection();this.keystrokes=new hc;this.focusTracker=new uc;this.set("rows",0);this.set("columns",0);this.bind("label").to(this,"columns",this,"rows",((t,e)=>`${e} × ${t}`));this.setTemplate({tag:"div",attributes:{class:["ck"]},children:[{tag:"div",attributes:{class:["ck-insert-table-dropdown__grid"]},on:{"mouseover@.ck-insert-table-dropdown-grid-box":e.to("boxover")},children:this.items},{tag:"div",attributes:{class:["ck","ck-insert-table-dropdown__label"],"aria-hidden":true},children:[{text:e.to("label")}]}],on:{mousedown:e.to((t=>{t.preventDefault()})),click:e.to((()=>{this.fire("execute")}))}});this.on("boxover",((t,e)=>{const{row:n,column:i}=e.target.dataset;this.items.get((parseInt(n,10)-1)*10+(parseInt(i,10)-1)).focus()}));this.focusTracker.on("change:focusedElement",((t,e,n)=>{if(!n){return}const{row:i,column:o}=n.dataset;this.set({rows:parseInt(i),columns:parseInt(o)})}));this.on("change:columns",(()=>this._highlightGridBoxes()));this.on("change:rows",(()=>this._highlightGridBoxes()))}render(){super.render();r({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.items,numberOfColumns:10,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection});for(const t of this.items){this.focusTracker.add(t.element)}this.keystrokes.listenTo(this.element)}focus(){this.items.get(0).focus()}focusLast(){this.items.get(0).focus()}_highlightGridBoxes(){const t=this.rows;const e=this.columns;this.items.map(((n,i)=>{const o=Math.floor(i/10);const r=i%10;const s=o<t&&r<e;n.set("isOn",s)}))}_createGridButton(t,e,n,i){const o=new kd(t);o.set({label:i,class:"ck-insert-table-dropdown-grid-box"});o.extendTemplate({attributes:{"data-row":e,"data-column":n}});return o}_createGridCollection(){const t=[];for(let e=0;e<100;e++){const n=Math.floor(e/10);const i=e%10;const o=`${n+1} × ${i+1}`;t.push(this._createGridButton(this.locale,n+1,i+1,o))}return this.createCollection(t)}}const wU='$${Delta.CKEditor.Icon[68]}$$';const AU='$${Delta.CKEditor.Icon[69]}$$';const CU='$${Delta.CKEditor.Icon[70]}$$';const _U='$${Delta.CKEditor.Icon[71]}$$';class vU extends eu{static get pluginName(){return"TableUI"}init(){const t=this.editor;const e=this.editor.t;const n=t.locale.contentLanguageDirection;const i=n==="ltr";t.ui.componentFactory.add("insertTable",(n=>{const i=t.commands.get("insertTable");const o=yv(n);o.bind("isEnabled").to(i);o.buttonView.set({icon:wU,label:e("Insert table"),tooltip:true});let r;o.on("change:isOpen",(()=>{if(r){return}r=new kU(n);o.panelView.children.add(r);r.delegate("execute").to(o);o.on("execute",(()=>{t.execute("insertTable",{rows:r.rows,columns:r.columns});t.editing.view.focus()}))}));return o}));t.ui.componentFactory.add("tableColumn",(t=>{const n=[{type:"switchbutton",model:{commandName:"setTableColumnHeader",label:e("Header column"),bindIsOn:true}},{type:"separator"},{type:"button",model:{commandName:i?"insertTableColumnLeft":"insertTableColumnRight",label:e("Insert column left")}},{type:"button",model:{commandName:i?"insertTableColumnRight":"insertTableColumnLeft",label:e("Insert column right")}},{type:"button",model:{commandName:"removeTableColumn",label:e("Delete column")}},{type:"button",model:{commandName:"selectTableColumn",label:e("Select column")}}];return this._prepareDropdown(e("Column"),AU,n,t)}));t.ui.componentFactory.add("tableRow",(t=>{const n=[{type:"switchbutton",model:{commandName:"setTableRowHeader",label:e("Header row"),bindIsOn:true}},{type:"separator"},{type:"button",model:{commandName:"insertTableRowAbove",label:e("Insert row above")}},{type:"button",model:{commandName:"insertTableRowBelow",label:e("Insert row below")}},{type:"button",model:{commandName:"removeTableRow",label:e("Delete row")}},{type:"button",model:{commandName:"selectTableRow",label:e("Select row")}}];return this._prepareDropdown(e("Row"),CU,n,t)}));t.ui.componentFactory.add("mergeTableCells",(t=>{const n=[{type:"button",model:{commandName:"mergeTableCellUp",label:e("Merge cell up")}},{type:"button",model:{commandName:i?"mergeTableCellRight":"mergeTableCellLeft",label:e("Merge cell right")}},{type:"button",model:{commandName:"mergeTableCellDown",label:e("Merge cell down")}},{type:"button",model:{commandName:i?"mergeTableCellLeft":"mergeTableCellRight",label:e("Merge cell left")}},{type:"separator"},{type:"button",model:{commandName:"splitTableCellVertically",label:e("Split cell vertically")}},{type:"button",model:{commandName:"splitTableCellHorizontally",label:e("Split cell horizontally")}}];return this._prepareMergeSplitButtonDropdown(e("Merge cells"),_U,n,t)}))}_prepareDropdown(t,e,n,i){const o=this.editor;const r=yv(i);const s=this._fillDropdownWithListOptions(r,n);r.buttonView.set({label:t,icon:e,tooltip:true});r.bind("isEnabled").toMany(s,"isEnabled",((...t)=>t.some((t=>t))));this.listenTo(r,"execute",(t=>{o.execute(t.source.commandName);if(!(t.source instanceof vd)){o.editing.view.focus()}}));return r}_prepareMergeSplitButtonDropdown(t,e,n,i){const o=this.editor;const r=yv(i,$d);const s="mergeTableCells";const a=o.commands.get(s);const l=this._fillDropdownWithListOptions(r,n);r.buttonView.set({label:t,icon:e,tooltip:true,isEnabled:true});r.bind("isEnabled").toMany([a,...l],"isEnabled",((...t)=>t.some((t=>t))));this.listenTo(r.buttonView,"execute",(()=>{o.execute(s);o.editing.view.focus()}));this.listenTo(r,"execute",(t=>{o.execute(t.source.commandName);o.editing.view.focus()}));return r}_fillDropdownWithListOptions(t,e){const n=this.editor;const i=[];const o=new cc;for(const t of e){yU(t,n,i,o)}Dv(t,o);return i}}function yU(t,e,n,i){const o=t.model=new Ry(t.model);const{commandName:r,bindIsOn:s}=t.model;if(t.type==="button"||t.type==="switchbutton"){const t=e.commands.get(r);n.push(t);o.set({commandName:r});o.bind("isEnabled").to(t);if(s){o.bind("isOn").to(t,"value")}}o.set({withText:true});i.add(t)}var xU=n(5593);var EU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};EU.insert="head";EU.singleton=true;var DU=Sc()(xU.Z,EU);const SU=xU.Z.locals||{};class TU extends eu{static get pluginName(){return"TableSelection"}static get requires(){return[TH,TH]}init(){const t=this.editor;const e=t.model;const n=t.editing.view;this.listenTo(e,"deleteContent",((t,e)=>this._handleDeleteContent(t,e)),{priority:"high"});this.listenTo(n.document,"insertText",((t,e)=>this._handleInsertTextEvent(t,e)),{priority:"high"});this._defineSelectionConverter();this._enablePluginDisabling()}getSelectedTableCells(){const t=this.editor.plugins.get(TH);const e=this.editor.model.document.selection;const n=t.getSelectedTableCells(e);if(n.length==0){return null}return n}getSelectionAsFragment(){const t=this.editor.plugins.get(TH);const e=this.getSelectedTableCells();if(!e){return null}return this.editor.model.change((n=>{const i=n.createDocumentFragment();const{first:o,last:r}=t.getColumnIndexes(e);const{first:s,last:a}=t.getRowIndexes(e);const l=e[0].findAncestor("table");let c=a;let d=r;if(t.isSelectionRectangular(e)){const t={firstColumn:o,lastColumn:r,firstRow:s,lastRow:a};c=fH(l,t);d=pH(l,t)}const u={startRow:s,startColumn:o,endRow:c,endColumn:d};const h=rH(l,u,n);n.insert(h,i,0);return i}))}setCellSelection(t,e){const n=this._getCellsToSelect(t,e);this.editor.model.change((t=>{t.setSelection(n.cells.map((e=>t.createRangeOn(e))),{backward:n.backward})}))}getFocusCell(){const t=this.editor.model.document.selection;const e=[...t.getRanges()].pop();const n=e.getContainedElement();if(n&&n.is("element","tableCell")){return n}return null}getAnchorCell(){const t=this.editor.model.document.selection;const e=dc(t.getRanges());const n=e.getContainedElement();if(n&&n.is("element","tableCell")){return n}return null}_defineSelectionConverter(){const t=this.editor;const e=new Set;t.conversion.for("editingDowncast").add((t=>t.on("selection",((t,i,o)=>{const r=o.writer;n(r);const s=this.getSelectedTableCells();if(!s){return}for(const t of s){const n=o.mapper.toViewElement(t);r.addClass("ck-editor__editable_selected",n);e.add(n)}const a=o.mapper.toViewElement(s[s.length-1]);r.setSelection(a,0)}),{priority:"lowest"})));function n(t){for(const n of e){t.removeClass("ck-editor__editable_selected",n)}e.clear()}}_enablePluginDisabling(){const t=this.editor;this.on("change:isEnabled",(()=>{if(!this.isEnabled){const e=this.getSelectedTableCells();if(!e){return}t.model.change((n=>{const i=n.createPositionAt(e[0],0);const o=t.model.schema.getNearestSelectionRange(i);n.setSelection(o)}))}}))}_handleDeleteContent(t,e){const n=this.editor.plugins.get(TH);const[i,o]=e;const r=this.editor.model;const s=!o||o.direction=="backward";const a=n.getSelectedTableCells(i);if(!a.length){return}t.stop();r.change((t=>{const e=a[s?a.length-1:0];r.change((t=>{for(const e of a){r.deleteContent(t.createSelection(e,"in"))}}));const n=r.schema.getNearestSelectionRange(t.createPositionAt(e,0));if(i.is("documentSelection")){t.setSelection(n)}else{i.setTo(n)}}))}_handleInsertTextEvent(t,e){const n=this.editor;const i=n.model;const o=i.document.selection;const r=this.getSelectedTableCells(o);if(!r){return}const s=n.editing.view;const a=n.editing.mapper;const l=r.map((t=>s.createRangeOn(a.toViewElement(t))));e.selection=s.createSelection(l)}_getCellsToSelect(t,e){const n=this.editor.plugins.get("TableUtils");const i=n.getCellLocation(t);const o=n.getCellLocation(e);const r=Math.min(i.row,o.row);const s=Math.max(i.row,o.row);const a=Math.min(i.column,o.column);const l=Math.max(i.column,o.column);const c=new Array(s-r+1).fill(null).map((()=>[]));const d={startRow:r,endRow:s,startColumn:a,endColumn:l};for(const{row:e,cell:n}of new qF(t.findAncestor("table"),d)){c[e-r].push(n)}const u=o.row<i.row;const h=o.column<i.column;if(u){c.reverse()}if(h){c.forEach((t=>t.reverse()))}return{cells:c.flat(),backward:u||h}}}class IU extends eu{static get pluginName(){return"TableClipboard"}static get requires(){return[TU,TH]}init(){const t=this.editor;const e=t.editing.view.document;this.listenTo(e,"copy",((t,e)=>this._onCopyCut(t,e)));this.listenTo(e,"cut",((t,e)=>this._onCopyCut(t,e)));this.listenTo(t.model,"insertContent",((t,e)=>this._onInsertContent(t,...e)),{priority:"high"});this.decorate("_replaceTableSlotCell")}_onCopyCut(t,e){const n=this.editor.plugins.get(TU);if(!n.getSelectedTableCells()){return}if(t.name=="cut"&&this.editor.isReadOnly){return}e.preventDefault();t.stop();const i=this.editor.data;const o=this.editor.editing.view.document;const r=i.toView(n.getSelectionAsFragment());o.fire("clipboardOutput",{dataTransfer:e.dataTransfer,content:r,method:t.name})}_onInsertContent(t,e,n){if(n&&!n.is("documentSelection")){return}const i=this.editor.model;const o=this.editor.plugins.get(TH);let r=MU(e,i);if(!r){return}const s=o.getSelectionAffectedTableCells(i.document.selection);if(!s.length){mH(r,o);return}t.stop();i.change((t=>{const e={width:o.getColumns(r),height:o.getRows(r)};const n=BU(s,e,t,o);const i=n.lastRow-n.firstRow+1;const a=n.lastColumn-n.firstColumn+1;const l={startRow:0,startColumn:0,endRow:Math.min(i,e.height)-1,endColumn:Math.min(a,e.width)-1};r=rH(r,l,t);const c=s[0].findAncestor("table");const d=this._replaceSelectedCellsWithPasted(r,e,c,n,t);if(this.editor.plugins.get("TableSelection").isEnabled){const e=o.sortRanges(d.map((e=>t.createRangeOn(e))));t.setSelection(e)}else{t.setSelection(d[0],0)}}))}_replaceSelectedCellsWithPasted(t,e,n,i,o){const{width:r,height:s}=e;const a=NU(t,r,s);const l=[...new qF(n,{startRow:i.firstRow,endRow:i.lastRow,startColumn:i.firstColumn,endColumn:i.lastColumn,includeAllSlots:true})];const c=[];let d;for(const t of l){const{row:e,column:n}=t;if(n===i.firstColumn){d=t.getPositionBefore()}const l=e-i.firstRow;const u=n-i.firstColumn;const h=a[l%s][u%r];const g=h?o.cloneElement(h):null;const m=this._replaceTableSlotCell(t,g,d,o);if(!m){continue}dH(m,e,n,i.lastRow,i.lastColumn,o);c.push(m);d=o.createPositionAfter(m)}const u=parseInt(n.getAttribute("headingRows")||0);const h=parseInt(n.getAttribute("headingColumns")||0);const g=i.firstRow<u&&u<=i.lastRow;const m=i.firstColumn<h&&h<=i.lastColumn;if(g){const t={first:i.firstColumn,last:i.lastColumn};const e=PU(n,u,t,o,i.firstRow);c.push(...e)}if(m){const t={first:i.firstRow,last:i.lastRow};const e=OU(n,h,t,o);c.push(...e)}return c}_replaceTableSlotCell(t,e,n,i){const{cell:o,isAnchor:r}=t;if(r){i.remove(o)}if(!e){return null}i.insert(e,n);return e}getTableIfOnlyTableInContent(t,e){return MU(t,e)}}function MU(t,e){if(!t.is("documentFragment")&&!t.is("element")){return null}if(t.is("element","table")){return t}if(t.childCount==1&&t.getChild(0).is("element","table")){return t.getChild(0)}const n=e.createRangeIn(t);for(const t of n.getItems()){if(t.is("element","table")){const i=e.createRange(n.start,e.createPositionBefore(t));if(e.hasContent(i,{ignoreWhitespaces:true})){return null}const o=e.createRange(e.createPositionAfter(t),n.end);if(e.hasContent(o,{ignoreWhitespaces:true})){return null}return t}}return null}function BU(t,e,n,i){const o=t[0].findAncestor("table");const r=i.getColumnIndexes(t);const s=i.getRowIndexes(t);const a={firstColumn:r.first,lastColumn:r.last,firstRow:s.first,lastRow:s.last};const l=t.length===1;if(l){a.lastRow+=e.height-1;a.lastColumn+=e.width-1;LU(o,a.lastRow+1,a.lastColumn+1,i)}if(l||!i.isSelectionRectangular(t)){zU(o,a,n)}else{a.lastRow=fH(o,a);a.lastColumn=pH(o,a)}return a}function LU(t,e,n,i){const o=i.getColumns(t);const r=i.getRows(t);if(n>o){i.insertColumns(t,{at:o,columns:n-o})}if(e>r){i.insertRows(t,{at:r,rows:e-r})}}function NU(t,e,n){const i=new Array(n).fill(null).map((()=>new Array(e).fill(null)));for(const{column:e,row:n,cell:o}of new qF(t)){i[n][e]=o}return i}function zU(t,e,n){const{firstRow:i,lastRow:o,firstColumn:r,lastColumn:s}=e;const a={first:i,last:o};const l={first:r,last:s};OU(t,r,a,n);OU(t,s+1,a,n);PU(t,i,l,n);PU(t,o+1,l,n,i)}function PU(t,e,n,i,o=0){if(e<1){return}const r=sH(t,e,o);const s=r.filter((({column:t,cellWidth:e})=>RU(t,e,n)));return s.map((({cell:t})=>aH(t,e,i)))}function OU(t,e,n,i){if(e<1){return}const o=lH(t,e);const r=o.filter((({row:t,cellHeight:e})=>RU(t,e,n)));return r.map((({cell:t,column:n})=>cH(t,n,e,i)))}function RU(t,e,n){const i=t+e-1;const{first:o,last:r}=n;const s=t>=o&&t<=r;const a=t<o&&i>=o;return s||a}class VU extends eu{static get pluginName(){return"TableKeyboard"}static get requires(){return[TU,TH]}init(){const t=this.editor.editing.view;const e=t.document;this.listenTo(e,"arrowKey",((...t)=>this._onArrowKey(...t)),{context:"table"});this.listenTo(e,"tab",((...t)=>this._handleTabOnSelectedTable(...t)),{context:"figure"});this.listenTo(e,"tab",((...t)=>this._handleTab(...t)),{context:["th","td"]})}_handleTabOnSelectedTable(t,e){const n=this.editor;const i=n.model.document.selection;const o=i.getSelectedElement();if(!o||!o.is("element","table")){return}e.preventDefault();e.stopPropagation();t.stop();n.model.change((t=>{t.setSelection(t.createRangeIn(o.getChild(0).getChild(0)))}))}_handleTab(t,e){const n=this.editor;const i=this.editor.plugins.get(TH);const o=n.model.document.selection;const r=!e.shiftKey;let s=i.getTableCellsContainingSelection(o)[0];if(!s){s=this.editor.plugins.get("TableSelection").getFocusCell()}if(!s){return}e.preventDefault();e.stopPropagation();t.stop();const a=s.parent;const l=a.parent;const c=l.getChildIndex(a);const d=a.getChildIndex(s);const u=d===0;if(!r&&u&&c===0){n.model.change((t=>{t.setSelection(t.createRangeOn(l))}));return}const h=d===a.childCount-1;const g=c===i.getRows(l)-1;if(r&&g&&h){n.execute("insertTableRowBelow");if(c===i.getRows(l)-1){n.model.change((t=>{t.setSelection(t.createRangeOn(l))}));return}}let m;if(r&&h){const t=l.getChild(c+1);m=t.getChild(0)}else if(!r&&u){const t=l.getChild(c-1);m=t.getChild(t.childCount-1)}else{m=a.getChild(d+(r?1:-1))}n.model.change((t=>{t.setSelection(t.createRangeIn(m))}))}_onArrowKey(t,e){const n=this.editor;const i=e.keyCode;const o=Kl(i,n.locale.contentLanguageDirection);const r=this._handleArrowKeys(o,e.shiftKey);if(r){e.preventDefault();e.stopPropagation();t.stop()}}_handleArrowKeys(t,e){const n=this.editor.plugins.get(TH);const i=this.editor.model;const o=i.document.selection;const r=["right","down"].includes(t);const s=n.getSelectedTableCells(o);if(s.length){let n;if(e){n=this.editor.plugins.get("TableSelection").getFocusCell()}else{n=r?s[s.length-1]:s[0]}this._navigateFromCellInDirection(n,t,e);return true}const a=o.focus.findAncestor("tableCell");if(!a){return false}if(!o.isCollapsed){if(e){if(o.isBackward==r&&!o.containsEntireContent(a)){return false}}else{const t=o.getSelectedElement();if(!t||!i.schema.isObject(t)){return false}}}if(this._isSelectionAtCellEdge(o,a,r)){this._navigateFromCellInDirection(a,t,e);return true}return false}_isSelectionAtCellEdge(t,e,n){const i=this.editor.model;const o=this.editor.model.schema;const r=n?t.getLastPosition():t.getFirstPosition();if(!o.getLimitElement(r).is("element","tableCell")){const t=i.createPositionAt(e,n?"end":0);return t.isTouching(r)}const s=i.createSelection(r);i.modifySelection(s,{direction:n?"forward":"backward"});return r.isEqual(s.focus)}_navigateFromCellInDirection(t,e,n=false){const i=this.editor.model;const o=t.findAncestor("table");const r=[...new qF(o,{includeAllSlots:true})];const{row:s,column:a}=r[r.length-1];const l=r.find((({cell:e})=>e==t));let{row:c,column:d}=l;switch(e){case"left":d--;break;case"up":c--;break;case"right":d+=l.cellWidth;break;case"down":c+=l.cellHeight;break}const u=c<0||c>s;const h=d<0&&c<=0;const g=d>a&&c>=s;if(u||h||g){i.change((t=>{t.setSelection(t.createRangeOn(o))}));return}if(d<0){d=n?0:a;c--}else if(d>a){d=n?a:0;c++}const m=r.find((t=>t.row==c&&t.column==d)).cell;const f=["right","down"].includes(e);const p=this.editor.plugins.get("TableSelection");if(n&&p.isEnabled){const e=p.getAnchorCell()||t;p.setCellSelection(e,m)}else{const t=i.createPositionAt(m,f?0:"end");i.change((e=>{e.setSelection(t)}))}}}class jU extends cf{constructor(t){super(t);this.domEventType=["mousemove","mouseleave"]}onDomEvent(t){this.fire(t.type,t)}}class FU extends eu{static get pluginName(){return"TableMouse"}static get requires(){return[TU,TH]}init(){const t=this.editor;t.editing.view.addObserver(jU);this._enableShiftClickSelection();this._enableMouseDragSelection()}_enableShiftClickSelection(){const t=this.editor;const e=t.plugins.get(TH);let n=false;const i=t.plugins.get(TU);this.listenTo(t.editing.view.document,"mousedown",((o,r)=>{const s=t.model.document.selection;if(!this.isEnabled||!i.isEnabled){return}if(!r.domEvent.shiftKey){return}const a=i.getAnchorCell()||e.getTableCellsContainingSelection(s)[0];if(!a){return}const l=this._getModelTableCellFromDomEvent(r);if(l&&HU(a,l)){n=true;i.setCellSelection(a,l);r.preventDefault()}}));this.listenTo(t.editing.view.document,"mouseup",(()=>{n=false}));this.listenTo(t.editing.view.document,"selectionChange",(t=>{if(n){t.stop()}}),{priority:"highest"})}_enableMouseDragSelection(){const t=this.editor;let e,n;let i=false;let o=false;const r=t.plugins.get(TU);this.listenTo(t.editing.view.document,"mousedown",((t,n)=>{if(!this.isEnabled||!r.isEnabled){return}if(n.domEvent.shiftKey||n.domEvent.ctrlKey||n.domEvent.altKey){return}e=this._getModelTableCellFromDomEvent(n)}));this.listenTo(t.editing.view.document,"mousemove",((t,s)=>{if(!s.domEvent.buttons){return}if(!e){return}const a=this._getModelTableCellFromDomEvent(s);if(a&&HU(e,a)){n=a;if(!i&&n!=e){i=true}}if(!i){return}o=true;r.setCellSelection(e,n);s.preventDefault()}));this.listenTo(t.editing.view.document,"mouseup",(()=>{i=false;o=false;e=null;n=null}));this.listenTo(t.editing.view.document,"selectionChange",(t=>{if(o){t.stop()}}),{priority:"highest"})}_getModelTableCellFromDomEvent(t){const e=t.target;const n=this.editor.editing.view.createPositionAt(e,0);const i=this.editor.editing.mapper.toModelPosition(n);const o=i.parent;return o.findAncestor("tableCell",{includeSelf:true})}}function HU(t,e){return t.parent.parent==e.parent.parent}var UU=n(4104);var WU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};WU.insert="head";WU.singleton=true;var qU=Sc()(UU.Z,WU);const GU=UU.Z.locals||{};class $U extends eu{static get requires(){return[hU,vU,TU,FU,VU,IU,ZD]}static get pluginName(){return"Table"}}function KU(t){t.document.registerPostFixer((e=>YU(e,t)))}function YU(t,e){const n=e.document.differ.getChanges();let i=false;for(const e of n){if(e.type!="insert"){continue}const n=e.position.parent;if(n.is("element","table")||e.name=="table"){const n=e.name=="table"?e.position.nodeAfter:e.position.parent;const o=Array.from(n.getChildren()).filter((t=>t.is("element","caption")));const r=o.shift();if(!r){continue}for(const e of o){t.move(t.createRangeIn(e),r,"end");t.remove(e)}if(r.nextSibling){t.move(t.createRangeOn(r),n,"end");i=true}i=!!o.length||i}}return i}function ZU(t){return!!t&&t.is("element","table")}function QU(t){for(const e of t.getChildren()){if(e.is("element","caption")){return e}}return null}function JU(t){const e=tW(t);if(!e){return null}return QU(e)}function XU(t){const e=t.parent;if(t.name=="figcaption"&&e&&e.name=="figure"&&e.hasClass("table")){return{name:true}}if(t.name=="caption"&&e&&e.name=="table"){return{name:true}}return null}function tW(t){const e=t.getSelectedElement();if(e&&e.is("element","table")){return e}return t.getFirstPosition().findAncestor("table")}class eW extends iu{refresh(){const t=this.editor;const e=tW(t.model.document.selection);this.isEnabled=!!e;if(!this.isEnabled){this.value=false}else{this.value=!!QU(e)}}execute(t={}){const{focusCaptionOnShow:e}=t;this.editor.model.change((t=>{if(this.value){this._hideTableCaption(t)}else{this._showTableCaption(t,e)}}))}_showTableCaption(t,e){const n=this.editor.model;const i=tW(n.document.selection);const o=this.editor.plugins.get("TableCaptionEditing");const r=o._getSavedCaption(i);const s=r||t.createElement("caption");n.insertContent(s,i,"end");if(e){t.setSelection(s,"in")}}_hideTableCaption(t){const e=this.editor.model;const n=tW(e.document.selection);const i=this.editor.plugins.get("TableCaptionEditing");const o=QU(n);i._saveCaption(n,o);e.deleteContent(t.createSelection(o,"on"))}}class nW extends eu{static get pluginName(){return"TableCaptionEditing"}constructor(t){super(t);this._savedCaptionsMap=new WeakMap}init(){const t=this.editor;const e=t.model.schema;const n=t.editing.view;const i=t.t;if(!e.isRegistered("caption")){e.register("caption",{allowIn:"table",allowContentOf:"$block",isLimit:true})}else{e.extend("caption",{allowIn:"table"})}t.commands.add("toggleTableCaption",new eW(this.editor));t.conversion.for("upcast").elementToElement({view:XU,model:"caption"});t.conversion.for("dataDowncast").elementToElement({model:"caption",view:(t,{writer:e})=>{if(!ZU(t.parent)){return null}return e.createContainerElement("figcaption")}});t.conversion.for("editingDowncast").elementToElement({model:"caption",view:(t,{writer:e})=>{if(!ZU(t.parent)){return null}const o=e.createEditableElement("figcaption");e.setCustomProperty("tableCaption",true,o);mu({view:n,element:o,text:i("Enter table caption"),keepOnFocus:true});return pD(o,e)}});KU(t.model)}_getSavedCaption(t){const e=this._savedCaptionsMap.get(t);return e?$p.fromJSON(e):null}_saveCaption(t,e){this._savedCaptionsMap.set(t,e.toJSON())}}class iW extends eu{static get pluginName(){return"TableCaptionUI"}init(){const t=this.editor;const e=t.editing.view;const n=t.t;t.ui.componentFactory.add("toggleTableCaption",(i=>{const o=t.commands.get("toggleTableCaption");const r=new kd(i);r.set({icon:J_.caption,tooltip:true,isToggleable:true});r.bind("isOn","isEnabled").to(o,"value","isEnabled");r.bind("label").to(o,"value",(t=>t?n("Toggle caption off"):n("Toggle caption on")));this.listenTo(r,"execute",(()=>{t.execute("toggleTableCaption",{focusCaptionOnShow:true});if(o.value){const n=JU(t.model.document.selection);const i=t.editing.mapper.toViewElement(n);if(!i){return}e.scrollToTheSelection();e.change((t=>{t.addClass("table__caption_highlighted",i)}))}t.editing.view.focus()}));return r}))}}var oW=n(9888);var rW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};rW.insert="head";rW.singleton=true;var sW=Sc()(oW.Z,rW);const aW=oW.Z.locals||{};class lW extends eu{static get pluginName(){return"TableCaption"}static get requires(){return[nW,iW]}}var cW=n(4082);var dW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};dW.insert="head";dW.singleton=true;var uW=Sc()(cW.Z,dW);const hW=cW.Z.locals||{};class gW extends Lc{constructor(t,e){super(t);this.set("value","");this.set("isReadOnly",false);this.set("isFocused",false);this.set("isEmpty",true);this.options=e;this.focusTracker=new uc;this._focusables=new xc;this.dropdownView=this._createDropdownView();this.inputView=this._createInputTextView();this.keystrokes=new hc;this._stillTyping=false;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.setTemplate({tag:"div",attributes:{class:["ck","ck-input-color"]},children:[this.dropdownView,this.inputView]});this.on("change:value",((t,e,n)=>this._setInputValue(n)))}render(){super.render();this.keystrokes.listenTo(this.dropdownView.panelView.element)}focus(){this.inputView.focus()}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}_createDropdownView(){const t=this.locale;const e=t.t;const n=this.bindTemplate;const i=this._createColorGrid(t);const o=yv(t);const r=new Lc;const s=this._createRemoveColorButton();r.setTemplate({tag:"span",attributes:{class:["ck","ck-input-color__button__preview"],style:{backgroundColor:n.to("value")}},children:[{tag:"span",attributes:{class:["ck","ck-input-color__button__preview__no-color-indicator",n.if("value","ck-hidden",(t=>t!=""))]}}]});o.buttonView.extendTemplate({attributes:{class:"ck-input-color__button"}});o.buttonView.children.add(r);o.buttonView.label=e("Color picker");o.buttonView.tooltip=true;o.panelPosition=t.uiLanguageDirection==="rtl"?"se":"sw";o.panelView.children.add(s);o.panelView.children.add(i);o.bind("isEnabled").to(this,"isReadOnly",(t=>!t));this._focusables.add(s);this._focusables.add(i);this.focusTracker.add(s.element);this.focusTracker.add(i.element);return o}_createInputTextView(){const t=this.locale;const e=new Ey(t);e.extendTemplate({on:{blur:e.bindTemplate.to("blur")}});e.value=this.value;e.bind("isReadOnly","hasError").to(this);this.bind("isFocused","isEmpty").to(e);e.on("input",(()=>{const t=e.element.value;const n=this.options.colorDefinitions.find((e=>t===e.label));this._stillTyping=true;this.value=n&&n.color||t}));e.on("blur",(()=>{this._stillTyping=false;this._setInputValue(e.element.value)}));e.delegate("input").to(this);return e}_createRemoveColorButton(){const t=this.locale;const e=t.t;const n=new kd(t);const i=this.options.defaultColorValue||"";const o=i?e("Restore default"):e("Remove color");n.class="ck-input-color__remove-color";n.withText=true;n.icon=J_.eraser;n.label=o;n.on("execute",(()=>{this.value=i;this.dropdownView.isOpen=false;this.fire("input")}));return n}_createColorGrid(t){const e=new Ld(t,{colorDefinitions:this.options.colorDefinitions,columns:this.options.columns});e.on("execute",((t,e)=>{this.value=e.value;this.dropdownView.isOpen=false;this.fire("input")}));e.bind("selectedColor").to(this,"value");return e}_setInputValue(t){if(!this._stillTyping){const e=mW(t);const n=this.options.colorDefinitions.find((t=>e===mW(t.color)));if(n){this.inputView.value=n.label}else{this.inputView.value=t||""}}}}function mW(t){return t.replace(/([(,])\s+/g,"$1").replace(/^\s+|\s+(?=[),\s]|$)/g,"").replace(/,|\s/g," ")}const fW=t=>t==="";function pW(t){return{none:t("None"),solid:t("Solid"),dotted:t("Dotted"),dashed:t("Dashed"),double:t("Double"),groove:t("Groove"),ridge:t("Ridge"),inset:t("Inset"),outset:t("Outset")}}function bW(t){return t('The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".')}function kW(t){return t('The value is invalid. Try "10px" or "2em" or simply "2".')}function wW(t){t=t.trim();return fW(t)||xC(t)}function AW(t){t=t.trim();return fW(t)||EW(t)||TC(t)||MC(t)}function CW(t){t=t.trim();return fW(t)||EW(t)||TC(t)}function _W(t,e){const n=new cc;const i=pW(t.t);for(const o in i){const r={type:"button",model:new Ry({_borderStyleValue:o,label:i[o],withText:true})};if(o==="none"){r.model.bind("isOn").to(t,"borderStyle",(t=>{if(e==="none"){return!t}return t===o}))}else{r.model.bind("isOn").to(t,"borderStyle",(t=>t===o))}n.add(r)}return n}function vW(t){const{view:e,icons:n,toolbar:i,labels:o,propertyName:r,nameToValue:s,defaultValue:a}=t;for(const t in o){const l=new kd(e.locale);l.set({label:o[t],icon:n[t],tooltip:o[t]});const c=s?s(t):t;l.bind("isOn").to(e,r,(t=>{let e=t;if(t===""&&a){e=a}return c===e}));l.on("execute",(()=>{e[r]=c}));i.items.add(l)}}const yW=[{color:"hsl(0, 0%, 0%)",label:"Black"},{color:"hsl(0, 0%, 30%)",label:"Dim grey"},{color:"hsl(0, 0%, 60%)",label:"Grey"},{color:"hsl(0, 0%, 90%)",label:"Light grey"},{color:"hsl(0, 0%, 100%)",label:"White",hasBorder:true},{color:"hsl(0, 75%, 60%)",label:"Red"},{color:"hsl(30, 75%, 60%)",label:"Orange"},{color:"hsl(60, 75%, 60%)",label:"Yellow"},{color:"hsl(90, 75%, 60%)",label:"Light green"},{color:"hsl(120, 75%, 60%)",label:"Green"},{color:"hsl(150, 75%, 60%)",label:"Aquamarine"},{color:"hsl(180, 75%, 60%)",label:"Turquoise"},{color:"hsl(210, 75%, 60%)",label:"Light blue"},{color:"hsl(240, 75%, 60%)",label:"Blue"},{color:"hsl(270, 75%, 60%)",label:"Purple"}];function xW(t){return(e,n,i)=>{const o=new gW(e.locale,{colorDefinitions:DW(t.colorConfig),columns:t.columns,defaultColorValue:t.defaultColorValue});o.inputView.set({id:n,ariaDescribedById:i});o.bind("isReadOnly").to(e,"isEnabled",(t=>!t));o.bind("hasError").to(e,"errorText",(t=>!!t));o.on("input",(()=>{e.errorText=null}));e.bind("isEmpty","isFocused").to(o);return o}}function EW(t){const e=parseFloat(t);return!Number.isNaN(e)&&t===String(e)}function DW(t){return t.map((t=>({color:t.model,label:t.label,options:{hasBorder:t.hasBorder}})))}var SW=n(9865);var TW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};TW.insert="head";TW.singleton=true;var IW=Sc()(SW.Z,TW);const MW=SW.Z.locals||{};class BW extends Lc{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("class",e.class||null);this.children=this.createCollection();if(e.children){e.children.forEach((t=>this.children.add(t)))}this.set("_role",null);this.set("_ariaLabelledBy",null);if(e.labelView){this.set({_role:"group",_ariaLabelledBy:e.labelView.id})}this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__row",n.to("class")],role:n.to("_role"),"aria-labelledby":n.to("_ariaLabelledBy")},children:this.children})}}var LW=n(4880);var NW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};NW.insert="head";NW.singleton=true;var zW=Sc()(LW.Z,NW);const PW=LW.Z.locals||{};var OW=n(198);var RW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};RW.insert="head";RW.singleton=true;var VW=Sc()(OW.Z,RW);const jW=OW.Z.locals||{};var FW=n(5737);var HW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};HW.insert="head";HW.singleton=true;var UW=Sc()(FW.Z,HW);const WW=FW.Z.locals||{};const qW={left:J_.alignLeft,center:J_.alignCenter,right:J_.alignRight,justify:J_.alignJustify,top:J_.alignTop,middle:J_.alignMiddle,bottom:J_.alignBottom};class GW extends Lc{constructor(t,e){super(t);this.set({borderStyle:"",borderWidth:"",borderColor:"",padding:"",backgroundColor:"",width:"",height:"",horizontalAlignment:"",verticalAlignment:""});this.options=e;const{borderStyleDropdown:n,borderWidthInput:i,borderColorInput:o,borderRowLabel:r}=this._createBorderFields();const{backgroundRowLabel:s,backgroundInput:a}=this._createBackgroundFields();const{widthInput:l,operatorLabel:c,heightInput:d,dimensionsLabel:u}=this._createDimensionFields();const{horizontalAlignmentToolbar:h,verticalAlignmentToolbar:g,alignmentLabel:m}=this._createAlignmentFields();this.focusTracker=new uc;this.keystrokes=new hc;this.children=this.createCollection();this.borderStyleDropdown=n;this.borderWidthInput=i;this.borderColorInput=o;this.backgroundInput=a;this.paddingInput=this._createPaddingField();this.widthInput=l;this.heightInput=d;this.horizontalAlignmentToolbar=h;this.verticalAlignmentToolbar=g;const{saveButtonView:f,cancelButtonView:p}=this._createActionButtons();this.saveButtonView=f;this.cancelButtonView=p;this._focusables=new xc;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.children.add(new wy(t,{label:this.t("Cell properties")}));this.children.add(new BW(t,{labelView:r,children:[r,n,o,i],class:"ck-table-form__border-row"}));this.children.add(new BW(t,{labelView:s,children:[s,a],class:"ck-table-form__background-row"}));this.children.add(new BW(t,{children:[new BW(t,{labelView:u,children:[u,l,c,d],class:"ck-table-form__dimensions-row"}),new BW(t,{children:[this.paddingInput],class:"ck-table-cell-properties-form__padding-row"})]}));this.children.add(new BW(t,{labelView:m,children:[m,h,g],class:"ck-table-cell-properties-form__alignment-row"}));this.children.add(new BW(t,{children:[this.saveButtonView,this.cancelButtonView],class:"ck-table-form__action-row"}));this.setTemplate({tag:"form",attributes:{class:["ck","ck-form","ck-table-form","ck-table-cell-properties-form"],tabindex:"-1"},children:this.children})}render(){super.render();o({view:this});[this.borderStyleDropdown,this.borderColorInput,this.borderColorInput.fieldView.dropdownView.buttonView,this.borderWidthInput,this.backgroundInput,this.backgroundInput.fieldView.dropdownView.buttonView,this.widthInput,this.heightInput,this.paddingInput,this.horizontalAlignmentToolbar,this.verticalAlignmentToolbar,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()}_createBorderFields(){const t=this.options.defaultTableCellProperties;const e={style:t.borderStyle,width:t.borderWidth,color:t.borderColor};const n=xW({colorConfig:this.options.borderColors,columns:5,defaultColorValue:e.color});const i=this.locale;const o=this.t;const r=new uy(i);r.text=o("Border");const s=pW(o);const a=new Ly(i,Py);a.set({label:o("Style"),class:"ck-table-form__border-style"});a.fieldView.buttonView.set({isOn:false,withText:true,tooltip:o("Style")});a.fieldView.buttonView.bind("label").to(this,"borderStyle",(t=>s[t?t:"none"]));a.fieldView.on("execute",(t=>{this.borderStyle=t.source._borderStyleValue}));a.bind("isEmpty").to(this,"borderStyle",(t=>!t));Dv(a.fieldView,_W(this,e.style));const l=new Ly(i,Ny);l.set({label:o("Width"),class:"ck-table-form__border-width"});l.fieldView.bind("value").to(this,"borderWidth");l.bind("isEnabled").to(this,"borderStyle",$W);l.fieldView.on("input",(()=>{this.borderWidth=l.fieldView.element.value}));const c=new Ly(i,n);c.set({label:o("Color"),class:"ck-table-form__border-color"});c.fieldView.bind("value").to(this,"borderColor");c.bind("isEnabled").to(this,"borderStyle",$W);c.fieldView.on("input",(()=>{this.borderColor=c.fieldView.value}));this.on("change:borderStyle",((t,n,i,o)=>{if(!$W(i)){this.borderColor="";this.borderWidth=""}if(!$W(o)){this.borderColor=e.color;this.borderWidth=e.width}}));return{borderRowLabel:r,borderStyleDropdown:a,borderColorInput:c,borderWidthInput:l}}_createBackgroundFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Background");const i=xW({colorConfig:this.options.backgroundColors,columns:5,defaultColorValue:this.options.defaultTableCellProperties.backgroundColor});const o=new Ly(t,i);o.set({label:e("Color"),class:"ck-table-cell-properties-form__background"});o.fieldView.bind("value").to(this,"backgroundColor");o.fieldView.on("input",(()=>{this.backgroundColor=o.fieldView.value}));return{backgroundRowLabel:n,backgroundInput:o}}_createDimensionFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Dimensions");const i=new Ly(t,Ny);i.set({label:e("Width"),class:"ck-table-form__dimensions-row__width"});i.fieldView.bind("value").to(this,"width");i.fieldView.on("input",(()=>{this.width=i.fieldView.element.value}));const o=new Lc(t);o.setTemplate({tag:"span",attributes:{class:["ck-table-form__dimension-operator"]},children:[{text:"×"}]});const r=new Ly(t,Ny);r.set({label:e("Height"),class:"ck-table-form__dimensions-row__height"});r.fieldView.bind("value").to(this,"height");r.fieldView.on("input",(()=>{this.height=r.fieldView.element.value}));return{dimensionsLabel:n,widthInput:i,operatorLabel:o,heightInput:r}}_createPaddingField(){const t=this.locale;const e=this.t;const n=new Ly(t,Ny);n.set({label:e("Padding"),class:"ck-table-cell-properties-form__padding"});n.fieldView.bind("value").to(this,"padding");n.fieldView.on("input",(()=>{this.padding=n.fieldView.element.value}));return n}_createAlignmentFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Table cell text alignment");const i=new rv(t);const o=this.locale.contentLanguageDirection==="rtl";i.set({isCompact:true,ariaLabel:e("Horizontal text alignment toolbar")});vW({view:this,icons:qW,toolbar:i,labels:this._horizontalAlignmentLabels,propertyName:"horizontalAlignment",nameToValue:t=>{if(o){if(t==="left"){return"right"}else if(t==="right"){return"left"}}return t},defaultValue:this.options.defaultTableCellProperties.horizontalAlignment});const r=new rv(t);r.set({isCompact:true,ariaLabel:e("Vertical text alignment toolbar")});vW({view:this,icons:qW,toolbar:r,labels:this._verticalAlignmentLabels,propertyName:"verticalAlignment",defaultValue:this.options.defaultTableCellProperties.verticalAlignment});return{horizontalAlignmentToolbar:i,verticalAlignmentToolbar:r,alignmentLabel:n}}_createActionButtons(){const t=this.locale;const e=this.t;const n=new kd(t);const i=new kd(t);const o=[this.borderWidthInput,this.borderColorInput,this.backgroundInput,this.paddingInput];n.set({label:e("Save"),icon:J_.check,class:"ck-button-save",type:"submit",withText:true});n.bind("isEnabled").toMany(o,"errorText",((...t)=>t.every((t=>!t))));i.set({label:e("Cancel"),icon:J_.cancel,class:"ck-button-cancel",withText:true});i.delegate("execute").to(this,"cancel");return{saveButtonView:n,cancelButtonView:i}}get _horizontalAlignmentLabels(){const t=this.locale;const e=this.t;const n=e("Align cell text to the left");const i=e("Align cell text to the center");const o=e("Align cell text to the right");const r=e("Justify cell text");if(t.uiLanguageDirection==="rtl"){return{right:o,center:i,left:n,justify:r}}else{return{left:n,center:i,right:o,justify:r}}}get _verticalAlignmentLabels(){const t=this.t;return{top:t("Align cell text to the top"),middle:t("Align cell text to the middle"),bottom:t("Align cell text to the bottom")}}}function $W(t){return t!=="none"}function KW(t){const e=t.getSelectedElement();if(e&&ZW(e)){return e}return null}function YW(t){const e=t.getFirstPosition();if(!e){return null}let n=e.parent;while(n){if(n.is("element")&&ZW(n)){return n}n=n.parent}return null}function ZW(t){return!!t.getCustomProperty("table")&&cD(t)}const QW=Uv.defaultPositions;const JW=[QW.northArrowSouth,QW.northArrowSouthWest,QW.northArrowSouthEast,QW.southArrowNorth,QW.southArrowNorthWest,QW.southArrowNorthEast,QW.viewportStickyNorth];function XW(t,e){const n=t.plugins.get("ContextualBalloon");if(YW(t.editing.view.document.selection)){let i;if(e==="cell"){i=eq(t)}else{i=tq(t)}n.updatePosition(i)}}function tq(t){const e=t.model.document.selection.getFirstPosition();const n=e.findAncestor("table");const i=t.editing.mapper.toViewElement(n);return{target:t.editing.view.domConverter.mapViewToDom(i),positions:JW}}function eq(t){const e=t.editing.mapper;const n=t.editing.view.domConverter;const i=t.model.document.selection;if(i.rangeCount>1){return{target:()=>iq(i.getRanges(),t),positions:JW}}const o=nq(i.getFirstPosition());const r=e.toViewElement(o);return{target:n.mapViewToDom(r),positions:JW}}function nq(t){const e=t.nodeAfter&&t.nodeAfter.is("element","tableCell");return e?t.nodeAfter:t.findAncestor("tableCell")}function iq(t,e){const n=e.editing.mapper;const i=e.editing.view.domConverter;const o=Array.from(t).map((t=>{const e=nq(t.start);const o=n.toViewElement(e);return new dl(i.mapViewToDom(o))}));return dl.getBoundingRect(o)}const oq='$${Delta.CKEditor.Icon[72]}$$';function rq(t){if(!t||!at(t)){return t}const{top:e,right:n,bottom:i,left:o}=t;if(e==n&&n==i&&i==o){return e}}function sq(t,e){const n=parseFloat(t);if(Number.isNaN(n)){return t}if(String(n)!==String(t)){return t}return`${n}${e}`}function aq(t,e={}){const n=Object.assign({borderStyle:"none",borderWidth:"",borderColor:"",backgroundColor:"",width:"",height:""},t);if(e.includeAlignmentProperty&&!n.alignment){n.alignment="center"}if(e.includePaddingProperty&&!n.padding){n.padding=""}if(e.includeVerticalAlignmentProperty&&!n.verticalAlignment){n.verticalAlignment="middle"}if(e.includeHorizontalAlignmentProperty&&!n.horizontalAlignment){n.horizontalAlignment=e.isRightToLeftContent?"right":"left"}return n}const lq=500;const cq={borderStyle:"tableCellBorderStyle",borderColor:"tableCellBorderColor",borderWidth:"tableCellBorderWidth",height:"tableCellHeight",width:"tableCellWidth",padding:"tableCellPadding",backgroundColor:"tableCellBackgroundColor",horizontalAlignment:"tableCellHorizontalAlignment",verticalAlignment:"tableCellVerticalAlignment"};class dq extends eu{static get requires(){return[Zy]}static get pluginName(){return"TableCellPropertiesUI"}constructor(t){super(t);t.config.define("table.tableCellProperties",{borderColors:yW,backgroundColors:yW})}init(){const t=this.editor;const e=t.t;this._defaultTableCellProperties=aq(t.config.get("table.tableCellProperties.defaultProperties"),{includeVerticalAlignmentProperty:true,includeHorizontalAlignmentProperty:true,includePaddingProperty:true,isRightToLeftContent:t.locale.contentLanguageDirection==="rtl"});this._balloon=t.plugins.get(Zy);this.view=null;this._undoStepBatch=null;this._isReady=false;t.ui.componentFactory.add("tableCellProperties",(n=>{const i=new kd(n);i.set({label:e("Cell properties"),icon:oq,tooltip:true});this.listenTo(i,"execute",(()=>this._showView()));const o=Object.values(cq).map((e=>t.commands.get(e)));i.bind("isEnabled").toMany(o,"isEnabled",((...t)=>t.some((t=>t))));return i}))}destroy(){super.destroy();if(this.view){this.view.destroy()}}_createPropertiesView(){const e=this.editor;const n=e.config.get("table.tableCellProperties");const i=xd(n.borderColors);const o=yd(e.locale,i);const r=xd(n.backgroundColors);const s=yd(e.locale,r);const a=new GW(e.locale,{borderColors:o,backgroundColors:s,defaultTableCellProperties:this._defaultTableCellProperties});const l=e.t;a.render();this.listenTo(a,"submit",(()=>{this._hideView()}));this.listenTo(a,"cancel",(()=>{if(this._undoStepBatch.operations.length){e.execute("undo",this._undoStepBatch)}this._hideView()}));a.keystrokes.set("Esc",((t,e)=>{this._hideView();e()}));t({emitter:a,activator:()=>this._isViewInBalloon,contextElements:[this._balloon.view.element],callback:()=>this._hideView()});const c=bW(l);const d=kW(l);a.on("change:borderStyle",this._getPropertyChangeCallback("tableCellBorderStyle",this._defaultTableCellProperties.borderStyle));a.on("change:borderColor",this._getValidatedPropertyChangeCallback({viewField:a.borderColorInput,commandName:"tableCellBorderColor",errorText:c,validator:wW,defaultValue:this._defaultTableCellProperties.borderColor}));a.on("change:borderWidth",this._getValidatedPropertyChangeCallback({viewField:a.borderWidthInput,commandName:"tableCellBorderWidth",errorText:d,validator:CW,defaultValue:this._defaultTableCellProperties.borderWidth}));a.on("change:padding",this._getValidatedPropertyChangeCallback({viewField:a.paddingInput,commandName:"tableCellPadding",errorText:d,validator:AW,defaultValue:this._defaultTableCellProperties.padding}));a.on("change:width",this._getValidatedPropertyChangeCallback({viewField:a.widthInput,commandName:"tableCellWidth",errorText:d,validator:AW,defaultValue:this._defaultTableCellProperties.width}));a.on("change:height",this._getValidatedPropertyChangeCallback({viewField:a.heightInput,commandName:"tableCellHeight",errorText:d,validator:AW,defaultValue:this._defaultTableCellProperties.height}));a.on("change:backgroundColor",this._getValidatedPropertyChangeCallback({viewField:a.backgroundInput,commandName:"tableCellBackgroundColor",errorText:c,validator:wW,defaultValue:this._defaultTableCellProperties.backgroundColor}));a.on("change:horizontalAlignment",this._getPropertyChangeCallback("tableCellHorizontalAlignment",this._defaultTableCellProperties.horizontalAlignment));a.on("change:verticalAlignment",this._getPropertyChangeCallback("tableCellVerticalAlignment",this._defaultTableCellProperties.verticalAlignment));return a}_fillViewFormFromCommandValues(){const t=this.editor.commands;const e=t.get("tableCellBorderStyle");Object.entries(cq).map((([e,n])=>{const i=this._defaultTableCellProperties[e]||"";return[e,t.get(n).value||i]})).forEach((([t,n])=>{if((t==="borderColor"||t==="borderWidth")&&e.value==="none"){return}this.view.set(t,n)}));this._isReady=true}_showView(){const t=this.editor;if(!this.view){this.view=this._createPropertiesView()}this.listenTo(t.ui,"update",(()=>{this._updateView()}));this._fillViewFormFromCommandValues();this._balloon.add({view:this.view,position:eq(t)});this._undoStepBatch=t.model.createBatch();this.view.focus()}_hideView(){const t=this.editor;this.stopListening(t.ui,"update");this._isReady=false;this.view.saveButtonView.focus();this._balloon.remove(this.view);this.editor.editing.view.focus()}_updateView(){const t=this.editor;const e=t.editing.view.document;if(!YW(e.selection)){this._hideView()}else if(this._isViewVisible){XW(t,"cell")}}get _isViewVisible(){return!!this.view&&this._balloon.visibleView===this.view}get _isViewInBalloon(){return!!this.view&&this._balloon.hasView(this.view)}_getPropertyChangeCallback(t){return(e,n,i)=>{if(!this._isReady){return}this.editor.execute(t,{value:i,batch:this._undoStepBatch})}}_getValidatedPropertyChangeCallback(t){const{commandName:e,viewField:n,validator:i,errorText:o}=t;const r=If((()=>{n.errorText=o}),lq);return(t,o,s)=>{r.cancel();if(!this._isReady){return}if(i(s)){this.editor.execute(e,{value:s,batch:this._undoStepBatch});n.errorText=null}else{r()}}}}class uq extends iu{constructor(t,e,n){super(t);this.attributeName=e;this._defaultValue=n}refresh(){const t=this.editor;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.model.document.selection);this.isEnabled=!!n.length;this.value=this._getSingleValue(n)}execute(t={}){const{value:e,batch:n}=t;const i=this.editor.model;const o=this.editor.plugins.get("TableUtils");const r=o.getSelectionAffectedTableCells(i.document.selection);const s=this._getValueToSet(e);i.enqueueChange(n,(t=>{if(s){r.forEach((e=>t.setAttribute(this.attributeName,s,e)))}else{r.forEach((e=>t.removeAttribute(this.attributeName,e)))}}))}_getAttribute(t){if(!t){return}const e=t.getAttribute(this.attributeName);if(e===this._defaultValue){return}return e}_getValueToSet(t){if(t===this._defaultValue){return}return t}_getSingleValue(t){const e=this._getAttribute(t[0]);const n=t.every((t=>this._getAttribute(t)===e));return n?e:undefined}}class hq extends uq{constructor(t,e){super(t,"tableCellWidth",e)}_getValueToSet(t){t=sq(t,"px");if(t===this._defaultValue){return}return t}}class gq extends eu{static get pluginName(){return"TableCellWidthEditing"}static get requires(){return[hU]}init(){const t=this.editor;const e=aq(t.config.get("table.tableCellProperties.defaultProperties"));OF(t.model.schema,t.conversion,{modelAttribute:"tableCellWidth",styleName:"width",defaultValue:e.width});t.commands.add("tableCellWidth",new hq(t,e.width))}}class mq extends uq{constructor(t,e){super(t,"tableCellPadding",e)}_getAttribute(t){if(!t){return}const e=rq(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}_getValueToSet(t){t=sq(t,"px");if(t===this._defaultValue){return}return t}}class fq extends uq{constructor(t,e){super(t,"tableCellHeight",e)}_getValueToSet(t){t=sq(t,"px");if(t===this._defaultValue){return null}return t}}class pq extends uq{constructor(t,e){super(t,"tableCellBackgroundColor",e)}}class bq extends uq{constructor(t,e){super(t,"tableCellVerticalAlignment",e)}}class kq extends uq{constructor(t,e){super(t,"tableCellHorizontalAlignment",e)}}class wq extends uq{constructor(t,e){super(t,"tableCellBorderStyle",e)}_getAttribute(t){if(!t){return}const e=rq(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class Aq extends uq{constructor(t,e){super(t,"tableCellBorderColor",e)}_getAttribute(t){if(!t){return}const e=rq(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class Cq extends uq{constructor(t,e){super(t,"tableCellBorderWidth",e)}_getAttribute(t){if(!t){return}const e=rq(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}_getValueToSet(t){t=sq(t,"px");if(t===this._defaultValue){return}return t}}const _q=/^(top|middle|bottom)$/;const vq=/^(left|center|right|justify)$/;class yq extends eu{static get pluginName(){return"TableCellPropertiesEditing"}static get requires(){return[hU,gq]}init(){const t=this.editor;const e=t.model.schema;const n=t.conversion;t.config.define("table.tableCellProperties.defaultProperties",{});const i=aq(t.config.get("table.tableCellProperties.defaultProperties"),{includeVerticalAlignmentProperty:true,includeHorizontalAlignmentProperty:true,includePaddingProperty:true,isRightToLeftContent:t.locale.contentLanguageDirection==="rtl"});t.data.addStyleProcessorRules(YC);xq(e,n,{color:i.borderColor,style:i.borderStyle,width:i.borderWidth});t.commands.add("tableCellBorderStyle",new wq(t,i.borderStyle));t.commands.add("tableCellBorderColor",new Aq(t,i.borderColor));t.commands.add("tableCellBorderWidth",new Cq(t,i.borderWidth));OF(e,n,{modelAttribute:"tableCellHeight",styleName:"height",defaultValue:i.height});t.commands.add("tableCellHeight",new fq(t,i.height));t.data.addStyleProcessorRules(l_);OF(e,n,{modelAttribute:"tableCellPadding",styleName:"padding",reduceBoxSides:true,defaultValue:i.padding});t.commands.add("tableCellPadding",new mq(t,i.padding));t.data.addStyleProcessorRules(qC);OF(e,n,{modelAttribute:"tableCellBackgroundColor",styleName:"background-color",defaultValue:i.backgroundColor});t.commands.add("tableCellBackgroundColor",new pq(t,i.backgroundColor));Eq(e,n,i.horizontalAlignment);t.commands.add("tableCellHorizontalAlignment",new kq(t,i.horizontalAlignment));Dq(e,n,i.verticalAlignment);t.commands.add("tableCellVerticalAlignment",new bq(t,i.verticalAlignment))}}function xq(t,e,n){const i={width:"tableCellBorderWidth",color:"tableCellBorderColor",style:"tableCellBorderStyle"};t.extend("tableCell",{allowAttributes:Object.values(i)});IF(e,"td",i,n);IF(e,"th",i,n);MF(e,{modelElement:"tableCell",modelAttribute:i.style,styleName:"border-style"});MF(e,{modelElement:"tableCell",modelAttribute:i.color,styleName:"border-color"});MF(e,{modelElement:"tableCell",modelAttribute:i.width,styleName:"border-width"})}function Eq(t,e,n){t.extend("tableCell",{allowAttributes:["tableCellHorizontalAlignment"]});e.for("downcast").attributeToAttribute({model:{name:"tableCell",key:"tableCellHorizontalAlignment"},view:t=>({key:"style",value:{"text-align":t}})});e.for("upcast").attributeToAttribute({view:{name:/^(td|th)$/,styles:{"text-align":vq}},model:{key:"tableCellHorizontalAlignment",value:t=>{const e=t.getStyle("text-align");return e===n?null:e}}}).attributeToAttribute({view:{name:/^(td|th)$/,attributes:{align:vq}},model:{key:"tableCellHorizontalAlignment",value:t=>{const e=t.getAttribute("align");return e===n?null:e}}})}function Dq(t,e,n){t.extend("tableCell",{allowAttributes:["tableCellVerticalAlignment"]});e.for("downcast").attributeToAttribute({model:{name:"tableCell",key:"tableCellVerticalAlignment"},view:t=>({key:"style",value:{"vertical-align":t}})});e.for("upcast").attributeToAttribute({view:{name:/^(td|th)$/,styles:{"vertical-align":_q}},model:{key:"tableCellVerticalAlignment",value:t=>{const e=t.getStyle("vertical-align");return e===n?null:e}}}).attributeToAttribute({view:{name:/^(td|th)$/,attributes:{valign:_q}},model:{key:"tableCellVerticalAlignment",value:t=>{const e=t.getAttribute("valign");return e===n?null:e}}})}class Sq extends eu{static get pluginName(){return"TableCellProperties"}static get requires(){return[yq,dq]}}class Tq extends iu{constructor(t,e,n){super(t);this.attributeName=e;this._defaultValue=n}refresh(){const t=this.editor;const e=t.model.document.selection;const n=e.getFirstPosition().findAncestor("table");this.isEnabled=!!n;this.value=this._getValue(n)}execute(t={}){const e=this.editor.model;const n=e.document.selection;const{value:i,batch:o}=t;const r=n.getFirstPosition().findAncestor("table");const s=this._getValueToSet(i);e.enqueueChange(o,(t=>{if(s){t.setAttribute(this.attributeName,s,r)}else{t.removeAttribute(this.attributeName,r)}}))}_getValue(t){if(!t){return}const e=t.getAttribute(this.attributeName);if(e===this._defaultValue){return}return e}_getValueToSet(t){if(t===this._defaultValue){return}return t}}class Iq extends Tq{constructor(t,e){super(t,"tableWidth",e)}refresh(){this.isEnabled=true}execute(t={}){const e=this.editor.model;const n=t.table||e.document.selection.getSelectedElement();const{tableWidth:i,columnWidths:o}=t;e.change((t=>{if(i){t.setAttribute(this.attributeName,i,n)}else{t.removeAttribute(this.attributeName,n)}if(o){t.setAttribute("columnWidths",o,n)}else{t.removeAttribute("columnWidths",n)}}))}}class Mq extends Tq{constructor(t,e){super(t,"columnWidths",e)}refresh(){this.isEnabled=true}execute(t={}){const e=this.editor.model;const n=t.table||e.document.selection.getSelectedElement();const{columnWidths:i}=t;e.change((t=>{if(i){t.setAttribute(this.attributeName,i,n)}else{t.removeAttribute(this.attributeName,n)}}))}}const Bq=5;const Lq=40;const Nq=2;function zq(t){const e=new Set;for(const n of t.document.differ.getChanges()){let i=null;switch(n.type){case"insert":i=["table","tableRow","tableCell"].includes(n.name)?n.position:null;break;case"remove":i=["tableRow","tableCell"].includes(n.name)?n.position:null;break;case"attribute":if(n.range.start.nodeAfter){i=["table","tableRow","tableCell"].includes(n.range.start.nodeAfter.name)?n.range.start:null}break}if(!i){continue}const o=i.nodeAfter&&i.nodeAfter.name==="table"?i.nodeAfter:i.findAncestor("table");for(const n of t.createRangeOn(o).getItems()){if(n.is("element")&&n.name==="table"&&n.hasAttribute("columnWidths")){e.add(n)}}}return e}function Pq(t,e){return Lq*100/Oq(t,e)}function Oq(t,e){const n=Rq(t,"tbody",e)||Rq(t,"thead",e);const i=e.editing.view.domConverter.mapViewToDom(n);return Vq(i)}function Rq(t,e,n){const i=n.editing.mapper.toViewElement(t);const o=[...i.getChildren()].find((t=>t.is("element","table")));return[...o.getChildren()].find((t=>t.is("element",e)))}function Vq(t){const e=il.window.getComputedStyle(t);if(e.boxSizing==="border-box"){return parseFloat(e.width)-parseFloat(e.paddingLeft)-parseFloat(e.paddingRight)-parseFloat(e.borderLeftWidth)-parseFloat(e.borderRightWidth)}else{return parseFloat(e.width)}}function jq(t,e){const n=e.getCellLocation(t).column;const i=t.getAttribute("colspan")||1;return{leftEdge:n,rightEdge:n+i-1}}function Fq(t){const e=Math.pow(10,Nq);const n=parseFloat(t);return Math.round(n*e)/e}function Hq(t,e,n){if(t<=e){return Fq(e)}if(t>=n){return Fq(n)}return Fq(t)}function Uq(t,e){return Array(t).fill(e)}function Wq(t){return t.map((t=>parseFloat(t))).filter((t=>!Number.isNaN(t))).reduce(((t,e)=>t+e),0)}function qq(t){t=Gq(t);const e=Wq(t);if(e===100){return t}return t.map((t=>Fq(t*100/e))).map(((t,e,n)=>{const i=e===n.length-1;if(!i){return t}const o=Wq(n);return Fq(t+100-o)}))}function Gq(t){const e=t.filter((t=>t==="auto")).length;if(e===0){return t.map((t=>Fq(t)))}const n=Wq(t);const i=Math.max((100-n)/e,Bq);return t.map((t=>t==="auto"?i:t)).map((t=>Fq(t)))}function $q(t){const e=il.window.getComputedStyle(t);if(e.boxSizing==="border-box"){return parseInt(e.width)}else{return parseFloat(e.width)+parseFloat(e.paddingLeft)+parseFloat(e.paddingRight)+parseFloat(e.borderWidth)}}function Kq(t){return e=>e.on("element:colgroup",((e,n,i)=>{const o=n.viewItem;if(!i.consumable.test(o,{name:true})){return}i.consumable.consume(o,{name:true});const r=n.modelCursor.findAncestor("table");const s=t.getColumns(r);let a=[...Array(s).keys()].map((t=>{const e=o.getChild(t);if(!e||!e.is("element","col")){return"auto"}const n=e.getStyle("width");if(!n||!n.endsWith("%")){return"auto"}return n}));if(a.includes("auto")){a=qq(a).map((t=>t+"%"))}i.writer.setAttribute("columnWidths",a.join(","),r)}))}function Yq(){return t=>t.on("attribute:columnWidths:table",((t,e,n)=>{const i=n.writer;const o=e.item;const r=n.mapper.toViewElement(o);const s=r.is("element","table")?r:Array.from(r.getChildren()).find((t=>t.is("element","table")));if(e.attributeNewValue){Zq(i,s,e.attributeNewValue);i.addClass("ck-table-resized",s)}else{Qq(i,s);i.removeClass("ck-table-resized",s)}}))}function Zq(t,e,n){const i=n.split(",");let o=[...e.getChildren()].find((t=>t.is("element","colgroup")));if(!o){o=t.createContainerElement("colgroup")}else{for(const e of[...o.getChildren()]){t.remove(e)}}for(const e of Array(i.length).keys()){const n=t.createEmptyElement("col");t.setStyle("width",i[e],n);t.insert(t.createPositionAt(o,"end"),n)}t.insert(t.createPositionAt(e,"start"),o)}function Qq(t,e){const n=[...e.getChildren()].find((t=>t.is("element","colgroup")));t.remove(n)}class Jq extends eu{static get requires(){return[hU,TH]}static get pluginName(){return"TableColumnResizeEditing"}constructor(t){super(t);this._isResizingActive=false;this.set("_isResizingAllowed",true);this._resizingData=null;this._domEmitter=Object.create(Ja);this._tableUtilsPlugin=t.plugins.get("TableUtils");this.on("change:_isResizingAllowed",((e,n,i)=>{t.editing.view.change((e=>{e[i?"removeClass":"addClass"]("ck-column-resize_disabled",t.editing.view.document.getRoot())}))}))}init(){this._extendSchema();this._registerPostFixer();this._registerConverters();this._registerResizingListeners();this._registerColgroupFixer();this._registerResizerInserter();const t=this.editor;const e=t.plugins.get("TableColumnResize");t.commands.add("resizeTableWidth",new Iq(t));t.commands.add("resizeColumnWidths",new Mq(t));const n=t.commands.get("resizeTableWidth");const i=t.commands.get("resizeColumnWidths");this.bind("_isResizingAllowed").to(t,"isReadOnly",e,"isEnabled",n,"isEnabled",i,"isEnabled",((t,e,n,i)=>!t&&e&&n&&i))}destroy(){this._domEmitter.stopListening();super.destroy()}_extendSchema(){this.editor.model.schema.extend("table",{allowAttributes:["tableWidth","columnWidths"]})}_registerPostFixer(){const t=this.editor;const e=t.model;e.document.registerPostFixer((t=>{let i=false;for(const o of zq(e)){const e=qq(o.getAttribute("columnWidths").split(","));n(e,o,this);const r=e.map((t=>`${t}%`)).join(",");if(o.getAttribute("columnWidths")===r){continue}t.setAttribute("columnWidths",r,o);i=true}return i}));function n(t,e,n){const o=n._tableUtilsPlugin.getColumns(e);const r=o-t.length;if(r===0){return}const s=i(n.editor.model.document.differ,e);for(const i of s){const r=o-t.length;if(r===0){continue}const s=r>0;const a=n._tableUtilsPlugin.getCellLocation(i).column;if(s){const i=Pq(e,n.editor);const o=Uq(r,i);t.splice(a,0,...o)}else{const e=t.splice(a,Math.abs(r));t[a]+=Wq(e)}}}function i(t,e){const n=new Set;for(const i of t.getChanges()){if(i.type=="insert"&&i.position.nodeAfter&&i.position.nodeAfter.name=="tableCell"&&i.position.nodeAfter.getAncestors().includes(e)){n.add(i.position.nodeAfter)}else if(i.type=="remove"){const t=i.position.nodeBefore||i.position.nodeAfter;if(t.name=="tableCell"&&t.getAncestors().includes(e)){n.add(t)}}}return n}}_registerConverters(){const t=this.editor;const e=t.conversion;const n={view:{name:"figure",key:"style",value:{width:/[\s\S]+/}},model:{name:"table",key:"tableWidth",value:t=>t.getStyle("width")}};const i={model:{name:"table",key:"tableWidth"},view:t=>({name:"figure",key:"style",value:{width:t}})};e.for("upcast").attributeToAttribute(n);e.for("upcast").add(Kq(this._tableUtilsPlugin));e.for("downcast").attributeToAttribute(i);e.for("downcast").add(Yq())}_registerResizingListeners(){const t=this.editor.editing.view;t.addObserver(jU);t.document.on("mousedown",this._onMouseDownHandler.bind(this),{priority:"high"});this._domEmitter.listenTo(il.window.document,"mousemove",pS(this._onMouseMoveHandler.bind(this),50));this._domEmitter.listenTo(il.window.document,"mouseup",this._onMouseUpHandler.bind(this))}_onMouseDownHandler(t,e){const n=e.target;if(!n.hasClass("ck-table-column-resizer")){return}if(!this._isResizingAllowed){return}e.preventDefault();t.stop();const i=this.editor;const o=i.editing.mapper.toModelElement(n.findAncestor("figure"));const r=l(o,this._tableUtilsPlugin,i);const s=n.findAncestor("table");const a=i.editing.view;if(![...s.getChildren()].find((t=>t.is("element","colgroup")))){a.change((t=>{c(t,r,s)}))}this._isResizingActive=true;this._resizingData=this._getResizingData(e,r);a.change((t=>d(t,s,this._resizingData)));function l(t,e,n){const i=Array(e.getColumns(t));const o=new qF(t);for(const t of o){const e=n.editing.mapper.toViewElement(t.cell);const o=n.editing.view.domConverter.mapViewToDom(e);const r=$q(o);if(!i[t.column]||r<i[t.column]){i[t.column]=Fq(r)}}return i}function c(t,e,n){const i=t.createContainerElement("colgroup");for(let n=0;n<e.length;n++){const o=t.createEmptyElement("col");const r=`${Fq(e[n]/Wq(e)*100)}%`;t.setStyle("width",r,o);t.insert(t.createPositionAt(i,"end"),o)}t.insert(t.createPositionAt(n,"start"),i)}function d(t,e,n){const i=n.widths.viewFigureWidth/n.widths.viewFigureParentWidth;t.addClass("ck-table-resized",e);t.addClass("ck-table-column-resizer__active",n.elements.viewResizer);t.setStyle("width",`${Fq(i*100)}%`,e.findAncestor("figure"))}}_onMouseMoveHandler(t,e){if(!this._isResizingActive){return}if(!this._isResizingAllowed){this._onMouseUpHandler();return}const{columnPosition:n,flags:{isRightEdge:i,isTableCentered:o,isLtrContent:r},elements:{viewFigure:s,viewLeftColumn:a,viewRightColumn:l},widths:{viewFigureParentWidth:c,tableWidth:d,leftColumnWidth:u,rightColumnWidth:h}}=this._resizingData;const g=-u+Lq;const m=i?c-d:h-Lq;const f=(r?1:-1)*(i&&o?2:1);const p=Hq((e.clientX-n)*f,Math.min(g,0),Math.max(m,0));if(p===0){return}this.editor.editing.view.change((t=>{const e=Fq((u+p)*100/d);t.setStyle("width",`${e}%`,a);if(i){const e=Fq((d+p)*100/c);t.setStyle("width",`${e}%`,s)}else{const e=Fq((h-p)*100/d);t.setStyle("width",`${e}%`,l)}}))}_onMouseUpHandler(){if(!this._isResizingActive){return}const{viewResizer:t,modelTable:e,viewFigure:n,viewColgroup:i}=this._resizingData.elements;const o=this.editor;const r=o.editing.view;const s=e.getAttribute("columnWidths");const a=[...i.getChildren()].map((t=>t.getStyle("width"))).join(",");const l=s!==a;const c=e.getAttribute("tableWidth");const d=n.getStyle("width");const u=c!==d;if(l||u){if(this._isResizingAllowed){if(u){o.execute("resizeTableWidth",{table:e,tableWidth:`${Fq(d)}%`,columnWidths:a})}else{o.execute("resizeColumnWidths",{columnWidths:a,table:e})}}else{r.change((t=>{if(s){const e=s.split(",");for(const n of i.getChildren()){t.setStyle("width",e.shift(),n)}}else{t.remove(i)}if(u){if(c){t.setStyle("width",c,n)}else{t.removeStyle("width",n)}}if(!s&&!c){t.removeClass("ck-table-resized",[...n.getChildren()].find((t=>t.name==="table")))}}))}}r.change((e=>{e.removeClass("ck-table-column-resizer__active",t)}));this._isResizingActive=false;this._resizingData=null}_getResizingData(t,e){const n=this.editor;const i=t.domEvent.clientX;const o=t.target;const r=o.findAncestor("td")||o.findAncestor("th");const s=n.editing.mapper.toModelElement(r);const a=s.findAncestor("table");const l=jq(s,this._tableUtilsPlugin).rightEdge;const c=this._tableUtilsPlugin.getColumns(a)-1;const d=l===c;const u=!a.hasAttribute("tableAlignment");const h=n.locale.contentLanguageDirection!=="rtl";const g=r.findAncestor("table");const m=g.findAncestor("figure");const f=[...g.getChildren()].find((t=>t.is("element","colgroup")));const p=f.getChild(l);const b=d?undefined:f.getChild(l+1);const k=Vq(n.editing.view.domConverter.mapViewToDom(m.parent));const w=Vq(n.editing.view.domConverter.mapViewToDom(m));const A=Oq(a,n);const C=e[l];const _=d?undefined:e[l+1];return{columnPosition:i,flags:{isRightEdge:d,isTableCentered:u,isLtrContent:h},elements:{viewResizer:o,modelTable:a,viewFigure:m,viewColgroup:f,viewLeftColumn:p,viewRightColumn:b},widths:{viewFigureParentWidth:k,viewFigureWidth:w,tableWidth:A,leftColumnWidth:C,rightColumnWidth:_}}}_registerColgroupFixer(){const t=this.editor;this.listenTo(t.editing.view.document,"layoutChanged",(()=>{const e=t.editing.view.document.selection.getFirstPosition().getAncestors().reverse().find((t=>t.name==="table"));const n=e&&[...e.getChildren()].find((t=>t.is("element","colgroup")));const i=t.model.document.selection.getFirstPosition().findAncestor("table");if(i&&i.hasAttribute("columnWidths")&&e&&!n){t.editing.reconvertItem(i)}}),{priority:"low"})}_registerResizerInserter(){this.editor.conversion.for("editingDowncast").add((t=>{t.on("insert:tableCell",((t,e,n)=>{const i=e.item;const o=n.mapper.toViewElement(i);const r=n.writer;r.insert(r.createPositionAt(o,"end"),r.createUIElement("div",{class:"ck-table-column-resizer"}))}),{priority:"lowest"})}))}}var Xq=n(728);var tG={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tG.insert="head";tG.singleton=true;var eG=Sc()(Xq.Z,tG);const nG=Xq.Z.locals||{};class iG extends eu{static get requires(){return[Jq,gq]}static get pluginName(){return"TableColumnResize"}}class oG extends Tq{constructor(t,e){super(t,"tableBackgroundColor",e)}}class rG extends Tq{constructor(t,e){super(t,"tableBorderColor",e)}_getValue(t){if(!t){return}const e=rq(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class sG extends Tq{constructor(t,e){super(t,"tableBorderStyle",e)}_getValue(t){if(!t){return}const e=rq(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class aG extends Tq{constructor(t,e){super(t,"tableBorderWidth",e)}_getValue(t){if(!t){return}const e=rq(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}_getValueToSet(t){t=sq(t,"px");if(t===this._defaultValue){return}return t}}class lG extends Tq{constructor(t,e){super(t,"tableWidth",e)}_getValueToSet(t){t=sq(t,"px");if(t===this._defaultValue){return}return t}}class cG extends Tq{constructor(t,e){super(t,"tableHeight",e)}_getValueToSet(t){t=sq(t,"px");if(t===this._defaultValue){return null}return t}}class dG extends Tq{constructor(t,e){super(t,"tableAlignment",e)}}const uG=/^(left|center|right)$/;const hG=/^(left|none|right)$/;class gG extends eu{static get pluginName(){return"TablePropertiesEditing"}static get requires(){return[hU]}init(){const t=this.editor;const e=t.model.schema;const n=t.conversion;t.config.define("table.tableProperties.defaultProperties",{});const i=aq(t.config.get("table.tableProperties.defaultProperties"),{includeAlignmentProperty:true});t.data.addStyleProcessorRules(YC);mG(e,n,{color:i.borderColor,style:i.borderStyle,width:i.borderWidth});t.commands.add("tableBorderColor",new rG(t,i.borderColor));t.commands.add("tableBorderStyle",new sG(t,i.borderStyle));t.commands.add("tableBorderWidth",new aG(t,i.borderWidth));fG(e,n,i.alignment);t.commands.add("tableAlignment",new dG(t,i.alignment));bG(e,n,{modelAttribute:"tableWidth",styleName:"width",defaultValue:i.width});t.commands.add("tableWidth",new lG(t,i.width));bG(e,n,{modelAttribute:"tableHeight",styleName:"height",defaultValue:i.height});t.commands.add("tableHeight",new cG(t,i.height));t.data.addStyleProcessorRules(qC);pG(e,n,{modelAttribute:"tableBackgroundColor",styleName:"background-color",defaultValue:i.backgroundColor});t.commands.add("tableBackgroundColor",new oG(t,i.backgroundColor))}}function mG(t,e,n){const i={width:"tableBorderWidth",color:"tableBorderColor",style:"tableBorderStyle"};t.extend("table",{allowAttributes:Object.values(i)});IF(e,"table",i,n);BF(e,{modelAttribute:i.color,styleName:"border-color"});BF(e,{modelAttribute:i.style,styleName:"border-style"});BF(e,{modelAttribute:i.width,styleName:"border-width"})}function fG(t,e,n){t.extend("table",{allowAttributes:["tableAlignment"]});e.for("downcast").attributeToAttribute({model:{name:"table",key:"tableAlignment"},view:t=>({key:"style",value:{float:t==="center"?"none":t}}),converterPriority:"high"});e.for("upcast").attributeToAttribute({view:{name:/^(table|figure)$/,styles:{float:hG}},model:{key:"tableAlignment",value:t=>{let e=t.getStyle("float");if(e==="none"){e="center"}return e===n?null:e}}}).attributeToAttribute({view:{attributes:{align:uG}},model:{name:"table",key:"tableAlignment",value:t=>{const e=t.getAttribute("align");return e===n?null:e}}})}function pG(t,e,n){const{modelAttribute:i}=n;t.extend("table",{allowAttributes:[i]});TF(e,{viewElement:"table",...n});BF(e,n)}function bG(t,e,n){const{modelAttribute:i}=n;t.extend("table",{allowAttributes:[i]});TF(e,{viewElement:/^(table|figure)$/,shouldUpcast:t=>!(t.name=="table"&&t.parent.name=="figure"),...n});MF(e,{modelElement:"table",...n})}var kG=n(9221);var wG={injectType:"singletonStyleTag",attributes:{"data-cke":true}};wG.insert="head";wG.singleton=true;var AG=Sc()(kG.Z,wG);const CG=kG.Z.locals||{};const _G={left:J_.objectLeft,center:J_.objectCenter,right:J_.objectRight};class vG extends Lc{constructor(t,e){super(t);this.set({borderStyle:"",borderWidth:"",borderColor:"",backgroundColor:"",width:"",height:"",alignment:""});this.options=e;const{borderStyleDropdown:n,borderWidthInput:i,borderColorInput:o,borderRowLabel:r}=this._createBorderFields();const{backgroundRowLabel:s,backgroundInput:a}=this._createBackgroundFields();const{widthInput:l,operatorLabel:c,heightInput:d,dimensionsLabel:u}=this._createDimensionFields();const{alignmentToolbar:h,alignmentLabel:g}=this._createAlignmentFields();this.focusTracker=new uc;this.keystrokes=new hc;this.children=this.createCollection();this.borderStyleDropdown=n;this.borderWidthInput=i;this.borderColorInput=o;this.backgroundInput=a;this.widthInput=l;this.heightInput=d;this.alignmentToolbar=h;const{saveButtonView:m,cancelButtonView:f}=this._createActionButtons();this.saveButtonView=m;this.cancelButtonView=f;this._focusables=new xc;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.children.add(new wy(t,{label:this.t("Table properties")}));this.children.add(new BW(t,{labelView:r,children:[r,n,o,i],class:"ck-table-form__border-row"}));this.children.add(new BW(t,{labelView:s,children:[s,a],class:"ck-table-form__background-row"}));this.children.add(new BW(t,{children:[new BW(t,{labelView:u,children:[u,l,c,d],class:"ck-table-form__dimensions-row"}),new BW(t,{labelView:g,children:[g,h],class:"ck-table-properties-form__alignment-row"})]}));this.children.add(new BW(t,{children:[this.saveButtonView,this.cancelButtonView],class:"ck-table-form__action-row"}));this.setTemplate({tag:"form",attributes:{class:["ck","ck-form","ck-table-form","ck-table-properties-form"],tabindex:"-1"},children:this.children})}render(){super.render();o({view:this});[this.borderStyleDropdown,this.borderColorInput,this.borderColorInput.fieldView.dropdownView.buttonView,this.borderWidthInput,this.backgroundInput,this.backgroundInput.fieldView.dropdownView.buttonView,this.widthInput,this.heightInput,this.alignmentToolbar,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()}_createBorderFields(){const t=this.options.defaultTableProperties;const e={style:t.borderStyle,width:t.borderWidth,color:t.borderColor};const n=xW({colorConfig:this.options.borderColors,columns:5,defaultColorValue:e.color});const i=this.locale;const o=this.t;const r=new uy(i);r.text=o("Border");const s=pW(this.t);const a=new Ly(i,Py);a.set({label:o("Style"),class:"ck-table-form__border-style"});a.fieldView.buttonView.set({isOn:false,withText:true,tooltip:o("Style")});a.fieldView.buttonView.bind("label").to(this,"borderStyle",(t=>s[t?t:"none"]));a.fieldView.on("execute",(t=>{this.borderStyle=t.source._borderStyleValue}));a.bind("isEmpty").to(this,"borderStyle",(t=>!t));Dv(a.fieldView,_W(this,e.style));const l=new Ly(i,Ny);l.set({label:o("Width"),class:"ck-table-form__border-width"});l.fieldView.bind("value").to(this,"borderWidth");l.bind("isEnabled").to(this,"borderStyle",yG);l.fieldView.on("input",(()=>{this.borderWidth=l.fieldView.element.value}));const c=new Ly(i,n);c.set({label:o("Color"),class:"ck-table-form__border-color"});c.fieldView.bind("value").to(this,"borderColor");c.bind("isEnabled").to(this,"borderStyle",yG);c.fieldView.on("input",(()=>{this.borderColor=c.fieldView.value}));this.on("change:borderStyle",((t,n,i,o)=>{if(!yG(i)){this.borderColor="";this.borderWidth=""}if(!yG(o)){this.borderColor=e.color;this.borderWidth=e.width}}));return{borderRowLabel:r,borderStyleDropdown:a,borderColorInput:c,borderWidthInput:l}}_createBackgroundFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Background");const i=xW({colorConfig:this.options.backgroundColors,columns:5,defaultColorValue:this.options.defaultTableProperties.backgroundColor});const o=new Ly(t,i);o.set({label:e("Color"),class:"ck-table-properties-form__background"});o.fieldView.bind("value").to(this,"backgroundColor");o.fieldView.on("input",(()=>{this.backgroundColor=o.fieldView.value}));return{backgroundRowLabel:n,backgroundInput:o}}_createDimensionFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Dimensions");const i=new Ly(t,Ny);i.set({label:e("Width"),class:"ck-table-form__dimensions-row__width"});i.fieldView.bind("value").to(this,"width");i.fieldView.on("input",(()=>{this.width=i.fieldView.element.value}));const o=new Lc(t);o.setTemplate({tag:"span",attributes:{class:["ck-table-form__dimension-operator"]},children:[{text:"×"}]});const r=new Ly(t,Ny);r.set({label:e("Height"),class:"ck-table-form__dimensions-row__height"});r.fieldView.bind("value").to(this,"height");r.fieldView.on("input",(()=>{this.height=r.fieldView.element.value}));return{dimensionsLabel:n,widthInput:i,operatorLabel:o,heightInput:r}}_createAlignmentFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Alignment");const i=new rv(t);i.set({isCompact:true,ariaLabel:e("Table alignment toolbar")});vW({view:this,icons:_G,toolbar:i,labels:this._alignmentLabels,propertyName:"alignment",defaultValue:this.options.defaultTableProperties.alignment});return{alignmentLabel:n,alignmentToolbar:i}}_createActionButtons(){const t=this.locale;const e=this.t;const n=new kd(t);const i=new kd(t);const o=[this.borderWidthInput,this.borderColorInput,this.backgroundInput,this.widthInput,this.heightInput];n.set({label:e("Save"),icon:J_.check,class:"ck-button-save",type:"submit",withText:true});n.bind("isEnabled").toMany(o,"errorText",((...t)=>t.every((t=>!t))));i.set({label:e("Cancel"),icon:J_.cancel,class:"ck-button-cancel",withText:true});i.delegate("execute").to(this,"cancel");return{saveButtonView:n,cancelButtonView:i}}get _alignmentLabels(){const t=this.locale;const e=this.t;const n=e("Align table to the left");const i=e("Center table");const o=e("Align table to the right");if(t.uiLanguageDirection==="rtl"){return{right:o,center:i,left:n}}else{return{left:n,center:i,right:o}}}}function yG(t){return t!=="none"}const xG='$${Delta.CKEditor.Icon[73]}$$';const EG=500;const DG={borderStyle:"tableBorderStyle",borderColor:"tableBorderColor",borderWidth:"tableBorderWidth",backgroundColor:"tableBackgroundColor",width:"tableWidth",height:"tableHeight",alignment:"tableAlignment"};class SG extends eu{static get requires(){return[Zy]}static get pluginName(){return"TablePropertiesUI"}constructor(t){super(t);t.config.define("table.tableProperties",{borderColors:yW,backgroundColors:yW})}init(){const t=this.editor;const e=t.t;this._defaultTableProperties=aq(t.config.get("table.tableProperties.defaultProperties"),{includeAlignmentProperty:true});this._balloon=t.plugins.get(Zy);this.view=null;this._undoStepBatch=null;this._isReady=false;t.ui.componentFactory.add("tableProperties",(n=>{const i=new kd(n);i.set({label:e("Table properties"),icon:xG,tooltip:true});this.listenTo(i,"execute",(()=>this._showView()));const o=Object.values(DG).map((e=>t.commands.get(e)));i.bind("isEnabled").toMany(o,"isEnabled",((...t)=>t.some((t=>t))));return i}))}destroy(){super.destroy();if(this.view){this.view.destroy()}}_createPropertiesView(){const e=this.editor;const n=e.config.get("table.tableProperties");const i=xd(n.borderColors);const o=yd(e.locale,i);const r=xd(n.backgroundColors);const s=yd(e.locale,r);const a=new vG(e.locale,{borderColors:o,backgroundColors:s,defaultTableProperties:this._defaultTableProperties});const l=e.t;a.render();this.listenTo(a,"submit",(()=>{this._hideView()}));this.listenTo(a,"cancel",(()=>{if(this._undoStepBatch.operations.length){e.execute("undo",this._undoStepBatch)}this._hideView()}));a.keystrokes.set("Esc",((t,e)=>{this._hideView();e()}));t({emitter:a,activator:()=>this._isViewInBalloon,contextElements:[this._balloon.view.element],callback:()=>this._hideView()});const c=bW(l);const d=kW(l);a.on("change:borderStyle",this._getPropertyChangeCallback("tableBorderStyle",this._defaultTableProperties.borderStyle));a.on("change:borderColor",this._getValidatedPropertyChangeCallback({viewField:a.borderColorInput,commandName:"tableBorderColor",errorText:c,validator:wW,defaultValue:this._defaultTableProperties.borderColor}));a.on("change:borderWidth",this._getValidatedPropertyChangeCallback({viewField:a.borderWidthInput,commandName:"tableBorderWidth",errorText:d,validator:CW,defaultValue:this._defaultTableProperties.borderWidth}));a.on("change:backgroundColor",this._getValidatedPropertyChangeCallback({viewField:a.backgroundInput,commandName:"tableBackgroundColor",errorText:c,validator:wW,defaultValue:this._defaultTableProperties.backgroundColor}));a.on("change:width",this._getValidatedPropertyChangeCallback({viewField:a.widthInput,commandName:"tableWidth",errorText:d,validator:AW,defaultValue:this._defaultTableProperties.width}));a.on("change:height",this._getValidatedPropertyChangeCallback({viewField:a.heightInput,commandName:"tableHeight",errorText:d,validator:AW,defaultValue:this._defaultTableProperties.height}));a.on("change:alignment",this._getPropertyChangeCallback("tableAlignment",this._defaultTableProperties.alignment));return a}_fillViewFormFromCommandValues(){const t=this.editor.commands;const e=t.get("tableBorderStyle");Object.entries(DG).map((([e,n])=>{const i=this._defaultTableProperties[e]||"";return[e,t.get(n).value||i]})).forEach((([t,n])=>{if((t==="borderColor"||t==="borderWidth")&&e.value==="none"){return}this.view.set(t,n)}));this._isReady=true}_showView(){const t=this.editor;if(!this.view){this.view=this._createPropertiesView()}this.listenTo(t.ui,"update",(()=>{this._updateView()}));this._fillViewFormFromCommandValues();this._balloon.add({view:this.view,position:tq(t)});this._undoStepBatch=t.model.createBatch();this.view.focus()}_hideView(){const t=this.editor;this.stopListening(t.ui,"update");this._isReady=false;this.view.saveButtonView.focus();this._balloon.remove(this.view);this.editor.editing.view.focus()}_updateView(){const t=this.editor;const e=t.editing.view.document;if(!YW(e.selection)){this._hideView()}else if(this._isViewVisible){XW(t,"table")}}get _isViewVisible(){return!!this.view&&this._balloon.visibleView===this.view}get _isViewInBalloon(){return!!this.view&&this._balloon.hasView(this.view)}_getPropertyChangeCallback(t){return(e,n,i)=>{if(!this._isReady){return}this.editor.execute(t,{value:i,batch:this._undoStepBatch})}}_getValidatedPropertyChangeCallback(t){const{commandName:e,viewField:n,validator:i,errorText:o}=t;const r=If((()=>{n.errorText=o}),EG);return(t,o,s)=>{r.cancel();if(!this._isReady){return}if(i(s)){this.editor.execute(e,{value:s,batch:this._undoStepBatch});n.errorText=null}else{r()}}}}class TG extends eu{static get pluginName(){return"TableProperties"}static get requires(){return[gG,SG]}}class IG extends eu{static get requires(){return[XD]}static get pluginName(){return"TableToolbar"}afterInit(){const t=this.editor;const e=t.t;const n=t.plugins.get(XD);const i=t.config.get("table.contentToolbar");const o=t.config.get("table.tableToolbar");if(i){n.register("tableContent",{ariaLabel:e("Table toolbar"),items:i,getRelatedElement:YW})}if(o){n.register("table",{ariaLabel:e("Table toolbar"),items:o,getRelatedElement:KW})}}}const MG="underline";class BG extends eu{static get pluginName(){return"UnderlineEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:MG});t.model.schema.setAttributeProperties(MG,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:MG,view:"u",upcastAlso:{styles:{"text-decoration":"underline"}}});t.commands.add(MG,new zI(t,MG));t.keystrokes.set("CTRL+U","underline")}}const LG='$${Delta.CKEditor.Icon[74]}$$';const NG="underline";class zG extends eu{static get pluginName(){return"UnderlineUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(NG,(n=>{const i=t.commands.get(NG);const o=new kd(n);o.set({label:e("Underline"),icon:LG,keystroke:"CTRL+U",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(NG);t.editing.view.focus()}));return o}))}}class PG extends eu{static get requires(){return[BG,zG]}static get pluginName(){return"Underline"}}class OG extends vx{}OG.builtinPlugins=[Fx,zE,rT,gI,kI,_I,NI,jI,QI,PM,eM,JM,xB,qB,GB,EL,zL,ON,QN,Tz,Iz,_N,Pz,Hz,Kz,DP,RP,BO,vR,iV,oV,pV,BB,ij,cj,Tj,Ij,Mj,zj,Lj,Bj,Nj,Fj,pF,_F,SF,$U,lW,Sq,iG,TG,IG,CE,PG];OG.defaultConfig={toolbar:{items:["heading","|","bold","italic","link","bulletedList","numberedList","|","outdent","indent","|","imageUpload","blockQuote","insertTable","mediaEmbed","undo","redo"]},language:"en",image:{toolbar:["imageTextAlternative","toggleImageCaption","imageStyle:inline","imageStyle:block","imageStyle:side","linkImage"]},table:{contentToolbar:["tableColumn","tableRow","mergeTableCells","tableCellProperties","tableProperties"]}};const RG=OG})();i=i["default"];return i})()));
+//# sourceMappingURL=ckeditor.js.map \ No newline at end of file
diff --git a/ckeditor/editor.js b/ckeditor/editor.js
new file mode 100644
index 0000000..034c32e
--- /dev/null
+++ b/ckeditor/editor.js
@@ -0,0 +1,6 @@
+(function(t){const e=t["en"]=t["en"]||{};e.dictionary=Object.assign(e.dictionary||{},{"%0 of %1":"%0 of %1","Align cell text to the bottom":"Align cell text to the bottom","Align cell text to the center":"Align cell text to the center","Align cell text to the left":"Align cell text to the left","Align cell text to the middle":"Align cell text to the middle","Align cell text to the right":"Align cell text to the right","Align cell text to the top":"Align cell text to the top","Align center":"Align center","Align left":"Align left","Align right":"Align right","Align table to the left":"Align table to the left","Align table to the right":"Align table to the right",Alignment:"Alignment",All:"All","Almost equal to":"Almost equal to",Angle:"Angle","Approximately equal to":"Approximately equal to",Aquamarine:"Aquamarine",Arrows:"Arrows","Asterisk operator":"Asterisk operator","Austral sign":"Austral sign","back with leftwards arrow above":"back with leftwards arrow above",Background:"Background","Bitcoin sign":"Bitcoin sign",Black:"Black","Block quote":"Block quote",Blue:"Blue","Blue marker":"Blue marker",Bold:"Bold",Border:"Border","Break text":"Break text","Bulleted List":"Bulleted List","Bulleted list styles toolbar":"Bulleted list styles toolbar",Cancel:"Cancel","Caption for image: %0":"Caption for image: %0","Caption for the image":"Caption for the image","Cedi sign":"Cedi sign","Cell properties":"Cell properties","Cent sign":"Cent sign","Center table":"Center table","Centered image":"Centered image","Change image text alternative":"Change image text alternative","Character categories":"Character categories","Characters: %0":"Characters: %0","Choose heading":"Choose heading",Circle:"Circle",Code:"Code","Colon sign":"Colon sign",Color:"Color","Color picker":"Color picker",Column:"Column","Contains as member":"Contains as member","Copyright sign":"Copyright sign","Cruzeiro sign":"Cruzeiro sign",Currency:"Currency","Currency sign":"Currency sign",Dashed:"Dashed",Decimal:"Decimal","Decimal with leading zero":"Decimal with leading zero","Decrease indent":"Decrease indent","Degree sign":"Degree sign","Delete column":"Delete column","Delete row":"Delete row","Dim grey":"Dim grey",Dimensions:"Dimensions",Disc:"Disc","Division sign":"Division sign","Dollar sign":"Dollar sign","Dong sign":"Dong sign",Dotted:"Dotted",Double:"Double","Double dagger":"Double dagger","Double exclamation mark":"Double exclamation mark","Double low-9 quotation mark":"Double low-9 quotation mark","Double question mark":"Double question mark",Downloadable:"Downloadable","downwards arrow to bar":"downwards arrow to bar","downwards dashed arrow":"downwards dashed arrow","downwards double arrow":"downwards double arrow","downwards simple arrow":"downwards simple arrow","Drachma sign":"Drachma sign","Dropdown toolbar":"Dropdown toolbar","Edit block":"Edit block","Edit link":"Edit link","Edit source":"Edit source","Editor block content toolbar":"Editor block content toolbar","Editor contextual toolbar":"Editor contextual toolbar","Editor editing area: %0":"Editor editing area: %0","Editor toolbar":"Editor toolbar","Element of":"Element of","Em dash":"Em dash","Empty set":"Empty set","Empty snippet content":"Empty snippet content","En dash":"En dash","end with leftwards arrow above":"end with leftwards arrow above","Enter image caption":"Enter image caption","Enter table caption":"Enter table caption","Euro sign":"Euro sign","Euro-currency sign":"Euro-currency sign","Exclamation question mark":"Exclamation question mark",Find:"Find","Find and replace":"Find and replace","Find in text…":"Find in text…","For all":"For all","Fraction slash":"Fraction slash","French franc sign":"French franc sign","Full size image":"Full size image","German penny sign":"German penny sign","Greater-than or equal to":"Greater-than or equal to","Greater-than sign":"Greater-than sign",Green:"Green","Green marker":"Green marker","Green pen":"Green pen",Grey:"Grey",Groove:"Groove","Guarani sign":"Guarani sign","Header column":"Header column","Header row":"Header row",Heading:"Heading","Heading 1":"Heading 1","Heading 2":"Heading 2","Heading 3":"Heading 3","Heading 4":"Heading 4","Heading 5":"Heading 5","Heading 6":"Heading 6",Height:"Height",Highlight:"Highlight","Horizontal ellipsis":"Horizontal ellipsis","Horizontal line":"Horizontal line","Horizontal text alignment toolbar":"Horizontal text alignment toolbar","Hryvnia sign":"Hryvnia sign","HTML object":"HTML object","HTML snippet":"HTML snippet","Identical to":"Identical to","Image resize list":"Image resize list","Image toolbar":"Image toolbar","image widget":"image widget","In line":"In line","Increase indent":"Increase indent","Indian rupee sign":"Indian rupee sign",Infinity:"Infinity",Insert:"Insert","Insert code block":"Insert code block","Insert column left":"Insert column left","Insert column right":"Insert column right","Insert HTML":"Insert HTML","Insert image":"Insert image","Insert image via URL":"Insert image via URL","Insert media":"Insert media","Insert paragraph after block":"Insert paragraph after block","Insert paragraph before block":"Insert paragraph before block","Insert row above":"Insert row above","Insert row below":"Insert row below","Insert table":"Insert table",Inset:"Inset",Integral:"Integral",Intersection:"Intersection","Inverted exclamation mark":"Inverted exclamation mark","Inverted question mark":"Inverted question mark",Italic:"Italic",Justify:"Justify","Justify cell text":"Justify cell text","Kip sign":"Kip sign",Latin:"Latin","Latin capital letter a with breve":"Latin capital letter a with breve","Latin capital letter a with macron":"Latin capital letter a with macron","Latin capital letter a with ogonek":"Latin capital letter a with ogonek","Latin capital letter c with acute":"Latin capital letter c with acute","Latin capital letter c with caron":"Latin capital letter c with caron","Latin capital letter c with circumflex":"Latin capital letter c with circumflex","Latin capital letter c with dot above":"Latin capital letter c with dot above","Latin capital letter d with caron":"Latin capital letter d with caron","Latin capital letter d with stroke":"Latin capital letter d with stroke","Latin capital letter e with breve":"Latin capital letter e with breve","Latin capital letter e with caron":"Latin capital letter e with caron","Latin capital letter e with dot above":"Latin capital letter e with dot above","Latin capital letter e with macron":"Latin capital letter e with macron","Latin capital letter e with ogonek":"Latin capital letter e with ogonek","Latin capital letter eng":"Latin capital letter eng","Latin capital letter g with breve":"Latin capital letter g with breve","Latin capital letter g with cedilla":"Latin capital letter g with cedilla","Latin capital letter g with circumflex":"Latin capital letter g with circumflex","Latin capital letter g with dot above":"Latin capital letter g with dot above","Latin capital letter h with circumflex":"Latin capital letter h with circumflex","Latin capital letter h with stroke":"Latin capital letter h with stroke","Latin capital letter i with breve":"Latin capital letter i with breve","Latin capital letter i with dot above":"Latin capital letter i with dot above","Latin capital letter i with macron":"Latin capital letter i with macron","Latin capital letter i with ogonek":"Latin capital letter i with ogonek","Latin capital letter i with tilde":"Latin capital letter i with tilde","Latin capital letter j with circumflex":"Latin capital letter j with circumflex","Latin capital letter k with cedilla":"Latin capital letter k with cedilla","Latin capital letter l with acute":"Latin capital letter l with acute","Latin capital letter l with caron":"Latin capital letter l with caron","Latin capital letter l with cedilla":"Latin capital letter l with cedilla","Latin capital letter l with middle dot":"Latin capital letter l with middle dot","Latin capital letter l with stroke":"Latin capital letter l with stroke","Latin capital letter n with acute":"Latin capital letter n with acute","Latin capital letter n with caron":"Latin capital letter n with caron","Latin capital letter n with cedilla":"Latin capital letter n with cedilla","Latin capital letter o with breve":"Latin capital letter o with breve","Latin capital letter o with double acute":"Latin capital letter o with double acute","Latin capital letter o with macron":"Latin capital letter o with macron","Latin capital letter r with acute":"Latin capital letter r with acute","Latin capital letter r with caron":"Latin capital letter r with caron","Latin capital letter r with cedilla":"Latin capital letter r with cedilla","Latin capital letter s with acute":"Latin capital letter s with acute","Latin capital letter s with caron":"Latin capital letter s with caron","Latin capital letter s with cedilla":"Latin capital letter s with cedilla","Latin capital letter s with circumflex":"Latin capital letter s with circumflex","Latin capital letter t with caron":"Latin capital letter t with caron","Latin capital letter t with cedilla":"Latin capital letter t with cedilla","Latin capital letter t with stroke":"Latin capital letter t with stroke","Latin capital letter u with breve":"Latin capital letter u with breve","Latin capital letter u with double acute":"Latin capital letter u with double acute","Latin capital letter u with macron":"Latin capital letter u with macron","Latin capital letter u with ogonek":"Latin capital letter u with ogonek","Latin capital letter u with ring above":"Latin capital letter u with ring above","Latin capital letter u with tilde":"Latin capital letter u with tilde","Latin capital letter w with circumflex":"Latin capital letter w with circumflex","Latin capital letter y with circumflex":"Latin capital letter y with circumflex","Latin capital letter y with diaeresis":"Latin capital letter y with diaeresis","Latin capital letter z with acute":"Latin capital letter z with acute","Latin capital letter z with caron":"Latin capital letter z with caron","Latin capital letter z with dot above":"Latin capital letter z with dot above","Latin capital ligature ij":"Latin capital ligature ij","Latin capital ligature oe":"Latin capital ligature oe","Latin small letter a with breve":"Latin small letter a with breve","Latin small letter a with macron":"Latin small letter a with macron","Latin small letter a with ogonek":"Latin small letter a with ogonek","Latin small letter c with acute":"Latin small letter c with acute","Latin small letter c with caron":"Latin small letter c with caron","Latin small letter c with circumflex":"Latin small letter c with circumflex","Latin small letter c with dot above":"Latin small letter c with dot above","Latin small letter d with caron":"Latin small letter d with caron","Latin small letter d with stroke":"Latin small letter d with stroke","Latin small letter dotless i":"Latin small letter dotless i","Latin small letter e with breve":"Latin small letter e with breve","Latin small letter e with caron":"Latin small letter e with caron","Latin small letter e with dot above":"Latin small letter e with dot above","Latin small letter e with macron":"Latin small letter e with macron","Latin small letter e with ogonek":"Latin small letter e with ogonek","Latin small letter eng":"Latin small letter eng","Latin small letter f with hook":"Latin small letter f with hook","Latin small letter g with breve":"Latin small letter g with breve","Latin small letter g with cedilla":"Latin small letter g with cedilla","Latin small letter g with circumflex":"Latin small letter g with circumflex","Latin small letter g with dot above":"Latin small letter g with dot above","Latin small letter h with circumflex":"Latin small letter h with circumflex","Latin small letter h with stroke":"Latin small letter h with stroke","Latin small letter i with breve":"Latin small letter i with breve","Latin small letter i with macron":"Latin small letter i with macron","Latin small letter i with ogonek":"Latin small letter i with ogonek","Latin small letter i with tilde":"Latin small letter i with tilde","Latin small letter j with circumflex":"Latin small letter j with circumflex","Latin small letter k with cedilla":"Latin small letter k with cedilla","Latin small letter kra":"Latin small letter kra","Latin small letter l with acute":"Latin small letter l with acute","Latin small letter l with caron":"Latin small letter l with caron","Latin small letter l with cedilla":"Latin small letter l with cedilla","Latin small letter l with middle dot":"Latin small letter l with middle dot","Latin small letter l with stroke":"Latin small letter l with stroke","Latin small letter long s":"Latin small letter long s","Latin small letter n preceded by apostrophe":"Latin small letter n preceded by apostrophe","Latin small letter n with acute":"Latin small letter n with acute","Latin small letter n with caron":"Latin small letter n with caron","Latin small letter n with cedilla":"Latin small letter n with cedilla","Latin small letter o with breve":"Latin small letter o with breve","Latin small letter o with double acute":"Latin small letter o with double acute","Latin small letter o with macron":"Latin small letter o with macron","Latin small letter r with acute":"Latin small letter r with acute","Latin small letter r with caron":"Latin small letter r with caron","Latin small letter r with cedilla":"Latin small letter r with cedilla","Latin small letter s with acute":"Latin small letter s with acute","Latin small letter s with caron":"Latin small letter s with caron","Latin small letter s with cedilla":"Latin small letter s with cedilla","Latin small letter s with circumflex":"Latin small letter s with circumflex","Latin small letter t with caron":"Latin small letter t with caron","Latin small letter t with cedilla":"Latin small letter t with cedilla","Latin small letter t with stroke":"Latin small letter t with stroke","Latin small letter u with breve":"Latin small letter u with breve","Latin small letter u with double acute":"Latin small letter u with double acute","Latin small letter u with macron":"Latin small letter u with macron","Latin small letter u with ogonek":"Latin small letter u with ogonek","Latin small letter u with ring above":"Latin small letter u with ring above","Latin small letter u with tilde":"Latin small letter u with tilde","Latin small letter w with circumflex":"Latin small letter w with circumflex","Latin small letter y with circumflex":"Latin small letter y with circumflex","Latin small letter z with acute":"Latin small letter z with acute","Latin small letter z with caron":"Latin small letter z with caron","Latin small letter z with dot above":"Latin small letter z with dot above","Latin small ligature ij":"Latin small ligature ij","Latin small ligature oe":"Latin small ligature oe","Left aligned image":"Left aligned image","Left double quotation mark":"Left double quotation mark","Left single quotation mark":"Left single quotation mark","Left-pointing double angle quotation mark":"Left-pointing double angle quotation mark","leftwards arrow to bar":"leftwards arrow to bar","leftwards dashed arrow":"leftwards dashed arrow","leftwards double arrow":"leftwards double arrow","leftwards simple arrow":"leftwards simple arrow","Less-than or equal to":"Less-than or equal to","Less-than sign":"Less-than sign","Light blue":"Light blue","Light green":"Light green","Light grey":"Light grey",Link:"Link","Link image":"Link image","Link URL":"Link URL","Lira sign":"Lira sign","List properties":"List properties","Livre tournois sign":"Livre tournois sign","Logical and":"Logical and","Logical or":"Logical or","Lower-latin":"Lower-latin","Lower–roman":"Lower–roman",Macron:"Macron","Manat sign":"Manat sign","Match case":"Match case",Mathematical:"Mathematical","Media toolbar":"Media toolbar","Media URL":"Media URL","media widget":"media widget","Merge cell down":"Merge cell down","Merge cell left":"Merge cell left","Merge cell right":"Merge cell right","Merge cell up":"Merge cell up","Merge cells":"Merge cells","Mill sign":"Mill sign","Minus sign":"Minus sign","Multiplication sign":"Multiplication sign","N-ary product":"N-ary product","N-ary summation":"N-ary summation",Nabla:"Nabla","Naira sign":"Naira sign","New sheqel sign":"New sheqel sign",Next:"Next","Next result":"Next result","No preview available":"No preview available",None:"None","Nordic mark sign":"Nordic mark sign","Not an element of":"Not an element of","Not equal to":"Not equal to","Not sign":"Not sign","Numbered List":"Numbered List","Numbered list styles toolbar":"Numbered list styles toolbar","on with exclamation mark with left right arrow above":"on with exclamation mark with left right arrow above","Open in a new tab":"Open in a new tab","Open link in new tab":"Open link in new tab","Open media in new tab":"Open media in new tab",Orange:"Orange",Original:"Original",Outset:"Outset",Overline:"Overline",Padding:"Padding","Page break":"Page break",Paragraph:"Paragraph","Paragraph sign":"Paragraph sign","Partial differential":"Partial differential","Paste raw HTML here...":"Paste raw HTML here...","Paste the media URL in the input.":"Paste the media URL in the input.","Per mille sign":"Per mille sign","Per ten thousand sign":"Per ten thousand sign","Peseta sign":"Peseta sign","Peso sign":"Peso sign","Pink marker":"Pink marker","Plain text":"Plain text","Plus-minus sign":"Plus-minus sign","Pound sign":"Pound sign","Press Enter to type after or press Shift + Enter to type before the widget":"Press Enter to type after or press Shift + Enter to type before the widget",Previous:"Previous","Previous result":"Previous result","Proportional to":"Proportional to",Purple:"Purple","Question exclamation mark":"Question exclamation mark",Red:"Red","Red pen":"Red pen",Redo:"Redo","Registered sign":"Registered sign","Remove color":"Remove color","Remove Format":"Remove Format","Remove highlight":"Remove highlight",Replace:"Replace","Replace all":"Replace all","Replace with…":"Replace with…","Resize image":"Resize image","Resize image to %0":"Resize image to %0","Resize image to the original size":"Resize image to the original size","Restore default":"Restore default","Reversed order":"Reversed order","Reversed paragraph sign":"Reversed paragraph sign","Rich Text Editor":"Rich Text Editor",Ridge:"Ridge","Right aligned image":"Right aligned image","Right double quotation mark":"Right double quotation mark","Right single quotation mark":"Right single quotation mark","Right-pointing double angle quotation mark":"Right-pointing double angle quotation mark","rightwards arrow to bar":"rightwards arrow to bar","rightwards dashed arrow":"rightwards dashed arrow","rightwards double arrow":"rightwards double arrow","rightwards simple arrow":"rightwards simple arrow",Row:"Row","Ruble sign":"Ruble sign","Rupee sign":"Rupee sign",Save:"Save","Save changes":"Save changes","Section sign":"Section sign","Select all":"Select all","Select column":"Select column","Select row":"Select row","Show more items":"Show more items","Show options":"Show options","Side image":"Side image","Single left-pointing angle quotation mark":"Single left-pointing angle quotation mark","Single low-9 quotation mark":"Single low-9 quotation mark","Single right-pointing angle quotation mark":"Single right-pointing angle quotation mark",Solid:"Solid","soon with rightwards arrow above":"soon with rightwards arrow above",Source:"Source","Special characters":"Special characters","Spesmilo sign":"Spesmilo sign","Split cell horizontally":"Split cell horizontally","Split cell vertically":"Split cell vertically",Square:"Square","Square root":"Square root","Start at":"Start at","Start index must be greater than 0.":"Start index must be greater than 0.",Strikethrough:"Strikethrough",Style:"Style",Subscript:"Subscript",Superscript:"Superscript","Table alignment toolbar":"Table alignment toolbar","Table cell text alignment":"Table cell text alignment","Table properties":"Table properties","Table toolbar":"Table toolbar","Tenge sign":"Tenge sign",Text:"Text","Text alignment":"Text alignment","Text alignment toolbar":"Text alignment toolbar","Text alternative":"Text alternative","Text highlight toolbar":"Text highlight toolbar","Text to find must not be empty.":"Text to find must not be empty.",'The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".':'The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".',"The URL must not be empty.":"The URL must not be empty.",'The value is invalid. Try "10px" or "2em" or simply "2".':'The value is invalid. Try "10px" or "2em" or simply "2".',"There exists":"There exists","This link has no URL":"This link has no URL","This media URL is not supported.":"This media URL is not supported.","Tilde operator":"Tilde operator","Tip: Find some text first in order to replace it.":"Tip: Find some text first in order to replace it.","Tip: Paste the URL into the content to embed faster.":"Tip: Paste the URL into the content to embed faster.","Toggle caption off":"Toggle caption off","Toggle caption on":"Toggle caption on","Toggle the circle list style":"Toggle the circle list style","Toggle the decimal list style":"Toggle the decimal list style","Toggle the decimal with leading zero list style":"Toggle the decimal with leading zero list style","Toggle the disc list style":"Toggle the disc list style","Toggle the lower–latin list style":"Toggle the lower–latin list style","Toggle the lower–roman list style":"Toggle the lower–roman list style","Toggle the square list style":"Toggle the square list style","Toggle the upper–latin list style":"Toggle the upper–latin list style","Toggle the upper–roman list style":"Toggle the upper–roman list style","top with upwards arrow above":"top with upwards arrow above","Trade mark sign":"Trade mark sign","Tugrik sign":"Tugrik sign","Turkish lira sign":"Turkish lira sign",Turquoise:"Turquoise","Two dot leader":"Two dot leader",Underline:"Underline",Undo:"Undo",Union:"Union",Unlink:"Unlink","up down arrow with base":"up down arrow with base",Update:"Update","Update image URL":"Update image URL","Upload failed":"Upload failed","Upload in progress":"Upload in progress","Upper-latin":"Upper-latin","Upper-roman":"Upper-roman","upwards arrow to bar":"upwards arrow to bar","upwards dashed arrow":"upwards dashed arrow","upwards double arrow":"upwards double arrow","upwards simple arrow":"upwards simple arrow","Vertical text alignment toolbar":"Vertical text alignment toolbar","Vulgar fraction one half":"Vulgar fraction one half","Vulgar fraction one quarter":"Vulgar fraction one quarter","Vulgar fraction three quarters":"Vulgar fraction three quarters",White:"White","Whole words only":"Whole words only","Widget toolbar":"Widget toolbar",Width:"Width","Won sign":"Won sign","Words: %0":"Words: %0","Wrap text":"Wrap text",Yellow:"Yellow","Yellow marker":"Yellow marker","Yen sign":"Yen sign"})})(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
+/*!
+ * @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
+ * For licensing, see LICENSE.md.
+ */(function t(e,n){if(typeof exports==="object"&&typeof module==="object")module.exports=n();else if(typeof define==="function"&&define.amd)define([],n);else if(typeof exports==="object")exports["CKSource"]=n();else e["CKSource"]=n()})(self,(()=>(()=>{var t={8180:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content code{background-color:hsla(0,0%,78%,.3);border-radius:2px;padding:.15em}.ck.ck-editor__editable .ck-code_selected{background-color:hsla(0,0%,78%,.5)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-basic-styles/theme/code.css"],names:[],mappings:"AAKA,iBACC,kCAAuC,CAEvC,iBAAkB,CADlB,aAED,CAEA,0CACC,kCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},636:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content blockquote{border-left:5px solid #ccc;font-style:italic;margin-left:0;margin-right:0;overflow:hidden;padding-left:1.5em;padding-right:1.5em}.ck-content[dir=rtl] blockquote{border-left:0;border-right:5px solid #ccc}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-block-quote/theme/blockquote.css"],names:[],mappings:"AAKA,uBAWC,0BAAsC,CADtC,iBAAkB,CAFlB,aAAc,CACd,cAAe,CAPf,eAAgB,CAIhB,kBAAmB,CADnB,mBAOD,CAEA,gCACC,aAAc,CACd,2BACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},390:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position{display:inline;pointer-events:none;position:relative}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{position:absolute;width:0}.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__selection-handle,.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__type-around{display:none}:root{--ck-clipboard-drop-target-dot-width:12px;--ck-clipboard-drop-target-dot-height:8px;--ck-clipboard-drop-target-color:var(--ck-color-focus-border)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{background:var(--ck-clipboard-drop-target-color);border:1px solid var(--ck-clipboard-drop-target-color);bottom:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);margin-left:-1px;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span:after{border-color:var(--ck-clipboard-drop-target-color) transparent transparent transparent;border-style:solid;border-width:calc(var(--ck-clipboard-drop-target-dot-height)) calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0 calc(var(--ck-clipboard-drop-target-dot-width)*.5);content:"";display:block;height:0;left:50%;position:absolute;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);transform:translateX(-50%);width:0}.ck.ck-editor__editable .ck-widget.ck-clipboard-drop-target-range{outline:var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color)!important}.ck.ck-editor__editable .ck-widget:-webkit-drag{zoom:.6;outline:none!important}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-clipboard/theme/clipboard.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-clipboard/clipboard.css"],names:[],mappings:"AASC,8DACC,cAAe,CAEf,mBAAoB,CADpB,iBAOD,CAJC,mEACC,iBAAkB,CAClB,OACD,CAWA,qJACC,YACD,CCzBF,MACC,yCAA0C,CAC1C,yCAA0C,CAC1C,6DACD,CAOE,mEAIC,gDAAiD,CADjD,sDAAuD,CAFvD,2DAA8D,CAI9D,gBAAiB,CAHjB,wDAqBD,CAfC,yEAWC,sFAAuF,CAEvF,kBAAmB,CADnB,qKAA0K,CAX1K,UAAW,CAIX,aAAc,CAFd,QAAS,CAIT,QAAS,CADT,iBAAkB,CAElB,wDAA2D,CAE3D,0BAA2B,CAR3B,OAYD,CA2DF,kEACC,gGACD,CAKA,gDACC,OAAS,CACT,sBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\tdisplay: inline;\n\t\tposition: relative;\n\t\tpointer-events: none;\n\n\t\t& span {\n\t\t\tposition: absolute;\n\t\t\twidth: 0;\n\t\t}\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\t& > .ck-widget__selection-handle {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > .ck-widget__type-around {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-clipboard-drop-target-dot-width: 12px;\n\t--ck-clipboard-drop-target-dot-height: 8px;\n\t--ck-clipboard-drop-target-color: var(--ck-color-focus-border)\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\t& span {\n\t\t\tbottom: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\t\t\tbackground: var(--ck-clipboard-drop-target-color);\n\t\t\tmargin-left: -1px;\n\n\t\t\t/* The triangle above the marker */\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 50%;\n\t\t\t\ttop: calc(var(--ck-clipboard-drop-target-dot-height) * -.5);\n\n\t\t\t\ttransform: translateX(-50%);\n\t\t\t\tborder-color: var(--ck-clipboard-drop-target-color) transparent transparent transparent;\n\t\t\t\tborder-width: calc(var(--ck-clipboard-drop-target-dot-height)) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width));\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t// Horizontal drop target (between blocks).\n\t& .ck.ck-clipboard-drop-target-position {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\theight: 0;\n\t\tmargin: 0;\n\t\ttext-align: initial;\n\n\t\t& .ck-clipboard-drop-target__line {\n\t\t\tposition: absolute;\n\t\t\twidth: 100%;\n\t\t\theight: 0;\n\t\t\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\t\t\tmargin-top: -1px;\n\n\t\t\t&::before {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: calc(-1 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\ttop: 0;\n\n\t\t\t\ttransform: translateY(-50%);\n\t\t\t\tborder-color: transparent transparent transparent var(--ck-clipboard-drop-target-color);\n\t\t\t\tborder-width: var(--ck-clipboard-drop-target-dot-size) 0 var(--ck-clipboard-drop-target-dot-size) calc(2 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tright: calc(-1 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\ttop: 0;\n\n\t\t\t\ttransform: translateY(-50%);\n\t\t\t\tborder-color: transparent var(--ck-clipboard-drop-target-color) transparent transparent;\n\t\t\t\tborder-width: var(--ck-clipboard-drop-target-dot-size) calc(2 * var(--ck-clipboard-drop-target-dot-size)) var(--ck-clipboard-drop-target-dot-size) 0;\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\t\t}\n\t}\n\t*/\n\n\t/*\n\t * Styles of the widget that it a drop target.\n\t */\n\t& .ck-widget.ck-clipboard-drop-target-range {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color) !important;\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\tzoom: 0.6;\n\t\toutline: none !important;\n\t}\n}\n'],sourceRoot:""}]);const c=a},9085:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content pre{background:hsla(0,0%,78%,.3);border:1px solid #c4c4c4;border-radius:2px;color:#353535;direction:ltr;font-style:normal;min-width:200px;padding:1em;tab-size:4;text-align:left;white-space:pre-wrap}.ck-content pre code{background:unset;border-radius:0;padding:0}.ck.ck-editor__editable pre{position:relative}.ck.ck-editor__editable pre[data-language]:after{content:attr(data-language);position:absolute}:root{--ck-color-code-block-label-background:#757575}.ck.ck-editor__editable pre[data-language]:after{background:var(--ck-color-code-block-label-background);color:#fff;font-family:var(--ck-font-face);font-size:10px;line-height:16px;padding:var(--ck-spacing-tiny) var(--ck-spacing-medium);right:10px;top:-1px;white-space:nowrap}.ck.ck-code-block-dropdown .ck-dropdown__panel{max-height:250px;overflow-x:hidden;overflow-y:auto}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-code-block/theme/codeblock.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-code-block/codeblock.css"],names:[],mappings:"AAKA,gBAGC,4BAAiC,CACjC,wBAAiC,CACjC,iBAAkB,CAHlB,aAAwB,CAOxB,aAAc,CAMd,iBAAkB,CAGlB,eAAgB,CAjBhB,WAAY,CAUZ,UAAW,CAHX,eAAgB,CAIhB,oBAaD,CALC,qBACC,gBAAiB,CAEjB,eAAgB,CADhB,SAED,CAGD,4BACC,iBAMD,CAJC,iDACC,2BAA4B,CAC5B,iBACD,CCjCD,MACC,8CACD,CAEA,iDAGC,sDAAuD,CAMvD,UAAuB,CAHvB,+BAAgC,CADhC,cAAe,CAEf,gBAAiB,CACjB,uDAAwD,CANxD,UAAW,CADX,QAAS,CAST,kBACD,CAEA,+CAEC,gBAAiB,CAEjB,iBAAkB,CADlB,eAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},3638:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-editor{position:relative}.ck.ck-editor .ck-editor__top .ck-sticky-panel .ck-toolbar{z-index:var(--ck-z-modal)}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-bottom-width:0}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar{border-bottom-width:1px;border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:0}.ck.ck-editor__main>.ck-editor__editable{background:var(--ck-color-base-background);border-radius:0}.ck-rounded-corners .ck.ck-editor__main>.ck-editor__editable,.ck.ck-editor__main>.ck-editor__editable.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}.ck.ck-editor__main>.ck-editor__editable:not(.ck-focused){border-color:var(--ck-color-base-border)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-editor-classic/theme/classiceditor.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-editor-classic/classiceditor.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,cAIC,iBAMD,CAJC,2DAEC,yBACD,CCLC,gDCED,eDKC,CAPA,uICMA,qCAAsC,CDJpC,2BAA4B,CAC5B,4BAIF,CAPA,gDAMC,qBACD,CAEA,iFACC,uBAAwB,CCR1B,eDaC,CANA,yMCHA,qCAAsC,CDOpC,eAEF,CAKF,yCAEC,0CAA2C,CCpB3C,eD8BD,CAZA,yHCdE,qCAAsC,CDmBtC,wBAAyB,CACzB,yBAMF,CAHC,0DACC,wCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor {\n\t/* All the elements within `.ck-editor` are positioned relatively to it.\n\t If any element needs to be positioned with respect to the <body>, etc.,\n\t it must land outside of the `.ck-editor` in DOM. */\n\tposition: relative;\n\n\t& .ck-editor__top .ck-sticky-panel .ck-toolbar {\n\t\t/* https://github.com/ckeditor/ckeditor5-editor-classic/issues/62 */\n\t\tz-index: var(--ck-z-modal);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_rounded.css";\n\n.ck.ck-editor__top {\n\t& .ck-sticky-panel {\n\t\t& .ck-toolbar {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-bottom-left-radius: 0;\n\t\t\t\tborder-bottom-right-radius: 0;\n\t\t\t}\n\n\t\t\tborder-bottom-width: 0;\n\t\t}\n\n\t\t& .ck-sticky-panel__content_sticky .ck-toolbar {\n\t\t\tborder-bottom-width: 1px;\n\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* Note: Use ck-editor__main to make sure these styles don\'t apply to other editor types */\n.ck.ck-editor__main > .ck-editor__editable {\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/113 */\n\tbackground: var(--ck-color-base-background);\n\n\t@mixin ck-rounded-corners {\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&:not(.ck-focused) {\n\t\tborder-color: var(--ck-color-base-border);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},8894:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-placeholder,.ck.ck-placeholder{position:relative}.ck .ck-placeholder:before,.ck.ck-placeholder:before{content:attr(data-placeholder);left:0;pointer-events:none;position:absolute;right:0}.ck.ck-read-only .ck-placeholder:before{display:none}.ck.ck-reset_all .ck-placeholder{position:relative}.ck .ck-placeholder:before,.ck.ck-placeholder:before{color:var(--ck-color-engine-placeholder-text);cursor:text}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-engine/theme/placeholder.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-engine/placeholder.css"],names:[],mappings:"AAMA,uCAEC,iBAWD,CATC,qDAIC,8BAA+B,CAF/B,MAAO,CAKP,mBAAoB,CANpB,iBAAkB,CAElB,OAKD,CAKA,wCACC,YACD,CAQD,iCACC,iBACD,CC5BC,qDAEC,6CAA8C,CAD9C,WAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* See ckeditor/ckeditor5#936. */\n.ck.ck-placeholder, .ck .ck-placeholder {\n\t&::before {\n\t\tcursor: text;\n\t\tcolor: var(--ck-color-engine-placeholder-text);\n\t}\n}\n"],sourceRoot:""}]);const c=a},4401:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-editor__editable span[data-ck-unsafe-element]{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-engine/theme/renderer.css"],names:[],mappings:"AAMA,qDACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},5436:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-find-result{background:var(--ck-color-highlight-background);color:var(--ck-color-text)}.ck-find-result_selected{background:#ff9633}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-find-and-replace/theme/findandreplace.css"],names:[],mappings:"AAKA,gBACC,+CAAgD,CAChD,0BACD,CAEA,yBACC,kBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},9289:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-find-and-replace-form{max-width:100%}.ck.ck-find-and-replace-form fieldset{display:flex}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{position:absolute}.ck.ck-find-and-replace-form{width:400px}.ck.ck-find-and-replace-form:focus{outline:none}.ck.ck-find-and-replace-form fieldset{align-content:stretch;align-items:center;border:0;flex-direction:row;flex-wrap:nowrap;margin:0;padding:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset>.ck-button{flex:0 0 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset>*+*{margin-left:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset>*+*{margin-right:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view{flex:1 1 auto}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view .ck-input{min-width:50px;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find{align-items:flex-start}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find{font-weight:700}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find .ck-button__label{padding-left:var(--ck-spacing-large);padding-right:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-prev>.ck-icon{transform:rotate(90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-next>.ck-icon{transform:rotate(-90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{left:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{color:var(--ck-color-base-border)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace{flex-wrap:wrap;justify-content:flex-end;margin-top:calc(var(--ck-spacing-large)*-1)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view{margin-bottom:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-options-dropdown{margin-left:0;margin-right:auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view,.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view .ck-input{width:100%}@media screen and (max-width:600px){.ck.ck-find-and-replace-form{width:300px}.ck.ck-find-and-replace-form fieldset{flex-wrap:wrap}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-labeled-field-view{flex:1 0 auto;margin-bottom:var(--ck-spacing-standard);width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button{text-align:center}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type .ck-button__label{text-align:center;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>:not(.ck-labeled-field-view){flex:1 1 auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-dropdown:not(.ck-labeled-field-view){flex-grow:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-button:not(.ck-labeled-field-view)>.ck-button__label{text-align:center;width:100%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-find-and-replace/theme/findandreplaceform.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-find-and-replace/findandreplaceform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,6BACC,cAUD,CARC,sCACC,YAMD,CAHC,yFACC,iBACD,CCNF,6BACC,WAyGD,CAnGC,mCACC,YACD,CAEA,sCAIC,qBAAsB,CADtB,kBAAmB,CAInB,QAAS,CANT,kBAAmB,CACnB,gBAAiB,CAMjB,QAAS,CAFT,+BAwFD,CApFC,iDACC,aACD,CAGC,oDACC,sCACD,CAIA,oDACC,uCACD,CAGD,6DACC,aAMD,CAJC,uEAEC,cAAe,CADf,UAED,CAID,qEAEC,sBAkCD,CAhCC,qFACC,eAOD,CAJC,uGACC,oCAAqC,CACrC,qCACD,CAGD,8FACC,uBACD,CAEA,8FACC,wBACD,CAEA,yFACC,OAAQ,CACR,0BAWD,CAbA,mGAKE,gCAQF,CAbA,mGASE,+BAIF,CAbA,yFAYC,iCACD,CAID,wEACC,cAAe,CACf,wBAAyB,CACzB,2CAeD,CAbC,+FACC,qCACD,CAEA,6FAEC,aAAc,CADd,iBAED,CAEA,wMAEC,UACD,CCzGF,oCD+GA,6BACC,WAiDD,CA/CC,sCACC,cA6CD,CAzCE,4FACC,aAAc,CAEd,wCAAyC,CADzC,UAED,CAEA,gFACC,iBAkBD,CAhBC,8FACC,aAcD,CAfA,wGAIE,aAWF,CAfA,wGAQE,cAOF,CAJC,gHAEC,iBAAkB,CADlB,UAED,CAMH,qGACC,aAUD,CARC,iHACC,WACD,CAEA,iIAEC,iBAAkB,CADlB,UAED,CC5JH",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-find-and-replace-form {\n\tmax-width: 100%;\n\n\t& fieldset {\n\t\tdisplay: flex;\n\n\t\t/* The find fieldset */\n\t\t&.ck-find-and-replace-form__find .ck-results-counter {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding 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 <form> needs tabindex="-1" for proper Esc handling after being clicked\n\t * but the side effect is that this creates a nasty focus outline in some browsers.\n\t */\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t& fieldset {\n\t\tflex-direction: row;\n\t\tflex-wrap: nowrap;\n\t\talign-items: center;\n\t\talign-content: stretch;\n\n\t\tpadding: var(--ck-spacing-large);\n\t\tborder: 0;\n\t\tmargin: 0;\n\n\t\t& > .ck-button {\n\t\t\tflex: 0 0 auto;\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\t& > * + * {\n\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t& > * + * {\n\t\t\t\tmargin-right: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex: 1 1 auto;\n\n\t\t\t& .ck-input {\n\t\t\t\twidth: 100%;\n\t\t\t\tmin-width: 50px;\n\t\t\t}\n\t\t}\n\n\t\t/* The find fieldset */\n\t\t&.ck-find-and-replace-form__find {\n\t\t\t/* To display all controls in line when there\'s an error under the input */\n\t\t\talign-items: flex-start;\n\n\t\t\t& > .ck-button-find {\n\t\t\t\tfont-weight: bold;\n\n\t\t\t\t/* Beef the find button up a little. It\'s the main action button in the form */\n\t\t\t\t& .ck-button__label {\n\t\t\t\t\tpadding-left: var(--ck-spacing-large);\n\t\t\t\t\tpadding-right: var(--ck-spacing-large);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& > .ck-button-prev > .ck-icon {\n\t\t\t\ttransform: rotate(90deg);\n\t\t\t}\n\n\t\t\t& > .ck-button-next > .ck-icon {\n\t\t\t\ttransform: rotate(-90deg);\n\t\t\t}\n\n\t\t\t& .ck-results-counter {\n\t\t\t\ttop: 50%;\n\t\t\t\ttransform: translateY(-50%);\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tright: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tleft: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\tcolor: var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\n\t\t/* The replace fieldset */\n\t\t&.ck-find-and-replace-form__replace {\n\t\t\tflex-wrap: wrap;\n\t\t\tjustify-content: flex-end;\n\t\t\tmargin-top: calc( -1 * var(--ck-spacing-large) );\n\n\t\t\t& > .ck-labeled-field-view {\n\t\t\t\tmargin-bottom: var(--ck-spacing-large);\n\t\t\t}\n\n\t\t\t& > .ck-options-dropdown {\n\t\t\t\tmargin-right: auto;\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t& > .ck-labeled-field-view,\n\t\t\t& > .ck-labeled-field-view .ck-input {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\t}\n}\n\n@mixin ck-media-phone {\n\t.ck.ck-find-and-replace-form {\n\t\twidth: 300px;\n\n\t\t& fieldset {\n\t\t\tflex-wrap: wrap;\n\n\t\t\t/* The find fieldset */\n\t\t\t&.ck-find-and-replace-form__find {\n\t\t\t\t& .ck-labeled-field-view {\n\t\t\t\t\tflex: 1 0 auto;\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\tmargin-bottom: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\t& > .ck-button {\n\t\t\t\t\ttext-align: center;\n\n\t\t\t\t\t&:first-of-type {\n\t\t\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t\t\tmargin-right: 0;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t& .ck-button__label {\n\t\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\t\ttext-align: center;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/* The replace fieldset */\n\t\t\t&.ck-find-and-replace-form__replace > :not(.ck-labeled-field-view) {\n\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t&.ck-dropdown {\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t}\n\n\t\t\t\t&.ck-button > .ck-button__label {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},3230:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-heading_heading1{font-size:20px}.ck.ck-heading_heading2{font-size:17px}.ck.ck-heading_heading3{font-size:14px}.ck[class*=ck-heading_heading]{font-weight:700}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__button .ck-button__label{width:8em}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__panel .ck-list__item{min-width:18em}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-heading/theme/heading.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-heading/heading.css"],names:[],mappings:"AAKA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,+BACC,eACD,CCZC,2EACC,SACD,CAEA,uEACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},713:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-highlight-marker-yellow:#fdfd77;--ck-highlight-marker-green:#62f962;--ck-highlight-marker-pink:#fc7899;--ck-highlight-marker-blue:#72ccfd;--ck-highlight-pen-red:#e71313;--ck-highlight-pen-green:#128a00}.ck-content .marker-yellow{background-color:var(--ck-highlight-marker-yellow)}.ck-content .marker-green{background-color:var(--ck-highlight-marker-green)}.ck-content .marker-pink{background-color:var(--ck-highlight-marker-pink)}.ck-content .marker-blue{background-color:var(--ck-highlight-marker-blue)}.ck-content .pen-red{background-color:transparent;color:var(--ck-highlight-pen-red)}.ck-content .pen-green{background-color:transparent;color:var(--ck-highlight-pen-green)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-highlight/theme/highlight.css"],names:[],mappings:"AAKA,MACC,oCAA+C,CAC/C,mCAA+C,CAC/C,kCAA8C,CAC9C,kCAA8C,CAC9C,8BAAwC,CACxC,gCACD,CAGC,2BACC,kDACD,CAFA,0BACC,iDACD,CAFA,yBACC,gDACD,CAFA,yBACC,gDACD,CAIA,qBAIC,4BAA6B,CAH7B,iCAID,CALA,uBAIC,4BAA6B,CAH7B,mCAID",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-highlight-marker-yellow: hsl(60, 97%, 73%);\n\t--ck-highlight-marker-green: hsl(120, 93%, 68%);\n\t--ck-highlight-marker-pink: hsl(345, 96%, 73%);\n\t--ck-highlight-marker-blue: hsl(201, 97%, 72%);\n\t--ck-highlight-pen-red: hsl(0, 85%, 49%);\n\t--ck-highlight-pen-green: hsl(112, 100%, 27%);\n}\n\n@define-mixin highlight-marker-color $color {\n\t.ck-content .marker-$color {\n\t\tbackground-color: var(--ck-highlight-marker-$color);\n\t}\n}\n\n@define-mixin highlight-pen-color $color {\n\t.ck-content .pen-$color {\n\t\tcolor: var(--ck-highlight-pen-$color);\n\n\t\t/* Override default yellow background of `<mark>` from user agent stylesheet */\n\t\tbackground-color: transparent;\n\t}\n}\n\n@mixin highlight-marker-color yellow;\n@mixin highlight-marker-color green;\n@mixin highlight-marker-color pink;\n@mixin highlight-marker-color blue;\n\n@mixin highlight-pen-color red;\n@mixin highlight-pen-color green;\n"],sourceRoot:""}]);const c=a},2536:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-editor__editable .ck-horizontal-line{display:flow-root}.ck-content hr{background:#dedede;border:0;height:4px;margin:15px 0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-horizontal-line/theme/horizontalline.css"],names:[],mappings:"AAMA,yCAEC,iBACD,CAEA,eAGC,kBAA2B,CAC3B,QAAS,CAFT,UAAW,CADX,aAID",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},3403:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-widget.raw-html-embed{display:flow-root;font-style:normal;margin:.9em auto;min-width:15em;position:relative}.ck-widget.raw-html-embed:before{position:absolute;z-index:1}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{display:flex;flex-direction:column;position:absolute}.ck-widget.raw-html-embed .raw-html-embed__preview{display:flex;overflow:hidden;position:relative}.ck-widget.raw-html-embed .raw-html-embed__preview-content{border-collapse:separate;border-spacing:7px;display:table;margin:auto;position:relative;width:100%}.ck-widget.raw-html-embed .raw-html-embed__preview-placeholder{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}:root{--ck-html-embed-content-width:calc(100% - var(--ck-icon-size)*1.5);--ck-html-embed-source-height:10em;--ck-html-embed-unfocused-outline-width:1px;--ck-html-embed-content-min-height:calc(var(--ck-icon-size) + var(--ck-spacing-standard));--ck-html-embed-source-disabled-background:var(--ck-color-base-foreground);--ck-html-embed-source-disabled-color:#737373}.ck-widget.raw-html-embed{background-color:var(--ck-color-base-foreground);font-size:var(--ck-font-size-base)}.ck-widget.raw-html-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.raw-html-embed[dir=ltr]{text-align:left}.ck-widget.raw-html-embed[dir=rtl]{text-align:right}.ck-widget.raw-html-embed:before{background:#999;border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);content:attr(data-html-embed-label);font-family:var(--ck-font-face);font-size:var(--ck-font-size-tiny);left:var(--ck-spacing-standard);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);top:calc(var(--ck-html-embed-unfocused-outline-width)*-1);transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck-widget.raw-html-embed[dir=rtl]:before{left:auto;right:var(--ck-spacing-standard)}.ck-widget.raw-html-embed[dir=ltr] .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck.ck-editor__editable.ck-blurred .ck-widget.raw-html-embed.ck-widget_selected:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck.ck-editor__editable:not(.ck-blurred) .ck-widget.raw-html-embed.ck-widget_selected:before{background:var(--ck-color-focus-border);padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck.ck-editor__editable .ck-widget.raw-html-embed:not(.ck-widget_selected):hover:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck-widget.raw-html-embed .raw-html-embed__content-wrapper{padding:var(--ck-spacing-standard)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{right:var(--ck-spacing-standard);top:var(--ck-spacing-standard)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__save-button{color:var(--ck-color-button-save)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__cancel-button{color:var(--ck-color-button-cancel)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button:not(:first-child){margin-top:var(--ck-spacing-small)}.ck-widget.raw-html-embed[dir=rtl] .raw-html-embed__buttons-wrapper{left:var(--ck-spacing-standard);right:auto}.ck-widget.raw-html-embed .raw-html-embed__source{box-sizing:border-box;direction:ltr;font-family:monospace;font-size:var(--ck-font-size-base);height:var(--ck-html-embed-source-height);min-width:0;padding:var(--ck-spacing-standard);resize:none;tab-size:4;text-align:left;white-space:pre-wrap;width:var(--ck-html-embed-content-width)}.ck-widget.raw-html-embed .raw-html-embed__source[disabled]{-webkit-text-fill-color:var(--ck-html-embed-source-disabled-color);background:var(--ck-html-embed-source-disabled-background);color:var(--ck-html-embed-source-disabled-color);opacity:1}.ck-widget.raw-html-embed .raw-html-embed__preview{min-height:var(--ck-html-embed-content-min-height);width:var(--ck-html-embed-content-width)}.ck-editor__editable:not(.ck-read-only) .ck-widget.raw-html-embed .raw-html-embed__preview{pointer-events:none}.ck-widget.raw-html-embed .raw-html-embed__preview-content{background-color:var(--ck-color-base-foreground);box-sizing:border-box}.ck-widget.raw-html-embed .raw-html-embed__preview-content>*{margin-left:auto;margin-right:auto}.ck-widget.raw-html-embed .raw-html-embed__preview-placeholder{color:var(--ck-html-embed-source-disabled-color)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-html-embed/theme/htmlembed.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-html-embed/htmlembed.css"],names:[],mappings:"AAMA,0BAMC,iBAAkB,CAOlB,iBAAkB,CATlB,gBAAkB,CAMlB,cAAe,CALf,iBAwDD,CA5CC,iCACC,iBAAkB,CAGlB,SACD,CAKA,2DAEC,YAAa,CACb,qBAAsB,CAFtB,iBAGD,CAEA,mDAGC,YAAa,CADb,eAAgB,CADhB,iBAGD,CAEA,2DAOC,wBAAyB,CACzB,kBAAmB,CAFnB,aAAc,CAHd,WAAY,CADZ,iBAAkB,CADlB,UAQD,CAEA,+DAQC,kBAAmB,CAHnB,QAAS,CAET,YAAa,CAEb,sBAAuB,CAPvB,MAAO,CADP,iBAAkB,CAGlB,OAAQ,CADR,KAOD,CC7DD,MACC,kEAAqE,CACrE,kCAAmC,CACnC,2CAA4C,CAC5C,yFAA0F,CAE1F,0EAA2E,CAC3E,6CACD,CAGA,0BAEC,gDAAiD,CADjD,kCA0ID,CAvIC,+DACC,iGACD,CAGA,mCACC,eACD,CAEA,mCACC,gBACD,CAIA,iCAIC,eAA4B,CAG5B,iEAAkE,CAClE,qCAAsC,CAPtC,mCAAoC,CASpC,+BAAgC,CADhC,kCAAmC,CANnC,+BAAgC,CAGhC,kIAAmI,CAJnI,yDAA4D,CAG5D,0GAMD,CAEA,0CACC,SAAU,CACV,gCACD,CAGA,iIACC,gBACD,CAxCD,uFA4CE,sDAAuD,CADvD,KAgGF,CA3IA,6FAkDE,uCAAwC,CADxC,sDAAuD,CADvD,KA2FF,CA3IA,wFAuDE,sDAAuD,CADvD,KAqFF,CA/EC,2DACC,kCACD,CAGA,2DAEC,gCAAiC,CADjC,8BAcD,CAXC,kGACC,iCACD,CAEA,oGACC,mCACD,CAEA,wFACC,kCACD,CAGD,oEACC,+BAAgC,CAChC,UACD,CAGA,kDACC,qBAAsB,CActB,aAAc,CAPd,qBAAsB,CAGtB,kCAAmC,CATnC,yCAA0C,CAG1C,WAAY,CACZ,kCAAmC,CAFnC,WAAY,CAKZ,UAAW,CAKX,eAAgB,CAJhB,oBAAqB,CAPrB,wCAsBD,CARC,4DAKC,kEAAmE,CAJnE,0DAA2D,CAC3D,gDAAiD,CAIjD,SACD,CAID,mDACC,kDAAmD,CACnD,wCAMD,CARA,2FAME,mBAEF,CAEA,2DAEC,gDAAiD,CADjD,qBAOD,CAJC,6DACC,gBAAiB,CACjB,iBACD,CAGD,+DACC,gDACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* The feature container. */\n.ck-widget.raw-html-embed {\n\t/* Give the embed some air. */\n\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\tmargin: 0.9em auto;\n\tposition: relative;\n\tdisplay: flow-root;\n\n\t/* Give the html embed some minimal width in the content to prevent them\n\tfrom being "squashed" in tight spaces, e.g. in table cells (https://github.com/ckeditor/ckeditor5/issues/8331) */\n\tmin-width: 15em;\n\n\t/* Don\'t inherit the style, e.g. when in a block quote. */\n\tfont-style: normal;\n\n\t/* ----- Emebed label in the upper left corner ----------------------------------------------- */\n\n\t&::before {\n\t\tposition: absolute;\n\n\t\t/* Make sure the content does not cover the label. */\n\t\tz-index: 1;\n\t}\n\n\t/* ----- Emebed internals --------------------------------------------------------------------- */\n\n\t/* The switch mode button wrapper. */\n\t& .raw-html-embed__buttons-wrapper {\n\t\tposition: absolute;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t& .raw-html-embed__preview {\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tdisplay: flex;\n\t}\n\n\t& .raw-html-embed__preview-content {\n\t\twidth: 100%;\n\t\tposition: relative;\n\t\tmargin: auto;\n\n\t\t/* Gives spacing to the small renderable elements, so they always cover the placeholder. */\n\t\tdisplay: table;\n\t\tborder-collapse: separate;\n\t\tborder-spacing: 7px;\n\t}\n\n\t& .raw-html-embed__preview-placeholder {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t}\n}\n','/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-html-embed-content-width: calc(100% - 1.5 * var(--ck-icon-size));\n\t--ck-html-embed-source-height: 10em;\n\t--ck-html-embed-unfocused-outline-width: 1px;\n\t--ck-html-embed-content-min-height: calc(var(--ck-icon-size) + var(--ck-spacing-standard));\n\n\t--ck-html-embed-source-disabled-background: var(--ck-color-base-foreground);\n\t--ck-html-embed-source-disabled-color: hsl(0deg 0% 45%);\n}\n\n/* The feature container. */\n.ck-widget.raw-html-embed {\n\tfont-size: var(--ck-font-size-base);\n\tbackground-color: var(--ck-color-base-foreground);\n\n\t&:not(.ck-widget_selected):not(:hover) {\n\t\toutline: var(--ck-html-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border);\n\t}\n\n\t/* HTML embed widget itself should respect UI language direction */\n\t&[dir="ltr"] {\n\t\ttext-align: left;\n\t}\n\n\t&[dir="rtl"] {\n\t\ttext-align: right;\n\t}\n\n\t/* ----- Embed label in the upper left corner ----------------------------------------------- */\n\n\t&::before {\n\t\tcontent: attr(data-html-embed-label);\n\t\ttop: calc(-1 * var(--ck-html-embed-unfocused-outline-width));\n\t\tleft: var(--ck-spacing-standard);\n\t\tbackground: hsl(0deg 0% 60%);\n\t\ttransition: background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\t\tpadding: calc(var(--ck-spacing-tiny) + var(--ck-html-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);\n\t\tborder-radius: 0 0 var(--ck-border-radius) var(--ck-border-radius);\n\t\tcolor: var(--ck-color-base-background);\n\t\tfont-size: var(--ck-font-size-tiny);\n\t\tfont-family: var(--ck-font-face);\n\t}\n\n\t&[dir="rtl"]::before {\n\t\tleft: auto;\n\t\tright: var(--ck-spacing-standard);\n\t}\n\n\t/* Make space for label but it only collides in LTR languages */\n\t&[dir="ltr"] .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before {\n\t\tmargin-left: 50px;\n\t}\n\n\t@nest .ck.ck-editor__editable.ck-blurred &.ck-widget_selected::before {\n\t\ttop: 0px;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-small);\n\t}\n\n\t@nest .ck.ck-editor__editable:not(.ck-blurred) &.ck-widget_selected::before {\n\t\ttop: 0;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-small);\n\t\tbackground: var(--ck-color-focus-border);\n\t}\n\n\t@nest .ck.ck-editor__editable &:not(.ck-widget_selected):hover::before {\n\t\ttop: 0px;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-small);\n\t}\n\n\t/* ----- Emebed internals --------------------------------------------------------------------- */\n\n\t& .raw-html-embed__content-wrapper {\n\t\tpadding: var(--ck-spacing-standard);\n\t}\n\n\t/* The switch mode button wrapper. */\n\t& .raw-html-embed__buttons-wrapper {\n\t\ttop: var(--ck-spacing-standard);\n\t\tright: var(--ck-spacing-standard);\n\n\t\t& .ck-button.raw-html-embed__save-button {\n\t\t\tcolor: var(--ck-color-button-save);\n\t\t}\n\n\t\t& .ck-button.raw-html-embed__cancel-button {\n\t\t\tcolor: var(--ck-color-button-cancel);\n\t\t}\n\n\t\t& .ck-button:not(:first-child) {\n\t\t\tmargin-top: var(--ck-spacing-small);\n\t\t}\n\t}\n\n\t&[dir="rtl"] .raw-html-embed__buttons-wrapper {\n\t\tleft: var(--ck-spacing-standard);\n\t\tright: auto;\n\t}\n\n\t/* The edit source element. */\n\t& .raw-html-embed__source {\n\t\tbox-sizing: border-box;\n\t\theight: var(--ck-html-embed-source-height);\n\t\twidth: var(--ck-html-embed-content-width);\n\t\tresize: none;\n\t\tmin-width: 0;\n\t\tpadding: var(--ck-spacing-standard);\n\n\t\tfont-family: monospace;\n\t\ttab-size: 4;\n\t\twhite-space: pre-wrap;\n\t\tfont-size: var(--ck-font-size-base); /* Safari needs this. */\n\n\t\t/* HTML code is direction–agnostic. */\n\t\ttext-align: left;\n\t\tdirection: ltr;\n\n\t\t&[disabled] {\n\t\t\tbackground: var(--ck-html-embed-source-disabled-background);\n\t\t\tcolor: var(--ck-html-embed-source-disabled-color);\n\n\t\t\t/* Safari needs this for the proper text color in disabled input (https://github.com/ckeditor/ckeditor5/issues/8320). */\n\t\t\t-webkit-text-fill-color: var(--ck-html-embed-source-disabled-color);\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t/* The preview data container. */\n\t& .raw-html-embed__preview {\n\t\tmin-height: var(--ck-html-embed-content-min-height);\n\t\twidth: var(--ck-html-embed-content-width);\n\n\t\t/* Disable all mouse interaction as long as the editor is not read–only. */\n\t\t@nest .ck-editor__editable:not(.ck-read-only) & {\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t& .raw-html-embed__preview-content {\n\t\tbox-sizing: border-box;\n\t\tbackground-color: var(--ck-color-base-foreground);\n\n\t\t& > * {\n\t\t\tmargin-left: auto;\n\t\t\tmargin-right: auto;\n\t\t}\n\t}\n\n\t& .raw-html-embed__preview-placeholder {\n\t\tcolor: var(--ck-html-embed-source-disabled-color)\n\t}\n}\n'],sourceRoot:""}]);const c=a},8468:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-html-object-embed-unfocused-outline-width:1px}.ck-widget.html-object-embed{background-color:var(--ck-color-base-foreground);font-size:var(--ck-font-size-base);min-width:calc(76px + var(--ck-spacing-standard));padding:var(--ck-spacing-small);padding-top:calc(var(--ck-font-size-tiny) + var(--ck-spacing-large))}.ck-widget.html-object-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-object-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.html-object-embed:before{background:#999;border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);content:attr(data-html-object-embed-label);font-family:var(--ck-font-face);font-size:var(--ck-font-size-tiny);font-style:normal;font-weight:400;left:var(--ck-spacing-standard);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-object-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);position:absolute;top:0;transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck-widget.html-object-embed .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck-widget.html-object-embed .html-object-embed__content{pointer-events:none}div.ck-widget.html-object-embed{margin:1em auto}span.ck-widget.html-object-embed{display:inline-block}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-html-support/theme/datafilter.css"],names:[],mappings:"AAKA,MACC,kDACD,CAEA,6BAEC,gDAAiD,CADjD,kCAAmC,CAKnC,iDAAkD,CAHlD,+BAAgC,CAEhC,oEAgCD,CA7BC,kEACC,wGACD,CAEA,oCAOC,eAA4B,CAG5B,iEAAkE,CAClE,qCAAsC,CAPtC,0CAA2C,CAS3C,+BAAgC,CADhC,kCAAmC,CAVnC,iBAAkB,CADlB,eAAmB,CAKnB,+BAAgC,CAGhC,yIAA0I,CAN1I,iBAAkB,CAElB,KAAM,CAGN,0GAMD,CAGA,2HACC,gBACD,CAEA,yDAEC,mBACD,CAGD,gCACC,eACD,CAEA,iCACC,oBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-html-object-embed-unfocused-outline-width: 1px;\n}\n\n.ck-widget.html-object-embed {\n\tfont-size: var(--ck-font-size-base);\n\tbackground-color: var(--ck-color-base-foreground);\n\tpadding: var(--ck-spacing-small);\n\t/* Leave space for label */\n\tpadding-top: calc(var(--ck-font-size-tiny) + var(--ck-spacing-large));\n\tmin-width: calc(76px + var(--ck-spacing-standard));\n\n\t&:not(.ck-widget_selected):not(:hover) {\n\t\toutline: var(--ck-html-object-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border);\n\t}\n\n\t&::before {\n\t\tfont-weight: normal;\n\t\tfont-style: normal;\n\t\tposition: absolute;\n\t\tcontent: attr(data-html-object-embed-label);\n\t\ttop: 0;\n\t\tleft: var(--ck-spacing-standard);\n\t\tbackground: hsl(0deg 0% 60%);\n\t\ttransition: background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\t\tpadding: calc(var(--ck-spacing-tiny) + var(--ck-html-object-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);\n\t\tborder-radius: 0 0 var(--ck-border-radius) var(--ck-border-radius);\n\t\tcolor: var(--ck-color-base-background);\n\t\tfont-size: var(--ck-font-size-tiny);\n\t\tfont-family: var(--ck-font-face);\n\t}\n\n\t/* Make space for label. */\n\t& .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before {\n\t\tmargin-left: 50px;\n\t}\n\n\t& .html-object-embed__content {\n\t\t/* Disable user interaction with embed content */\n\t\tpointer-events: none;\n\t}\n}\n\ndiv.ck-widget.html-object-embed {\n\tmargin: 1em auto;\n}\n\nspan.ck-widget.html-object-embed {\n\tdisplay: inline-block;\n}\n\n"],sourceRoot:""}]);const c=a},9048:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .image{clear:both;display:table;margin:.9em auto;min-width:50px;text-align:center}.ck-content .image img{display:block;margin:0 auto;max-width:100%;min-width:100%}.ck-content .image-inline{align-items:flex-start;display:inline-flex;max-width:100%}.ck-content .image-inline picture{display:flex}.ck-content .image-inline img,.ck-content .image-inline picture{flex-grow:1;flex-shrink:1;max-width:100%}.ck.ck-editor__editable .image>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}.ck.ck-editor__editable .image-inline.ck-widget_selected,.ck.ck-editor__editable .image.ck-widget_selected{z-index:1}.ck.ck-editor__editable .image-inline.ck-widget_selected ::selection{display:none}.ck.ck-editor__editable td .image-inline img,.ck.ck-editor__editable th .image-inline img{max-width:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/image.css"],names:[],mappings:"AAMC,mBAEC,UAAW,CADX,aAAc,CAOd,gBAAkB,CAGlB,cAAe,CARf,iBAuBD,CAbC,uBAEC,aAAc,CAGd,aAAc,CAGd,cAAe,CAGf,cACD,CAGD,0BAYC,sBAAuB,CANvB,mBAAoB,CAGpB,cAoBD,CAdC,kCACC,YACD,CAGA,gEAGC,WAAY,CACZ,aAAc,CAGd,cACD,CAUD,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAWA,2GACC,SAUD,CAHC,qEACC,YACD,CAOA,0FACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content {\n\t& .image {\n\t\tdisplay: table;\n\t\tclear: both;\n\t\ttext-align: center;\n\n\t\t/* Make sure there is some space between the content and the image. Center image by default. */\n\t\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\t \tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\t\tmargin: 0.9em auto;\n\n\t\t/* Make sure the caption will be displayed properly (See: https://github.com/ckeditor/ckeditor5/issues/1870). */\n\t\tmin-width: 50px;\n\n\t\t& img {\n\t\t\t/* Prevent unnecessary margins caused by line-height (see #44). */\n\t\t\tdisplay: block;\n\n\t\t\t/* Center the image if its width is smaller than the content\'s width. */\n\t\t\tmargin: 0 auto;\n\n\t\t\t/* Make sure the image never exceeds the size of the parent container (ckeditor/ckeditor5-ui#67). */\n\t\t\tmax-width: 100%;\n\n\t\t\t/* Make sure the image is never smaller than the parent container (See: https://github.com/ckeditor/ckeditor5/issues/9300). */\n\t\t\tmin-width: 100%\n\t\t}\n\t}\n\n\t& .image-inline {\n\t\t/*\n\t\t * Normally, the .image-inline would have "display: inline-block" and "img { width: 100% }" (to follow the wrapper while resizing).\n\t\t * Unfortunately, together with "srcset", it gets automatically stretched up to the width of the editing root.\n\t\t * This strange behavior does not happen with inline-flex.\n\t\t */\n\t\tdisplay: inline-flex;\n\n\t\t/* While being resized, don\'t allow the image to exceed the width of the editing root. */\n\t\tmax-width: 100%;\n\n\t\t/* This is required by Safari to resize images in a sensible way. Without this, the browser breaks the ratio. */\n\t\talign-items: flex-start;\n\n\t\t/* When the picture is present it must act as a flex container to let the img resize properly */\n\t\t& picture {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t/* When the picture is present, it must act like a resizable img. */\n\t\t& picture,\n\t\t& img {\n\t\t\t/* This is necessary for the img to span the entire .image-inline wrapper and to resize properly. */\n\t\t\tflex-grow: 1;\n\t\t\tflex-shrink: 1;\n\n\t\t\t/* Prevents overflowing the editing root boundaries when an inline image is very wide. */\n\t\t\tmax-width: 100%;\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Inhertit the content styles padding of the <figcaption> 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 <figcaption>.\n\t */\n\t& .image > figcaption.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the image caption placeholder doesn\'t overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\n\t/*\n\t * Make sure the selected inline image always stays on top of its siblings.\n\t * See https://github.com/ckeditor/ckeditor5/issues/9108.\n\t */\n\t& .image.ck-widget_selected {\n\t\tz-index: 1;\n\t}\n\n\t& .image-inline.ck-widget_selected {\n\t\tz-index: 1;\n\n\t\t/*\n\t\t * Make sure the native browser selection style is not displayed.\n\t\t * Inline image widgets have their own styles for the selected state and\n\t\t * leaving this up to the browser is asking for a visual collision.\n\t\t */\n\t\t& ::selection {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t/* The inline image nested in the table should have its original size if not resized.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9117. */\n\t& td,\n\t& th {\n\t\t& .image-inline img {\n\t\t\tmax-width: none;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const c=a},8662:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-image-caption-background:#f7f7f7;--ck-color-image-caption-text:#333;--ck-color-image-caption-highligted-background:#fd0}.ck-content .image>figcaption{background-color:var(--ck-color-image-caption-background);caption-side:bottom;color:var(--ck-color-image-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;word-break:break-word}.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:ck-image-caption-highlight .6s ease-out}@keyframes ck-image-caption-highlight{0%{background-color:var(--ck-color-image-caption-highligted-background)}to{background-color:var(--ck-color-image-caption-background)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imagecaption.css"],names:[],mappings:"AAKA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,mDACD,CAGA,8BAKC,yDAA0D,CAH1D,mBAAoB,CAEpB,wCAAyC,CAHzC,qBAAsB,CAMtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,qBAMD,CAGA,qEACC,iDACD,CAEA,sCACC,GACC,oEACD,CAEA,GACC,yDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-image-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-image-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-image-caption-highligted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .image > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: bottom;\n\tword-break: break-word;\n\tcolor: var(--ck-color-image-caption-text);\n\tbackground-color: var(--ck-color-image-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .image > figcaption.image__caption_highlighted {\n\tanimation: ck-image-caption-highlight .6s ease-out;\n}\n\n@keyframes ck-image-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-image-caption-highligted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-image-caption-background);\n\t}\n}\n"],sourceRoot:""}]);const c=a},9292:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-image-insert__panel{padding:var(--ck-spacing-large)}.ck.ck-image-insert__ck-finder-button{border:1px solid #ccc;border-radius:var(--ck-border-radius);display:block;margin:var(--ck-spacing-standard) auto;width:100%}.ck.ck-splitbutton>.ck-file-dialog-button.ck-button{border:none;margin:0;padding:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageinsert.css"],names:[],mappings:"AAKA,2BACC,+BACD,CAEA,sCAIC,qBAAiC,CACjC,qCAAsC,CAJtC,aAAc,CAEd,sCAAuC,CADvC,UAID,CAGA,oDAGC,WAAY,CADZ,QAAS,CADT,SAGD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-image-insert__panel {\n\tpadding: var(--ck-spacing-large);\n}\n\n.ck.ck-image-insert__ck-finder-button {\n\tdisplay: block;\n\twidth: 100%;\n\tmargin: var(--ck-spacing-standard) auto;\n\tborder: 1px solid hsl(0, 0%, 80%);\n\tborder-radius: var(--ck-border-radius);\n}\n\n/* https://github.com/ckeditor/ckeditor5/issues/7986 */\n.ck.ck-splitbutton > .ck-file-dialog-button.ck-button {\n\tpadding: 0;\n\tmargin: 0;\n\tborder: none;\n}\n"],sourceRoot:""}]);const c=a},5150:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-image-insert-form:focus{outline:none}.ck.ck-form__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__row>:not(.ck-label){flex-grow:1}.ck.ck-form__row.ck-image-insert-form__action-row{margin-top:var(--ck-spacing-standard)}.ck.ck-form__row.ck-image-insert-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-image-insert-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row.ck-image-insert-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageinsertformrowview.css"],names:[],mappings:"AAMC,+BAEC,YACD,CAGD,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAmBD,CAhBC,iCACC,WACD,CAEA,kDACC,qCAUD,CARC,sIAEC,sBACD,CAEA,+EACC,0BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-image-insert-form {\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n}\n\n.ck.ck-form__row {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-between;\n\n\t/* Ignore labels that work as fieldset legends */\n\t& > *:not(.ck-label) {\n\t\tflex-grow: 1;\n\t}\n\n\t&.ck-image-insert-form__action-row {\n\t\tmargin-top: var(--ck-spacing-standard);\n\n\t\t& .ck-button-save,\n\t\t& .ck-button-cancel {\n\t\t\tjustify-content: center;\n\t\t}\n\n\t\t& .ck-button .ck-button__label {\n\t\t\tcolor: var(--ck-color-text);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const c=a},1043:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .image.image_resized{box-sizing:border-box;display:block;max-width:100%}.ck-content .image.image_resized img{width:100%}.ck-content .image.image_resized>figcaption{display:block}.ck.ck-editor__editable td .image-inline.image_resized img,.ck.ck-editor__editable th .image-inline.image_resized img{max-width:100%}[dir=ltr] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-left:var(--ck-spacing-standard)}.ck.ck-dropdown .ck-button.ck-resize-image-button .ck-button__label{width:4em}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageresize.css"],names:[],mappings:"AAKA,iCAQC,qBAAsB,CADtB,aAAc,CANd,cAkBD,CATC,qCAEC,UACD,CAEA,4CAEC,aACD,CAQC,sHACC,cACD,CAIF,oFACC,uCACD,CAEA,oFACC,sCACD,CAEA,oEACC,SACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .image.image_resized {\n\tmax-width: 100%;\n\t/*\n\tThe `<figure>` 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 `<figure>` element that determines the image width. */\n\t\twidth: 100%;\n\t}\n\n\t& > figcaption {\n\t\t/* The `<figure>` element uses `display:block`, so `<figcaption>` 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 c=a},4622:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-image-style-spacing:1.5em;--ck-inline-image-style-spacing:calc(var(--ck-image-style-spacing)/2)}.ck-content .image-style-block-align-left,.ck-content .image-style-block-align-right{max-width:calc(100% - var(--ck-image-style-spacing))}.ck-content .image-style-align-left,.ck-content .image-style-align-right{clear:none}.ck-content .image-style-side{float:right;margin-left:var(--ck-image-style-spacing);max-width:50%}.ck-content .image-style-align-left{float:left;margin-right:var(--ck-image-style-spacing)}.ck-content .image-style-align-center{margin-left:auto;margin-right:auto}.ck-content .image-style-align-right{float:right;margin-left:var(--ck-image-style-spacing)}.ck-content .image-style-block-align-right{margin-left:auto;margin-right:0}.ck-content .image-style-block-align-left{margin-left:0;margin-right:auto}.ck-content p+.image-style-align-left,.ck-content p+.image-style-align-right,.ck-content p+.image-style-side{margin-top:0}.ck-content .image-inline.image-style-align-left,.ck-content .image-inline.image-style-align-right{margin-bottom:var(--ck-inline-image-style-spacing);margin-top:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-left{margin-right:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-right{margin-left:var(--ck-inline-image-style-spacing)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-background)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after{display:none}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-hover-background)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imagestyle.css"],names:[],mappings:"AAKA,MACC,8BAA+B,CAC/B,qEACD,CAMC,qFAEC,oDACD,CAIA,yEAEC,UACD,CAEA,8BACC,WAAY,CACZ,yCAA0C,CAC1C,aACD,CAEA,oCACC,UAAW,CACX,0CACD,CAEA,sCACC,gBAAiB,CACjB,iBACD,CAEA,qCACC,WAAY,CACZ,yCACD,CAEA,2CAEC,gBAAiB,CADjB,cAED,CAEA,0CACC,aAAc,CACd,iBACD,CAGA,6GAGC,YACD,CAGC,mGAGC,kDAAmD,CADnD,+CAED,CAEA,iDACC,iDACD,CAEA,kDACC,gDACD,CAUC,0lBAGC,qDAKD,CAHC,8nBACC,YACD,CAKD,oVAGC,2DACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},9899:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-image-upload-complete-icon{border-radius:50%;display:block;position:absolute;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);z-index:1}.ck-image-upload-complete-icon:after{content:"";position:absolute}:root{--ck-color-image-upload-icon:#fff;--ck-color-image-upload-icon-background:#008a00;--ck-image-upload-icon-size:20;--ck-image-upload-icon-width:2px;--ck-image-upload-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck-image-upload-complete-icon{animation-delay:0ms,3s;animation-duration:.5s,.5s;animation-fill-mode:forwards,forwards;animation-name:ck-upload-complete-icon-show,ck-upload-complete-icon-hide;background:var(--ck-color-image-upload-icon-background);font-size:calc(1px*var(--ck-image-upload-icon-size));height:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size));opacity:0;overflow:hidden;width:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size))}.ck-image-upload-complete-icon:after{animation-delay:.5s;animation-duration:.5s;animation-fill-mode:forwards;animation-name:ck-upload-complete-icon-check;border-right:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);border-top:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);box-sizing:border-box;height:0;left:25%;opacity:0;top:50%;transform:scaleX(-1) rotate(135deg);transform-origin:left top;width:0}@keyframes ck-upload-complete-icon-show{0%{opacity:0}to{opacity:1}}@keyframes ck-upload-complete-icon-hide{0%{opacity:1}to{opacity:0}}@keyframes ck-upload-complete-icon-check{0%{height:0;opacity:1;width:0}33%{height:0;width:.3em}to{height:.45em;opacity:1;width:.3em}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadicon.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadicon.css"],names:[],mappings:"AAKA,+BAUC,iBAAkB,CATlB,aAAc,CACd,iBAAkB,CAOlB,sCAAwC,CADxC,oCAAsC,CAGtC,SAMD,CAJC,qCACC,UAAW,CACX,iBACD,CChBD,MACC,iCAA8C,CAC9C,+CAA4D,CAG5D,8BAA+B,CAC/B,gCAAiC,CACjC,4DACD,CAEA,+BAWC,sBAA4B,CAN5B,0BAAgC,CADhC,qCAAuC,CADvC,wEAA0E,CAD1E,uDAAwD,CAMxD,oDAAuD,CAWvD,oFAAuF,CAlBvF,SAAU,CAgBV,eAAgB,CAChB,mFA0BD,CAtBC,qCAgBC,mBAAsB,CADtB,sBAAyB,CAEzB,4BAA6B,CAH7B,4CAA6C,CAF7C,sFAAuF,CADvF,oFAAqF,CASrF,qBAAsB,CAdtB,QAAS,CAJT,QAAS,CAGT,SAAU,CADV,OAAQ,CAKR,mCAAoC,CACpC,yBAA0B,CAH1B,OAcD,CAGD,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,yCACC,GAGC,QAAS,CAFT,SAAU,CACV,OAED,CACA,IAEC,QAAS,CADT,UAED,CACA,GAGC,YAAc,CAFd,SAAU,CACV,UAED,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-image-upload-icon: hsl(0, 0%, 100%);\n\t--ck-color-image-upload-icon-background: hsl(120, 100%, 27%);\n\n\t/* Match the icon size with the linked image indicator brought by the link image feature. */\n\t--ck-image-upload-icon-size: 20;\n\t--ck-image-upload-icon-width: 2px;\n\t--ck-image-upload-icon-is-visible: clamp(0px, 100% - 50px, 1px);\n}\n\n.ck-image-upload-complete-icon {\n\topacity: 0;\n\tbackground: var(--ck-color-image-upload-icon-background);\n\tanimation-name: ck-upload-complete-icon-show, ck-upload-complete-icon-hide;\n\tanimation-fill-mode: forwards, forwards;\n\tanimation-duration: 500ms, 500ms;\n\n\t/* To make animation scalable. */\n\tfont-size: calc(1px * var(--ck-image-upload-icon-size));\n\n\t/* Hide completed upload icon after 3 seconds. */\n\tanimation-delay: 0ms, 3000ms;\n\n\t/*\n\t * Use CSS math to simulate container queries.\n\t * https://css-tricks.com/the-raven-technique-one-step-closer-to-container-queries/#what-about-showing-and-hiding-things\n\t */\n\toverflow: hidden;\n\twidth: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\theight: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\n\t/* This is check icon element made from border-width mixed with animations. */\n\t&::after {\n\t\t/* Because of border transformation we need to "hard code" left position. */\n\t\tleft: 25%;\n\n\t\ttop: 50%;\n\t\topacity: 0;\n\t\theight: 0;\n\t\twidth: 0;\n\n\t\ttransform: scaleX(-1) rotate(135deg);\n\t\ttransform-origin: left top;\n\t\tborder-top: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\t\tborder-right: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\n\t\tanimation-name: ck-upload-complete-icon-check;\n\t\tanimation-duration: 500ms;\n\t\tanimation-delay: 500ms;\n\t\tanimation-fill-mode: forwards;\n\n\t\t/* #1095. While reset is not providing proper box-sizing for pseudoelements, we need to handle it. */\n\t\tbox-sizing: border-box;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-show {\n\tfrom {\n\t\topacity: 0;\n\t}\n\n\tto {\n\t\topacity: 1;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-hide {\n\tfrom {\n\t\topacity: 1;\n\t}\n\n\tto {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-check {\n\t0% {\n\t\topacity: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t}\n\t33% {\n\t\twidth: 0.3em;\n\t\theight: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t\twidth: 0.3em;\n\t\theight: 0.45em;\n\t}\n}\n'],sourceRoot:""}]);const c=a},9825:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck .ck-upload-placeholder-loader{align-items:center;display:flex;justify-content:center;left:0;position:absolute;top:0}.ck .ck-upload-placeholder-loader:before{content:"";position:relative}:root{--ck-color-upload-placeholder-loader:#b3b3b3;--ck-upload-placeholder-loader-size:32px;--ck-upload-placeholder-image-aspect-ratio:2.8}.ck .ck-image-upload-placeholder{margin:0;width:100%}.ck .ck-image-upload-placeholder.image-inline{width:calc(var(--ck-upload-placeholder-loader-size)*2*var(--ck-upload-placeholder-image-aspect-ratio))}.ck .ck-image-upload-placeholder img{aspect-ratio:var(--ck-upload-placeholder-image-aspect-ratio)}.ck .ck-upload-placeholder-loader{height:100%;width:100%}.ck .ck-upload-placeholder-loader:before{animation:ck-upload-placeholder-loader 1s linear infinite;border-radius:50%;border-right:2px solid transparent;border-top:3px solid var(--ck-color-upload-placeholder-loader);height:var(--ck-upload-placeholder-loader-size);width:var(--ck-upload-placeholder-loader-size)}@keyframes ck-upload-placeholder-loader{to{transform:rotate(1turn)}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadloader.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadloader.css"],names:[],mappings:"AAKA,kCAGC,kBAAmB,CADnB,YAAa,CAEb,sBAAuB,CAEvB,MAAO,CALP,iBAAkB,CAIlB,KAOD,CAJC,yCACC,UAAW,CACX,iBACD,CCXD,MACC,4CAAqD,CACrD,wCAAyC,CACzC,8CACD,CAEA,iCAGC,QAAS,CADT,UAgBD,CAbC,8CACC,sGACD,CAEA,qCAOC,4DACD,CAGD,kCAEC,WAAY,CADZ,UAWD,CARC,yCAMC,yDAA0D,CAH1D,iBAAkB,CAElB,kCAAmC,CADnC,8DAA+D,CAF/D,+CAAgD,CADhD,8CAMD,CAGD,wCACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},5870:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-editor__editable .image,.ck.ck-editor__editable .image-inline{position:relative}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{left:0;position:absolute;top:0}.ck.ck-editor__editable .image-inline.ck-appear,.ck.ck-editor__editable .image.ck-appear{animation:fadeIn .7s}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{background:var(--ck-color-upload-bar-background);height:2px;transition:width .1s;width:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadprogress.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadprogress.css"],names:[],mappings:"AAMC,qEAEC,iBACD,CAGA,uGAIC,MAAO,CAFP,iBAAkB,CAClB,KAED,CCRC,yFACC,oBACD,CAID,uGAIC,gDAAiD,CAFjD,UAAW,CAGX,oBAAuB,CAFvB,OAGD,CAGD,kBACC,GAAO,SAAY,CACnB,GAAO,SAAY,CACpB",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& .image,\n\t& .image-inline {\n\t\t/* Showing animation. */\n\t\t&.ck-appear {\n\t\t\tanimation: fadeIn 700ms;\n\t\t}\n\t}\n\n\t/* Upload progress bar. */\n\t& .image .ck-progress-bar,\n\t& .image-inline .ck-progress-bar {\n\t\theight: 2px;\n\t\twidth: 0;\n\t\tbackground: var(--ck-color-upload-bar-background);\n\t\ttransition: width 100ms;\n\t}\n}\n\n@keyframes fadeIn {\n\tfrom { opacity: 0; }\n\tto { opacity: 1; }\n}\n"],sourceRoot:""}]);const c=a},6831:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-text-alternative-form{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-text-alternative-form .ck-labeled-field-view{display:inline-block}.ck.ck-text-alternative-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-text-alternative-form{flex-wrap:wrap}.ck.ck-text-alternative-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-text-alternative-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/textalternativeform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,6BACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,oDACC,oBACD,CAEA,uCACC,YACD,CCZA,oCDCD,6BAcE,cAUF,CARE,oDACC,eACD,CAEA,wCACC,cACD,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},399:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-link_selected{background:var(--ck-color-link-selected-background)}.ck .ck-link_selected span.image-inline{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-link-selected-background)}.ck .ck-fake-link-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-link-selection_collapsed{border-right:1px solid var(--ck-color-base-text);height:100%;margin-right:-1px;outline:1px solid hsla(0,0%,100%,.5)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/link.css"],names:[],mappings:"AAMA,sBACC,mDAMD,CAHC,wCACC,yFACD,CAOD,4BACC,8CACD,CAGA,sCAEC,gDAAiD,CADjD,WAAY,CAEZ,iBAAkB,CAClB,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},9465:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-link-actions{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-link-actions .ck-link-actions__preview{display:inline-block}.ck.ck-link-actions .ck-link-actions__preview .ck-button__label{overflow:hidden}@media screen and (max-width:600px){.ck.ck-link-actions{flex-wrap:wrap}.ck.ck-link-actions .ck-link-actions__preview{flex-basis:100%}.ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){flex-basis:50%}}.ck.ck-link-actions .ck-button.ck-link-actions__preview{padding-left:0;padding-right:0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{color:var(--ck-color-link-default);cursor:pointer;max-width:var(--ck-input-width);min-width:3em;padding:0 var(--ck-spacing-medium);text-align:center;text-overflow:ellipsis}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label:hover{text-decoration:underline}.ck.ck-link-actions .ck-button.ck-link-actions__preview,.ck.ck-link-actions .ck-button.ck-link-actions__preview:active,.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus,.ck.ck-link-actions .ck-button.ck-link-actions__preview:hover{background:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:active{box-shadow:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus .ck-button__label{text-decoration:underline}[dir=ltr] .ck.ck-link-actions .ck-button:not(:first-child),[dir=rtl] .ck.ck-link-actions .ck-button:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-link-actions .ck-button.ck-link-actions__preview{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{max-width:100%;min-width:0}[dir=ltr] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview),[dir=rtl] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){margin-left:0}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkactions.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkactions.css"],names:[],mappings:"AAOA,oBACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,8CACC,oBAKD,CAHC,gEACC,eACD,CCXD,oCDCD,oBAcE,cAUF,CARE,8CACC,eACD,CAEA,8DACC,cACD,CCrBD,CCIA,wDACC,cAAe,CACf,eAmCD,CAjCC,0EAEC,kCAAmC,CAEnC,cAAe,CAIf,+BAAgC,CAChC,aAAc,CARd,kCAAmC,CASnC,iBAAkB,CAPlB,sBAYD,CAHC,gFACC,yBACD,CAGD,mPAIC,eACD,CAEA,+DACC,eACD,CAGC,gFACC,yBACD,CAWD,qHACC,sCACD,CDtDD,oCC0DC,wDACC,8DAMD,CAJC,0EAEC,cAAe,CADf,WAED,CAGD,gJAME,aAEF,CDzED",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},4827:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-link-form{display:flex}.ck.ck-link-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-link-form{flex-wrap:wrap}.ck.ck-link-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-link-form .ck-button{flex-basis:50%}}.ck.ck-link-form_layout-vertical{display:block}.ck.ck-link-form_layout-vertical .ck-button.ck-button-cancel,.ck.ck-link-form_layout-vertical .ck-button.ck-button-save{margin-top:var(--ck-spacing-medium)}.ck.ck-link-form_layout-vertical{min-width:var(--ck-input-width);padding:0}.ck.ck-link-form_layout-vertical .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) var(--ck-spacing-small)}.ck.ck-link-form_layout-vertical .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-link-form_layout-vertical>.ck-button{border-radius:0;margin:0;padding:var(--ck-spacing-standard);width:50%}.ck.ck-link-form_layout-vertical>.ck-button:not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-link-form_layout-vertical>.ck-button,[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button{margin-left:0}[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button:last-of-type{border-right:1px solid var(--ck-color-base-border)}.ck.ck-link-form_layout-vertical .ck.ck-list{margin:var(--ck-spacing-standard) var(--ck-spacing-large)}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton{padding:0;width:100%}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton:hover{background:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkform.css"],names:[],mappings:"AAOA,iBACC,YAiBD,CAfC,2BACC,YACD,CCNA,oCDCD,iBAQE,cAUF,CARE,wCACC,eACD,CAEA,4BACC,cACD,CCfD,CDuBD,iCACC,aAYD,CALE,wHAEC,mCACD,CE/BF,iCAEC,+BAAgC,CADhC,SAgDD,CA7CC,wDACC,8EAMD,CAJC,uEACC,WAAY,CACZ,UACD,CAGD,4CAIC,eAAgB,CAFhB,QAAS,CADT,kCAAmC,CAEnC,SAkBD,CAfC,wDACC,gDACD,CARD,4GAeE,aAMF,CAJE,mEACC,kDACD,CAKF,6CACC,yDAUD,CARC,wEACC,SAAU,CACV,UAKD,CAHC,8EACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-form {\n\tdisplay: flex;\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n\n/*\n * Style link form differently when manual decorators are available.\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\n */\n.ck.ck-link-form_layout-vertical {\n\tdisplay: block;\n\n\t/*\n\t * Whether the form is in the responsive mode or not, if there are decorator buttons\n\t * keep the top margin of action buttons medium.\n\t */\n\t& .ck-button {\n\t\t&.ck-button-save,\n\t\t&.ck-button-cancel {\n\t\t\tmargin-top: var(--ck-spacing-medium);\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},3858:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{display:block;position:absolute}:root{--ck-link-image-indicator-icon-size:20;--ck-link-image-indicator-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{background-color:rgba(0,0,0,.4);background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzQ4Ljc0OCAwIDAgMS0uMjE3LjIwNiA1LjI1MSA1LjI1MSAwIDAgMS04LjUwMy01Ljk1NS43NDEuNzQxIDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NGwuMDA2LjAwNHptNS40OTQtNS4zMzVhLjc0OC43NDggMCAwIDEtLjEyLjI3NGwtMS4xNDcgMS42MzlhLjc1Ljc1IDAgMSAxLTEuMjI4LS44NmwuODYtMS4yM2EzLjc1IDMuNzUgMCAwIDAtNi4xNDQtNC4zMDFsLS44NiAxLjIyOWEuNzUuNzUgMCAwIDEtMS4yMjktLjg2bDEuMTQ4LTEuNjRhLjc0OC43NDggMCAwIDEgLjIxNy0uMjA2IDUuMjUxIDUuMjUxIDAgMCAxIDguNTAzIDUuOTU1em0tNC41NjMtMi41MzJhLjc1Ljc1IDAgMCAxIC4xODQgMS4wNDVsLTMuMTU1IDQuNTA1YS43NS43NSAwIDEgMS0xLjIyOS0uODZsMy4xNTUtNC41MDZhLjc1Ljc1IDAgMCAxIDEuMDQ1LS4xODR6Ii8+PC9zdmc+");background-position:50%;background-repeat:no-repeat;background-size:14px;border-radius:100%;content:"";height:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size));overflow:hidden;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);width:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size))}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkimage.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkimage.css"],names:[],mappings:"AASE,+FACC,aAAc,CACd,iBACD,CCPF,MAEC,sCAAuC,CACvC,oEACD,CAME,+FAUC,+BAAqC,CACrC,83BAA+3B,CAG/3B,uBAA2B,CAD3B,2BAA4B,CAD5B,oBAAqB,CAGrB,kBAAmB,CAdnB,UAAW,CAsBX,oGAAuG,CAFvG,eAAgB,CAbhB,sCAAwC,CADxC,oCAAsC,CAetC,mGAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},3195:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-collapsible.ck-collapsible_collapsed>.ck-collapsible__children{display:none}:root{--ck-collapsible-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-collapsible>.ck.ck-button{border-radius:0;color:inherit;font-weight:700;padding:var(--ck-spacing-medium) var(--ck-spacing-large);width:100%}.ck.ck-collapsible>.ck.ck-button:focus{background:transparent}.ck.ck-collapsible>.ck.ck-button:active,.ck.ck-collapsible>.ck.ck-button:hover:not(:focus),.ck.ck-collapsible>.ck.ck-button:not(:focus){background:transparent;border-color:transparent;box-shadow:none}.ck.ck-collapsible>.ck.ck-button>.ck-icon{margin-right:var(--ck-spacing-medium);width:var(--ck-collapsible-arrow-size)}.ck.ck-collapsible>.ck-collapsible__children{padding:0 var(--ck-spacing-large) var(--ck-spacing-large)}.ck.ck-collapsible.ck-collapsible_collapsed>.ck.ck-button .ck-icon{transform:rotate(-90deg)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-list/theme/collapsible.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/collapsible.css"],names:[],mappings:"AAMC,sEACC,YACD,CCHD,MACC,yDACD,CAGC,iCAIC,eAAgB,CAChB,aAAc,CAHd,eAAiB,CACjB,wDAAyD,CAFzD,UAoBD,CAdC,uCACC,sBACD,CAEA,wIACC,sBAAuB,CACvB,wBAAyB,CACzB,eACD,CAEA,0CACC,qCAAsC,CACtC,sCACD,CAGD,6CACC,yDACD,CAGC,mEACC,wBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-collapsible-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-collapsible {\n\t& > .ck.ck-button {\n\t\twidth: 100%;\n\t\tfont-weight: bold;\n\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-large);\n\t\tborder-radius: 0;\n\t\tcolor: inherit;\n\n\t\t&:focus {\n\t\t\tbackground: transparent;\n\t\t}\n\n\t\t&:active, &:not(:focus), &:hover:not(:focus) {\n\t\t\tbackground: transparent;\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t& > .ck-icon {\n\t\t\tmargin-right: var(--ck-spacing-medium);\n\t\t\twidth: var(--ck-collapsible-arrow-size);\n\t\t}\n\t}\n\n\t& > .ck-collapsible__children {\n\t\tpadding: 0 var(--ck-spacing-large) var(--ck-spacing-large);\n\t}\n\n\t&.ck-collapsible_collapsed {\n\t\t& > .ck.ck-button .ck-icon {\n\t\t\ttransform: rotate(-90deg);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const c=a},8676:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-editor__editable .ck-list-bogus-paragraph{display:block}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-list/theme/documentlist.css"],names:[],mappings:"AAKA,8CACC,aACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},9989:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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://./node_modules/@ckeditor/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-2023, CKSource Holding 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 c=a},7133:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-list-properties.ck-list-properties_without-styles{padding:var(--ck-spacing-large)}.ck.ck-list-properties.ck-list-properties_without-styles>*{min-width:14em}.ck.ck-list-properties.ck-list-properties_without-styles>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-list-styles-list{grid-template-columns:repeat(4,auto)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible{border-top:1px solid var(--ck-color-base-border)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*{width:100%}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties .ck.ck-numbered-list-properties__start-index .ck-input{min-width:auto;width:100%}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order{background:transparent;margin-bottom:calc(var(--ck-spacing-tiny)*-1);padding-left:0;padding-right:0}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:active,.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:hover{background:none;border-color:transparent;box-shadow:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/listproperties.css"],names:[],mappings:"AAOC,yDACC,+BASD,CAPC,2DACC,cAKD,CAHC,6DACC,qCACD,CASD,wFACC,oCACD,CAGA,mFACC,gDAWD,CARE,+GACC,UAKD,CAHC,iHACC,qCACD,CAMJ,8EACC,cAAe,CACf,UACD,CAEA,uEACC,sBAAuB,CAGvB,6CAAgD,CAFhD,cAAe,CACf,eAQD,CALC,2JAGC,eAAgB,CADhB,wBAAyB,CADzB,eAGD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},4553:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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://./node_modules/@ckeditor/ckeditor5-list/theme/liststyles.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/liststyles.css"],names:[],mappings:"AAKA,wBACC,YACD,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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},5777:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .media{clear:both;display:block;margin:.9em 0;min-width:15em}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaembed.css"],names:[],mappings:"AAKA,mBAGC,UAAW,CASX,aAAc,CAJd,aAAe,CAQf,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .media {\n\t/* Don\'t allow floated content overlap the media.\n\thttps://github.com/ckeditor/ckeditor5-media-embed/issues/53 */\n\tclear: both;\n\n\t/* Make sure there is some space between the content and the media. */\n\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\tmargin: 0.9em 0;\n\n\t/* Make sure media is not overriden with Bootstrap default `flex` value.\n\tSee: https://github.com/ckeditor/ckeditor5/issues/1373. */\n\tdisplay: block;\n\n\t/* Give the media some minimal width in the content to prevent them\n\tfrom being "squashed" in tight spaces, e.g. in table cells (#44) */\n\tmin-width: 15em;\n}\n'],sourceRoot:""}]);const c=a},952:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-media__wrapper .ck-media__placeholder{align-items:center;display:flex;flex-direction:column}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url{max-width:100%;position:relative}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url .ck-media__placeholder__url__text{display:block;overflow:hidden}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck-media__placeholder__icon *{display:none}.ck-editor__editable:not(.ck-read-only) .ck-media__wrapper>:not(.ck-media__placeholder),.ck-editor__editable:not(.ck-read-only) .ck-widget:not(.ck-widget_selected) .ck-media__placeholder{pointer-events:none}:root{--ck-media-embed-placeholder-icon-size:3em;--ck-color-media-embed-placeholder-url-text:#757575;--ck-color-media-embed-placeholder-url-text-hover:var(--ck-color-base-text)}.ck-media__wrapper{margin:0 auto}.ck-media__wrapper .ck-media__placeholder{background:var(--ck-color-base-foreground);padding:calc(var(--ck-spacing-standard)*3)}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon{background-position:50%;background-size:cover;height:var(--ck-media-embed-placeholder-icon-size);margin-bottom:var(--ck-spacing-large);min-width:var(--ck-media-embed-placeholder-icon-size)}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon .ck-icon{height:100%;width:100%}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text{color:var(--ck-color-media-embed-placeholder-url-text);font-style:italic;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:var(--ck-color-media-embed-placeholder-url-text-hover);cursor:pointer;text-decoration:underline}.ck-media__wrapper[data-oembed-url*="open.spotify.com"]{max-height:380px;max-width:300px}.ck-media__wrapper[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTAuMzc4IiBoZWlnaHQ9IjI1NC4xNjciIHZpZXdCb3g9IjAgMCA2Ni4yNDYgNjcuMjQ4Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcyLjUzMSAtMjE4LjQ1NSkgc2NhbGUoLjk4MDEyKSI+PHJlY3Qgcnk9IjUuMjM4IiByeD0iNS4yMzgiIHk9IjIzMS4zOTkiIHg9IjE3Ni4wMzEiIGhlaWdodD0iNjAuMDk5IiB3aWR0aD0iNjAuMDk5IiBmaWxsPSIjMzRhNjY4IiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxwYXRoIGQ9Im0yMDYuNDc3IDI2MC45LTI4Ljk4NyAyOC45ODdhNS4yMTggNS4yMTggMCAwIDAgMy43OCAxLjYxaDQ5LjYyMWMxLjY5NCAwIDMuMTktLjc5OCA0LjE0Ni0yLjAzN3oiIGZpbGw9IiM1Yzg4YzUiLz48cGF0aCBkPSJNMjI2Ljc0MiAyMjIuOTg4Yy05LjI2NiAwLTE2Ljc3NyA3LjE3LTE2Ljc3NyAxNi4wMTQuMDA3IDIuNzYyLjY2MyA1LjQ3NCAyLjA5MyA3Ljg3NS40My43MDMuODMgMS40MDggMS4xOSAyLjEwNy4zMzMuNTAyLjY1IDEuMDA1Ljk1IDEuNTA4LjM0My40NzcuNjczLjk1Ny45ODggMS40NCAxLjMxIDEuNzY5IDIuNSAzLjUwMiAzLjYzNyA1LjE2OC43OTMgMS4yNzUgMS42ODMgMi42NCAyLjQ2NiAzLjk5IDIuMzYzIDQuMDk0IDQuMDA3IDguMDkyIDQuNiAxMy45MTR2LjAxMmMuMTgyLjQxMi41MTYuNjY2Ljg3OS42NjcuNDAzLS4wMDEuNzY4LS4zMTQuOTMtLjc5OS42MDMtNS43NTYgMi4yMzgtOS43MjkgNC41ODUtMTMuNzk0Ljc4Mi0xLjM1IDEuNjczLTIuNzE1IDIuNDY1LTMuOTkgMS4xMzctMS42NjYgMi4zMjgtMy40IDMuNjM4LTUuMTY5LjMxNS0uNDgyLjY0NS0uOTYyLjk4OC0xLjQzOS4zLS41MDMuNjE3LTEuMDA2Ljk1LTEuNTA4LjM1OS0uNy43Ni0xLjQwNCAxLjE5LTIuMTA3IDEuNDI2LTIuNDAyIDItNS4xMTQgMi4wMDQtNy44NzUgMC04Ljg0NC03LjUxMS0xNi4wMTQtMTYuNzc2LTE2LjAxNHoiIGZpbGw9IiNkZDRiM2UiIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PGVsbGlwc2Ugcnk9IjUuNTY0IiByeD0iNS44MjgiIGN5PSIyMzkuMDAyIiBjeD0iMjI2Ljc0MiIgZmlsbD0iIzgwMmQyNyIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMTkwLjMwMSAyMzcuMjgzYy00LjY3IDAtOC40NTcgMy44NTMtOC40NTcgOC42MDZzMy43ODYgOC42MDcgOC40NTcgOC42MDdjMy4wNDMgMCA0LjgwNi0uOTU4IDYuMzM3LTIuNTE2IDEuNTMtMS41NTcgMi4wODctMy45MTMgMi4wODctNi4yOSAwLS4zNjItLjAyMy0uNzIyLS4wNjQtMS4wNzloLTguMjU3djMuMDQzaDQuODVjLS4xOTcuNzU5LS41MzEgMS40NS0xLjA1OCAxLjk4Ni0uOTQyLjk1OC0yLjAyOCAxLjU0OC0zLjkwMSAxLjU0OC0yLjg3NiAwLTUuMjA4LTIuMzcyLTUuMjA4LTUuMjk5IDAtMi45MjYgMi4zMzItNS4yOTkgNS4yMDgtNS4yOTkgMS4zOTkgMCAyLjYxOC40MDcgMy41ODQgMS4yOTNsMi4zODEtMi4zOGMwLS4wMDItLjAwMy0uMDA0LS4wMDQtLjAwNS0xLjU4OC0xLjUyNC0zLjYyLTIuMjE1LTUuOTU1LTIuMjE1em00LjQzIDUuNjYuMDAzLjAwNnYtLjAwM3oiIGZpbGw9IiNmZmYiIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PHBhdGggZD0ibTIxNS4xODQgMjUxLjkyOS03Ljk4IDcuOTc5IDI4LjQ3NyAyOC40NzVhNS4yMzMgNS4yMzMgMCAwIDAgLjQ0OS0yLjEyM3YtMzEuMTY1Yy0uNDY5LjY3NS0uOTM0IDEuMzQ5LTEuMzgyIDIuMDA1LS43OTIgMS4yNzUtMS42ODIgMi42NC0yLjQ2NSAzLjk5LTIuMzQ3IDQuMDY1LTMuOTgyIDguMDM4LTQuNTg1IDEzLjc5NC0uMTYyLjQ4NS0uNTI3Ljc5OC0uOTMuNzk5LS4zNjMtLjAwMS0uNjk3LS4yNTUtLjg3OS0uNjY3di0uMDEyYy0uNTkzLTUuODIyLTIuMjM3LTkuODItNC42LTEzLjkxNC0uNzgzLTEuMzUtMS42NzMtMi43MTUtMi40NjYtMy45OS0xLjEzNy0xLjY2Ni0yLjMyNy0zLjQtMy42MzctNS4xNjlsLS4wMDItLjAwM3oiIGZpbGw9IiNjM2MzYzMiLz48cGF0aCBkPSJtMjEyLjk4MyAyNDguNDk1LTM2Ljk1MiAzNi45NTN2LjgxMmE1LjIyNyA1LjIyNyAwIDAgMCA1LjIzOCA1LjIzOGgxLjAxNWwzNS42NjYtMzUuNjY2YTEzNi4yNzUgMTM2LjI3NSAwIDAgMC0yLjc2NC0zLjkgMzcuNTc1IDM3LjU3NSAwIDAgMC0uOTg5LTEuNDQgMzUuMTI3IDM1LjEyNyAwIDAgMC0uOTUtMS41MDhjLS4wODMtLjE2Mi0uMTc2LS4zMjYtLjI2NC0uNDg5eiIgZmlsbD0iI2ZkZGM0ZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJtMjExLjk5OCAyNjEuMDgzLTYuMTUyIDYuMTUxIDI0LjI2NCAyNC4yNjRoLjc4MWE1LjIyNyA1LjIyNyAwIDAgMCA1LjIzOS01LjIzOHYtMS4wNDV6IiBmaWxsPSIjZmZmIiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjwvZz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder{background:#4268b3}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAyNCIgaGVpZ2h0PSIxMDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik05NjcuNDg0IDBINTYuNTE3QzI1LjMwNCAwIDAgMjUuMzA0IDAgNTYuNTE3djkxMC45NjZDMCA5OTguNjk0IDI1LjI5NyAxMDI0IDU2LjUyMiAxMDI0SDU0N1Y2MjhINDE0VjQ3M2gxMzNWMzU5LjAyOWMwLTEzMi4yNjIgODAuNzczLTIwNC4yODIgMTk4Ljc1Ni0yMDQuMjgyIDU2LjUxMyAwIDEwNS4wODYgNC4yMDggMTE5LjI0NCA2LjA4OVYyOTlsLTgxLjYxNi4wMzdjLTYzLjk5MyAwLTc2LjM4NCAzMC40OTItNzYuMzg0IDc1LjIzNlY0NzNoMTUzLjQ4N2wtMTkuOTg2IDE1NUg3MDd2Mzk2aDI2MC40ODRjMzEuMjEzIDAgNTYuNTE2LTI1LjMwMyA1Ni41MTYtNTYuNTE2VjU2LjUxNUMxMDI0IDI1LjMwMyA5OTguNjk3IDAgOTY3LjQ4NCAwIiBmaWxsPSIjRkZGRkZFIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#cdf}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder{background:linear-gradient(-135deg,#1400c7,#b800b1,#f50000)}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTA0IiBoZWlnaHQ9IjUwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PHBhdGggaWQ9ImEiIGQ9Ik0wIC4xNTloNTAzLjg0MVY1MDMuOTRIMHoiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48bWFzayBpZD0iYiIgZmlsbD0iI2ZmZiI+PHVzZSB4bGluazpocmVmPSIjYSIvPjwvbWFzaz48cGF0aCBkPSJNMjUxLjkyMS4xNTljLTY4LjQxOCAwLTc2Ljk5Ny4yOS0xMDMuODY3IDEuNTE2LTI2LjgxNCAxLjIyMy00NS4xMjcgNS40ODItNjEuMTUxIDExLjcxLTE2LjU2NiA2LjQzNy0zMC42MTUgMTUuMDUxLTQ0LjYyMSAyOS4wNTYtMTQuMDA1IDE0LjAwNi0yMi42MTkgMjguMDU1LTI5LjA1NiA0NC42MjEtNi4yMjggMTYuMDI0LTEwLjQ4NyAzNC4zMzctMTEuNzEgNjEuMTUxQy4yOSAxNzUuMDgzIDAgMTgzLjY2MiAwIDI1Mi4wOGMwIDY4LjQxNy4yOSA3Ni45OTYgMS41MTYgMTAzLjg2NiAxLjIyMyAyNi44MTQgNS40ODIgNDUuMTI3IDExLjcxIDYxLjE1MSA2LjQzNyAxNi41NjYgMTUuMDUxIDMwLjYxNSAyOS4wNTYgNDQuNjIxIDE0LjAwNiAxNC4wMDUgMjguMDU1IDIyLjYxOSA0NC42MjEgMjkuMDU3IDE2LjAyNCA2LjIyNyAzNC4zMzcgMTAuNDg2IDYxLjE1MSAxMS43MDkgMjYuODcgMS4yMjYgMzUuNDQ5IDEuNTE2IDEwMy44NjcgMS41MTYgNjguNDE3IDAgNzYuOTk2LS4yOSAxMDMuODY2LTEuNTE2IDI2LjgxNC0xLjIyMyA0NS4xMjctNS40ODIgNjEuMTUxLTExLjcwOSAxNi41NjYtNi40MzggMzAuNjE1LTE1LjA1MiA0NC42MjEtMjkuMDU3IDE0LjAwNS0xNC4wMDYgMjIuNjE5LTI4LjA1NSAyOS4wNTctNDQuNjIxIDYuMjI3LTE2LjAyNCAxMC40ODYtMzQuMzM3IDExLjcwOS02MS4xNTEgMS4yMjYtMjYuODcgMS41MTYtMzUuNDQ5IDEuNTE2LTEwMy44NjYgMC02OC40MTgtLjI5LTc2Ljk5Ny0xLjUxNi0xMDMuODY3LTEuMjIzLTI2LjgxNC01LjQ4Mi00NS4xMjctMTEuNzA5LTYxLjE1MS02LjQzOC0xNi41NjYtMTUuMDUyLTMwLjYxNS0yOS4wNTctNDQuNjIxLTE0LjAwNi0xNC4wMDUtMjguMDU1LTIyLjYxOS00NC42MjEtMjkuMDU2LTE2LjAyNC02LjIyOC0zNC4zMzctMTAuNDg3LTYxLjE1MS0xMS43MUMzMjguOTE3LjQ0OSAzMjAuMzM4LjE1OSAyNTEuOTIxLjE1OVptMCA0NS4zOTFjNjcuMjY1IDAgNzUuMjMzLjI1NyAxMDEuNzk3IDEuNDY5IDI0LjU2MiAxLjEyIDM3LjkwMSA1LjIyNCA0Ni43NzggOC42NzQgMTEuNzU5IDQuNTcgMjAuMTUxIDEwLjAyOSAyOC45NjYgMTguODQ1IDguODE2IDguODE1IDE0LjI3NSAxNy4yMDcgMTguODQ1IDI4Ljk2NiAzLjQ1IDguODc3IDcuNTU0IDIyLjIxNiA4LjY3NCA0Ni43NzggMS4yMTIgMjYuNTY0IDEuNDY5IDM0LjUzMiAxLjQ2OSAxMDEuNzk4IDAgNjcuMjY1LS4yNTcgNzUuMjMzLTEuNDY5IDEwMS43OTctMS4xMiAyNC41NjItNS4yMjQgMzcuOTAxLTguNjc0IDQ2Ljc3OC00LjU3IDExLjc1OS0xMC4wMjkgMjAuMTUxLTE4Ljg0NSAyOC45NjYtOC44MTUgOC44MTYtMTcuMjA3IDE0LjI3NS0yOC45NjYgMTguODQ1LTguODc3IDMuNDUtMjIuMjE2IDcuNTU0LTQ2Ljc3OCA4LjY3NC0yNi41NiAxLjIxMi0zNC41MjcgMS40NjktMTAxLjc5NyAxLjQ2OS02Ny4yNzEgMC03NS4yMzctLjI1Ny0xMDEuNzk4LTEuNDY5LTI0LjU2Mi0xLjEyLTM3LjkwMS01LjIyNC00Ni43NzgtOC42NzQtMTEuNzU5LTQuNTctMjAuMTUxLTEwLjAyOS0yOC45NjYtMTguODQ1LTguODE1LTguODE1LTE0LjI3NS0xNy4yMDctMTguODQ1LTI4Ljk2Ni0zLjQ1LTguODc3LTcuNTU0LTIyLjIxNi04LjY3NC00Ni43NzgtMS4yMTItMjYuNTY0LTEuNDY5LTM0LjUzMi0xLjQ2OS0xMDEuNzk3IDAtNjcuMjY2LjI1Ny03NS4yMzQgMS40NjktMTAxLjc5OCAxLjEyLTI0LjU2MiA1LjIyNC0zNy45MDEgOC42NzQtNDYuNzc4IDQuNTctMTEuNzU5IDEwLjAyOS0yMC4xNTEgMTguODQ1LTI4Ljk2NiA4LjgxNS04LjgxNiAxNy4yMDctMTQuMjc1IDI4Ljk2Ni0xOC44NDUgOC44NzctMy40NSAyMi4yMTYtNy41NTQgNDYuNzc4LTguNjc0IDI2LjU2NC0xLjIxMiAzNC41MzItMS40NjkgMTAxLjc5OC0xLjQ2OVoiIGZpbGw9IiNGRkYiIG1hc2s9InVybCgjYikiLz48cGF0aCBkPSJNMjUxLjkyMSAzMzYuMDUzYy00Ni4zNzggMC04My45NzQtMzcuNTk2LTgzLjk3NC04My45NzMgMC00Ni4zNzggMzcuNTk2LTgzLjk3NCA4My45NzQtODMuOTc0IDQ2LjM3NyAwIDgzLjk3MyAzNy41OTYgODMuOTczIDgzLjk3NCAwIDQ2LjM3Ny0zNy41OTYgODMuOTczLTgzLjk3MyA4My45NzNabTAtMjEzLjMzOGMtNzEuNDQ3IDAtMTI5LjM2NSA1Ny45MTgtMTI5LjM2NSAxMjkuMzY1IDAgNzEuNDQ2IDU3LjkxOCAxMjkuMzY0IDEyOS4zNjUgMTI5LjM2NCA3MS40NDYgMCAxMjkuMzY0LTU3LjkxOCAxMjkuMzY0LTEyOS4zNjQgMC03MS40NDctNTcuOTE4LTEyOS4zNjUtMTI5LjM2NC0xMjkuMzY1Wk00MTYuNjI3IDExNy42MDRjMCAxNi42OTYtMTMuNTM1IDMwLjIzLTMwLjIzMSAzMC4yMy0xNi42OTUgMC0zMC4yMy0xMy41MzQtMzAuMjMtMzAuMjMgMC0xNi42OTYgMTMuNTM1LTMwLjIzMSAzMC4yMy0zMC4yMzEgMTYuNjk2IDAgMzAuMjMxIDEzLjUzNSAzMC4yMzEgMzAuMjMxIiBmaWxsPSIjRkZGIi8+PC9nPjwvc3ZnPg==)}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#ffe0fe}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder{background:linear-gradient(90deg,#71c6f4,#0d70a5)}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MDAgNDAwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0MDAgNDAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNNDAwIDIwMGMwIDExMC41LTg5LjUgMjAwLTIwMCAyMDBTMCAzMTAuNSAwIDIwMCA4OS41IDAgMjAwIDBzMjAwIDg5LjUgMjAwIDIwMHpNMTYzLjQgMzA1LjVjODguNyAwIDEzNy4yLTczLjUgMTM3LjItMTM3LjIgMC0yLjEgMC00LjItLjEtNi4yIDkuNC02LjggMTcuNi0xNS4zIDI0LjEtMjUtOC42IDMuOC0xNy45IDYuNC0yNy43IDcuNiAxMC02IDE3LjYtMTUuNCAyMS4yLTI2LjctOS4zIDUuNS0xOS42IDkuNS0zMC42IDExLjctOC44LTkuNC0yMS4zLTE1LjItMzUuMi0xNS4yLTI2LjYgMC00OC4yIDIxLjYtNDguMiA0OC4yIDAgMy44LjQgNy41IDEuMyAxMS00MC4xLTItNzUuNi0yMS4yLTk5LjQtNTAuNC00LjEgNy4xLTYuNSAxNS40LTYuNSAyNC4yIDAgMTYuNyA4LjUgMzEuNSAyMS41IDQwLjEtNy45LS4yLTE1LjMtMi40LTIxLjgtNnYuNmMwIDIzLjQgMTYuNiA0Mi44IDM4LjcgNDcuMy00IDEuMS04LjMgMS43LTEyLjcgMS43LTMuMSAwLTYuMS0uMy05LjEtLjkgNi4xIDE5LjIgMjMuOSAzMy4xIDQ1IDMzLjUtMTYuNSAxMi45LTM3LjMgMjAuNi01OS45IDIwLjYtMy45IDAtNy43LS4yLTExLjUtLjcgMjEuMSAxMy44IDQ2LjUgMjEuOCA3My43IDIxLjgiIHN0eWxlPSJmaWxsOiNmZmYiLz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text{color:#b8e6ff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaembedediting.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-media-embed/mediaembedediting.css"],names:[],mappings:"AAMC,0CAGC,kBAAmB,CAFnB,YAAa,CACb,qBAcD,CAXC,sEAEC,cAAe,CAEf,iBAMD,CAJC,wGAEC,aAAc,CADd,eAED,CAWD,6kBACC,YACD,CAYF,2LACC,mBACD,CC1CA,MACC,0CAA2C,CAE3C,mDAA4D,CAC5D,2EACD,CAEA,mBACC,aA+FD,CA7FC,0CAEC,0CAA2C,CAD3C,0CA6BD,CA1BC,uEAIC,uBAA2B,CAC3B,qBAAsB,CAHtB,kDAAmD,CACnD,qCAAsC,CAFtC,qDAUD,CAJC,gFAEC,WAAY,CADZ,UAED,CAGD,4EACC,sDAAuD,CAGvD,iBAAkB,CADlB,iBAAkB,CAElB,sBAAuB,CAHvB,kBAUD,CALC,kFACC,4DAA6D,CAC7D,cAAe,CACf,yBACD,CAIF,wDAEC,gBAAiB,CADjB,eAED,CAEA,4UAIC,wvGACD,CAEA,2EACC,kBAaD,CAXC,wGACC,orBACD,CAEA,6GACC,UAKD,CAHC,mHACC,UACD,CAIF,4EACC,2DAcD,CAZC,yGACC,4jHACD,CAGA,8GACC,aAKD,CAHC,oHACC,UACD,CAIF,6EAEC,iDAaD,CAXC,0GACC,wiCACD,CAEA,+GACC,aAKD,CAHC,qHACC,UACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-media__wrapper {\n\t& .ck-media__placeholder {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\n\t\t& .ck-media__placeholder__url {\n\t\t\t/* Otherwise the URL will overflow when the content is very narrow. */\n\t\t\tmax-width: 100%;\n\n\t\t\tposition: relative;\n\n\t\t\t& .ck-media__placeholder__url__text {\n\t\t\t\toverflow: hidden;\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="twitter.com"],\n\t&[data-oembed-url*="google.com/maps"],\n\t&[data-oembed-url*="goo.gl/maps"],\n\t&[data-oembed-url*="maps.google.com"],\n\t&[data-oembed-url*="maps.app.goo.gl"],\n\t&[data-oembed-url*="facebook.com"],\n\t&[data-oembed-url*="instagram.com"] {\n\t\t& .ck-media__placeholder__icon * {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n/* Disable all mouse interaction as long as the editor is not read–only.\n https://github.com/ckeditor/ckeditor5-media-embed/issues/58 */\n.ck-editor__editable:not(.ck-read-only) .ck-media__wrapper > *:not(.ck-media__placeholder) {\n\tpointer-events: none;\n}\n\n/* Disable all mouse interaction when the widget is not selected (e.g. to avoid opening links by accident).\n https://github.com/ckeditor/ckeditor5-media-embed/issues/18 */\n.ck-editor__editable:not(.ck-read-only) .ck-widget:not(.ck-widget_selected) .ck-media__placeholder {\n\tpointer-events: none;\n}\n','/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-media-embed-placeholder-icon-size: 3em;\n\n\t--ck-color-media-embed-placeholder-url-text: hsl(0, 0%, 46%);\n\t--ck-color-media-embed-placeholder-url-text-hover: var(--ck-color-base-text);\n}\n\n.ck-media__wrapper {\n\tmargin: 0 auto;\n\n\t& .ck-media__placeholder {\n\t\tpadding: calc( 3 * var(--ck-spacing-standard) );\n\t\tbackground: var(--ck-color-base-foreground);\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tmin-width: var(--ck-media-embed-placeholder-icon-size);\n\t\t\theight: var(--ck-media-embed-placeholder-icon-size);\n\t\t\tmargin-bottom: var(--ck-spacing-large);\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: cover;\n\n\t\t\t& .ck-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t}\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: var(--ck-color-media-embed-placeholder-url-text);\n\t\t\twhite-space: nowrap;\n\t\t\ttext-align: center;\n\t\t\tfont-style: italic;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\t&:hover {\n\t\t\t\tcolor: var(--ck-color-media-embed-placeholder-url-text-hover);\n\t\t\t\tcursor: pointer;\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="open.spotify.com"] {\n\t\tmax-width: 300px;\n\t\tmax-height: 380px;\n\t}\n\n\t&[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon {\n\t\tbackground-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTAuMzc4IiBoZWlnaHQ9IjI1NC4xNjciIHZpZXdCb3g9IjAgMCA2Ni4yNDYgNjcuMjQ4Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcyLjUzMSAtMjE4LjQ1NSkgc2NhbGUoLjk4MDEyKSI+PHJlY3Qgcnk9IjUuMjM4IiByeD0iNS4yMzgiIHk9IjIzMS4zOTkiIHg9IjE3Ni4wMzEiIGhlaWdodD0iNjAuMDk5IiB3aWR0aD0iNjAuMDk5IiBmaWxsPSIjMzRhNjY4IiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxwYXRoIGQ9Ik0yMDYuNDc3IDI2MC45bC0yOC45ODcgMjguOTg3YTUuMjE4IDUuMjE4IDAgMCAwIDMuNzggMS42MWg0OS42MjFjMS42OTQgMCAzLjE5LS43OTggNC4xNDYtMi4wMzd6IiBmaWxsPSIjNWM4OGM1Ii8+PHBhdGggZD0iTTIyNi43NDIgMjIyLjk4OGMtOS4yNjYgMC0xNi43NzcgNy4xNy0xNi43NzcgMTYuMDE0LjAwNyAyLjc2Mi42NjMgNS40NzQgMi4wOTMgNy44NzUuNDMuNzAzLjgzIDEuNDA4IDEuMTkgMi4xMDcuMzMzLjUwMi42NSAxLjAwNS45NSAxLjUwOC4zNDMuNDc3LjY3My45NTcuOTg4IDEuNDQgMS4zMSAxLjc2OSAyLjUgMy41MDIgMy42MzcgNS4xNjguNzkzIDEuMjc1IDEuNjgzIDIuNjQgMi40NjYgMy45OSAyLjM2MyA0LjA5NCA0LjAwNyA4LjA5MiA0LjYgMTMuOTE0di4wMTJjLjE4Mi40MTIuNTE2LjY2Ni44NzkuNjY3LjQwMy0uMDAxLjc2OC0uMzE0LjkzLS43OTkuNjAzLTUuNzU2IDIuMjM4LTkuNzI5IDQuNTg1LTEzLjc5NC43ODItMS4zNSAxLjY3My0yLjcxNSAyLjQ2NS0zLjk5IDEuMTM3LTEuNjY2IDIuMzI4LTMuNCAzLjYzOC01LjE2OS4zMTUtLjQ4Mi42NDUtLjk2Mi45ODgtMS40MzkuMy0uNTAzLjYxNy0xLjAwNi45NS0xLjUwOC4zNTktLjcuNzYtMS40MDQgMS4xOS0yLjEwNyAxLjQyNi0yLjQwMiAyLTUuMTE0IDIuMDA0LTcuODc1IDAtOC44NDQtNy41MTEtMTYuMDE0LTE2Ljc3Ni0xNi4wMTR6IiBmaWxsPSIjZGQ0YjNlIiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxlbGxpcHNlIHJ5PSI1LjU2NCIgcng9IjUuODI4IiBjeT0iMjM5LjAwMiIgY3g9IjIyNi43NDIiIGZpbGw9IiM4MDJkMjciIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PHBhdGggZD0iTTE5MC4zMDEgMjM3LjI4M2MtNC42NyAwLTguNDU3IDMuODUzLTguNDU3IDguNjA2czMuNzg2IDguNjA3IDguNDU3IDguNjA3YzMuMDQzIDAgNC44MDYtLjk1OCA2LjMzNy0yLjUxNiAxLjUzLTEuNTU3IDIuMDg3LTMuOTEzIDIuMDg3LTYuMjkgMC0uMzYyLS4wMjMtLjcyMi0uMDY0LTEuMDc5aC04LjI1N3YzLjA0M2g0Ljg1Yy0uMTk3Ljc1OS0uNTMxIDEuNDUtMS4wNTggMS45ODYtLjk0Mi45NTgtMi4wMjggMS41NDgtMy45MDEgMS41NDgtMi44NzYgMC01LjIwOC0yLjM3Mi01LjIwOC01LjI5OSAwLTIuOTI2IDIuMzMyLTUuMjk5IDUuMjA4LTUuMjk5IDEuMzk5IDAgMi42MTguNDA3IDMuNTg0IDEuMjkzbDIuMzgxLTIuMzhjMC0uMDAyLS4wMDMtLjAwNC0uMDA0LS4wMDUtMS41ODgtMS41MjQtMy42Mi0yLjIxNS01Ljk1NS0yLjIxNXptNC40MyA1LjY2bC4wMDMuMDA2di0uMDAzeiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjE1LjE4NCAyNTEuOTI5bC03Ljk4IDcuOTc5IDI4LjQ3NyAyOC40NzVjLjI4Ny0uNjQ5LjQ0OS0xLjM2Ni40NDktMi4xMjN2LTMxLjE2NWMtLjQ2OS42NzUtLjkzNCAxLjM0OS0xLjM4MiAyLjAwNS0uNzkyIDEuMjc1LTEuNjgyIDIuNjQtMi40NjUgMy45OS0yLjM0NyA0LjA2NS0zLjk4MiA4LjAzOC00LjU4NSAxMy43OTQtLjE2Mi40ODUtLjUyNy43OTgtLjkzLjc5OS0uMzYzLS4wMDEtLjY5Ny0uMjU1LS44NzktLjY2N3YtLjAxMmMtLjU5My01LjgyMi0yLjIzNy05LjgyLTQuNi0xMy45MTQtLjc4My0xLjM1LTEuNjczLTIuNzE1LTIuNDY2LTMuOTktMS4xMzctMS42NjYtMi4zMjctMy40LTMuNjM3LTUuMTY5bC0uMDAyLS4wMDN6IiBmaWxsPSIjYzNjM2MzIi8+PHBhdGggZD0iTTIxMi45ODMgMjQ4LjQ5NWwtMzYuOTUyIDM2Ljk1M3YuODEyYTUuMjI3IDUuMjI3IDAgMCAwIDUuMjM4IDUuMjM4aDEuMDE1bDM1LjY2Ni0zNS42NjZhMTM2LjI3NSAxMzYuMjc1IDAgMCAwLTIuNzY0LTMuOSAzNy41NzUgMzcuNTc1IDAgMCAwLS45ODktMS40NGMtLjI5OS0uNTAzLS42MTYtMS4wMDYtLjk1LTEuNTA4LS4wODMtLjE2Mi0uMTc2LS4zMjYtLjI2NC0uNDg5eiIgZmlsbD0iI2ZkZGM0ZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjExLjk5OCAyNjEuMDgzbC02LjE1MiA2LjE1MSAyNC4yNjQgMjQuMjY0aC43ODFhNS4yMjcgNS4yMjcgMCAwIDAgNS4yMzktNS4yMzh2LTEuMDQ1eiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48L2c+PC9zdmc+);\n\t}\n\n\t&[data-oembed-url*="facebook.com"] .ck-media__placeholder {\n\t\tbackground: hsl(220, 46%, 48%);\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIxMDI0cHgiIGhlaWdodD0iMTAyNHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPiAgICAgICAgPHRpdGxlPkZpbGwgMTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZGVmcz48L2RlZnM+ICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9ImZMb2dvX1doaXRlIiBmaWxsPSIjRkZGRkZFIj4gICAgICAgICAgICA8cGF0aCBkPSJNOTY3LjQ4NCwwIEw1Ni41MTcsMCBDMjUuMzA0LDAgMCwyNS4zMDQgMCw1Ni41MTcgTDAsOTY3LjQ4MyBDMCw5OTguNjk0IDI1LjI5NywxMDI0IDU2LjUyMiwxMDI0IEw1NDcsMTAyNCBMNTQ3LDYyOCBMNDE0LDYyOCBMNDE0LDQ3MyBMNTQ3LDQ3MyBMNTQ3LDM1OS4wMjkgQzU0NywyMjYuNzY3IDYyNy43NzMsMTU0Ljc0NyA3NDUuNzU2LDE1NC43NDcgQzgwMi4yNjksMTU0Ljc0NyA4NTAuODQyLDE1OC45NTUgODY1LDE2MC44MzYgTDg2NSwyOTkgTDc4My4zODQsMjk5LjAzNyBDNzE5LjM5MSwyOTkuMDM3IDcwNywzMjkuNTI5IDcwNywzNzQuMjczIEw3MDcsNDczIEw4NjAuNDg3LDQ3MyBMODQwLjUwMSw2MjggTDcwNyw2MjggTDcwNywxMDI0IEw5NjcuNDg0LDEwMjQgQzk5OC42OTcsMTAyNCAxMDI0LDk5OC42OTcgMTAyNCw5NjcuNDg0IEwxMDI0LDU2LjUxNSBDMTAyNCwyNS4zMDMgOTk4LjY5NywwIDk2Ny40ODQsMCIgaWQ9IkZpbGwtMSI+PC9wYXRoPiAgICAgICAgPC9nPiAgICA8L2c+PC9zdmc+);\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(220, 100%, 90%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="instagram.com"] .ck-media__placeholder {\n\t\tbackground: linear-gradient(-135deg,hsl(246, 100%, 39%),hsl(302, 100%, 36%),hsl(0, 100%, 48%));\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI1MDRweCIgaGVpZ2h0PSI1MDRweCIgdmlld0JveD0iMCAwIDUwNCA1MDQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+ICAgICAgICA8dGl0bGU+Z2x5cGgtbG9nb19NYXkyMDE2PC90aXRsZT4gICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+ICAgIDxkZWZzPiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtMSIgcG9pbnRzPSIwIDAuMTU5IDUwMy44NDEgMC4xNTkgNTAzLjg0MSA1MDMuOTQgMCA1MDMuOTQiPjwvcG9seWdvbj4gICAgPC9kZWZzPiAgICA8ZyBpZD0iZ2x5cGgtbG9nb19NYXkyMDE2IiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxnIGlkPSJHcm91cC0zIj4gICAgICAgICAgICA8bWFzayBpZD0ibWFzay0yIiBmaWxsPSJ3aGl0ZSI+ICAgICAgICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+ICAgICAgICAgICAgPC9tYXNrPiAgICAgICAgICAgIDxnIGlkPSJDbGlwLTIiPjwvZz4gICAgICAgICAgICA8cGF0aCBkPSJNMjUxLjkyMSwwLjE1OSBDMTgzLjUwMywwLjE1OSAxNzQuOTI0LDAuNDQ5IDE0OC4wNTQsMS42NzUgQzEyMS4yNCwyLjg5OCAxMDIuOTI3LDcuMTU3IDg2LjkwMywxMy4zODUgQzcwLjMzNywxOS44MjIgNTYuMjg4LDI4LjQzNiA0Mi4yODIsNDIuNDQxIEMyOC4yNzcsNTYuNDQ3IDE5LjY2Myw3MC40OTYgMTMuMjI2LDg3LjA2MiBDNi45OTgsMTAzLjA4NiAyLjczOSwxMjEuMzk5IDEuNTE2LDE0OC4yMTMgQzAuMjksMTc1LjA4MyAwLDE4My42NjIgMCwyNTIuMDggQzAsMzIwLjQ5NyAwLjI5LDMyOS4wNzYgMS41MTYsMzU1Ljk0NiBDMi43MzksMzgyLjc2IDYuOTk4LDQwMS4wNzMgMTMuMjI2LDQxNy4wOTcgQzE5LjY2Myw0MzMuNjYzIDI4LjI3Nyw0NDcuNzEyIDQyLjI4Miw0NjEuNzE4IEM1Ni4yODgsNDc1LjcyMyA3MC4zMzcsNDg0LjMzNyA4Ni45MDMsNDkwLjc3NSBDMTAyLjkyNyw0OTcuMDAyIDEyMS4yNCw1MDEuMjYxIDE0OC4wNTQsNTAyLjQ4NCBDMTc0LjkyNCw1MDMuNzEgMTgzLjUwMyw1MDQgMjUxLjkyMSw1MDQgQzMyMC4zMzgsNTA0IDMyOC45MTcsNTAzLjcxIDM1NS43ODcsNTAyLjQ4NCBDMzgyLjYwMSw1MDEuMjYxIDQwMC45MTQsNDk3LjAwMiA0MTYuOTM4LDQ5MC43NzUgQzQzMy41MDQsNDg0LjMzNyA0NDcuNTUzLDQ3NS43MjMgNDYxLjU1OSw0NjEuNzE4IEM0NzUuNTY0LDQ0Ny43MTIgNDg0LjE3OCw0MzMuNjYzIDQ5MC42MTYsNDE3LjA5NyBDNDk2Ljg0Myw0MDEuMDczIDUwMS4xMDIsMzgyLjc2IDUwMi4zMjUsMzU1Ljk0NiBDNTAzLjU1MSwzMjkuMDc2IDUwMy44NDEsMzIwLjQ5NyA1MDMuODQxLDI1Mi4wOCBDNTAzLjg0MSwxODMuNjYyIDUwMy41NTEsMTc1LjA4MyA1MDIuMzI1LDE0OC4yMTMgQzUwMS4xMDIsMTIxLjM5OSA0OTYuODQzLDEwMy4wODYgNDkwLjYxNiw4Ny4wNjIgQzQ4NC4xNzgsNzAuNDk2IDQ3NS41NjQsNTYuNDQ3IDQ2MS41NTksNDIuNDQxIEM0NDcuNTUzLDI4LjQzNiA0MzMuNTA0LDE5LjgyMiA0MTYuOTM4LDEzLjM4NSBDNDAwLjkxNCw3LjE1NyAzODIuNjAxLDIuODk4IDM1NS43ODcsMS42NzUgQzMyOC45MTcsMC40NDkgMzIwLjMzOCwwLjE1OSAyNTEuOTIxLDAuMTU5IFogTTI1MS45MjEsNDUuNTUgQzMxOS4xODYsNDUuNTUgMzI3LjE1NCw0NS44MDcgMzUzLjcxOCw0Ny4wMTkgQzM3OC4yOCw0OC4xMzkgMzkxLjYxOSw1Mi4yNDMgNDAwLjQ5Niw1NS42OTMgQzQxMi4yNTUsNjAuMjYzIDQyMC42NDcsNjUuNzIyIDQyOS40NjIsNzQuNTM4IEM0MzguMjc4LDgzLjM1MyA0NDMuNzM3LDkxLjc0NSA0NDguMzA3LDEwMy41MDQgQzQ1MS43NTcsMTEyLjM4MSA0NTUuODYxLDEyNS43MiA0NTYuOTgxLDE1MC4yODIgQzQ1OC4xOTMsMTc2Ljg0NiA0NTguNDUsMTg0LjgxNCA0NTguNDUsMjUyLjA4IEM0NTguNDUsMzE5LjM0NSA0NTguMTkzLDMyNy4zMTMgNDU2Ljk4MSwzNTMuODc3IEM0NTUuODYxLDM3OC40MzkgNDUxLjc1NywzOTEuNzc4IDQ0OC4zMDcsNDAwLjY1NSBDNDQzLjczNyw0MTIuNDE0IDQzOC4yNzgsNDIwLjgwNiA0MjkuNDYyLDQyOS42MjEgQzQyMC42NDcsNDM4LjQzNyA0MTIuMjU1LDQ0My44OTYgNDAwLjQ5Niw0NDguNDY2IEMzOTEuNjE5LDQ1MS45MTYgMzc4LjI4LDQ1Ni4wMiAzNTMuNzE4LDQ1Ny4xNCBDMzI3LjE1OCw0NTguMzUyIDMxOS4xOTEsNDU4LjYwOSAyNTEuOTIxLDQ1OC42MDkgQzE4NC42NSw0NTguNjA5IDE3Ni42ODQsNDU4LjM1MiAxNTAuMTIzLDQ1Ny4xNCBDMTI1LjU2MSw0NTYuMDIgMTEyLjIyMiw0NTEuOTE2IDEwMy4zNDUsNDQ4LjQ2NiBDOTEuNTg2LDQ0My44OTYgODMuMTk0LDQzOC40MzcgNzQuMzc5LDQyOS42MjEgQzY1LjU2NCw0MjAuODA2IDYwLjEwNCw0MTIuNDE0IDU1LjUzNCw0MDAuNjU1IEM1Mi4wODQsMzkxLjc3OCA0Ny45OCwzNzguNDM5IDQ2Ljg2LDM1My44NzcgQzQ1LjY0OCwzMjcuMzEzIDQ1LjM5MSwzMTkuMzQ1IDQ1LjM5MSwyNTIuMDggQzQ1LjM5MSwxODQuODE0IDQ1LjY0OCwxNzYuODQ2IDQ2Ljg2LDE1MC4yODIgQzQ3Ljk4LDEyNS43MiA1Mi4wODQsMTEyLjM4MSA1NS41MzQsMTAzLjUwNCBDNjAuMTA0LDkxLjc0NSA2NS41NjMsODMuMzUzIDc0LjM3OSw3NC41MzggQzgzLjE5NCw2NS43MjIgOTEuNTg2LDYwLjI2MyAxMDMuMzQ1LDU1LjY5MyBDMTEyLjIyMiw1Mi4yNDMgMTI1LjU2MSw0OC4xMzkgMTUwLjEyMyw0Ny4wMTkgQzE3Ni42ODcsNDUuODA3IDE4NC42NTUsNDUuNTUgMjUxLjkyMSw0NS41NSBaIiBpZD0iRmlsbC0xIiBmaWxsPSIjRkZGRkZGIiBtYXNrPSJ1cmwoI21hc2stMikiPjwvcGF0aD4gICAgICAgIDwvZz4gICAgICAgIDxwYXRoIGQ9Ik0yNTEuOTIxLDMzNi4wNTMgQzIwNS41NDMsMzM2LjA1MyAxNjcuOTQ3LDI5OC40NTcgMTY3Ljk0NywyNTIuMDggQzE2Ny45NDcsMjA1LjcwMiAyMDUuNTQzLDE2OC4xMDYgMjUxLjkyMSwxNjguMTA2IEMyOTguMjk4LDE2OC4xMDYgMzM1Ljg5NCwyMDUuNzAyIDMzNS44OTQsMjUyLjA4IEMzMzUuODk0LDI5OC40NTcgMjk4LjI5OCwzMzYuMDUzIDI1MS45MjEsMzM2LjA1MyBaIE0yNTEuOTIxLDEyMi43MTUgQzE4MC40NzQsMTIyLjcxNSAxMjIuNTU2LDE4MC42MzMgMTIyLjU1NiwyNTIuMDggQzEyMi41NTYsMzIzLjUyNiAxODAuNDc0LDM4MS40NDQgMjUxLjkyMSwzODEuNDQ0IEMzMjMuMzY3LDM4MS40NDQgMzgxLjI4NSwzMjMuNTI2IDM4MS4yODUsMjUyLjA4IEMzODEuMjg1LDE4MC42MzMgMzIzLjM2NywxMjIuNzE1IDI1MS45MjEsMTIyLjcxNSBaIiBpZD0iRmlsbC00IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgICAgICA8cGF0aCBkPSJNNDE2LjYyNywxMTcuNjA0IEM0MTYuNjI3LDEzNC4zIDQwMy4wOTIsMTQ3LjgzNCAzODYuMzk2LDE0Ny44MzQgQzM2OS43MDEsMTQ3LjgzNCAzNTYuMTY2LDEzNC4zIDM1Ni4xNjYsMTE3LjYwNCBDMzU2LjE2NiwxMDAuOTA4IDM2OS43MDEsODcuMzczIDM4Ni4zOTYsODcuMzczIEM0MDMuMDkyLDg3LjM3MyA0MTYuNjI3LDEwMC45MDggNDE2LjYyNywxMTcuNjA0IiBpZD0iRmlsbC01IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgIDwvZz48L3N2Zz4=);\n\t\t}\n\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(302, 100%, 94%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder {\n\t\t/* Use gradient to contrast with focused widget (ckeditor/ckeditor5-media-embed#22). */\n\t\tbackground: linear-gradient( to right, hsl(201, 85%, 70%), hsl(201, 85%, 35%) );\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IldoaXRlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQwMCA0MDAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQwMCA0MDA7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPi5zdDB7ZmlsbDojRkZGRkZGO308L3N0eWxlPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MDAsMjAwYzAsMTEwLjUtODkuNSwyMDAtMjAwLDIwMFMwLDMxMC41LDAsMjAwUzg5LjUsMCwyMDAsMFM0MDAsODkuNSw0MDAsMjAweiBNMTYzLjQsMzA1LjVjODguNywwLDEzNy4yLTczLjUsMTM3LjItMTM3LjJjMC0yLjEsMC00LjItMC4xLTYuMmM5LjQtNi44LDE3LjYtMTUuMywyNC4xLTI1Yy04LjYsMy44LTE3LjksNi40LTI3LjcsNy42YzEwLTYsMTcuNi0xNS40LDIxLjItMjYuN2MtOS4zLDUuNS0xOS42LDkuNS0zMC42LDExLjdjLTguOC05LjQtMjEuMy0xNS4yLTM1LjItMTUuMmMtMjYuNiwwLTQ4LjIsMjEuNi00OC4yLDQ4LjJjMCwzLjgsMC40LDcuNSwxLjMsMTFjLTQwLjEtMi03NS42LTIxLjItOTkuNC01MC40Yy00LjEsNy4xLTYuNSwxNS40LTYuNSwyNC4yYzAsMTYuNyw4LjUsMzEuNSwyMS41LDQwLjFjLTcuOS0wLjItMTUuMy0yLjQtMjEuOC02YzAsMC4yLDAsMC40LDAsMC42YzAsMjMuNCwxNi42LDQyLjgsMzguNyw0Ny4zYy00LDEuMS04LjMsMS43LTEyLjcsMS43Yy0zLjEsMC02LjEtMC4zLTkuMS0wLjljNi4xLDE5LjIsMjMuOSwzMy4xLDQ1LDMzLjVjLTE2LjUsMTIuOS0zNy4zLDIwLjYtNTkuOSwyMC42Yy0zLjksMC03LjctMC4yLTExLjUtMC43QzExMC44LDI5Ny41LDEzNi4yLDMwNS41LDE2My40LDMwNS41Ii8+PC9zdmc+);\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(201, 100%, 86%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const c=a},3525:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-media-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-media-form .ck-labeled-field-view{display:inline-block}.ck.ck-media-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-media-form{flex-wrap:wrap}.ck.ck-media-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-media-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,kBAEC,sBAAuB,CADvB,YAAa,CAEb,kBAAmB,CACnB,gBAqBD,CAnBC,yCACC,oBACD,CAEA,4BACC,YACD,CCbA,oCDCD,kBAeE,cAUF,CARE,yCACC,eACD,CAEA,6BACC,cACD,CCtBD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-media-form {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t& .ck-labeled-field-view {\n\t\tdisplay: inline-block;\n\t}\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},6448:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-content .page-break{align-items:center;clear:both;display:flex;justify-content:center;padding:5px 0;position:relative}.ck-content .page-break:after{border-bottom:2px dashed #c4c4c4;content:"";position:absolute;width:100%}.ck-content .page-break__label{background:#fff;border:1px solid #c4c4c4;border-radius:2px;box-shadow:2px 2px 1px rgba(0,0,0,.15);color:#333;display:block;font-family:Helvetica,Arial,Tahoma,Verdana,Sans-Serif;font-size:.75em;font-weight:700;padding:.3em .6em;position:relative;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1}@media print{.ck-content .page-break{padding:0}.ck-content .page-break:after{display:none}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-page-break/theme/pagebreak.css"],names:[],mappings:"AAKA,wBAKC,kBAAmB,CAHnB,UAAW,CAEX,YAAa,CAEb,sBAAuB,CAHvB,aAAc,CAFd,iBAaD,CANC,8BAGC,gCAAyC,CAFzC,UAAW,CACX,iBAAkB,CAElB,UACD,CAGD,+BAYC,eAA4B,CAN5B,wBAAiC,CACjC,iBAAkB,CAMlB,sCAA6C,CAF7C,UAAsB,CAPtB,aAAc,CAId,qDAA0D,CAC1D,eAAiB,CACjB,eAAiB,CAPjB,iBAAkB,CAFlB,iBAAkB,CAIlB,wBAAyB,CAWzB,wBAAyB,CACzB,qBAAsB,CACtB,oBAAqB,CACrB,gBAAiB,CAjBjB,SAkBD,CAGA,aACC,wBACC,SAKD,CAHC,8BACC,YACD,CAEF",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .page-break {\n\tposition: relative;\n\tclear: both;\n\tpadding: 5px 0;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t&::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\tborder-bottom: 2px dashed hsl(0, 0%, 77%);\n\t\twidth: 100%;\n\t}\n}\n\n.ck-content .page-break__label {\n\tposition: relative;\n\tz-index: 1;\n\tpadding: .3em .6em;\n\tdisplay: block;\n\ttext-transform: uppercase;\n\tborder: 1px solid hsl(0, 0%, 77%);\n\tborder-radius: 2px;\n\tfont-family: Helvetica, Arial, Tahoma, Verdana, Sans-Serif;\n\tfont-size: 0.75em;\n\tfont-weight: bold;\n\tcolor: hsl(0, 0%, 20%);\n\tbackground: hsl(0, 0%, 100%);\n\tbox-shadow: 2px 2px 1px hsla(0, 0%, 0%, 0.15);\n\n\t/* Disable the possibility to select the label text by the user. */\n\t-webkit-user-select: none;\n\t-moz-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none;\n}\n\n/* Do not show the page break element inside the print preview window. */\n@media print {\n\t.ck-content .page-break {\n\t\tpadding: 0;\n\n\t\t&::after {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const c=a},671:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-source-editing-area{overflow:hidden;position:relative}.ck-source-editing-area textarea,.ck-source-editing-area:after{border:1px solid transparent;font-family:monospace;font-size:var(--ck-font-size-normal);line-height:var(--ck-line-height-base);margin:0;padding:var(--ck-spacing-large);white-space:pre-wrap}.ck-source-editing-area:after{content:attr(data-value) " ";display:block;visibility:hidden}.ck-source-editing-area textarea{border-color:var(--ck-color-base-border);border-radius:0;box-sizing:border-box;height:100%;outline:none;overflow:hidden;position:absolute;resize:none;width:100%}.ck-rounded-corners .ck-source-editing-area textarea,.ck-source-editing-area textarea.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}.ck-source-editing-area textarea:not([readonly]):focus{border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-source-editing/theme/sourceediting.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AASA,wBAEC,eAAgB,CADhB,iBAED,CAEA,+DAIC,4BAA6B,CAG7B,qBAAsB,CADtB,oCAAqC,CADrC,sCAAuC,CAFvC,QAAS,CADT,+BAAgC,CAMhC,oBACD,CAEA,8BACC,4BAA6B,CAE7B,aAAc,CADd,iBAED,CAEA,iCASC,wCAAyC,CC7BzC,eAAgB,CD2BhB,qBAAsB,CAJtB,WAAY,CAEZ,YAAa,CACb,eAAgB,CALhB,iBAAkB,CAGlB,WAAY,CAFZ,UAkBD,CApBA,yGChBE,qCAAsC,CD4BtC,wBAAyB,CACzB,yBAOF,CAJC,uDEpCA,2BAA2B,CCF3B,qCAA8B,CDC9B,YFwCA",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css";\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css";\n\n.ck-source-editing-area {\n\tposition: relative;\n\toverflow: hidden;\n}\n\n.ck-source-editing-area::after,\n.ck-source-editing-area textarea {\n\tpadding: var(--ck-spacing-large);\n\tmargin: 0;\n\tborder: 1px solid transparent;\n\tline-height: var(--ck-line-height-base);\n\tfont-size: var(--ck-font-size-normal);\n\tfont-family: monospace;\n\twhite-space: pre-wrap;\n}\n\n.ck-source-editing-area::after {\n\tcontent: attr(data-value) " ";\n\tvisibility: hidden;\n\tdisplay: block;\n}\n\n.ck-source-editing-area textarea {\n\tposition: absolute;\n\twidth: 100%;\n\theight: 100%;\n\tresize: none;\n\toutline: none;\n\toverflow: hidden;\n\tbox-sizing: border-box;\n\n\tborder-color: var(--ck-color-base-border);\n\n\t@mixin ck-rounded-corners {\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&:not([readonly]):focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},4046:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-character-grid{max-width:100%}.ck.ck-character-grid .ck-character-grid__tiles{display:grid}:root{--ck-character-grid-tile-size:24px}.ck.ck-character-grid{max-height:200px;overflow-x:hidden;overflow-y:auto;width:350px}@media screen and (max-width:600px){.ck.ck-character-grid{width:190px}}.ck.ck-character-grid .ck-character-grid__tiles{grid-gap:var(--ck-spacing-standard);grid-template-columns:repeat(10,1fr);margin:var(--ck-spacing-standard) var(--ck-spacing-large)}@media screen and (max-width:600px){.ck.ck-character-grid .ck-character-grid__tiles{grid-template-columns:repeat(5,1fr)}}.ck.ck-character-grid .ck-character-grid__tile{border:0;font-size:1.2em;height:var(--ck-character-grid-tile-size);min-height:var(--ck-character-grid-tile-size);min-width:var(--ck-character-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-character-grid-tile-size)}.ck.ck-character-grid .ck-character-grid__tile:focus:not(.ck-disabled),.ck.ck-character-grid .ck-character-grid__tile:hover:not(.ck-disabled){border:0;box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-character-grid .ck-character-grid__tile .ck-button__label{line-height:var(--ck-character-grid-tile-size);text-align:center;width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-special-characters/theme/charactergrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/charactergrid.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBACC,cAKD,CAHC,gDACC,YACD,CCFD,MACC,kCACD,CAEA,sBAIC,gBAAiB,CAFjB,iBAAkB,CADlB,eAAgB,CAEhB,WAyCD,CClDC,oCDMD,sBAOE,WAqCF,CChDC,CDcA,gDAGC,mCAAoC,CAFpC,oCAAsC,CACtC,yDAMD,CCxBA,oCDgBA,gDAME,mCAEF,CCtBA,CDwBA,+CAQC,QAAS,CAHT,eAAgB,CAHhB,yCAA0C,CAE1C,6CAA8C,CAD9C,4CAA6C,CAG7C,SAAU,CACV,8BAA+B,CAN/B,wCAsBD,CAbC,8IAGC,QAAS,CACT,iGACD,CAGA,iEACC,8CAA+C,CAE/C,iBAAkB,CADlB,UAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-character-grid {\n\tmax-width: 100%;\n\t\n\t& .ck-character-grid__tiles {\n\t\tdisplay: grid;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-character-grid-tile-size: 24px;\n}\n\n.ck.ck-character-grid {\n\toverflow-y: auto;\n\toverflow-x: hidden;\n\twidth: 350px;\n\tmax-height: 200px;\n\n\t@mixin ck-media-phone {\n\t\twidth: 190px;\n\t}\n\n\t& .ck-character-grid__tiles {\n\t\tgrid-template-columns: repeat(10, 1fr);\n\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-large);\n\t\tgrid-gap: var(--ck-spacing-standard);\n\n\t\t@mixin ck-media-phone {\n\t\t\tgrid-template-columns: repeat(5, 1fr);\n\t\t}\n\t}\n\n\t& .ck-character-grid__tile {\n\t\twidth: var(--ck-character-grid-tile-size);\n\t\theight: var(--ck-character-grid-tile-size);\n\t\tmin-width: var(--ck-character-grid-tile-size);\n\t\tmin-height: var(--ck-character-grid-tile-size);\n\t\tfont-size: 1.2em;\n\t\tpadding: 0;\n\t\ttransition: .2s ease box-shadow;\n\t\tborder: 0;\n\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\t/* Disable the default .ck-button\'s border ring. */\n\t\t\tborder: 0;\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t\t}\n\n\t\t/* Make sure the glyph is rendered in the center of the button */\n\t\t& .ck-button__label {\n\t\t\tline-height: var(--ck-character-grid-tile-size);\n\t\t\twidth: 100%;\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},4779:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-character-info{border-top:1px solid var(--ck-color-base-border);display:flex;justify-content:space-between;padding:var(--ck-spacing-small) var(--ck-spacing-large)}.ck.ck-character-info>*{font-size:var(--ck-font-size-small);text-transform:uppercase}.ck.ck-character-info .ck-character-info__name{max-width:280px;overflow:hidden;text-overflow:ellipsis}.ck.ck-character-info .ck-character-info__code{opacity:.6}@media screen and (max-width:600px){.ck.ck-character-info{max-width:190px}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-special-characters/theme/characterinfo.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/characterinfo.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBCIC,gDAAiD,CDHjD,YAAa,CACb,6BAA8B,CCC9B,uDDAD,CCGC,wBAEC,mCAAoC,CADpC,wBAED,CAEA,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,+CACC,UACD,CClBA,oCDCD,sBAoBE,eAEF,CCrBC",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},8170:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-special-characters-navigation>.ck-label{max-width:160px;overflow:hidden;text-overflow:ellipsis}.ck.ck-special-characters-navigation>.ck-dropdown .ck-dropdown__panel{max-height:250px;overflow-x:hidden;overflow-y:auto}@media screen and (max-width:600px){.ck.ck-special-characters-navigation{max-width:190px}.ck.ck-special-characters-navigation>.ck-form__header__label{overflow:hidden;text-overflow:ellipsis}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/specialcharacters.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAUC,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,sEAEC,gBAAiB,CAEjB,iBAAkB,CADlB,eAED,CCfA,oCDED,qCAgBE,eAOF,CALE,6DAEC,eAAgB,CADhB,sBAED,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},4082:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-input-color{display:flex;flex-direction:row-reverse;width:100%}.ck.ck-input-color>input.ck.ck-input-text{flex-grow:1;min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown{min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown>.ck-input-color__button .ck-dropdown__arrow{display:none}.ck.ck-input-color .ck.ck-input-color__button{display:flex}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview{overflow:hidden;position:relative}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{display:block;position:absolute}[dir=ltr] .ck.ck-input-color>.ck.ck-input-text{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-input-text{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-input-color>.ck.ck-input-text:focus{z-index:0}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{padding:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-left-radius:0;border-top-left-radius:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-left:1px solid transparent}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-right:1px solid transparent}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button.ck-disabled{background:var(--ck-color-input-disabled-background)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border-radius:0}.ck-rounded-corners .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview,.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border:1px solid var(--ck-color-input-border);height:20px;width:20px}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{background:red;border-radius:2px;height:150%;left:50%;top:-30%;transform:rotate(45deg);transform-origin:50%;width:8%}.ck.ck-input-color .ck.ck-input-color__remove-color{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard);width:100%}.ck.ck-input-color .ck.ck-input-color__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-input-border)}[dir=ltr] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-right-radius:0}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-left:var(--ck-spacing-standard);margin-right:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/colorinput.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/colorinput.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,YAAa,CACb,0BAA2B,CAF3B,UAgCD,CA5BC,0CAEC,WAAY,CADZ,cAED,CAEA,sCACC,cAMD,CAHC,kFACC,YACD,CAGD,8CAEC,YAWD,CATC,kFAEC,eAAgB,CADhB,iBAOD,CAJC,0IAEC,aAAc,CADd,iBAED,CC1BF,+CAGE,4BAA6B,CAD7B,yBAcF,CAhBA,+CAQE,2BAA4B,CAD5B,wBASF,CAHC,2CACC,SACD,CAIA,wEACC,SA0CD,CA3CA,kFAKE,2BAA4B,CAD5B,wBAuCF,CApCE,8FACC,iCACD,CATF,kFAcE,4BAA6B,CAD7B,yBA8BF,CA3BE,8FACC,kCACD,CAGD,oFACC,oDACD,CAEA,4GC1CF,eD2DE,CAjBA,+PCtCD,qCDuDC,CAjBA,4GAKC,6CAA8C,CAD9C,WAAY,CADZ,UAcD,CAVC,oKAKC,cAA6B,CAC7B,iBAAkB,CAHlB,WAAY,CADZ,QAAS,CADT,QAAS,CAMT,uBAAwB,CACxB,oBAAqB,CAJrB,QAKD,CAKH,oDAIC,2BAA4B,CAC5B,4BAA6B,CAH7B,qEAAwE,CADxE,UA0BD,CApBC,gEACC,oDACD,CATD,8DAYE,yBAeF,CA3BA,8DAgBE,wBAWF,CARC,gEACC,uCAMD,CAPA,0EAKE,sCAAuC,CADvC,cAGF",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},4880:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-form{padding:0 0 var(--ck-spacing-large)}.ck.ck-form:focus{outline:none}.ck.ck-form .ck.ck-input-text{min-width:100%;width:0}.ck.ck-form .ck.ck-dropdown{min-width:100%}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button .ck-button__label{width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/form.css"],names:[],mappings:"AAKA,YACC,mCAyBD,CAvBC,kBAEC,YACD,CAEA,8BACC,cAAe,CACf,OACD,CAEA,4BACC,cAWD,CARE,6DACC,4CACD,CAEA,mEACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},9865:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-form__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__row>:not(.ck-label){flex-grow:1}.ck.ck-form__row.ck-table-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-table-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row{padding:var(--ck-spacing-standard) var(--ck-spacing-large) 0}[dir=ltr] .ck.ck-form__row>:not(.ck-label)+*{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-form__row>:not(.ck-label)+*{margin-right:var(--ck-spacing-large)}.ck.ck-form__row>.ck-label{min-width:100%;width:100%}.ck.ck-form__row.ck-table-form__action-row{margin-top:var(--ck-spacing-large)}.ck.ck-form__row.ck-table-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/formrow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/formrow.css"],names:[],mappings:"AAKA,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAaD,CAVC,iCACC,WACD,CAGC,wHAEC,sBACD,CCbF,iBACC,4DA2BD,CAvBE,6CAEE,mCAMF,CARA,6CAME,oCAEF,CAGD,2BAEC,cAAe,CADf,UAED,CAEA,2CACC,kCAKD,CAHC,wEACC,0BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},8085:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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}.ck .ck-insert-table-dropdown-grid-box:focus{box-shadow:none}.ck .ck-insert-table-dropdown-grid-box.ck-on{background:var(--ck-color-focus-outer-shadow);border-color:var(--ck-color-focus-border)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/inserttable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/inserttable.css"],names:[],mappings:"AAKA,oCACC,YAAa,CACb,kBAAmB,CACnB,cACD,CCJA,MACC,uCAAwC,CACxC,0CAA2C,CAC3C,yCAA0C,CAC1C,yCACD,CAEA,oCAGC,yFAA0F,CAD1F,oJAED,CAEA,mFAEC,iBACD,CAEA,uCAIC,4CAA6C,CAC7C,iBAAkB,CAFlB,iDAAkD,CADlD,qDAAsD,CADtD,mDAAoD,CAKpD,YAAa,CACb,eAUD,CARC,6CACC,eACD,CAEA,6CAEC,6CAA8C,CAD9C,yCAED",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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&: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 c=a},4104:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-content .table{display:table;margin:.9em auto}.ck-content .table table{border:1px double #b3b3b3;border-collapse:collapse;border-spacing:0;height:100%;width:100%}.ck-content .table table td,.ck-content .table table th{border:1px solid #bfbfbf;min-width:2em;padding:.4em}.ck-content .table table th{background:rgba(0,0,0,.05);font-weight:700}.ck-content[dir=rtl] .table th{text-align:right}.ck-content[dir=ltr] .table th{text-align:left}.ck-editor__editable .ck-table-bogus-paragraph{display:inline-block;width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/table.css"],names:[],mappings:"AAKA,mBAKC,aAAc,CADd,gBAiCD,CA9BC,yBAYC,yBAAkC,CAVlC,wBAAyB,CACzB,gBAAiB,CAKjB,WAAY,CADZ,UAsBD,CAfC,wDAQC,wBAAiC,CANjC,aAAc,CACd,YAMD,CAEA,4BAEC,0BAA+B,CAD/B,eAED,CAMF,+BACC,gBACD,CAEA,+BACC,eACD,CAEA,+CAKC,oBAAqB,CAMrB,UACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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 <figure>. 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 c=a},9888:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-table-caption-background:#f7f7f7;--ck-color-table-caption-text:#333;--ck-color-table-caption-highlighted-background:#fd0}.ck-content .table>figcaption{background-color:var(--ck-color-table-caption-background);caption-side:top;color:var(--ck-color-table-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;text-align:center;word-break:break-word}.ck.ck-editor__editable .table>figcaption.table__caption_highlighted{animation:ck-table-caption-highlight .6s ease-out}.ck.ck-editor__editable .table>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}@keyframes ck-table-caption-highlight{0%{background-color:var(--ck-color-table-caption-highlighted-background)}to{background-color:var(--ck-color-table-caption-background)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecaption.css"],names:[],mappings:"AAKA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,oDACD,CAGA,8BAMC,yDAA0D,CAJ1D,gBAAiB,CAGjB,wCAAyC,CAJzC,qBAAsB,CAOtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,iBAAkB,CADlB,qBAOD,CAIC,qEACC,iDACD,CAEA,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAGD,sCACC,GACC,qEACD,CAEA,GACC,yDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-table-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-table-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-table-caption-highlighted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .table > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: top;\n\tword-break: break-word;\n\ttext-align: center;\n\tcolor: var(--ck-color-table-caption-text);\n\tbackground-color: var(--ck-color-table-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .table > figcaption {\n\t&.table__caption_highlighted {\n\t\tanimation: ck-table-caption-highlight .6s ease-out;\n\t}\n\n\t&.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the table caption placeholder doesn't overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n@keyframes ck-table-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-table-caption-highlighted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-table-caption-background);\n\t}\n}\n"],sourceRoot:""}]);const c=a},5737:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row{flex-wrap:wrap}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:first-of-type{flex-grow:0.57}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:last-of-type{flex-grow:0.43}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar .ck-button{flex-grow:1}.ck.ck-table-cell-properties-form{width:320px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__padding-row{align-self:flex-end;padding:0;width:25%}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecellproperties.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tablecellproperties.css"],names:[],mappings:"AAOE,6FACC,cAiBD,CAdE,0HAEC,cACD,CAEA,yHAEC,cACD,CAEA,uHACC,WACD,CClBJ,kCACC,WAkBD,CAfE,2FACC,mBAAoB,CACpB,SAAU,CACV,SACD,CAGC,4GACC,eAAgB,CAGhB,qCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},728:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-table-column-resizer-hover:var(--ck-color-base-active);--ck-table-column-resizer-width:7px;--ck-table-column-resizer-position-offset:calc(var(--ck-table-column-resizer-width)*-0.5 - 0.5px)}.ck-content .table .ck-table-resized{table-layout:fixed}.ck-content .table table{overflow:hidden}.ck-content .table td,.ck-content .table th{position:relative}.ck.ck-editor__editable .table .ck-table-column-resizer{bottom:-999999px;cursor:col-resize;position:absolute;right:var(--ck-table-column-resizer-position-offset);top:-999999px;user-select:none;width:var(--ck-table-column-resizer-width);z-index:var(--ck-z-default)}.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer,.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer{display:none}.ck.ck-editor__editable .table .ck-table-column-resizer:hover,.ck.ck-editor__editable .table .ck-table-column-resizer__active{background-color:var(--ck-color-table-column-resizer-hover);opacity:.25}.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer{left:var(--ck-table-column-resizer-position-offset);right:unset}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecolumnresize.css"],names:[],mappings:"AAKA,MACC,iEAAkE,CAClE,mCAAoC,CAIpC,iGACD,CAEA,qCACC,kBACD,CAEA,yBACC,eACD,CAEA,4CAEC,iBACD,CAEA,wDAOC,gBAAiB,CAGjB,iBAAkB,CATlB,iBAAkB,CAOlB,oDAAqD,CAFrD,aAAc,CAKd,gBAAiB,CAFjB,0CAA2C,CAG3C,2BACD,CAQA,qJACC,YACD,CAEA,8HAEC,2DAA4D,CAC5D,WACD,CAEA,iEACC,mDAAoD,CACpD,WACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-table-column-resizer-hover: var(--ck-color-base-active);\n\t--ck-table-column-resizer-width: 7px;\n\n\t/* The offset used for absolute positioning of the resizer element, so that it is placed exactly above the cell border.\n\t The value is: minus half the width of the resizer decreased additionaly by the half the width of the border (0.5px). */\n\t--ck-table-column-resizer-position-offset: calc(var(--ck-table-column-resizer-width) * -0.5 - 0.5px);\n}\n\n.ck-content .table .ck-table-resized {\n\ttable-layout: fixed;\n}\n\n.ck-content .table table {\n\toverflow: hidden;\n}\n\n.ck-content .table td,\n.ck-content .table th {\n\tposition: relative;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer {\n\tposition: absolute;\n\t/* The resizer element resides in each cell so to occupy the entire height of the table, which is unknown from a CSS point of view,\n\t it is extended to an extremely high height. Even for screens with a very high pixel density, the resizer will fulfill its role as\n\t it should, i.e. for a screen of 476 ppi the total height of the resizer will take over 350 sheets of A4 format, which is totally\n\t unrealistic height for a single table. */\n\ttop: -999999px;\n\tbottom: -999999px;\n\tright: var(--ck-table-column-resizer-position-offset);\n\twidth: var(--ck-table-column-resizer-width);\n\tcursor: col-resize;\n\tuser-select: none;\n\tz-index: var(--ck-z-default);\n}\n\n.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n/* The resizer elements, which are extended to an extremely high height, break the drag & drop feature in Chrome. To make it work again,\n all resizers must be hidden while the table is dragged. */\n.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer:hover,\n.ck.ck-editor__editable .table .ck-table-column-resizer__active {\n\tbackground-color: var(--ck-color-table-column-resizer-hover);\n\topacity: 0.25;\n}\n\n.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer {\n\tleft: var(--ck-table-column-resizer-position-offset);\n\tright: unset;\n}\n"],sourceRoot:""}]);const c=a},4777:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-table-focused-cell-background:rgba(158,201,250,.3)}.ck-widget.table td.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table td.ck-editor__nested-editable:focus,.ck-widget.table th.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table th.ck-editor__nested-editable:focus{background:var(--ck-color-table-focused-cell-background);border-style:none;outline:1px solid var(--ck-color-focus-border);outline-offset:-1px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableediting.css"],names:[],mappings:"AAKA,MACC,6DACD,CAKE,8QAGC,wDAAyD,CAKzD,iBAAkB,CAClB,8CAA+C,CAC/C,mBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-table-focused-cell-background: hsla(212, 90%, 80%, .3);\n}\n\n.ck-widget.table {\n\t& td,\n\t& th {\n\t\t&.ck-editor__nested-editable.ck-editor__nested-editable_focused,\n\t\t&.ck-editor__nested-editable:focus {\n\t\t\t/* A very slight background to highlight the focused cell */\n\t\t\tbackground: var(--ck-color-table-focused-cell-background);\n\n\t\t\t/* Fixes the problem where surrounding cells cover the focused cell's border.\n\t\t\tIt does not fix the problem in all places but the UX is improved.\n\t\t\tSee https://github.com/ckeditor/ckeditor5-table/issues/29. */\n\t\t\tborder-style: none;\n\t\t\toutline: 1px solid var(--ck-color-focus-border);\n\t\t\toutline-offset: -1px; /* progressive enhancement - no IE support */\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const c=a},198:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck.ck-table-form .ck-form__row.ck-table-form__background-row,.ck.ck-table-form .ck-form__row.ck-table-form__border-row{flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{align-items:center;flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view{align-items:center;display:flex;flex-direction:column-reverse}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view .ck.ck-dropdown,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{flex-grow:0}.ck.ck-table-form .ck.ck-labeled-field-view{position:relative}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{bottom:calc(var(--ck-table-properties-error-arrow-size)*-1);left:50%;position:absolute;transform:translate(-50%,100%);z-index:1}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{content:"";left:50%;position:absolute;top:calc(var(--ck-table-properties-error-arrow-size)*-1);transform:translateX(-50%)}:root{--ck-table-properties-error-arrow-size:6px;--ck-table-properties-min-error-width:150px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{max-width:80px;min-width:80px;width:80px}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{padding:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width{margin:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{align-self:flex-end;display:inline-block;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small)}.ck.ck-table-form .ck.ck-labeled-field-view{padding-top:var(--ck-spacing-standard)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{border-radius:0}.ck-rounded-corners .ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status,.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{background:var(--ck-color-base-error);color:var(--ck-color-base-background);min-width:var(--ck-table-properties-min-error-width);padding:var(--ck-spacing-small) var(--ck-spacing-medium);text-align:center}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-color:transparent transparent var(--ck-color-base-error) transparent;border-style:solid;border-width:0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:ck-table-form-labeled-view-status-appear .15s ease both}.ck.ck-table-form .ck.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}@keyframes ck-table-form-labeled-view-status-appear{0%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tableform.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableform.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAWE,wHACC,cACD,CAEA,8DAEC,kBAAmB,CADnB,cAgBD,CAbC,qFAGC,kBAAmB,CAFnB,YAAa,CACb,6BAMD,CAEA,sMACC,WACD,CAIF,4CAEC,iBAoBD,CAlBC,8EAGC,2DAAgE,CADhE,QAAS,CADT,iBAAkB,CAGlB,8BAA+B,CAG/B,SAUD,CAPC,oFACC,UAAW,CAGX,QAAS,CAFT,iBAAkB,CAClB,wDAA6D,CAE7D,0BACD,CChDH,MACC,0CAA2C,CAC3C,2CACD,CAMI,2FACC,kCAAmC,CACnC,iBACD,CAGD,8KAIC,cAAe,CADf,cAAe,CADf,UAGD,CAGD,8DACC,SAcD,CAZC,yMAEC,QACD,CAEA,iGACC,mBAAoB,CACpB,oBAAqB,CACrB,wCAAyC,CACzC,6CAA8C,CAC9C,gCACD,CAIF,4CACC,sCAyBD,CAvBC,8ECxCD,eDyDC,CAjBA,mMCpCA,qCDqDA,CAjBA,8EAGC,qCAAsC,CACtC,qCAAsC,CAEtC,oDAAqD,CADrD,wDAAyD,CAEzD,iBAUD,CAPC,oFACC,2EAA4E,CAE5E,kBAAmB,CADnB,kJAED,CAdD,8EAgBC,iEACD,CAGA,6GACC,YACD,CAIF,oDACC,GACC,SACD,CAEA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-table-properties-error-arrow-size: 6px;\n\t--ck-table-properties-min-error-width: 150px;\n}\n\n.ck.ck-table-form {\n\t& .ck-form__row {\n\t\t&.ck-table-form__border-row {\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\t& > .ck-label {\n\t\t\t\t\tfont-size: var(--ck-font-size-tiny);\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-table-form__border-style,\n\t\t\t& .ck-table-form__border-width {\n\t\t\t\twidth: 80px;\n\t\t\t\tmin-width: 80px;\n\t\t\t\tmax-width: 80px;\n\t\t\t}\n\t\t}\n\n\t\t&.ck-table-form__dimensions-row {\n\t\t\tpadding: 0;\n\n\t\t\t& .ck-table-form__dimensions-row__width,\n\t\t\t& .ck-table-form__dimensions-row__height {\n\t\t\t\tmargin: 0\n\t\t\t}\n\n\t\t\t& .ck-table-form__dimension-operator {\n\t\t\t\talign-self: flex-end;\n\t\t\t\tdisplay: inline-block;\n\t\t\t\theight: var(--ck-ui-component-min-height);\n\t\t\t\tline-height: var(--ck-ui-component-min-height);\n\t\t\t\tmargin: 0 var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-labeled-field-view {\n\t\tpadding-top: var(--ck-spacing-standard);\n\n\t\t& .ck.ck-labeled-field-view__status {\n\t\t\t@mixin ck-rounded-corners;\n\n\t\t\tbackground: var(--ck-color-base-error);\n\t\t\tcolor: var(--ck-color-base-background);\n\t\t\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\n\t\t\tmin-width: var(--ck-table-properties-min-error-width);\n\t\t\ttext-align: center;\n\n\t\t\t/* The arrow pointing towards the field. */\n\t\t\t&::after {\n\t\t\t\tborder-color: transparent transparent var(--ck-color-base-error) transparent;\n\t\t\t\tborder-width: 0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\n\t\t\tanimation: ck-table-form-labeled-view-status-appear .15s ease both;\n\t\t}\n\n\t\t/* Hide the error balloon when the field is blurred. Makes the experience much more clear. */\n\t\t& .ck-input.ck-error:not(:focus) + .ck.ck-labeled-field-view__status {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n@keyframes ck-table-form-labeled-view-status-appear {\n\t0% {\n\t\topacity: 0;\n\t}\n\n\t100% {\n\t\topacity: 1;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},9221:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-content:baseline;flex-basis:0;flex-wrap:wrap}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items{flex-wrap:nowrap}.ck.ck-table-properties-form{width:320px}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-self:flex-end;padding:0}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items>*{width:40px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tableproperties.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableproperties.css"],names:[],mappings:"AAOE,mFAGC,sBAAuB,CADvB,YAAa,CADb,cAOD,CAHC,qHACC,gBACD,CCTH,6BACC,WAmBD,CAhBE,mFACC,mBAAoB,CACpB,SAYD,CAVC,kGACC,eAAgB,CAGhB,qCAKD,CAHC,uHACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},5593:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,':root{--ck-table-selected-cell-background:rgba(158,207,250,.3)}.ck.ck-editor__editable .table table td.ck-editor__editable_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected{box-shadow:unset;caret-color:transparent;outline:unset;position:relative}.ck.ck-editor__editable .table table td.ck-editor__editable_selected:after,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:after{background-color:var(--ck-table-selected-cell-background);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.ck.ck-editor__editable .table table td.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table td.ck-editor__editable_selected:focus,.ck.ck-editor__editable .table table th.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:focus{background-color:transparent}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget{outline:unset}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle{display:none}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableselection.css"],names:[],mappings:"AAKA,MACC,wDACD,CAGC,0IAKC,gBAAiB,CAFjB,uBAAwB,CACxB,aAAc,CAFd,iBAiCD,CA3BC,sJAGC,yDAA0D,CAK1D,QAAS,CAPT,UAAW,CAKX,MAAO,CAJP,mBAAoB,CAEpB,iBAAkB,CAGlB,OAAQ,CAFR,KAID,CAEA,wTAEC,4BACD,CAMA,gKACC,aAKD,CAHC,0NACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},4499:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-button,a.ck.ck-button{align-items:center;display:inline-flex;justify-content:left;position:relative;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{display:none}.ck.ck-button.ck-button_with-text .ck-button__label,a.ck.ck-button.ck-button_with-text .ck-button__label{display:inline-block}.ck.ck-button:not(.ck-button_with-text),a.ck.ck-button:not(.ck-button_with-text){justify-content:center}.ck.ck-button,a.ck.ck-button{background:var(--ck-color-button-default-background)}.ck.ck-button:not(.ck-disabled):hover,a.ck.ck-button:not(.ck-disabled):hover{background:var(--ck-color-button-default-hover-background)}.ck.ck-button:not(.ck-disabled):active,a.ck.ck-button:not(.ck-disabled):active{background:var(--ck-color-button-default-active-background)}.ck.ck-button.ck-disabled,a.ck.ck-button.ck-disabled{background:var(--ck-color-button-default-disabled-background)}.ck.ck-button,a.ck.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-button,.ck-rounded-corners a.ck.ck-button,.ck.ck-button.ck-rounded-corners,a.ck.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-button,a.ck.ck-button{-webkit-appearance:none;border:1px solid transparent;cursor:default;font-size:inherit;line-height:1;min-height:var(--ck-ui-component-min-height);min-width:var(--ck-ui-component-min-height);padding:var(--ck-spacing-tiny);text-align:center;transition:box-shadow .2s ease-in-out,border .2s ease-in-out;vertical-align:middle;white-space:nowrap}.ck.ck-button:active,.ck.ck-button:focus,a.ck.ck-button:active,a.ck.ck-button:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-button .ck-button__icon use,.ck.ck-button .ck-button__icon use *,a.ck.ck-button .ck-button__icon use,a.ck.ck-button .ck-button__icon use *{color:inherit}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{color:inherit;cursor:inherit;font-size:inherit;font-weight:inherit;vertical-align:middle}[dir=ltr] .ck.ck-button .ck-button__label,[dir=ltr] a.ck.ck-button .ck-button__label{text-align:left}[dir=rtl] .ck.ck-button .ck-button__label,[dir=rtl] a.ck.ck-button .ck-button__label{text-align:right}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{color:inherit}[dir=ltr] .ck.ck-button .ck-button__keystroke,[dir=ltr] a.ck.ck-button .ck-button__keystroke{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-button .ck-button__keystroke,[dir=rtl] a.ck.ck-button .ck-button__keystroke{margin-right:var(--ck-spacing-large)}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{font-weight:700;opacity:.7}.ck.ck-button.ck-disabled:active,.ck.ck-button.ck-disabled:focus,a.ck.ck-button.ck-disabled:active,a.ck.ck-button.ck-disabled:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-button.ck-disabled .ck-button__icon,.ck.ck-button.ck-disabled .ck-button__label,a.ck.ck-button.ck-disabled .ck-button__icon,a.ck.ck-button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-disabled .ck-button__keystroke,a.ck.ck-button.ck-disabled .ck-button__keystroke{opacity:.3}.ck.ck-button.ck-button_with-text,a.ck.ck-button.ck-button_with-text{padding:var(--ck-spacing-tiny) var(--ck-spacing-standard)}[dir=ltr] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=ltr] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:calc(var(--ck-spacing-small)*-1);margin-right:var(--ck-spacing-small)}[dir=rtl] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=rtl] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:var(--ck-spacing-small);margin-right:calc(var(--ck-spacing-small)*-1)}.ck.ck-button.ck-button_with-keystroke .ck-button__label,a.ck.ck-button.ck-button_with-keystroke .ck-button__label{flex-grow:1}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{background:var(--ck-color-button-on-background)}.ck.ck-button.ck-on:not(.ck-disabled):hover,a.ck.ck-button.ck-on:not(.ck-disabled):hover{background:var(--ck-color-button-on-hover-background)}.ck.ck-button.ck-on:not(.ck-disabled):active,a.ck.ck-button.ck-on:not(.ck-disabled):active{background:var(--ck-color-button-on-active-background)}.ck.ck-button.ck-on.ck-disabled,a.ck.ck-button.ck-on.ck-disabled{background:var(--ck-color-button-on-disabled-background)}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{color:var(--ck-color-button-on-color)}.ck.ck-button.ck-button-save,a.ck.ck-button.ck-button-save{color:var(--ck-color-button-save)}.ck.ck-button.ck-button-cancel,a.ck.ck-button.ck-button-cancel{color:var(--ck-color-button-cancel)}.ck.ck-button-action,a.ck.ck-button-action{background:var(--ck-color-button-action-background)}.ck.ck-button-action:not(.ck-disabled):hover,a.ck.ck-button-action:not(.ck-disabled):hover{background:var(--ck-color-button-action-hover-background)}.ck.ck-button-action:not(.ck-disabled):active,a.ck.ck-button-action:not(.ck-disabled):active{background:var(--ck-color-button-action-active-background)}.ck.ck-button-action.ck-disabled,a.ck.ck-button-action.ck-disabled{background:var(--ck-color-button-action-disabled-background)}.ck.ck-button-action,a.ck.ck-button-action{color:var(--ck-color-button-action-text)}.ck.ck-button-bold,a.ck.ck-button-bold{font-weight:700}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/button.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/button.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/mixins/_button.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AAOA,6BAMC,kBAAmB,CADnB,mBAAoB,CAEpB,oBAAqB,CAHrB,iBAAkB,CCFlB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBDkBD,CAdC,iEACC,YACD,CAGC,yGACC,oBACD,CAID,iFACC,sBACD,CEjBD,6BCAC,oDD4ID,CCzIE,6EACC,0DACD,CAEA,+EACC,2DACD,CAID,qDACC,6DACD,CDfD,6BEDC,eF6ID,CA5IA,wIEGE,qCFyIF,CA5IA,6BA6BC,uBAAwB,CANxB,4BAA6B,CAjB7B,cAAe,CAcf,iBAAkB,CAHlB,aAAc,CAJd,4CAA6C,CAD7C,2CAA4C,CAJ5C,8BAA+B,CAC/B,iBAAkB,CAiBlB,4DAA8D,CAnB9D,qBAAsB,CAFtB,kBAuID,CA7GC,oFGhCA,2BAA2B,CCF3B,2CAA8B,CDC9B,YHqCA,CAIC,kJAEC,aACD,CAGD,iEAIC,aAAc,CACd,cAAe,CAHf,iBAAkB,CAClB,mBAAoB,CAMpB,qBASD,CAlBA,qFAYE,eAMF,CAlBA,qFAgBE,gBAEF,CAEA,yEACC,aAYD,CAbA,6FAIE,mCASF,CAbA,6FAQE,oCAKF,CAbA,yEAWC,eAAiB,CACjB,UACD,CAIC,oIIrFD,oDJyFC,CAOA,gLKhGD,kCLkGC,CAEA,iGACC,UACD,CAGD,qEACC,yDAcD,CAXC,2HAEE,4CAA+C,CAC/C,oCAOF,CAVA,2HAQE,mCAAoC,CADpC,6CAGF,CAKA,mHACC,WACD,CAID,yCC/HA,+CDmIA,CChIC,yFACC,qDACD,CAEA,2FACC,sDACD,CAID,iEACC,wDACD,CDgHA,yCAGC,qCACD,CAEA,2DACC,iCACD,CAEA,+DACC,mCACD,CAID,2CC/IC,mDDoJD,CCjJE,2FACC,yDACD,CAEA,6FACC,0DACD,CAID,mEACC,4DACD,CDgID,2CAIC,wCACD,CAEA,uCAEC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-unselectable;\n\n\tposition: relative;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: left;\n\n\t& .ck-button__label {\n\t\tdisplay: none;\n\t}\n\n\t&.ck-button_with-text {\n\t\t& .ck-button__label {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n\n\t/* Center the icon horizontally in a button without text. */\n\t&:not(.ck-button_with-text) {\n\t\tjustify-content: center;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../mixins/_button.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-button-colors --ck-color-button-default;\n\t@mixin ck-rounded-corners;\n\n\twhite-space: nowrap;\n\tcursor: default;\n\tvertical-align: middle;\n\tpadding: var(--ck-spacing-tiny);\n\ttext-align: center;\n\n\t/* A very important piece of styling. Go to variable declaration to learn more. */\n\tmin-width: var(--ck-ui-component-min-height);\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Normalize the height of the line. Removing this will break consistent height\n\tamong text and text-less buttons (with icons). */\n\tline-height: 1;\n\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t/* Avoid flickering when the foucs border shows up. */\n\tborder: 1px solid transparent;\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .2s ease-in-out, border .2s ease-in-out;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/189 */\n\t-webkit-appearance: none;\n\n\t&:active,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t/* Allow icon coloring using the text "color" property. */\n\t& .ck-button__icon {\n\t\t& use,\n\t\t& use * {\n\t\t\tcolor: inherit;\n\t\t}\n\t}\n\n\t& .ck-button__label {\n\t\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\t\tfont-size: inherit;\n\t\tfont-weight: inherit;\n\t\tcolor: inherit;\n\t\tcursor: inherit;\n\n\t\t/* Must be consistent with .ck-icon\'s vertical align. Otherwise, buttons with and\n\t\twithout labels (but with icons) have different sizes in Chrome */\n\t\tvertical-align: middle;\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& .ck-button__keystroke {\n\t\tcolor: inherit;\n\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-right: var(--ck-spacing-large);\n\t\t}\n\n\t\tfont-weight: bold;\n\t\topacity: .7;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t&.ck-disabled {\n\t\t&:active,\n\t\t&:focus {\n\t\t\t/* The disabled button should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\n\t\t& .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t& .ck-button__keystroke {\n\t\t\topacity: .3;\n\t\t}\n\t}\n\n\t&.ck-button_with-text {\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-standard);\n\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-button_with-keystroke {\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__label {\n\t\t\tflex-grow: 1;\n\t\t}\n\t}\n\n\t/* A style of the button which is currently on, e.g. its feature is active. */\n\t&.ck-on {\n\t\t@mixin ck-button-colors --ck-color-button-on;\n\n\t\tcolor: var(--ck-color-button-on-color);\n\t}\n\n\t&.ck-button-save {\n\t\tcolor: var(--ck-color-button-save);\n\t}\n\n\t&.ck-button-cancel {\n\t\tcolor: var(--ck-color-button-cancel);\n\t}\n}\n\n/* A style of the button which handles the primary action. */\n.ck.ck-button-action,\na.ck.ck-button-action {\n\t@mixin ck-button-colors --ck-color-button-action;\n\n\tcolor: var(--ck-color-button-action-text);\n}\n\n.ck.ck-button-bold,\na.ck.ck-button-bold {\n\tfont-weight: bold;\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},9681:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{display:block}:root{--ck-switch-button-toggle-width:2.6153846154em;--ck-switch-button-toggle-inner-size:calc(1.07692em + 1px);--ck-switch-button-translation:calc(var(--ck-switch-button-toggle-width) - var(--ck-switch-button-toggle-inner-size) - 2px);--ck-switch-button-inner-hover-shadow:0 0 0 5px var(--ck-color-switch-button-inner-shadow)}.ck.ck-button.ck-switchbutton,.ck.ck-button.ck-switchbutton.ck-on:active,.ck.ck-button.ck-switchbutton.ck-on:focus,.ck.ck-button.ck-switchbutton.ck-on:hover,.ck.ck-button.ck-switchbutton:active,.ck.ck-button.ck-switchbutton:focus,.ck.ck-button.ck-switchbutton:hover{background:transparent;color:inherit}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__label{margin-right:calc(var(--ck-spacing-large)*2)}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__label{margin-left:calc(var(--ck-spacing-large)*2)}.ck.ck-button.ck-switchbutton .ck-button__toggle{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle.ck-rounded-corners{border-radius:var(--ck-border-radius)}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-left:auto}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-right:auto}.ck.ck-button.ck-switchbutton .ck-button__toggle{background:var(--ck-color-switch-button-off-background);border:1px solid transparent;transition:background .4s ease,box-shadow .2s ease-in-out,outline .2s ease-in-out;width:var(--ck-switch-button-toggle-width)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:calc(var(--ck-border-radius)*.5)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{background:var(--ck-color-switch-button-inner-background);height:var(--ck-switch-button-toggle-inner-size);transition:all .3s ease;width:var(--ck-switch-button-toggle-inner-size)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover{background:var(--ck-color-switch-button-off-hover-background)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover .ck-button__toggle__inner{box-shadow:var(--ck-switch-button-inner-hover-shadow)}.ck.ck-button.ck-switchbutton.ck-disabled .ck-button__toggle{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-switchbutton:focus{border-color:transparent;box-shadow:none;outline:none}.ck.ck-button.ck-switchbutton:focus .ck-button__toggle{box-shadow:0 0 0 1px var(--ck-color-base-background),0 0 0 5px var(--ck-color-focus-outer-shadow);outline:var(--ck-focus-ring);outline-offset:1px}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle{background:var(--ck-color-switch-button-on-background)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle:hover{background:var(--ck-color-switch-button-on-hover-background)}[dir=ltr] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(var( --ck-switch-button-translation ))}[dir=rtl] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(calc(var( --ck-switch-button-translation )*-1))}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/switchbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/switchbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AASE,4HACC,aACD,CCCF,MAEC,8CAA+C,CAE/C,0DAAgE,CAChE,2HAIC,CACD,0FACD,CAOC,0QAEC,sBAAuB,CADvB,aAED,CAEA,0DAGE,4CAOF,CAVA,0DAQE,2CAEF,CAEA,iDCpCA,eD4EA,CAxCA,yIChCC,qCDwED,CAxCA,2DAKE,gBAmCF,CAxCA,2DAUE,iBA8BF,CAxCA,iDAkBC,uDAAwD,CAFxD,4BAA6B,CAD7B,iFAAsF,CAEtF,0CAuBD,CApBC,2ECxDD,eDmEC,CAXA,6LCpDA,qCAAsC,CDsDpC,8CASF,CAXA,2EAOC,yDAA0D,CAD1D,gDAAiD,CAIjD,uBAA0B,CAL1B,+CAMD,CAEA,uDACC,6DAKD,CAHC,iFACC,qDACD,CAIF,6DEhFA,kCFkFA,CAGA,oCACC,wBAAyB,CAEzB,eAAgB,CADhB,YAQD,CALC,uDACC,iGAAmG,CAEnG,4BAA6B,CAD7B,kBAED,CAKA,uDACC,sDAkBD,CAhBC,6DACC,4DACD,CAEA,2FAKE,2DAMF,CAXA,2FASE,oEAEF",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n/* Note: To avoid rendering issues (aliasing) but to preserve the responsive nature\nof the component, floating–point numbers have been used which, for the default font size\n(see: --ck-font-size-base), will generate simple integers. */\n:root {\n\t/* 34px at 13px font-size */\n\t--ck-switch-button-toggle-width: 2.6153846154em;\n\t/* 14px at 13px font-size */\n\t--ck-switch-button-toggle-inner-size: calc(1.0769230769em + 1px);\n\t--ck-switch-button-translation: calc(\n\t\tvar(--ck-switch-button-toggle-width) -\n\t\tvar(--ck-switch-button-toggle-inner-size) -\n\t\t2px /* Border */\n\t);\n\t--ck-switch-button-inner-hover-shadow: 0 0 0 5px var(--ck-color-switch-button-inner-shadow);\n}\n\n.ck.ck-button.ck-switchbutton {\n\t/* Unlike a regular button, the switch button text color and background should never change.\n\t * Changing toggle switch (background, outline) is enough to carry the information about the\n\t * state of the entire component (https://github.com/ckeditor/ckeditor5/issues/12519)\n\t */\n\t&, &:hover, &:focus, &:active, &.ck-on:hover, &.ck-on:focus, &.ck-on:active {\n\t\tcolor: inherit;\n\t\tbackground: transparent;\n\t}\n\n\t& .ck-button__label {\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-right: calc(2 * var(--ck-spacing-large));\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-left: calc(2 * var(--ck-spacing-large));\n\t\t}\n\t}\n\n\t& .ck-button__toggle {\n\t\t@mixin ck-rounded-corners;\n\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Make sure the toggle is always to the right as far as possible. */\n\t\t\tmargin-left: auto;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Make sure the toggle is always to the left as far as possible. */\n\t\t\tmargin-right: auto;\n\t\t}\n\n\t\t/* Apply some smooth transition to the box-shadow and border. */\n\t\t/* Gently animate the background color of the toggle switch */\n\t\ttransition: background 400ms ease, box-shadow .2s ease-in-out, outline .2s ease-in-out;\n\t\tborder: 1px solid transparent;\n\t\twidth: var(--ck-switch-button-toggle-width);\n\t\tbackground: var(--ck-color-switch-button-off-background);\n\n\t\t& .ck-button__toggle__inner {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-radius: calc(.5 * var(--ck-border-radius));\n\t\t\t}\n\n\t\t\twidth: var(--ck-switch-button-toggle-inner-size);\n\t\t\theight: var(--ck-switch-button-toggle-inner-size);\n\t\t\tbackground: var(--ck-color-switch-button-inner-background);\n\n\t\t\t/* Gently animate the inner part of the toggle switch */\n\t\t\ttransition: all 300ms ease;\n\t\t}\n\n\t\t&:hover {\n\t\t\tbackground: var(--ck-color-switch-button-off-hover-background);\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\tbox-shadow: var(--ck-switch-button-inner-hover-shadow);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-button__toggle {\n\t\t@mixin ck-disabled;\n\t}\n\n\t/* Overriding default .ck-button:focus styles + an outline around the toogle */\n\t&:focus {\n\t\tborder-color: transparent;\n\t\toutline: none;\n\t\tbox-shadow: none;\n\n\t\t& .ck-button__toggle {\n\t\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-background), 0 0 0 5px var(--ck-color-focus-outer-shadow);\n\t\t\toutline-offset: 1px;\n\t\t\toutline: var(--ck-focus-ring);\n\t\t}\n\t}\n\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-on {\n\t\t& .ck-button__toggle {\n\t\t\tbackground: var(--ck-color-switch-button-on-background);\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--ck-color-switch-button-on-hover-background);\n\t\t\t}\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\t/*\n\t\t\t\t* Move the toggle switch to the right. It will be animated.\n\t\t\t\t*/\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\ttransform: translateX( var( --ck-switch-button-translation ) );\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\ttransform: translateX( calc( -1 * var( --ck-switch-button-translation ) ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},4923:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-color-grid{display:grid}:root{--ck-color-grid-tile-size:24px;--ck-color-color-grid-check-icon:#166fd4}.ck.ck-color-grid{grid-gap:5px;padding:8px}.ck.ck-color-grid__tile{border:0;height:var(--ck-color-grid-tile-size);min-height:var(--ck-color-grid-tile-size);min-width:var(--ck-color-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-color-grid-tile-size)}.ck.ck-color-grid__tile.ck-disabled{cursor:unset;transition:unset}.ck.ck-color-grid__tile.ck-color-table__color-tile_bordered{box-shadow:0 0 0 1px var(--ck-color-base-border)}.ck.ck-color-grid__tile .ck.ck-icon{color:var(--ck-color-color-grid-check-icon);display:none}.ck.ck-color-grid__tile.ck-on{box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-base-text)}.ck.ck-color-grid__tile.ck-on .ck.ck-icon{display:block}.ck.ck-color-grid__tile.ck-on,.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){border:0}.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-color-grid__label{padding:0 var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/colorgrid/colorgrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorgrid/colorgrid.css"],names:[],mappings:"AAKA,kBACC,YACD,CCAA,MACC,8BAA+B,CAK/B,wCACD,CAEA,kBACC,YAAa,CACb,WACD,CAEA,wBAOC,QAAS,CALT,qCAAsC,CAEtC,yCAA0C,CAD1C,wCAAyC,CAEzC,SAAU,CACV,8BAA+B,CAL/B,oCAyCD,CAjCC,oCACC,YAAa,CACb,gBACD,CAEA,4DACC,gDACD,CAEA,oCAEC,2CAA4C,CAD5C,YAED,CAEA,8BACC,8FAKD,CAHC,0CACC,aACD,CAGD,8HAIC,QACD,CAEA,gGAEC,iGACD,CAGD,yBACC,oCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-color-grid-tile-size: 24px;\n\n\t/* Not using global colors here because these may change but some colors in a pallette\n\t * require special treatment. For instance, this ensures no matter what the UI text color is,\n\t * the check icon will look good on the black color tile. */\n\t--ck-color-color-grid-check-icon: hsl(212, 81%, 46%);\n}\n\n.ck.ck-color-grid {\n\tgrid-gap: 5px;\n\tpadding: 8px;\n}\n\n.ck.ck-color-grid__tile {\n\twidth: var(--ck-color-grid-tile-size);\n\theight: var(--ck-color-grid-tile-size);\n\tmin-width: var(--ck-color-grid-tile-size);\n\tmin-height: var(--ck-color-grid-tile-size);\n\tpadding: 0;\n\ttransition: .2s ease box-shadow;\n\tborder: 0;\n\n\t&.ck-disabled {\n\t\tcursor: unset;\n\t\ttransition: unset;\n\t}\n\n\t&.ck-color-table__color-tile_bordered {\n\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-border);\n\t}\n\n\t& .ck.ck-icon {\n\t\tdisplay: none;\n\t\tcolor: var(--ck-color-color-grid-check-icon);\n\t}\n\n\t&.ck-on {\n\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-base-text);\n\n\t\t& .ck.ck-icon {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n\n\t&.ck-on,\n\t&:focus:not( .ck-disabled ),\n\t&:hover:not( .ck-disabled ) {\n\t\t/* Disable the default .ck-button\'s border ring. */\n\t\tborder: 0;\n\t}\n\n\t&:focus:not( .ck-disabled ),\n\t&:hover:not( .ck-disabled ) {\n\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t}\n}\n\n.ck.ck-color-grid__label {\n\tpadding: 0 var(--ck-spacing-standard);\n}\n'],sourceRoot:""}]);const c=a},3488:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-dropdown-max-width:75vw}.ck.ck-dropdown{display:inline-block;position:relative}.ck.ck-dropdown .ck-dropdown__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-dropdown .ck-button.ck-dropdown__button{width:100%}.ck.ck-dropdown .ck-dropdown__panel{display:none;max-width:var(--ck-dropdown-max-width);position:absolute;z-index:var(--ck-z-modal)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel-visible{display:inline-block}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw{bottom:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{bottom:auto;top:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se{left:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{right:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s{left:50%;transform:translateX(-50%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw{left:75%;transform:translateX(-75%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme{left:25%;transform:translateX(-25%)}.ck.ck-toolbar .ck-dropdown__panel{z-index:calc(var(--ck-z-modal) + 1)}:root{--ck-dropdown-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-dropdown{font-size:inherit}.ck.ck-dropdown .ck-dropdown__arrow{width:var(--ck-dropdown-arrow-size)}[dir=ltr] .ck.ck-dropdown .ck-dropdown__arrow{margin-left:var(--ck-spacing-standard);right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-dropdown .ck-dropdown__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}.ck.ck-dropdown.ck-disabled .ck-dropdown__arrow{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir=rtl] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{overflow:hidden;text-overflow:ellipsis;width:7em}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on{border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-dropdown__button_label-width_auto .ck-button__label{width:auto}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active{box-shadow:none}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active:focus,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active:focus{box-shadow:var(--ck-focus-outer-shadow),0 0}.ck.ck-dropdown__panel{border-radius:0}.ck-rounded-corners .ck.ck-dropdown__panel,.ck.ck-dropdown__panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-dropdown__panel{background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);bottom:0;box-shadow:var(--ck-drop-shadow),0 0;min-width:100%}.ck.ck-dropdown__panel.ck-dropdown__panel_se{border-top-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_sw{border-top-right-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_ne{border-bottom-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_nw{border-bottom-right-radius:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/dropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/dropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,MACC,4BACD,CAEA,gBACC,oBAAqB,CACrB,iBA2ED,CAzEC,oCACC,mBAAoB,CACpB,2BACD,CAGA,+CACC,UACD,CAEA,oCACC,YAAa,CAEb,sCAAuC,CAEvC,iBAAkB,CAHlB,yBA4DD,CAvDC,+DACC,oBACD,CAEA,mSAKC,WACD,CAEA,mSAUC,WAAY,CADZ,QAED,CAEA,oHAEC,MACD,CAEA,oHAEC,OACD,CAEA,kHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAQF,mCACC,mCACD,CCpFA,MACC,sDACD,CAEA,gBAEC,iBA2ED,CAzEC,oCACC,mCACD,CAGC,8CAIC,sCAAuC,CAHvC,gCAID,CAIA,8CACC,+BAAgC,CAGhC,oCACD,CAGD,gDC/BA,kCDiCA,CAIE,mFAEC,oCACD,CAIA,mFAEC,qCACD,CAID,iEAEC,eAAgB,CAChB,sBAAuB,CAFvB,SAGD,CAGA,6EC1DD,kCD4DC,CAGA,qDACC,2BAA4B,CAC5B,4BACD,CAEA,sGACC,UACD,CAGA,yHAEC,eAKD,CAHC,qIE7EF,2CF+EE,CAKH,uBGlFC,eH8GD,CA5BA,qFG9EE,qCH0GF,CA5BA,uBAIC,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CE1FT,oCAA8B,CF6F9B,cAmBD,CAfC,6CACC,wBACD,CAEA,6CACC,yBACD,CAEA,6CACC,2BACD,CAEA,6CACC,4BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-dropdown-max-width: 75vw;\n}\n\n.ck.ck-dropdown {\n\tdisplay: inline-block;\n\tposition: relative;\n\n\t& .ck-dropdown__arrow {\n\t\tpointer-events: none;\n\t\tz-index: var(--ck-z-default);\n\t}\n\n\t/* Dropdown button should span horizontally, e.g. in vertical toolbars */\n\t& .ck-button.ck-dropdown__button {\n\t\twidth: 100%;\n\t}\n\n\t& .ck-dropdown__panel {\n\t\tdisplay: none;\n\t\tz-index: var(--ck-z-modal);\n\t\tmax-width: var(--ck-dropdown-max-width);\n\n\t\tposition: absolute;\n\n\t\t&.ck-dropdown__panel-visible {\n\t\t\tdisplay: inline-block;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_n,\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_nme {\n\t\t\tbottom: 100%;\n\t\t}\n\n\t\t&.ck-dropdown__panel_se,\n\t\t&.ck-dropdown__panel_sw,\n\t\t&.ck-dropdown__panel_smw,\n\t\t&.ck-dropdown__panel_sme,\n\t\t&.ck-dropdown__panel_s {\n\t\t\t/*\n\t\t\t * Using transform: translate3d( 0, 100%, 0 ) causes blurry dropdown on Chrome 67-78+ on non-retina displays.\n\t\t\t * See https://github.com/ckeditor/ckeditor5/issues/1053.\n\t\t\t */\n\t\t\ttop: 100%;\n\t\t\tbottom: auto;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_se {\n\t\t\tleft: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_sw {\n\t\t\tright: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_s,\n\t\t&.ck-dropdown__panel_n {\n\t\t\t/* Positioning panels relative to the center of the button */\n\t\t\tleft: 50%;\n\t\t\ttransform: translateX(-50%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_smw {\n\t\t\t/* Positioning panels relative to the middle-west of the button */\n\t\t\tleft: 75%;\n\t\t\ttransform: translateX(-75%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nme,\n\t\t&.ck-dropdown__panel_sme {\n\t\t\t/* Positioning panels relative to the middle-east of the button */\n\t\t\tleft: 25%;\n\t\t\ttransform: translateX(-25%);\n\t\t}\n\t}\n}\n\n/*\n * Toolbar dropdown panels should be always above the UI (eg. other dropdown panels) from the editor's content.\n * See https://github.com/ckeditor/ckeditor5/issues/7874\n */\n.ck.ck-toolbar .ck-dropdown__panel {\n\tz-index: calc( var(--ck-z-modal) + 1 );\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-dropdown-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-dropdown {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t& .ck-dropdown__arrow {\n\t\twidth: var(--ck-dropdown-arrow-size);\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& .ck-dropdown__arrow {\n\t\t\tright: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& .ck-dropdown__arrow {\n\t\t\tleft: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-dropdown__arrow {\n\t\t@mixin ck-disabled;\n\t}\n\n\t& .ck-button.ck-dropdown__button {\n\t\t@mixin ck-dir ltr {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t/* #23 */\n\t\t& .ck-button__label {\n\t\t\twidth: 7em;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t\t&.ck-disabled .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/816 */\n\t\t&.ck-on {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t&.ck-dropdown__button_label-width_auto .ck-button__label {\n\t\t\twidth: auto;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/8699 */\n\t\t&.ck-off:active,\n\t\t&.ck-on:active {\n\t\t\tbox-shadow: none;\n\t\t\t\n\t\t\t&:focus {\n\t\t\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-dropdown__panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tbackground: var(--ck-color-dropdown-panel-background);\n\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\tbottom: 0;\n\n\t/* Make sure the panel is at least as wide as the drop-down\'s button. */\n\tmin-width: 100%;\n\n\t/* Disabled corner border radius to be consistent with the .dropdown__button\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t&.ck-dropdown__panel_se {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_sw {\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_ne {\n\t\tborder-bottom-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_nw {\n\t\tborder-bottom-right-radius: 0;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},6875:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-dropdown .ck-dropdown__panel .ck-list{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list,.ck.ck-dropdown .ck-dropdown__panel .ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0}.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button,.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:0}.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button,.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/listdropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,6CCIC,eDqBD,CAzBA,iICQE,qCAAsC,CDJtC,wBAqBF,CAfE,mFCND,eDYC,CANA,6MCFA,qCAAsC,CDKpC,2BAA4B,CAC5B,4BAA6B,CAF7B,wBAIF,CAEA,kFCdD,eDmBC,CALA,2MCVA,qCAAsC,CDYpC,wBAAyB,CACzB,yBAEF",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},66:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/splitbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/splitbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,iBAKD,CAHC,iDACC,qCACD,CCJD,MACC,gDAAyD,CACzD,4CACD,CAMC,oIAKE,gCAAiC,CADjC,6BASF,CAbA,oIAWE,+BAAgC,CADhC,4BAGF,CAEA,0CAGC,eAiBD,CApBA,oDAQE,+BAAgC,CADhC,4BAaF,CApBA,oDAcE,gCAAiC,CADjC,6BAOF,CAHC,8CACC,mCACD,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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},5075:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-toolbar-dropdown-max-width:60vw}.ck.ck-toolbar-dropdown>.ck-dropdown__panel{max-width:var(--ck-toolbar-dropdown-max-width);width:max-content}.ck.ck-toolbar-dropdown>.ck-dropdown__panel .ck-button:focus{z-index:calc(var(--ck-z-default) + 1)}.ck.ck-toolbar-dropdown .ck-toolbar{border:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/toolbardropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/toolbardropdown.css"],names:[],mappings:"AAKA,MACC,oCACD,CAEA,4CAGC,8CAA+C,CAD/C,iBAQD,CAJE,6DACC,qCACD,CCZF,oCACC,QACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},4547:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-editable-blur-selection:#d9d9d9}.ck.ck-editor__editable:not(.ck-editor__nested-editable){border-radius:0}.ck-rounded-corners .ck.ck-editor__editable:not(.ck-editor__nested-editable),.ck.ck-editor__editable.ck-rounded-corners:not(.ck-editor__nested-editable){border-radius:var(--ck-border-radius)}.ck.ck-editor__editable.ck-focused:not(.ck-editor__nested-editable){border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}.ck.ck-editor__editable_inline{border:1px solid transparent;overflow:auto;padding:0 var(--ck-spacing-standard)}.ck.ck-editor__editable_inline[dir=ltr]{text-align:left}.ck.ck-editor__editable_inline[dir=rtl]{text-align:right}.ck.ck-editor__editable_inline>:first-child{margin-top:var(--ck-spacing-large)}.ck.ck-editor__editable_inline>:last-child{margin-bottom:var(--ck-spacing-large)}.ck.ck-editor__editable_inline.ck-blurred ::selection{background:var(--ck-color-editable-blur-selection)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_n]:after{border-bottom-color:var(--ck-color-base-foreground)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_s]:after{border-top-color:var(--ck-color-base-foreground)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/editorui.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAWA,MACC,0CACD,CAEA,yDCJC,eDWD,CAPA,yJCAE,qCDOF,CAJC,oEEPA,2BAA2B,CCF3B,qCAA8B,CDC9B,YFWA,CAGD,+BAGC,4BAA6B,CAF7B,aAAc,CACd,oCA6BD,CA1BC,wCACC,eACD,CAEA,wCACC,gBACD,CAGA,4CACC,kCACD,CAGA,2CAKC,qCACD,CAGA,sDACC,kDACD,CAKA,gEACC,mDACD,CAIA,gEACC,gDACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_focus.css";\n@import "../../mixins/_button.css";\n\n:root {\n\t--ck-color-editable-blur-selection: hsl(0, 0%, 85%);\n}\n\n.ck.ck-editor__editable:not(.ck-editor__nested-editable) {\n\t@mixin ck-rounded-corners;\n\n\t&.ck-focused {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t}\n}\n\n.ck.ck-editor__editable_inline {\n\toverflow: auto;\n\tpadding: 0 var(--ck-spacing-standard);\n\tborder: 1px solid transparent;\n\n\t&[dir="ltr"] {\n\t\ttext-align: left;\n\t}\n\n\t&[dir="rtl"] {\n\t\ttext-align: right;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/116 */\n\t& > *:first-child {\n\t\tmargin-top: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/847 */\n\t& > *:last-child {\n\t\t/*\n\t\t * This value should match with the default margins of the block elements (like .media or .image)\n\t\t * to avoid a content jumping when the fake selection container shows up (See https://github.com/ckeditor/ckeditor5/issues/9825).\n\t\t */\n\t\tmargin-bottom: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/6517 */\n\t&.ck-blurred ::selection {\n\t\tbackground: var(--ck-color-editable-blur-selection);\n\t}\n}\n\n/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/111 */\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_n"] {\n\t&::after {\n\t\tborder-bottom-color: var(--ck-color-base-foreground);\n\t}\n}\n\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_s"] {\n\t&::after {\n\t\tborder-top-color: var(--ck-color-base-foreground);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},5523:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-form__header{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}:root{--ck-form-header-height:38px}.ck.ck-form__header{border-bottom:1px solid var(--ck-color-base-border);height:var(--ck-form-header-height);line-height:var(--ck-form-header-height);padding:var(--ck-spacing-small) var(--ck-spacing-large)}.ck.ck-form__header .ck-form__header__label{font-weight:700}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/formheader/formheader.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/formheader/formheader.css"],names:[],mappings:"AAKA,oBAIC,kBAAmB,CAHnB,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CAEjB,6BACD,CCNA,MACC,4BACD,CAEA,oBAIC,mDAAoD,CAFpD,mCAAoC,CACpC,wCAAyC,CAFzC,uDAQD,CAHC,4CACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form__header {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\talign-items: center;\n\tjustify-content: space-between;\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-form-header-height: 38px;\n}\n\n.ck.ck-form__header {\n\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\n\theight: var(--ck-form-header-height);\n\tline-height: var(--ck-form-header-height);\n\tborder-bottom: 1px solid var(--ck-color-base-border);\n\n\t& .ck-form__header__label {\n\t\tfont-weight: bold;\n\t}\n}\n"],sourceRoot:""}]);const c=a},1174:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-icon{vertical-align:middle}:root{--ck-icon-size:calc(var(--ck-line-height-base)*var(--ck-font-size-normal))}.ck.ck-icon{font-size:.8333350694em;height:var(--ck-icon-size);width:var(--ck-icon-size);will-change:transform}.ck.ck-icon,.ck.ck-icon *{cursor:inherit}.ck.ck-icon.ck-icon_inherit-color,.ck.ck-icon.ck-icon_inherit-color *{color:inherit}.ck.ck-icon.ck-icon_inherit-color :not([fill]){fill:currentColor}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/icon/icon.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/icon/icon.css"],names:[],mappings:"AAKA,YACC,qBACD,CCFA,MACC,0EACD,CAEA,YAKC,uBAAwB,CAHxB,0BAA2B,CAD3B,yBAA0B,CAU1B,qBAoBD,CAlBC,0BALA,cAQA,CAMC,sEACC,aAMD,CAJC,+CAEC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},6985:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-input-width:18em;--ck-input-text-width:var(--ck-input-width)}.ck.ck-input{border-radius:0}.ck-rounded-corners .ck.ck-input,.ck.ck-input.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input{background:var(--ck-color-input-background);border:1px solid var(--ck-color-input-border);min-height:var(--ck-ui-component-min-height);min-width:var(--ck-input-width);padding:var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);transition:box-shadow .1s ease-in-out,border .1s ease-in-out}.ck.ck-input:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-input[readonly]{background:var(--ck-color-input-disabled-background);border:1px solid var(--ck-color-input-disabled-border);color:var(--ck-color-input-disabled-text)}.ck.ck-input[readonly]:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-input.ck-error{animation:ck-input-shake .3s ease both;border-color:var(--ck-color-input-error-border)}.ck.ck-input.ck-error:focus{box-shadow:var(--ck-focus-error-outer-shadow),0 0}@keyframes ck-input-shake{20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-1px)}80%{transform:translateX(1px)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/input/input.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AASA,MACC,qBAAsB,CAGtB,2CACD,CAEA,aCLC,eD2CD,CAtCA,iECDE,qCDuCF,CAtCA,aAGC,2CAA4C,CAC5C,6CAA8C,CAK9C,4CAA6C,CAH7C,+BAAgC,CADhC,6DAA8D,CAO9D,4DA0BD,CAxBC,mBEnBA,2BAA2B,CCF3B,2CAA8B,CDC9B,YFuBA,CAEA,uBAEC,oDAAqD,CADrD,sDAAuD,CAEvD,yCAMD,CAJC,6BG/BD,oDHkCC,CAGD,sBAEC,sCAAuC,CADvC,+CAMD,CAHC,4BGzCD,iDH2CC,CAIF,0BACC,IACC,0BACD,CAEA,IACC,yBACD,CAEA,IACC,0BACD,CAEA,IACC,yBACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-input-width: 18em;\n\n\t/* Backward compatibility. */\n\t--ck-input-text-width: var(--ck-input-width);\n}\n\n.ck.ck-input {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-input-background);\n\tborder: 1px solid var(--ck-color-input-border);\n\tpadding: var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);\n\tmin-width: var(--ck-input-width);\n\n\t/* This is important to stay of the same height as surrounding buttons */\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .1s ease-in-out, border .1s ease-in-out;\n\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t&[readonly] {\n\t\tborder: 1px solid var(--ck-color-input-disabled-border);\n\t\tbackground: var(--ck-color-input-disabled-background);\n\t\tcolor: var(--ck-color-input-disabled-text);\n\n\t\t&:focus {\n\t\t\t/* The read-only input should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\tborder-color: var(--ck-color-input-error-border);\n\t\tanimation: ck-input-shake .3s ease both;\n\n\t\t&:focus {\n\t\t\t@mixin ck-box-shadow var(--ck-focus-error-outer-shadow);\n\t\t}\n\t}\n}\n\n@keyframes ck-input-shake {\n\t20% {\n\t\ttransform: translateX(-2px);\n\t}\n\n\t40% {\n\t\ttransform: translateX(2px);\n\t}\n\n\t60% {\n\t\ttransform: translateX(-1px);\n\t}\n\n\t80% {\n\t\ttransform: translateX(1px);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},2751:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-label{display:block}.ck.ck-voice-label{display:none}.ck.ck-label{font-weight:700}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/label/label.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/label/label.css"],names:[],mappings:"AAKA,aACC,aACD,CAEA,mBACC,YACD,CCNA,aACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},8111:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{display:flex;position:relative}.ck.ck-labeled-field-view .ck.ck-label{display:block;position:absolute}:root{--ck-labeled-field-view-transition:.1s cubic-bezier(0,0,0.24,0.95);--ck-labeled-field-empty-unfocused-max-width:100% - 2 * var(--ck-spacing-medium);--ck-labeled-field-label-default-position-x:var(--ck-spacing-medium);--ck-labeled-field-label-default-position-y:calc(var(--ck-font-size-base)*0.6);--ck-color-labeled-field-label-background:var(--ck-color-base-background)}.ck.ck-labeled-field-view{border-radius:0}.ck-rounded-corners .ck.ck-labeled-field-view,.ck.ck-labeled-field-view.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{width:100%}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{top:0}[dir=ltr] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{left:0}[dir=rtl] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{right:0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:var(--ck-color-labeled-field-label-background);font-weight:400;line-height:normal;max-width:100%;overflow:hidden;padding:0 calc(var(--ck-font-size-tiny)*.5);pointer-events:none;text-overflow:ellipsis;transform:translate(var(--ck-spacing-medium),-6px) scale(.75);transform-origin:0 0;transition:transform var(--ck-labeled-field-view-transition),padding var(--ck-labeled-field-view-transition),background var(--ck-labeled-field-view-transition)}.ck.ck-labeled-field-view.ck-error .ck-input:not([readonly])+.ck.ck-label,.ck.ck-labeled-field-view.ck-error>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view .ck-labeled-field-view__status{font-size:var(--ck-font-size-small);margin-top:var(--ck-spacing-small);white-space:normal}.ck.ck-labeled-field-view .ck-labeled-field-view__status.ck-labeled-field-view__status_error{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view.ck-disabled>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-input-disabled-text)}[dir=ltr] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=ltr] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(var(--ck-labeled-field-label-default-position-x),var(--ck-labeled-field-label-default-position-y)) scale(1)}[dir=rtl] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=rtl] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(calc(var(--ck-labeled-field-label-default-position-x)*-1),var(--ck-labeled-field-label-default-position-y)) scale(1)}.ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:transparent;max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width));padding:0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck.ck-button{background:transparent}.ck.ck-labeled-field-view.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck-button>.ck-button__label{opacity:0}.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown+.ck-label{max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard))}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/labeledfield/labeledfieldview.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/labeledfield/labeledfieldview.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAMC,mEACC,YAAa,CACb,iBACD,CAEA,uCACC,aAAc,CACd,iBACD,CCND,MACC,kEAAsE,CACtE,gFAAiF,CACjF,oEAAqE,CACrE,8EAAiF,CACjF,yEACD,CAEA,0BCLC,eD8GD,CAzGA,2FCDE,qCD0GF,CAtGC,mEACC,UAmCD,CAjCC,gFACC,KA+BD,CAhCA,0FAIE,MA4BF,CAhCA,0FAQE,OAwBF,CAhCA,gFAiBC,yDAA0D,CAG1D,eAAmB,CADnB,kBAAoB,CAOpB,cAAe,CAFf,eAAgB,CANhB,2CAA8C,CAP9C,mBAAoB,CAYpB,sBAAuB,CARvB,6DAA+D,CAH/D,oBAAqB,CAgBrB,+JAID,CAQA,mKACC,gCACD,CAGD,yDACC,mCAAoC,CACpC,kCAAmC,CAInC,kBAKD,CAHC,6FACC,gCACD,CAID,4OAEC,yCACD,CAIA,oUAGE,+HAYF,CAfA,oUAOE,wIAQF,CAfA,gTAaC,sBAAuB,CAFvB,iEAAkE,CAGlE,SACD,CAKA,8FACC,sBACD,CAGA,yIACC,SACD,CAGA,kMACC,8HACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-labeled-field-view-transition: .1s cubic-bezier(0, 0, 0.24, 0.95);\n\t--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-x: var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-y: calc(0.6 * var(--ck-font-size-base));\n\t--ck-color-labeled-field-label-background: var(--ck-color-base-background);\n}\n\n.ck.ck-labeled-field-view {\n\t@mixin ck-rounded-corners;\n\n\t& > .ck.ck-labeled-field-view__input-wrapper {\n\t\twidth: 100%;\n\n\t\t& > .ck.ck-label {\n\t\t\ttop: 0px;\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tleft: 0px;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tright: 0px;\n\t\t\t}\n\n\t\t\tpointer-events: none;\n\t\t\ttransform-origin: 0 0;\n\n\t\t\t/* By default, display the label scaled down above the field. */\n\t\t\ttransform: translate(var(--ck-spacing-medium), -6px) scale(.75);\n\n\t\t\tbackground: var(--ck-color-labeled-field-label-background);\n\t\t\tpadding: 0 calc(.5 * var(--ck-font-size-tiny));\n\t\t\tline-height: initial;\n\t\t\tfont-weight: normal;\n\n\t\t\t/* Prevent overflow when the label is longer than the input */\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\n\t\t\tmax-width: 100%;\n\n\t\t\ttransition:\n\t\t\t\ttransform var(--ck-labeled-field-view-transition),\n\t\t\t\tpadding var(--ck-labeled-field-view-transition),\n\t\t\t\tbackground var(--ck-labeled-field-view-transition);\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\t& > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\n\t\t& .ck-input:not([readonly]) + .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t& .ck-labeled-field-view__status {\n\t\tfont-size: var(--ck-font-size-small);\n\t\tmargin-top: var(--ck-spacing-small);\n\n\t\t/* Let the info wrap to the next line to avoid stretching the layout horizontally.\n\t\tThe status could be very long. */\n\t\twhite-space: normal;\n\n\t\t&.ck-labeled-field-view__status_error {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t/* Disabled fields and fields that have no focus should fade out. */\n\t&.ck-disabled > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\tcolor: var(--ck-color-input-disabled-text);\n\t}\n\n\t/* Fields that are disabled or not focused and without a placeholder should have full-sized labels. */\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-disabled.ck-labeled-field-view_empty > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t@mixin ck-dir ltr {\n\t\t\ttransform: translate(var(--ck-labeled-field-label-default-position-x), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttransform: translate(calc(-1 * var(--ck-labeled-field-label-default-position-x)), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t/* Compensate for the default translate position. */\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width));\n\n\t\tbackground: transparent;\n\t\tpadding: 0;\n\t}\n\n\t/*------ DropdownView integration ----------------------------------------------------------------------------------- */\n\n\t/* Make sure dropdown\' background color in any of dropdown\'s state does not collide with labeled field. */\n\t& > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck.ck-button {\n\t\tbackground: transparent;\n\t}\n\n\t/* When the dropdown is "empty", the labeled field label replaces its label. */\n\t&.ck-labeled-field-view_empty > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck-button > .ck-button__label {\n\t\topacity: 0;\n\t}\n\n\t/* Make sure the label of the empty, unfocused input does not cover the dropdown arrow. */\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown + .ck-label {\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard));\n\t}\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},1162:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-list{display:flex;flex-direction:column;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-list .ck-list__item,.ck.ck-list .ck-list__separator{display:block}.ck.ck-list .ck-list__item>:focus{position:relative;z-index:var(--ck-z-default)}.ck.ck-list{border-radius:0}.ck-rounded-corners .ck.ck-list,.ck.ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-list{background:var(--ck-color-list-background);list-style-type:none}.ck.ck-list__item{cursor:default;min-width:12em}.ck.ck-list__item .ck-button{border-radius:0;min-height:unset;padding:calc(var(--ck-line-height-base)*.2*var(--ck-font-size-base)) calc(var(--ck-line-height-base)*.4*var(--ck-font-size-base));text-align:left;width:100%}.ck.ck-list__item .ck-button .ck-button__label{line-height:calc(var(--ck-line-height-base)*1.2*var(--ck-font-size-base))}.ck.ck-list__item .ck-button:active{box-shadow:none}.ck.ck-list__item .ck-button.ck-on{background:var(--ck-color-list-button-on-background);color:var(--ck-color-list-button-on-text)}.ck.ck-list__item .ck-button.ck-on:active{box-shadow:none}.ck.ck-list__item .ck-button.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-on-background-focus)}.ck.ck-list__item .ck-button.ck-on:focus:not(.ck-switchbutton):not(.ck-disabled){border-color:var(--ck-color-base-background)}.ck.ck-list__item .ck-button:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background)}.ck.ck-list__item .ck-switchbutton.ck-on{background:var(--ck-color-list-background);color:inherit}.ck.ck-list__item .ck-switchbutton.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background);color:inherit}.ck.ck-list__separator{background:var(--ck-color-base-border);height:1px;width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/list/list.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/list/list.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,YAGC,YAAa,CACb,qBAAsB,CCFtB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBDaD,CAZC,2DAEC,aACD,CAKA,kCACC,iBAAkB,CAClB,2BACD,CEfD,YCEC,eDGD,CALA,+DCME,qCDDF,CALA,YAIC,0CAA2C,CAD3C,oBAED,CAEA,kBACC,cAAe,CACf,cA2DD,CAzDC,6BAIC,eAAgB,CAHhB,gBAAiB,CAQjB,iIAEiE,CARjE,eAAgB,CADhB,UAwCD,CA7BC,+CAEC,yEACD,CAEA,oCACC,eACD,CAEA,mCACC,oDAAqD,CACrD,yCAaD,CAXC,0CACC,eACD,CAEA,2DACC,0DACD,CAEA,iFACC,4CACD,CAGD,qDACC,uDACD,CAMA,yCACC,0CAA2C,CAC3C,aAMD,CAJC,iEACC,uDAAwD,CACxD,aACD,CAKH,uBAGC,sCAAuC,CAFvC,UAAW,CACX,UAED",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n\n.ck.ck-list {\n\t@mixin ck-rounded-corners;\n\n\tlist-style-type: none;\n\tbackground: var(--ck-color-list-background);\n}\n\n.ck.ck-list__item {\n\tcursor: default;\n\tmin-width: 12em;\n\n\t& .ck-button {\n\t\tmin-height: unset;\n\t\twidth: 100%;\n\t\ttext-align: left;\n\t\tborder-radius: 0;\n\n\t\t/* List items should have the same height. Use absolute units to make sure it is so\n\t\t because e.g. different heading styles may have different height\n\t\t https://github.com/ckeditor/ckeditor5-heading/issues/63 */\n\t\tpadding:\n\t\t\tcalc(.2 * var(--ck-line-height-base) * var(--ck-font-size-base))\n\t\t\tcalc(.4 * var(--ck-line-height-base) * var(--ck-font-size-base));\n\n\t\t& .ck-button__label {\n\t\t\t/* https://github.com/ckeditor/ckeditor5-heading/issues/63 */\n\t\t\tline-height: calc(1.2 * var(--ck-line-height-base) * var(--ck-font-size-base));\n\t\t}\n\n\t\t&:active {\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-button-on-background);\n\t\t\tcolor: var(--ck-color-list-button-on-text);\n\n\t\t\t&:active {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-on-background-focus);\n\t\t\t}\n\n\t\t\t&:focus:not(.ck-switchbutton):not(.ck-disabled) {\n\t\t\t\tborder-color: var(--ck-color-base-background);\n\t\t\t}\n\t\t}\n\n\t\t&:hover:not(.ck-disabled) {\n\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t}\n\t}\n\n\t/* It\'s unnecessary to change the background/text of a switch toggle; it has different ways\n\tof conveying its state (like the switcher) */\n\t& .ck-switchbutton {\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-background);\n\t\t\tcolor: inherit;\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t\t\tcolor: inherit;\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-list__separator {\n\theight: 1px;\n\twidth: 100%;\n\tbackground: var(--ck-color-base-border);\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},8245:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,':root{--ck-balloon-panel-arrow-z-index:calc(var(--ck-z-default) - 3)}.ck.ck-balloon-panel{display:none;position:absolute;z-index:var(--ck-z-modal)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{content:"";position:absolute}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_n]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_n]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_s]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_s]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel.ck-balloon-panel_visible{display:block}:root{--ck-balloon-border-width:1px;--ck-balloon-arrow-offset:2px;--ck-balloon-arrow-height:10px;--ck-balloon-arrow-half-width:8px;--ck-balloon-arrow-drop-shadow:0 2px 2px var(--ck-color-shadow-drop)}.ck.ck-balloon-panel{border-radius:0}.ck-rounded-corners .ck.ck-balloon-panel,.ck.ck-balloon-panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-balloon-panel{background:var(--ck-color-panel-background);border:var(--ck-balloon-border-width) solid var(--ck-color-panel-border);box-shadow:var(--ck-drop-shadow),0 0;min-height:15px}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{border-style:solid;height:0;width:0}.ck.ck-balloon-panel[class*=arrow_n]:after,.ck.ck-balloon-panel[class*=arrow_n]:before{border-width:0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_n]:before{border-color:transparent transparent var(--ck-color-panel-border) transparent;margin-top:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_n]:after{border-color:transparent transparent var(--ck-color-panel-background) transparent;margin-top:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_s]:after,.ck.ck-balloon-panel[class*=arrow_s]:before{border-width:var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_s]:before{border-color:var(--ck-color-panel-border) transparent transparent;filter:drop-shadow(var(--ck-balloon-arrow-drop-shadow));margin-bottom:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_s]:after{border-color:var(--ck-color-panel-background) transparent transparent transparent;margin-bottom:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_e]:after,.ck.ck-balloon-panel[class*=arrow_e]:before{border-width:var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height)}.ck.ck-balloon-panel[class*=arrow_e]:before{border-color:transparent transparent transparent var(--ck-color-panel-border);margin-right:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_e]:after{border-color:transparent transparent transparent var(--ck-color-panel-background);margin-right:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_w]:after,.ck.ck-balloon-panel[class*=arrow_w]:before{border-width:var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0}.ck.ck-balloon-panel[class*=arrow_w]:before{border-color:transparent var(--ck-color-panel-border) transparent transparent;margin-left:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_w]:after{border-color:transparent var(--ck-color-panel-background) transparent transparent;margin-left:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:before{left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:before{left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:before{right:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);right:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:before{margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%;top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:before{left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:before{margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);right:calc(var(--ck-balloon-arrow-height)*-1);top:50%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:before{left:calc(var(--ck-balloon-arrow-height)*-1);margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);top:50%}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonpanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonpanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MAEC,8DACD,CAEA,qBACC,YAAa,CACb,iBAAkB,CAElB,yBAyCD,CAtCE,+GAEC,UAAW,CACX,iBACD,CAEA,wDACC,6CACD,CAEA,uDACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAGD,8CACC,aACD,CC9CD,MACC,6BAA8B,CAC9B,6BAA8B,CAC9B,8BAA+B,CAC/B,iCAAkC,CAClC,oEACD,CAEA,qBCLC,eDmMD,CA9LA,iFCDE,qCD+LF,CA9LA,qBAMC,2CAA4C,CAC5C,wEAAyE,CEdzE,oCAA8B,CFW9B,eA0LD,CApLE,+GAIC,kBAAmB,CADnB,QAAS,CADT,OAGD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,kDACD,CAEA,2CACC,iFAAkF,CAClF,gFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,iEAAkE,CAClE,uDAAwD,CACxD,qDACD,CAEA,2CACC,iFAAkF,CAClF,mFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,oDACD,CAEA,2CACC,iFAAkF,CAClF,kFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,mDACD,CAEA,2CACC,iFAAkF,CAClF,iFACD,CAIA,yGAEC,QAAS,CACT,uDAA0D,CAC1D,2CACD,CAIA,2GAEC,+CAAkD,CAClD,2CACD,CAIA,2GAEC,gDAAmD,CACnD,2CACD,CAIA,yGAIC,8CAAiD,CAFjD,QAAS,CACT,uDAED,CAIA,2GAGC,8CAAiD,CADjD,+CAED,CAIA,2GAGC,8CAAiD,CADjD,gDAED,CAIA,6GAIC,8CAAiD,CADjD,uDAA0D,CAD1D,SAGD,CAIA,6GAIC,8CAAiD,CAFjD,QAAS,CACT,sDAED,CAIA,6GAGC,uDAA0D,CAD1D,SAAU,CAEV,2CACD,CAIA,6GAEC,QAAS,CACT,sDAAyD,CACzD,2CACD,CAIA,yGAGC,sDAAyD,CADzD,6CAAgD,CAEhD,OACD,CAIA,yGAEC,4CAA+C,CAC/C,sDAAyD,CACzD,OACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* Make sure the balloon arrow does not float over its children. */\n\t--ck-balloon-panel-arrow-z-index: calc(var(--ck-z-default) - 3);\n}\n\n.ck.ck-balloon-panel {\n\tdisplay: none;\n\tposition: absolute;\n\n\tz-index: var(--ck-z-modal);\n\n\t&.ck-balloon-panel_with-arrow {\n\t\t&::before,\n\t\t&::after {\n\t\t\tcontent: "";\n\t\t\tposition: absolute;\n\t\t}\n\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_n"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_s"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_visible {\n\t\tdisplay: block;\n\t}\n}\n','/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},1757:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-balloon-rotator__navigation{align-items:center;display:flex;justify-content:center}.ck .ck-balloon-rotator__content .ck-toolbar{justify-content:center}.ck .ck-balloon-rotator__navigation{background:var(--ck-color-toolbar-background);border-bottom:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation>*{margin-bottom:var(--ck-spacing-small);margin-right:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation .ck-balloon-rotator__counter{margin-left:var(--ck-spacing-small);margin-right:var(--ck-spacing-standard)}.ck .ck-balloon-rotator__content .ck.ck-annotation-wrapper{box-shadow:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonrotator.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonrotator.css"],names:[],mappings:"AAKA,oCAEC,kBAAmB,CADnB,YAAa,CAEb,sBACD,CAKA,6CACC,sBACD,CCXA,oCACC,6CAA8C,CAC9C,sDAAuD,CACvD,iCAgBD,CAbC,sCAGC,qCAAsC,CAFtC,oCAAqC,CACrC,kCAED,CAGA,iEAIC,mCAAoC,CAHpC,uCAID,CAMA,2DACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},3553:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-fake-panel{position:absolute;z-index:calc(var(--ck-z-modal) - 1)}.ck .ck-fake-panel div{position:absolute}.ck .ck-fake-panel div:first-child{z-index:2}.ck .ck-fake-panel div:nth-child(2){z-index:1}:root{--ck-balloon-fake-panel-offset-horizontal:6px;--ck-balloon-fake-panel-offset-vertical:6px}.ck .ck-fake-panel div{background:var(--ck-color-panel-background);border:1px solid var(--ck-color-panel-border);border-radius:var(--ck-border-radius);box-shadow:var(--ck-drop-shadow),0 0;height:100%;min-height:15px;width:100%}.ck .ck-fake-panel div:first-child{margin-left:var(--ck-balloon-fake-panel-offset-horizontal);margin-top:var(--ck-balloon-fake-panel-offset-vertical)}.ck .ck-fake-panel div:nth-child(2){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*2);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*2)}.ck .ck-fake-panel div:nth-child(3){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*3);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*3)}.ck .ck-balloon-panel_arrow_s+.ck-fake-panel,.ck .ck-balloon-panel_arrow_se+.ck-fake-panel,.ck .ck-balloon-panel_arrow_sw+.ck-fake-panel{--ck-balloon-fake-panel-offset-vertical:-6px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/fakepanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/fakepanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,mBACC,iBAAkB,CAGlB,mCACD,CAEA,uBACC,iBACD,CAEA,mCACC,SACD,CAEA,oCACC,SACD,CCfA,MACC,6CAA8C,CAC9C,2CACD,CAGA,uBAKC,2CAA4C,CAC5C,6CAA8C,CAC9C,qCAAsC,CCXtC,oCAA8B,CDc9B,WAAY,CAPZ,eAAgB,CAMhB,UAED,CAEA,mCACC,0DAA2D,CAC3D,uDACD,CAEA,oCACC,kEAAqE,CACrE,+DACD,CACA,oCACC,kEAAqE,CACrE,+DACD,CAGA,yIAGC,4CACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-fake-panel {\n\tposition: absolute;\n\n\t/* Fake panels should be placed under main balloon content. */\n\tz-index: calc(var(--ck-z-modal) - 1);\n}\n\n.ck .ck-fake-panel div {\n\tposition: absolute;\n}\n\n.ck .ck-fake-panel div:nth-child( 1 ) {\n\tz-index: 2;\n}\n\n.ck .ck-fake-panel div:nth-child( 2 ) {\n\tz-index: 1;\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},3609:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-sticky-panel .ck-sticky-panel__content_sticky{position:fixed;top:0;z-index:var(--ck-z-modal)}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky_bottom-limit{position:absolute;top:auto}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky{border-top-left-radius:0;border-top-right-radius:0;border-width:0 1px 1px;box-shadow:var(--ck-drop-shadow),0 0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/stickypanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/stickypanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAMC,qDAEC,cAAe,CACf,KAAM,CAFN,yBAGD,CAEA,kEAEC,iBAAkB,CADlB,QAED,CCPA,qDAIC,wBAAyB,CACzB,yBAA0B,CAF1B,sBAAuB,CCFxB,oCDKA",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-sticky-panel {\n\t& .ck-sticky-panel__content_sticky {\n\t\tz-index: var(--ck-z-modal); /* #315 */\n\t\tposition: fixed;\n\t\ttop: 0;\n\t}\n\n\t& .ck-sticky-panel__content_sticky_bottom-limit {\n\t\ttop: auto;\n\t\tposition: absolute;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},1590:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck-vertical-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck-vertical-form .ck-button:focus:after{display:none}@media screen and (max-width:600px){.ck.ck-responsive-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck.ck-responsive-form .ck-button:focus:after{display:none}}.ck-vertical-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form{padding:var(--ck-spacing-large)}.ck.ck-responsive-form:focus{outline:none}[dir=ltr] .ck.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-responsive-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-responsive-form{padding:0;width:calc(var(--ck-input-width)*.8)}.ck.ck-responsive-form .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-responsive-form .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-responsive-form .ck-labeled-field-view .ck-labeled-field-view__error{white-space:normal}.ck.ck-responsive-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form>.ck-button:last-child,.ck.ck-responsive-form>.ck-button:nth-last-child(2){border-radius:0;margin-top:var(--ck-spacing-large);padding:var(--ck-spacing-standard)}.ck.ck-responsive-form>.ck-button:last-child:not(:focus),.ck.ck-responsive-form>.ck-button:nth-last-child(2):not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-responsive-form>.ck-button:last-child,[dir=ltr] .ck.ck-responsive-form>.ck-button:nth-last-child(2),[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2){margin-left:0}[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child:last-of-type,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2):last-of-type{border-right:1px solid var(--ck-color-base-border)}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/responsive-form/responsiveform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/responsive-form/responsiveform.css"],names:[],mappings:"AAQC,mCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,yCACC,YACD,CCdA,oCDoBE,wCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,8CACC,YACD,CC9BF,CCAD,qDACC,kDACD,CAEA,uBACC,+BAmED,CAjEC,6BAEC,YACD,CASC,uGACC,sCACD,CDvBD,oCCMD,uBAqBE,SAAU,CACV,oCA8CF,CA5CE,8CACC,wDAWD,CATC,6DACC,WAAY,CACZ,UACD,CAGA,4EACC,kBACD,CAKA,0DACC,kDACD,CAGD,iGAIC,eAAgB,CADhB,kCAAmC,CADnC,kCAmBD,CAfC,yHACC,gDACD,CARD,0OAeE,aAMF,CAJE,+IACC,kDACD,CDpEH",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck-vertical-form > .ck-button:nth-last-child(2)::after {\n\tborder-right: 1px solid var(--ck-color-base-border);\n}\n\n.ck.ck-responsive-form {\n\tpadding: var(--ck-spacing-large);\n\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& > :not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& > :not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tpadding: 0;\n\t\twidth: calc(.8 * var(--ck-input-width));\n\n\t\t& .ck-labeled-field-view {\n\t\t\tmargin: var(--ck-spacing-large) var(--ck-spacing-large) 0;\n\n\t\t\t& .ck-input-text {\n\t\t\t\tmin-width: 0;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t/* Let the long error messages wrap in the narrow form. */\n\t\t\t& .ck-labeled-field-view__error {\n\t\t\t\twhite-space: normal;\n\t\t\t}\n\t\t}\n\n\t\t/* Styles for two last buttons in the form (save&cancel, edit&unlink, etc.). */\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\t&::after {\n\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\n\t\t& > .ck-button:nth-last-child(1),\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\tpadding: var(--ck-spacing-standard);\n\t\t\tmargin-top: var(--ck-spacing-large);\n\t\t\tborder-radius: 0;\n\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const c=a},6706:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-block-toolbar-button{position:absolute;z-index:var(--ck-z-default)}:root{--ck-color-block-toolbar-button:var(--ck-color-text);--ck-block-toolbar-button-size:var(--ck-font-size-normal)}.ck.ck-block-toolbar-button{color:var(--ck-color-block-toolbar-button);font-size:var(--ck-block-toolbar-size)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/toolbar/blocktoolbar.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/blocktoolbar.css"],names:[],mappings:"AAKA,4BACC,iBAAkB,CAClB,2BACD,CCHA,MACC,oDAAqD,CACrD,yDACD,CAEA,4BACC,0CAA2C,CAC3C,sCACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},5571:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-toolbar{align-items:center;display:flex;flex-flow:row nowrap;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-toolbar>.ck-toolbar__items{align-items:center;display:flex;flex-flow:row wrap;flex-grow:1}.ck.ck-toolbar .ck.ck-toolbar__separator{display:inline-block}.ck.ck-toolbar .ck.ck-toolbar__separator:first-child,.ck.ck-toolbar .ck.ck-toolbar__separator:last-child{display:none}.ck.ck-toolbar .ck-toolbar__line-break{flex-basis:100%}.ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items{flex-direction:column}.ck.ck-toolbar.ck-toolbar_floating>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck-dropdown__button .ck-dropdown__arrow{display:none}.ck.ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-toolbar,.ck.ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-toolbar{background:var(--ck-color-toolbar-background);border:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck.ck-toolbar .ck.ck-toolbar__separator{align-self:stretch;background:var(--ck-color-toolbar-border);margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small);min-width:1px;width:1px}.ck.ck-toolbar .ck-toolbar__line-break{height:0}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break){margin-right:var(--ck-spacing-small)}.ck.ck-toolbar>.ck-toolbar__items:empty+.ck.ck-toolbar__separator{display:none}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break),.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown{margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck.ck-toolbar.ck-toolbar_vertical{padding:0}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items>.ck{border-radius:0;margin:0;width:100%}.ck.ck-toolbar.ck-toolbar_compact{padding:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>*{margin:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>:not(:first-child):not(:last-child){border-radius:0}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck.ck-button.ck-dropdown__button{padding-left:var(--ck-spacing-tiny)}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-dropdown__panel{min-width:auto}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-button>.ck-button__label{max-width:7em;width:auto}.ck-toolbar-container .ck.ck-toolbar{border:0}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck{margin-right:0}.ck.ck-toolbar[dir=rtl]:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-left:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:first-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=rtl]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=rtl]>.ck.ck-toolbar__separator,[dir=rtl] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=rtl] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-right:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:first-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=ltr]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=ltr]>.ck.ck-toolbar__separator,[dir=ltr] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=ltr] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-right:var(--ck-spacing-small)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/toolbar/toolbar.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/toolbar.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,eAKC,kBAAmB,CAFnB,YAAa,CACb,oBAAqB,CCFrB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD6CD,CA3CC,kCAGC,kBAAmB,CAFnB,YAAa,CACb,kBAAmB,CAEnB,WAED,CAEA,yCACC,oBAWD,CAJC,yGAEC,YACD,CAGD,uCACC,eACD,CAEA,sDACC,gBACD,CAEA,sDACC,qBACD,CAEA,sDACC,gBACD,CAGC,yFACC,YACD,CE/CF,eCGC,eDoGD,CAvGA,qECOE,qCDgGF,CAvGA,eAGC,6CAA8C,CAE9C,+CAAgD,CADhD,iCAmGD,CAhGC,yCACC,kBAAmB,CAGnB,yCAA0C,CAO1C,qCAAsC,CADtC,kCAAmC,CAPnC,aAAc,CADd,SAUD,CAEA,uCACC,QACD,CAGC,gEAEC,oCACD,CAIA,kEACC,YACD,CAGD,gHAIC,qCAAsC,CADtC,kCAED,CAEA,mCAEC,SAaD,CAVC,0DAQC,eAAgB,CAHhB,QAAS,CAHT,UAOD,CAGD,kCAEC,SAWD,CATC,uDAEC,QAMD,CAHC,yFACC,eACD,CASD,kFACC,mCACD,CAMA,wEACC,cACD,CAEA,iFACC,aAAc,CACd,UACD,CAjGF,qCAqGE,QAEF,CAYC,+FACC,cACD,CAEA,iJAEC,mCACD,CAEA,qHACC,aACD,CAIC,6JAEC,2BAA4B,CAD5B,wBAED,CAGA,2JAEC,4BAA6B,CAD7B,yBAED,CASD,8RACC,mCACD,CAWA,qHACC,cACD,CAIC,6JAEC,4BAA6B,CAD7B,yBAED,CAGA,2JAEC,2BAA4B,CAD5B,wBAED,CASD,8RACC,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-toolbar {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-toolbar-background);\n\tpadding: 0 var(--ck-spacing-small);\n\tborder: 1px solid var(--ck-color-toolbar-border);\n\n\t& .ck.ck-toolbar__separator {\n\t\talign-self: stretch;\n\t\twidth: 1px;\n\t\tmin-width: 1px;\n\t\tbackground: var(--ck-color-toolbar-border);\n\n\t\t/*\n\t\t * These margins make the separators look better in balloon toolbars (when aligned with the "tip").\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/7493.\n\t\t */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t& .ck-toolbar__line-break {\n\t\theight: 0;\n\t}\n\n\t& > .ck-toolbar__items {\n\t\t& > *:not(.ck-toolbar__line-break) {\n\t\t\t/* (#11) Separate toolbar items. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\n\t\t/* Don\'t display a separator after an empty items container, for instance,\n\t\twhen all items were grouped */\n\t\t&:empty + .ck.ck-toolbar__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& > .ck-toolbar__items > *:not(.ck-toolbar__line-break),\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/* Make sure items wrapped to the next line have v-spacing */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t&.ck-toolbar_vertical {\n\t\t/* Items in a vertical toolbar span the entire width. */\n\t\tpadding: 0;\n\n\t\t/* Specificity matters here. See https://github.com/ckeditor/ckeditor5-theme-lark/issues/168. */\n\t\t& > .ck-toolbar__items > .ck {\n\t\t\t/* Items in a vertical toolbar should span the horizontal space. */\n\t\t\twidth: 100%;\n\n\t\t\t/* Items in a vertical toolbar should have no margin. */\n\t\t\tmargin: 0;\n\n\t\t\t/* Items in a vertical toolbar span the entire width so rounded corners are pointless. */\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\n\t&.ck-toolbar_compact {\n\t\t/* No spacing around items. */\n\t\tpadding: 0;\n\n\t\t& > .ck-toolbar__items > * {\n\t\t\t/* Compact toolbar items have no spacing between them. */\n\t\t\tmargin: 0;\n\n\t\t\t/* "Middle" children should have no rounded corners. */\n\t\t\t&:not(:first-child):not(:last-child) {\n\t\t\t\tborder-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/*\n\t\t * Dropdown button has asymmetric padding to fit the arrow.\n\t\t * This button has no arrow so let\'s revert that padding back to normal.\n\t\t */\n\t\t& > .ck.ck-button.ck-dropdown__button {\n\t\t\tpadding-left: var(--ck-spacing-tiny);\n\t\t}\n\t}\n\n\t/* A drop-down containing the nested toolbar with configured items. */\n\t& .ck-toolbar__nested-toolbar-dropdown {\n\t\t/* Prevent empty space in the panel when the dropdown label is visible and long but the toolbar has few items. */\n\t\t& > .ck-dropdown__panel {\n\t\t\tmin-width: auto;\n\t\t}\n\n\t\t& > .ck-button > .ck-button__label {\n\t\t\tmax-width: 7em;\n\t\t\twidth: auto;\n\t\t}\n\t}\n\n\t@nest .ck-toolbar-container & {\n\t\tborder: 0;\n\t}\n}\n\n/* stylelint-disable */\n\n/*\n * Styles for RTL toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="rtl"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="rtl"] {\n\t& > .ck-toolbar__items > .ck {\n\t\tmargin-right: 0;\n\t}\n\n\t&:not(.ck-toolbar_compact) > .ck-toolbar__items > .ck {\n\t\t/* (#11) Separate toolbar items. */\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-left: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n}\n\n/*\n * Styles for LTR toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="ltr"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="ltr"] {\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-right: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n}\n\n/* stylelint-enable */\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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 c=a},9948:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck.ck-balloon-panel.ck-tooltip{--ck-balloon-border-width:0px;--ck-balloon-arrow-offset:0px;--ck-balloon-arrow-half-width:4px;--ck-balloon-arrow-height:4px;--ck-color-panel-background:var(--ck-color-tooltip-background);padding:0 var(--ck-spacing-medium);pointer-events:none;z-index:calc(var(--ck-z-modal) + 100)}.ck.ck-balloon-panel.ck-tooltip .ck-tooltip__text{color:var(--ck-color-tooltip-text);font-size:.9em;line-height:1.5}.ck.ck-balloon-panel.ck-tooltip{box-shadow:none}.ck.ck-balloon-panel.ck-tooltip:before{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/tooltip.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/tooltip/tooltip.css"],names:[],mappings:"AAKA,gCCGC,6BAA8B,CAC9B,6BAA8B,CAC9B,iCAAkC,CAClC,6BAA8B,CAC9B,8DAA+D,CAE/D,kCAAmC,CDPnC,mBAAoB,CAEpB,qCACD,CCMC,kDAGC,kCAAmC,CAFnC,cAAe,CACf,eAED,CAbD,gCAgBC,eAMD,CAHC,uCACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t/* Keep tooltips transparent for any interactions. */\n\tpointer-events: none;\n\n\tz-index: calc( var(--ck-z-modal) + 100 );\n}\n",'/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t--ck-balloon-border-width: 0px;\n\t--ck-balloon-arrow-offset: 0px;\n\t--ck-balloon-arrow-half-width: 4px;\n\t--ck-balloon-arrow-height: 4px;\n\t--ck-color-panel-background: var(--ck-color-tooltip-background);\n\n\tpadding: 0 var(--ck-spacing-medium);\n\n\t& .ck-tooltip__text {\n\t\tfont-size: .9em;\n\t\tline-height: 1.5;\n\t\tcolor: var(--ck-color-tooltip-text);\n\t}\n\n\t/* Reset balloon panel styles */\n\tbox-shadow: none;\n\n\t/* Hide the default shadow of the .ck-balloon-panel tip */\n\t&::before {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const c=a},6150:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck-hidden{display:none!important}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset,.ck.ck-reset_all{box-sizing:border-box;height:auto;position:static;width:auto}:root{--ck-z-default:1;--ck-z-modal:calc(var(--ck-z-default) + 999)}.ck-transitions-disabled,.ck-transitions-disabled *{transition:none!important}:root{--ck-color-base-foreground:#fafafa;--ck-color-base-background:#fff;--ck-color-base-border:#ccced1;--ck-color-base-action:#53a336;--ck-color-base-focus:#6cb5f9;--ck-color-base-text:#333;--ck-color-base-active:#2977ff;--ck-color-base-active-focus:#0d65ff;--ck-color-base-error:#db3700;--ck-color-focus-border-coordinates:218,81.8%,56.9%;--ck-color-focus-border:hsl(var(--ck-color-focus-border-coordinates));--ck-color-focus-outer-shadow:#cae1fc;--ck-color-focus-disabled-shadow:rgba(119,186,248,.3);--ck-color-focus-error-shadow:rgba(255,64,31,.3);--ck-color-text:var(--ck-color-base-text);--ck-color-shadow-drop:rgba(0,0,0,.15);--ck-color-shadow-drop-active:rgba(0,0,0,.2);--ck-color-shadow-inner:rgba(0,0,0,.1);--ck-color-button-default-background:transparent;--ck-color-button-default-hover-background:#f0f0f0;--ck-color-button-default-active-background:#f0f0f0;--ck-color-button-default-disabled-background:transparent;--ck-color-button-on-background:#f0f7ff;--ck-color-button-on-hover-background:#dbecff;--ck-color-button-on-active-background:#dbecff;--ck-color-button-on-disabled-background:#f0f2f4;--ck-color-button-on-color:#2977ff;--ck-color-button-action-background:var(--ck-color-base-action);--ck-color-button-action-hover-background:#4d9d30;--ck-color-button-action-active-background:#4d9d30;--ck-color-button-action-disabled-background:#7ec365;--ck-color-button-action-text:var(--ck-color-base-background);--ck-color-button-save:#008a00;--ck-color-button-cancel:#db3700;--ck-color-switch-button-off-background:#939393;--ck-color-switch-button-off-hover-background:#7d7d7d;--ck-color-switch-button-on-background:var(--ck-color-button-action-background);--ck-color-switch-button-on-hover-background:#4d9d30;--ck-color-switch-button-inner-background:var(--ck-color-base-background);--ck-color-switch-button-inner-shadow:rgba(0,0,0,.1);--ck-color-dropdown-panel-background:var(--ck-color-base-background);--ck-color-dropdown-panel-border:var(--ck-color-base-border);--ck-color-input-background:var(--ck-color-base-background);--ck-color-input-border:var(--ck-color-base-border);--ck-color-input-error-border:var(--ck-color-base-error);--ck-color-input-text:var(--ck-color-base-text);--ck-color-input-disabled-background:#f2f2f2;--ck-color-input-disabled-border:var(--ck-color-base-border);--ck-color-input-disabled-text:#757575;--ck-color-list-background:var(--ck-color-base-background);--ck-color-list-button-hover-background:var(--ck-color-button-default-hover-background);--ck-color-list-button-on-background:var(--ck-color-button-on-color);--ck-color-list-button-on-background-focus:var(--ck-color-button-on-color);--ck-color-list-button-on-text:var(--ck-color-base-background);--ck-color-panel-background:var(--ck-color-base-background);--ck-color-panel-border:var(--ck-color-base-border);--ck-color-toolbar-background:var(--ck-color-base-background);--ck-color-toolbar-border:var(--ck-color-base-border);--ck-color-tooltip-background:var(--ck-color-base-text);--ck-color-tooltip-text:var(--ck-color-base-background);--ck-color-engine-placeholder-text:#707070;--ck-color-upload-bar-background:#6cb5f9;--ck-color-link-default:#0000f0;--ck-color-link-selected-background:rgba(31,176,255,.1);--ck-color-link-fake-selection:rgba(31,176,255,.3);--ck-color-highlight-background:#ff0;--ck-disabled-opacity:.5;--ck-focus-outer-shadow-geometry:0 0 0 3px;--ck-focus-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-outer-shadow);--ck-focus-disabled-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-disabled-shadow);--ck-focus-error-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-error-shadow);--ck-focus-ring:1px solid var(--ck-color-focus-border);--ck-font-size-base:13px;--ck-line-height-base:1.84615;--ck-font-face:Helvetica,Arial,Tahoma,Verdana,Sans-Serif;--ck-font-size-tiny:0.7em;--ck-font-size-small:0.75em;--ck-font-size-normal:1em;--ck-font-size-big:1.4em;--ck-font-size-large:1.8em;--ck-ui-component-min-height:2.3em}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset,.ck.ck-reset_all{word-wrap:break-word;background:transparent;border:0;margin:0;padding:0;text-decoration:none;transition:none;vertical-align:middle}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset_all{border-collapse:collapse;color:var(--ck-color-text);cursor:auto;float:none;font:normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);text-align:left;white-space:nowrap}.ck-reset_all .ck-rtl :not(.ck-reset_all-excluded *){text-align:right}.ck-reset_all iframe:not(.ck-reset_all-excluded *){vertical-align:inherit}.ck-reset_all textarea:not(.ck-reset_all-excluded *){white-space:pre-wrap}.ck-reset_all input[type=password]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text]:not(.ck-reset_all-excluded *),.ck-reset_all textarea:not(.ck-reset_all-excluded *){cursor:text}.ck-reset_all input[type=password][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all textarea[disabled]:not(.ck-reset_all-excluded *){cursor:default}.ck-reset_all fieldset:not(.ck-reset_all-excluded *){border:2px groove #dfdee3;padding:10px}.ck-reset_all button:not(.ck-reset_all-excluded *)::-moz-focus-inner{border:0;padding:0}.ck[dir=rtl],.ck[dir=rtl] .ck{text-align:right}:root{--ck-border-radius:2px;--ck-inner-shadow:2px 2px 3px var(--ck-color-shadow-inner) inset;--ck-drop-shadow:0 1px 2px 1px var(--ck-color-shadow-drop);--ck-drop-shadow-active:0 3px 6px 1px var(--ck-color-shadow-drop-active);--ck-spacing-unit:0.6em;--ck-spacing-large:calc(var(--ck-spacing-unit)*1.5);--ck-spacing-standard:var(--ck-spacing-unit);--ck-spacing-medium:calc(var(--ck-spacing-unit)*0.8);--ck-spacing-small:calc(var(--ck-spacing-unit)*0.5);--ck-spacing-tiny:calc(var(--ck-spacing-unit)*0.3);--ck-spacing-extra-tiny:calc(var(--ck-spacing-unit)*0.16)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_hidden.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_reset.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_zindex.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_transition.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_colors.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_disabled.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_fonts.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_reset.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_spacing.css"],names:[],mappings:"AAQA,WAGC,sBACD,CCPA,2EAGC,qBAAsB,CAEtB,WAAY,CACZ,eAAgB,CAFhB,UAGD,CCPA,MACC,gBAAiB,CACjB,4CACD,CCAA,oDAEC,yBACD,CCNA,MACC,kCAAmD,CACnD,+BAAoD,CACpD,8BAAkD,CAClD,8BAAuD,CACvD,6BAAmD,CACnD,yBAA+C,CAC/C,8BAAsD,CACtD,oCAA4D,CAC5D,6BAAkD,CAIlD,mDAA4D,CAC5D,qEAA+E,CAC/E,qCAA4D,CAC5D,qDAA8D,CAC9D,gDAAyD,CACzD,yCAAqD,CACrD,sCAAsD,CACtD,4CAA0D,CAC1D,sCAAsD,CAItD,gDAAuD,CACvD,kDAAiE,CACjE,mDAAkE,CAClE,yDAA8D,CAE9D,uCAA6D,CAC7D,6CAAoE,CACpE,8CAAoE,CACpE,gDAAiE,CACjE,kCAAyD,CAGzD,+DAAsE,CACtE,iDAAsE,CACtE,kDAAsE,CACtE,oDAAoE,CACpE,6DAAsE,CAEtE,8BAAoD,CACpD,gCAAqD,CAErD,+CAA8D,CAC9D,qDAAiE,CACjE,+EAAqF,CACrF,oDAAuE,CACvE,yEAA8E,CAC9E,oDAAgE,CAIhE,oEAA2E,CAC3E,4DAAoE,CAIpE,2DAAoE,CACpE,mDAA6D,CAC7D,wDAAgE,CAChE,+CAA0D,CAC1D,4CAA2D,CAC3D,4DAAoE,CACpE,sCAAsD,CAItD,0DAAmE,CACnE,uFAA6F,CAC7F,oEAA2E,CAC3E,0EAA+E,CAC/E,8DAAsE,CAItE,2DAAoE,CACpE,mDAA6D,CAI7D,6DAAsE,CACtE,qDAA+D,CAI/D,uDAAgE,CAChE,uDAAiE,CAIjE,0CAAyD,CAIzD,wCAA2D,CAI3D,+BAAoD,CACpD,uDAAmE,CACnE,kDAAgE,CAIhE,oCAAwD,CCvGxD,wBAAyB,CCAzB,0CAA2C,CAK3C,gGAAiG,CAKjG,4GAA6G,CAK7G,sGAAuG,CAKvG,sDAAuD,CCvBvD,wBAAyB,CACzB,6BAA8B,CAC9B,wDAA6D,CAE7D,yBAA0B,CAC1B,2BAA4B,CAC5B,yBAA0B,CAC1B,wBAAyB,CACzB,0BAA2B,CCJ3B,kCJuGD,CIjGA,2EAaC,oBAAqB,CANrB,sBAAuB,CADvB,QAAS,CAFT,QAAS,CACT,SAAU,CAGV,oBAAqB,CAErB,eAAgB,CADhB,qBAKD,CAKA,8DAGC,wBAAyB,CAEzB,0BAA2B,CAG3B,WAAY,CACZ,UAAW,CALX,iGAAkG,CAElG,eAAgB,CAChB,kBAGD,CAGC,qDACC,gBACD,CAEA,mDAEC,sBACD,CAEA,qDACC,oBACD,CAEA,mLAGC,WACD,CAEA,iNAGC,cACD,CAEA,qDAEC,yBAAoC,CADpC,YAED,CAEA,qEAGC,QAAQ,CADR,SAED,CAMD,8BAEC,gBACD,CCnFA,MACC,sBAAuB,CCAvB,gEAAiE,CAKjE,0DAA2D,CAK3D,wEAAyE,CCbzE,uBAA8B,CAC9B,mDAA2D,CAC3D,4CAAkD,CAClD,oDAA4D,CAC5D,mDAA2D,CAC3D,kDAA2D,CAC3D,yDFFD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-reset,\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\tbox-sizing: border-box;\n\twidth: auto;\n\theight: auto;\n\tposition: static;\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-z-default: 1;\n\t--ck-z-modal: calc( var(--ck-z-default) + 999 );\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-base-foreground: \t\t\t\t\t\t\t\thsl(0, 0%, 98%);\n\t--ck-color-base-background: \t\t\t\t\t\t\t\thsl(0, 0%, 100%);\n\t--ck-color-base-border: \t\t\t\t\t\t\t\t\thsl(220, 6%, 81%);\n\t--ck-color-base-action: \t\t\t\t\t\t\t\t\thsl(104, 50.2%, 42.5%);\n\t--ck-color-base-focus: \t\t\t\t\t\t\t\t\t\thsl(209, 92%, 70%);\n\t--ck-color-base-text: \t\t\t\t\t\t\t\t\t\thsl(0, 0%, 20%);\n\t--ck-color-base-active: \t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\t--ck-color-base-active-focus:\t\t\t\t\t\t\t\thsl(218.2, 100%, 52.5%);\n\t--ck-color-base-error:\t\t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t/* -- Generic colors ------------------------------------------------------------------------ */\n\n\t--ck-color-focus-border-coordinates: \t\t\t\t\t\t218, 81.8%, 56.9%;\n\t--ck-color-focus-border: \t\t\t\t\t\t\t\t\thsl(var(--ck-color-focus-border-coordinates));\n\t--ck-color-focus-outer-shadow:\t\t\t\t\t\t\t\thsl(212.4, 89.3%, 89%);\n\t--ck-color-focus-disabled-shadow:\t\t\t\t\t\t\thsla(209, 90%, 72%,.3);\n\t--ck-color-focus-error-shadow:\t\t\t\t\t\t\t\thsla(9,100%,56%,.3);\n\t--ck-color-text: \t\t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-shadow-drop: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.15);\n\t--ck-color-shadow-drop-active:\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.2);\n\t--ck-color-shadow-inner: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Buttons ------------------------------------------------------------------------------- */\n\n\t--ck-color-button-default-background: \t\t\t\t\t\ttransparent;\n\t--ck-color-button-default-hover-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-active-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-disabled-background: \t\t\t\ttransparent;\n\n\t--ck-color-button-on-background: \t\t\t\t\t\t\thsl(212, 100%, 97.1%);\n\t--ck-color-button-on-hover-background: \t\t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-active-background: \t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-disabled-background: \t\t\t\t\thsl(211, 15%, 95%);\n\t--ck-color-button-on-color:\t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\n\n\t--ck-color-button-action-background: \t\t\t\t\t\tvar(--ck-color-base-action);\n\t--ck-color-button-action-hover-background: \t\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-active-background: \t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-disabled-background: \t\t\t\thsl(104, 44%, 58%);\n\t--ck-color-button-action-text: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t--ck-color-button-save: \t\t\t\t\t\t\t\t\thsl(120, 100%, 27%);\n\t--ck-color-button-cancel: \t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t--ck-color-switch-button-off-background:\t\t\t\t\thsl(0, 0%, 57.6%);\n\t--ck-color-switch-button-off-hover-background:\t\t\t\thsl(0, 0%, 49%);\n\t--ck-color-switch-button-on-background:\t\t\t\t\t\tvar(--ck-color-button-action-background);\n\t--ck-color-switch-button-on-hover-background:\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-switch-button-inner-background:\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-switch-button-inner-shadow:\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Dropdown ------------------------------------------------------------------------------ */\n\n\t--ck-color-dropdown-panel-background: \t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-dropdown-panel-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Input --------------------------------------------------------------------------------- */\n\n\t--ck-color-input-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-input-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-error-border:\t\t\t\t\t\t\t\tvar(--ck-color-base-error);\n\t--ck-color-input-text: \t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-input-disabled-background: \t\t\t\t\t\thsl(0, 0%, 95%);\n\t--ck-color-input-disabled-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-disabled-text: \t\t\t\t\t\t\thsl(0, 0%, 46%);\n\n\t/* -- List ---------------------------------------------------------------------------------- */\n\n\t--ck-color-list-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-list-button-hover-background: \t\t\t\t\tvar(--ck-color-button-default-hover-background);\n\t--ck-color-list-button-on-background: \t\t\t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-background-focus: \t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-text:\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Panel --------------------------------------------------------------------------------- */\n\n\t--ck-color-panel-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-panel-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Toolbar ------------------------------------------------------------------------------- */\n\n\t--ck-color-toolbar-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-toolbar-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Tooltip ------------------------------------------------------------------------------- */\n\n\t--ck-color-tooltip-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-tooltip-text: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Engine -------------------------------------------------------------------------------- */\n\n\t--ck-color-engine-placeholder-text: \t\t\t\t\t\thsl(0, 0%, 44%);\n\n\t/* -- Upload -------------------------------------------------------------------------------- */\n\n\t--ck-color-upload-bar-background:\t\t \t\t\t\t\thsl(209, 92%, 70%);\n\n\t/* -- Link -------------------------------------------------------------------------------- */\n\n\t--ck-color-link-default:\t\t\t\t\t\t\t\t\thsl(240, 100%, 47%);\n\t--ck-color-link-selected-background:\t\t\t\t\t\thsla(201, 100%, 56%, 0.1);\n\t--ck-color-link-fake-selection:\t\t\t\t\t\t\t\thsla(201, 100%, 56%, 0.3);\n\n\t/* -- Search result highlight ---------------------------------------------------------------- */\n\n\t--ck-color-highlight-background:\t\t\t\t\t\t\thsl(60, 100%, 50%)\n}\n","/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* This is super-important. This is **manually** adjusted so a button without an icon\n\tis never smaller than a button with icon, additionally making sure that text-less buttons\n\tare perfect squares. The value is also shared by other components which should stay "in-line"\n\twith buttons. */\n\t--ck-ui-component-min-height: 2.3em;\n}\n\n/**\n * Resets an element, ignoring its children.\n */\n.ck.ck-reset,\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\t/* Do not include inheritable rules here. */\n\tmargin: 0;\n\tpadding: 0;\n\tborder: 0;\n\tbackground: transparent;\n\ttext-decoration: none;\n\tvertical-align: middle;\n\ttransition: none;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/105 */\n\tword-wrap: break-word;\n}\n\n/**\n * Resets an element AND its children.\n */\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\t/* These are rule inherited by all children elements. */\n\tborder-collapse: collapse;\n\tfont: normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);\n\tcolor: var(--ck-color-text);\n\ttext-align: left;\n\twhite-space: nowrap;\n\tcursor: auto;\n\tfloat: none;\n}\n\n.ck-reset_all {\n\t& .ck-rtl *:not(.ck-reset_all-excluded *) {\n\t\ttext-align: right;\n\t}\n\n\t& iframe:not(.ck-reset_all-excluded *) {\n\t\t/* For IE */\n\t\tvertical-align: inherit;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *) {\n\t\twhite-space: pre-wrap;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *),\n\t& input[type="text"]:not(.ck-reset_all-excluded *),\n\t& input[type="password"]:not(.ck-reset_all-excluded *) {\n\t\tcursor: text;\n\t}\n\n\t& textarea[disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="text"][disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="password"][disabled]:not(.ck-reset_all-excluded *) {\n\t\tcursor: default;\n\t}\n\n\t& fieldset:not(.ck-reset_all-excluded *) {\n\t\tpadding: 10px;\n\t\tborder: 2px groove hsl(255, 7%, 88%);\n\t}\n\n\t& button:not(.ck-reset_all-excluded *)::-moz-focus-inner {\n\t\t/* See http://stackoverflow.com/questions/5517744/remove-extra-button-spacing-padding-in-firefox */\n\t\tpadding: 0;\n\t\tborder: 0\n\t}\n}\n\n/**\n * Default UI rules for RTL languages.\n */\n.ck[dir="rtl"],\n.ck[dir="rtl"] .ck {\n\ttext-align: right;\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},6507:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,":root{--ck-color-resizer:var(--ck-color-focus-border);--ck-color-resizer-tooltip-background:#262626;--ck-color-resizer-tooltip-text:#f2f2f2;--ck-resizer-border-radius:var(--ck-border-radius);--ck-resizer-tooltip-offset:10px;--ck-resizer-tooltip-height:calc(var(--ck-spacing-small)*2 + 10px)}.ck .ck-widget,.ck .ck-widget.ck-widget_with-selection-handle{position:relative}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{position:absolute}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{display:block}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{visibility:visible}.ck .ck-size-view{background:var(--ck-color-resizer-tooltip-background);border:1px solid var(--ck-color-resizer-tooltip-text);border-radius:var(--ck-resizer-border-radius);color:var(--ck-color-resizer-tooltip-text);display:block;font-size:var(--ck-font-size-tiny);height:var(--ck-resizer-tooltip-height);line-height:var(--ck-resizer-tooltip-height);padding:0 var(--ck-spacing-small)}.ck .ck-size-view.ck-orientation-above-center,.ck .ck-size-view.ck-orientation-bottom-left,.ck .ck-size-view.ck-orientation-bottom-right,.ck .ck-size-view.ck-orientation-top-left,.ck .ck-size-view.ck-orientation-top-right{position:absolute}.ck .ck-size-view.ck-orientation-top-left{left:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-top-right{right:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-right{bottom:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-left{bottom:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-above-center{left:50%;top:calc(var(--ck-resizer-tooltip-height)*-1);transform:translate(-50%)}:root{--ck-widget-outline-thickness:3px;--ck-widget-handler-icon-size:16px;--ck-widget-handler-animation-duration:200ms;--ck-widget-handler-animation-curve:ease;--ck-color-widget-blurred-border:#dedede;--ck-color-widget-hover-border:#ffc83d;--ck-color-widget-editable-focus-background:var(--ck-color-base-background);--ck-color-widget-drag-handler-icon-color:var(--ck-color-base-background)}.ck .ck-widget{outline-color:transparent;outline-style:solid;outline-width:var(--ck-widget-outline-thickness);transition:outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_selected,.ck .ck-widget.ck-widget_selected:hover{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border)}.ck .ck-widget:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-editor__nested-editable{border:1px solid transparent}.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{background-color:var(--ck-color-widget-editable-focus-background);border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{background-color:transparent;border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0;box-sizing:border-box;left:calc(0px - var(--ck-widget-outline-thickness));opacity:0;padding:4px;top:0;transform:translateY(-100%);transition:background-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),visibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{color:var(--ck-color-widget-drag-handler-icon-color);height:var(--ck-widget-handler-icon-size);width:var(--ck-widget-handler-icon-size)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:0;transition:opacity .3s var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{background-color:var(--ck-color-widget-hover-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{background-color:var(--ck-color-focus-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:1}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{left:auto;right:calc(0px - var(--ck-widget-outline-thickness))}.ck.ck-editor__editable.ck-read-only .ck-widget{transition:none}.ck.ck-editor__editable.ck-read-only .ck-widget:not(.ck-widget_selected){--ck-widget-outline-thickness:0px}.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover{outline-color:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle:hover,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable blockquote>.ck-widget.ck-widget_with-selection-handle:first-child,.ck.ck-editor__editable>.ck-widget.ck-widget_with-selection-handle:first-child{margin-top:calc(1em + var(--ck-widget-handler-icon-size))}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widget.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widget.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MACC,+CAAgD,CAChD,6CAAsD,CACtD,uCAAgD,CAEhD,kDAAmD,CACnD,gCAAiC,CACjC,kEACD,CAOA,8DAEC,iBAqBD,CAnBC,4EACC,iBAOD,CALC,qFAGC,aACD,CASD,iLACC,kBACD,CAGD,kBACC,qDAAsD,CAEtD,qDAAsD,CACtD,6CAA8C,CAF9C,0CAA2C,CAI3C,aAAc,CADd,kCAAmC,CAGnC,uCAAwC,CACxC,4CAA6C,CAF7C,iCAsCD,CAlCC,8NAKC,iBACD,CAEA,0CAEC,qCAAsC,CADtC,oCAED,CAEA,2CAEC,sCAAuC,CADvC,oCAED,CAEA,8CACC,uCAAwC,CACxC,sCACD,CAEA,6CACC,uCAAwC,CACxC,qCACD,CAGA,8CAEC,QAAS,CADT,6CAAgD,CAEhD,yBACD,CCjFD,MACC,iCAAkC,CAClC,kCAAmC,CACnC,4CAA6C,CAC7C,wCAAyC,CAEzC,wCAAiD,CACjD,sCAAkD,CAClD,2EAA4E,CAC5E,yEACD,CAEA,eAGC,yBAA0B,CAD1B,mBAAoB,CADpB,gDAAiD,CAGjD,6GAUD,CARC,0EAEC,6EACD,CAEA,qBACC,iDACD,CAGD,gCACC,4BAWD,CAPC,yGAKC,iEAAkE,CCnCnE,2BAA2B,CCF3B,qCAA8B,CDC9B,YDqCA,CAIA,4EAKC,4BAA6B,CAa7B,iEAAkE,CAhBlE,qBAAsB,CAoBtB,mDAAoD,CAhBpD,SAAU,CALV,WAAY,CAsBZ,KAAM,CAFN,2BAA4B,CAT5B,6SAgCD,CAnBC,qFAIC,oDAAqD,CADrD,yCAA0C,CAD1C,wCAWD,CANC,kHACC,SAAU,CAGV,+DACD,CAID,wHACC,SACD,CAID,kFAEC,oDAAqD,CADrD,SAED,CAKC,oMAEC,6CAA8C,CAD9C,SAOD,CAHC,gRACC,SACD,CAOH,qFACC,SAAU,CACV,oDACD,CAGA,gDAEC,eAkBD,CAhBC,yEAOC,iCACD,CAGC,gOAEC,gDACD,CAOD,wIAEC,mDAQD,CALE,ghBAEC,gDACD,CAKH,yKAOC,yDACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_focus.css";\n@import "../mixins/_shadow.css";\n\n:root {\n\t--ck-widget-outline-thickness: 3px;\n\t--ck-widget-handler-icon-size: 16px;\n\t--ck-widget-handler-animation-duration: 200ms;\n\t--ck-widget-handler-animation-curve: ease;\n\n\t--ck-color-widget-blurred-border: hsl(0, 0%, 87%);\n\t--ck-color-widget-hover-border: hsl(43, 100%, 62%);\n\t--ck-color-widget-editable-focus-background: var(--ck-color-base-background);\n\t--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);\n}\n\n.ck .ck-widget {\n\toutline-width: var(--ck-widget-outline-thickness);\n\toutline-style: solid;\n\toutline-color: transparent;\n\ttransition: outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border);\n\t}\n\n\t&:hover {\n\t\toutline-color: var(--ck-color-widget-hover-border);\n\t}\n}\n\n.ck .ck-editor__nested-editable {\n\tborder: 1px solid transparent;\n\n\t/* The :focus style is applied before .ck-editor__nested-editable_focused class is rendered in the view.\n\tThese styles show a different border for a blink of an eye, so `:focus` need to have same styles applied. */\n\t&.ck-editor__nested-editable_focused,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\n\t\tbackground-color: var(--ck-color-widget-editable-focus-background);\n\t}\n}\n\n.ck .ck-widget.ck-widget_with-selection-handle {\n\t& .ck-widget__selection-handle {\n\t\tpadding: 4px;\n\t\tbox-sizing: border-box;\n\n\t\t/* Background and opacity will be animated as the handler shows up or the widget gets selected. */\n\t\tbackground-color: transparent;\n\t\topacity: 0;\n\n\t\t/* Transition:\n\t\t * background-color for the .ck-widget_selected state change,\n\t\t * visibility for hiding the handler,\n\t\t * opacity for the proper look of the icon when the handler disappears. */\n\t\ttransition:\n\t\t\tbackground-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\tvisibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\topacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t/* Make only top corners round. */\n\t\tborder-radius: var(--ck-border-radius) var(--ck-border-radius) 0 0;\n\n\t\t/* Place the drag handler outside the widget wrapper. */\n\t\ttransform: translateY(-100%);\n\t\tleft: calc(0px - var(--ck-widget-outline-thickness));\n\t\ttop: 0;\n\n\t\t& .ck-icon {\n\t\t\t/* Make sure the dimensions of the icon are independent of the fon-size of the content. */\n\t\t\twidth: var(--ck-widget-handler-icon-size);\n\t\t\theight: var(--ck-widget-handler-icon-size);\n\t\t\tcolor: var(--ck-color-widget-drag-handler-icon-color);\n\n\t\t\t/* The "selected" part of the icon is invisible by default */\n\t\t\t& .ck-icon__selected-indicator {\n\t\t\t\topacity: 0;\n\n\t\t\t\t/* Note: The animation is longer on purpose. Simply feels better. */\n\t\t\t\ttransition: opacity 300ms var(--ck-widget-handler-animation-curve);\n\t\t\t}\n\t\t}\n\n\t\t/* Advertise using the look of the icon that once clicked the handler, the widget will be selected. */\n\t\t&:hover .ck-icon .ck-icon__selected-indicator {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t/* Show the selection handler on mouse hover over the widget, but not for nested widgets. */\n\t&:hover > .ck-widget__selection-handle {\n\t\topacity: 1;\n\t\tbackground-color: var(--ck-color-widget-hover-border);\n\t}\n\n\t/* Show the selection handler when the widget is selected, but not for nested widgets. */\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\t& > .ck-widget__selection-handle {\n\t\t\topacity: 1;\n\t\t\tbackground-color: var(--ck-color-focus-border);\n\n\t\t\t/* When the widget is selected, notify the user using the proper look of the icon. */\n\t\t\t& .ck-icon .ck-icon__selected-indicator {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* In a RTL environment, align the selection handler to the right side of the widget */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle {\n\tleft: auto;\n\tright: calc(0px - var(--ck-widget-outline-thickness));\n}\n\n/* https://github.com/ckeditor/ckeditor5/issues/6415 */\n.ck.ck-editor__editable.ck-read-only .ck-widget {\n\t/* Prevent the :hover outline from showing up because of the used outline-color transition. */\n\ttransition: none;\n\n\t&:not(.ck-widget_selected) {\n\t\t/* Disable visual effects of hover/active widget when CKEditor is in readOnly mode.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/1261\n\t\t *\n\t\t * Leave the unit because this custom property is used in calc() by other features.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/6775\n\t\t */\n\t\t--ck-widget-outline-thickness: 0px;\n\t}\n\n\t&.ck-widget_with-selection-handle {\n\t\t& .ck-widget__selection-handle,\n\t\t& .ck-widget__selection-handle:hover {\n\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t}\n\t}\n}\n\n/* Style the widget when it\'s selected but the editable it belongs to lost focus. */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck.ck-editor__editable.ck-blurred .ck-widget {\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline-color: var(--ck-color-widget-blurred-border);\n\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t& > .ck-widget__selection-handle,\n\t\t\t& > .ck-widget__selection-handle:hover {\n\t\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable > .ck-widget.ck-widget_with-selection-handle:first-child,\n.ck.ck-editor__editable blockquote > .ck-widget.ck-widget_with-selection-handle:first-child {\n\t/* Do not crop selection handler if a widget is a first-child in the blockquote or in the root editable.\n\tIn fact, anything with overflow: hidden.\n\thttps://github.com/ckeditor/ckeditor5-block-quote/issues/28\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/44\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/66 */\n\tmargin-top: calc(1em + var(--ck-widget-handler-icon-size));\n}\n',"/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},2263:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,".ck .ck-widget_with-resizer{position:relative}.ck .ck-widget__resizer{display:none;left:0;pointer-events:none;position:absolute;top:0}.ck-focused .ck-widget_with-resizer.ck-widget_selected>.ck-widget__resizer{display:block}.ck .ck-widget__resizer__handle{pointer-events:all;position:absolute}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{cursor:nwse-resize}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{cursor:nesw-resize}:root{--ck-resizer-size:10px;--ck-resizer-offset:calc(var(--ck-resizer-size)/-2 - 2px);--ck-resizer-border-width:1px}.ck .ck-widget__resizer{outline:1px solid var(--ck-color-resizer)}.ck .ck-widget__resizer__handle{background:var(--ck-color-focus-border);border:var(--ck-resizer-border-width) solid #fff;border-radius:var(--ck-resizer-border-radius);height:var(--ck-resizer-size);width:var(--ck-resizer-size)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{left:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{right:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{bottom:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{bottom:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widgetresize.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widgetresize.css"],names:[],mappings:"AAKA,4BAEC,iBACD,CAEA,wBACC,YAAa,CAMb,MAAO,CAFP,mBAAoB,CAHpB,iBAAkB,CAMlB,KACD,CAGC,2EACC,aACD,CAGD,gCAIC,kBAAmB,CAHnB,iBAcD,CATC,4IAEC,kBACD,CAEA,4IAEC,kBACD,CCpCD,MACC,sBAAuB,CAGvB,yDAAiE,CACjE,6BACD,CAEA,wBACC,yCACD,CAEA,gCAGC,uCAAwC,CACxC,gDAA6D,CAC7D,6CAA8C,CAH9C,6BAA8B,CAD9B,4BAyBD,CAnBC,oEAEC,6BAA8B,CAD9B,4BAED,CAEA,qEAEC,8BAA+B,CAD/B,4BAED,CAEA,wEACC,+BAAgC,CAChC,8BACD,CAEA,uEACC,+BAAgC,CAChC,6BACD",sourcesContent:["/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding 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 c=a},5137:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(4015);var o=n.n(i);var r=n(3645);var s=n.n(r);var a=s()(o());a.push([t.id,'.ck .ck-widget .ck-widget__type-around__button{display:block;overflow:hidden;position:absolute;z-index:var(--ck-z-default)}.ck .ck-widget .ck-widget__type-around__button svg{left:50%;position:absolute;top:50%;z-index:calc(var(--ck-z-default) + 2)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_before{left:min(10%,30px);top:calc(var(--ck-widget-outline-thickness)*-.5);transform:translateY(-50%)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_after{bottom:calc(var(--ck-widget-outline-thickness)*-.5);right:min(10%,30px);transform:translateY(50%)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{content:"";display:block;left:1px;position:absolute;top:1px;z-index:calc(var(--ck-z-default) + 1)}.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:none;left:0;position:absolute;right:0}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__fake-caret{left:calc(var(--ck-widget-outline-thickness)*-1);right:calc(var(--ck-widget-outline-thickness)*-1)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:block;top:calc(var(--ck-widget-outline-thickness)*-1 - 1px)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:calc(var(--ck-widget-outline-thickness)*-1 - 1px);display:block}.ck.ck-editor__editable.ck-read-only .ck-widget__type-around,.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around,.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around{display:none}:root{--ck-widget-type-around-button-size:20px;--ck-color-widget-type-around-button-active:var(--ck-color-focus-border);--ck-color-widget-type-around-button-hover:var(--ck-color-widget-hover-border);--ck-color-widget-type-around-button-blurred-editable:var(--ck-color-widget-blurred-border);--ck-color-widget-type-around-button-radar-start-alpha:0;--ck-color-widget-type-around-button-radar-end-alpha:.3;--ck-color-widget-type-around-button-icon:var(--ck-color-base-background)}.ck .ck-widget .ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button);border-radius:100px;height:var(--ck-widget-type-around-button-size);opacity:0;pointer-events:none;transition:opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);width:var(--ck-widget-type-around-button-size)}.ck .ck-widget .ck-widget__type-around__button svg{height:8px;margin-top:1px;transform:translate(-50%,-50%);transition:transform .5s ease;width:10px}.ck .ck-widget .ck-widget__type-around__button svg *{stroke-dasharray:10;stroke-dashoffset:0;fill:none;stroke:var(--ck-color-widget-type-around-button-icon);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ck .ck-widget .ck-widget__type-around__button svg line{stroke-dasharray:7}.ck .ck-widget .ck-widget__type-around__button:hover{animation:ck-widget-type-around-button-sonar 1s ease infinite}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:ck-widget-type-around-arrow-dash 2s linear}.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:ck-widget-type-around-arrow-tip-dash 2s linear}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget:not(.ck-widget_selected)>.ck-widget__type-around>.ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button-hover)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover{background:var(--ck-color-widget-type-around-button-active)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{background:linear-gradient(135deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.3));border-radius:100px;height:calc(var(--ck-widget-type-around-button-size) - 2px);width:calc(var(--ck-widget-type-around-button-size) - 2px)}.ck .ck-widget.ck-widget_with-selection-handle>.ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:20px}.ck .ck-widget .ck-widget__type-around__fake-caret{animation:ck-widget-type-around-fake-caret-pulse 1s linear infinite normal forwards;background:var(--ck-color-base-text);height:1px;outline:1px solid hsla(0,0%,100%,.5);pointer-events:none}.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_after,.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_before{outline-color:transparent}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected:hover,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{opacity:0}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:0;margin-right:20px}.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover){background:var(--ck-color-widget-type-around-button-blurred-editable)}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover) svg *{stroke:#999}@keyframes ck-widget-type-around-arrow-dash{0%{stroke-dashoffset:10}20%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-arrow-tip-dash{0%,20%{stroke-dashoffset:7}40%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-button-sonar{0%{box-shadow:0 0 0 0 hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}50%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-end-alpha))}to{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}}@keyframes ck-widget-type-around-fake-caret-pulse{0%{opacity:1}49%{opacity:1}50%{opacity:0}99%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widgettypearound.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widgettypearound.css"],names:[],mappings:"AASC,+CACC,aAAc,CAEd,eAAgB,CADhB,iBAAkB,CAElB,2BAwBD,CAtBC,mDAGC,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAEA,qFAGC,kBAAoB,CADpB,gDAAoD,CAGpD,0BACD,CAEA,oFAEC,mDAAuD,CACvD,mBAAqB,CAErB,yBACD,CAUA,mLACC,UAAW,CACX,aAAc,CAGd,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAMD,2EACC,YAAa,CAEb,MAAO,CADP,iBAAkB,CAElB,OACD,CAOA,iFACC,gDAAqD,CACrD,iDACD,CAKA,wHAEC,aAAc,CADd,qDAED,CAKA,uHACC,wDAA6D,CAC7D,aACD,CAoBD,mOACC,YACD,CC3GA,MACC,wCAAyC,CACzC,wEAAyE,CACzE,8EAA+E,CAC/E,2FAA4F,CAC5F,wDAAyD,CACzD,uDAAwD,CACxD,yEACD,CAgBC,+CAGC,oDAAqD,CACrD,mBAAoB,CAFpB,+CAAgD,CAVjD,SAAU,CACV,mBAAoB,CAYnB,uMAAyM,CAJzM,8CAkDD,CA1CC,mDAEC,UAAW,CAGX,cAAe,CAFf,8BAA+B,CAC/B,6BAA8B,CAH9B,UAoBD,CAdC,qDACC,mBAAoB,CACpB,mBAAoB,CAEpB,SAAU,CACV,qDAAsD,CACtD,kBAAmB,CACnB,oBAAqB,CACrB,qBACD,CAEA,wDACC,kBACD,CAGD,qDAIC,6DAcD,CARE,kEACC,oDACD,CAEA,8DACC,wDACD,CAUF,uKAvED,SAAU,CACV,mBAwEC,CAOD,gGACC,0DACD,CAOA,uKAEC,2DAQD,CANC,mLAIC,uEAAkF,CADlF,mBAAoB,CADpB,2DAA4D,CAD5D,0DAID,CAOD,8GACC,gBACD,CAKA,mDAGC,mFAAoF,CAOpF,oCAAqC,CARrC,UAAW,CAOX,oCAAwC,CARxC,mBAUD,CAOC,6JAEC,yBACD,CAUA,yKACC,iDACD,CAMA,uOAlJD,SAAU,CACV,mBAmJC,CAoBA,6yBACC,SACD,CASF,uHACC,aAAc,CACd,iBACD,CAYG,iRAlMF,SAAU,CACV,mBAmME,CAQH,kIACC,qEAKD,CAHC,wIACC,WACD,CAGD,4CACC,GACC,oBACD,CACA,OACC,mBACD,CACD,CAEA,gDACC,OACC,mBACD,CACA,OACC,mBACD,CACD,CAEA,8CACC,GACC,6HACD,CACA,IACC,6HACD,CACA,GACC,+HACD,CACD,CAEA,kDACC,GACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2023, CKSource Holding 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-2023, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-widget-type-around-button-size: 20px;\n\t--ck-color-widget-type-around-button-active: var(--ck-color-focus-border);\n\t--ck-color-widget-type-around-button-hover: var(--ck-color-widget-hover-border);\n\t--ck-color-widget-type-around-button-blurred-editable: var(--ck-color-widget-blurred-border);\n\t--ck-color-widget-type-around-button-radar-start-alpha: 0;\n\t--ck-color-widget-type-around-button-radar-end-alpha: .3;\n\t--ck-color-widget-type-around-button-icon: var(--ck-color-base-background);\n}\n\n@define-mixin ck-widget-type-around-button-visible {\n\topacity: 1;\n\tpointer-events: auto;\n}\n\n@define-mixin ck-widget-type-around-button-hidden {\n\topacity: 0;\n\tpointer-events: none;\n}\n\n.ck .ck-widget {\n\t/*\n\t * Styles of the type around buttons\n\t */\n\t& .ck-widget__type-around__button {\n\t\twidth: var(--ck-widget-type-around-button-size);\n\t\theight: var(--ck-widget-type-around-button-size);\n\t\tbackground: var(--ck-color-widget-type-around-button);\n\t\tborder-radius: 100px;\n\t\ttransition: opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t@mixin ck-widget-type-around-button-hidden;\n\n\t\t& svg {\n\t\t\twidth: 10px;\n\t\t\theight: 8px;\n\t\t\ttransform: translate(-50%,-50%);\n\t\t\ttransition: transform .5s ease;\n\t\t\tmargin-top: 1px;\n\n\t\t\t& * {\n\t\t\t\tstroke-dasharray: 10;\n\t\t\t\tstroke-dashoffset: 0;\n\n\t\t\t\tfill: none;\n\t\t\t\tstroke: var(--ck-color-widget-type-around-button-icon);\n\t\t\t\tstroke-width: 1.5px;\n\t\t\t\tstroke-linecap: round;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t}\n\n\t\t\t& line {\n\t\t\t\tstroke-dasharray: 7;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t/*\n\t\t\t * Display the "sonar" around the button when hovered.\n\t\t\t */\n\t\t\tanimation: ck-widget-type-around-button-sonar 1s ease infinite;\n\n\t\t\t/*\n\t\t\t * Animate active button\'s icon.\n\t\t\t */\n\t\t\t& svg {\n\t\t\t\t& polyline {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-dash 2s linear;\n\t\t\t\t}\n\n\t\t\t\t& line {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-tip-dash 2s linear;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Show type around buttons when the widget gets selected or being hovered.\n\t */\n\t&.ck-widget_selected,\n\t&:hover {\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-visible;\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the buttons when the widget is NOT selected (but the buttons are visible\n\t * and still can be hovered).\n\t */\n\t&:not(.ck-widget_selected) > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\tbackground: var(--ck-color-widget-type-around-button-hover);\n\t}\n\n\t/*\n\t * Styles for the buttons when:\n\t * - the widget is selected,\n\t * - or the button is being hovered (regardless of the widget state).\n\t */\n\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\n\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\n\t\tbackground: var(--ck-color-widget-type-around-button-active);\n\n\t\t&::after {\n\t\t\twidth: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\theight: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\tborder-radius: 100px;\n\t\t\tbackground: linear-gradient(135deg, hsla(0,0%,100%,0) 0%, hsla(0,0%,100%,.3) 100%);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the "before" button when the widget has a selection handle. Because some space\n\t * is consumed by the handle, the button must be moved slightly to the right to let it breathe.\n\t */\n\t&.ck-widget_with-selection-handle > .ck-widget__type-around > .ck-widget__type-around__button_before {\n\t\tmargin-left: 20px;\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" which is displayed when the user navigates using the keyboard.\n\t */\n\t& .ck-widget__type-around__fake-caret {\n\t\tpointer-events: none;\n\t\theight: 1px;\n\t\tanimation: ck-widget-type-around-fake-caret-pulse linear 1s infinite normal forwards;\n\n\t\t/*\n\t\t * The semi-transparent-outline+background combo improves the contrast\n\t\t * when the background underneath the fake caret is dark.\n\t\t */\n\t\toutline: solid 1px hsla(0, 0%, 100%, .5);\n\t\tbackground: var(--ck-color-base-text);\n\t}\n\n\t/*\n\t * Styles of the widget when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t * Despite the widget being physically selected in the model, its outline should disappear.\n\t */\n\t&.ck-widget_selected {\n\t\t&.ck-widget_type-around_show-fake-caret_before,\n\t\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t\toutline-color: transparent;\n\t\t}\n\t}\n\n\t&.ck-widget_type-around_show-fake-caret_before,\n\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t/*\n\t\t * When the "fake caret" is visible we simulate that the widget is not selected\n\t\t * (despite being physically selected), so the outline color should be for the\n\t\t * unselected widget.\n\t\t */\n\t\t&.ck-widget_selected:hover {\n\t\t\toutline-color: var(--ck-color-widget-hover-border);\n\t\t}\n\n\t\t/*\n\t\t * Styles of the type around buttons when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t\t * In this state, the type around buttons would collide with the fake carets so they should disappear.\n\t\t */\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the selection handle. When the caret is visible, simply\n\t\t * hide the handle because it intersects with the caret (and does not make much sense anyway).\n\t\t */\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t&.ck-widget_selected,\n\t\t\t&.ck-widget_selected:hover {\n\t\t\t\t& > .ck-widget__selection-handle {\n\t\t\t\t\topacity: 0\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the resize UI. When the caret is visible, simply\n\t\t * hide the resize UI because it creates too much noise. It can be visible when the user\n\t\t * hovers the widget, though.\n\t\t */\n\t\t&.ck-widget_selected.ck-widget_with-resizer > .ck-widget__resizer {\n\t\t\topacity: 0\n\t\t}\n\t}\n}\n\n/*\n * Styles for the "before" button when the widget has a selection handle in an RTL environment.\n * The selection handler is aligned to the right side of the widget so there is no need to create\n * additional space for it next to the "before" button.\n */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around > .ck-widget__type-around__button_before {\n\tmargin-left: 0;\n\tmargin-right: 20px;\n}\n\n/*\n * Hide type around buttons when the widget is selected as a child of a selected\n * nested editable (e.g. mulit-cell table selection).\n *\n * See https://github.com/ckeditor/ckeditor5/issues/7263.\n */\n.ck-editor__nested-editable.ck-editor__editable_selected {\n\t& .ck-widget {\n\t\t&.ck-widget_selected,\n\t\t&:hover {\n\t\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/*\n * Styles for the buttons when the widget is selected but the user clicked outside of the editor (blurred the editor).\n */\n.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button:not(:hover) {\n\tbackground: var(--ck-color-widget-type-around-button-blurred-editable);\n\n\t& svg * {\n\t\tstroke: hsl(0,0%,60%);\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-dash {\n\t0% {\n\t\tstroke-dashoffset: 10;\n\t}\n\t20%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-tip-dash {\n\t0%, 20% {\n\t\tstroke-dashoffset: 7;\n\t}\n\t40%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-button-sonar {\n\t0% {\n\t\tbox-shadow: 0 0 0 0 hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n\t50% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-end-alpha));\n\t}\n\t100% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n}\n\n@keyframes ck-widget-type-around-fake-caret-pulse {\n\t0% {\n\t\topacity: 1;\n\t}\n\t49% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t99% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n'],sourceRoot:""}]);const c=a},3645:t=>{"use strict";t.exports=function(t){var e=[];e.toString=function e(){return this.map((function(e){var n=t(e);if(e[2]){return"@media ".concat(e[2]," {").concat(n,"}")}return n})).join("")};e.i=function(t,n,i){if(typeof t==="string"){t=[[null,t,""]]}var o={};if(i){for(var r=0;r<this.length;r++){var s=this[r][0];if(s!=null){o[s]=true}}}for(var a=0;a<t.length;a++){var c=[].concat(t[a]);if(i&&o[c[0]]){continue}if(n){if(!c[2]){c[2]=n}else{c[2]="".concat(n," and ").concat(c[2])}}e.push(c)}};return e}},4015:t=>{"use strict";function e(t,e){return s(t)||r(t,e)||i(t,e)||n()}function n(){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 i(t,e){if(!t)return;if(typeof t==="string")return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor)n=t.constructor.name;if(n==="Map"||n==="Set")return Array.from(t);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return o(t,e)}function o(t,e){if(e==null||e>t.length)e=t.length;for(var n=0,i=new Array(e);n<e;n++){i[n]=t[n]}return i}function r(t,e){var n=t&&(typeof Symbol!=="undefined"&&t[Symbol.iterator]||t["@@iterator"]);if(n==null)return;var i=[];var o=true;var r=false;var s,a;try{for(n=n.call(t);!(o=(s=n.next()).done);o=true){i.push(s.value);if(e&&i.length===e)break}}catch(t){r=true;a=t}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(r)throw a}}return i}function s(t){if(Array.isArray(t))return t}t.exports=function t(n){var i=e(n,4),o=i[1],r=i[3];if(!r){return o}if(typeof btoa==="function"){var s=btoa(unescape(encodeURIComponent(JSON.stringify(r))));var a="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(s);var c="/*# ".concat(a," */");var l=r.sources.map((function(t){return"/*# sourceURL=".concat(r.sourceRoot||"").concat(t," */")}));return[o].concat(l).concat([c]).join("\n")}return[o].join("\n")}},3379:(t,e,n)=>{"use strict";var i=function t(){var e;return function t(){if(typeof e==="undefined"){e=Boolean(window&&document&&document.all&&!window.atob)}return e}}();var o=function t(){var e={};return function t(n){if(typeof e[n]==="undefined"){var i=document.querySelector(n);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement){try{i=i.contentDocument.head}catch(t){i=null}}e[n]=i}return e[n]}}();var r=[];function s(t){var e=-1;for(var n=0;n<r.length;n++){if(r[n].identifier===t){e=n;break}}return e}function a(t,e){var n={};var i=[];for(var o=0;o<t.length;o++){var a=t[o];var c=e.base?a[0]+e.base:a[0];var l=n[c]||0;var d="".concat(c," ").concat(l);n[c]=l+1;var u=s(d);var h={css:a[1],media:a[2],sourceMap:a[3]};if(u!==-1){r[u].references++;r[u].updater(h)}else{r.push({identifier:d,updater:f(h,e),references:1})}i.push(d)}return i}function c(t){var e=document.createElement("style");var i=t.attributes||{};if(typeof i.nonce==="undefined"){var r=true?n.nc:0;if(r){i.nonce=r}}Object.keys(i).forEach((function(t){e.setAttribute(t,i[t])}));if(typeof t.insert==="function"){t.insert(e)}else{var s=o(t.insert||"head");if(!s){throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.")}s.appendChild(e)}return e}function l(t){if(t.parentNode===null){return false}t.parentNode.removeChild(t)}var d=function t(){var e=[];return function t(n,i){e[n]=i;return e.filter(Boolean).join("\n")}}();function u(t,e,n,i){var o=n?"":i.media?"@media ".concat(i.media," {").concat(i.css,"}"):i.css;if(t.styleSheet){t.styleSheet.cssText=d(e,o)}else{var r=document.createTextNode(o);var s=t.childNodes;if(s[e]){t.removeChild(s[e])}if(s.length){t.insertBefore(r,s[e])}else{t.appendChild(r)}}}function h(t,e,n){var i=n.css;var o=n.media;var r=n.sourceMap;if(o){t.setAttribute("media",o)}else{t.removeAttribute("media")}if(r&&typeof btoa!=="undefined"){i+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(r))))," */")}if(t.styleSheet){t.styleSheet.cssText=i}else{while(t.firstChild){t.removeChild(t.firstChild)}t.appendChild(document.createTextNode(i))}}var g=null;var m=0;function f(t,e){var n;var i;var o;if(e.singleton){var r=m++;n=g||(g=c(e));i=u.bind(null,n,r,false);o=u.bind(null,n,r,true)}else{n=c(e);i=h.bind(null,n,e);o=function t(){l(n)}}i(t);return function e(n){if(n){if(n.css===t.css&&n.media===t.media&&n.sourceMap===t.sourceMap){return}i(t=n)}else{o()}}}t.exports=function(t,e){e=e||{};if(!e.singleton&&typeof e.singleton!=="boolean"){e.singleton=i()}t=t||[];var n=a(t,e);return function t(i){i=i||[];if(Object.prototype.toString.call(i)!=="[object Array]"){return}for(var o=0;o<n.length;o++){var c=n[o];var l=s(c);r[l].references--}var d=a(i,e);for(var u=0;u<n.length;u++){var h=n[u];var g=s(h);if(r[g].references===0){r[g].updater();r.splice(g,1)}}n=d}}},1576:()=>{}};var e={};function n(i){var o=e[i];if(o!==undefined){return o.exports}var r=e[i]={id:i,exports:{}};t[i](r,r.exports,n);return r.exports}(()=>{n.n=t=>{var e=t&&t.__esModule?()=>t["default"]:()=>t;n.d(e,{a:e});return e}})();(()=>{n.d=(t,e)=>{for(var i in e){if(n.o(e,i)&&!n.o(t,i)){Object.defineProperty(t,i,{enumerable:true,get:e[i]})}}}})();(()=>{n.g=function(){if(typeof globalThis==="object")return globalThis;try{return this||new Function("return this")()}catch(t){if(typeof window==="object")return window}}()})();(()=>{n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e)})();(()=>{n.nc=undefined})();var i={};(()=>{"use strict";n.d(i,{default:()=>ZZ});function t({emitter:t,activator:e,callback:n,contextElements:i}){t.listenTo(document,"mousedown",((t,o)=>{if(!e()){return}const r=typeof o.composedPath=="function"?o.composedPath():[];const s=typeof i=="function"?i():i;for(const t of s){if(t.contains(o.target)||r.includes(t)){return}}n()}))}function e(t){const e=t;e.set("_isCssTransitionsDisabled",false);e.disableCssTransitions=()=>{e._isCssTransitionsDisabled=true};e.enableCssTransitions=()=>{e._isCssTransitionsDisabled=false};e.extendTemplate({attributes:{class:[e.bindTemplate.if("_isCssTransitionsDisabled","ck-transitions-disabled")]}})}function o({view:t}){t.listenTo(t.element,"submit",((e,n)=>{n.preventDefault();t.fire("submit")}),{useCapture:true})}function r({keystrokeHandler:t,focusTracker:e,gridItems:n,numberOfColumns:i,uiLanguageDirection:o}){const r=typeof i==="number"?()=>i:i;t.set("arrowright",s(((t,e)=>o==="rtl"?c(t,e.length):a(t,e.length))));t.set("arrowleft",s(((t,e)=>o==="rtl"?a(t,e.length):c(t,e.length))));t.set("arrowup",s(((t,e)=>{let n=t-r();if(n<0){n=t+r()*Math.floor(e.length/r());if(n>e.length-1){n-=r()}}return n})));t.set("arrowdown",s(((t,e)=>{let n=t+r();if(n>e.length-1){n=t%r()}return n})));function s(t){return i=>{const o=n.find((t=>t.element===e.focusedElement));const r=n.getIndex(o);const s=t(r,n);n.get(s).focus();i.stopPropagation();i.preventDefault()}}function a(t,e){if(t===e-1){return 0}else{return t+1}}function c(t,e){if(t===0){return e-1}else{return t-1}}}function s(){try{return navigator.userAgent.toLowerCase()}catch(t){return""}}const a=s();const c={isMac:d(a),isWindows:u(a),isGecko:h(a),isSafari:g(a),isiOS:m(a),isAndroid:f(a),isBlink:p(a),features:{isRegExpUnicodePropertySupported:b()}};const l=c;function d(t){return t.indexOf("macintosh")>-1}function u(t){return t.indexOf("windows")>-1}function h(t){return!!t.match(/gecko\/\d+/)}function g(t){return t.indexOf(" applewebkit/")>-1&&t.indexOf("chrome")===-1}function m(t){return!!t.match(/iphone|ipad/i)||d(t)&&navigator.maxTouchPoints>0}function f(t){return t.indexOf("android")>-1}function p(t){return t.indexOf("chrome/")>-1&&t.indexOf("edge/")<0}function b(){let t=false;try{t="ć".search(new RegExp("[\\p{L}]","u"))===0}catch(t){}return t}function k(t,e,n,i){n=n||function(t,e){return t===e};const o=Array.isArray(t)?t:Array.prototype.slice.call(t);const r=Array.isArray(e)?e:Array.prototype.slice.call(e);const s=w(o,r,n);const a=i?v(s,r.length):_(r,s);return a}function w(t,e,n){const i=A(t,e,n);if(i===-1){return{firstIndex:-1,lastIndexOld:-1,lastIndexNew:-1}}const o=C(t,i);const r=C(e,i);const s=A(o,r,n);const a=t.length-s;const c=e.length-s;return{firstIndex:i,lastIndexOld:a,lastIndexNew:c}}function A(t,e,n){for(let i=0;i<Math.max(t.length,e.length);i++){if(t[i]===undefined||e[i]===undefined||!n(t[i],e[i])){return i}}return-1}function C(t,e){return t.slice(e).reverse()}function _(t,e){const n=[];const{firstIndex:i,lastIndexOld:o,lastIndexNew:r}=e;if(r-i>0){n.push({index:i,type:"insert",values:t.slice(i,r)})}if(o-i>0){n.push({index:i+(r-i),type:"delete",howMany:o-i})}return n}function v(t,e){const{firstIndex:n,lastIndexOld:i,lastIndexNew:o}=t;if(n===-1){return Array(e).fill("equal")}let r=[];if(n>0){r=r.concat(Array(n).fill("equal"))}if(o-n>0){r=r.concat(Array(o-n).fill("insert"))}if(i-n>0){r=r.concat(Array(i-n).fill("delete"))}if(o<e){r=r.concat(Array(e-o).fill("equal"))}return r}function y(t,e,n){n=n||function(t,e){return t===e};const i=t.length;const o=e.length;if(i>200||o>200||i+o>300){return y.fastDiff(t,e,n,true)}let r,s;if(o<i){const n=t;t=e;e=n;r="delete";s="insert"}else{r="insert";s="delete"}const a=t.length;const c=e.length;const l=c-a;const d={};const u={};function h(i){const o=(u[i-1]!==undefined?u[i-1]:-1)+1;const l=u[i+1]!==undefined?u[i+1]:-1;const h=o>l?-1:1;if(d[i+h]){d[i]=d[i+h].slice(0)}if(!d[i]){d[i]=[]}d[i].push(o>l?r:s);let g=Math.max(o,l);let m=g-i;while(m<a&&g<c&&n(t[m],e[g])){m++;g++;d[i].push("equal")}return g}let g=0;let m;do{for(m=-g;m<l;m++){u[m]=h(m)}for(m=l+g;m>l;m--){u[m]=h(m)}u[l]=h(l);g++}while(u[l]!==c);return d[l].slice(1)}y.fastDiff=k;function x(t,...e){e.forEach((e=>{const n=Object.getOwnPropertyNames(e);const i=Object.getOwnPropertySymbols(e);n.concat(i).forEach((n=>{if(n in t.prototype){return}if(typeof e=="function"&&(n=="length"||n=="name"||n=="prototype")){return}const i=Object.getOwnPropertyDescriptor(e,n);i.enumerable=false;Object.defineProperty(t.prototype,n,i)}))}))}function E(){return function t(){t.called=true}}const D=E;class T{constructor(t,e){this.source=t;this.name=e;this.path=[];this.stop=D();this.off=D()}}const S=new Array(256).fill("").map(((t,e)=>("0"+e.toString(16)).slice(-2)));function I(){const t=Math.random()*4294967296>>>0;const e=Math.random()*4294967296>>>0;const n=Math.random()*4294967296>>>0;const i=Math.random()*4294967296>>>0;return"e"+S[t>>0&255]+S[t>>8&255]+S[t>>16&255]+S[t>>24&255]+S[e>>0&255]+S[e>>8&255]+S[e>>16&255]+S[e>>24&255]+S[n>>0&255]+S[n>>8&255]+S[n>>16&255]+S[n>>24&255]+S[i>>0&255]+S[i>>8&255]+S[i>>16&255]+S[i>>24&255]}const B={get(t="normal"){if(typeof t!="number"){return this[t]||this.normal}else{return t}},highest:1e5,high:1e3,normal:0,low:-1e3,lowest:-1e5};const M=B;function L(t,e){const n=M.get(e.priority);for(let i=0;i<t.length;i++){if(M.get(t[i].priority)<n){t.splice(i,0,e);return}}t.push(e)}const N="https://ckeditor.com/docs/ckeditor5/latest/support/error-codes.html";class z extends Error{constructor(t,e,n){super(V(t,n));this.name="CKEditorError";this.context=e;this.data=n}is(t){return t==="CKEditorError"}static rethrowUnexpectedError(t,e){if(t.is&&t.is("CKEditorError")){throw t}const n=new z(t.message,e);n.stack=t.stack;throw n}}function P(t,e){console.warn(...F(t,e))}function R(t,e){console.error(...F(t,e))}function O(t){return`\nRead more: ${N}#error-${t}`}function V(t,e){const n=new WeakSet;const i=(t,e)=>{if(typeof e==="object"&&e!==null){if(n.has(e)){return`[object ${e.constructor.name}]`}n.add(e)}return e};const o=e?` ${JSON.stringify(e,i)}`:"";const r=O(t);return t+o+r}function F(t,e){const n=O(t);return e?[t,e,n]:[t,n]}const j="36.0.1";const H=null&&j;const U=typeof window==="object"?window:n.g;if(U.CKEDITOR_VERSION){throw new z("ckeditor-duplicated-modules",null)}else{U.CKEDITOR_VERSION=j}const W=Symbol("listeningTo");const q=Symbol("emitterId");const $=Symbol("delegations");const G=K(Object);function K(t){if(!t){return G}class e extends t{on(t,e,n){this.listenTo(this,t,e,n)}once(t,e,n){let i=false;const o=(t,...n)=>{if(!i){i=true;t.off();e.call(this,t,...n)}};this.listenTo(this,t,o,n)}off(t,e){this.stopListening(this,t,e)}listenTo(t,e,n,i={}){let o,r;if(!this[W]){this[W]={}}const s=this[W];if(!Q(t)){Z(t)}const a=Q(t);if(!(o=s[a])){o=s[a]={emitter:t,callbacks:{}}}if(!(r=o.callbacks[e])){r=o.callbacks[e]=[]}r.push(n);ot(this,t,e,n,i)}stopListening(t,e,n){const i=this[W];let o=t&&Q(t);const r=i&&o?i[o]:undefined;const s=r&&e?r.callbacks[e]:undefined;if(!i||t&&!r||e&&!s){return}if(n){rt(this,t,e,n);const i=s.indexOf(n);if(i!==-1){if(s.length===1){delete r.callbacks[e]}else{rt(this,t,e,n)}}}else if(s){while(n=s.pop()){rt(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[W]}}fire(t,...e){try{const n=t instanceof T?t:new T(this,t);const i=n.name;let o=nt(this,i);n.path.push(this);if(o){const t=[n,...e];o=Array.from(o);for(let e=0;e<o.length;e++){o[e].callback.apply(this,t);if(n.off.called){delete n.off.called;this._removeEventListener(i,o[e].callback)}if(n.stop.called){break}}}const r=this[$];if(r){const t=r.get(i);const o=r.get("*");if(t){it(t,n,e)}if(o){it(o,n,e)}}return n.return}catch(t){z.rethrowUnexpectedError(t,this)}}delegate(...t){return{to:(e,n)=>{if(!this[$]){this[$]=new Map}t.forEach((t=>{const i=this[$].get(t);if(!i){this[$].set(t,new Map([[e,n]]))}else{i.set(e,n)}}))}}}stopDelegating(t,e){if(!this[$]){return}if(!t){this[$].clear()}else if(!e){this[$].delete(t)}else{const n=this[$].get(t);if(n){n.delete(e)}}}_addEventListener(t,e,n){tt(this,t);const i=et(this,t);const o=M.get(n.priority);const r={callback:e,priority:o};for(const t of i){L(t,r)}}_removeEventListener(t,e){const n=et(this,t);for(const t of n){for(let n=0;n<t.length;n++){if(t[n].callback==e){t.splice(n,1);n--}}}}}return e}["on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{K[t]=G.prototype[t]}));function Y(t,e){const n=t[W];if(n&&n[e]){return n[e].emitter}return null}function Z(t,e){if(!t[q]){t[q]=e||I()}}function Q(t){return t[q]}function J(t){if(!t._events){Object.defineProperty(t,"_events",{value:{}})}return t._events}function X(){return{callbacks:[],childEvents:[]}}function tt(t,e){const n=J(t);if(n[e]){return}let i=e;let o=null;const r=[];while(i!==""){if(n[i]){break}n[i]=X();r.push(n[i]);if(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)}}function et(t,e){const n=J(t)[e];if(!n){return[]}let i=[n.callbacks];for(let e=0;e<n.childEvents.length;e++){const o=et(t,n.childEvents[e]);i=i.concat(o)}return i}function nt(t,e){let n;if(!t._events||!(n=t._events[e])||!n.callbacks.length){if(e.indexOf(":")>-1){return nt(t,e.substr(0,e.lastIndexOf(":")))}else{return null}}return n.callbacks}function it(t,e,n){for(let[i,o]of t){if(!o){o=e.name}else if(typeof o=="function"){o=o(e.name)}const t=new T(e.source,o);t.path=[...e.path];i.fire(t,...n)}}function ot(t,e,n,i,o){if(e._addEventListener){e._addEventListener(n,i,o)}else{t._addEventListener.call(e,n,i,o)}}function rt(t,e,n,i){if(e._removeEventListener){e._removeEventListener(n,i)}else{t._removeEventListener.call(e,n,i)}}function st(t){var e=typeof t;return t!=null&&(e=="object"||e=="function")}const at=st;const ct=Symbol("observableProperties");const lt=Symbol("boundObservables");const dt=Symbol("boundProperties");const ut=Symbol("decoratedMethods");const ht=Symbol("decoratedOriginal");const gt=mt(K());function mt(t){if(!t){return gt}class e extends t{set(t,e){if(at(t)){Object.keys(t).forEach((e=>{this.set(e,t[e])}),this);return}ft(this);const n=this[ct];if(t in this&&!n.has(t)){throw new z("observable-set-cannot-override",this)}Object.defineProperty(this,t,{enumerable:true,configurable:true,get(){return n.get(t)},set(e){const i=n.get(t);let o=this.fire(`set:${t}`,t,e,i);if(o===undefined){o=e}if(i!==o||!n.has(t)){n.set(t,o);this.fire(`change:${t}`,t,o,i)}}});this[t]=e}bind(...t){if(!t.length||!wt(t)){throw new z("observable-bind-wrong-properties",this)}if(new Set(t).size!==t.length){throw new z("observable-bind-duplicate-properties",this)}ft(this);const e=this[dt];t.forEach((t=>{if(e.has(t)){throw new z("observable-bind-rebind",this)}}));const n=new Map;t.forEach((t=>{const i={property:t,to:[]};e.set(t,i);n.set(t,i)}));return{to:pt,toMany:bt,_observable:this,_bindProperties:t,_to:[],_bindings:n}}unbind(...t){if(!this[ct]){return}const e=this[dt];const n=this[lt];if(t.length){if(!wt(t)){throw new z("observable-unbind-wrong-properties",this)}t.forEach((t=>{const i=e.get(t);if(!i){return}i.to.forEach((([t,e])=>{const o=n.get(t);const r=o[e];r.delete(i);if(!r.size){delete o[e]}if(!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){ft(this);const e=this[t];if(!e){throw new z("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][ht]=e;if(!this[ut]){this[ut]=[]}this[ut].push(t)}stopListening(t,e,n){if(!t&&this[ut]){for(const t of this[ut]){this[t]=this[t][ht]}delete this[ut]}super.stopListening(t,e,n)}}return e}["set","bind","unbind","decorate","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{mt[t]=gt.prototype[t]}));function ft(t){if(t[ct]){return}Object.defineProperty(t,ct,{value:new Map});Object.defineProperty(t,lt,{value:new Map});Object.defineProperty(t,dt,{value:new Map})}function pt(...t){const e=At(...t);const n=Array.from(this._bindings.keys());const i=n.length;if(!e.callback&&e.to.length>1){throw new z("observable-bind-to-no-callback",this)}if(i>1&&e.callback){throw new z("observable-bind-to-extra-callback",this)}e.to.forEach((t=>{if(t.properties.length&&t.properties.length!==i){throw new z("observable-bind-to-properties-length",this)}if(!t.properties.length){t.properties=this._bindProperties}}));this._to=e.to;if(e.callback){this._bindings.get(n[0]).callback=e.callback}yt(this._observable,this._to);_t(this);this._bindProperties.forEach((t=>{vt(this._observable,t)}))}function bt(t,e,n){if(this._bindings.size>1){throw new z("observable-bind-to-many-not-one-binding",this)}this.to(...kt(t,e),n)}function kt(t,e){const n=t.map((t=>[t,e]));return Array.prototype.concat.apply([],n)}function wt(t){return t.every((t=>typeof t=="string"))}function At(...t){if(!t.length){throw new z("observable-bind-to-parse-error",null)}const e={to:[]};let n;if(typeof t[t.length-1]=="function"){e.callback=t.pop()}t.forEach((t=>{if(typeof t=="string"){n.properties.push(t)}else if(typeof t=="object"){n={observable:t,properties:[]};e.to.push(n)}else{throw new z("observable-bind-to-parse-error",null)}}));return e}function Ct(t,e,n,i){const o=t[lt];const r=o.get(n);const s=r||{};if(!s[i]){s[i]=new Set}s[i].add(e);if(!r){o.set(n,s)}}function _t(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]);Ct(t._observable,n,o.observable,e)}))}))}function vt(t,e){const n=t[dt];const i=n.get(e);let o;if(i.callback){o=i.callback.apply(t,i.to.map((t=>t[0][t[1]])))}else{o=i.to[0];o=o[0][o[1]]}if(Object.prototype.hasOwnProperty.call(t,e)){t[e]=o}else{t.set(e,o)}}function yt(t,e){e.forEach((e=>{const n=t[lt];let i;if(!n.get(e.observable)){t.listenTo(e.observable,"change",((o,r)=>{i=n.get(e.observable)[r];if(i){i.forEach((e=>{vt(t,e.property)}))}}))}}))}class xt{constructor(){this._replacedElements=[]}replace(t,e){this._replacedElements.push({element:t,newElement:e});t.style.display="none";if(e){t.parentNode.insertBefore(e,t.nextSibling)}}restore(){this._replacedElements.forEach((({element:t,newElement:e})=>{t.style.display="";if(e){e.remove()}}));this._replacedElements=[]}}function Et(t){let e=0;for(const n of t){e++}return e}function Dt(t,e){const n=Math.min(t.length,e.length);for(let i=0;i<n;i++){if(t[i]!=e[i]){return i}}if(t.length==e.length){return"same"}else if(t.length<e.length){return"prefix"}else{return"extension"}}function Tt(t){return!!(t&&t[Symbol.iterator])}var St=typeof global=="object"&&global&&global.Object===Object&&global;const It=St;var Bt=typeof self=="object"&&self&&self.Object===Object&&self;var Mt=It||Bt||Function("return this")();const Lt=Mt;var Nt=Lt.Symbol;const zt=Nt;var Pt=Object.prototype;var Rt=Pt.hasOwnProperty;var Ot=Pt.toString;var Vt=zt?zt.toStringTag:undefined;function Ft(t){var e=Rt.call(t,Vt),n=t[Vt];try{t[Vt]=undefined;var i=true}catch(t){}var o=Ot.call(t);if(i){if(e){t[Vt]=n}else{delete t[Vt]}}return o}const jt=Ft;var Ht=Object.prototype;var Ut=Ht.toString;function Wt(t){return Ut.call(t)}const qt=Wt;var $t="[object Null]",Gt="[object Undefined]";var Kt=zt?zt.toStringTag:undefined;function Yt(t){if(t==null){return t===undefined?Gt:$t}return Kt&&Kt in Object(t)?jt(t):qt(t)}const Zt=Yt;var Qt=Array.isArray;const Jt=Qt;function Xt(t){return t!=null&&typeof t=="object"}const te=Xt;var ee="[object String]";function ne(t){return typeof t=="string"||!Jt(t)&&te(t)&&Zt(t)==ee}const ie=ne;function oe(t,e,n={},i=[]){const o=n&&n.xmlns;const r=o?t.createElementNS(o,e):t.createElement(e);for(const t in n){r.setAttribute(t,n[t])}if(ie(i)||!Tt(i)){i=[i]}for(let e of i){if(ie(e)){e=t.createTextNode(e)}r.appendChild(e)}return r}function re(t,e){return function(n){return t(e(n))}}const se=re;var ae=se(Object.getPrototypeOf,Object);const ce=ae;var le="[object Object]";var de=Function.prototype,ue=Object.prototype;var he=de.toString;var ge=ue.hasOwnProperty;var me=he.call(Object);function fe(t){if(!te(t)||Zt(t)!=le){return false}var e=ce(t);if(e===null){return true}var n=ge.call(e,"constructor")&&e.constructor;return typeof n=="function"&&n instanceof n&&he.call(n)==me}const pe=fe;function be(){this.__data__=[];this.size=0}const ke=be;function we(t,e){return t===e||t!==t&&e!==e}const Ae=we;function Ce(t,e){var n=t.length;while(n--){if(Ae(t[n][0],e)){return n}}return-1}const _e=Ce;var ve=Array.prototype;var ye=ve.splice;function xe(t){var e=this.__data__,n=_e(e,t);if(n<0){return false}var i=e.length-1;if(n==i){e.pop()}else{ye.call(e,n,1)}--this.size;return true}const Ee=xe;function De(t){var e=this.__data__,n=_e(e,t);return n<0?undefined:e[n][1]}const Te=De;function Se(t){return _e(this.__data__,t)>-1}const Ie=Se;function Be(t,e){var n=this.__data__,i=_e(n,t);if(i<0){++this.size;n.push([t,e])}else{n[i][1]=e}return this}const Me=Be;function Le(t){var e=-1,n=t==null?0:t.length;this.clear();while(++e<n){var i=t[e];this.set(i[0],i[1])}}Le.prototype.clear=ke;Le.prototype["delete"]=Ee;Le.prototype.get=Te;Le.prototype.has=Ie;Le.prototype.set=Me;const Ne=Le;function ze(){this.__data__=new Ne;this.size=0}const Pe=ze;function Re(t){var e=this.__data__,n=e["delete"](t);this.size=e.size;return n}const Oe=Re;function Ve(t){return this.__data__.get(t)}const Fe=Ve;function je(t){return this.__data__.has(t)}const He=je;var Ue="[object AsyncFunction]",We="[object Function]",qe="[object GeneratorFunction]",$e="[object Proxy]";function Ge(t){if(!at(t)){return false}var e=Zt(t);return e==We||e==qe||e==Ue||e==$e}const Ke=Ge;var Ye=Lt["__core-js_shared__"];const Ze=Ye;var Qe=function(){var t=/[^.]+$/.exec(Ze&&Ze.keys&&Ze.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();function Je(t){return!!Qe&&Qe in t}const Xe=Je;var tn=Function.prototype;var en=tn.toString;function nn(t){if(t!=null){try{return en.call(t)}catch(t){}try{return t+""}catch(t){}}return""}const on=nn;var rn=/[\\^$.*+?()[\]{}|]/g;var sn=/^\[object .+?Constructor\]$/;var an=Function.prototype,cn=Object.prototype;var ln=an.toString;var dn=cn.hasOwnProperty;var un=RegExp("^"+ln.call(dn).replace(rn,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function hn(t){if(!at(t)||Xe(t)){return false}var e=Ke(t)?un:sn;return e.test(on(t))}const gn=hn;function mn(t,e){return t==null?undefined:t[e]}const fn=mn;function pn(t,e){var n=fn(t,e);return gn(n)?n:undefined}const bn=pn;var kn=bn(Lt,"Map");const wn=kn;var An=bn(Object,"create");const Cn=An;function _n(){this.__data__=Cn?Cn(null):{};this.size=0}const vn=_n;function yn(t){var e=this.has(t)&&delete this.__data__[t];this.size-=e?1:0;return e}const xn=yn;var En="__lodash_hash_undefined__";var Dn=Object.prototype;var Tn=Dn.hasOwnProperty;function Sn(t){var e=this.__data__;if(Cn){var n=e[t];return n===En?undefined:n}return Tn.call(e,t)?e[t]:undefined}const In=Sn;var Bn=Object.prototype;var Mn=Bn.hasOwnProperty;function Ln(t){var e=this.__data__;return Cn?e[t]!==undefined:Mn.call(e,t)}const Nn=Ln;var zn="__lodash_hash_undefined__";function Pn(t,e){var n=this.__data__;this.size+=this.has(t)?0:1;n[t]=Cn&&e===undefined?zn:e;return this}const Rn=Pn;function On(t){var e=-1,n=t==null?0:t.length;this.clear();while(++e<n){var i=t[e];this.set(i[0],i[1])}}On.prototype.clear=vn;On.prototype["delete"]=xn;On.prototype.get=In;On.prototype.has=Nn;On.prototype.set=Rn;const Vn=On;function Fn(){this.size=0;this.__data__={hash:new Vn,map:new(wn||Ne),string:new Vn}}const jn=Fn;function Hn(t){var e=typeof t;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?t!=="__proto__":t===null}const Un=Hn;function Wn(t,e){var n=t.__data__;return Un(e)?n[typeof e=="string"?"string":"hash"]:n.map}const qn=Wn;function $n(t){var e=qn(this,t)["delete"](t);this.size-=e?1:0;return e}const Gn=$n;function Kn(t){return qn(this,t).get(t)}const Yn=Kn;function Zn(t){return qn(this,t).has(t)}const Qn=Zn;function Jn(t,e){var n=qn(this,t),i=n.size;n.set(t,e);this.size+=n.size==i?0:1;return this}const Xn=Jn;function ti(t){var e=-1,n=t==null?0:t.length;this.clear();while(++e<n){var i=t[e];this.set(i[0],i[1])}}ti.prototype.clear=jn;ti.prototype["delete"]=Gn;ti.prototype.get=Yn;ti.prototype.has=Qn;ti.prototype.set=Xn;const ei=ti;var ni=200;function ii(t,e){var n=this.__data__;if(n instanceof Ne){var i=n.__data__;if(!wn||i.length<ni-1){i.push([t,e]);this.size=++n.size;return this}n=this.__data__=new ei(i)}n.set(t,e);this.size=n.size;return this}const oi=ii;function ri(t){var e=this.__data__=new Ne(t);this.size=e.size}ri.prototype.clear=Pe;ri.prototype["delete"]=Oe;ri.prototype.get=Fe;ri.prototype.has=He;ri.prototype.set=oi;const si=ri;function ai(t,e){var n=-1,i=t==null?0:t.length;while(++n<i){if(e(t[n],n,t)===false){break}}return t}const ci=ai;var li=function(){try{var t=bn(Object,"defineProperty");t({},"",{});return t}catch(t){}}();const di=li;function ui(t,e,n){if(e=="__proto__"&&di){di(t,e,{configurable:true,enumerable:true,value:n,writable:true})}else{t[e]=n}}const hi=ui;var gi=Object.prototype;var mi=gi.hasOwnProperty;function fi(t,e,n){var i=t[e];if(!(mi.call(t,e)&&Ae(i,n))||n===undefined&&!(e in t)){hi(t,e,n)}}const pi=fi;function bi(t,e,n,i){var o=!n;n||(n={});var r=-1,s=e.length;while(++r<s){var a=e[r];var c=i?i(n[a],t[a],a,n,t):undefined;if(c===undefined){c=t[a]}if(o){hi(n,a,c)}else{pi(n,a,c)}}return n}const ki=bi;function wi(t,e){var n=-1,i=Array(t);while(++n<t){i[n]=e(n)}return i}const Ai=wi;var Ci="[object Arguments]";function _i(t){return te(t)&&Zt(t)==Ci}const vi=_i;var yi=Object.prototype;var xi=yi.hasOwnProperty;var Ei=yi.propertyIsEnumerable;var Di=vi(function(){return arguments}())?vi:function(t){return te(t)&&xi.call(t,"callee")&&!Ei.call(t,"callee")};const Ti=Di;function Si(){return false}const Ii=Si;var Bi=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var Mi=Bi&&typeof module=="object"&&module&&!module.nodeType&&module;var Li=Mi&&Mi.exports===Bi;var Ni=Li?Lt.Buffer:undefined;var zi=Ni?Ni.isBuffer:undefined;var Pi=zi||Ii;const Ri=Pi;var Oi=9007199254740991;var Vi=/^(?:0|[1-9]\d*)$/;function Fi(t,e){var n=typeof t;e=e==null?Oi:e;return!!e&&(n=="number"||n!="symbol"&&Vi.test(t))&&(t>-1&&t%1==0&&t<e)}const ji=Fi;var Hi=9007199254740991;function Ui(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Hi}const Wi=Ui;var qi="[object Arguments]",$i="[object Array]",Gi="[object Boolean]",Ki="[object Date]",Yi="[object Error]",Zi="[object Function]",Qi="[object Map]",Ji="[object Number]",Xi="[object Object]",to="[object RegExp]",eo="[object Set]",no="[object String]",io="[object WeakMap]";var oo="[object ArrayBuffer]",ro="[object DataView]",so="[object Float32Array]",ao="[object Float64Array]",co="[object Int8Array]",lo="[object Int16Array]",uo="[object Int32Array]",ho="[object Uint8Array]",go="[object Uint8ClampedArray]",mo="[object Uint16Array]",fo="[object Uint32Array]";var po={};po[so]=po[ao]=po[co]=po[lo]=po[uo]=po[ho]=po[go]=po[mo]=po[fo]=true;po[qi]=po[$i]=po[oo]=po[Gi]=po[ro]=po[Ki]=po[Yi]=po[Zi]=po[Qi]=po[Ji]=po[Xi]=po[to]=po[eo]=po[no]=po[io]=false;function bo(t){return te(t)&&Wi(t.length)&&!!po[Zt(t)]}const ko=bo;function wo(t){return function(e){return t(e)}}const Ao=wo;var Co=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var _o=Co&&typeof module=="object"&&module&&!module.nodeType&&module;var vo=_o&&_o.exports===Co;var yo=vo&&It.process;var xo=function(){try{var t=_o&&_o.require&&_o.require("util").types;if(t){return t}return yo&&yo.binding&&yo.binding("util")}catch(t){}}();const Eo=xo;var Do=Eo&&Eo.isTypedArray;var To=Do?Ao(Do):ko;const So=To;var Io=Object.prototype;var Bo=Io.hasOwnProperty;function Mo(t,e){var n=Jt(t),i=!n&&Ti(t),o=!n&&!i&&Ri(t),r=!n&&!i&&!o&&So(t),s=n||i||o||r,a=s?Ai(t.length,String):[],c=a.length;for(var l in t){if((e||Bo.call(t,l))&&!(s&&(l=="length"||o&&(l=="offset"||l=="parent")||r&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||ji(l,c)))){a.push(l)}}return a}const Lo=Mo;var No=Object.prototype;function zo(t){var e=t&&t.constructor,n=typeof e=="function"&&e.prototype||No;return t===n}const Po=zo;var Ro=se(Object.keys,Object);const Oo=Ro;var Vo=Object.prototype;var Fo=Vo.hasOwnProperty;function jo(t){if(!Po(t)){return Oo(t)}var e=[];for(var n in Object(t)){if(Fo.call(t,n)&&n!="constructor"){e.push(n)}}return e}const Ho=jo;function Uo(t){return t!=null&&Wi(t.length)&&!Ke(t)}const Wo=Uo;function qo(t){return Wo(t)?Lo(t):Ho(t)}const $o=qo;function Go(t,e){return t&&ki(e,$o(e),t)}const Ko=Go;function Yo(t){var e=[];if(t!=null){for(var n in Object(t)){e.push(n)}}return e}const Zo=Yo;var Qo=Object.prototype;var Jo=Qo.hasOwnProperty;function Xo(t){if(!at(t)){return Zo(t)}var e=Po(t),n=[];for(var i in t){if(!(i=="constructor"&&(e||!Jo.call(t,i)))){n.push(i)}}return n}const tr=Xo;function er(t){return Wo(t)?Lo(t,true):tr(t)}const nr=er;function ir(t,e){return t&&ki(e,nr(e),t)}const or=ir;var rr=typeof exports=="object"&&exports&&!exports.nodeType&&exports;var sr=rr&&typeof module=="object"&&module&&!module.nodeType&&module;var ar=sr&&sr.exports===rr;var cr=ar?Lt.Buffer:undefined,lr=cr?cr.allocUnsafe:undefined;function dr(t,e){if(e){return t.slice()}var n=t.length,i=lr?lr(n):new t.constructor(n);t.copy(i);return i}const ur=dr;function hr(t,e){var n=-1,i=t.length;e||(e=Array(i));while(++n<i){e[n]=t[n]}return e}const gr=hr;function mr(t,e){var n=-1,i=t==null?0:t.length,o=0,r=[];while(++n<i){var s=t[n];if(e(s,n,t)){r[o++]=s}}return r}const fr=mr;function pr(){return[]}const br=pr;var kr=Object.prototype;var wr=kr.propertyIsEnumerable;var Ar=Object.getOwnPropertySymbols;var Cr=!Ar?br:function(t){if(t==null){return[]}t=Object(t);return fr(Ar(t),(function(e){return wr.call(t,e)}))};const _r=Cr;function vr(t,e){return ki(t,_r(t),e)}const yr=vr;function xr(t,e){var n=-1,i=e.length,o=t.length;while(++n<i){t[o+n]=e[n]}return t}const Er=xr;var Dr=Object.getOwnPropertySymbols;var Tr=!Dr?br:function(t){var e=[];while(t){Er(e,_r(t));t=ce(t)}return e};const Sr=Tr;function Ir(t,e){return ki(t,Sr(t),e)}const Br=Ir;function Mr(t,e,n){var i=e(t);return Jt(t)?i:Er(i,n(t))}const Lr=Mr;function Nr(t){return Lr(t,$o,_r)}const zr=Nr;function Pr(t){return Lr(t,nr,Sr)}const Rr=Pr;var Or=bn(Lt,"DataView");const Vr=Or;var Fr=bn(Lt,"Promise");const jr=Fr;var Hr=bn(Lt,"Set");const Ur=Hr;var Wr=bn(Lt,"WeakMap");const qr=Wr;var $r="[object Map]",Gr="[object Object]",Kr="[object Promise]",Yr="[object Set]",Zr="[object WeakMap]";var Qr="[object DataView]";var Jr=on(Vr),Xr=on(wn),ts=on(jr),es=on(Ur),ns=on(qr);var is=Zt;if(Vr&&is(new Vr(new ArrayBuffer(1)))!=Qr||wn&&is(new wn)!=$r||jr&&is(jr.resolve())!=Kr||Ur&&is(new Ur)!=Yr||qr&&is(new qr)!=Zr){is=function(t){var e=Zt(t),n=e==Gr?t.constructor:undefined,i=n?on(n):"";if(i){switch(i){case Jr:return Qr;case Xr:return $r;case ts:return Kr;case es:return Yr;case ns:return Zr}}return e}}const os=is;var rs=Object.prototype;var ss=rs.hasOwnProperty;function as(t){var e=t.length,n=new t.constructor(e);if(e&&typeof t[0]=="string"&&ss.call(t,"index")){n.index=t.index;n.input=t.input}return n}const cs=as;var ls=Lt.Uint8Array;const ds=ls;function us(t){var e=new t.constructor(t.byteLength);new ds(e).set(new ds(t));return e}const hs=us;function gs(t,e){var n=e?hs(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}const ms=gs;var fs=/\w*$/;function ps(t){var e=new t.constructor(t.source,fs.exec(t));e.lastIndex=t.lastIndex;return e}const bs=ps;var ks=zt?zt.prototype:undefined,ws=ks?ks.valueOf:undefined;function As(t){return ws?Object(ws.call(t)):{}}const Cs=As;function _s(t,e){var n=e?hs(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}const vs=_s;var ys="[object Boolean]",xs="[object Date]",Es="[object Map]",Ds="[object Number]",Ts="[object RegExp]",Ss="[object Set]",Is="[object String]",Bs="[object Symbol]";var Ms="[object ArrayBuffer]",Ls="[object DataView]",Ns="[object Float32Array]",zs="[object Float64Array]",Ps="[object Int8Array]",Rs="[object Int16Array]",Os="[object Int32Array]",Vs="[object Uint8Array]",Fs="[object Uint8ClampedArray]",js="[object Uint16Array]",Hs="[object Uint32Array]";function Us(t,e,n){var i=t.constructor;switch(e){case Ms:return hs(t);case ys:case xs:return new i(+t);case Ls:return ms(t,n);case Ns:case zs:case Ps:case Rs:case Os:case Vs:case Fs:case js:case Hs:return vs(t,n);case Es:return new i;case Ds:case Is:return new i(t);case Ts:return bs(t);case Ss:return new i;case Bs:return Cs(t)}}const Ws=Us;var qs=Object.create;var $s=function(){function t(){}return function(e){if(!at(e)){return{}}if(qs){return qs(e)}t.prototype=e;var n=new t;t.prototype=undefined;return n}}();const Gs=$s;function Ks(t){return typeof t.constructor=="function"&&!Po(t)?Gs(ce(t)):{}}const Ys=Ks;var Zs="[object Map]";function Qs(t){return te(t)&&os(t)==Zs}const Js=Qs;var Xs=Eo&&Eo.isMap;var ta=Xs?Ao(Xs):Js;const ea=ta;var na="[object Set]";function ia(t){return te(t)&&os(t)==na}const oa=ia;var ra=Eo&&Eo.isSet;var sa=ra?Ao(ra):oa;const aa=sa;var ca=1,la=2,da=4;var ua="[object Arguments]",ha="[object Array]",ga="[object Boolean]",ma="[object Date]",fa="[object Error]",pa="[object Function]",ba="[object GeneratorFunction]",ka="[object Map]",wa="[object Number]",Aa="[object Object]",Ca="[object RegExp]",_a="[object Set]",va="[object String]",ya="[object Symbol]",xa="[object WeakMap]";var Ea="[object ArrayBuffer]",Da="[object DataView]",Ta="[object Float32Array]",Sa="[object Float64Array]",Ia="[object Int8Array]",Ba="[object Int16Array]",Ma="[object Int32Array]",La="[object Uint8Array]",Na="[object Uint8ClampedArray]",za="[object Uint16Array]",Pa="[object Uint32Array]";var Ra={};Ra[ua]=Ra[ha]=Ra[Ea]=Ra[Da]=Ra[ga]=Ra[ma]=Ra[Ta]=Ra[Sa]=Ra[Ia]=Ra[Ba]=Ra[Ma]=Ra[ka]=Ra[wa]=Ra[Aa]=Ra[Ca]=Ra[_a]=Ra[va]=Ra[ya]=Ra[La]=Ra[Na]=Ra[za]=Ra[Pa]=true;Ra[fa]=Ra[pa]=Ra[xa]=false;function Oa(t,e,n,i,o,r){var s,a=e&ca,c=e&la,l=e&da;if(n){s=o?n(t,i,o,r):n(t)}if(s!==undefined){return s}if(!at(t)){return t}var d=Jt(t);if(d){s=cs(t);if(!a){return gr(t,s)}}else{var u=os(t),h=u==pa||u==ba;if(Ri(t)){return ur(t,a)}if(u==Aa||u==ua||h&&!o){s=c||h?{}:Ys(t);if(!a){return c?Br(t,or(s,t)):yr(t,Ko(s,t))}}else{if(!Ra[u]){return o?t:{}}s=Ws(t,u,a)}}r||(r=new si);var g=r.get(t);if(g){return g}r.set(t,s);if(aa(t)){t.forEach((function(i){s.add(Oa(i,e,n,i,t,r))}))}else if(ea(t)){t.forEach((function(i,o){s.set(o,Oa(i,e,n,o,t,r))}))}var m=l?c?Rr:zr:c?nr:$o;var f=d?undefined:m(t);ci(f||t,(function(i,o){if(f){o=i;i=t[o]}pi(s,o,Oa(i,e,n,o,t,r))}));return s}const Va=Oa;var Fa=1,ja=4;function Ha(t,e){e=typeof e=="function"?e:undefined;return Va(t,Fa|ja,e)}const Ua=Ha;function Wa(t){return te(t)&&t.nodeType===1&&!pe(t)}const qa=Wa;class $a{constructor(t,e){this._config={};if(e){this.define(Ga(e))}if(t){this._setObjectToTarget(this._config,t)}}set(t,e){this._setToTarget(this._config,t,e)}define(t,e){const n=true;this._setToTarget(this._config,t,e,n)}get(t){return this._getFromSource(this._config,t)}*names(){for(const t of Object.keys(this._config)){yield t}}_setToTarget(t,e,n,i=false){if(pe(e)){this._setObjectToTarget(t,e,i);return}const o=e.split(".");e=o.pop();for(const e of o){if(!pe(t[e])){t[e]={}}t=t[e]}if(pe(n)){if(!pe(t[e])){t[e]={}}t=t[e];this._setObjectToTarget(t,n,i);return}if(i&&typeof t[e]!="undefined"){return}t[e]=n}_getFromSource(t,e){const n=e.split(".");e=n.pop();for(const e of n){if(!pe(t[e])){t=null;break}t=t[e]}return t?Ga(t[e]):undefined}_setObjectToTarget(t,e,n){Object.keys(e).forEach((i=>{this._setToTarget(t,i,e[i],n)}))}}function Ga(t){return Ua(t,Ka)}function Ka(t){return qa(t)?t:undefined}function Ya(t){if(t){if(t.defaultView){return t instanceof t.defaultView.Document}else if(t.ownerDocument&&t.ownerDocument.defaultView){return t instanceof t.ownerDocument.defaultView.Node}}return false}function Za(t){const e=Object.prototype.toString.apply(t);if(e=="[object Window]"){return true}if(e=="[object global]"){return true}return false}const Qa=Ja(K());function Ja(t){if(!t){return Qa}class e extends t{listenTo(t,e,n,i={}){if(Ya(t)||Za(t)){const o={capture:!!i.useCapture,passive:!!i.usePassive};const r=this._getProxyEmitter(t,o)||new Xa(t,o);this.listenTo(r,e,n,i)}else{super.listenTo(t,e,n,i)}}stopListening(t,e,n){if(Ya(t)||Za(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 Y(this,ec(t,e))}_getAllProxyEmitters(t){return[{capture:false,passive:false},{capture:false,passive:true},{capture:true,passive:false},{capture:true,passive:true}].map((e=>this._getProxyEmitter(t,e))).filter((t=>!!t))}}return e}["_getProxyEmitter","_getAllProxyEmitters","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{Ja[t]=Qa.prototype[t]}));class Xa extends(K()){constructor(t,e){super();Z(this,ec(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);if(!this._domListeners){this._domListeners={}}this._domListeners[t]=e}detach(t){let e;if(this._domListeners[t]&&(!(e=this._events[t])||!e.callbacks.length)){this._domListeners[t].removeListener()}}_addEventListener(t,e,n){this.attach(t);K().prototype._addEventListener.call(this,t,e,n)}_removeEventListener(t,e){K().prototype._removeEventListener.call(this,t,e);this.detach(t)}_createDomListener(t){const e=e=>{this.fire(t,e)};e.removeListener=()=>{this._domNode.removeEventListener(t,e,this._options);delete this._domListeners[t]};return e}}function tc(t){return t["data-ck-expando"]||(t["data-ck-expando"]=I())}function ec(t,e){let n=tc(t);for(const t of Object.keys(e).sort()){if(e[t]){n+="-"+t}}return n}let nc;try{nc={window,document}}catch(t){nc={window:{},document:{}}}const ic=nc;function oc(t){const e=[];let n=t;while(n&&n.nodeType!=Node.DOCUMENT_NODE){e.unshift(n);n=n.parentNode}return e}function rc(t){if(t instanceof HTMLTextAreaElement){return t.value}return t.innerHTML}function sc(t){return Object.prototype.toString.call(t)=="[object Text]"}function ac(t){return Object.prototype.toString.apply(t)=="[object Range]"}function cc(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)}}const lc=["top","right","bottom","left","width","height"];class dc{constructor(t){const e=ac(t);Object.defineProperty(this,"_source",{value:t._source||t,writable:true,enumerable:false});if(gc(t)||e){if(e){const e=dc.getDomRangeRects(t);uc(this,dc.getBoundingRect(e))}else{uc(this,t.getBoundingClientRect())}}else if(Za(t)){const{innerWidth:e,innerHeight:n}=t;uc(this,{top:0,right:e,bottom:n,left:0,width:e,height:n})}else{uc(this,t)}}clone(){return new dc(this)}moveTo(t,e){this.top=e;this.right=t+this.width;this.bottom=e+this.height;this.left=t;return this}moveBy(t,e){this.top+=e;this.right+=t;this.left+=t;this.bottom+=e;return 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};e.width=e.right-e.left;e.height=e.bottom-e.top;if(e.width<0||e.height<0){return null}else{return new dc(e)}}getIntersectionArea(t){const e=this.getIntersection(t);if(e){return e.getArea()}else{return 0}}getArea(){return this.width*this.height}getVisible(){const t=this._source;let e=this.clone();if(!hc(t)){let n=t.parentNode||t.commonAncestorContainer;while(n&&!hc(n)){const t=new dc(n);const i=e.getIntersection(t);if(i){if(i.getArea()<e.getArea()){e=i}}else{return null}n=n.parentNode}}return e}isEqual(t){for(const e of lc){if(this[e]!==t[e]){return false}}return true}contains(t){const e=this.getIntersection(t);return!!(e&&e.isEqual(t))}excludeScrollbarsAndBorders(){const t=this._source;let e,n,i;if(Za(t)){e=t.innerWidth-t.document.documentElement.clientWidth;n=t.innerHeight-t.document.documentElement.clientHeight;i=t.getComputedStyle(t.document.documentElement).direction}else{const o=cc(t);e=t.offsetWidth-t.clientWidth-o.left-o.right;n=t.offsetHeight-t.clientHeight-o.top-o.bottom;i=t.ownerDocument.defaultView.getComputedStyle(t).direction;this.left+=o.left;this.top+=o.top;this.right-=o.right;this.bottom-=o.bottom;this.width=this.right-this.left;this.height=this.bottom-this.top}this.width-=e;if(i==="ltr"){this.right-=e}else{this.left+=e}this.height-=n;this.bottom-=n;return this}static getDomRangeRects(t){const e=[];const n=Array.from(t.getClientRects());if(n.length){for(const t of n){e.push(new dc(t))}}else{let n=t.startContainer;if(sc(n)){n=n.parentNode}const i=new dc(n.getBoundingClientRect());i.right=i.left;i.width=0;e.push(i)}return e}static getBoundingRect(t){const e={left:Number.POSITIVE_INFINITY,top:Number.POSITIVE_INFINITY,right:Number.NEGATIVE_INFINITY,bottom:Number.NEGATIVE_INFINITY,width:0,height:0};let n=0;for(const i of t){n++;e.left=Math.min(e.left,i.left);e.top=Math.min(e.top,i.top);e.right=Math.max(e.right,i.right);e.bottom=Math.max(e.bottom,i.bottom)}if(n==0){return null}e.width=e.right-e.left;e.height=e.bottom-e.top;return new dc(e)}}function uc(t,e){for(const n of lc){t[n]=e[n]}}function hc(t){if(!gc(t)){return false}return t===t.ownerDocument.body}function gc(t){return t!==null&&typeof t==="object"&&t.nodeType===1&&typeof t.getBoundingClientRect==="function"}class mc{constructor(t,e){if(!mc._observerInstance){mc._createObserver()}this._element=t;this._callback=e;mc._addElementCallback(t,e);mc._observerInstance.observe(t)}destroy(){mc._deleteElementCallback(this._element,this._callback)}static _addElementCallback(t,e){if(!mc._elementCallbacks){mc._elementCallbacks=new Map}let n=mc._elementCallbacks.get(t);if(!n){n=new Set;mc._elementCallbacks.set(t,n)}n.add(e)}static _deleteElementCallback(t,e){const n=mc._getElementCallbacks(t);if(n){n.delete(e);if(!n.size){mc._elementCallbacks.delete(t);mc._observerInstance.unobserve(t)}}if(mc._elementCallbacks&&!mc._elementCallbacks.size){mc._observerInstance=null;mc._elementCallbacks=null}}static _getElementCallbacks(t){if(!mc._elementCallbacks){return null}return mc._elementCallbacks.get(t)}static _createObserver(){mc._observerInstance=new ic.window.ResizeObserver((t=>{for(const e of t){const t=mc._getElementCallbacks(e.target);if(t){for(const n of t){n(e)}}}}))}}mc._observerInstance=null;mc._elementCallbacks=null;function fc(t,e){if(t instanceof HTMLTextAreaElement){t.value=e}t.innerHTML=e}function pc(t){return e=>e+t}function bc(t){let e=0;while(t.previousSibling){t=t.previousSibling;e++}return e}function kc(t,e,n){t.insertBefore(n,t.childNodes[e]||null)}function wc(t){return t&&t.nodeType===Node.COMMENT_NODE}function Ac(t){return!!(t&&t.getClientRects&&t.getClientRects().length)}function Cc(t){if(!t||!t.parentNode){return null}if(t.offsetParent===ic.document.body){return null}return t.offsetParent}function _c({element:t,target:e,positions:n,limiter:i,fitInViewport:o,viewportOffsetConfig:r}){if(Ke(e)){e=e()}if(Ke(i)){i=i()}const s=Cc(t);const a=new dc(t);const c=new dc(e);let l;const d=o&&vc(r)||null;const u={targetRect:c,elementRect:a,positionedElementAncestor:s,viewportRect:d};if(!i&&!o){l=new Dc(n[0],u)}else{const t=i&&new dc(i).getVisible();Object.assign(u,{limiterRect:t,viewportRect:d});l=yc(n,u)||new Dc(n[0],u)}return l}function vc(t){t=Object.assign({top:0,bottom:0,left:0,right:0},t);const e=new dc(ic.window);e.top+=t.top;e.height-=t.top;e.bottom-=t.bottom;e.height-=t.bottom;return e}function yc(t,e){const{elementRect:n}=e;const i=n.getArea();const o=t.map((t=>new Dc(t,e))).filter((t=>!!t.name));let r=0;let s=null;for(const t of o){const{limiterIntersectionArea:e,viewportIntersectionArea:n}=t;if(e===i){return t}const o=n**2+e**2;if(o>r){r=o;s=t}}return s}function xc(t,e){const n=Ec(new dc(e));const i=cc(e);let o=0;let r=0;o-=n.left;r-=n.top;o+=e.scrollLeft;r+=e.scrollTop;o-=i.left;r-=i.top;t.moveBy(o,r)}function Ec(t){const{scrollX:e,scrollY:n}=ic.window;return t.clone().moveBy(e,n)}class Dc{constructor(t,e){const n=t(e.targetRect,e.elementRect,e.viewportRect);if(!n){return}const{left:i,top:o,name:r,config:s}=n;this.name=r;this.config=s;this._positioningFunctionCorrdinates={left:i,top:o};this._options=e}get left(){return this._absoluteRect.left}get top(){return this._absoluteRect.top}get limiterIntersectionArea(){const t=this._options.limiterRect;if(t){const e=this._options.viewportRect;if(e){const n=t.getIntersection(e);if(n){return n.getIntersectionArea(this._rect)}}else{return t.getIntersectionArea(this._rect)}}return 0}get viewportIntersectionArea(){const t=this._options.viewportRect;if(t){return t.getIntersectionArea(this._rect)}return 0}get _rect(){if(this._cachedRect){return this._cachedRect}this._cachedRect=this._options.elementRect.clone().moveTo(this._positioningFunctionCorrdinates.left,this._positioningFunctionCorrdinates.top);return this._cachedRect}get _absoluteRect(){if(this._cachedAbsoluteRect){return this._cachedAbsoluteRect}this._cachedAbsoluteRect=Ec(this._rect);if(this._options.positionedElementAncestor){xc(this._cachedAbsoluteRect,this._options.positionedElementAncestor)}return this._cachedAbsoluteRect}}function Tc(t){const e=t.parentNode;if(e){e.removeChild(t)}}function Sc({target:t,viewportOffset:e=0}){const n=Rc(t);let i=n;let o=null;while(i){let r;if(i==n){r=Oc(t)}else{r=Oc(o)}Mc(r,(()=>Vc(t,i)));const s=Vc(t,i);Bc(i,s,e);if(i.parent!=i){o=i.frameElement;i=i.parent;if(!o){return}}else{i=null}}}function Ic(t){const e=Oc(t);Mc(e,(()=>new Rect(t)))}function Bc(t,e,n){const i=e.clone().moveBy(0,n);const o=e.clone().moveBy(0,-n);const r=new dc(t).excludeScrollbarsAndBorders();const s=[o,i];if(!s.every((t=>r.contains(t)))){let{scrollX:s,scrollY:a}=t;if(Nc(o,r)){a-=r.top-e.top+n}else if(Lc(i,r)){a+=e.bottom-r.bottom+n}if(zc(e,r)){s-=r.left-e.left+n}else if(Pc(e,r)){s+=e.right-r.right+n}t.scrollTo(s,a)}}function Mc(t,e){const n=Rc(t);let i,o;while(t!=n.document.body){o=e();i=new dc(t).excludeScrollbarsAndBorders();if(!i.contains(o)){if(Nc(o,i)){t.scrollTop-=i.top-o.top}else if(Lc(o,i)){t.scrollTop+=o.bottom-i.bottom}if(zc(o,i)){t.scrollLeft-=i.left-o.left}else if(Pc(o,i)){t.scrollLeft+=o.right-i.right}}t=t.parentNode}}function Lc(t,e){return t.bottom>e.bottom}function Nc(t,e){return t.top<e.top}function zc(t,e){return t.left<e.left}function Pc(t,e){return t.right>e.right}function Rc(t){if(ac(t)){return t.startContainer.ownerDocument.defaultView}else{return t.ownerDocument.defaultView}}function Oc(t){if(ac(t)){let e=t.commonAncestorContainer;if(sc(e)){e=e.parentNode}return e}else{return t.parentNode}}function Vc(t,e){const n=Rc(t);const i=new dc(t);if(n===e){return i}else{let t=n;while(t!=e){const e=t.frameElement;const n=new dc(e).excludeScrollbarsAndBorders();i.moveBy(n.left,n.top);t=t.parent}}return i}const Fc={ctrl:"⌃",cmd:"⌘",alt:"⌥",shift:"⇧"};const jc={ctrl:"Ctrl+",alt:"Alt+",shift:"Shift+"};const Hc=Qc();const Uc=Object.fromEntries(Object.entries(Hc).map((([t,e])=>[e,t.charAt(0).toUpperCase()+t.slice(1)])));function Wc(t){let e;if(typeof t=="string"){e=Hc[t.toLowerCase()];if(!e){throw new z("keyboard-unknown-key",null,{key:t})}}else{e=t.keyCode+(t.altKey?Hc.alt:0)+(t.ctrlKey?Hc.ctrl:0)+(t.shiftKey?Hc.shift:0)+(t.metaKey?Hc.cmd:0)}return e}function qc(t){if(typeof t=="string"){t=Jc(t)}return t.map((t=>typeof t=="string"?Yc(t):t)).reduce(((t,e)=>e+t),0)}function $c(t){let e=qc(t);const n=Object.entries(l.isMac?Fc:jc);const i=n.reduce(((t,[n,i])=>{if((e&Hc[n])!=0){e&=~Hc[n];t+=i}return t}),"");return i+(e?Uc[e]:"")}function Gc(t){return t==Hc.arrowright||t==Hc.arrowleft||t==Hc.arrowup||t==Hc.arrowdown}function Kc(t,e){const n=e==="ltr";switch(t){case Hc.arrowleft:return n?"left":"right";case Hc.arrowright:return n?"right":"left";case Hc.arrowup:return"up";case Hc.arrowdown:return"down"}}function Yc(t){if(t.endsWith("!")){return Wc(t.slice(0,-1))}const e=Wc(t);return l.isMac&&e==Hc.ctrl?Hc.cmd:e}function Zc(t,e){const n=Kc(t,e);return n==="down"||n==="right"}function Qc(){const t={arrowleft:37,arrowup:38,arrowright:39,arrowdown:40,backspace:8,delete:46,enter:13,space:32,esc:27,tab:9,ctrl:1114112,shift:2228224,alt:4456448,cmd:8912896};for(let e=65;e<=90;e++){const n=String.fromCharCode(e);t[n.toLowerCase()]=e}for(let e=48;e<=57;e++){t[e-48]=e}for(let e=112;e<=123;e++){t["f"+(e-111)]=e}for(const e of"`-=[];',./\\"){t[e]=e.charCodeAt(0)}return t}function Jc(t){return t.split("+").map((t=>t.trim()))}function Xc(t){return Array.isArray(t)?t:[t]}if(!ic.window.CKEDITOR_TRANSLATIONS){ic.window.CKEDITOR_TRANSLATIONS={}}function tl(t,e,n){if(!global.window.CKEDITOR_TRANSLATIONS[t]){global.window.CKEDITOR_TRANSLATIONS[t]={}}const i=global.window.CKEDITOR_TRANSLATIONS[t];i.dictionary=i.dictionary||{};i.getPluralForm=n||i.getPluralForm;Object.assign(i.dictionary,e)}function el(t,e,n=1){if(typeof n!=="number"){throw new z("translation-service-quantity-not-a-number",null,{quantity:n})}const i=ol();if(i===1){t=Object.keys(ic.window.CKEDITOR_TRANSLATIONS)[0]}const o=e.id||e.string;if(i===0||!il(t,o)){if(n!==1){return e.plural}return e.string}const r=ic.window.CKEDITOR_TRANSLATIONS[t].dictionary;const s=ic.window.CKEDITOR_TRANSLATIONS[t].getPluralForm||(t=>t===1?0:1);const a=r[o];if(typeof a==="string"){return a}const c=Number(s(n));return a[c]}function nl(){global.window.CKEDITOR_TRANSLATIONS={}}function il(t,e){return!!ic.window.CKEDITOR_TRANSLATIONS[t]&&!!ic.window.CKEDITOR_TRANSLATIONS[t].dictionary[e]}function ol(){return Object.keys(ic.window.CKEDITOR_TRANSLATIONS).length}const rl=["ar","ara","fa","per","fas","he","heb","ku","kur","ug","uig"];function sl(t){return rl.includes(t)?"rtl":"ltr"}class al{constructor({uiLanguage:t="en",contentLanguage:e}={}){this.uiLanguage=t;this.contentLanguage=e||this.uiLanguage;this.uiLanguageDirection=sl(this.uiLanguage);this.contentLanguageDirection=sl(this.contentLanguage);this.t=(t,e)=>this._t(t,e)}get language(){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.");return this.uiLanguage}_t(t,e=[]){e=Xc(e);if(typeof t==="string"){t={string:t}}const n=!!t.plural;const i=n?e[0]:1;const o=el(this.uiLanguage,t,i);return cl(o,e)}}function cl(t,e){return t.replace(/%(\d+)/g,((t,n)=>n<e.length?e[n]:t))}class ll extends(K()){constructor(t={},e={}){super();const n=Tt(t);if(!n){e=t}this._items=[];this._itemMap=new Map;this._idProperty=e.idProperty||"id";this._bindToExternalToInternalMap=new WeakMap;this._bindToInternalToExternalMap=new WeakMap;this._skippedIndexesFromExternal=[];if(n){for(const e of t){this._items.push(e);this._itemMap.set(this._getItemIdBeforeAdding(e),e)}}}get length(){return this._items.length}get first(){return this._items[0]||null}get last(){return this._items[this.length-1]||null}add(t,e){return this.addMany([t],e)}addMany(t,e){if(e===undefined){e=this._items.length}else if(e>this._items.length||e<0){throw new z("collection-add-item-invalid-index",this)}let n=0;for(const i of t){const t=this._getItemIdBeforeAdding(i);const o=e+n;this._items.splice(o,0,i);this._itemMap.set(t,i);this.fire("add",i,o);n++}this.fire("change",{added:t,removed:[],index:e});return this}get(t){let e;if(typeof t=="string"){e=this._itemMap.get(t)}else if(typeof t=="number"){e=this._items[t]}else{throw new z("collection-get-invalid-arg",this)}return e||null}has(t){if(typeof t=="string"){return this._itemMap.has(t)}else{const e=this._idProperty;const n=t[e];return n&&this._itemMap.has(n)}}getIndex(t){let e;if(typeof t=="string"){e=this._itemMap.get(t)}else{e=t}return e?this._items.indexOf(e):-1}remove(t){const[e,n]=this._remove(t);this.fire("change",{added:[],removed:[e],index:n});return e}map(t,e){return this._items.map(t,e)}find(t,e){return this._items.find(t,e)}filter(t,e){return this._items.filter(t,e)}clear(){if(this._bindToCollection){this.stopListening(this._bindToCollection);this._bindToCollection=null}const t=Array.from(this._items);while(this.length){this._remove(0)}this.fire("change",{added:[],removed:t,index:0})}bindTo(t){if(this._bindToCollection){throw new z("collection-bind-to-rebind",this)}this._bindToCollection=t;return{as:t=>{this._setUpBindToBinding((e=>new t(e)))},using:t=>{if(typeof t=="function"){this._setUpBindToBinding(t)}else{this._setUpBindToBinding((e=>e[t]))}}}}_setUpBindToBinding(t){const e=this._bindToCollection;const n=(n,i,o)=>{const r=e._bindToCollection==this;const 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){this._skippedIndexesFromExternal.push(o);return}let r=o;for(const t of this._skippedIndexesFromExternal){if(o>t){r--}}for(const t of e._skippedIndexesFromExternal){if(r>=t){r++}}this._bindToExternalToInternalMap.set(i,n);this._bindToInternalToExternalMap.set(n,i);this.add(n,r);for(let t=0;t<e._skippedIndexesFromExternal.length;t++){if(r<=e._skippedIndexesFromExternal[t]){e._skippedIndexesFromExternal[t]++}}}};for(const t of e){n(null,t,e.getIndex(t))}this.listenTo(e,"add",n);this.listenTo(e,"remove",((t,e,n)=>{const i=this._bindToExternalToInternalMap.get(e);if(i){this.remove(i)}this._skippedIndexesFromExternal=this._skippedIndexesFromExternal.reduce(((t,e)=>{if(n<e){t.push(e-1)}if(n>e){t.push(e)}return t}),[])}))}_getItemIdBeforeAdding(t){const e=this._idProperty;let n;if(e in t){n=t[e];if(typeof n!="string"){throw new z("collection-add-invalid-id",this)}if(this.get(n)){throw new z("collection-add-item-already-exists",this)}}else{t[e]=n=I()}return n}_remove(t){let e,n,i;let o=false;const r=this._idProperty;if(typeof t=="string"){n=t;i=this._itemMap.get(n);o=!i;if(i){e=this._items.indexOf(i)}}else if(typeof t=="number"){e=t;i=this._items[e];o=!i;if(i){n=i[r]}}else{i=t;n=i[r];e=this._items.indexOf(i);o=e==-1||!this._itemMap.get(n)}if(o){throw new z("collection-remove-404",this)}this._items.splice(e,1);this._itemMap.delete(n);const s=this._bindToInternalToExternalMap.get(i);this._bindToInternalToExternalMap.delete(i);this._bindToExternalToInternalMap.delete(s);this.fire("remove",i,e);return[i,e]}[Symbol.iterator](){return this._items[Symbol.iterator]()}}function dl(t){const e=t.next();if(e.done){return null}return e.value}class ul extends(Ja(mt())){constructor(){super();this._elements=new Set;this._nextEventLoopTimeout=null;this.set("isFocused",false);this.set("focusedElement",null)}add(t){if(this._elements.has(t)){throw new z("focustracker-add-element-already-exist",this)}this.listenTo(t,"focus",(()=>this._focus(t)),{useCapture:true});this.listenTo(t,"blur",(()=>this._blur()),{useCapture:true});this._elements.add(t)}remove(t){if(t===this.focusedElement){this._blur()}if(this._elements.has(t)){this.stopListening(t);this._elements.delete(t)}}destroy(){this.stopListening()}_focus(t){clearTimeout(this._nextEventLoopTimeout);this.focusedElement=t;this.isFocused=true}_blur(){clearTimeout(this._nextEventLoopTimeout);this._nextEventLoopTimeout=setTimeout((()=>{this.focusedElement=null;this.isFocused=false}),0)}}class hl{constructor(){this._listener=new(Ja())}listenTo(t){this._listener.listenTo(t,"keydown",((t,e)=>{this._listener.fire("_keydown:"+Wc(e),e)}))}set(t,e,n={}){const i=qc(t);const o=n.priority;this._listener.listenTo(this._listener,"_keydown:"+i,((t,n)=>{e(n,(()=>{n.preventDefault();n.stopPropagation();t.stop()}));t.return=true}),{priority:o})}press(t){return!!this._listener.fire("_keydown:"+Wc(t),t)}destroy(){this._listener.stopListening()}}function gl(t){const e=new Map;for(const n in t){e.set(n,t[n])}return e}function ml(t){if(Tt(t)){return new Map(t)}else{return gl(t)}}const fl=1e4;function pl(t,e,n,i){if(Math.max(e.length,t.length)>fl){return t.slice(0,n).concat(e).concat(t.slice(n+i,t.length))}else{const o=Array.from(t);o.splice(n,i,...e);return o}}function bl(t){return!!t&&t.length==1&&/[\u0300-\u036f\u1ab0-\u1aff\u1dc0-\u1dff\u20d0-\u20ff\ufe20-\ufe2f]/.test(t)}function kl(t){return!!t&&t.length==1&&/[\ud800-\udbff]/.test(t)}function wl(t){return!!t&&t.length==1&&/[\udc00-\udfff]/.test(t)}function Al(t,e){return kl(t.charAt(e-1))&&wl(t.charAt(e))}function Cl(t,e){return bl(t.charAt(e))}const _l=yl();function vl(t,e){const n=String(t).matchAll(_l);return Array.from(n).some((t=>t.index<e&&e<t.index+t[0].length))}function yl(){const t=[/\p{Emoji}[\u{E0020}-\u{E007E}]+\u{E007F}/u,/\p{Emoji}\u{FE0F}?\u{20E3}/u,/\p{Emoji}\u{FE0F}/u,/(?=\p{General_Category=Other_Symbol})\p{Emoji}\p{Emoji_Modifier}*/u];const e=/\p{Regional_Indicator}{2}/u.source;const n="(?:"+t.map((t=>t.source)).join("|")+")";const i=`${e}|${n}(?:‍${n})*`;return new RegExp(i,"ug")}class xl extends ll{constructor(t=[]){super(t,{idProperty:"viewUid"});this.on("add",((t,e,n)=>{this._renderViewIntoCollectionParent(e,n)}));this.on("remove",((t,e)=>{if(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||!El(t)){throw new z("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){if(!t.isRendered){t.render()}if(t.element&&this._parentElement){this._parentElement.insertBefore(t.element,this._parentElement.children[e])}}}function El(t){return t.every((t=>typeof t=="string"))}var Dl=n(3379);var Tl=n.n(Dl);var Sl=n(6150);var Il={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Il.insert="head";Il.singleton=true;var Bl=Tl()(Sl.Z,Il);const Ml=Sl.Z.locals||{};class Ll extends(Ja(mt())){constructor(t){super();this.element=null;this.isRendered=false;this.locale=t;this.t=t&&t.t;this._viewCollections=new ll;this._unboundChildren=this.createCollection();this._viewCollections.on("add",((e,n)=>{n.locale=t;n.t=t&&t.t}));this.decorate("render")}get bindTemplate(){if(this._bindTemplate){return this._bindTemplate}return this._bindTemplate=zl.bind(this,this)}createCollection(t){const e=new xl(t);this._viewCollections.add(e);return e}registerChild(t){if(!Tt(t)){t=[t]}for(const e of t){this._unboundChildren.add(e)}}deregisterChild(t){if(!Tt(t)){t=[t]}for(const e of t){this._unboundChildren.remove(e)}}setTemplate(t){this.template=new zl(t)}extendTemplate(t){zl.extend(this.template,t)}render(){if(this.isRendered){throw new z("ui-view-render-already-rendered",this)}if(this.template){this.element=this.template.render();this.registerChild(this.template.getViews())}this.isRendered=true}destroy(){this.stopListening();this._viewCollections.map((t=>t.destroy()));if(this.template&&this.template._revertData){this.template.revert(this.element)}}}const Nl="http://www.w3.org/1999/xhtml";class zl extends(K()){constructor(t){super();Object.assign(this,$l(ql(t)));this._isRendered=false;this._revertData=null}render(){const t=this._renderNode({intoFragment:true});this._isRendered=true;return t}apply(t){this._revertData=sd();this._renderNode({node:t,intoFragment:false,isApplying:true,revertData:this._revertData});return t}revert(t){if(!this._revertData){throw new z("ui-template-revert-not-applied",[this,t])}this._revertTemplateFromNode(t,this._revertData)}*getViews(){function*t(e){if(e.children){for(const n of e.children){if(nd(n)){yield n}else if(id(n)){yield*t(n)}}}}yield*t(this)}static bind(t,e){return{to(n,i){return new Rl({eventNameOrFunction:n,attribute:n,observable:t,emitter:e,callback:i})},if(n,i,o){return new Ol({observable:t,emitter:e,attribute:n,valueIfTrue:i,callback:o})}}}static extend(t,e){if(t._isRendered){throw new z("template-extend-render",[this,t])}td(t,$l(ql(e)))}_renderNode(t){let e;if(t.node){e=this.tag&&this.text}else{e=this.tag?this.text:!this.text}if(e){throw new z("ui-template-wrong-syntax",this)}if(this.text){return this._renderText(t)}else{return this._renderElement(t)}}_renderElement(t){let e=t.node;if(!e){e=t.node=document.createElementNS(this.ns||Nl,this.tag)}this._renderAttributes(t);this._renderElementChildren(t);this._setUpListeners(t);return e}_renderText(t){let e=t.node;if(e){t.revertData.text=e.textContent}else{e=t.node=document.createTextNode("")}if(Vl(this.text)){this._bindToObservable({schema:this.text,updater:Hl(e),data:t})}else{e.textContent=this.text.join("")}return e}_renderAttributes(t){if(!this.attributes){return}const e=t.node;const n=t.revertData;for(const i in this.attributes){const o=e.getAttribute(i);const r=this.attributes[i];if(n){n.attributes[i]=o}const s=rd(r)?r[0].ns:null;if(Vl(r)){const a=rd(r)?r[0].value:r;if(n&&ad(i)){a.unshift(o)}this._bindToObservable({schema:a,updater:Ul(e,i,s),data:t})}else if(i=="style"&&typeof r[0]!=="string"){this._renderStyleAttribute(r[0],t)}else{if(n&&o&&ad(i)){r.unshift(o)}const t=r.map((t=>t?t.value||t:t)).reduce(((t,e)=>t.concat(e)),[]).reduce(Jl,"");if(!ed(t)){e.setAttributeNS(s,i,t)}}}}_renderStyleAttribute(t,e){const n=e.node;for(const i in t){const o=t[i];if(Vl(o)){this._bindToObservable({schema:[o],updater:Wl(n,i),data:e})}else{n.style[i]=o}}}_renderElementChildren(t){const e=t.node;const n=t.intoFragment?document.createDocumentFragment():e;const i=t.isApplying;let o=0;for(const r of this.children){if(od(r)){if(!i){r.setParent(e);for(const t of r){n.appendChild(t.element)}}}else if(nd(r)){if(!i){if(!r.isRendered){r.render()}n.appendChild(r.element)}}else if(Ya(r)){n.appendChild(r)}else{if(i){const e=t.revertData;const i=sd();e.children.push(i);r._renderNode({intoFragment:false,node:n.childNodes[o++],isApplying:true,revertData:i})}else{n.appendChild(r.render())}}}if(t.intoFragment){e.appendChild(n)}}_setUpListeners(t){if(!this.eventListeners){return}for(const e in this.eventListeners){const n=this.eventListeners[e].map((n=>{const[i,o]=e.split("@");return n.activateDomEventListener(i,o,t)}));if(t.revertData){t.revertData.bindings.push(n)}}}_bindToObservable({schema:t,updater:e,data:n}){const i=n.revertData;jl(t,e,n);const o=t.filter((t=>!ed(t))).filter((t=>t.observable)).map((i=>i.activateAttributeListener(t,e,n)));if(i){i.bindings.push(o)}}_revertTemplateFromNode(t,e){for(const t of e.bindings){for(const e of t){e()}}if(e.text){t.textContent=e.text;return}const n=t;for(const t in e.attributes){const i=e.attributes[t];if(i===null){n.removeAttribute(t)}else{n.setAttribute(t,i)}}for(let t=0;t<e.children.length;++t){this._revertTemplateFromNode(n.childNodes[t],e.children[t])}}}class Pl{constructor(t){this.attribute=t.attribute;this.observable=t.observable;this.emitter=t.emitter;this.callback=t.callback}getValue(t){const e=this.observable[this.attribute];return this.callback?this.callback(e,t):e}activateAttributeListener(t,e,n){const i=()=>jl(t,e,n);this.emitter.listenTo(this.observable,`change:${this.attribute}`,i);return()=>{this.emitter.stopListening(this.observable,`change:${this.attribute}`,i)}}}class Rl extends Pl{constructor(t){super(t);this.eventNameOrFunction=t.eventNameOrFunction}activateDomEventListener(t,e,n){const i=(t,n)=>{if(!e||n.target.matches(e)){if(typeof this.eventNameOrFunction=="function"){this.eventNameOrFunction(n)}else{this.observable.fire(this.eventNameOrFunction,n)}}};this.emitter.listenTo(n.node,t,i);return()=>{this.emitter.stopListening(n.node,t,i)}}}class Ol extends Pl{constructor(t){super(t);this.valueIfTrue=t.valueIfTrue}getValue(t){const e=super.getValue(t);return ed(e)?false:this.valueIfTrue||true}}function Vl(t){if(!t){return false}if(t.value){t=t.value}if(Array.isArray(t)){return t.some(Vl)}else if(t instanceof Pl){return true}return false}function Fl(t,e){return t.map((t=>{if(t instanceof Pl){return t.getValue(e)}return t}))}function jl(t,e,{node:n}){const i=Fl(t,n);let o;if(t.length==1&&t[0]instanceof Ol){o=i[0]}else{o=i.reduce(Jl,"")}if(ed(o)){e.remove()}else{e.set(o)}}function Hl(t){return{set(e){t.textContent=e},remove(){t.textContent=""}}}function Ul(t,e,n){return{set(i){t.setAttributeNS(n,e,i)},remove(){t.removeAttributeNS(n,e)}}}function Wl(t,e){return{set(n){t.style[e]=n},remove(){t.style[e]=null}}}function ql(t){const e=Ua(t,(t=>{if(t&&(t instanceof Pl||id(t)||nd(t)||od(t))){return t}}));return e}function $l(t){if(typeof t=="string"){t=Yl(t)}else if(t.text){Zl(t)}if(t.on){t.eventListeners=Kl(t.on);delete t.on}if(!t.text){if(t.attributes){Gl(t.attributes)}const e=[];if(t.children){if(od(t.children)){e.push(t.children)}else{for(const n of t.children){if(id(n)||nd(n)||Ya(n)){e.push(n)}else{e.push(new zl(n))}}}}t.children=e}return t}function Gl(t){for(const e in t){if(t[e].value){t[e].value=Xc(t[e].value)}Ql(t,e)}}function Kl(t){for(const e in t){Ql(t,e)}return t}function Yl(t){return{text:[t]}}function Zl(t){t.text=Xc(t.text)}function Ql(t,e){t[e]=Xc(t[e])}function Jl(t,e){if(ed(e)){return t}else if(ed(t)){return e}else{return`${t} ${e}`}}function Xl(t,e){for(const n in e){if(t[n]){t[n].push(...e[n])}else{t[n]=e[n]}}}function td(t,e){if(e.attributes){if(!t.attributes){t.attributes={}}Xl(t.attributes,e.attributes)}if(e.eventListeners){if(!t.eventListeners){t.eventListeners={}}Xl(t.eventListeners,e.eventListeners)}if(e.text){t.text.push(...e.text)}if(e.children&&e.children.length){if(t.children.length!=e.children.length){throw new z("ui-template-extend-children-mismatch",t)}let n=0;for(const i of e.children){td(t.children[n++],i)}}}function ed(t){return!t&&t!==0}function nd(t){return t instanceof Ll}function id(t){return t instanceof zl}function od(t){return t instanceof xl}function rd(t){return at(t[0])&&t[0].ns}function sd(){return{children:[],bindings:[],attributes:{}}}function ad(t){return t=="class"||t=="style"}class cd extends xl{constructor(t,e=[]){super(e);this.locale=t}attachToDom(){this._bodyCollectionContainer=new zl({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");if(!t){t=oe(document,"div",{class:"ck-body-wrapper"});document.body.appendChild(t)}t.appendChild(this._bodyCollectionContainer)}detachFromDom(){super.destroy();if(this._bodyCollectionContainer){this._bodyCollectionContainer.remove()}const t=document.querySelector(".ck-body-wrapper");if(t&&t.childElementCount==0){t.remove()}}}var ld=n(1174);var dd={injectType:"singletonStyleTag",attributes:{"data-cke":true}};dd.insert="head";dd.singleton=true;var ud=Tl()(ld.Z,dd);const hd=ld.Z.locals||{};class gd extends Ll{constructor(){super();const t=this.bindTemplate;this.set("content","");this.set("viewBox","0 0 20 20");this.set("fillColor","");this.set("isColorInherited",true);this.setTemplate({tag:"svg",ns:"http://www.w3.org/2000/svg",attributes:{class:["ck","ck-icon","ck-reset_all-excluded",t.if("isColorInherited","ck-icon_inherit-color")],viewBox:t.to("viewBox")}})}render(){super.render();this._updateXMLContent();this._colorFillPaths();this.on("change:content",(()=>{this._updateXMLContent();this._colorFillPaths()}));this.on("change:fillColor",(()=>{this._colorFillPaths()}))}_updateXMLContent(){if(this.content){const t=(new DOMParser).parseFromString(this.content.trim(),"image/svg+xml");const e=t.querySelector("svg");const n=e.getAttribute("viewBox");if(n){this.viewBox=n}for(const{name:t,value:n}of Array.from(e.attributes)){if(gd.presentationalAttributeNames.includes(t)){this.element.setAttribute(t,n)}}while(this.element.firstChild){this.element.removeChild(this.element.firstChild)}while(e.childNodes.length>0){this.element.appendChild(e.childNodes[0])}}}_colorFillPaths(){if(this.fillColor){this.element.querySelectorAll(".ck-icon__fill").forEach((t=>{t.style.fill=this.fillColor}))}}}gd.presentationalAttributeNames=["alignment-baseline","baseline-shift","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-rendering","cursor","direction","display","dominant-baseline","fill","fill-opacity","fill-rule","filter","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","mask","opacity","overflow","paint-order","pointer-events","shape-rendering","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-overflow","text-rendering","transform","unicode-bidi","vector-effect","visibility","white-space","word-spacing","writing-mode"];var md=n(4499);var fd={injectType:"singletonStyleTag",attributes:{"data-cke":true}};fd.insert="head";fd.singleton=true;var pd=Tl()(md.Z,fd);const bd=md.Z.locals||{};class kd extends Ll{constructor(t){super(t);const e=this.bindTemplate;const n=I();this.set("class",undefined);this.set("labelStyle",undefined);this.set("icon",undefined);this.set("isEnabled",true);this.set("isOn",false);this.set("isVisible",true);this.set("isToggleable",false);this.set("keystroke",undefined);this.set("label",undefined);this.set("tabindex",-1);this.set("tooltip",false);this.set("tooltipPosition","s");this.set("type","button");this.set("withText",false);this.set("withKeystroke",false);this.children=this.createCollection();this.labelView=this._createLabelView(n);this.iconView=new gd;this.iconView.extendTemplate({attributes:{class:"ck-button__icon"}});this.keystrokeView=this._createKeystrokeView();this.bind("_tooltipString").to(this,"tooltip",this,"label",this,"keystroke",this._getTooltipString.bind(this));const i={tag:"button",attributes:{class:["ck","ck-button",e.to("class"),e.if("isEnabled","ck-disabled",(t=>!t)),e.if("isVisible","ck-hidden",(t=>!t)),e.to("isOn",(t=>t?"ck-on":"ck-off")),e.if("withText","ck-button_with-text"),e.if("withKeystroke","ck-button_with-keystroke")],type:e.to("type",(t=>t?t:"button")),tabindex:e.to("tabindex"),"aria-labelledby":`ck-editor__aria-label_${n}`,"aria-disabled":e.if("isEnabled",true,(t=>!t)),"aria-pressed":e.to("isOn",(t=>this.isToggleable?String(!!t):false)),"data-cke-tooltip-text":e.to("_tooltipString"),"data-cke-tooltip-position":e.to("tooltipPosition")},children:this.children,on:{click:e.to((t=>{if(this.isEnabled){this.fire("execute")}else{t.preventDefault()}}))}};if(l.isSafari){i.on.mousedown=e.to((t=>{this.focus();t.preventDefault()}))}this.setTemplate(i)}render(){super.render();if(this.icon){this.iconView.bind("content").to(this,"icon");this.children.add(this.iconView)}this.children.add(this.labelView);if(this.withKeystroke&&this.keystroke){this.children.add(this.keystrokeView)}}focus(){this.element.focus()}_createLabelView(t){const e=new Ll;const n=this.bindTemplate;e.setTemplate({tag:"span",attributes:{class:["ck","ck-button__label"],style:n.to("labelStyle"),id:`ck-editor__aria-label_${t}`},children:[{text:this.bindTemplate.to("label")}]});return e}_createKeystrokeView(){const t=new Ll;t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__keystroke"]},children:[{text:this.bindTemplate.to("keystroke",(t=>$c(t)))}]});return t}_getTooltipString(t,e,n){if(t){if(typeof t=="string"){return t}else{if(n){n=$c(n)}if(t instanceof Function){return t(e,n)}else{return`${e}${n?` (${n})`:""}`}}}return""}}var wd=n(9681);var Ad={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Ad.insert="head";Ad.singleton=true;var Cd=Tl()(wd.Z,Ad);const _d=wd.Z.locals||{};class vd extends kd{constructor(t){super(t);this.isToggleable=true;this.toggleSwitchView=this._createToggleView();this.extendTemplate({attributes:{class:"ck-switchbutton"}})}render(){super.render();this.children.add(this.toggleSwitchView)}_createToggleView(){const t=new Ll;t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__toggle"]},children:[{tag:"span",attributes:{class:["ck","ck-button__toggle__inner"]}}]});return t}}function yd(t,e){const n=t.t;const 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];if(e&&e!=t.label){t.label=e}return t}))}function xd(t){return t.map(Ed).filter((t=>!!t))}function Ed(t){if(typeof t==="string"){return{model:t,label:t,hasBorder:false,view:{name:"span",styles:{color:t}}}}else{return{model:t.color,label:t.label||t.color,hasBorder:t.hasBorder===undefined?false:t.hasBorder,view:{name:"span",styles:{color:`${t.color}`}}}}}const Dd='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path class="ck-icon__fill" d="M16.935 5.328a2 2 0 0 1 0 2.829l-7.778 7.778a2 2 0 0 1-2.829 0L3.5 13.107a1.999 1.999 0 1 1 2.828-2.829l.707.707a1 1 0 0 0 1.414 0l5.658-5.657a2 2 0 0 1 2.828 0z"/><path d="M14.814 6.035 8.448 12.4a1 1 0 0 1-1.414 0l-1.413-1.415A1 1 0 1 0 4.207 12.4l2.829 2.829a1 1 0 0 0 1.414 0l7.778-7.778a1 1 0 1 0-1.414-1.415z"/></svg>';class Td extends kd{constructor(t){super(t);const e=this.bindTemplate;this.set("color",undefined);this.set("hasBorder",false);this.icon=Dd;this.extendTemplate({attributes:{style:{backgroundColor:e.to("color")},class:["ck","ck-color-grid__tile",e.if("hasBorder","ck-color-table__color-tile_bordered")]}})}render(){super.render();this.iconView.fillColor="hsl(0, 0%, 100%)"}}var Sd=n(4923);var Id={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Id.insert="head";Id.singleton=true;var Bd=Tl()(Sd.Z,Id);const Md=Sd.Z.locals||{};class Ld extends Ll{constructor(t,e){super(t);const n=e&&e.colorDefinitions||[];this.columns=e&&e.columns?e.columns:5;const i={gridTemplateColumns:`repeat( ${this.columns}, 1fr)`};this.set("selectedColor",undefined);this.items=this.createCollection();this.focusTracker=new ul;this.keystrokes=new hl;this.items.on("add",((t,e)=>{e.isOn=e.color===this.selectedColor}));n.forEach((t=>{const e=new Td;e.set({color:t.color,label:t.label,tooltip:true,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(){if(this.items.length){this.items.first.focus()}}focusLast(){if(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);r({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()}}class Nd{constructor(t){this.editor=t;this._components=new Map}*names(){for(const t of this._components.values()){yield t.originalName}}add(t,e){this._components.set(zd(t),{callback:e,originalName:t})}create(t){if(!this.has(t)){throw new z("componentfactory-item-missing",this,{name:t})}return this._components.get(zd(t)).callback(this.editor.locale)}has(t){return this._components.has(zd(t))}}function zd(t){return String(t).toLowerCase()}var Pd=n(3488);var Rd={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Rd.insert="head";Rd.singleton=true;var Od=Tl()(Pd.Z,Rd);const Vd=Pd.Z.locals||{};class Fd extends Ll{constructor(t,e,n){super(t);const i=this.bindTemplate;this.buttonView=e;this.panelView=n;this.set("isOpen",false);this.set("isEnabled",true);this.set("class",undefined);this.set("id",undefined);this.set("panelPosition","auto");this.keystrokes=new hl;this.focusTracker=new ul;this.setTemplate({tag:"div",attributes:{class:["ck","ck-dropdown",i.to("class"),i.if("isEnabled","ck-disabled",(t=>!t))],id:i.to("id"),"aria-describedby":i.to("ariaDescribedById")},children:[e,n]});e.extendTemplate({attributes:{class:["ck-dropdown__button"],"data-cke-tooltip-disabled":i.to("isOpen")}})}render(){super.render();this.focusTracker.add(this.buttonView.element);this.focusTracker.add(this.panelView.element);this.listenTo(this.buttonView,"open",(()=>{this.isOpen=!this.isOpen}));this.panelView.bind("isVisible").to(this,"isOpen");this.on("change:isOpen",((t,e,n)=>{if(!n){return}if(this.panelPosition==="auto"){this.panelView.position=Fd._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:true,positions:this._panelPositions}).name}else{this.panelView.position=this.panelPosition}}));this.keystrokes.listenTo(this.element);const t=(t,e)=>{if(this.isOpen){this.isOpen=false;e()}};this.keystrokes.set("arrowdown",((t,e)=>{if(this.buttonView.isEnabled&&!this.isOpen){this.isOpen=true;e()}}));this.keystrokes.set("arrowright",((t,e)=>{if(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}=Fd.defaultPanelPositions;if(this.locale.uiLanguageDirection!=="rtl"){return[n,i,s,a,t,o,r,c,l,e]}else{return[i,n,a,s,t,r,o,l,c,e]}}}Fd.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-(e.width-t.width)*3/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-(e.width-t.width)*3/4,name:"nmw"})};Fd._getOptimalPosition=_c;const jd='<svg viewBox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"><path d="M.941 4.523a.75.75 0 1 1 1.06-1.06l3.006 3.005 3.005-3.005a.75.75 0 1 1 1.06 1.06l-3.549 3.55a.75.75 0 0 1-1.168-.136L.941 4.523z"/></svg>';class Hd extends kd{constructor(t){super(t);this.arrowView=this._createArrowView();this.extendTemplate({attributes:{"aria-haspopup":true,"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 gd;t.content=jd;t.extendTemplate({attributes:{class:"ck-dropdown__arrow"}});return t}}var Ud=n(66);var Wd={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Wd.insert="head";Wd.singleton=true;var qd=Tl()(Ud.Z,Wd);const $d=Ud.Z.locals||{};class Gd extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.set("class",undefined);this.set("labelStyle",undefined);this.set("icon",undefined);this.set("isEnabled",true);this.set("isOn",false);this.set("isToggleable",false);this.set("isVisible",true);this.set("keystroke",undefined);this.set("withKeystroke",false);this.set("label",undefined);this.set("tabindex",-1);this.set("tooltip",false);this.set("tooltipPosition","s");this.set("type","button");this.set("withText",false);this.children=this.createCollection();this.actionView=this._createActionView();this.arrowView=this._createArrowView();this.keystrokes=new hl;this.focusTracker=new ul;this.setTemplate({tag:"div",attributes:{class:["ck","ck-splitbutton",e.to("class"),e.if("isVisible","ck-hidden",(t=>!t)),this.arrowView.bindTemplate.if("isOn","ck-splitbutton_open")]},children:this.children})}render(){super.render();this.children.add(this.actionView);this.children.add(this.arrowView);this.focusTracker.add(this.actionView.element);this.focusTracker.add(this.arrowView.element);this.keystrokes.listenTo(this.element);this.keystrokes.set("arrowright",((t,e)=>{if(this.focusTracker.focusedElement===this.actionView.element){this.arrowView.focus();e()}}));this.keystrokes.set("arrowleft",((t,e)=>{if(this.focusTracker.focusedElement===this.arrowView.element){this.actionView.focus();e()}}))}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this.actionView.focus()}_createActionView(){const t=new kd;t.bind("icon","isEnabled","isOn","isToggleable","keystroke","label","tabindex","tooltip","tooltipPosition","type","withText").to(this);t.extendTemplate({attributes:{class:"ck-splitbutton__action"}});t.delegate("execute").to(this);return t}_createArrowView(){const t=new kd;const e=t.bindTemplate;t.icon=jd;t.extendTemplate({attributes:{class:["ck-splitbutton__arrow"],"data-cke-tooltip-disabled":e.to("isOn"),"aria-haspopup":true,"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");return t}}class Kd extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",false);this.set("position","se");this.children=this.createCollection();this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-dropdown__panel",e.to("position",(t=>`ck-dropdown__panel_${t}`)),e.if("isVisible","ck-dropdown__panel-visible")]},children:this.children,on:{selectstart:e.to((t=>t.preventDefault()))}})}focus(){if(this.children.length){const t=this.children.first;if(typeof t.focus==="function"){t.focus()}else{P("ui-dropdown-panel-focus-child-missing-focus",{childView:this.children.first,dropdownPanel:this})}}}focusLast(){if(this.children.length){const t=this.children.last;if(typeof t.focusLast==="function"){t.focusLast()}else{t.focus()}}}}class Yd{constructor(t){this.focusables=t.focusables;this.focusTracker=t.focusTracker;this.keystrokeHandler=t.keystrokeHandler;this.actions=t.actions;if(t.actions&&t.keystrokeHandler){for(const e in t.actions){let n=t.actions[e];if(typeof n=="string"){n=[n]}for(const i of n){t.keystrokeHandler.set(i,((t,n)=>{this[e]();n()}))}}}}get first(){return this.focusables.find(Zd)||null}get last(){return this.focusables.filter(Zd).slice(-1)[0]||null}get next(){return this._getFocusableItem(1)}get previous(){return this._getFocusableItem(-1)}get current(){let t=null;if(this.focusTracker.focusedElement===null){return null}this.focusables.find(((e,n)=>{const i=e.element===this.focusTracker.focusedElement;if(i){t=n}return i}));return t}focusFirst(){this._focus(this.first)}focusLast(){this._focus(this.last)}focusNext(){this._focus(this.next)}focusPrevious(){this._focus(this.previous)}_focus(t){if(t){t.focus()}}_getFocusableItem(t){const e=this.current;const n=this.focusables.length;if(!n){return null}if(e===null){return this[t===1?"first":"last"]}let i=(e+n+t)%n;do{const e=this.focusables.get(i);if(Zd(e)){return e}i=(i+n+t)%n}while(i!==e);return null}}function Zd(t){return!!(t.focus&&Ac(t.element))}class Qd extends Ll{constructor(t){super(t);this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__separator"]}})}}class Jd extends Ll{constructor(t){super(t);this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__line-break"]}})}}function Xd(t){return t.bindTemplate.to((e=>{if(e.target===t.element){e.preventDefault()}}))}function tu(t){if(Array.isArray(t)){return{items:t,removeItems:[]}}if(!t){return{items:[],removeItems:[]}}return Object.assign({items:[],removeItems:[]},t)}class eu extends(mt()){constructor(t){super();this.editor=t;this.set("isEnabled",true);this._disableStack=new Set}forceDisabled(t){this._disableStack.add(t);if(this._disableStack.size==1){this.on("set:isEnabled",nu,{priority:"highest"});this.isEnabled=false}}clearForceDisabled(t){this._disableStack.delete(t);if(this._disableStack.size==0){this.off("set:isEnabled",nu);this.isEnabled=true}}destroy(){this.stopListening()}static get isContextPlugin(){return false}}function nu(t){t.return=false;t.stop()}class iu extends(mt()){constructor(t){super();this.editor=t;this.set("value",undefined);this.set("isEnabled",false);this._affectsData=true;this._disableStack=new Set;this.decorate("execute");this.listenTo(this.editor.model.document,"change",(()=>{this.refresh()}));this.on("execute",(t=>{if(!this.isEnabled){t.stop()}}),{priority:"high"});this.listenTo(t,"change:isReadOnly",((t,e,n)=>{if(n&&this.affectsData){this.forceDisabled("readOnlyMode")}else{this.clearForceDisabled("readOnlyMode")}}))}get affectsData(){return this._affectsData}set affectsData(t){this._affectsData=t}refresh(){this.isEnabled=true}forceDisabled(t){this._disableStack.add(t);if(this._disableStack.size==1){this.on("set:isEnabled",ou,{priority:"highest"});this.isEnabled=false}}clearForceDisabled(t){this._disableStack.delete(t);if(this._disableStack.size==0){this.off("set:isEnabled",ou);this.refresh()}}execute(...t){return undefined}destroy(){this.stopListening()}}function ou(t){t.return=false;t.stop()}class ru extends iu{constructor(t){super(t);this._childCommandsDefinitions=[]}refresh(){}execute(...t){const e=this._getFirstEnabledCommand();return!!e&&e.execute(t)}registerChildCommand(t,e={}){L(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 su extends(K()){constructor(t,e=[],n=[]){super();this._context=t;this._plugins=new Map;this._availablePlugins=new Map;for(const t of e){if(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);if(t.pluginName){this._availablePlugins.set(t.pluginName,t)}}}*[Symbol.iterator](){for(const t of this._plugins){if(typeof t[0]=="function"){yield t}}}get(t){const e=this._plugins.get(t);if(!e){let e=t;if(typeof t=="function"){e=t.pluginName||t.name}throw new z("plugincollection-plugin-not-loaded",this._context,{plugin:e})}return e}has(t){return this._plugins.has(t)}init(t,e=[],n=[]){const i=this;const o=this._context;h(t);m(t);const r=t.filter((t=>!d(t,e)));const s=[...g(r)];A(s,n);const a=k(s);return w(a,"init").then((()=>w(a,"afterInit"))).then((()=>a));function c(t){return typeof t==="function"}function l(t){return c(t)&&t.isContextPlugin}function d(t,e){return e.some((e=>{if(e===t){return true}if(u(t)===e){return true}if(u(e)===t){return true}return false}))}function u(t){return c(t)?t.pluginName||t.name:t}function h(t,e=new Set){t.forEach((t=>{if(!c(t)){return}if(e.has(t)){return}e.add(t);if(t.pluginName&&!i._availablePlugins.has(t.pluginName)){i._availablePlugins.set(t.pluginName,t)}if(t.requires){h(t.requires,e)}}))}function g(t,e=new Set){return t.map((t=>c(t)?t:i._availablePlugins.get(t))).reduce(((t,n)=>{if(e.has(n)){return t}e.add(n);if(n.requires){m(n.requires,n);g(n.requires,e).forEach((e=>t.add(e)))}return t.add(n)}),new Set)}function m(t,e=null){t.map((t=>c(t)?t:i._availablePlugins.get(t)||t)).forEach((t=>{f(t,e);p(t,e);b(t,e)}))}function f(t,e){if(c(t)){return}if(e){throw new z("plugincollection-soft-required",o,{missingPlugin:t,requiredBy:u(e)})}throw new z("plugincollection-plugin-not-found",o,{plugin:t})}function p(t,e){if(!l(e)){return}if(l(t)){return}throw new z("plugincollection-context-required",o,{plugin:u(t),requiredBy:u(e)})}function b(t,n){if(!n){return}if(!d(t,e)){return}throw new z("plugincollection-required",o,{plugin:u(t),requiredBy:u(n)})}function k(t){return t.map((t=>{let e=i._contextPlugins.get(t);e=e||new t(o);i._add(t,e);return e}))}function w(t,e){return t.reduce(((t,n)=>{if(!n[e]){return t}if(i._contextPlugins.has(n)){return t}return t.then(n[e].bind(n))}),Promise.resolve())}function A(t,e){for(const n of e){if(typeof n!="function"){throw new z("plugincollection-replace-plugin-invalid-type",null,{pluginItem:n})}const e=n.pluginName;if(!e){throw new z("plugincollection-replace-plugin-missing-name",null,{pluginItem:n})}if(n.requires&&n.requires.length){throw new z("plugincollection-plugin-for-replacing-cannot-have-dependencies",null,{pluginName:e})}const o=i._availablePlugins.get(e);if(!o){throw new z("plugincollection-plugin-for-replacing-not-exist",null,{pluginName:e})}const r=t.indexOf(o);if(r===-1){if(i._contextPlugins.has(o)){return}throw new z("plugincollection-plugin-for-replacing-not-loaded",null,{pluginName:e})}if(o.requires&&o.requires.length){throw new z("plugincollection-replaced-plugin-cannot-have-dependencies",null,{pluginName:e})}t.splice(r,1,n);i._availablePlugins.set(e,n)}}}destroy(){const t=[];for(const[,e]of this){if(typeof e.destroy=="function"&&!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){return}if(this._plugins.has(n)){throw new z("plugincollection-plugin-name-conflict",null,{pluginName:n,plugin1:this._plugins.get(n).constructor,plugin2:t})}this._plugins.set(n,e)}}class au{constructor(t){this.config=new $a(t,this.constructor.defaultConfig);const e=this.constructor.builtinPlugins;this.config.define("plugins",e);this.plugins=new su(this,e);const n=this.config.get("language")||{};this.locale=new al({uiLanguage:typeof n==="string"?n:n.ui,contentLanguage:this.config.get("language.content")});this.t=this.locale.t;this.editors=new ll;this._contextOwner=null}initPlugins(){const t=this.config.get("plugins")||[];const e=this.config.get("substitutePlugins")||[];for(const n of t.concat(e)){if(typeof n!="function"){throw new z("context-initplugins-constructor-only",null,{Plugin:n})}if(n.isContextPlugin!==true){throw new z("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 z("context-addeditor-private-context")}this.editors.add(t);if(e){this._contextOwner=t}}_removeEditor(t){if(this.editors.has(t)){this.editors.remove(t)}if(this._contextOwner===t){return this.destroy()}return Promise.resolve()}_getEditorConfig(){const t={};for(const e of this.config.names()){if(!["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 cu extends(mt()){constructor(t){super();this.context=t}destroy(){this.stopListening()}static get isContextPlugin(){return true}}var lu=n(8894);var du={injectType:"singletonStyleTag",attributes:{"data-cke":true}};du.insert="head";du.singleton=true;var uu=Tl()(lu.Z,du);const hu=lu.Z.locals||{};const gu=new WeakMap;function mu(t){const{view:e,element:n,text:i,isDirectHost:o=true,keepOnFocus:r=false}=t;const s=e.document;if(!gu.has(s)){gu.set(s,new Map);s.registerPostFixer((t=>wu(s,t)));s.on("change:isComposing",(()=>{e.change((t=>wu(s,t)))}),{priority:"high"})}gu.get(s).set(n,{text:i,isDirectHost:o,keepOnFocus:r,hostElement:o?n:null});e.change((t=>wu(s,t)))}function fu(t,e){const n=e.document;t.change((t=>{if(!gu.has(n)){return}const i=gu.get(n);const o=i.get(e);t.removeAttribute("data-placeholder",o.hostElement);bu(t,o.hostElement);i.delete(e)}))}function pu(t,e){if(!e.hasClass("ck-placeholder")){t.addClass("ck-placeholder",e);return true}return false}function bu(t,e){if(e.hasClass("ck-placeholder")){t.removeClass("ck-placeholder",e);return true}return false}function ku(t,e){if(!t.isAttached()){return false}const n=Array.from(t.getChildren()).some((t=>!t.is("uiElement")));if(n){return false}const i=t.document;const o=i.selection;const r=o.anchor;if(i.isComposing&&r&&r.parent===t){return false}if(e){return true}if(!i.isFocused){return true}return!!r&&r.parent!==t}function wu(t,e){const n=gu.get(t);const i=[];let o=false;for(const[t,r]of n){if(r.isDirectHost){i.push(t);if(Au(e,t,r)){o=true}}}for(const[t,r]of n){if(r.isDirectHost){continue}const n=Cu(t);if(!n){continue}if(i.includes(n)){continue}r.hostElement=n;if(Au(e,t,r)){o=true}}return o}function Au(t,e,n){const{text:i,isDirectHost:o,hostElement:r}=n;let s=false;if(r.getAttribute("data-placeholder")!==i){t.setAttribute("data-placeholder",i,r);s=true}const a=o||e.childCount==1;if(a&&ku(r,n.keepOnFocus)){if(pu(t,r)){s=true}}else if(bu(t,r)){s=true}return s}function Cu(t){if(t.childCount){const e=t.getChild(0);if(e.is("element")&&!e.is("uiElement")&&!e.is("attributeElement")){return e}}return null}class _u{is(){throw new Error("is() method is abstract")}}var vu=4;function yu(t){return Va(t,vu)}const xu=yu;class Eu extends(K(_u)){constructor(t){super();this.document=t;this.parent=null}get index(){let t;if(!this.parent){return null}if((t=this.parent.getChildIndex(this))==-1){throw new z("view-node-not-found-in-parent",this)}return t}get nextSibling(){const t=this.index;return t!==null&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return t!==null&&this.parent.getChild(t-1)||null}get root(){let t=this;while(t.parent){t=t.parent}return t}isAttached(){return this.root.is("rootElement")}getPath(){const t=[];let e=this;while(e.parent){t.unshift(e.index);e=e.parent}return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;while(n){e[t.parentFirst?"push":"unshift"](n);n=n.parent}return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e);const i=t.getAncestors(e);let o=0;while(n[o]==i[o]&&n[o]){o++}return o===0?null:n[o-1]}isBefore(t){if(this==t){return false}if(this.root!==t.root){return false}const e=this.getPath();const n=t.getPath();const i=Dt(e,n);switch(i){case"prefix":return true;case"extension":return false;default:return e[i]<n[i]}}isAfter(t){if(this==t){return false}if(this.root!==t.root){return false}return!this.isBefore(t)}_remove(){this.parent._removeChildren(this.index)}_fireChange(t,e){this.fire(`change:${t}`,e);if(this.parent){this.parent._fireChange(t,e)}}toJSON(){const t=xu(this);delete t.parent;return t}}Eu.prototype.is=function(t){return t==="node"||t==="view:node"};class Du extends Eu{constructor(t,e){super(t);this._textData=e}get data(){return this._textData}get _data(){return this.data}set _data(t){this._fireChange("text",this);this._textData=t}isSimilar(t){if(!(t instanceof Du)){return false}return this===t||this.data===t.data}_clone(){return new Du(this.document,this.data)}}Du.prototype.is=function(t){return t==="$text"||t==="view:$text"||t==="text"||t==="view:text"||t==="node"||t==="view:node"};class Tu extends _u{constructor(t,e,n){super();this.textNode=t;if(e<0||e>t.data.length){throw new z("view-textproxy-wrong-offsetintext",this)}if(n<0||e+n>t.data.length){throw new z("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;while(n!==null){e[t.parentFirst?"push":"unshift"](n);n=n.parent}return e}}Tu.prototype.is=function(t){return t==="$textProxy"||t==="view:$textProxy"||t==="textProxy"||t==="view:textProxy"};class Su{constructor(...t){this._patterns=[];this.add(...t)}add(...t){for(let e of t){if(typeof e=="string"||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=Iu(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=Iu(n,t);if(i){e.push({element:n,pattern:t,match:i})}}}return e.length>0?e:null}getElementName(){if(this._patterns.length!==1){return null}const t=this._patterns[0];const e=t.name;return typeof t!="function"&&e&&!(e instanceof RegExp)?e:null}}function Iu(t,e){if(typeof e=="function"){return e(t)}const n={};if(e.name){n.name=Bu(e.name,t.name);if(!n.name){return null}}if(e.attributes){n.attributes=Pu(e.attributes,t);if(!n.attributes){return null}}if(e.classes){n.classes=Ru(e.classes,t);if(!n.classes){return null}}if(e.styles){n.styles=Ou(e.styles,t);if(!n.styles){return null}}return n}function Bu(t,e){if(t instanceof RegExp){return!!e.match(t)}return t===e}function Mu(t,e,n){const i=Lu(t);const o=Array.from(e);const r=[];i.forEach((([t,e])=>{o.forEach((i=>{if(Nu(t,i)&&zu(e,i,n)){r.push(i)}}))}));if(!i.length||r.length<i.length){return undefined}return r}function Lu(t){if(Array.isArray(t)){return t.map((t=>{if(pe(t)){if(t.key===undefined||t.value===undefined){P("matcher-pattern-missing-key-or-value",t)}return[t.key,t.value]}return[t,true]}))}if(pe(t)){return Object.entries(t)}return[[t,true]]}function Nu(t,e){return t===true||t===e||t instanceof RegExp&&e.match(t)}function zu(t,e,n){if(t===true){return true}const i=n(e);return t===i||t instanceof RegExp&&!!String(i).match(t)}function Pu(t,e){const n=new Set(e.getAttributeKeys());if(pe(t)){if(t.style!==undefined){P("matcher-pattern-deprecated-attributes-style-key",t)}if(t.class!==undefined){P("matcher-pattern-deprecated-attributes-class-key",t)}}else{n.delete("style");n.delete("class")}return Mu(t,n,(t=>e.getAttribute(t)))}function Ru(t,e){return Mu(t,e.getClassNames(),(()=>{}))}function Ou(t,e){return Mu(t,e.getStyleNames(true),(t=>e.getStyle(t)))}var Vu="[object Symbol]";function Fu(t){return typeof t=="symbol"||te(t)&&Zt(t)==Vu}const ju=Fu;var Hu=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Uu=/^\w*$/;function Wu(t,e){if(Jt(t)){return false}var n=typeof t;if(n=="number"||n=="symbol"||n=="boolean"||t==null||ju(t)){return true}return Uu.test(t)||!Hu.test(t)||e!=null&&t in Object(e)}const qu=Wu;var $u="Expected a function";function Gu(t,e){if(typeof t!="function"||e!=null&&typeof e!="function"){throw new TypeError($u)}var n=function(){var i=arguments,o=e?e.apply(this,i):i[0],r=n.cache;if(r.has(o)){return r.get(o)}var s=t.apply(this,i);n.cache=r.set(o,s)||r;return s};n.cache=new(Gu.Cache||ei);return n}Gu.Cache=ei;const Ku=Gu;var Yu=500;function Zu(t){var e=Ku(t,(function(t){if(n.size===Yu){n.clear()}return t}));var n=e.cache;return e}const Qu=Zu;var Ju=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;var Xu=/\\(\\)?/g;var th=Qu((function(t){var e=[];if(t.charCodeAt(0)===46){e.push("")}t.replace(Ju,(function(t,n,i,o){e.push(i?o.replace(Xu,"$1"):n||t)}));return e}));const eh=th;function nh(t,e){var n=-1,i=t==null?0:t.length,o=Array(i);while(++n<i){o[n]=e(t[n],n,t)}return o}const ih=nh;var oh=1/0;var rh=zt?zt.prototype:undefined,sh=rh?rh.toString:undefined;function ah(t){if(typeof t=="string"){return t}if(Jt(t)){return ih(t,ah)+""}if(ju(t)){return sh?sh.call(t):""}var e=t+"";return e=="0"&&1/t==-oh?"-0":e}const ch=ah;function lh(t){return t==null?"":ch(t)}const dh=lh;function uh(t,e){if(Jt(t)){return t}return qu(t,e)?[t]:eh(dh(t))}const hh=uh;function gh(t){var e=t==null?0:t.length;return e?t[e-1]:undefined}const mh=gh;var fh=1/0;function ph(t){if(typeof t=="string"||ju(t)){return t}var e=t+"";return e=="0"&&1/t==-fh?"-0":e}const bh=ph;function kh(t,e){e=hh(e,t);var n=0,i=e.length;while(t!=null&&n<i){t=t[bh(e[n++])]}return n&&n==i?t:undefined}const wh=kh;function Ah(t,e,n){var i=-1,o=t.length;if(e<0){e=-e>o?0:o+e}n=n>o?o:n;if(n<0){n+=o}o=e>n?0:n-e>>>0;e>>>=0;var r=Array(o);while(++i<o){r[i]=t[i+e]}return r}const Ch=Ah;function _h(t,e){return e.length<2?t:wh(t,Ch(e,0,-1))}const vh=_h;function yh(t,e){e=hh(e,t);t=vh(t,e);return t==null||delete t[bh(mh(e))]}const xh=yh;function Eh(t,e){return t==null?true:xh(t,e)}const Dh=Eh;function Th(t,e,n){var i=t==null?undefined:wh(t,e);return i===undefined?n:i}const Sh=Th;function Ih(t,e,n){if(n!==undefined&&!Ae(t[e],n)||n===undefined&&!(e in t)){hi(t,e,n)}}const Bh=Ih;function Mh(t){return function(e,n,i){var o=-1,r=Object(e),s=i(e),a=s.length;while(a--){var c=s[t?a:++o];if(n(r[c],c,r)===false){break}}return e}}const Lh=Mh;var Nh=Lh();const zh=Nh;function Ph(t){return te(t)&&Wo(t)}const Rh=Ph;function Oh(t,e){if(e==="constructor"&&typeof t[e]==="function"){return}if(e=="__proto__"){return}return t[e]}const Vh=Oh;function Fh(t){return ki(t,nr(t))}const jh=Fh;function Hh(t,e,n,i,o,r,s){var a=Vh(t,n),c=Vh(e,n),l=s.get(c);if(l){Bh(t,n,l);return}var d=r?r(a,c,n+"",t,e,s):undefined;var u=d===undefined;if(u){var h=Jt(c),g=!h&&Ri(c),m=!h&&!g&&So(c);d=c;if(h||g||m){if(Jt(a)){d=a}else if(Rh(a)){d=gr(a)}else if(g){u=false;d=ur(c,true)}else if(m){u=false;d=vs(c,true)}else{d=[]}}else if(pe(c)||Ti(c)){d=a;if(Ti(a)){d=jh(a)}else if(!at(a)||Ke(a)){d=Ys(c)}}else{u=false}}if(u){s.set(c,d);o(d,c,i,r,s);s["delete"](c)}Bh(t,n,d)}const Uh=Hh;function Wh(t,e,n,i,o){if(t===e){return}zh(e,(function(r,s){o||(o=new si);if(at(r)){Uh(t,e,s,n,Wh,i,o)}else{var a=i?i(Vh(t,s),r,s+"",t,e,o):undefined;if(a===undefined){a=r}Bh(t,s,a)}}),nr)}const qh=Wh;function $h(t){return t}const Gh=$h;function Kh(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)}const Yh=Kh;var Zh=Math.max;function Qh(t,e,n){e=Zh(e===undefined?t.length-1:e,0);return function(){var i=arguments,o=-1,r=Zh(i.length-e,0),s=Array(r);while(++o<r){s[o]=i[e+o]}o=-1;var a=Array(e+1);while(++o<e){a[o]=i[o]}a[e]=n(s);return Yh(t,this,a)}}const Jh=Qh;function Xh(t){return function(){return t}}const tg=Xh;var eg=!di?Gh:function(t,e){return di(t,"toString",{configurable:true,enumerable:false,value:tg(e),writable:true})};const ng=eg;var ig=800,og=16;var rg=Date.now;function sg(t){var e=0,n=0;return function(){var i=rg(),o=og-(i-n);n=i;if(o>0){if(++e>=ig){return arguments[0]}}else{e=0}return t.apply(undefined,arguments)}}const ag=sg;var cg=ag(ng);const lg=cg;function dg(t,e){return lg(Jh(t,e,Gh),t+"")}const ug=dg;function hg(t,e,n){if(!at(n)){return false}var i=typeof e;if(i=="number"?Wo(n)&&ji(e,n.length):i=="string"&&e in n){return Ae(n[e],t)}return false}const gg=hg;function mg(t){return ug((function(e,n){var i=-1,o=n.length,r=o>1?n[o-1]:undefined,s=o>2?n[2]:undefined;r=t.length>3&&typeof r=="function"?(o--,r):undefined;if(s&&gg(n[0],n[1],s)){r=o<3?undefined:r;o=1}e=Object(e);while(++i<o){var a=n[i];if(a){t(e,a,i,r)}}return e}))}const fg=mg;var pg=fg((function(t,e,n){qh(t,e,n)}));const bg=pg;function kg(t,e,n,i){if(!at(t)){return t}e=hh(e,t);var o=-1,r=e.length,s=r-1,a=t;while(a!=null&&++o<r){var c=bh(e[o]),l=n;if(c==="__proto__"||c==="constructor"||c==="prototype"){return t}if(o!=s){var d=a[c];l=i?i(d,c,a):undefined;if(l===undefined){l=at(d)?d:ji(e[o+1])?[]:{}}}pi(a,c,l);a=a[c]}return t}const wg=kg;function Ag(t,e,n){return t==null?t:wg(t,e,n)}const Cg=Ag;class _g{constructor(t){this._styles={};this._styleProcessor=t}get isEmpty(){const t=Object.entries(this._styles);const e=Array.from(t);return!e.length}get size(){if(this.isEmpty){return 0}return this.getStyleNames().length}setTo(t){this.clear();const e=Array.from(yg(t).entries());for(const[t,n]of e){this._styleProcessor.toNormalizedForm(t,n,this._styles)}}has(t){if(this.isEmpty){return false}const e=this._styleProcessor.getReducedForm(t,this._styles);const n=e.find((([e])=>e===t));return Array.isArray(n)}set(t,e){if(at(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=xg(t);Dh(this._styles,e);delete this._styles[t];this._cleanEmptyObjectsOnPath(e)}getNormalized(t){return this._styleProcessor.getNormalized(t,this._styles)}toString(){if(this.isEmpty){return""}return this._getStylesEntries().map((t=>t.join(":"))).sort().join(";")+";"}getAsString(t){if(this.isEmpty){return}if(this._styles[t]&&!at(this._styles[t])){return this._styles[t]}const e=this._styleProcessor.getReducedForm(t,this._styles);const n=e.find((([e])=>e===t));if(Array.isArray(n)){return n[1]}}getStyleNames(t=false){if(this.isEmpty){return[]}if(t){return this._styleProcessor.getStyleNames(this._styles)}const e=this._getStylesEntries();return e.map((([t])=>t))}clear(){this._styles={}}_getStylesEntries(){const t=[];const 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(".");const n=e.length>1;if(!n){return}const i=e.splice(0,e.length-1).join(".");const o=Sh(this._styles,i);if(!o){return}const r=!Array.from(Object.keys(o)).length;if(r){this.remove(i)}}}class vg{constructor(){this._normalizers=new Map;this._extractors=new Map;this._reducers=new Map;this._consumables=new Map}toNormalizedForm(t,e,n){if(at(e)){Eg(n,xg(t),e);return}if(this._normalizers.has(t)){const i=this._normalizers.get(t);const{path:o,value:r}=i(e);Eg(n,o,r)}else{Eg(n,t,e)}}getNormalized(t,e){if(!t){return bg({},e)}if(e[t]!==undefined){return e[t]}if(this._extractors.has(t)){const n=this._extractors.get(t);if(typeof n==="string"){return Sh(e,n)}const i=n(t,e);if(i){return i}}return Sh(e,xg(t))}getReducedForm(t,e){const n=this.getNormalized(t,e);if(n===undefined){return[]}if(this._reducers.has(t)){const e=this._reducers.get(t);return e(n)}return[[t,n]]}getStyleNames(t){const e=Array.from(this._consumables.keys()).filter((e=>{const n=this.getNormalized(e,t);if(n&&typeof n=="object"){return Object.keys(n).length}return n}));const n=new Set([...e,...Object.keys(t)]);return Array.from(n.values())}getRelatedStyles(t){return this._consumables.get(t)||[]}setNormalizer(t,e){this._normalizers.set(t,e)}setExtractor(t,e){this._extractors.set(t,e)}setReducer(t,e){this._reducers.set(t,e)}setStyleRelation(t,e){this._mapStyleNames(t,e);for(const n of e){this._mapStyleNames(n,[t])}}_mapStyleNames(t,e){if(!this._consumables.has(t)){this._consumables.set(t,[])}this._consumables.get(t).push(...e)}}function yg(t){let e=null;let n=0;let i=0;let o=null;const r=new Map;if(t===""){return r}if(t.charAt(t.length-1)!=";"){t=t+";"}for(let s=0;s<t.length;s++){const a=t.charAt(s);if(e===null){switch(a){case":":if(!o){o=t.substr(n,s-n);i=s+1}break;case'"':case"'":e=a;break;case";":{const e=t.substr(i,s-i);if(o){r.set(o.trim(),e.trim())}o=null;n=s+1;break}}}else if(a===e){e=null}}return r}function xg(t){return t.replace("-",".")}function Eg(t,e,n){let i=n;if(at(n)){i=bg({},Sh(t,e),n)}Cg(t,e,i)}class Dg extends Eu{constructor(t,e,n,i){super(t);this.name=e;this._attrs=Tg(n);this._children=[];if(i){this._insertChild(0,i)}this._classes=new Set;if(this._attrs.has("class")){const t=this._attrs.get("class");Sg(this._classes,t);this._attrs.delete("class")}this._styles=new _g(this.document.stylesProcessor);if(this._attrs.has("style")){this._styles.setTo(this._attrs.get("style"));this._attrs.delete("style")}this._customProperties=new Map;this._unsafeAttributesToRender=[]}get childCount(){return this._children.length}get isEmpty(){return this._children.length===0}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}*getAttributeKeys(){if(this._classes.size>0){yield"class"}if(!this._styles.isEmpty){yield"style"}yield*this._attrs.keys()}*getAttributes(){yield*this._attrs.entries();if(this._classes.size>0){yield["class",this.getAttribute("class")]}if(!this._styles.isEmpty){yield["style",this.getAttribute("style")]}}getAttribute(t){if(t=="class"){if(this._classes.size>0){return[...this._classes].join(" ")}return undefined}if(t=="style"){const t=this._styles.toString();return t==""?undefined:t}return this._attrs.get(t)}hasAttribute(t){if(t=="class"){return this._classes.size>0}if(t=="style"){return!this._styles.isEmpty}return this._attrs.has(t)}isSimilar(t){if(!(t instanceof Dg)){return false}if(this===t){return true}if(this.name!=t.name){return false}if(this._attrs.size!==t._attrs.size||this._classes.size!==t._classes.size||this._styles.size!==t._styles.size){return false}for(const[e,n]of this._attrs){if(!t._attrs.has(e)||t._attrs.get(e)!==n){return false}}for(const e of this._classes){if(!t._classes.has(e)){return false}}for(const e of this._styles.getStyleNames()){if(!t._styles.has(e)||t._styles.getAsString(e)!==this._styles.getAsString(e)){return false}}return true}hasClass(...t){for(const e of t){if(!this._classes.has(e)){return false}}return true}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 false}}return true}findAncestor(...t){const e=new Su(...t);let n=this.parent;while(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(",");const e=this._styles.toString();const 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=false){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);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;return n}_appendChild(t){return this._insertChild(this.childCount,t)}_insertChild(t,e){this._fireChange("children",this);let n=0;const i=Ig(this.document,e);for(const e of i){if(e.parent!==null){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;n<t+e;n++){this._children[n].parent=null}return this._children.splice(t,e)}_setAttribute(t,e){const n=String(e);this._fireChange("attributes",this);if(t=="class"){Sg(this._classes,n)}else if(t=="style"){this._styles.setTo(n)}else{this._attrs.set(t,n)}}_removeAttribute(t){this._fireChange("attributes",this);if(t=="class"){if(this._classes.size>0){this._classes.clear();return true}return false}if(t=="style"){if(!this._styles.isEmpty){this._styles.clear();return true}return false}return this._attrs.delete(t)}_addClass(t){this._fireChange("attributes",this);for(const e of Xc(t)){this._classes.add(e)}}_removeClass(t){this._fireChange("attributes",this);for(const e of Xc(t)){this._classes.delete(e)}}_setStyle(t,e){this._fireChange("attributes",this);if(pe(t)){this._styles.set(t)}else{this._styles.set(t,e)}}_removeStyle(t){this._fireChange("attributes",this);for(const e of Xc(t)){this._styles.remove(e)}}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}Dg.prototype.is=function(t,e){if(!e){return t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="element"||t==="view:element")}};function Tg(t){const e=ml(t);for(const[t,n]of e){if(n===null){e.delete(t)}else if(typeof n!="string"){e.set(t,String(n))}}return e}function Sg(t,e){const n=e.split(/\s+/);t.clear();n.forEach((e=>t.add(e)))}function Ig(t,e){if(typeof e=="string"){return[new Du(t,e)]}if(!Tt(e)){e=[e]}return Array.from(e).map((e=>{if(typeof e=="string"){return new Du(t,e)}if(e instanceof Tu){return new Du(t,e.data)}return e}))}class Bg extends Dg{constructor(...t){super(...t);this.getFillerOffset=Mg}}Bg.prototype.is=function(t,e){if(!e){return t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element")}};function Mg(){const t=[...this.getChildren()];const 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}class Lg extends(mt(Bg)){constructor(...t){super(...t);const e=t[0];this.set("isReadOnly",false);this.set("isFocused",false);this.bind("isReadOnly").to(e);this.bind("isFocused").to(e,"isFocused",(t=>t&&e.selection.editableElement==this));this.listenTo(e.selection,"change",(()=>{this.isFocused=e.isFocused&&e.selection.editableElement==this}))}destroy(){this.stopListening()}}Lg.prototype.is=function(t,e){if(!e){return t==="editableElement"||t==="view:editableElement"||t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="editableElement"||t==="view:editableElement"||t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element")}};const Ng=Symbol("rootName");class zg extends Lg{constructor(t,e){super(t,e);this.rootName="main"}get rootName(){return this.getCustomProperty(Ng)}set rootName(t){this._setCustomProperty(Ng,t)}set _name(t){this.name=t}}zg.prototype.is=function(t,e){if(!e){return 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"}else{return e===this.name&&(t==="rootElement"||t==="view:rootElement"||t==="editableElement"||t==="view:editableElement"||t==="containerElement"||t==="view:containerElement"||t==="element"||t==="view:element")}};class Pg{constructor(t={}){if(!t.boundaries&&!t.startPosition){throw new z("view-tree-walker-no-start-position",null)}if(t.direction&&t.direction!="forward"&&t.direction!="backward"){throw new z("view-tree-walker-unknown-direction",t.startPosition,{direction:t.direction})}this.boundaries=t.boundaries||null;if(t.startPosition){this.position=Rg._createAt(t.startPosition)}else{this.position=Rg._createAt(t.boundaries[t.direction=="backward"?"end":"start"])}this.direction=t.direction||"forward";this.singleCharacters=!!t.singleCharacters;this.shallow=!!t.shallow;this.ignoreElementEnd=!!t.ignoreElementEnd;this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null;this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null}[Symbol.iterator](){return this}skip(t){let e,n,i;do{i=this.position;({done:e,value:n}=this.next())}while(!e&&t(n));if(!e){this.position=i}}next(){if(this.direction=="forward"){return this._next()}else{return this._previous()}}_next(){let t=this.position.clone();const e=this.position;const n=t.parent;if(n.parent===null&&t.offset===n.childCount){return{done:true,value:undefined}}if(n===this._boundaryEndParent&&t.offset==this.boundaries.end.offset){return{done:true,value:undefined}}let i;if(n instanceof Du){if(t.isAtEnd){this.position=Rg._createAfter(n);return this._next()}i=n.data[t.offset]}else{i=n.getChild(t.offset)}if(i instanceof Dg){if(!this.shallow){t=new Rg(i,0)}else{t.offset++}this.position=t;return this._formatReturnValue("elementStart",i,e,t,1)}else if(i instanceof Du){if(this.singleCharacters){t=new Rg(i,0);this.position=t;return this._next()}else{let n=i.data.length;let o;if(i==this._boundaryEndParent){n=this.boundaries.end.offset;o=new Tu(i,0,n);t=Rg._createAfter(o)}else{o=new Tu(i,0,i.data.length);t.offset++}this.position=t;return this._formatReturnValue("text",o,e,t,n)}}else if(typeof i=="string"){let i;if(this.singleCharacters){i=1}else{const e=n===this._boundaryEndParent?this.boundaries.end.offset:n.data.length;i=e-t.offset}const o=new Tu(n,t.offset,i);t.offset+=i;this.position=t;return this._formatReturnValue("text",o,e,t,i)}else{t=Rg._createAfter(n);this.position=t;if(this.ignoreElementEnd){return this._next()}else{return this._formatReturnValue("elementEnd",n,e,t)}}}_previous(){let t=this.position.clone();const e=this.position;const n=t.parent;if(n.parent===null&&t.offset===0){return{done:true,value:undefined}}if(n==this._boundaryStartParent&&t.offset==this.boundaries.start.offset){return{done:true,value:undefined}}let i;if(n instanceof Du){if(t.isAtStart){this.position=Rg._createBefore(n);return this._previous()}i=n.data[t.offset-1]}else{i=n.getChild(t.offset-1)}if(i instanceof Dg){if(!this.shallow){t=new Rg(i,i.childCount);this.position=t;if(this.ignoreElementEnd){return this._previous()}else{return this._formatReturnValue("elementEnd",i,e,t)}}else{t.offset--;this.position=t;return this._formatReturnValue("elementStart",i,e,t,1)}}else if(i instanceof Du){if(this.singleCharacters){t=new Rg(i,i.data.length);this.position=t;return this._previous()}else{let n=i.data.length;let o;if(i==this._boundaryStartParent){const e=this.boundaries.start.offset;o=new Tu(i,e,i.data.length-e);n=o.data.length;t=Rg._createBefore(o)}else{o=new Tu(i,0,i.data.length);t.offset--}this.position=t;return this._formatReturnValue("text",o,e,t,n)}}else if(typeof i=="string"){let i;if(!this.singleCharacters){const e=n===this._boundaryStartParent?this.boundaries.start.offset:0;i=t.offset-e}else{i=1}t.offset-=i;const o=new Tu(n,t.offset,i);this.position=t;return this._formatReturnValue("text",o,e,t,i)}else{t=Rg._createBefore(n);this.position=t;return this._formatReturnValue("elementStart",n,e,t,1)}}_formatReturnValue(t,e,n,i,o){if(e instanceof Tu){if(e.offsetInText+e.data.length==e.textNode.data.length){if(this.direction=="forward"&&!(this.boundaries&&this.boundaries.end.isEqual(this.position))){i=Rg._createAfter(e.textNode);this.position=i}else{n=Rg._createAfter(e.textNode)}}if(e.offsetInText===0){if(this.direction=="backward"&&!(this.boundaries&&this.boundaries.start.isEqual(this.position))){i=Rg._createBefore(e.textNode);this.position=i}else{n=Rg._createBefore(e.textNode)}}}return{done:false,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}}class Rg extends _u{constructor(t,e){super();this.parent=t;this.offset=e}get nodeAfter(){if(this.parent.is("$text")){return null}return this.parent.getChild(this.offset)||null}get nodeBefore(){if(this.parent.is("$text")){return null}return this.parent.getChild(this.offset-1)||null}get isAtStart(){return this.offset===0}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;while(!(t instanceof Lg)){if(t.parent){t=t.parent}else{return null}}return t}getShiftedBy(t){const e=Rg._createAt(this);const n=e.offset+t;e.offset=n<0?0:n;return e}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new Pg(e);n.skip(t);return n.position}getAncestors(){if(this.parent.is("documentFragment")){return[this.parent]}else{return this.parent.getAncestors({includeSelf:true})}}getCommonAncestor(t){const e=this.getAncestors();const n=t.getAncestors();let i=0;while(e[i]==n[i]&&e[i]){i++}return i===0?null:e[i-1]}isEqual(t){return this.parent==t.parent&&this.offset==t.offset}isBefore(t){return this.compareWith(t)=="before"}isAfter(t){return this.compareWith(t)=="after"}compareWith(t){if(this.root!==t.root){return"different"}if(this.isEqual(t)){return"same"}const e=this.parent.is("node")?this.parent.getPath():[];const n=t.parent.is("node")?t.parent.getPath():[];e.push(this.offset);n.push(t.offset);const i=Dt(e,n);switch(i){case"prefix":return"before";case"extension":return"after";default:return e[i]<n[i]?"before":"after"}}getWalker(t={}){t.startPosition=this;return new Pg(t)}clone(){return new Rg(this.parent,this.offset)}static _createAt(t,e){if(t instanceof Rg){return new this(t.parent,t.offset)}else{const n=t;if(e=="end"){e=n.is("$text")?n.data.length:n.childCount}else if(e=="before"){return this._createBefore(n)}else if(e=="after"){return this._createAfter(n)}else if(e!==0&&!e){throw new z("view-createpositionat-offset-required",n)}return new Rg(n,e)}}static _createAfter(t){if(t.is("$textProxy")){return new Rg(t.textNode,t.offsetInText+t.data.length)}if(!t.parent){throw new z("view-position-after-root",t,{root:t})}return new Rg(t.parent,t.index+1)}static _createBefore(t){if(t.is("$textProxy")){return new Rg(t.textNode,t.offsetInText)}if(!t.parent){throw new z("view-position-before-root",t,{root:t})}return new Rg(t.parent,t.index)}}Rg.prototype.is=function(t){return t==="position"||t==="view:position"};class Og extends _u{constructor(t,e=null){super();this.start=t.clone();this.end=e?e.clone():t.clone()}*[Symbol.iterator](){yield*new Pg({boundaries:this,ignoreElementEnd:true})}get isCollapsed(){return this.start.isEqual(this.end)}get isFlat(){return this.start.parent===this.end.parent}get root(){return this.start.root}getEnlarged(){let t=this.start.getLastMatchingPosition(Vg,{direction:"backward"});let e=this.end.getLastMatchingPosition(Vg);if(t.parent.is("$text")&&t.isAtStart){t=Rg._createBefore(t.parent)}if(e.parent.is("$text")&&e.isAtEnd){e=Rg._createAfter(e.parent)}return new Og(t,e)}getTrimmed(){let t=this.start.getLastMatchingPosition(Vg);if(t.isAfter(this.end)||t.isEqual(this.end)){return new Og(t,t)}let e=this.end.getLastMatchingPosition(Vg,{direction:"backward"});const n=t.nodeAfter;const i=e.nodeBefore;if(n&&n.is("$text")){t=new Rg(n,0)}if(i&&i.is("$text")){e=new Rg(i,i.data.length)}return new Og(t,e)}isEqual(t){return this==t||this.start.isEqual(t.start)&&this.end.isEqual(t.end)}containsPosition(t){return t.isAfter(this.start)&&t.isBefore(this.end)}containsRange(t,e=false){if(t.isCollapsed){e=false}const n=this.containsPosition(t.start)||e&&this.start.isEqual(t.start);const i=this.containsPosition(t.end)||e&&this.end.isEqual(t.end);return n&&i}getDifference(t){const e=[];if(this.isIntersecting(t)){if(this.containsPosition(t.start)){e.push(new Og(this.start,t.start))}if(this.containsPosition(t.end)){e.push(new Og(t.end,this.end))}}else{e.push(this.clone())}return e}getIntersection(t){if(this.isIntersecting(t)){let e=this.start;let n=this.end;if(this.containsPosition(t.start)){e=t.start}if(this.containsPosition(t.end)){n=t.end}return new Og(e,n)}return null}getWalker(t={}){t.boundaries=this;return new Pg(t)}getCommonAncestor(){return this.start.getCommonAncestor(this.end)}getContainedElement(){if(this.isCollapsed){return null}let t=this.start.nodeAfter;let e=this.end.nodeBefore;if(this.start.parent.is("$text")&&this.start.isAtEnd&&this.start.parent.nextSibling){t=this.start.parent.nextSibling}if(this.end.parent.is("$text")&&this.end.isAtStart&&this.end.parent.previousSibling){e=this.end.parent.previousSibling}if(t&&t.is("element")&&t===e){return t}return null}clone(){return new Og(this.start,this.end)}*getItems(t={}){t.boundaries=this;t.ignoreElementEnd=true;const e=new Pg(t);for(const t of e){yield t.item}}*getPositions(t={}){t.boundaries=this;const e=new Pg(t);yield e.position;for(const t of e){yield t.nextPosition}}isIntersecting(t){return this.start.isBefore(t.end)&&this.end.isAfter(t.start)}static _createFromParentsAndOffsets(t,e,n,i){return new this(new Rg(t,e),new Rg(n,i))}static _createFromPositionAndShift(t,e){const n=t;const i=t.getShiftedBy(e);return e>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(Rg._createBefore(t),e)}}Og.prototype.is=function(t){return t==="range"||t==="view:range"};function Vg(t){if(t.item.is("attributeElement")||t.item.is("uiElement")){return true}return false}class Fg extends(K(_u)){constructor(...t){super();this._ranges=[];this._lastRangeBackward=false;this._isFake=false;this._fakeSelectionLabel="";if(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];const e=this._lastRangeBackward?t.end:t.start;return e.clone()}get focus(){if(!this._ranges.length){return null}const t=this._ranges[this._ranges.length-1];const e=this._lastRangeBackward?t.start:t.end;return e.clone()}get isCollapsed(){return this.rangeCount===1&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}get editableElement(){if(this.anchor){return this.anchor.editableElement}return null}*getRanges(){for(const t of this._ranges){yield t.clone()}}getFirstRange(){let t=null;for(const e of this._ranges){if(!t||e.start.isBefore(t.start)){t=e}}return t?t.clone():null}getLastRange(){let t=null;for(const e of this._ranges){if(!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 false}if(this.isFake&&this.fakeSelectionLabel!=t.fakeSelectionLabel){return false}if(this.rangeCount!=t.rangeCount){return false}else if(this.rangeCount===0){return true}if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus)){return false}for(const e of this._ranges){let n=false;for(const i of t._ranges){if(e.isEqual(i)){n=true;break}}if(!n){return false}}return true}isSimilar(t){if(this.isBackward!=t.isBackward){return false}const e=Et(this.getRanges());const n=Et(t.getRanges());if(e!=n){return false}if(e==0){return true}for(let e of this.getRanges()){e=e.getTrimmed();let n=false;for(let i of t.getRanges()){i=i.getTrimmed();if(e.start.isEqual(i.start)&&e.end.isEqual(i.end)){n=true;break}}if(!n){return false}}return true}getSelectedElement(){if(this.rangeCount!==1){return null}return this.getFirstRange().getContainedElement()}setTo(...t){let[e,n,i]=t;if(typeof n=="object"){i=n;n=undefined}if(e===null){this._setRanges([]);this._setFakeOptions(i)}else if(e instanceof Fg||e instanceof jg){this._setRanges(e.getRanges(),e.isBackward);this._setFakeOptions({fake:e.isFake,label:e.fakeSelectionLabel})}else if(e instanceof Og){this._setRanges([e],i&&i.backward);this._setFakeOptions(i)}else if(e instanceof Rg){this._setRanges([new Og(e)]);this._setFakeOptions(i)}else if(e instanceof Eu){const t=!!i&&!!i.backward;let o;if(n===undefined){throw new z("view-selection-setto-required-second-parameter",this)}else if(n=="in"){o=Og._createIn(e)}else if(n=="on"){o=Og._createOn(e)}else{o=new Og(Rg._createAt(e,n))}this._setRanges([o],t);this._setFakeOptions(i)}else if(Tt(e)){this._setRanges(e,i&&i.backward);this._setFakeOptions(i)}else{throw new z("view-selection-setto-not-selectable",this)}this.fire("change")}setFocus(t,e){if(this.anchor===null){throw new z("view-selection-setfocus-no-ranges",this)}const n=Rg._createAt(t,e);if(n.compareWith(this.focus)=="same"){return}const i=this.anchor;this._ranges.pop();if(n.compareWith(i)=="before"){this._addRange(new Og(n,i),true)}else{this._addRange(new Og(i,n))}this.fire("change")}_setRanges(t,e=false){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=false){if(!(t instanceof Og)){throw new z("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 z("view-selection-range-intersects",this,{addedRange:t,intersectingRange:e})}}this._ranges.push(new Og(t.start,t.end))}}Fg.prototype.is=function(t){return t==="selection"||t==="view:selection"};class jg extends(K(_u)){constructor(...t){super();this._selection=new Fg;this._selection.delegate("change").to(this);if(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)}}jg.prototype.is=function(t){return t==="selection"||t=="documentSelection"||t=="view:selection"||t=="view:documentSelection"};class Hg extends T{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 Ug=Symbol("bubbling contexts");function Wg(t){class e extends t{fire(t,...e){try{const n=t instanceof T?t:new T(this,t);const i=Kg(this);if(!i.size){return}qg(n,"capturing",this);if($g(i,"$capture",n,...e)){return n.return}const o=n.startRange||this.selection.getFirstRange();const r=o?o.getContainedElement():null;const s=r?Boolean(Gg(i,r)):false;let a=r||Yg(o);qg(n,"atTarget",a);if(!s){if($g(i,"$text",n,...e)){return n.return}qg(n,"bubbling",a)}while(a){if(a.is("rootElement")){if($g(i,"$root",n,...e)){return n.return}}else if(a.is("element")){if($g(i,a.name,n,...e)){return n.return}}if($g(i,a,n,...e)){return n.return}a=a.parent;qg(n,"bubbling",a)}qg(n,"bubbling",this);$g(i,"$document",n,...e);return n.return}catch(t){z.rethrowUnexpectedError(t,this)}}_addEventListener(t,e,n){const i=Xc(n.context||"$document");const o=Kg(this);for(const r of i){let i=o.get(r);if(!i){i=new(K());o.set(r,i)}this.listenTo(i,t,e,n)}}_removeEventListener(t,e){const n=Kg(this);for(const i of n.values()){this.stopListening(i,t,e)}}}return e}{const t=Wg(Object);["fire","_addEventListener","_removeEventListener"].forEach((e=>{Wg[e]=t.prototype[e]}))}function qg(t,e,n){if(t instanceof Hg){t._eventPhase=e;t._currentTarget=n}}function $g(t,e,n,...i){const o=typeof e=="string"?t.get(e):Gg(t,e);if(!o){return false}o.fire(n,...i);return n.stop.called}function Gg(t,e){for(const[n,i]of t){if(typeof n=="function"&&n(e)){return i}}return null}function Kg(t){if(!t[Ug]){t[Ug]=new Map}return t[Ug]}function Yg(t){if(!t){return null}const e=t.start.parent;const n=t.end.parent;const i=e.getPath();const o=n.getPath();return i.length>o.length?e:n}class Zg extends(Wg(mt())){constructor(t){super();this.selection=new jg;this.roots=new ll({idProperty:"rootName"});this.stylesProcessor=t;this.set("isReadOnly",false);this.set("isFocused",false);this.set("isSelecting",false);this.set("isComposing",false);this._postFixers=new Set}getRoot(t="main"){return this.roots.get(t)}registerPostFixer(t){this._postFixers.add(t)}destroy(){this.roots.map((t=>t.destroy()));this.stopListening()}_callPostFixers(t){let e=false;do{for(const n of this._postFixers){e=n(t);if(e){break}}}while(e)}}const Qg=10;class Jg extends Dg{constructor(...t){super(...t);this.getFillerOffset=Xg;this._priority=Qg;this._id=null;this._clonesGroup=null}get priority(){return this._priority}get id(){return this._id}getElementsWithSameId(){if(this.id===null){throw new z("attribute-element-get-elements-with-same-id-no-id",this)}return new Set(this._clonesGroup)}isSimilar(t){if(this.id!==null||t.id!==null){return this.id===t.id}return super.isSimilar(t)&&this.priority==t.priority}_clone(t=false){const e=super._clone(t);e._priority=this._priority;e._id=this._id;return e}}Jg.DEFAULT_PRIORITY=Qg;Jg.prototype.is=function(t,e){if(!e){return t==="attributeElement"||t==="view:attributeElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="attributeElement"||t==="view:attributeElement"||t==="element"||t==="view:element")}};function Xg(){if(tm(this)){return null}let t=this.parent;while(t&&t.is("attributeElement")){if(tm(t)>1){return null}t=t.parent}if(!t||tm(t)>1){return null}return this.childCount}function tm(t){return Array.from(t.getChildren()).filter((t=>!t.is("uiElement"))).length}class em extends Dg{constructor(t,e,n,i){super(t,e,n,i);this.getFillerOffset=nm}_insertChild(t,e){if(e&&(e instanceof Eu||Array.from(e).length>0)){throw new z("view-emptyelement-cannot-add",[this,e])}return 0}}em.prototype.is=function(t,e){if(!e){return t==="emptyElement"||t==="view:emptyElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="emptyElement"||t==="view:emptyElement"||t==="element"||t==="view:element")}};function nm(){return null}class im extends Dg{constructor(...t){super(...t);this.getFillerOffset=rm}_insertChild(t,e){if(e&&(e instanceof Eu||Array.from(e).length>0)){throw new z("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}}im.prototype.is=function(t,e){if(!e){return t==="uiElement"||t==="view:uiElement"||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="uiElement"||t==="view:uiElement"||t==="element"||t==="view:element")}};function om(t){t.document.on("arrowKey",((e,n)=>sm(e,n,t.domConverter)),{priority:"low"})}function rm(){return null}function sm(t,e,n){if(e.keyCode==Hc.arrowright){const t=e.domTarget.ownerDocument.defaultView.getSelection();const i=t.rangeCount==1&&t.getRangeAt(0).collapsed;if(i||e.shiftKey){const e=t.focusNode;const o=t.focusOffset;const r=n.domPositionToView(e,o);if(r===null){return}let s=false;const a=r.getLastMatchingPosition((t=>{if(t.item.is("uiElement")){s=true}if(t.item.is("uiElement")||t.item.is("attributeElement")){return true}return false}));if(s){const e=n.viewPositionToDom(a);if(i){t.collapse(e.parent,e.offset)}else{t.extend(e.parent,e.offset)}}}}}class am extends Dg{constructor(...t){super(...t);this.getFillerOffset=cm}_insertChild(t,e){if(e&&(e instanceof Eu||Array.from(e).length>0)){throw new z("view-rawelement-cannot-add",[this,e])}return 0}render(){}}am.prototype.is=function(t,e){if(!e){return t==="rawElement"||t==="view:rawElement"||t===this.name||t==="view:"+this.name||t==="element"||t==="view:element"||t==="node"||t==="view:node"}else{return e===this.name&&(t==="rawElement"||t==="view:rawElement"||t==="element"||t==="view:element")}};function cm(){return null}class lm extends(K(_u)){constructor(t,e){super();this.document=t;this._children=[];if(e){this._insertChild(0,e)}this._customProperties=new Map}[Symbol.iterator](){return this._children[Symbol.iterator]()}get childCount(){return this._children.length}get isEmpty(){return this.childCount===0}get root(){return this}get parent(){return null}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=dm(this.document,e);for(const e of i){if(e.parent!==null){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<t+e;n++){this._children[n].parent=null}return this._children.splice(t,e)}_fireChange(t,e){this.fire("change:"+t,e)}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}lm.prototype.is=function(t){return t==="documentFragment"||t==="view:documentFragment"};function dm(t,e){if(typeof e=="string"){return[new Du(t,e)]}if(!Tt(e)){e=[e]}return Array.from(e).map((e=>{if(typeof e=="string"){return new Du(t,e)}if(e instanceof Tu){return new Du(t,e.data)}return e}))}class um{constructor(t){this.document=t;this._cloneGroups=new Map;this._slotFactory=null}setSelection(...t){this.document.selection._setTo(...t)}setSelectionFocus(...t){this.document.selection._setFocus(...t)}createDocumentFragment(t){return new lm(this.document,t)}createText(t){return new Du(this.document,t)}createAttributeElement(t,e,n={}){const i=new Jg(this.document,t,e);if(typeof n.priority==="number"){i._priority=n.priority}if(n.id){i._id=n.id}if(n.renderUnsafeAttributes){i._unsafeAttributesToRender.push(...n.renderUnsafeAttributes)}return i}createContainerElement(t,e,n={},i={}){let o=null;if(pe(n)){i=n}else{o=n}const r=new Bg(this.document,t,e,o);if(i.renderUnsafeAttributes){r._unsafeAttributesToRender.push(...i.renderUnsafeAttributes)}return r}createEditableElement(t,e,n={}){const i=new Lg(this.document,t,e);if(n.renderUnsafeAttributes){i._unsafeAttributesToRender.push(...n.renderUnsafeAttributes)}return i}createEmptyElement(t,e,n={}){const i=new em(this.document,t,e);if(n.renderUnsafeAttributes){i._unsafeAttributesToRender.push(...n.renderUnsafeAttributes)}return i}createUIElement(t,e,n){const i=new im(this.document,t,e);if(n){i.render=n}return i}createRawElement(t,e,n,i={}){const o=new am(this.document,t,e);if(n){o.render=n}if(i.renderUnsafeAttributes){o._unsafeAttributesToRender.push(...i.renderUnsafeAttributes)}return o}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){if(pe(t)&&n===undefined){e._setStyle(t)}else{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)}breakAttributes(t){if(t instanceof Rg){return this._breakAttributes(t)}else{return this._breakAttributesRange(t)}}breakContainer(t){const e=t.parent;if(!e.is("containerElement")){throw new z("view-writer-break-non-container-element",this.document)}if(!e.parent){throw new z("view-writer-break-root",this.document)}if(t.isAtStart){return Rg._createBefore(e)}else if(!t.isAtEnd){const n=e._clone(false);this.insert(Rg._createAfter(e),n);const i=new Og(t,Rg._createAt(e,"end"));const o=new Rg(n,0);this.move(i,o)}return Rg._createAfter(e)}mergeAttributes(t){const e=t.offset;const n=t.parent;if(n.is("$text")){return t}if(n.is("attributeElement")&&n.childCount===0){const t=n.parent;const e=n.index;n._remove();this._removeFromClonedElementsGroup(n);return this.mergeAttributes(new Rg(t,e))}const i=n.getChild(e-1);const o=n.getChild(e);if(!i||!o){return t}if(i.is("$text")&&o.is("$text")){return bm(i,o)}else if(i.is("attributeElement")&&o.is("attributeElement")&&i.isSimilar(o)){const t=i.childCount;i._appendChild(o.getChildren());o._remove();this._removeFromClonedElementsGroup(o);return this.mergeAttributes(new Rg(i,t))}return t}mergeContainers(t){const e=t.nodeBefore;const n=t.nodeAfter;if(!e||!n||!e.is("containerElement")||!n.is("containerElement")){throw new z("view-writer-merge-containers-invalid-position",this.document)}const i=e.getChild(e.childCount-1);const o=i instanceof Du?Rg._createAt(i,"end"):Rg._createAt(e,"end");this.move(Og._createIn(n),Rg._createAt(e,"end"));this.remove(Og._createOn(n));return o}insert(t,e){e=Tt(e)?[...e]:[e];wm(e,this.document);const n=e.reduce(((t,e)=>{const n=t[t.length-1];const i=!e.is("uiElement");if(!n||n.breakAttributes!=i){t.push({breakAttributes:i,nodes:[e]})}else{n.nodes.push(e)}return t}),[]);let i=null;let o=t;for(const{nodes:t,breakAttributes:e}of n){const n=this._insertNodes(o,t,e);if(!i){i=n.start}o=n.end}if(!i){return new Og(t)}return new Og(i,o)}remove(t){const e=t instanceof Og?t:Og._createOn(t);Cm(e,this.document);if(e.isCollapsed){return new lm(this.document)}const{start:n,end:i}=this._breakAttributesRange(e,true);const o=n.parent;const r=i.offset-n.offset;const s=o._removeChildren(n.offset,r);for(const t of s){this._removeFromClonedElementsGroup(t)}const a=this.mergeAttributes(n);e.start=a;e.end=a.clone();return new lm(this.document,s)}clear(t,e){Cm(t,this.document);const n=t.getWalker({direction:"backward",ignoreElementEnd:true});for(const i of n){const n=i.item;let o;if(n.is("element")&&e.isSimilar(n)){o=Og._createOn(n)}else if(!i.nextPosition.isAfter(t.start)&&n.is("$textProxy")){const t=n.getAncestors().find((t=>t.is("element")&&e.isSimilar(t)));if(t){o=Og._createIn(t)}}if(o){if(o.end.isAfter(t.end)){o.end=t.end}if(o.start.isBefore(t.start)){o.start=t.start}this.remove(o)}}}move(t,e){let n;if(e.isAfter(t.end)){e=this._breakAttributes(e,true);const i=e.parent;const o=i.childCount;t=this._breakAttributesRange(t,true);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 Jg)){throw new z("view-writer-wrap-invalid-attribute",this.document)}Cm(t,this.document);if(!t.isCollapsed){return this._wrapRange(t,e)}else{let n=t.start;if(n.parent.is("element")&&!hm(n.parent)){n=n.getLastMatchingPosition((t=>t.item.is("uiElement")))}n=this._wrapPosition(n,e);const i=this.document.selection;if(i.isCollapsed&&i.getFirstPosition().isEqual(t.start)){this.setSelection(n)}return new Og(n)}}unwrap(t,e){if(!(e instanceof Jg)){throw new z("view-writer-unwrap-invalid-attribute",this.document)}Cm(t,this.document);if(t.isCollapsed){return t}const{start:n,end:i}=this._breakAttributesRange(t,true);const o=n.parent;const r=this._unwrapChildren(o,n.offset,i.offset,e);const s=this.mergeAttributes(r.start);if(!s.isEqual(r.start)){r.end.offset--}const a=this.mergeAttributes(r.end);return new Og(s,a)}rename(t,e){const n=new Bg(this.document,t,e.getAttributes());this.insert(Rg._createAfter(e),n);this.move(Og._createIn(e),Rg._createAt(n,0));this.remove(Og._createOn(e));return n}clearClonedElementsGroup(t){this._cloneGroups.delete(t)}createPositionAt(t,e){return Rg._createAt(t,e)}createPositionAfter(t){return Rg._createAfter(t)}createPositionBefore(t){return Rg._createBefore(t)}createRange(...t){return new Og(...t)}createRangeOn(t){return Og._createOn(t)}createRangeIn(t){return Og._createIn(t)}createSelection(...t){return new Fg(...t)}createSlot(t){if(!this._slotFactory){throw new z("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;if(n){i=gm(t)}else{i=t.parent.is("$text")?t.parent.parent:t.parent}if(!i){throw new z("view-writer-invalid-position-container",this.document)}let o;if(n){o=this._breakAttributes(t,true)}else{o=t.parent.is("$text")?pm(t):t}const r=i._insertChild(o.offset,e);for(const t of e){this._addToClonedElementsGroup(t)}const s=o.getShiftedBy(r);const a=this.mergeAttributes(o);if(!a.isEqual(o)){s.offset--}const c=this.mergeAttributes(s);return new Og(a,c)}_wrapChildren(t,e,n,i){let o=e;const r=[];while(o<n){const e=t.getChild(o);const n=e.is("$text");const s=e.is("attributeElement");if(s&&this._wrapAttributeElement(i,e)){r.push(new Rg(t,o))}else if(n||!s||mm(i,e)){const n=i._clone();e._remove();n._appendChild(e);t._insertChild(o,n);this._addToClonedElementsGroup(n);r.push(new Rg(t,o))}else{this._wrapChildren(e,0,e.childCount,i)}o++}let s=0;for(const t of r){t.offset-=s;if(t.offset==e){continue}const i=this.mergeAttributes(t);if(!i.isEqual(t)){s++;n--}}return Og._createFromParentsAndOffsets(t,e,t,n)}_unwrapChildren(t,e,n,i){let o=e;const r=[];while(o<n){const e=t.getChild(o);if(!e.is("attributeElement")){o++;continue}if(e.isSimilar(i)){const i=e.getChildren();const s=e.childCount;e._remove();t._insertChild(o,i);this._removeFromClonedElementsGroup(e);r.push(new Rg(t,o),new Rg(t,o+s));o+=s;n+=s-1;continue}if(this._unwrapAttributeElement(i,e)){r.push(new Rg(t,o),new Rg(t,o+1));o++;continue}this._unwrapChildren(e,0,e.childCount,i);o++}let s=0;for(const t of r){t.offset-=s;if(t.offset==e||t.offset==n){continue}const i=this.mergeAttributes(t);if(!i.isEqual(t)){s++;n--}}return Og._createFromParentsAndOffsets(t,e,t,n)}_wrapRange(t,e){const{start:n,end:i}=this._breakAttributesRange(t,true);const o=n.parent;const r=this._wrapChildren(o,n.offset,i.offset,e);const s=this.mergeAttributes(r.start);if(!s.isEqual(r.start)){r.end.offset--}const a=this.mergeAttributes(r.end);return new Og(s,a)}_wrapPosition(t,e){if(e.isSimilar(t.parent)){return fm(t.clone())}if(t.parent.is("$text")){t=pm(t)}const n=this.createAttributeElement("_wrapPosition-fake-element");n._priority=Number.POSITIVE_INFINITY;n.isSimilar=()=>false;t.parent._insertChild(t.offset,n);const i=new Og(t,t.getShiftedBy(1));this.wrap(i,e);const o=new Rg(n.parent,n.index);n._remove();const r=o.nodeBefore;const s=o.nodeAfter;if(r instanceof Du&&s instanceof Du){return bm(r,s)}return fm(o)}_wrapAttributeElement(t,e){if(!_m(t,e)){return false}if(t.name!==e.name||t.priority!==e.priority){return false}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}if(e.hasAttribute(n)&&e.getAttribute(n)!==t.getAttribute(n)){return false}}for(const n of t.getStyleNames()){if(e.hasStyle(n)&&e.getStyle(n)!==t.getStyle(n)){return false}}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}if(!e.hasAttribute(n)){this.setAttribute(n,t.getAttribute(n),e)}}for(const n of t.getStyleNames()){if(!e.hasStyle(n)){this.setStyle(n,t.getStyle(n),e)}}for(const n of t.getClassNames()){if(!e.hasClass(n)){this.addClass(n,e)}}return true}_unwrapAttributeElement(t,e){if(!_m(t,e)){return false}if(t.name!==e.name||t.priority!==e.priority){return false}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}if(!e.hasAttribute(n)||e.getAttribute(n)!==t.getAttribute(n)){return false}}if(!e.hasClass(...t.getClassNames())){return false}for(const n of t.getStyleNames()){if(!e.hasStyle(n)||e.getStyle(n)!==t.getStyle(n)){return false}}for(const n of t.getAttributeKeys()){if(n==="class"||n==="style"){continue}this.removeAttribute(n,e)}this.removeClass(Array.from(t.getClassNames()),e);this.removeStyle(Array.from(t.getStyleNames()),e);return true}_breakAttributesRange(t,e=false){const n=t.start;const i=t.end;Cm(t,this.document);if(t.isCollapsed){const n=this._breakAttributes(t.start,e);return new Og(n,n)}const o=this._breakAttributes(i,e);const r=o.parent.childCount;const s=this._breakAttributes(n,e);o.offset+=o.parent.childCount-r;return new Og(s,o)}_breakAttributes(t,e=false){const n=t.offset;const i=t.parent;if(t.parent.is("emptyElement")){throw new z("view-writer-cannot-break-empty-element",this.document)}if(t.parent.is("uiElement")){throw new z("view-writer-cannot-break-ui-element",this.document)}if(t.parent.is("rawElement")){throw new z("view-writer-cannot-break-raw-element",this.document)}if(!e&&i.is("$text")&&Am(i.parent)){return t.clone()}if(Am(i)){return t.clone()}if(i.is("$text")){return this._breakAttributes(pm(t),e)}const o=i.childCount;if(n==o){const t=new Rg(i.parent,i.index+1);return this._breakAttributes(t,e)}else{if(n===0){const t=new Rg(i.parent,i.index);return this._breakAttributes(t,e)}else{const t=i.index+1;const o=i._clone();i.parent._insertChild(t,o);this._addToClonedElementsGroup(o);const r=i.childCount-n;const s=i._removeChildren(n,r);o._appendChild(s);const a=new Rg(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);if(!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);if(!n){return}n.delete(t)}}function hm(t){return Array.from(t.getChildren()).some((t=>!t.is("uiElement")))}function gm(t){let e=t.parent;while(!Am(e)){if(!e){return undefined}e=e.parent}return e}function mm(t,e){if(t.priority<e.priority){return true}else if(t.priority>e.priority){return false}return t.getIdentity()<e.getIdentity()}function fm(t){const e=t.nodeBefore;if(e&&e.is("$text")){return new Rg(e,e.data.length)}const n=t.nodeAfter;if(n&&n.is("$text")){return new Rg(n,0)}return t}function pm(t){if(t.offset==t.parent.data.length){return new Rg(t.parent.parent,t.parent.index+1)}if(t.offset===0){return new Rg(t.parent.parent,t.parent.index)}const e=t.parent.data.slice(t.offset);t.parent._data=t.parent.data.slice(0,t.offset);t.parent.parent._insertChild(t.parent.index+1,new Du(t.root.document,e));return new Rg(t.parent.parent,t.parent.index+1)}function bm(t,e){const n=t.data.length;t._data+=e.data;e._remove();return new Rg(t,n)}const km=[Du,Jg,Bg,em,am,im];function wm(t,e){for(const n of t){if(!km.some((t=>n instanceof t))){throw new z("view-writer-insert-invalid-node-type",e)}if(!n.is("$text")){wm(n.getChildren(),e)}}}function Am(t){return t&&(t.is("containerElement")||t.is("documentFragment"))}function Cm(t,e){const n=gm(t.start);const i=gm(t.end);if(!n||!i||n!==i){throw new z("view-writer-invalid-range-container",e)}}function _m(t,e){return t.id===null&&e.id===null}const vm=t=>t.createTextNode(" ");const ym=t=>{const e=t.createElement("span");e.dataset.ckeFiller="true";e.innerText=" ";return e};const xm=t=>{const e=t.createElement("br");e.dataset.ckeFiller="true";return e};const Em=7;const Dm="⁠".repeat(Em);function Tm(t){return sc(t)&&t.data.substr(0,Em)===Dm}function Sm(t){return t.data.length==Em&&Tm(t)}function Im(t){if(Tm(t)){return t.data.slice(Em)}else{return t.data}}function Bm(t){t.document.on("arrowKey",Mm,{priority:"low"})}function Mm(t,e){if(e.keyCode==Hc.arrowleft){const t=e.domTarget.ownerDocument.defaultView.getSelection();if(t.rangeCount==1&&t.getRangeAt(0).collapsed){const e=t.getRangeAt(0).startContainer;const n=t.getRangeAt(0).startOffset;if(Tm(e)&&n<=Em){t.collapse(e,0)}}}}var Lm=n(4401);var Nm={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Nm.insert="head";Nm.singleton=true;var zm=Tl()(Lm.Z,Nm);const Pm=Lm.Z.locals||{};class Rm extends(mt()){constructor(t,e){super();this.domDocuments=new Set;this.domConverter=t;this.markedAttributes=new Set;this.markedChildren=new Set;this.markedTexts=new Set;this.selection=e;this.set("isFocused",false);this.set("isSelecting",false);if(l.isBlink&&!l.isAndroid){this.on("change:isSelecting",(()=>{if(!this.isSelecting){this.render()}}))}this.set("isComposing",false);this.on("change:isComposing",(()=>{if(!this.isComposing){this.render()}}));this._inlineFiller=null;this._fakeSelectionContainer=null}markToSync(t,e){if(t==="text"){if(this.domConverter.mapViewToDom(e.parent)){this.markedTexts.add(e)}}else{if(!this.domConverter.mapViewToDom(e)){return}if(t==="attributes"){this.markedAttributes.add(e)}else if(t==="children"){this.markedChildren.add(e)}else{throw new z("view-renderer-unknown-type",this)}}}render(){if(this.isComposing&&!l.isAndroid){return}let t=null;const e=l.isBlink&&!l.isAndroid?!this.isSelecting:true;for(const t of this.markedChildren){this._updateChildrenMappings(t)}if(e){if(this._inlineFiller&&!this._isSelectionInInlineFiller()){this._removeInlineFiller()}if(this._inlineFiller){t=this._getInlineFillerPosition()}else if(this._needsInlineFillerAtSelection()){t=this.selection.getFirstPosition();this.markedChildren.add(t.parent)}}else if(this._inlineFiller&&this._inlineFiller.parentNode){t=this.domConverter.domPositionToView(this._inlineFiller);if(t&&t.parent.is("$text")){t=Rg._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){if(!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);const n=e.parent.ownerDocument;if(!Tm(e.parent)){this._inlineFiller=Vm(n,e.parent,e.offset)}else{this._inlineFiller=e.parent}}else{this._inlineFiller=null}}this._updateFocus();this._updateSelection();this.markedTexts.clear();this.markedAttributes.clear();this.markedChildren.clear()}_updateChildrenMappings(t){const e=this.domConverter.mapViewToDom(t);if(!e){return}const n=Array.from(this.domConverter.mapViewToDom(t).childNodes);const i=Array.from(this.domConverter.viewChildrenToDom(t,{withChildren:false}));const o=this._diffNodeLists(n,i);const r=this._findReplaceActions(o,n,i);if(r.indexOf("replace")!==-1){const e={equal:0,insert:0,delete:0};for(const o of r){if(o==="replace"){const o=e.equal+e.insert;const r=e.equal+e.delete;const s=t.getChild(o);if(s&&!(s.is("uiElement")||s.is("rawElement"))){this._updateElementMappings(s,n[r])}Tc(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();if(t.parent.is("$text")){return Rg._createBefore(t.parent)}else{return t}}_isSelectionInInlineFiller(){if(this.selection.rangeCount!=1||!this.selection.isCollapsed){return false}const t=this.selection.getFirstPosition();const e=this.domConverter.viewPositionToDom(t);if(e&&sc(e.parent)&&Tm(e.parent)){return true}return false}_removeInlineFiller(){const t=this._inlineFiller;if(!Tm(t)){throw new z("view-renderer-filler-was-lost",this)}if(Sm(t)){t.remove()}else{t.data=t.data.substr(Em)}this._inlineFiller=null}_needsInlineFillerAtSelection(){if(this.selection.rangeCount!=1||!this.selection.isCollapsed){return false}const t=this.selection.getFirstPosition();const e=t.parent;const n=t.offset;if(!this.domConverter.mapViewToDom(e.root)){return false}if(!e.is("element")){return false}if(!Om(e)){return false}if(n===e.getFillerOffset()){return false}const i=t.nodeBefore;const o=t.nodeAfter;if(i instanceof Du||o instanceof Du){return false}if(l.isAndroid&&(i||o)){return false}return true}_updateText(t,e){const n=this.domConverter.findCorrespondingDomText(t);const i=this.domConverter.viewToDom(t);let o=i.data;const r=e.inlineFillerPosition;if(r&&r.parent==t.parent&&r.offset==t.index){o=Dm+o}$m(n,o)}_updateAttrs(t){const e=this.domConverter.mapViewToDom(t);if(!e){return}const n=Array.from(e.attributes).map((t=>t.name));const i=t.getAttributeKeys();for(const n of i){this.domConverter.setDomElementAttribute(e,n,t.getAttribute(n),t)}for(const i of n){if(!t.hasAttribute(i)){this.domConverter.removeDomElementAttribute(e,i)}}}_updateChildren(t,e){const n=this.domConverter.mapViewToDom(t);if(!n){return}if(l.isAndroid){let t=null;for(const e of Array.from(n.childNodes)){if(t&&sc(t)&&sc(e)){n.normalize();break}t=e}}const i=e.inlineFillerPosition;const o=n.childNodes;const r=Array.from(this.domConverter.viewChildrenToDom(t,{bind:true}));if(i&&i.parent===t){Vm(n.ownerDocument,r,i.offset)}const s=this._diffNodeLists(o,r);const a=l.isAndroid?this._findReplaceActions(s,o,r,{replaceText:true}):s;let c=0;const d=new Set;for(const t of a){if(t==="delete"){d.add(o[c]);Tc(o[c])}else if(t==="equal"||t==="replace"){c++}}c=0;for(const t of a){if(t==="insert"){kc(n,c,r[c]);c++}else if(t==="replace"){$m(o[c],r[c].data);c++}else if(t==="equal"){this._markDescendantTextToSync(this.domConverter.domToView(r[c]));c++}}for(const t of d){if(!t.parentNode){this.domConverter.unbindDomElement(t)}}}_diffNodeLists(t,e){t=Wm(t,this._fakeSelectionContainer);return y(t,e,Hm.bind(null,this.domConverter))}_findReplaceActions(t,e,n,i={}){if(t.indexOf("insert")===-1||t.indexOf("delete")===-1){return t}let o=[];let r=[];let s=[];const a={equal:0,insert:0,delete:0};for(const c of t){if(c==="insert"){s.push(n[a.equal+a.insert])}else if(c==="delete"){r.push(e[a.equal+a.delete])}else{o=o.concat(y(r,s,i.replaceText?jm:Fm).map((t=>t==="equal"?"replace":t)));o.push("equal");r=[];s=[]}a[c]++}return o.concat(y(r,s,i.replaceText?jm:Fm).map((t=>t==="equal"?"replace":t)))}_markDescendantTextToSync(t){if(!t){return}if(t.is("$text")){this.markedTexts.add(t)}else if(t.is("element")){for(const e of t.getChildren()){this._markDescendantTextToSync(e)}}}_updateSelection(){if(l.isBlink&&!l.isAndroid&&this.isSelecting&&!this.markedChildren.size){return}if(this.selection.rangeCount===0){this._removeDomSelection();this._removeFakeSelection();return}const t=this.domConverter.mapViewToDom(this.selection.editableElement);if(!this.isFocused||!t){return}if(this.selection.isFake){this._updateFakeSelection(t)}else if(this._fakeSelectionContainer&&this._fakeSelectionContainer.isConnected){this._removeFakeSelection();this._updateDomSelection(t)}else if(!(this.isComposing&&l.isAndroid)){this._updateDomSelection(t)}}_updateFakeSelection(t){const e=t.ownerDocument;if(!this._fakeSelectionContainer){this._fakeSelectionContainer=qm(e)}const n=this._fakeSelectionContainer;this.domConverter.bindFakeSelection(n,this.selection);if(!this._fakeSelectionNeedsUpdate(t)){return}if(!n.parentElement||n.parentElement!=t){t.appendChild(n)}n.textContent=this.selection.fakeSelectionLabel||" ";const i=e.getSelection();const 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);const i=this.domConverter.viewPositionToDom(this.selection.focus);e.collapse(n.parent,n.offset);e.extend(i.parent,i.offset);if(l.isGecko){Um(i,e)}}_domSelectionNeedsUpdate(t){if(!this.domConverter.isDomSelectionCorrect(t)){return true}const e=t&&this.domConverter.domSelectionToView(t);if(e&&this.selection.isEqual(e)){return false}if(!this.selection.isCollapsed&&this.selection.isSimilar(e)){return false}return true}_fakeSelectionNeedsUpdate(t){const e=this._fakeSelectionContainer;const n=t.ownerDocument.getSelection();if(!e||e.parentElement!==t){return true}if(n.anchorNode!==e&&!e.contains(n.anchorNode)){return true}return e.textContent!==this.selection.fakeSelectionLabel}_removeDomSelection(){for(const t of this.domDocuments){const e=t.getSelection();if(e.rangeCount){const n=t.activeElement;const i=this.domConverter.mapDomToView(n);if(n&&i){e.removeAllRanges()}}}}_removeFakeSelection(){const t=this._fakeSelectionContainer;if(t){t.remove()}}_updateFocus(){if(this.isFocused){const t=this.selection.editableElement;if(t){this.domConverter.focus(t)}}}}function Om(t){if(t.getAttribute("contenteditable")=="false"){return false}const e=t.findAncestor((t=>t.hasAttribute("contenteditable")));return!e||e.getAttribute("contenteditable")=="true"}function Vm(t,e,n){const i=e instanceof Array?e:e.childNodes;const o=i[n];if(sc(o)){o.data=Dm+o.data;return o}else{const o=t.createTextNode(Dm);if(Array.isArray(e)){i.splice(n,0,o)}else{kc(e,n,o)}return o}}function Fm(t,e){return Ya(t)&&Ya(e)&&!sc(t)&&!sc(e)&&!wc(t)&&!wc(e)&&t.tagName.toLowerCase()===e.tagName.toLowerCase()}function jm(t,e){return Ya(t)&&Ya(e)&&sc(t)&&sc(e)}function Hm(t,e,n){if(e===n){return true}else if(sc(e)&&sc(n)){return e.data===n.data}else if(t.isBlockFiller(e)&&t.isBlockFiller(n)){return true}return false}function Um(t,e){const n=t.parent;if(n.nodeType!=Node.ELEMENT_NODE||t.offset!=n.childNodes.length-1){return}const i=n.childNodes[t.offset];if(i&&i.tagName=="BR"){e.addRange(e.getRangeAt(0))}}function Wm(t,e){const n=Array.from(t);if(n.length==0||!e){return n}const i=n[n.length-1];if(i==e){n.pop()}return n}function qm(t){const e=t.createElement("div");e.className="ck-fake-selection-container";Object.assign(e.style,{position:"fixed",top:0,left:"-9999px",width:"42px"});e.textContent=" ";return e}function $m(t,e){const n=t.data;if(n==e){return}const i=k(n,e);for(const e of i){if(e.type==="insert"){t.insertData(e.index,e.values.join(""))}else{t.deleteData(e.index,e.howMany)}}}const Gm=xm(ic.document);const Km=vm(ic.document);const Ym=ym(ic.document);const Zm="data-ck-unsafe-attribute-";const Qm="data-ck-unsafe-element";class Jm{constructor(t,e={}){this.document=t;this.renderingMode=e.renderingMode||"editing";this.blockFillerMode=e.blockFillerMode||(this.renderingMode==="editing"?"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=this.renderingMode==="editing"?ic.document:ic.document.implementation.createHTMLDocument("");this._domToViewMapping=new WeakMap;this._viewToDomMapping=new WeakMap;this._fakeSelectionMapping=new WeakMap;this._rawContentElementMatcher=new Su;this._encounteredRawContentDomNodes=new WeakSet}bindFakeSelection(t,e){this._fakeSelectionMapping.set(t,new Fg(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){if(this.renderingMode==="data"){return true}t=t.toLowerCase();if(t.startsWith("on")){return false}if(t==="srcdoc"&&e.match(/\bon\S+\s*=|javascript:|<\s*\/*script/i)){return false}if(n==="img"&&(t==="src"||t==="srcset")){return true}if(n==="source"&&t==="srcset"){return true}if(e.match(/^\s*(javascript:|data:(image\/svg|text\/x?html))/i)){return false}return true}setContentOf(t,e){if(this.renderingMode==="data"){t.innerHTML=e;return}const n=(new DOMParser).parseFromString(e,"text/html");const i=n.createDocumentFragment();const o=n.body.childNodes;while(o.length>0){i.appendChild(o[0])}const r=n.createTreeWalker(i,NodeFilter.SHOW_ELEMENT);const s=[];let a;while(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();if(this._shouldRenameElement(e)){of(e);t.replaceWith(this._createReplacementDomElement(e,t))}}while(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)}else{if(this.mapViewToDom(t)){return this.mapViewToDom(t)}let n;if(t.is("documentFragment")){n=this._domDocument.createDocumentFragment();if(e.bind){this.bindDocumentFragments(n,t)}}else if(t.is("uiElement")){if(t.name==="$comment"){n=this._domDocument.createComment(t.getCustomProperty("$rawContent"))}else{n=t.render(this._domDocument,this)}if(e.bind){this.bindElements(n,t)}return n}else{if(this._shouldRenameElement(t.name)){of(t.name);n=this._createReplacementDomElement(t.name)}else if(t.hasAttribute("xmlns")){n=this._domDocument.createElementNS(t.getAttribute("xmlns"),t.name)}else{n=this._domDocument.createElement(t.name)}if(t.is("rawElement")){t.render(n,this)}if(e.bind){this.bindElements(n,t)}for(const e of t.getAttributeKeys()){this.setDomElementAttribute(n,e,t.getAttribute(e),t)}}if(e.withChildren!==false){for(const i of this.viewChildrenToDom(t,e)){n.appendChild(i)}}return n}}setDomElementAttribute(t,e,n,i){const o=this.shouldRenderAttribute(e,n,t.tagName.toLowerCase())||i&&i.shouldRenderUnsafeAttribute(e);if(!o){P("domconverter-unsafe-attribute-detected",{domElement:t,key:e,value:n})}if(t.hasAttribute(e)&&!o){t.removeAttribute(e)}else if(t.hasAttribute(Zm+e)&&o){t.removeAttribute(Zm+e)}t.setAttribute(o?e:Zm+e,n)}removeDomElementAttribute(t,e){if(e==Qm){return}t.removeAttribute(e);t.removeAttribute(Zm+e)}*viewChildrenToDom(t,e={}){const n=t.getFillerOffset&&t.getFillerOffset();let i=0;for(const o of t.getChildren()){if(n===i){yield this._getBlockFiller()}const t=o.is("element")&&!!o.getCustomProperty("dataPipeline:transparentRendering")&&!dl(o.getAttributes());if(t&&this.renderingMode=="data"){yield*this.viewChildrenToDom(o,e)}else{if(t){P("domconverter-transparent-rendering-unsupported-in-editing-pipeline",{viewElement:o})}yield this.viewToDom(o,e)}i++}if(n===i){yield this._getBlockFiller()}}viewRangeToDom(t){const e=this.viewPositionToDom(t.start);const n=this.viewPositionToDom(t.end);const i=this._domDocument.createRange();i.setStart(e.parent,e.offset);i.setEnd(n.parent,n.offset);return i}viewPositionToDom(t){const e=t.parent;if(e.is("$text")){const n=this.findCorrespondingDomText(e);if(!n){return null}let i=t.offset;if(Tm(n)){i+=Em}return{parent:n,offset:i}}else{let n,i,o;if(t.offset===0){n=this.mapViewToDom(e);if(!n){return null}o=n.childNodes[0]}else{const e=t.nodeBefore;i=e.is("$text")?this.findCorrespondingDomText(e):this.mapViewToDom(e);if(!i){return null}n=i.parentNode;o=i.nextSibling}if(sc(o)&&Tm(o)){return{parent:o,offset:Em}}const r=i?bc(i)+1:0;return{parent:n,offset:r}}}domToView(t,e={}){if(this.isBlockFiller(t)){return null}const n=this.getHostViewElement(t);if(n){return n}if(wc(t)&&e.skipComments){return null}if(sc(t)){if(Sm(t)){return null}else{const e=this._processDataFromDomText(t);return e===""?null:new Du(this.document,e)}}else{if(this.mapDomToView(t)){return this.mapDomToView(t)}let n;if(this.isDocumentFragment(t)){n=new lm(this.document);if(e.bind){this.bindDocumentFragments(t,n)}}else{n=this._createViewElement(t,e);if(e.bind){this.bindElements(t,n)}const i=t.attributes;if(i){for(let t=i.length,e=0;e<t;e++){n._setAttribute(i[e].name,i[e].value)}}if(this._isViewElementWithRawContent(n,e)||wc(t)){const e=wc(t)?t.data:t.innerHTML;n._setCustomProperty("$rawContent",e);this._encounteredRawContentDomNodes.add(t);return n}}if(e.withChildren!==false){for(const i of this.domChildrenToView(t,e)){n._appendChild(i)}}return n}}*domChildrenToView(t,e){for(let n=0;n<t.childNodes.length;n++){const i=t.childNodes[n];const o=this.domToView(i,e);if(o!==null){yield o}}}domSelectionToView(t){if(t.rangeCount===1){let e=t.getRangeAt(0).startContainer;if(sc(e)){e=e.parentNode}const n=this.fakeSelectionToView(e);if(n){return n}}const e=this.isDomSelectionBackward(t);const n=[];for(let e=0;e<t.rangeCount;e++){const i=t.getRangeAt(e);const o=this.domRangeToView(i);if(o){n.push(o)}}return new Fg(n,{backward:e})}domRangeToView(t){const e=this.domPositionToView(t.startContainer,t.startOffset);const n=this.domPositionToView(t.endContainer,t.endOffset);if(e&&n){return new Og(e,n)}return null}domPositionToView(t,e=0){if(this.isBlockFiller(t)){return this.domPositionToView(t.parentNode,bc(t))}const n=this.mapDomToView(t);if(n&&(n.is("uiElement")||n.is("rawElement"))){return Rg._createBefore(n)}if(sc(t)){if(Sm(t)){return this.domPositionToView(t.parentNode,bc(t))}const n=this.findCorrespondingViewText(t);let i=e;if(!n){return null}if(Tm(t)){i-=Em;i=i<0?0:i}return new Rg(n,i)}else{if(e===0){const e=this.mapDomToView(t);if(e){return new Rg(e,0)}}else{const n=t.childNodes[e-1];if(sc(n)&&Sm(n)){return this.domPositionToView(n.parentNode,bc(n))}const i=sc(n)?this.findCorrespondingViewText(n):this.mapDomToView(n);if(i&&i.parent){return new Rg(i.parent,i.index+1)}}return null}}mapDomToView(t){const e=this.getHostViewElement(t);return e||this._domToViewMapping.get(t)}findCorrespondingViewText(t){if(Sm(t)){return null}const e=this.getHostViewElement(t);if(e){return e}const n=t.previousSibling;if(n){if(!this.isElement(n)){return null}const t=this.mapDomToView(n);if(t){const e=t.nextSibling;if(e instanceof Du){return e}else{return null}}}else{const e=this.mapDomToView(t.parentNode);if(e){const t=e.getChild(0);if(t instanceof Du){return t}else{return null}}}return null}mapViewToDom(t){return this._viewToDomMapping.get(t)}findCorrespondingDomText(t){const e=t.previousSibling;if(e&&this.mapViewToDom(e)){return this.mapViewToDom(e).nextSibling}if(!e&&t.parent&&this.mapViewToDom(t.parent)){return this.mapViewToDom(t.parent).childNodes[0]}return null}focus(t){const e=this.mapViewToDom(t);if(e&&e.ownerDocument.activeElement!==e){const{scrollX:t,scrollY:n}=ic.window;const i=[];tf(e,(t=>{const{scrollLeft:e,scrollTop:n}=t;i.push([e,n])}));e.focus();tf(e,(t=>{const[e,n]=i.shift();t.scrollLeft=e;t.scrollTop=n}));ic.window.scrollTo(t,n)}}isElement(t){return t&&t.nodeType==Node.ELEMENT_NODE}isDocumentFragment(t){return t&&t.nodeType==Node.DOCUMENT_FRAGMENT_NODE}isBlockFiller(t){if(this.blockFillerMode=="br"){return t.isEqualNode(Gm)}if(t.tagName==="BR"&&nf(t,this.blockElements)&&t.parentNode.childNodes.length===1){return true}return t.isEqualNode(Ym)||ef(t,this.blockElements)}isDomSelectionBackward(t){if(t.isCollapsed){return false}const e=this._domDocument.createRange();try{e.setStart(t.anchorNode,t.anchorOffset);e.setEnd(t.focusNode,t.focusOffset)}catch(t){return false}const n=e.collapsed;e.detach();return n}getHostViewElement(t){const e=oc(t);e.pop();while(e.length){const t=e.pop();const n=this._domToViewMapping.get(t);if(n&&(n.is("uiElement")||n.is("rawElement"))){return n}}return null}isDomSelectionCorrect(t){return this._isDomSelectionPositionCorrect(t.anchorNode,t.anchorOffset)&&this._isDomSelectionPositionCorrect(t.focusNode,t.focusOffset)}registerRawContentMatcher(t){this._rawContentElementMatcher.add(t)}_getBlockFiller(){switch(this.blockFillerMode){case"nbsp":return vm(this._domDocument);case"markedNbsp":return ym(this._domDocument);case"br":return xm(this._domDocument)}}_isDomSelectionPositionCorrect(t,e){if(sc(t)&&Tm(t)&&e<Em){return false}if(this.isElement(t)&&Tm(t.childNodes[e])){return false}const n=this.mapDomToView(t);if(n&&(n.is("uiElement")||n.is("rawElement"))){return false}return true}_processDataFromViewText(t){let e=t.data;if(t.getAncestors().some((t=>this.preElements.includes(t.name)))){return e}if(e.charAt(0)==" "){const n=this._getTouchingInlineViewNode(t,false);const i=n&&n.is("$textProxy")&&this._nodeEndsWithSpace(n);if(i||!n){e=" "+e.substr(1)}}if(e.charAt(e.length-1)==" "){const n=this._getTouchingInlineViewNode(t,true);const i=n&&n.is("$textProxy")&&n.data.charAt(0)==" ";if(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 false}const e=this._processDataFromViewText(t);return e.charAt(e.length-1)==" "}_processDataFromDomText(t){let e=t.data;if(Xm(t,this.preElements)){return Im(t)}e=e.replace(/[ \n\t\r]{1,}/g," ");const n=this._getTouchingInlineDomNode(t,false);const i=this._getTouchingInlineDomNode(t,true);const o=this._checkShouldLeftTrimDomText(t,n);const r=this._checkShouldRightTrimDomText(t,i);if(o){e=e.replace(/^ /,"")}if(r){e=e.replace(/ $/,"")}e=Im(new Text(e));e=e.replace(/ \u00A0/g," ");const s=i&&this.isElement(i)&&i.tagName!="BR";const a=i&&sc(i)&&i.data.charAt(0)==" ";if(/( |\u00A0)\u00A0$/.test(e)||!i||s||a){e=e.replace(/\u00A0$/," ")}if(o||n&&this.isElement(n)&&n.tagName!="BR"){e=e.replace(/^\u00A0/," ")}return e}_checkShouldLeftTrimDomText(t,e){if(!e){return true}if(this.isElement(e)){return e.tagName==="BR"}if(this._encounteredRawContentDomNodes.has(t.previousSibling)){return false}return/[^\S\u00A0]/.test(e.data.charAt(e.data.length-1))}_checkShouldRightTrimDomText(t,e){if(e){return false}return!Tm(t)}_getTouchingInlineViewNode(t,e){const n=new Pg({startPosition:e?Rg._createAfter(t):Rg._createBefore(t),direction:e?"forward":"backward"});for(const t of n){if(t.item.is("element")&&this.inlineObjectElements.includes(t.item.name)){return t.item}else if(t.item.is("containerElement")){return null}else if(t.item.is("element","br")){return null}else if(t.item.is("$textProxy")){return t.item}}return null}_getTouchingInlineDomNode(t,e){if(!t.parentNode){return null}const n=e?"firstChild":"lastChild";const i=e?"nextSibling":"previousSibling";let o=true;let r=t;do{if(!o&&r[n]){r=r[n]}else if(r[i]){r=r[i];o=false}else{r=r.parentNode;o=true}if(!r||this._isBlockElement(r)){return null}}while(!(sc(r)||r.tagName=="BR"||this._isInlineObjectElement(r)));return r}_isBlockElement(t){return this.isElement(t)&&this.blockElements.includes(t.tagName.toLowerCase())}_isInlineObjectElement(t){return this.isElement(t)&&this.inlineObjectElements.includes(t.tagName.toLowerCase())}_createViewElement(t,e){if(wc(t)){return new im(this.document,"$comment")}const n=e.keepOriginalCase?t.tagName:t.tagName.toLowerCase();return new Dg(this.document,n)}_isViewElementWithRawContent(t,e){return e.withChildren!==false&&!!this._rawContentElementMatcher.match(t)}_shouldRenameElement(t){const e=t.toLowerCase();return this.renderingMode==="editing"&&this.unsafeElements.includes(e)}_createReplacementDomElement(t,e){const n=this._domDocument.createElement("span");n.setAttribute(Qm,t);if(e){while(e.firstChild){n.appendChild(e.firstChild)}for(const t of e.getAttributeNames()){n.setAttribute(t,e.getAttribute(t))}}return n}}function Xm(t,e){const n=oc(t);return n.some((t=>t.tagName&&e.includes(t.tagName.toLowerCase())))}function tf(t,e){let n=t;while(n){e(n);n=n.parentElement}}function ef(t,e){const n=t.isEqualNode(Km);return n&&nf(t,e)&&t.parentNode.childNodes.length===1}function nf(t,e){const n=t.parentNode;return!!n&&!!n.tagName&&e.includes(n.tagName.toLowerCase())}function of(t){if(t==="script"){P("domconverter-unsafe-script-element-detected")}if(t==="style"){P("domconverter-unsafe-style-element-detected")}}class rf extends(Ja()){constructor(t){super();this.view=t;this.document=t.document;this.isEnabled=false}enable(){this.isEnabled=true}disable(){this.isEnabled=false}destroy(){this.disable();this.stopListening()}checkShouldIgnoreEventFromTarget(t){if(t&&t.nodeType===3){t=t.parentNode}if(!t||t.nodeType!==1){return false}return t.matches("[data-cke-ignore-events], [data-cke-ignore-events] *")}}var sf=fg((function(t,e){ki(e,nr(e),t)}));const af=sf;class cf{constructor(t,e,n){this.view=t;this.document=t.document;this.domEvent=e;this.domTarget=e.target;af(this,n)}get target(){return this.view.domConverter.mapDomToView(this.domTarget)}preventDefault(){this.domEvent.preventDefault()}stopPropagation(){this.domEvent.stopPropagation()}}class lf extends rf{constructor(t){super(t);this.useCapture=false}observe(t){const e=typeof this.domEventType=="string"?[this.domEventType]:this.domEventType;e.forEach((e=>{this.listenTo(t,e,((t,e)=>{if(this.isEnabled&&!this.checkShouldIgnoreEventFromTarget(e.target)){this.onDomEvent(e)}}),{useCapture:this.useCapture})}))}fire(t,e,n){if(this.isEnabled){this.document.fire(t,new cf(this.view,e,n))}}}class df extends lf{constructor(t){super(t);this.domEventType=["keydown","keyup"]}onDomEvent(t){const e={keyCode:t.keyCode,altKey:t.altKey,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,metaKey:t.metaKey,get keystroke(){return Wc(this)}};this.fire(t.type,t,e)}}var uf=function(){return Lt.Date.now()};const hf=uf;var gf=/\s/;function mf(t){var e=t.length;while(e--&&gf.test(t.charAt(e))){}return e}const ff=mf;var pf=/^\s+/;function bf(t){return t?t.slice(0,ff(t)+1).replace(pf,""):t}const kf=bf;var wf=0/0;var Af=/^[-+]0x[0-9a-f]+$/i;var Cf=/^0b[01]+$/i;var _f=/^0o[0-7]+$/i;var vf=parseInt;function yf(t){if(typeof t=="number"){return t}if(ju(t)){return wf}if(at(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=at(e)?e+"":e}if(typeof t!="string"){return t===0?t:+t}t=kf(t);var n=Cf.test(t);return n||_f.test(t)?vf(t.slice(2),n?2:8):Af.test(t)?wf:+t}const xf=yf;var Ef="Expected a function";var Df=Math.max,Tf=Math.min;function Sf(t,e,n){var i,o,r,s,a,c,l=0,d=false,u=false,h=true;if(typeof t!="function"){throw new TypeError(Ef)}e=xf(e)||0;if(at(n)){d=!!n.leading;u="maxWait"in n;r=u?Df(xf(n.maxWait)||0,e):r;h="trailing"in n?!!n.trailing:h}function g(e){var n=i,r=o;i=o=undefined;l=e;s=t.apply(r,n);return s}function m(t){l=t;a=setTimeout(b,e);return d?g(t):s}function f(t){var n=t-c,i=t-l,o=e-n;return u?Tf(o,r-i):o}function p(t){var n=t-c,i=t-l;return c===undefined||n>=e||n<0||u&&i>=r}function b(){var t=hf();if(p(t)){return k(t)}a=setTimeout(b,f(t))}function k(t){a=undefined;if(h&&i){return g(t)}i=o=undefined;return s}function w(){if(a!==undefined){clearTimeout(a)}l=0;i=c=o=a=undefined}function A(){return a===undefined?s:k(hf())}function C(){var t=hf(),n=p(t);i=arguments;o=this;c=t;if(n){if(a===undefined){return m(c)}if(u){clearTimeout(a);a=setTimeout(b,e);return g(c)}}if(a===undefined){a=setTimeout(b,e)}return s}C.cancel=w;C.flush=A;return C}const If=Sf;class Bf extends rf{constructor(t){super(t);this._fireSelectionChangeDoneDebounced=If((t=>{this.document.fire("selectionChangeDone",t)}),200)}observe(){const t=this.document;t.on("arrowKey",((e,n)=>{const i=t.selection;if(i.isFake&&this.isEnabled){n.preventDefault()}}),{context:"$capture"});t.on("arrowKey",((e,n)=>{const i=t.selection;if(i.isFake&&this.isEnabled){this._handleSelectionMove(n.keyCode)}}),{priority:"lowest"})}destroy(){super.destroy();this._fireSelectionChangeDoneDebounced.cancel()}_handleSelectionMove(t){const e=this.document.selection;const n=new Fg(e.getRanges(),{backward:e.isBackward,fake:false});if(t==Hc.arrowleft||t==Hc.arrowup){n.setTo(n.getFirstPosition())}if(t==Hc.arrowright||t==Hc.arrowdown){n.setTo(n.getLastPosition())}const i={oldSelection:e,newSelection:n,domSelection:null};this.document.fire("selectionChange",i);this._fireSelectionChangeDoneDebounced(i)}}var Mf="__lodash_hash_undefined__";function Lf(t){this.__data__.set(t,Mf);return this}const Nf=Lf;function zf(t){return this.__data__.has(t)}const Pf=zf;function Rf(t){var e=-1,n=t==null?0:t.length;this.__data__=new ei;while(++e<n){this.add(t[e])}}Rf.prototype.add=Rf.prototype.push=Nf;Rf.prototype.has=Pf;const Of=Rf;function Vf(t,e){var n=-1,i=t==null?0:t.length;while(++n<i){if(e(t[n],n,t)){return true}}return false}const Ff=Vf;function jf(t,e){return t.has(e)}const Hf=jf;var Uf=1,Wf=2;function qf(t,e,n,i,o,r){var s=n&Uf,a=t.length,c=e.length;if(a!=c&&!(s&&c>a)){return false}var l=r.get(t);var d=r.get(e);if(l&&d){return l==e&&d==t}var u=-1,h=true,g=n&Wf?new Of:undefined;r.set(t,e);r.set(e,t);while(++u<a){var m=t[u],f=e[u];if(i){var p=s?i(f,m,u,e,t,r):i(m,f,u,t,e,r)}if(p!==undefined){if(p){continue}h=false;break}if(g){if(!Ff(e,(function(t,e){if(!Hf(g,e)&&(m===t||o(m,t,n,i,r))){return g.push(e)}}))){h=false;break}}else if(!(m===f||o(m,f,n,i,r))){h=false;break}}r["delete"](t);r["delete"](e);return h}const $f=qf;function Gf(t){var e=-1,n=Array(t.size);t.forEach((function(t,i){n[++e]=[i,t]}));return n}const Kf=Gf;function Yf(t){var e=-1,n=Array(t.size);t.forEach((function(t){n[++e]=t}));return n}const Zf=Yf;var Qf=1,Jf=2;var Xf="[object Boolean]",tp="[object Date]",ep="[object Error]",np="[object Map]",ip="[object Number]",op="[object RegExp]",rp="[object Set]",sp="[object String]",ap="[object Symbol]";var cp="[object ArrayBuffer]",lp="[object DataView]";var dp=zt?zt.prototype:undefined,up=dp?dp.valueOf:undefined;function hp(t,e,n,i,o,r,s){switch(n){case lp:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset){return false}t=t.buffer;e=e.buffer;case cp:if(t.byteLength!=e.byteLength||!r(new ds(t),new ds(e))){return false}return true;case Xf:case tp:case ip:return Ae(+t,+e);case ep:return t.name==e.name&&t.message==e.message;case op:case sp:return t==e+"";case np:var a=Kf;case rp:var c=i&Qf;a||(a=Zf);if(t.size!=e.size&&!c){return false}var l=s.get(t);if(l){return l==e}i|=Jf;s.set(t,e);var d=$f(a(t),a(e),i,o,r,s);s["delete"](t);return d;case ap:if(up){return up.call(t)==up.call(e)}}return false}const gp=hp;var mp=1;var fp=Object.prototype;var pp=fp.hasOwnProperty;function bp(t,e,n,i,o,r){var s=n&mp,a=zr(t),c=a.length,l=zr(e),d=l.length;if(c!=d&&!s){return false}var u=c;while(u--){var h=a[u];if(!(s?h in e:pp.call(e,h))){return false}}var g=r.get(t);var m=r.get(e);if(g&&m){return g==e&&m==t}var f=true;r.set(t,e);r.set(e,t);var p=s;while(++u<c){h=a[u];var b=t[h],k=e[h];if(i){var w=s?i(k,b,h,e,t,r):i(b,k,h,t,e,r)}if(!(w===undefined?b===k||o(b,k,n,i,r):w)){f=false;break}p||(p=h=="constructor")}if(f&&!p){var A=t.constructor,C=e.constructor;if(A!=C&&("constructor"in t&&"constructor"in e)&&!(typeof A=="function"&&A instanceof A&&typeof C=="function"&&C instanceof C)){f=false}}r["delete"](t);r["delete"](e);return f}const kp=bp;var wp=1;var Ap="[object Arguments]",Cp="[object Array]",_p="[object Object]";var vp=Object.prototype;var yp=vp.hasOwnProperty;function xp(t,e,n,i,o,r){var s=Jt(t),a=Jt(e),c=s?Cp:os(t),l=a?Cp:os(e);c=c==Ap?_p:c;l=l==Ap?_p:l;var d=c==_p,u=l==_p,h=c==l;if(h&&Ri(t)){if(!Ri(e)){return false}s=true;d=false}if(h&&!d){r||(r=new si);return s||So(t)?$f(t,e,n,i,o,r):gp(t,e,c,n,i,o,r)}if(!(n&wp)){var g=d&&yp.call(t,"__wrapped__"),m=u&&yp.call(e,"__wrapped__");if(g||m){var f=g?t.value():t,p=m?e.value():e;r||(r=new si);return o(f,p,n,i,r)}}if(!h){return false}r||(r=new si);return kp(t,e,n,i,o,r)}const Ep=xp;function Dp(t,e,n,i,o){if(t===e){return true}if(t==null||e==null||!te(t)&&!te(e)){return t!==t&&e!==e}return Ep(t,e,n,i,Dp,o)}const Tp=Dp;function Sp(t,e,n){n=typeof n=="function"?n:undefined;var i=n?n(t,e):undefined;return i===undefined?Tp(t,e,undefined,n):!!i}const Ip=Sp;class Bp extends rf{constructor(t){super(t);this._config={childList:true,characterData:true,subtree:true};this.domConverter=t.domConverter;this.renderer=t._renderer;this._domElements=[];this._mutationObserver=new window.MutationObserver(this._onMutations.bind(this))}flush(){this._onMutations(this._mutationObserver.takeRecords())}observe(t){this._domElements.push(t);if(this.isEnabled){this._mutationObserver.observe(t,this._config)}}enable(){super.enable();for(const t of this._domElements){this._mutationObserver.observe(t,this._config)}}disable(){super.disable();this._mutationObserver.disconnect()}destroy(){super.destroy();this._mutationObserver.disconnect()}_onMutations(t){if(t.length===0){return}const e=this.domConverter;const n=new Set;const i=new Set;for(const n of t){const t=e.mapDomToView(n.target);if(!t){continue}if(t.is("uiElement")||t.is("rawElement")){continue}if(n.type==="childList"&&!this._isBogusBrMutation(n)){i.add(t)}}for(const o of t){const t=e.mapDomToView(o.target);if(t&&(t.is("uiElement")||t.is("rawElement"))){continue}if(o.type==="characterData"){const t=e.findCorrespondingViewText(o.target);if(t&&!i.has(t.parent)){n.add(t)}else if(!t&&Tm(o.target)){i.add(e.mapDomToView(o.target.parentNode))}}}let o=false;for(const t of n){o=true;this.renderer.markToSync("text",t)}for(const t of i){const n=e.mapViewToDom(t);const i=Array.from(t.getChildren());const r=Array.from(e.domChildrenToView(n,{withChildren:false}));if(!Ip(i,r,Mp)){o=true;this.renderer.markToSync("children",t)}}if(o){this.view.forceRender()}}_isBogusBrMutation(t){let e=null;if(t.nextSibling===null&&t.removedNodes.length===0&&t.addedNodes.length==1){e=this.domConverter.domToView(t.addedNodes[0],{withChildren:false})}return e&&e.is("element","br")}}function Mp(t,e){if(Array.isArray(t)){return}if(t===e){return true}else if(t.is("$text")&&e.is("$text")){return t.data===e.data}return false}class Lp extends lf{constructor(t){super(t);this._isFocusChanging=false;this.domEventType=["focus","blur"];this.useCapture=true;const e=this.document;e.on("focus",(()=>{this._isFocusChanging=true;this._renderTimeoutId=setTimeout((()=>{this.flush();t.change((()=>{}))}),50)}));e.on("blur",((n,i)=>{const o=e.selection.editableElement;if(o===null||o===i.target){e.isFocused=false;this._isFocusChanging=false;t.change((()=>{}))}}))}flush(){if(this._isFocusChanging){this._isFocusChanging=false;this.document.isFocused=true}}onDomEvent(t){this.fire(t.type,t)}destroy(){if(this._renderTimeoutId){clearTimeout(this._renderTimeoutId)}super.destroy()}}class Np extends rf{constructor(t){super(t);this.mutationObserver=t.getObserver(Bp);this.focusObserver=t.getObserver(Lp);this.selection=this.document.selection;this.domConverter=t.domConverter;this._documents=new WeakSet;this._fireSelectionChangeDoneDebounced=If((t=>{this.document.fire("selectionChangeDone",t)}),200);this._clearInfiniteLoopInterval=setInterval((()=>this._clearInfiniteLoop()),1e3);this._documentIsSelectingInactivityTimeoutDebounced=If((()=>this.document.isSelecting=false),5e3);this._loopbackCounter=0}observe(t){const e=t.ownerDocument;const n=()=>{this.document.isSelecting=true;this._documentIsSelectingInactivityTimeoutDebounced()};const i=()=>{if(!this.document.isSelecting){return}this._handleSelectionChange(null,e);this.document.isSelecting=false;this._documentIsSelectingInactivityTimeoutDebounced.cancel()};this.listenTo(t,"selectstart",n,{priority:"highest"});this.listenTo(t,"keydown",i,{priority:"highest",useCapture:true});this.listenTo(t,"keyup",i,{priority:"highest",useCapture:true});if(this._documents.has(e)){return}this.listenTo(e,"mouseup",i,{priority:"highest",useCapture:true});this.listenTo(e,"selectionchange",((t,n)=>{if(this.document.isComposing&&!l.isAndroid){return}this._handleSelectionChange(n,e);this._documentIsSelectingInactivityTimeoutDebounced()}));this._documents.add(e)}destroy(){super.destroy();clearInterval(this._clearInfiniteLoopInterval);this._fireSelectionChangeDoneDebounced.cancel();this._documentIsSelectingInactivityTimeoutDebounced.cancel()}_handleSelectionChange(t,e){if(!this.isEnabled){return}const n=e.defaultView.getSelection();if(this.checkShouldIgnoreEventFromTarget(n.anchorNode)){return}this.mutationObserver.flush();const i=this.domConverter.domSelectionToView(n);if(i.rangeCount==0){this.view.hasDomSelection=false;return}this.view.hasDomSelection=true;if(this.selection.isEqual(i)&&this.domConverter.isDomSelectionCorrect(n)){return}if(++this._loopbackCounter>60){return}this.focusObserver.flush();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)}}_clearInfiniteLoop(){this._loopbackCounter=0}}class zp extends lf{constructor(t){super(t);this.domEventType=["compositionstart","compositionupdate","compositionend"];const e=this.document;e.on("compositionstart",(()=>{e.isComposing=true}),{priority:"low"});e.on("compositionend",(()=>{e.isComposing=false}),{priority:"low"})}onDomEvent(t){this.fire(t.type,t,{data:t.data})}}class Pp{constructor(t,e={}){this._files=e.cacheFiles?Rp(t):null;this._native=t}get files(){if(!this._files){this._files=Rp(this._native)}return 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}get isCanceled(){return this._native.dropEffect=="none"||!!this._native.mozUserCancelled}}function Rp(t){const e=Array.from(t.files||[]);const n=Array.from(t.items||[]);if(e.length){return e}return n.filter((t=>t.kind==="file")).map((t=>t.getAsFile()))}class Op extends lf{constructor(t){super(t);this.domEventType=["beforeinput"]}onDomEvent(t){const e=t.getTargetRanges();const n=this.view;const i=n.document;let o=null;let r=null;let s=[];if(t.dataTransfer){o=new Pp(t.dataTransfer)}if(t.data!==null){r=t.data}else if(o){r=o.getData("text/plain")}if(i.selection.isFake){s=Array.from(i.selection.getRanges())}else if(e.length){s=e.map((t=>n.domConverter.domRangeToView(t)))}else if(l.isAndroid){const e=t.target.ownerDocument.defaultView.getSelection();s=Array.from(n.domConverter.domSelectionToView(e).getRanges())}if(l.isAndroid&&t.inputType=="insertCompositionText"&&r&&r.endsWith("\n")){this.fire(t.type,t,{inputType:"insertParagraph",targetRanges:[n.createRange(s[0].end)]});return}if(t.inputType=="insertText"&&r&&r.includes("\n")){const e=r.split(/\n{1,2}/g);let n=s;for(let r=0;r<e.length;r++){const s=e[r];if(s!=""){this.fire(t.type,t,{data:s,dataTransfer:o,targetRanges:n,inputType:t.inputType,isComposing:t.isComposing});n=[i.selection.getFirstRange()]}if(r+1<e.length){this.fire(t.type,t,{inputType:"insertParagraph",targetRanges:n});n=[i.selection.getFirstRange()]}}return}this.fire(t.type,t,{data:r,dataTransfer:o,targetRanges:s,inputType:t.inputType,isComposing:t.isComposing})}}class Vp extends rf{constructor(t){super(t);this.document.on("keydown",((t,e)=>{if(this.isEnabled&&Gc(e.keyCode)){const n=new Hg(this.document,"arrowKey",this.document.selection.getFirstRange());this.document.fire(n,e);if(n.stop.called){t.stop()}}}))}observe(){}}class Fp extends rf{constructor(t){super(t);const e=this.document;e.on("keydown",((t,n)=>{if(!this.isEnabled||n.keyCode!=Hc.tab||n.ctrlKey){return}const i=new Hg(e,"tab",e.selection.getFirstRange());e.fire(i,n);if(i.stop.called){t.stop()}}))}observe(){}}class jp extends(mt()){constructor(t){super();this.document=new Zg(t);this.domConverter=new Jm(this.document);this.domRoots=new Map;this.set("isRenderingInProgress",false);this.set("hasDomSelection",false);this._renderer=new Rm(this.domConverter,this.document.selection);this._renderer.bind("isFocused","isSelecting","isComposing").to(this.document,"isFocused","isSelecting","isComposing");this._initialDomRootAttributes=new WeakMap;this._observers=new Map;this._ongoingChange=false;this._postFixersInProgress=false;this._renderingDisabled=false;this._hasChangedSinceTheLastRendering=false;this._writer=new um(this.document);this.addObserver(Bp);this.addObserver(Lp);this.addObserver(Np);this.addObserver(df);this.addObserver(Bf);this.addObserver(zp);this.addObserver(Vp);this.addObserver(Op);this.addObserver(Fp);Bm(this);om(this);this.on("render",(()=>{this._render();this.document.fire("layoutChanged");this._hasChangedSinceTheLastRendering=false}));this.listenTo(this.document.selection,"change",(()=>{this._hasChangedSinceTheLastRendering=true}));this.listenTo(this.document,"change:isFocused",(()=>{this._hasChangedSinceTheLastRendering=true}))}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;if(e==="class"){this._writer.addClass(o.split(" "),n)}else{this._writer.setAttribute(e,o,n)}}this._initialDomRootAttributes.set(t,i);const o=()=>{this._writer.setAttribute("contenteditable",(!n.isReadOnly).toString(),n);if(n.isReadOnly){this._writer.addClass("ck-read-only",n)}else{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=true}));for(const n of this._observers.values()){n.observe(t,e)}}detachDomRoot(t){const e=this.domRoots.get(t);Array.from(e.attributes).forEach((({name:t})=>e.removeAttribute(t)));const n=this._initialDomRootAttributes.get(e);for(const t in n){e.setAttribute(t,n[t])}this.domRoots.delete(t);this.domConverter.unbindDomElement(e)}getDomRoot(t="main"){return this.domRoots.get(t)}addObserver(t){let e=this._observers.get(t);if(e){return e}e=new t(this);this._observers.set(t,e);for(const[t,n]of this.domRoots){e.observe(n,t)}e.enable();return e}getObserver(t){return this._observers.get(t)}disableObservers(){for(const t of this._observers.values()){t.disable()}}enableObservers(){for(const t of this._observers.values()){t.enable()}}scrollToTheSelection(){const t=this.document.selection.getFirstRange();if(t){Sc({target:this.domConverter.viewRangeToDom(t),viewportOffset:20})}}focus(){if(!this.document.isFocused){const t=this.document.selection.editableElement;if(t){this.domConverter.focus(t);this.forceRender()}else{}}}change(t){if(this.isRenderingInProgress||this._postFixersInProgress){throw new z("cannot-change-view-tree",this)}try{if(this._ongoingChange){return t(this._writer)}this._ongoingChange=true;const e=t(this._writer);this._ongoingChange=false;if(!this._renderingDisabled&&this._hasChangedSinceTheLastRendering){this._postFixersInProgress=true;this.document._callPostFixers(this._writer);this._postFixersInProgress=false;this.fire("render")}return e}catch(t){z.rethrowUnexpectedError(t,this)}}forceRender(){this._hasChangedSinceTheLastRendering=true;this.getObserver(Lp).flush();this.change((()=>{}))}destroy(){for(const t of this._observers.values()){t.destroy()}this.document.destroy();this.stopListening()}createPositionAt(t,e){return Rg._createAt(t,e)}createPositionAfter(t){return Rg._createAfter(t)}createPositionBefore(t){return Rg._createBefore(t)}createRange(...t){return new Og(...t)}createRangeOn(t){return Og._createOn(t)}createRangeIn(t){return Og._createIn(t)}createSelection(...t){return new Fg(...t)}_disableRendering(t){this._renderingDisabled=t;if(t==false){this.change((()=>{}))}}_render(){this.isRenderingInProgress=true;this.disableObservers();this._renderer.render();this.enableObservers();this.isRenderingInProgress=false}}class Hp{is(){throw new Error("is() method is abstract")}}class Up extends Hp{constructor(t){super();this.parent=null;this._attrs=ml(t)}get document(){return null}get index(){let t;if(!this.parent){return null}if((t=this.parent.getChildIndex(this))===null){throw new z("model-node-not-found-in-parent",this)}return t}get startOffset(){let t;if(!this.parent){return null}if((t=this.parent.getChildStartOffset(this))===null){throw new z("model-node-not-found-in-parent",this)}return t}get offsetSize(){return 1}get endOffset(){if(!this.parent){return null}return this.startOffset+this.offsetSize}get nextSibling(){const t=this.index;return t!==null&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return t!==null&&this.parent.getChild(t-1)||null}get root(){let t=this;while(t.parent){t=t.parent}return t}isAttached(){return this.root.is("rootElement")}getPath(){const t=[];let e=this;while(e.parent){t.unshift(e.startOffset);e=e.parent}return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;while(n){e[t.parentFirst?"push":"unshift"](n);n=n.parent}return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e);const i=t.getAncestors(e);let o=0;while(n[o]==i[o]&&n[o]){o++}return o===0?null:n[o-1]}isBefore(t){if(this==t){return false}if(this.root!==t.root){return false}const e=this.getPath();const n=t.getPath();const i=Dt(e,n);switch(i){case"prefix":return true;case"extension":return false;default:return e[i]<n[i]}}isAfter(t){if(this==t){return false}if(this.root!==t.root){return false}return!this.isBefore(t)}hasAttribute(t){return this._attrs.has(t)}getAttribute(t){return this._attrs.get(t)}getAttributes(){return this._attrs.entries()}getAttributeKeys(){return this._attrs.keys()}toJSON(){const t={};if(this._attrs.size){t.attributes=Array.from(this._attrs).reduce(((t,e)=>{t[e[0]]=e[1];return t}),{})}return 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=ml(t)}_removeAttribute(t){return this._attrs.delete(t)}_clearAttributes(){this._attrs.clear()}}Up.prototype.is=function(t){return t==="node"||t==="model:node"};class Wp{constructor(t){this._nodes=[];if(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 e==-1?null:e}getNodeStartOffset(t){const e=this.getNodeIndex(t);return e===null?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 z("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&&t<e+n.offsetSize){return this.getNodeIndex(n)}e+=n.offsetSize}if(e!=t){throw new z("model-nodelist-offset-out-of-bounds",this,{offset:t,nodeList:this})}return this.length}_insertNodes(t,e){for(const t of e){if(!(t instanceof Up)){throw new z("model-nodelist-insertnodes-not-node",this)}}this._nodes=pl(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 qp extends Up{constructor(t,e){super(e);this._data=t||""}get offsetSize(){return this.data.length}get data(){return this._data}toJSON(){const t=super.toJSON();t.data=this.data;return t}_clone(){return new qp(this.data,this.getAttributes())}static fromJSON(t){return new qp(t.data,t.attributes)}}qp.prototype.is=function(t){return t==="$text"||t==="model:$text"||t==="text"||t==="model:text"||t==="node"||t==="model:node"};class $p extends Hp{constructor(t,e,n){super();this.textNode=t;if(e<0||e>t.offsetSize){throw new z("model-textproxy-wrong-offsetintext",this)}if(n<0||e+n>t.offsetSize){throw new z("model-textproxy-wrong-length",this)}this.data=t.data.substring(e,e+n);this.offsetInText=e}get startOffset(){return this.textNode.startOffset!==null?this.textNode.startOffset+this.offsetInText:null}get offsetSize(){return this.data.length}get endOffset(){return this.startOffset!==null?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();if(t.length>0){t[t.length-1]+=this.offsetInText}return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;while(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()}}$p.prototype.is=function(t){return t==="$textProxy"||t==="model:$textProxy"||t==="textProxy"||t==="model:textProxy"};class Gp extends Up{constructor(t,e,n){super(e);this._children=new Wp;this.name=t;if(n){this._insertChild(0,n)}}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return this.childCount===0}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;while(n){if(n.name===t){return n}n=n.parent}return null}toJSON(){const t=super.toJSON();t.name=this.name;if(this._children.length>0){t.children=[];for(const e of this._children){t.children.push(e.toJSON())}}return t}_clone(t=false){const e=t?Array.from(this._children).map((t=>t._clone(true))):undefined;return new Gp(this.name,this.getAttributes(),e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=Kp(e);for(const t of n){if(t.parent!==null){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){if(n.name){e.push(Gp.fromJSON(n))}else{e.push(qp.fromJSON(n))}}}return new Gp(t.name,t.attributes,e)}}Gp.prototype.is=function(t,e){if(!e){return t==="element"||t==="model:element"||t==="node"||t==="model:node"}return e===this.name&&(t==="element"||t==="model:element")};function Kp(t){if(typeof t=="string"){return[new qp(t)]}if(!Tt(t)){t=[t]}return Array.from(t).map((t=>{if(typeof t=="string"){return new qp(t)}if(t instanceof $p){return new qp(t.data,t.getAttributes())}return t}))}class Yp{constructor(t){if(!t||!t.boundaries&&!t.startPosition){throw new z("model-tree-walker-no-start-position",null)}const e=t.direction||"forward";if(e!="forward"&&e!="backward"){throw new z("model-tree-walker-unknown-direction",t,{direction:e})}this.direction=e;this.boundaries=t.boundaries||null;if(t.startPosition){this.position=t.startPosition.clone()}else{this.position=Qp._createAt(this.boundaries[this.direction=="backward"?"end":"start"])}this.position.stickiness="toNone";this.singleCharacters=!!t.singleCharacters;this.shallow=!!t.shallow;this.ignoreElementEnd=!!t.ignoreElementEnd;this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null;this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null;this._visitedParent=this.position.parent}[Symbol.iterator](){return this}skip(t){let e,n,i,o;do{i=this.position;o=this._visitedParent;({done:e,value:n}=this.next())}while(!e&&t(n));if(!e){this.position=i;this._visitedParent=o}}next(){if(this.direction=="forward"){return this._next()}else{return this._previous()}}_next(){const t=this.position;const e=this.position.clone();const n=this._visitedParent;if(n.parent===null&&e.offset===n.maxOffset){return{done:true,value:undefined}}if(n===this._boundaryEndParent&&e.offset==this.boundaries.end.offset){return{done:true,value:undefined}}const i=Jp(e,n);const o=i?i:Xp(e,n,i);if(o instanceof Gp){if(!this.shallow){e.path.push(0);this._visitedParent=o}else{e.offset++}this.position=e;return Zp("elementStart",o,t,e,1)}else if(o instanceof qp){let i;if(this.singleCharacters){i=1}else{let t=o.endOffset;if(this._boundaryEndParent==n&&this.boundaries.end.offset<t){t=this.boundaries.end.offset}i=t-e.offset}const r=e.offset-o.startOffset;const s=new $p(o,r,i);e.offset+=i;this.position=e;return Zp("text",s,t,e,i)}else{e.path.pop();e.offset++;this.position=e;this._visitedParent=n.parent;if(this.ignoreElementEnd){return this._next()}else{return Zp("elementEnd",n,t,e)}}}_previous(){const t=this.position;const e=this.position.clone();const n=this._visitedParent;if(n.parent===null&&e.offset===0){return{done:true,value:undefined}}if(n==this._boundaryStartParent&&e.offset==this.boundaries.start.offset){return{done:true,value:undefined}}const i=e.parent;const o=Jp(e,i);const r=o?o:tb(e,i,o);if(r instanceof Gp){e.offset--;if(!this.shallow){e.path.push(r.maxOffset);this.position=e;this._visitedParent=r;if(this.ignoreElementEnd){return this._previous()}else{return Zp("elementEnd",r,t,e)}}else{this.position=e;return Zp("elementStart",r,t,e,1)}}else if(r instanceof qp){let i;if(this.singleCharacters){i=1}else{let t=r.startOffset;if(this._boundaryStartParent==n&&this.boundaries.start.offset>t){t=this.boundaries.start.offset}i=e.offset-t}const o=e.offset-r.startOffset;const s=new $p(r,o-i,i);e.offset-=i;this.position=e;return Zp("text",s,t,e,i)}else{e.path.pop();this.position=e;this._visitedParent=n.parent;return Zp("elementStart",n,t,e,1)}}}function Zp(t,e,n,i,o){return{done:false,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}class Qp extends Hp{constructor(t,e,n="toNone"){super();if(!t.is("element")&&!t.is("documentFragment")){throw new z("model-position-root-invalid",t)}if(!(e instanceof Array)||e.length===0){throw new z("model-position-path-incorrect-format",t,{path:e})}if(t.is("rootElement")){e=e.slice()}else{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;e<this.path.length-1;e++){t=t.getChild(t.offsetToIndex(this.path[e]));if(!t){throw new z("model-position-path-incorrect",this,{position:this})}}if(t.is("$text")){throw new z("model-position-path-incorrect",this,{position:this})}return t}get index(){return this.parent.offsetToIndex(this.offset)}get textNode(){return Jp(this,this.parent)}get nodeAfter(){const t=this.parent;return Xp(this,t,Jp(this,t))}get nodeBefore(){const t=this.parent;return tb(this,t,Jp(this,t))}get isAtStart(){return this.offset===0}get isAtEnd(){return this.offset==this.parent.maxOffset}compareWith(t){if(this.root!=t.root){return"different"}const e=Dt(this.path,t.path);switch(e){case"same":return"same";case"prefix":return"before";case"extension":return"after";default:return this.path[e]<t.path[e]?"before":"after"}}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new Yp(e);n.skip(t);return n.position}getParentPath(){return this.path.slice(0,-1)}getAncestors(){const t=this.parent;if(t.is("documentFragment")){return[t]}else{return t.getAncestors({includeSelf:true})}}findAncestor(t){const e=this.parent;if(e.is("element")){return e.findAncestor(t,{includeSelf:true})}return null}getCommonPath(t){if(this.root!=t.root){return[]}const e=Dt(this.path,t.path);const n=typeof e=="string"?Math.min(this.path.length,t.path.length):e;return this.path.slice(0,n)}getCommonAncestor(t){const e=this.getAncestors();const n=t.getAncestors();let i=0;while(e[i]==n[i]&&e[i]){i++}return i===0?null:e[i-1]}getShiftedBy(t){const e=this.clone();const n=e.offset+t;e.offset=n<0?0:n;return e}isAfter(t){return this.compareWith(t)=="after"}isBefore(t){return this.compareWith(t)=="before"}isEqual(t){return this.compareWith(t)=="same"}isTouching(t){if(this.root!==t.root){return false}const e=Math.min(this.path.length,t.path.length);for(let n=0;n<e;n++){const e=this.path[n]-t.path[n];if(e<-1||e>1){return false}else if(e===1){return eb(t,this,n)}else if(e===-1){return eb(this,t,n)}}if(this.path.length===t.path.length){return true}else if(this.path.length>t.path.length){return nb(this.path,e)}else{return nb(t.path,e)}}hasSameParentAs(t){if(this.root!==t.root){return false}const e=this.getParentPath();const n=t.getParentPath();return Dt(e,n)=="same"}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=Qp._createAt(this);break}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;const n=e.containsPosition(this)||e.start.isEqual(this)&&this.stickiness=="toNext";if(n){return this._getCombined(t.splitPosition,t.moveTargetPosition)}else{if(t.graveyardPosition){return this._getTransformedByMove(t.graveyardPosition,t.insertionPosition,1)}else{return this._getTransformedByInsertion(t.insertionPosition,1)}}}_getTransformedByMergeOperation(t){const e=t.movedRange;const n=e.containsPosition(this)||e.start.isEqual(this);let i;if(n){i=this._getCombined(t.sourcePosition,t.targetPosition);if(t.sourcePosition.isBefore(t.targetPosition)){i=i._getTransformedByDeletion(t.deletionPosition,1)}}else if(this.isEqual(t.deletionPosition)){i=Qp._createAt(t.deletionPosition)}else{i=this._getTransformedByMove(t.deletionPosition,t.graveyardPosition,1)}return i}_getTransformedByDeletion(t,e){const n=Qp._createAt(this);if(this.root!=t.root){return n}if(Dt(t.getParentPath(),this.getParentPath())=="same"){if(t.offset<this.offset){if(t.offset+e>this.offset){return null}else{n.offset-=e}}}else if(Dt(t.getParentPath(),this.getParentPath())=="prefix"){const i=t.path.length-1;if(t.offset<=this.path[i]){if(t.offset+e>this.path[i]){return null}else{n.path[i]-=e}}}return n}_getTransformedByInsertion(t,e){const n=Qp._createAt(this);if(this.root!=t.root){return n}if(Dt(t.getParentPath(),this.getParentPath())=="same"){if(t.offset<this.offset||t.offset==this.offset&&this.stickiness!="toPrevious"){n.offset+=e}}else if(Dt(t.getParentPath(),this.getParentPath())=="prefix"){const i=t.path.length-1;if(t.offset<=this.path[i]){n.path[i]+=e}}return n}_getTransformedByMove(t,e,n){e=e._getTransformedByDeletion(t,n);if(t.isEqual(e)){return Qp._createAt(this)}const i=this._getTransformedByDeletion(t,n);const o=i===null||t.isEqual(this)&&this.stickiness=="toNext"||t.getShiftedBy(n).isEqual(this)&&this.stickiness=="toPrevious";if(o){return this._getCombined(t,e)}else{return i._getTransformedByInsertion(e,n)}}_getCombined(t,e){const n=t.path.length-1;const i=Qp._createAt(e);i.stickiness=this.stickiness;i.offset=i.offset+this.path[n]-t.offset;i.path=[...i.path,...this.path.slice(n+1)];return i}toJSON(){return{root:this.root.toJSON(),path:Array.from(this.path),stickiness:this.stickiness}}clone(){return new this.constructor(this.root,this.path,this.stickiness)}static _createAt(t,e,n="toNone"){if(t instanceof Qp){return new Qp(t.root,t.path,t.stickiness)}else{const i=t;if(e=="end"){e=i.maxOffset}else if(e=="before"){return this._createBefore(i,n)}else if(e=="after"){return this._createAfter(i,n)}else if(e!==0&&!e){throw new z("model-createpositionat-offset-required",[this,t])}if(!i.is("element")&&!i.is("documentFragment")){throw new z("model-position-parent-incorrect",[this,t])}const o=i.getPath();o.push(e);return new this(i.root,o,n)}}static _createAfter(t,e){if(!t.parent){throw new z("model-position-after-root",[this,t],{root:t})}return this._createAt(t.parent,t.endOffset,e)}static _createBefore(t,e){if(!t.parent){throw new z("model-position-before-root",t,{root:t})}return this._createAt(t.parent,t.startOffset,e)}static fromJSON(t,e){if(t.root==="$graveyard"){const n=new Qp(e.graveyard,t.path);n.stickiness=t.stickiness;return n}if(!e.getRoot(t.root)){throw new z("model-position-fromjson-no-root",e,{rootName:t.root})}return new Qp(e.getRoot(t.root),t.path,t.stickiness)}}Qp.prototype.is=function(t){return t==="position"||t==="model:position"};function Jp(t,e){const n=e.getChild(e.offsetToIndex(t.offset));if(n&&n.is("$text")&&n.startOffset<t.offset){return n}return null}function Xp(t,e,n){if(n!==null){return null}return e.getChild(e.offsetToIndex(t.offset))}function tb(t,e,n){if(n!==null){return null}return e.getChild(e.offsetToIndex(t.offset)-1)}function eb(t,e,n){if(n+1===t.path.length){return false}if(!nb(e.path,n+1)){return false}if(!ib(t,n+1)){return false}return true}function nb(t,e){while(e<t.length){if(t[e]!==0){return false}e++}return true}function ib(t,e){let n=t.parent;let i=t.path.length-1;let o=0;while(i>=e){if(t.path[i]+o!==n.maxOffset){return false}o=1;i--;n=n.parent}return true}class ob extends Hp{constructor(t,e){super();this.start=Qp._createAt(t);this.end=e?Qp._createAt(e):Qp._createAt(t);this.start.stickiness=this.isCollapsed?"toNone":"toNext";this.end.stickiness=this.isCollapsed?"toNone":"toPrevious"}*[Symbol.iterator](){yield*new Yp({boundaries:this,ignoreElementEnd:true})}get isCollapsed(){return this.start.isEqual(this.end)}get isFlat(){const t=this.start.getParentPath();const e=this.end.getParentPath();return Dt(t,e)=="same"}get root(){return this.start.root}containsPosition(t){return t.isAfter(this.start)&&t.isBefore(this.end)}containsRange(t,e=false){if(t.isCollapsed){e=false}const n=this.containsPosition(t.start)||e&&this.start.isEqual(t.start);const i=this.containsPosition(t.end)||e&&this.end.isEqual(t.end);return n&&i}containsItem(t){const e=Qp._createBefore(t);return this.containsPosition(e)||this.start.isEqual(e)}isEqual(t){return this.start.isEqual(t.start)&&this.end.isEqual(t.end)}isIntersecting(t){return this.start.isBefore(t.end)&&this.end.isAfter(t.start)}getDifference(t){const e=[];if(this.isIntersecting(t)){if(this.containsPosition(t.start)){e.push(new ob(this.start,t.start))}if(this.containsPosition(t.end)){e.push(new ob(t.end,this.end))}}else{e.push(new ob(this.start,this.end))}return e}getIntersection(t){if(this.isIntersecting(t)){let e=this.start;let n=this.end;if(this.containsPosition(t.start)){e=t.start}if(this.containsPosition(t.end)){n=t.end}return new ob(e,n)}return null}getJoined(t,e=false){let n=this.isIntersecting(t);if(!n){if(this.start.isBefore(t.start)){n=e?this.end.isTouching(t.start):this.end.isEqual(t.start)}else{n=e?t.end.isTouching(this.start):t.end.isEqual(this.start)}}if(!n){return null}let i=this.start;let o=this.end;if(t.start.isBefore(i)){i=t.start}if(t.end.isAfter(o)){o=t.end}return new ob(i,o)}getMinimalFlatRanges(){const t=[];const e=this.start.getCommonPath(this.end).length;const n=Qp._createAt(this.start);let i=n.parent;while(n.path.length>e+1){const e=i.maxOffset-n.offset;if(e!==0){t.push(new ob(n,n.getShiftedBy(e)))}n.path=n.path.slice(0,-1);n.offset++;i=i.parent}while(n.path.length<=this.end.path.length){const e=this.end.path[n.path.length-1];const i=e-n.offset;if(i!==0){t.push(new ob(n,n.getShiftedBy(i)))}n.offset=e;n.path.push(0)}return t}getWalker(t={}){t.boundaries=this;return new Yp(t)}*getItems(t={}){t.boundaries=this;t.ignoreElementEnd=true;const e=new Yp(t);for(const t of e){yield t.item}}*getPositions(t={}){t.boundaries=this;const e=new Yp(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 ob(this.start,this.end)]}getTransformedByOperations(t){const e=[new ob(this.start,this.end)];for(const n of t){for(let t=0;t<e.length;t++){const i=e[t].getTransformedByOperation(n);e.splice(t,1,...i);t+=i.length-1}}for(let t=0;t<e.length;t++){const n=e[t];for(let i=t+1;i<e.length;i++){const t=e[i];if(n.containsRange(t)||t.containsRange(n)||n.isEqual(t)){e.splice(i,1)}}}return e}getCommonAncestor(){return this.start.getCommonAncestor(this.end)}getContainedElement(){if(this.isCollapsed){return null}const t=this.start.nodeAfter;const e=this.end.nodeBefore;if(t&&t.is("element")&&t===e){return t}return null}toJSON(){return{start:this.start.toJSON(),end:this.end.toJSON()}}clone(){return new this.constructor(this.start,this.end)}_getTransformedByInsertOperation(t,e=false){return this._getTransformedByInsertion(t.position,t.howMany,e)}_getTransformedByMoveOperation(t,e=false){const n=t.sourcePosition;const i=t.howMany;const o=t.targetPosition;return this._getTransformedByMove(n,o,i,e)}_getTransformedBySplitOperation(t){const e=this.start._getTransformedBySplitOperation(t);let n=this.end._getTransformedBySplitOperation(t);if(this.end.isEqual(t.insertionPosition)){n=this.end.getShiftedBy(1)}if(e.root!=n.root){n=this.end.getShiftedBy(-1)}return new ob(e,n)}_getTransformedByMergeOperation(t){if(this.start.isEqual(t.targetPosition)&&this.end.isEqual(t.deletionPosition)){return new ob(this.start)}let e=this.start._getTransformedByMergeOperation(t);let n=this.end._getTransformedByMergeOperation(t);if(e.root!=n.root){n=this.end.getShiftedBy(-1)}if(e.isAfter(n)){if(t.sourcePosition.isBefore(t.targetPosition)){e=Qp._createAt(n);e.offset=0}else{if(!t.deletionPosition.isEqual(e)){n=t.deletionPosition}e=t.targetPosition}return new ob(e,n)}return new ob(e,n)}_getTransformedByInsertion(t,e,n=false){if(n&&this.containsPosition(t)){return[new ob(this.start,t),new ob(t.getShiftedBy(e),this.end._getTransformedByInsertion(t,e))]}else{const n=new ob(this.start,this.end);n.start=n.start._getTransformedByInsertion(t,e);n.end=n.end._getTransformedByInsertion(t,e);return[n]}}_getTransformedByMove(t,e,n,i=false){if(this.isCollapsed){const i=this.start._getTransformedByMove(t,e,n);return[new ob(i)]}const o=ob._createFromPositionAndShift(t,n);const r=e._getTransformedByDeletion(t,n);if(this.containsPosition(e)&&!i){if(o.containsPosition(this.start)||o.containsPosition(this.end)){const i=this.start._getTransformedByMove(t,e,n);const o=this.end._getTransformedByMove(t,e,n);return[new ob(i,o)]}}let s;const a=this.getDifference(o);let c=null;const l=this.getIntersection(o);if(a.length==1){c=new ob(a[0].start._getTransformedByDeletion(t,n),a[0].end._getTransformedByDeletion(t,n))}else if(a.length==2){c=new ob(this.start,this.end._getTransformedByDeletion(t,n))}if(c){s=c._getTransformedByInsertion(r,n,l!==null||i)}else{s=[]}if(l){const t=new ob(l.start._getCombined(o.start,r),l.end._getCombined(o.start,r));if(s.length==2){s.splice(1,0,t)}else{s.push(t)}}return s}_getTransformedByDeletion(t,e){let n=this.start._getTransformedByDeletion(t,e);let i=this.end._getTransformedByDeletion(t,e);if(n==null&&i==null){return null}if(n==null){n=t}if(i==null){i=t}return new ob(n,i)}static _createFromPositionAndShift(t,e){const n=t;const i=t.getShiftedBy(e);return e>0?new this(n,i):new this(i,n)}static _createIn(t){return new this(Qp._createAt(t,0),Qp._createAt(t,t.maxOffset))}static _createOn(t){return this._createFromPositionAndShift(Qp._createBefore(t),t.offsetSize)}static _createFromRanges(t){if(t.length===0){throw new z("range-create-from-ranges-empty-array",null)}else if(t.length==1){return t[0].clone()}const e=t[0];t.sort(((t,e)=>t.start.isAfter(e.start)?1:-1));const n=t.indexOf(e);const i=new this(e.start,e.end);if(n>0){for(let e=n-1;true;e++){if(t[e].end.isEqual(i.start)){i.start=Qp._createAt(t[e].start)}else{break}}}for(let e=n+1;e<t.length;e++){if(t[e].start.isEqual(i.end)){i.end=Qp._createAt(t[e].end)}else{break}}return i}static fromJSON(t,e){return new this(Qp.fromJSON(t.start,e),Qp.fromJSON(t.end,e))}}ob.prototype.is=function(t){return t==="range"||t==="model:range"};class rb extends(K()){constructor(){super();this._modelToViewMapping=new WeakMap;this._viewToModelMapping=new WeakMap;this._viewToModelLengthCallbacks=new Map;this._markerNameToElements=new Map;this._elementToMarkerNames=new Map;this._deferredBindingRemovals=new Map;this._unboundMarkerNames=new Set;this.on("modelToViewPosition",((t,e)=>{if(e.viewPosition){return}const n=this._modelToViewMapping.get(e.modelPosition.parent);if(!n){throw new z("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);const i=this._viewToModelMapping.get(n);const o=this._toModelOffset(e.viewPosition.parent,e.viewPosition.offset,n);e.modelPosition=Qp._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)}}if(e.defer){this._deferredBindingRemovals.set(t,t.root)}else{this._viewToModelMapping.delete(t);if(this._modelToViewMapping.get(n)==t){this._modelToViewMapping.delete(n)}}}unbindModelElement(t){const e=this.toViewElement(t);this._modelToViewMapping.delete(t);if(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);if(n){n.delete(t);if(n.size==0){this._markerNameToElements.delete(e)}}const i=this._elementToMarkerNames.get(t);if(i){i.delete(e);if(i.size==0){this._elementToMarkerNames.delete(t)}}}flushUnboundMarkerNames(){const t=Array.from(this._unboundMarkerNames);this._unboundMarkerNames.clear();return t}flushDeferredBindings(){for(const[t,e]of this._deferredBindingRemovals){if(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 ob(this.toModelPosition(t.start),this.toModelPosition(t.end))}toViewRange(t){return new Og(this.toViewPosition(t.start),this.toViewPosition(t.end))}toModelPosition(t){const e={viewPosition:t,mapper:this};this.fire("viewToModelPosition",e);return e.modelPosition}toViewPosition(t,e={}){const n={modelPosition:t,mapper:this,isPhantom:e.isPhantom};this.fire("modelToViewPosition",n);return 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;while(!this._viewToModelMapping.has(e)){e=e.parent}return e}_toModelOffset(t,e,n){if(n!=t){const i=this._toModelOffset(t.parent,t.index,n);const o=this._toModelOffset(t,e,t);return i+o}if(t.is("$text")){return e}let i=0;for(let n=0;n<e;n++){i+=this.getModelLength(t.getChild(n))}return i}getModelLength(t){if(this._viewToModelLengthCallbacks.get(t.name)){const e=this._viewToModelLengthCallbacks.get(t.name);return e(t)}else if(this._viewToModelMapping.has(t)){return 1}else if(t.is("$text")){return t.data.length}else if(t.is("uiElement")){return 0}else{let e=0;for(const n of t.getChildren()){e+=this.getModelLength(n)}return e}}findPositionIn(t,e){let n;let i=0;let o=0;let r=0;if(t.is("$text")){return new Rg(t,e)}while(o<e){n=t.getChild(r);i=this.getModelLength(n);o+=i;r++}if(o==e){return this._moveViewPositionToTextNode(new Rg(t,r))}else{return this.findPositionIn(n,e-(o-i))}}_moveViewPositionToTextNode(t){const e=t.nodeBefore;const n=t.nodeAfter;if(e instanceof Du){return new Rg(e,e.data.length)}else if(n instanceof Du){return new Rg(n,0)}return t}}class sb{constructor(){this._consumable=new Map;this._textProxyRegistry=new Map}add(t,e){e=ab(e);if(t instanceof $p){t=this._getSymbolForTextProxy(t)}if(!this._consumable.has(t)){this._consumable.set(t,new Map)}this._consumable.get(t).set(e,true)}consume(t,e){e=ab(e);if(t instanceof $p){t=this._getSymbolForTextProxy(t)}if(this.test(t,e)){this._consumable.get(t).set(e,false);return true}else{return false}}test(t,e){e=ab(e);if(t instanceof $p){t=this._getSymbolForTextProxy(t)}const n=this._consumable.get(t);if(n===undefined){return null}const i=n.get(e);if(i===undefined){return null}return i}revert(t,e){e=ab(e);if(t instanceof $p){t=this._getSymbolForTextProxy(t)}const n=this.test(t,e);if(n===false){this._consumable.get(t).set(e,true);return true}else if(n===true){return false}return null}verifyAllConsumed(t){const e=[];for(const[n,i]of this._consumable){for(const[o,r]of i){const i=o.split(":")[0];if(r&&t==i){e.push({event:o,item:n.name||n.description})}}}if(e.length){throw new z("conversion-model-consumable-not-consumed",null,{items:e})}}_getSymbolForTextProxy(t){let e=null;const n=this._textProxyRegistry.get(t.startOffset);if(n){const i=n.get(t.endOffset);if(i){e=i.get(t.parent)}}if(!e){e=this._addSymbolForTextProxy(t)}return e}_addSymbolForTextProxy(t){const e=t.startOffset;const n=t.endOffset;const i=t.parent;const o=Symbol("$textProxy:"+t.data);let r;let s;r=this._textProxyRegistry.get(e);if(!r){r=new Map;this._textProxyRegistry.set(e,r)}s=r.get(n);if(!s){s=new Map;r.set(n,s)}s.set(i,o);return o}}function ab(t){const e=t.split(":");if(e[0]=="insert"){return e[0]}if(e[0]=="addMarker"||e[0]=="removeMarker"){return t}return e.length>1?e[0]+":"+e[1]:e[0]}class cb extends(K()){constructor(t){super();this._conversionApi={dispatcher:this,...t};this._firedEventsMap=new WeakMap}convertChanges(t,e,n){const i=this._createConversionApi(n,t.getRefreshedItems());for(const e of t.getMarkersToRemove()){this._convertMarkerRemove(e.name,e.range,i)}const o=this._reduceChanges(t.getChanges());for(const t of o){if(t.type==="insert"){this._convertInsert(ob._createFromPositionAndShift(t.position,t.length),i)}else if(t.type==="reinsert"){this._convertReinsert(ob._createFromPositionAndShift(t.position,t.length),i)}else if(t.type==="remove"){this._convertRemove(t.position,t.length,t.name,i)}else{this._convertAttribute(t.range,t.attributeKey,t.attributeOldValue,t.attributeNewValue,i)}}for(const t of i.mapper.flushUnboundMarkerNames()){const n=e.get(t).getRange();this._convertMarkerRemove(t,n,i);this._convertMarkerAdd(t,n,i)}for(const e of t.getMarkersToAdd()){this._convertMarkerAdd(e.name,e.range,i)}i.mapper.flushDeferredBindings();i.consumable.verifyAllConsumed("insert")}convert(t,e,n,i={}){const o=this._createConversionApi(n,undefined,i);this._convertInsert(t,o);for(const[t,n]of e){this._convertMarkerAdd(t,n,o)}o.consumable.verifyAllConsumed("insert")}convertSelection(t,e,n){const i=Array.from(e.getMarkersAtPosition(t.getFirstPosition()));const o=this._createConversionApi(n);this._addConsumablesForSelection(o.consumable,t,i);this.fire("selection",{selection:t},o);if(!t.isCollapsed){return}for(const e of i){const n=e.getRange();if(!lb(t.getFirstPosition(),e,o.mapper)){continue}const i={item:t,markerName:e.name,markerRange:n};if(o.consumable.test(t,"addMarker:"+e.name)){this.fire(`addMarker:${e.name}`,i,o)}}for(const e of t.getAttributeKeys()){const n={item:t,range:t.getFirstRange(),attributeKey:e,attributeOldValue:null,attributeNewValue:t.getAttribute(e)};if(o.consumable.test(t,"attribute:"+n.attributeKey)){this.fire(`attribute:${n.attributeKey}:$text`,n,o)}}}_convertInsert(t,e,n={}){if(!n.doNotAddConsumables){this._addConsumablesForInsert(e.consumable,Array.from(t))}for(const n of Array.from(t.getWalker({shallow:true})).map(ub)){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:ob._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:true}));this._addConsumablesForInsert(e.consumable,n);for(const t of n.map(ub)){this._testAndFire("insert",{...t,reconversion:true},e)}}_convertMarkerAdd(t,e,n){if(e.root.rootName=="$graveyard"){return}const i=`addMarker:${t}`;n.consumable.add(e,i);this.fire(i,{markerName:t,markerRange:e},n);if(!n.consumable.consume(e,i)){return}this._addConsumablesForRange(n.consumable,e,i);for(const o of e.getItems()){if(!n.consumable.test(o,i)){continue}const r={item:o,range:ob._createOn(o),markerName:t,markerRange:e};this.fire(i,r,n)}}_convertMarkerRemove(t,e,n){if(e.root.rootName=="$graveyard"){return}this.fire(`removeMarker:${t}`,{markerName:t,markerRange:e},n)}_reduceChanges(t){const e={changes:t};this.fire("reduceChanges",e);return e.changes}_addConsumablesForInsert(t,e){for(const n of e){const e=n.item;if(t.test(e,"insert")===null){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=db(t,e);const o=e.item.is("$textProxy")?n.consumable._getSymbolForTextProxy(e.item):e.item;const r=this._firedEventsMap.get(n);const s=r.get(o);if(!s){r.set(o,new Set([i]))}else if(!s.has(i)){s.add(i)}else{return}this.fire(i,e,n)}_testAndFireAddAttributes(t,e){const n={item:t,range:ob._createOn(t)};for(const t of n.item.getAttributeKeys()){n.attributeKey=t;n.attributeOldValue=null;n.attributeNewValue=n.item.getAttribute(t);this._testAndFire(`attribute:${t}`,n,e)}}_createConversionApi(t,e=new Set,n={}){const i={...this._conversionApi,consumable:new sb,writer:t,options:n,convertItem:t=>this._convertInsert(ob._createOn(t),i),convertChildren:t=>this._convertInsert(ob._createIn(t),i,{doNotAddConsumables:true}),convertAttributes:t=>this._testAndFireAddAttributes(t,i),canReuseView:t=>!e.has(i.mapper.toModelElement(t))};this._firedEventsMap.set(i,new Map);return i}}function lb(t,e,n){const i=e.getRange();const o=Array.from(t.getAncestors());o.shift();o.reverse();const r=o.some((t=>{if(i.containsItem(t)){const e=n.toViewElement(t);return!!e.getCustomProperty("addHighlight")}}));return!r}function db(t,e){const n=e.item.is("element")?e.item.name:"$text";return`${t}:${n}`}function ub(t){const e=t.item;const n=ob._createFromPositionAndShift(t.previousPosition,t.length);return{item:e,range:n}}class hb extends(K(Hp)){constructor(...t){super();this._lastRangeBackward=false;this._attrs=new Map;this._ranges=[];if(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(){const t=this._ranges.length;if(t===1){return this._ranges[0].isCollapsed}else{return false}}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}isEqual(t){if(this.rangeCount!=t.rangeCount){return false}else if(this.rangeCount===0){return true}if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus)){return false}for(const e of this._ranges){let n=false;for(const i of t._ranges){if(e.isEqual(i)){n=true;break}}if(!n){return false}}return true}*getRanges(){for(const t of this._ranges){yield new ob(t.start,t.end)}}getFirstRange(){let t=null;for(const e of this._ranges){if(!t||e.start.isBefore(t.start)){t=e}}return t?new ob(t.start,t.end):null}getLastRange(){let t=null;for(const e of this._ranges){if(!t||e.end.isAfter(t.end)){t=e}}return t?new ob(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(typeof n=="object"){i=n;n=undefined}if(e===null){this._setRanges([])}else if(e instanceof hb){this._setRanges(e.getRanges(),e.isBackward)}else if(e&&typeof e.getRanges=="function"){this._setRanges(e.getRanges(),e.isBackward)}else if(e instanceof ob){this._setRanges([e],!!i&&!!i.backward)}else if(e instanceof Qp){this._setRanges([new ob(e)])}else if(e instanceof Up){const t=!!i&&!!i.backward;let o;if(n=="in"){o=ob._createIn(e)}else if(n=="on"){o=ob._createOn(e)}else if(n!==undefined){o=new ob(Qp._createAt(e,n))}else{throw new z("model-selection-setto-required-second-parameter",[this,e])}this._setRanges([o],t)}else if(Tt(e)){this._setRanges(e,i&&!!i.backward)}else{throw new z("model-selection-setto-not-selectable",[this,e])}}_setRanges(t,e=false){const n=Array.from(t);const i=n.some((e=>{if(!(e instanceof ob)){throw new z("model-selection-set-ranges-not-range",[this,t])}return this._ranges.every((t=>!t.isEqual(e)))}));if(n.length===this._ranges.length&&!i){return}this._replaceAllRanges(n);this._lastRangeBackward=!!e;this.fire("change:range",{directChange:true})}setFocus(t,e){if(this.anchor===null){throw new z("model-selection-setfocus-no-ranges",[this,t])}const n=Qp._createAt(t,e);if(n.compareWith(this.focus)=="same"){return}const i=this.anchor;if(this._ranges.length){this._popRange()}if(n.compareWith(i)=="before"){this._pushRange(new ob(n,i));this._lastRangeBackward=true}else{this._pushRange(new ob(i,n));this._lastRangeBackward=false}this.fire("change:range",{directChange:true})}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){if(this.hasAttribute(t)){this._attrs.delete(t);this.fire("change:attribute",{attributeKeys:[t],directChange:true})}}setAttribute(t,e){if(this.getAttribute(t)!==e){this._attrs.set(t,e);this.fire("change:attribute",{attributeKeys:[t],directChange:true})}}getSelectedElement(){if(this.rangeCount!==1){return null}return this.getFirstRange().getContainedElement()}*getSelectedBlocks(){const t=new WeakSet;for(const e of this.getRanges()){const n=fb(e.start,t);if(n&&pb(n,e)){yield n}for(const n of e.getWalker()){const i=n.item;if(n.type=="elementEnd"&&mb(i,t,e)){yield i}}const i=fb(e.end,t);if(i&&!e.end.isTouching(Qp._createAt(i,0))&&pb(i,e)){yield i}}}containsEntireContent(t=this.anchor.root){const e=Qp._createAt(t,0);const n=Qp._createAt(t,"end");return e.isTouching(this.getFirstPosition())&&n.isTouching(this.getLastPosition())}_pushRange(t){this._checkRange(t);this._ranges.push(new ob(t.start,t.end))}_checkRange(t){for(let e=0;e<this._ranges.length;e++){if(t.isIntersecting(this._ranges[e])){throw new z("model-selection-range-intersects",[this,t],{addedRange:t,intersectingRange:this._ranges[e]})}}}_replaceAllRanges(t){this._removeAllRanges();for(const e of t){this._pushRange(e)}}_removeAllRanges(){while(this._ranges.length>0){this._popRange()}}_popRange(){this._ranges.pop()}}hb.prototype.is=function(t){return t==="selection"||t==="model:selection"};function gb(t,e){if(e.has(t)){return false}e.add(t);return t.root.document.model.schema.isBlock(t)&&!!t.parent}function mb(t,e,n){return gb(t,e)&&pb(t,n)}function fb(t,e){const n=t.parent;const i=n.root.document.model.schema;const o=t.parent.getAncestors({parentFirst:true,includeSelf:true});let r=false;const s=o.find((t=>{if(r){return false}r=i.isLimit(t);return!r&&gb(t,e)}));o.forEach((t=>e.add(t)));return s}function pb(t,e){const n=bb(t);if(!n){return true}const i=e.containsRange(ob._createOn(n),true);return!i}function bb(t){const e=t.root.document.model.schema;let n=t.parent;while(n){if(e.isBlock(n)){return n}n=n.parent}}class kb extends(K(ob)){constructor(t,e){super(t,e);wb.call(this)}detach(){this.stopListening()}toRange(){return new ob(this.start,this.end)}static fromRange(t){return new kb(t.start,t.end)}}kb.prototype.is=function(t){return t==="liveRange"||t==="model:liveRange"||t=="range"||t==="model:range"};function wb(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];if(!n.isDocumentOperation){return}Ab.call(this,n)}),{priority:"low"})}function Ab(t){const e=this.getTransformedByOperation(t);const n=ob._createFromRanges(e);const i=!n.isEqual(this);const o=Cb(this,t);let r=null;if(i){if(n.root.rootName=="$graveyard"){if(t.type=="remove"){r=t.sourcePosition}else{r=t.deletionPosition}}const e=this.toRange();this.start=n.start;this.end=n.end;this.fire("change:range",e,{deletionPosition:r})}else if(o){this.fire("change:content",this.toRange(),{deletionPosition:r})}}function Cb(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 false}const _b="selection:";class vb extends(K(Hp)){constructor(t){super();this._selection=new yb(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(false)}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 _b+t}static _isStoreAttributeKey(t){return t.startsWith(_b)}}vb.prototype.is=function(t){return t==="selection"||t=="model:selection"||t=="documentSelection"||t=="model:documentSelection"};class yb extends hb{constructor(t){super();this.markers=new ll({idProperty:"name"});this._attributePriority=new Map;this._selectionRestorePosition=null;this._hasChangedRange=false;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];if(!n.isDocumentOperation||n.type=="marker"||n.type=="rename"||n.type=="noop"){return}if(this._ranges.length==0&&this._selectionRestorePosition){this._fixGraveyardSelection(this._selectionRestorePosition)}this._selectionRestorePosition=null;if(this._hasChangedRange){this._hasChangedRange=false;this.fire("change:range",{directChange:false})}}),{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)=>{Eb(this._model,e)}))}get isCollapsed(){const t=this._ranges.length;return t===0?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<this._ranges.length;t++){this._ranges[t].detach()}this.stopListening()}*getRanges(){if(this._ranges.length){yield*super.getRanges()}else{yield this._document._getDefaultRange()}}getFirstRange(){return super.getFirstRange()||this._document._getDefaultRange()}getLastRange(){return super.getLastRange()||this._document._getDefaultRange()}setTo(...t){super.setTo(...t);this._updateAttributes(true);this.updateMarkers()}setFocus(t,e){super.setFocus(t,e);this._updateAttributes(true);this.updateMarkers()}setAttribute(t,e){if(this._setAttribute(t,e)){const e=[t];this.fire("change:attribute",{attributeKeys:e,directChange:true})}}removeAttribute(t){if(this._removeAttribute(t)){const e=[t];this.fire("change:attribute",{attributeKeys:e,directChange:true})}}overrideGravity(){const t=I();this._overriddenGravityRegister.add(t);if(this._overriddenGravityRegister.size===1){this._updateAttributes(true)}return t}restoreGravity(t){if(!this._overriddenGravityRegister.has(t)){throw new z("document-selection-gravity-wrong-restore",this,{uid:t})}this._overriddenGravityRegister.delete(t);if(!this.isGravityOverridden){this._updateAttributes(true)}}observeMarkers(t){this._observedMarkers.add(t);this.updateMarkers()}_replaceAllRanges(t){this._validateSelectionRanges(t);super._replaceAllRanges(t)}_popRange(){this._ranges.pop().detach()}_pushRange(t){const e=this._prepareRange(t);if(e){this._ranges.push(e)}}_validateSelectionRanges(t){for(const e of t){if(!this._document._validateSelectionRange(e)){throw new z("document-selection-wrong-position",this,{range:e})}}}_prepareRange(t){this._checkRange(t);if(t.root==this._document.graveyard){return}const e=kb.fromRange(t);e.on("change:range",((t,n,i)=>{this._hasChangedRange=true;if(e.root==this._document.graveyard){this._selectionRestorePosition=i.deletionPosition;const t=this._ranges.indexOf(e);this._ranges.splice(t,1);e.detach()}}));return e}updateMarkers(){if(!this._observedMarkers.size){return}const t=[];let e=false;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()){if(i.containsRange(n,!n.isCollapsed)){t.push(e)}}}const n=Array.from(this.markers);for(const n of t){if(!this.markers.has(n)){this.markers.add(n);e=true}}for(const n of Array.from(this.markers)){if(!t.includes(n)){this.markers.remove(n);e=true}}if(e){this.fire("change:marker",{oldMarkers:n,directChange:false})}}_updateMarker(t,e){const n=t.name.split(":",1)[0];if(!this._observedMarkers.has(n)){return}let i=false;const o=Array.from(this.markers);const r=this.markers.has(t);if(!e){if(r){this.markers.remove(t);i=true}}else{let n=false;for(const t of this.getRanges()){if(e.containsRange(t,!t.isCollapsed)){n=true;break}}if(n&&!r){this.markers.add(t);i=true}else if(!n&&r){this.markers.remove(t);i=true}}if(i){this.fire("change:marker",{oldMarkers:o,directChange:false})}}_updateAttributes(t){const e=ml(this._getSurroundingAttributes());const n=ml(this.getAttributes());if(t){this._attributePriority=new Map;this._attrs=new Map}else{for(const[t,e]of this._attributePriority){if(e=="low"){this._attrs.delete(t);this._attributePriority.delete(t)}}}this._setAttributesTo(e);const i=[];for(const[t,e]of this.getAttributes()){if(!n.has(t)||n.get(t)!==e){i.push(t)}}for(const[t]of n){if(!this.hasAttribute(t)){i.push(t)}}if(i.length>0){this.fire("change:attribute",{attributeKeys:i,directChange:false})}}_setAttribute(t,e,n=true){const i=n?"normal":"low";if(i=="low"&&this._attributePriority.get(t)=="normal"){return false}const o=super.getAttribute(t);if(o===e){return false}this._attrs.set(t,e);this._attributePriority.set(t,i);return true}_removeAttribute(t,e=true){const n=e?"normal":"low";if(n=="low"&&this._attributePriority.get(t)=="normal"){return false}this._attributePriority.set(t,n);if(!super.hasAttribute(t)){return false}this._attrs.delete(t);return true}_setAttributesTo(t){const e=new Set;for(const[e,n]of this.getAttributes()){if(t.get(e)===n){continue}this._removeAttribute(e,false)}for(const[n,i]of t){const t=this._setAttribute(n,i,false);if(t){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(_b)){const n=e.substr(_b.length);yield[n,t.getAttribute(e)]}}}}_getSurroundingAttributes(){const t=this.getFirstPosition();const e=this._model.schema;let n=null;if(!this.isCollapsed){const t=this.getFirstRange();for(const i of t){if(i.item.is("element")&&e.isObject(i.item)){break}if(i.type=="text"){n=i.item.getAttributes();break}}}else{const i=t.textNode?t.textNode:t.nodeBefore;const o=t.textNode?t.textNode:t.nodeAfter;if(!this.isGravityOverridden){n=xb(i)}if(!n){n=xb(o)}if(!this.isGravityOverridden&&!n){let t=i;while(t&&!e.isInline(t)&&!n){t=t.previousSibling;n=xb(t)}}if(!n){let t=o;while(t&&!e.isInline(t)&&!n){t=t.nextSibling;n=xb(t)}}if(!n){n=this.getStoredAttributes()}}return n}_fixGraveyardSelection(t){const e=this._model.schema.getNearestSelectionRange(t);if(e){this._pushRange(e)}}}function xb(t){if(t instanceof $p||t instanceof qp){return t.getAttributes()}return null}function Eb(t,e){const n=t.document.differ;for(const i of n.getChanges()){if(i.type!="insert"){continue}const n=i.position.parent;const o=i.length===n.maxOffset;if(o){t.enqueueChange(e,(t=>{const e=Array.from(n.getAttributeKeys()).filter((t=>t.startsWith(_b)));for(const i of e){t.removeAttribute(i,n)}}))}}}class Db{constructor(t){this._dispatchers=t}add(t){for(const e of this._dispatchers){t(e)}return this}}var Tb=1,Sb=4;function Ib(t){return Va(t,Tb|Sb)}const Bb=Ib;class Mb extends Db{elementToElement(t){return this.add(tk(t))}elementToStructure(t){return this.add(ek(t))}attributeToElement(t){return this.add(nk(t))}attributeToAttribute(t){return this.add(ik(t))}markerToElement(t){return this.add(ok(t))}markerToHighlight(t){return this.add(sk(t))}markerToData(t){return this.add(rk(t))}}function Lb(){return(t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const i=n.writer;const o=n.mapper.toViewPosition(e.range.start);const r=i.createText(e.item.data);i.insert(o,r)}}function Nb(){return(t,e,n)=>{n.convertAttributes(e.item);if(!e.reconversion&&e.item.is("element")&&!e.item.isEmpty){n.convertChildren(e.item)}}}function zb(){return(t,e,n)=>{const i=n.mapper.toViewPosition(e.position);const o=e.position.getShiftedBy(e.length);const r=n.mapper.toViewPosition(o,{isPhantom:true});const s=n.writer.createRange(i,r);const a=n.writer.remove(s.getTrimmed());for(const t of n.writer.createRangeIn(a).getItems()){n.mapper.unbindViewElement(t,{defer:true})}}}function Pb(t,e){const n=t.createAttributeElement("span",e.attributes);if(e.classes){n._addClass(e.classes)}if(typeof e.priority==="number"){n._priority=e.priority}n._id=e.id;return n}function Rb(){return(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})}}function Ob(){return(t,e,n)=>{const i=e.selection;if(!i.isCollapsed){return}if(!n.consumable.consume(i,"selection")){return}const o=n.writer;const r=i.getFirstPosition();const s=n.mapper.toViewPosition(r);const a=o.breakAttributes(s);o.setSelection(a)}}function Vb(){return(t,e,n)=>{const i=n.writer;const o=i.document.selection;for(const t of o.getRanges()){if(t.isCollapsed){if(t.end.parent.isAttached()){n.writer.mergeAttributes(t.start)}}}i.setSelection(null)}}function Fb(t){return(e,n,i)=>{if(!i.consumable.test(n.item,e.name)){return}const o=t(n.attributeOldValue,i,n);const r=t(n.attributeNewValue,i,n);if(!o&&!r){return}i.consumable.consume(n.item,e.name);const s=i.writer;const a=s.document.selection;if(n.item instanceof hb||n.item instanceof vb){s.wrap(a.getFirstRange(),r)}else{let t=i.mapper.toViewRange(n.range);if(n.attributeOldValue!==null&&o){t=s.unwrap(t,o)}if(n.attributeNewValue!==null&&r){s.wrap(t,r)}}}}function jb(t,e=Ck){return(n,i,o)=>{if(!e(i.item,o.consumable,{preflight:true})){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);wk(r,i.item.getChildren(),o,{reconversion:i.reconversion})}}function Hb(t,e){return(n,i,o)=>{if(!e(i.item,o.consumable,{preflight:true})){return}const r=new Map;o.writer._registerSlotFactory(pk(i.item,r,o));const s=t(i.item,o,i);o.writer._clearSlotFactory();if(!s){return}bk(i.item,r,o);e(i.item,o.consumable);const a=o.mapper.toViewPosition(i.range.start);o.mapper.bindElements(i.item,s);o.writer.insert(a,s);o.convertAttributes(i.item);kk(s,r,o,{reconversion:i.reconversion})}}function Ub(t){return(e,n,i)=>{n.isOpening=true;const o=t(n,i);n.isOpening=false;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;const c=i.writer;c.insert(a.toViewPosition(s.start),o);i.mapper.bindElementToMarker(o,n.markerName);if(!s.isCollapsed){c.insert(a.toViewPosition(s.end),r);i.mapper.bindElementToMarker(r,n.markerName)}e.stop()}}function Wb(){return(t,e,n)=>{const i=n.mapper.markerNameToElements(e.markerName);if(!i){return}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()}}function qb(t){return(e,n,i)=>{const o=t(n.markerName,i);if(!o){return}const r=n.markerRange;if(!i.consumable.consume(r,e.name)){return}$b(r,false,i,n,o);$b(r,true,i,n,o);e.stop()}}function $b(t,e,n,i,o){const r=e?t.start:t.end;const s=r.nodeAfter&&r.nodeAfter.is("element")?r.nodeAfter:null;const a=r.nodeBefore&&r.nodeBefore.is("element")?r.nodeBefore:null;if(s||a){let t;let r;if(e&&s||!e&&!a){t=s;r=true}else{t=a;r=false}const c=n.mapper.toViewElement(t);if(c){Gb(c,e,r,n,i,o);return}}const c=n.mapper.toViewPosition(r);Kb(c,e,n,i,o)}function Gb(t,e,n,i,o,r){const s=`data-${r.group}-${e?"start":"end"}-${n?"before":"after"}`;const 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)}function Kb(t,e,n,i,o){const r=`${o.group}-${e?"start":"end"}`;const s=o.name?{name:o.name}:null;const a=n.writer.createUIElement(r,s);n.writer.insert(t,a);n.mapper.bindElementToMarker(a,i.markerName)}function Yb(t){return(e,n,i)=>{const o=t(n.markerName,i);if(!o){return}const r=i.mapper.markerNameToElements(n.markerName);if(!r){return}for(const t of r){i.mapper.unbindElementFromMarkerName(t,n.markerName);if(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)}else{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);if(n.size==0){i.writer.removeAttribute(t,e)}else{i.writer.setAttribute(t,Array.from(n).join(","),e)}}}}}function Zb(t){return(e,n,i)=>{if(!i.consumable.test(n.item,e.name)){return}const o=t(n.attributeOldValue,i,n);const r=t(n.attributeNewValue,i,n);if(!o&&!r){return}i.consumable.consume(n.item,e.name);const s=i.mapper.toViewElement(n.item);const a=i.writer;if(!s){throw new z("conversion-attribute-to-attribute-on-text",i.dispatcher,n)}if(n.attributeOldValue!==null&&o){if(o.key=="class"){const t=Xc(o.value);for(const e of t){a.removeClass(e,s)}}else if(o.key=="style"){const t=Object.keys(o.value);for(const e of t){a.removeStyle(e,s)}}else{a.removeAttribute(o.key,s)}}if(n.attributeNewValue!==null&&r){if(r.key=="class"){const t=Xc(r.value);for(const e of t){a.addClass(e,s)}}else if(r.key=="style"){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)}}}}function Qb(t){return(e,n,i)=>{if(!n.item){return}if(!(n.item instanceof hb||n.item instanceof vb)&&!n.item.is("$textProxy")){return}const o=hk(t,n,i);if(!o){return}if(!i.consumable.consume(n.item,e.name)){return}const r=i.writer;const s=Pb(r,o);const a=r.document.selection;if(n.item instanceof hb||n.item instanceof vb){r.wrap(a.getFirstRange(),s)}else{const t=i.mapper.toViewRange(n.range);const e=r.wrap(t,s);for(const t of e.getItems()){if(t.is("attributeElement")&&t.isSimilar(s)){i.mapper.bindElementToMarker(t,n.markerName);break}}}}}function Jb(t){return(e,n,i)=>{if(!n.item){return}if(!(n.item instanceof Gp)){return}const o=hk(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 ob._createIn(n.item)){i.consumable.consume(t.item,e.name)}const t=r.getCustomProperty("addHighlight");t(r,o,i.writer);i.mapper.bindElementToMarker(r,n.markerName)}}}function Xb(t){return(e,n,i)=>{if(n.markerRange.isCollapsed){return}const o=hk(t,n,i);if(!o){return}const r=Pb(i.writer,o);const s=i.mapper.markerNameToElements(n.markerName);if(!s){return}for(const t of s){i.mapper.unbindElementFromMarkerName(t,n.markerName);if(t.is("attributeElement")){i.writer.unwrap(i.writer.createRangeOn(t),r)}else{const e=t.getCustomProperty("removeHighlight");e(t,o.id,i.writer)}}i.writer.clearClonedElementsGroup(n.markerName);e.stop()}}function tk(t){const e=ak(t.model);const n=ck(t.view,"container");if(e.attributes.length){e.children=true}return i=>{i.on(`insert:${e.name}`,jb(n,fk(e)),{priority:t.converterPriority||"normal"});if(e.children||e.attributes.length){i.on("reduceChanges",mk(e),{priority:"low"})}}}function ek(t){const e=ak(t.model);const n=ck(t.view,"container");e.children=true;return i=>{if(i._conversionApi.schema.checkChild(e.name,"$text")){throw new z("conversion-element-to-structure-disallowed-text",i,{elementName:e.name})}i.on(`insert:${e.name}`,Hb(n,fk(e)),{priority:t.converterPriority||"normal"});i.on("reduceChanges",mk(e),{priority:"low"})}}function nk(t){t=Bb(t);let e=t.model;if(typeof e=="string"){e={key:e}}let n=`attribute:${e.key}`;if(e.name){n+=":"+e.name}if(e.values){for(const n of e.values){t.view[n]=ck(t.view[n],"attribute")}}else{t.view=ck(t.view,"attribute")}const i=dk(t);return e=>{e.on(n,Fb(i),{priority:t.converterPriority||"normal"})}}function ik(t){t=Bb(t);let e=t.model;if(typeof e=="string"){e={key:e}}let n=`attribute:${e.key}`;if(e.name){n+=":"+e.name}if(e.values){for(const n of e.values){t.view[n]=uk(t.view[n])}}else{t.view=uk(t.view)}const i=dk(t);return e=>{e.on(n,Zb(i),{priority:t.converterPriority||"normal"})}}function ok(t){const e=ck(t.view,"ui");return n=>{n.on(`addMarker:${t.model}`,Ub(e),{priority:t.converterPriority||"normal"});n.on(`removeMarker:${t.model}`,Wb(),{priority:t.converterPriority||"normal"})}}function rk(t){t=Bb(t);const e=t.model;let n=t.view;if(!n){n=n=>({group:e,name:n.substr(t.model.length+1)})}return i=>{i.on(`addMarker:${e}`,qb(n),{priority:t.converterPriority||"normal"});i.on(`removeMarker:${e}`,Yb(n),{priority:t.converterPriority||"normal"})}}function sk(t){return e=>{e.on(`addMarker:${t.model}`,Qb(t.view),{priority:t.converterPriority||"normal"});e.on(`addMarker:${t.model}`,Jb(t.view),{priority:t.converterPriority||"normal"});e.on(`removeMarker:${t.model}`,Xb(t.view),{priority:t.converterPriority||"normal"})}}function ak(t){if(typeof t=="string"){t={name:t}}if(!t.attributes){t.attributes=[]}else if(!Array.isArray(t.attributes)){t.attributes=[t.attributes]}t.children=!!t.children;return t}function ck(t,e){if(typeof t=="function"){return t}return(n,i)=>lk(t,i,e)}function lk(t,e,n){if(typeof t=="string"){t={name:t}}let i;const o=e.writer;const r=Object.assign({},t.attributes);if(n=="container"){i=o.createContainerElement(t.name,r)}else if(n=="attribute"){const e={priority:t.priority||Jg.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(typeof e=="string"){o.addClass(e,i)}else{for(const t of e){o.addClass(t,i)}}}return i}function dk(t){if(t.model.values){return(e,n,i)=>{const o=t.view[e];if(o){return o(e,n,i)}return null}}else{return t.view}}function uk(t){if(typeof t=="string"){return e=>({key:t,value:e})}else if(typeof t=="object"){if(t.value){return()=>t}else{return e=>({key:t.key,value:e})}}else{return t}}function hk(t,e,n){const i=typeof t=="function"?t(e,n):t;if(!i){return null}if(!i.priority){i.priority=10}if(!i.id){i.id=e.markerName}return i}function gk(t){return(e,n)=>{if(!e.is("element",t.name)){return false}if(n.type=="attribute"){if(t.attributes.includes(n.attributeKey)){return true}}else{if(t.children){return true}}return false}}function mk(t){const e=gk(t);return(t,n)=>{const i=[];if(!n.reconvertedElements){n.reconvertedElements=new Set}for(const t of n.changes){const o=t.type=="attribute"?t.range.start.nodeAfter:t.position.parent;if(!o||!e(o,t)){i.push(t);continue}if(!n.reconvertedElements.has(o)){n.reconvertedElements.add(o);const t=Qp._createBefore(o);i.push({type:"remove",name:o.name,position:t,length:1},{type:"reinsert",name:o.name,position:t,length:1})}}n.changes=i}}function fk(t){return(e,n,i={})=>{const o=["insert"];for(const n of t.attributes){if(e.hasAttribute(n)){o.push(`attribute:${n}`)}}if(!o.every((t=>n.test(e,t)))){return false}if(!i.preflight){o.forEach((t=>n.consume(e,t)))}return true}}function pk(t,e,n){return(i,o="children")=>{const r=i.createContainerElement("$slot");let s=null;if(o==="children"){s=Array.from(t.getChildren())}else if(typeof o=="function"){s=Array.from(t.getChildren()).filter((t=>o(t)))}else{throw new z("conversion-slot-mode-unknown",n.dispatcher,{modeOrFilter:o})}e.set(r,s);return r}}function bk(t,e,n){const i=Array.from(e.values()).flat();const o=new Set(i);if(o.size!=i.length){throw new z("conversion-slot-filter-overlap",n.dispatcher,{element:t})}if(o.size!=t.childCount){throw new z("conversion-slot-filter-incomplete",n.dispatcher,{element:t})}}function kk(t,e,n,i){n.mapper.on("modelToViewPosition",s,{priority:"highest"});let o=null;let r=null;for([o,r]of e){wk(t,r,n,i);n.writer.move(n.writer.createRangeIn(o),n.writer.createPositionBefore(o));n.writer.remove(o)}n.mapper.off("modelToViewPosition",s);function s(t,e){const n=e.modelPosition.nodeAfter;const i=r.indexOf(n);if(i<0){return}e.viewPosition=e.mapper.findPositionIn(o,i)}}function wk(t,e,n,i){for(const o of e){if(!Ak(t.root,o,n,i)){n.convertItem(o)}}}function Ak(t,e,n,i){const{writer:o,mapper:r}=n;if(!i.reconversion){return false}const s=r.toViewElement(e);if(!s||s.root==t){return false}if(!n.canReuseView(s)){return false}o.move(o.createRangeOn(s),r.toViewPosition(Qp._createBefore(e)));return true}function Ck(t,e,{preflight:n}={}){if(n){return e.test(t,"insert")}else{return e.consume(t,"insert")}}function _k(t){const{schema:e,document:n}=t.model;for(const i of n.getRootNames()){const o=n.getRoot(i);if(o.isEmpty&&!e.checkChild(o,"$text")){if(e.checkChild(o,"paragraph")){t.insertElement("paragraph",o);return true}}}return false}function vk(t,e,n){const i=n.createContext(t);if(!n.checkChild(i,"paragraph")){return false}if(!n.checkChild(i.push("paragraph"),e)){return false}return true}function yk(t,e){const n=e.createElement("paragraph");e.insert(n,t);return e.createPositionAt(n,0)}class xk extends Db{elementToElement(t){return this.add(Sk(t))}elementToAttribute(t){return this.add(Ik(t))}attributeToAttribute(t){return this.add(Bk(t))}elementToMarker(t){return this.add(Mk(t))}dataToMarker(t){return this.add(Lk(t))}}function Ek(){return(t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:true})){const{modelRange:t,modelCursor:i}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t;e.modelCursor=i}}}function Dk(){return(t,e,{schema:n,consumable:i,writer:o})=>{let r=e.modelCursor;if(!i.test(e.viewItem)){return}if(!n.checkChild(r,"$text")){if(!vk(r,"$text",n)){return}if(e.viewItem.data.trim().length==0){return}const t=r.nodeBefore;r=yk(r,o);if(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}}function Tk(t,e){return(n,i)=>{const o=i.newSelection;const r=[];for(const t of o.getRanges()){r.push(e.toModelRange(t))}const s=t.createSelection(r,{backward:o.isBackward});if(!s.isEqual(t.document.selection)){t.change((t=>{t.setSelection(s)}))}}}function Sk(t){t=Bb(t);const e=Pk(t);const n=zk(t.view);const i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"normal"})}}function Ik(t){t=Bb(t);Vk(t);const e=Fk(t,false);const n=zk(t.view);const i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"low"})}}function Bk(t){t=Bb(t);let e=null;if(typeof t.view=="string"||t.view.key){e=Ok(t)}Vk(t,e);const n=Fk(t,true);return e=>{e.on("element",n,{priority:t.converterPriority||"low"})}}function Mk(t){const e=Uk(t.model);return Sk({...t,model:e})}function Lk(t){t=Bb(t);if(!t.model){t.model=e=>e?t.view+":"+e:t.view}const e={view:t.view,model:t.model};const n=Pk(Wk(e,"start"));const i=Pk(Wk(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=M.get("low");const s=M.get("highest");const a=M.get(t.converterPriority)/s;o.on("element",Nk(e),{priority:r+a})}}function Nk(t){return(e,n,i)=>{const o=`data-${t.view}`;if(!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"})){return}if(!n.modelRange){Object.assign(n,i.convertChildren(n.viewItem,n.modelCursor))}if(i.consumable.consume(n.viewItem,{attributes:o+"-end-after"})){r(n.modelRange.end,n.viewItem.getAttribute(o+"-end-after").split(","))}if(i.consumable.consume(n.viewItem,{attributes:o+"-start-after"})){r(n.modelRange.end,n.viewItem.getAttribute(o+"-start-after").split(","))}if(i.consumable.consume(n.viewItem,{attributes:o+"-end-before"})){r(n.modelRange.start,n.viewItem.getAttribute(o+"-end-before").split(","))}if(i.consumable.consume(n.viewItem,{attributes:o+"-start-before"})){r(n.modelRange.start,n.viewItem.getAttribute(o+"-start-before").split(","))}function r(e,o){for(const r of o){const o=t.model(r,i);const s=i.writer.createElement("$marker",{"data-name":o});i.writer.insert(s,e);if(n.modelCursor.isEqual(e)){n.modelCursor=n.modelCursor.getShiftedBy(1)}else{n.modelCursor=n.modelCursor._getTransformedByInsertion(e,1)}n.modelRange=n.modelRange._getTransformedByInsertion(e,1)[0]}}}}function zk(t){if(typeof t=="string"){return t}if(typeof t=="object"&&typeof t.name=="string"){return t.name}return null}function Pk(t){const e=new Su(t.view);return(n,i,o)=>{const r=e.match(i.viewItem);if(!r){return}const s=r.match;s.name=true;if(!o.consumable.test(i.viewItem,s)){return}const a=Rk(t.model,i.viewItem,o);if(!a){return}if(!o.safeInsert(a,i.modelCursor)){return}o.consumable.consume(i.viewItem,s);o.convertChildren(i.viewItem,a);o.updateConversionResult(a,i)}}function Rk(t,e,n){if(t instanceof Function){return t(e,n)}else{return n.writer.createElement(t)}}function Ok(t){if(typeof t.view=="string"){t.view={key:t.view}}const e=t.view.key;let n;if(e=="class"||e=="style"){const i=e=="class"?"classes":"styles";n={[i]:t.view.value}}else{const i=typeof t.view.value=="undefined"?/[\s\S]*/:t.view.value;n={attributes:{[e]:i}}}if(t.view.name){n.name=t.view.name}t.view=n;return e}function Vk(t,e=null){const n=e===null?true:t=>t.getAttribute(e);const i=typeof t.model!="object"?t.model:t.model.key;const o=typeof t.model!="object"||typeof t.model.value=="undefined"?n:t.model.value;t.model={key:i,value:o}}function Fk(t,e){const n=new Su(t.view);return(i,o,r)=>{if(!o.modelRange&&e){return}const s=n.match(o.viewItem);if(!s){return}if(jk(t.view,o.viewItem)){s.match.name=true}else{delete s.match.name}if(!r.consumable.test(o.viewItem,s.match)){return}const a=t.model.key;const c=typeof t.model.value=="function"?t.model.value(o.viewItem,r):t.model.value;if(c===null){return}if(!o.modelRange){Object.assign(o,r.convertChildren(o.viewItem,o.modelCursor))}const l=Hk(o.modelRange,{key:a,value:c},e,r);if(l){if(r.consumable.test(o.viewItem,{name:true})){s.match.name=true}r.consumable.consume(o.viewItem,s.match)}}}function jk(t,e){const n=typeof t=="function"?t(e):t;if(typeof n=="object"&&!zk(n)){return false}return!n.classes&&!n.attributes&&!n.styles}function Hk(t,e,n,i){let o=false;for(const r of Array.from(t.getItems({shallow:n}))){if(!i.schema.checkAttribute(r,e.key)){continue}o=true;if(r.hasAttribute(e.key)){continue}i.writer.setAttribute(e.key,e.value,r)}return o}function Uk(t){return(e,n)=>{const i=typeof t=="string"?t:t(e,n);return n.writer.createElement("$marker",{"data-name":i})}}function Wk(t,e){const n=(e,n)=>{const i=e.getAttribute("name");const o=t.model(i,n);return n.writer.createElement("$marker",{"data-name":o})};return{view:`${t.view}-${e}`,model:n}}class qk extends(mt()){constructor(t,e){super();this.model=t;this.view=new jp(e);this.mapper=new rb;this.downcastDispatcher=new cb({mapper:this.mapper,schema:t.schema});const n=this.model.document;const i=n.selection;const o=this.model.markers;this.listenTo(this.model,"_beforeChanges",(()=>{this.view._disableRendering(true)}),{priority:"highest"});this.listenTo(this.model,"_afterChanges",(()=>{this.view._disableRendering(false)}),{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",Tk(this.model,this.mapper));this.downcastDispatcher.on("insert:$text",Lb(),{priority:"lowest"});this.downcastDispatcher.on("insert",Nb(),{priority:"lowest"});this.downcastDispatcher.on("remove",zb(),{priority:"low"});this.downcastDispatcher.on("selection",Vb(),{priority:"high"});this.downcastDispatcher.on("selection",Rb(),{priority:"low"});this.downcastDispatcher.on("selection",Ob(),{priority:"low"});this.view.document.roots.bindTo(this.model.document.roots).using((t=>{if(t.rootName=="$graveyard"){return null}const e=new zg(this.view.document,t.name);e.rootName=t.rootName;this.mapper.bindElements(t,e);return e}))}destroy(){this.view.destroy();this.stopListening()}reconvertMarker(t){const e=typeof t=="string"?t:t.name;const n=this.model.markers.get(e);if(!n){throw new z("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 $k{constructor(){this._consumables=new Map}add(t,e){let n;if(t.is("$text")||t.is("documentFragment")){this._consumables.set(t,true);return}if(!this._consumables.has(t)){n=new Kk(t);this._consumables.set(t,n)}else{n=this._consumables.get(t)}n.add(e)}test(t,e){const n=this._consumables.get(t);if(n===undefined){return null}if(t.is("$text")||t.is("documentFragment")){return n}return n.test(e)}consume(t,e){if(this.test(t,e)){if(t.is("$text")||t.is("documentFragment")){this._consumables.set(t,false)}else{this._consumables.get(t).consume(e)}return true}return false}revert(t,e){const n=this._consumables.get(t);if(n!==undefined){if(t.is("$text")||t.is("documentFragment")){this._consumables.set(t,true)}else{n.revert(e)}}}static consumablesFromElement(t){const e={element:t,name:true,attributes:[],classes:[],styles:[]};const n=t.getAttributeKeys();for(const t of n){if(t=="style"||t=="class"){continue}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 $k}if(t.is("$text")){e.add(t);return e}if(t.is("element")){e.add(t,$k.consumablesFromElement(t))}if(t.is("documentFragment")){e.add(t)}for(const n of t.getChildren()){e=$k.createFrom(n,e)}return e}}const Gk=["attributes","classes","styles"];class Kk{constructor(t){this.element=t;this._canConsumeName=null;this._consumables={attributes:new Map,styles:new Map,classes:new Map}}add(t){if(t.name){this._canConsumeName=true}for(const e of Gk){if(e in t){this._add(e,t[e])}}}test(t){if(t.name&&!this._canConsumeName){return this._canConsumeName}for(const e of Gk){if(e in t){const n=this._test(e,t[e]);if(n!==true){return n}}}return true}consume(t){if(t.name){this._canConsumeName=false}for(const e of Gk){if(e in t){this._consume(e,t[e])}}}revert(t){if(t.name){this._canConsumeName=true}for(const e of Gk){if(e in t){this._revert(e,t[e])}}}_add(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){throw new z("viewconsumable-invalid-attribute",this)}i.set(e,true);if(t==="styles"){for(const t of this.element.document.stylesProcessor.getRelatedStyles(e)){i.set(t,true)}}}}_test(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){const t=e=="class"?"classes":"styles";const n=this._test(t,[...this._consumables[t].keys()]);if(n!==true){return n}}else{const t=i.get(e);if(t===undefined){return null}if(!t){return false}}}return true}_consume(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){const t=e=="class"?"classes":"styles";this._consume(t,[...this._consumables[t].keys()])}else{i.set(e,false);if(t=="styles"){for(const t of this.element.document.stylesProcessor.getRelatedStyles(e)){i.set(t,false)}}}}}_revert(t,e){const n=Jt(e)?e:[e];const i=this._consumables[t];for(const e of n){if(t==="attributes"&&(e==="class"||e==="style")){const t=e=="class"?"classes":"styles";this._revert(t,[...this._consumables[t].keys()])}else{const t=i.get(e);if(t===false){i.set(e,true)}}}}}class Yk extends(mt()){constructor(){super();this._sourceDefinitions={};this._attributeProperties={};this.decorate("checkChild");this.decorate("checkAttribute");this.on("checkAttribute",((t,e)=>{e[0]=new Zk(e[0])}),{priority:"highest"});this.on("checkChild",((t,e)=>{e[0]=new Zk(e[0]);e[1]=this.getDefinition(e[1])}),{priority:"highest"})}register(t,e){if(this._sourceDefinitions[t]){throw new z("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 z("schema-cannot-extend-missing-item",this,{itemName:t})}this._sourceDefinitions[t].push(Object.assign({},e));this._clearCache()}getDefinitions(){if(!this._compiledDefinitions){this._compile()}return this._compiledDefinitions}getDefinition(t){let e;if(typeof t=="string"){e=t}else if("is"in t&&(t.is("$text")||t.is("$textProxy"))){e="$text"}else{e=t.name}return 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);if(!e){return false}return!!(e.isLimit||e.isObject)}isObject(t){const e=this.getDefinition(t);if(!e){return false}return!!(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);if(!e){return false}return!!(e.isSelectable||e.isObject)}isContent(t){const e=this.getDefinition(t);if(!e){return false}return!!(e.isContent||e.isObject)}checkChild(t,e){if(!e){return false}return this._checkContextMatch(e,t)}checkAttribute(t,e){const n=this.getDefinition(t.last);if(!n){return false}return n.allowAttributes.includes(e)}checkMerge(t,e){if(t instanceof Qp){const e=t.nodeBefore;const n=t.nodeAfter;if(!(e instanceof Gp)){throw new z("schema-check-merge-no-element-before",this)}if(!(n instanceof Gp)){throw new z("schema-check-merge-no-element-after",this)}return this.checkMerge(e,n)}for(const n of e.getChildren()){if(!this.checkChild(t,n)){return false}}return true}addChildCheck(t){this.on("checkChild",((e,[n,i])=>{if(!i){return}const o=t(n,i);if(typeof o=="boolean"){e.stop();e.return=o}}),{priority:"high"})}addAttributeCheck(t){this.on("checkAttribute",((e,[n,i])=>{const o=t(n,i);if(typeof o=="boolean"){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 Qp){e=t.parent}else{const n=t instanceof ob?[t]:Array.from(t.getRanges());e=n.reduce(((t,e)=>{const n=e.getCommonAncestor();if(!t){return n}return t.getCommonAncestor(n,{includeSelf:true})}),null)}while(!this.isLimit(e)){if(e.parent){e=e.parent}else{break}}return e}checkAttributeInSelection(t,e){if(t.isCollapsed){const n=t.getFirstPosition();const i=[...n.getAncestors(),new qp("",t.getAttributes())];return this.checkAttribute(i,e)}else{const n=t.getRanges();for(const t of n){for(const n of t){if(this.checkAttribute(n.item,e)){return true}}}}return false}*getValidRanges(t,e){t=gw(t);for(const n of t){yield*this._getValidRangesForRange(n,e)}}getNearestSelectionRange(t,e="both"){if(this.checkChild(t,"$text")){return new ob(t)}let n,i;const o=t.getAncestors().reverse().find((t=>this.isLimit(t)))||t.root;if(e=="both"||e=="backward"){n=new Yp({boundaries:ob._createIn(o),startPosition:t,direction:"backward"})}if(e=="both"||e=="forward"){i=new Yp({boundaries:ob._createIn(o),startPosition:t})}for(const t of hw(n,i)){const e=t.walker==n?"elementEnd":"elementStart";const i=t.value;if(i.type==e&&this.isObject(i.item)){return ob._createOn(i.item)}if(this.checkChild(i.nextPosition,"$text")){return new ob(i.nextPosition)}}return null}findAllowedParent(t,e){let n=t.parent;while(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)){if(i.schema.checkAttribute(t,o)){n.setAttribute(o,r,t)}}}removeDisallowedAttributes(t,e){for(const n of t){if(n.is("$text")){mw(this,n,e)}else{const t=ob._createIn(n);const i=t.getPositions();for(const t of i){const n=t.nodeBefore||t.parent;mw(this,n,e)}}}}getAttributesWithProperty(t,e,n){const i={};for(const[o,r]of t.getAttributes()){const t=this.getAttributeProperties(o);if(t[e]===undefined){continue}if(n===undefined||n===t[e]){i[o]=r}}return i}createContext(t){return new Zk(t)}_clearCache(){this._compiledDefinitions=null}_compile(){const t={};const e=this._sourceDefinitions;const n=Object.keys(e);for(const i of n){t[i]=Qk(e[i],i)}for(const e of n){Jk(t,e)}for(const e of n){Xk(t,e)}for(const e of n){tw(t,e)}for(const e of n){ew(t,e);nw(t,e)}for(const e of n){iw(t,e);ow(t,e);rw(t,e)}this._compiledDefinitions=t}_checkContextMatch(t,e,n=e.length-1){const i=e.getItem(n);if(t.allowIn.includes(i.name)){if(n==0){return true}else{const t=this.getDefinition(i);return this._checkContextMatch(t,e,n-1)}}else{return false}}*_getValidRangesForRange(t,e){let n=t.start;let i=t.start;for(const o of t.getItems({shallow:true})){if(o.is("element")){yield*this._getValidRangesForRange(ob._createIn(o),e)}if(!this.checkAttribute(o,e)){if(!n.isEqual(i)){yield new ob(n,i)}n=Qp._createAfter(o)}i=Qp._createAfter(o)}if(!n.isEqual(i)){yield new ob(n,i)}}}class Zk{constructor(t){if(t instanceof Zk){return t}let e;if(typeof t=="string"){e=[t]}else if(!Array.isArray(t)){e=t.getAncestors({includeSelf:true})}else{e=t}this._items=e.map(uw)}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 Zk([t]);e._items=[...this._items,...e._items];return 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 Qk(t,e){const n={name:e,allowIn:[],allowContentOf:[],allowWhere:[],allowAttributes:[],allowAttributesOf:[],allowChildren:[],inheritTypesFrom:[]};sw(t,n);aw(t,n,"allowIn");aw(t,n,"allowContentOf");aw(t,n,"allowWhere");aw(t,n,"allowAttributes");aw(t,n,"allowAttributesOf");aw(t,n,"allowChildren");aw(t,n,"inheritTypesFrom");cw(t,n);return n}function Jk(t,e){const n=t[e];for(const i of n.allowChildren){const n=t[i];if(!n){continue}n.allowIn.push(e)}n.allowChildren.length=0}function Xk(t,e){for(const n of t[e].allowContentOf){if(t[n]){const i=lw(t,n);i.forEach((t=>{t.allowIn.push(e)}))}}delete t[e].allowContentOf}function tw(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 ew(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 nw(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){if(!(e in n)){n[e]=i[e]}}}}delete n.inheritTypesFrom}function iw(t,e){const n=t[e];const i=n.allowIn.filter((e=>t[e]));n.allowIn=Array.from(new Set(i))}function ow(t,e){const n=t[e];for(const i of n.allowIn){const n=t[i];n.allowChildren.push(e)}}function rw(t,e){const n=t[e];n.allowAttributes=Array.from(new Set(n.allowAttributes))}function sw(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]}}}function aw(t,e,n){for(const i of t){const t=i[n];if(typeof t=="string"){e[n].push(t)}else if(Array.isArray(t)){e[n].push(...t)}}}function cw(t,e){for(const n of t){const t=n.inheritAllFrom;if(t){e.allowContentOf.push(t);e.allowWhere.push(t);e.allowAttributesOf.push(t);e.inheritTypesFrom.push(t)}}}function lw(t,e){const n=t[e];return dw(t).filter((t=>t.allowIn.includes(n.name)))}function dw(t){return Object.keys(t).map((e=>t[e]))}function uw(t){if(typeof t=="string"||t.is("documentFragment")){return{name:typeof t=="string"?t:"$documentFragment",*getAttributeKeys(){},getAttribute(){}}}else{return{name:t.is("element")?t.name:"$text",*getAttributeKeys(){yield*t.getAttributeKeys()},getAttribute(e){return t.getAttribute(e)}}}}function*hw(t,e){let n=false;while(!n){n=true;if(t){const e=t.next();if(!e.done){n=false;yield{walker:t,value:e.value}}}if(e){const t=e.next();if(!t.done){n=false;yield{walker:e,value:t.value}}}}}function*gw(t){for(const e of t){yield*e.getMinimalFlatRanges()}}function mw(t,e,n){for(const i of e.getAttributeKeys()){if(!t.checkAttribute(e,i)){n.removeAttribute(i,e)}}}class fw extends(K()){constructor(t){super();this._splitParts=new Map;this._cursorParents=new Map;this._modelCursor=null;this._emptyElementsToKeep=new Set;this.conversionApi={...t,consumable:null,writer:null,store:null,convertItem:(t,e)=>this._convertItem(t,e),convertChildren:(t,e)=>this._convertChildren(t,e),safeInsert:(t,e)=>this._safeInsert(t,e),updateConversionResult:(t,e)=>this._updateConversionResult(t,e),splitToAllowedParent:(t,e)=>this._splitToAllowedParent(t,e),getSplitParts:t=>this._getSplitParts(t),keepEmptyElement:t=>this._keepEmptyElement(t)}}convert(t,e,n=["$root"]){this.fire("viewCleanup",t);this._modelCursor=bw(n,e);this.conversionApi.writer=e;this.conversionApi.consumable=$k.createFrom(t);this.conversionApi.store={};const{modelRange:i}=this._convertItem(t,this._modelCursor);const o=e.createDocumentFragment();if(i){this._removeEmptyElements();for(const t of Array.from(this._modelCursor.parent.getChildren())){e.append(t,o)}o.markers=pw(o,e)}this._modelCursor=null;this._splitParts.clear();this._cursorParents.clear();this._emptyElementsToKeep.clear();this.conversionApi.writer=null;this.conversionApi.store=null;return o}_convertItem(t,e){const n={viewItem:t,modelCursor:e,modelRange:null};if(t.is("element")){this.fire(`element:${t.name}`,n,this.conversionApi)}else if(t.is("$text")){this.fire("text",n,this.conversionApi)}else{this.fire("documentFragment",n,this.conversionApi)}if(n.modelRange&&!(n.modelRange instanceof ob)){throw new z("view-conversion-dispatcher-incorrect-result",this)}return{modelRange:n.modelRange,modelCursor:n.modelCursor}}_convertChildren(t,e){let n=e.is("position")?e:Qp._createAt(e,0);const i=new ob(n);for(const e of Array.from(t.getChildren())){const t=this._convertItem(e,n);if(t.modelRange instanceof ob){i.end=t.modelRange.end;n=t.modelCursor}}return{modelRange:i,modelCursor:n}}_safeInsert(t,e){const n=this._splitToAllowedParent(t,e);if(!n){return false}this.conversionApi.writer.insert(t,n.position);return true}_updateConversionResult(t,e){const n=this._getSplitParts(t);const i=this.conversionApi.writer;if(!e.modelRange){e.modelRange=i.createRange(i.createPositionBefore(t),i.createPositionAfter(n[n.length-1]))}const o=this._cursorParents.get(t);if(o){e.modelCursor=i.createPositionAt(o,0)}else{e.modelCursor=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}}if(this._modelCursor.parent.getAncestors().includes(o)){o=null}}if(!o){if(!vk(e,t,n)){return null}return{position:yk(e,i)}}const r=this.conversionApi.writer.split(e,o);const s=[];for(const t of r.range.getWalker()){if(t.type=="elementEnd"){s.push(t.item)}else{const e=s.pop();const n=t.item;this._registerSplitPair(e,n)}}const a=r.range.end.parent;this._cursorParents.set(t,a);return{position:r.position,cursorParent:a}}_registerSplitPair(t,e){if(!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;if(!this._splitParts.has(t)){e=[t]}else{e=this._splitParts.get(t)}return e}_keepEmptyElement(t){this._emptyElementsToKeep.add(t)}_removeEmptyElements(){let t=false;for(const e of this._splitParts.keys()){if(e.isEmpty&&!this._emptyElementsToKeep.has(e)){this.conversionApi.writer.remove(e);this._splitParts.delete(e);t=true}}if(t){this._removeEmptyElements()}}}function pw(t,e){const n=new Set;const i=new Map;const o=ob._createIn(t).getItems();for(const t of o){if(t.is("element","$marker")){n.add(t)}}for(const t of n){const n=t.getAttribute("data-name");const o=e.createPositionBefore(t);if(!i.has(n)){i.set(n,new ob(o.clone()))}else{i.get(n).end=o.clone()}e.remove(t)}return i}function bw(t,e){let n;for(const i of new Zk(t)){const t={};for(const e of i.getAttributeKeys()){t[e]=i.getAttribute(e)}const o=e.createElement(i.name,t);if(n){e.insert(o,n)}n=Qp._createAt(o,0)}return n}class kw{getHtml(t){const e=document.implementation.createHTMLDocument("");const n=e.createElement("div");n.appendChild(t);return n.innerHTML}}class ww{constructor(t){this.skipComments=true;this.domParser=new DOMParser;this.domConverter=new Jm(t,{renderingMode:"data"});this.htmlWriter=new kw}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=t=="marked"?"markedNbsp":"nbsp"}_toDom(t){if(!t.match(/<(?:html|body|head|meta)(?:\s[^>]*)?>/i)){t=`<body>${t}</body>`}const e=this.domParser.parseFromString(t,"text/html");const n=e.createDocumentFragment();const i=e.body.childNodes;while(i.length>0){n.appendChild(i[0])}return n}}class Aw extends(K()){constructor(t,e){super();this.model=t;this.mapper=new rb;this.downcastDispatcher=new cb({mapper:this.mapper,schema:t.schema});this.downcastDispatcher.on("insert:$text",Lb(),{priority:"lowest"});this.downcastDispatcher.on("insert",Nb(),{priority:"lowest"});this.upcastDispatcher=new fw({schema:t.schema});this.viewDocument=new Zg(e);this.stylesProcessor=e;this.htmlProcessor=new ww(this.viewDocument);this.processor=this.htmlProcessor;this._viewWriter=new um(this.viewDocument);this.upcastDispatcher.on("text",Dk(),{priority:"lowest"});this.upcastDispatcher.on("element",Ek(),{priority:"lowest"});this.upcastDispatcher.on("documentFragment",Ek(),{priority:"lowest"});mt().prototype.decorate.call(this,"init");mt().prototype.decorate.call(this,"set");mt().prototype.decorate.call(this,"get");mt().prototype.decorate.call(this,"toView");mt().prototype.decorate.call(this,"toModel");this.on("init",(()=>{this.fire("ready")}),{priority:"lowest"});this.on("ready",(()=>{this.model.enqueueChange({isUndoable:false},_k)}),{priority:"lowest"})}get(t={}){const{rootName:e="main",trim:n="empty"}=t;if(!this._checkIfRootsExists([e])){throw new z("datacontroller-get-non-existent-root",this)}const i=this.model.document.getRoot(e);if(n==="empty"&&!this.model.hasContent(i,{ignoreWhitespaces:true})){return""}return 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;const i=this._viewWriter;this.mapper.clearBindings();const o=ob._createIn(t);const r=new lm(n);this.mapper.bindElements(t,r);const s=t.is("documentFragment")?t.markers:Cw(t);this.downcastDispatcher.convert(o,s,i,e);return r}init(t){if(this.model.document.version){throw new z("datacontroller-init-document-not-empty",this)}let e={};if(typeof t==="string"){e.main=t}else{e=t}if(!this._checkIfRootsExists(Object.keys(e))){throw new z("datacontroller-init-non-existent-root",this)}this.model.enqueueChange({isUndoable:false},(t=>{for(const n of Object.keys(e)){const i=this.model.document.getRoot(n);t.insert(this.parse(e[n],i),i,0)}}));return Promise.resolve()}set(t,e={}){let n={};if(typeof t==="string"){n.main=t}else{n=t}if(!this._checkIfRootsExists(Object.keys(n))){throw new z("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){if(this.processor&&this.processor!==this.htmlProcessor){this.processor.registerRawContentMatcher(t)}this.htmlProcessor.registerRawContentMatcher(t)}destroy(){this.stopListening()}_checkIfRootsExists(t){for(const e of t){if(!this.model.document.getRootNames().includes(e)){return false}}return true}}function Cw(t){const e=[];const n=t.root.document;if(!n){return new Map}const i=ob._createIn(t);for(const t of n.model.markers){const n=t.getRange();const o=n.isCollapsed;const 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);if(o){e.push([t.name,o])}}}e.sort((([t,e],[n,i])=>{if(e.end.compareWith(i.start)!=="after"){return 1}else if(e.start.compareWith(i.end)!=="before"){return-1}else{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)}}}}));return new Map(e)}class _w{constructor(t,e){this._helpers=new Map;this._downcast=Xc(t);this._createConversionHelpers({name:"downcast",dispatchers:this._downcast,isDowncast:true});this._upcast=Xc(e);this._createConversionHelpers({name:"upcast",dispatchers:this._upcast,isDowncast:false})}addAlias(t,e){const n=this._downcast.includes(e);const i=this._upcast.includes(e);if(!i&&!n){throw new z("conversion-add-alias-dispatcher-not-registered",this)}this._createConversionHelpers({name:t,dispatchers:[e],isDowncast:n})}for(t){if(!this._helpers.has(t)){throw new z("conversion-for-unknown-group",this)}return this._helpers.get(t)}elementToElement(t){this.for("downcast").elementToElement(t);for(const{model:e,view:n}of vw(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 vw(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 vw(t)){this.for("upcast").attributeToAttribute({view:n,model:e})}}_createConversionHelpers({name:t,dispatchers:e,isDowncast:n}){if(this._helpers.has(t)){throw new z("conversion-group-exists",this)}const i=n?new Mb(e):new xk(e);this._helpers.set(t,i)}}function*vw(t){if(t.model.values){for(const e of t.model.values){const n={key:t.model.key,value:e};const i=t.view[e];const o=t.upcastAlso?t.upcastAlso[e]:undefined;yield*yw(n,i,o)}}else{yield*yw(t.model,t.view,t.upcastAlso)}}function*yw(t,e,n){yield{model:t,view:e};if(n){for(const e of Xc(n)){yield{model:t,view:e}}}}class xw{constructor(t){this.baseVersion=t;this.isDocumentOperation=this.baseVersion!==null;this.batch=null}_validate(){}toJSON(){const t=Object.assign({},this);t.__className=this.constructor.className;delete t.batch;delete t.isDocumentOperation;return t}static get className(){return"Operation"}static fromJSON(t,e){return new this(t.baseVersion)}}function Ew(t,e){const n=Iw(e);const i=n.reduce(((t,e)=>t+e.offsetSize),0);const o=t.parent;Mw(t);const r=t.index;o._insertChild(r,n);Bw(o,r+n.length);Bw(o,r);return new ob(t,t.getShiftedBy(i))}function Dw(t){if(!t.isFlat){throw new z("operation-utils-remove-range-not-flat",this)}const e=t.start.parent;Mw(t.start);Mw(t.end);const n=e._removeChildren(t.start.index,t.end.index-t.start.index);Bw(e,t.start.index);return n}function Tw(t,e){if(!t.isFlat){throw new z("operation-utils-move-range-not-flat",this)}const n=Dw(t);e=e._getTransformedByDeletion(t.start,t.end.offset-t.start.offset);return Ew(e,n)}function Sw(t,e,n){Mw(t.start);Mw(t.end);for(const i of t.getItems({shallow:true})){const t=i.is("$textProxy")?i.textNode:i;if(n!==null){t._setAttribute(e,n)}else{t._removeAttribute(e)}Bw(t.parent,t.index)}Bw(t.end.parent,t.end.index)}function Iw(t){const e=[];function n(t){if(typeof t=="string"){e.push(new qp(t))}else if(t instanceof $p){e.push(new qp(t.data,t.getAttributes()))}else if(t instanceof Up){e.push(t)}else if(Tt(t)){for(const e of t){n(e)}}}n(t);for(let t=1;t<e.length;t++){const n=e[t];const i=e[t-1];if(n instanceof qp&&i instanceof qp&&Lw(n,i)){e.splice(t-1,2,new qp(i.data+n.data,i.getAttributes()));t--}}return e}function Bw(t,e){const n=t.getChild(e-1);const i=t.getChild(e);if(n&&i&&n.is("$text")&&i.is("$text")&&Lw(n,i)){const o=new qp(n.data+i.data,n.getAttributes());t._removeChildren(e-1,2);t._insertChild(e-1,o)}}function Mw(t){const e=t.textNode;const n=t.parent;if(e){const i=t.offset-e.startOffset;const o=e.index;n._removeChildren(o,1);const r=new qp(e.data.substr(0,i),e.getAttributes());const s=new qp(e.data.substr(i),e.getAttributes());n._insertChild(o,[r,s])}}function Lw(t,e){const n=t.getAttributes();const i=e.getAttributes();for(const t of n){if(t[1]!==e.getAttribute(t[0])){return false}i.next()}return i.next().done}class Nw extends xw{constructor(t,e,n,i){super(i);this.sourcePosition=t.clone();this.sourcePosition.stickiness="toNext";this.howMany=e;this.targetPosition=n.clone();this.targetPosition.stickiness="toNone"}get type(){if(this.targetPosition.root.rootName=="$graveyard"){return"remove"}else if(this.sourcePosition.root.rootName=="$graveyard"){return"reinsert"}return"move"}clone(){return new Nw(this.sourcePosition,this.howMany,this.targetPosition,this.baseVersion)}getMovedRangeStart(){return this.targetPosition._getTransformedByDeletion(this.sourcePosition,this.howMany)}getReversed(){const t=this.sourcePosition._getTransformedByInsertion(this.targetPosition,this.howMany);return new Nw(this.getMovedRangeStart(),this.howMany,t,this.baseVersion+1)}_validate(){const t=this.sourcePosition.parent;const e=this.targetPosition.parent;const n=this.sourcePosition.offset;const i=this.targetPosition.offset;if(n+this.howMany>t.maxOffset){throw new z("move-operation-nodes-do-not-exist",this)}else if(t===e&&n<i&&i<n+this.howMany){throw new z("move-operation-range-into-itself",this)}else if(this.sourcePosition.root==this.targetPosition.root){if(Dt(this.sourcePosition.getParentPath(),this.targetPosition.getParentPath())=="prefix"){const t=this.sourcePosition.path.length-1;if(this.targetPosition.path[t]>=n&&this.targetPosition.path[t]<n+this.howMany){throw new z("move-operation-node-into-itself",this)}}}}_execute(){Tw(ob._createFromPositionAndShift(this.sourcePosition,this.howMany),this.targetPosition)}toJSON(){const t=super.toJSON();t.sourcePosition=this.sourcePosition.toJSON();t.targetPosition=this.targetPosition.toJSON();return t}static get className(){return"MoveOperation"}static fromJSON(t,e){const n=Qp.fromJSON(t.sourcePosition,e);const i=Qp.fromJSON(t.targetPosition,e);return new this(n,t.howMany,i,t.baseVersion)}}class zw extends xw{constructor(t,e,n){super(n);this.position=t.clone();this.position.stickiness="toNone";this.nodes=new Wp(Iw(e));this.shouldReceiveAttributes=false}get type(){return"insert"}get howMany(){return this.nodes.maxOffset}clone(){const t=new Wp([...this.nodes].map((t=>t._clone(true))));const e=new zw(this.position,t,this.baseVersion);e.shouldReceiveAttributes=this.shouldReceiveAttributes;return e}getReversed(){const t=this.position.root.document.graveyard;const e=new Qp(t,[0]);return new Nw(this.position,this.nodes.maxOffset,e,this.baseVersion+1)}_validate(){const t=this.position.parent;if(!t||t.maxOffset<this.position.offset){throw new z("insert-operation-position-invalid",this)}}_execute(){const t=this.nodes;this.nodes=new Wp([...t].map((t=>t._clone(true))));Ew(this.position,t)}toJSON(){const t=super.toJSON();t.position=this.position.toJSON();t.nodes=this.nodes.toJSON();return t}static get className(){return"InsertOperation"}static fromJSON(t,e){const n=[];for(const e of t.nodes){if(e.name){n.push(Gp.fromJSON(e))}else{n.push(qp.fromJSON(e))}}const i=new zw(Qp.fromJSON(t.position,e),n,t.baseVersion);i.shouldReceiveAttributes=t.shouldReceiveAttributes;return i}}class Pw extends xw{constructor(t,e,n,i,o,r){super(r);this.name=t;this.oldRange=e?e.clone():null;this.newRange=n?n.clone():null;this.affectsData=o;this._markers=i}get type(){return"marker"}clone(){return new Pw(this.name,this.oldRange,this.newRange,this._markers,this.affectsData,this.baseVersion)}getReversed(){return new Pw(this.name,this.newRange,this.oldRange,this._markers,this.affectsData,this.baseVersion+1)}_execute(){if(this.newRange){this._markers._set(this.name,this.newRange,true,this.affectsData)}else{this._markers._remove(this.name)}}toJSON(){const t=super.toJSON();if(this.oldRange){t.oldRange=this.oldRange.toJSON()}if(this.newRange){t.newRange=this.newRange.toJSON()}delete t._markers;return t}static get className(){return"MarkerOperation"}static fromJSON(t,e){return new Pw(t.name,t.oldRange?ob.fromJSON(t.oldRange,e):null,t.newRange?ob.fromJSON(t.newRange,e):null,e.model.markers,t.affectsData,t.baseVersion)}}function Rw(t,e){return Tp(t,e)}const Ow=Rw;class Vw extends xw{constructor(t,e,n,i,o){super(o);this.range=t.clone();this.key=e;this.oldValue=n===undefined?null:n;this.newValue=i===undefined?null:i}get type(){if(this.oldValue===null){return"addAttribute"}else if(this.newValue===null){return"removeAttribute"}else{return"changeAttribute"}}clone(){return new Vw(this.range,this.key,this.oldValue,this.newValue,this.baseVersion)}getReversed(){return new Vw(this.range,this.key,this.newValue,this.oldValue,this.baseVersion+1)}toJSON(){const t=super.toJSON();t.range=this.range.toJSON();return t}_validate(){if(!this.range.isFlat){throw new z("attribute-operation-range-not-flat",this)}for(const t of this.range.getItems({shallow:true})){if(this.oldValue!==null&&!Ow(t.getAttribute(this.key),this.oldValue)){throw new z("attribute-operation-wrong-old-value",this,{item:t,key:this.key,value:this.oldValue})}if(this.oldValue===null&&this.newValue!==null&&t.hasAttribute(this.key)){throw new z("attribute-operation-attribute-exists",this,{node:t,key:this.key})}}}_execute(){if(!Ow(this.oldValue,this.newValue)){Sw(this.range,this.key,this.newValue)}}static get className(){return"AttributeOperation"}static fromJSON(t,e){return new Vw(ob.fromJSON(t.range,e),t.key,t.oldValue,t.newValue,t.baseVersion)}}class Fw extends xw{get type(){return"noop"}clone(){return new Fw(this.baseVersion)}getReversed(){return new Fw(this.baseVersion+1)}_execute(){}static get className(){return"NoOperation"}}class jw extends xw{constructor(t,e,n,i){super(i);this.position=t;this.position.stickiness="toNext";this.oldName=e;this.newName=n}get type(){return"rename"}clone(){return new jw(this.position.clone(),this.oldName,this.newName,this.baseVersion)}getReversed(){return new jw(this.position.clone(),this.newName,this.oldName,this.baseVersion+1)}_validate(){const t=this.position.nodeAfter;if(!(t instanceof Gp)){throw new z("rename-operation-wrong-position",this)}else if(t.name!==this.oldName){throw new z("rename-operation-wrong-name",this)}}_execute(){const t=this.position.nodeAfter;t.name=this.newName}toJSON(){const t=super.toJSON();t.position=this.position.toJSON();return t}static get className(){return"RenameOperation"}static fromJSON(t,e){return new jw(Qp.fromJSON(t.position,e),t.oldName,t.newName,t.baseVersion)}}class Hw extends xw{constructor(t,e,n,i,o){super(o);this.root=t;this.key=e;this.oldValue=n;this.newValue=i}get type(){if(this.oldValue===null){return"addRootAttribute"}else if(this.newValue===null){return"removeRootAttribute"}else{return"changeRootAttribute"}}clone(){return new Hw(this.root,this.key,this.oldValue,this.newValue,this.baseVersion)}getReversed(){return new Hw(this.root,this.key,this.newValue,this.oldValue,this.baseVersion+1)}_validate(){if(this.root!=this.root.root||this.root.is("documentFragment")){throw new z("rootattribute-operation-not-a-root",this,{root:this.root,key:this.key})}if(this.oldValue!==null&&this.root.getAttribute(this.key)!==this.oldValue){throw new z("rootattribute-operation-wrong-old-value",this,{root:this.root,key:this.key})}if(this.oldValue===null&&this.newValue!==null&&this.root.hasAttribute(this.key)){throw new z("rootattribute-operation-attribute-exists",this,{root:this.root,key:this.key})}}_execute(){if(this.newValue!==null){this.root._setAttribute(this.key,this.newValue)}else{this.root._removeAttribute(this.key)}}toJSON(){const t=super.toJSON();t.root=this.root.toJSON();return t}static get className(){return"RootAttributeOperation"}static fromJSON(t,e){if(!e.getRoot(t.root)){throw new z("rootattribute-operation-fromjson-no-root",this,{rootName:t.root})}return new Hw(e.getRoot(t.root),t.key,t.oldValue,t.newValue,t.baseVersion)}}class Uw extends xw{constructor(t,e,n,i,o){super(o);this.sourcePosition=t.clone();this.sourcePosition.stickiness="toPrevious";this.howMany=e;this.targetPosition=n.clone();this.targetPosition.stickiness="toNext";this.graveyardPosition=i.clone()}get type(){return"merge"}get deletionPosition(){return new Qp(this.sourcePosition.root,this.sourcePosition.path.slice(0,-1))}get movedRange(){const t=this.sourcePosition.getShiftedBy(Number.POSITIVE_INFINITY);return new ob(this.sourcePosition,t)}clone(){return new Uw(this.sourcePosition,this.howMany,this.targetPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.targetPosition._getTransformedByMergeOperation(this);const e=this.sourcePosition.path.slice(0,-1);const n=new Qp(this.sourcePosition.root,e)._getTransformedByMergeOperation(this);return new Ww(t,this.howMany,n,this.graveyardPosition,this.baseVersion+1)}_validate(){const t=this.sourcePosition.parent;const e=this.targetPosition.parent;if(!t.parent){throw new z("merge-operation-source-position-invalid",this)}else if(!e.parent){throw new z("merge-operation-target-position-invalid",this)}else if(this.howMany!=t.maxOffset){throw new z("merge-operation-how-many-invalid",this)}}_execute(){const t=this.sourcePosition.parent;const e=ob._createIn(t);Tw(e,this.targetPosition);Tw(ob._createOn(t),this.graveyardPosition)}toJSON(){const t=super.toJSON();t.sourcePosition=t.sourcePosition.toJSON();t.targetPosition=t.targetPosition.toJSON();t.graveyardPosition=t.graveyardPosition.toJSON();return t}static get className(){return"MergeOperation"}static fromJSON(t,e){const n=Qp.fromJSON(t.sourcePosition,e);const i=Qp.fromJSON(t.targetPosition,e);const o=Qp.fromJSON(t.graveyardPosition,e);return new this(n,t.howMany,i,o,t.baseVersion)}}class Ww extends xw{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;if(this.graveyardPosition){this.graveyardPosition.stickiness="toNext"}}get type(){return"split"}get moveTargetPosition(){const t=this.insertionPosition.path.slice();t.push(0);return new Qp(this.insertionPosition.root,t)}get movedRange(){const t=this.splitPosition.getShiftedBy(Number.POSITIVE_INFINITY);return new ob(this.splitPosition,t)}clone(){return new Ww(this.splitPosition,this.howMany,this.insertionPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.splitPosition.root.document.graveyard;const e=new Qp(t,[0]);return new Uw(this.moveTargetPosition,this.howMany,this.splitPosition,e,this.baseVersion+1)}_validate(){const t=this.splitPosition.parent;const e=this.splitPosition.offset;if(!t||t.maxOffset<e){throw new z("split-operation-position-invalid",this)}else if(!t.parent){throw new z("split-operation-split-in-root",this)}else if(this.howMany!=t.maxOffset-this.splitPosition.offset){throw new z("split-operation-how-many-invalid",this)}else if(this.graveyardPosition&&!this.graveyardPosition.nodeAfter){throw new z("split-operation-graveyard-position-invalid",this)}}_execute(){const t=this.splitPosition.parent;if(this.graveyardPosition){Tw(ob._createFromPositionAndShift(this.graveyardPosition,1),this.insertionPosition)}else{const e=t._clone();Ew(this.insertionPosition,e)}const e=new ob(Qp._createAt(t,this.splitPosition.offset),Qp._createAt(t,t.maxOffset));Tw(e,this.moveTargetPosition)}toJSON(){const t=super.toJSON();t.splitPosition=this.splitPosition.toJSON();t.insertionPosition=this.insertionPosition.toJSON();if(this.graveyardPosition){t.graveyardPosition=this.graveyardPosition.toJSON()}return t}static get className(){return"SplitOperation"}static getInsertionPosition(t){const e=t.path.slice(0,-1);e[e.length-1]++;return new Qp(t.root,e,"toPrevious")}static fromJSON(t,e){const n=Qp.fromJSON(t.splitPosition,e);const i=Qp.fromJSON(t.insertionPosition,e);const o=t.graveyardPosition?Qp.fromJSON(t.graveyardPosition,e):null;return new this(n,t.howMany,i,o,t.baseVersion)}}const qw={};qw[Vw.className]=Vw;qw[zw.className]=zw;qw[Pw.className]=Pw;qw[Nw.className]=Nw;qw[Fw.className]=Fw;qw[xw.className]=xw;qw[jw.className]=jw;qw[Hw.className]=Hw;qw[Ww.className]=Ww;qw[Uw.className]=Uw;class $w{static fromJSON(t,e){return qw[t.__className].fromJSON(t,e)}}const Gw=new Map;function Kw(t,e,n){let i=Gw.get(t);if(!i){i=new Map;Gw.set(t,i)}i.set(e,n)}function Yw(t,e){const n=Gw.get(t);if(n&&n.has(e)){return n.get(e)}return Zw}function Zw(t){return[t]}function Qw(t,e,n={}){const i=Yw(t.constructor,e.constructor);try{t=t.clone();return i(t,e,n)}catch(t){throw t}}function Jw(t,e,n){t=t.slice();e=e.slice();const i=new Xw(n.document,n.useRelations,n.forceWeakRemove);i.setOriginalOperations(t);i.setOriginalOperations(e);const o=i.originalOperations;if(t.length==0||e.length==0){return{operationsA:t,operationsB:e,originalOperations:o}}const r=new WeakMap;for(const e of t){r.set(e,0)}const s={nextBaseVersionA:t[t.length-1].baseVersion+1,nextBaseVersionB:e[e.length-1].baseVersion+1,originalOperationsACount:t.length,originalOperationsBCount:e.length};let a=0;while(a<t.length){const n=t[a];const o=r.get(n);if(o==e.length){a++;continue}const s=e[o];const c=Qw(n,s,i.getContext(n,s,true));const l=Qw(s,n,i.getContext(s,n,false));i.updateRelation(n,s);i.setOriginalOperations(c,n);i.setOriginalOperations(l,s);for(const t of c){r.set(t,o+l.length)}t.splice(a,1,...c);e.splice(o,1,...l)}if(n.padWithNoOps){const n=t.length-s.originalOperationsACount;const i=e.length-s.originalOperationsBCount;eA(t,i-n);eA(e,n-i)}tA(t,s.nextBaseVersionB);tA(e,s.nextBaseVersionA);return{operationsA:t,operationsB:e,originalOperations:o}}class Xw{constructor(t,e,n=false){this.originalOperations=new Map;this._history=t.history;this._useRelations=e;this._forceWeakRemove=!!n;this._relations=new Map}setOriginalOperations(t,e=null){const n=e?this.originalOperations.get(e):null;for(const e of t){this.originalOperations.set(e,n||e)}}updateRelation(t,e){if(t instanceof Nw){if(e instanceof Uw){if(t.targetPosition.isEqual(e.sourcePosition)||e.movedRange.containsPosition(t.targetPosition)){this._setRelation(t,e,"insertAtSource")}else if(t.targetPosition.isEqual(e.deletionPosition)){this._setRelation(t,e,"insertBetween")}else if(t.targetPosition.isAfter(e.sourcePosition)){this._setRelation(t,e,"moveTargetAfter")}}else if(e instanceof Nw){if(t.targetPosition.isEqual(e.sourcePosition)||t.targetPosition.isBefore(e.sourcePosition)){this._setRelation(t,e,"insertBefore")}else{this._setRelation(t,e,"insertAfter")}}}else if(t instanceof Ww){if(e instanceof Uw){if(t.splitPosition.isBefore(e.sourcePosition)){this._setRelation(t,e,"splitBefore")}}else if(e instanceof Nw){if(t.splitPosition.isEqual(e.sourcePosition)||t.splitPosition.isBefore(e.sourcePosition)){this._setRelation(t,e,"splitBefore")}else{const n=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&n.containsPosition(t.splitPosition)){const i=n.end.offset-t.splitPosition.offset;const o=t.splitPosition.offset-n.start.offset;this._setRelation(t,e,{howMany:i,offset:o})}}}}else if(t instanceof Uw){if(e instanceof Uw){if(!t.targetPosition.isEqual(e.sourcePosition)){this._setRelation(t,e,"mergeTargetNotMoved")}if(t.sourcePosition.isEqual(e.targetPosition)){this._setRelation(t,e,"mergeSourceNotMoved")}if(t.sourcePosition.isEqual(e.sourcePosition)){this._setRelation(t,e,"mergeSameElement")}}else if(e instanceof Ww){if(t.sourcePosition.isEqual(e.splitPosition)){this._setRelation(t,e,"splitAtSource")}}}else if(t instanceof Pw){const n=t.newRange;if(!n){return}if(e instanceof Nw){const i=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);const o=i.containsPosition(n.start)||i.start.isEqual(n.start);const r=i.containsPosition(n.end)||i.end.isEqual(n.end);if((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 Uw){const i=n.start.isEqual(e.targetPosition);const o=n.start.isEqual(e.deletionPosition);const r=n.end.isEqual(e.deletionPosition);const s=n.end.isEqual(e.sourcePosition);if(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);const i=this._history.getUndoneOperation(n);if(!i){return null}const o=this.originalOperations.get(t);const r=this._relations.get(o);if(r){return r.get(i)||null}return null}_setRelation(t,e,n){const i=this.originalOperations.get(t);const o=this.originalOperations.get(e);let r=this._relations.get(i);if(!r){r=new Map;this._relations.set(i,r)}r.set(o,n)}}function tA(t,e){for(const n of t){n.baseVersion=e++}}function eA(t,e){for(let n=0;n<e;n++){t.push(new Fw(0))}}Kw(Vw,Vw,((t,e,n)=>{if(t.key===e.key&&t.range.start.hasSameParentAs(e.range.start)){const i=t.range.getDifference(e.range).map((e=>new Vw(e,t.key,t.oldValue,t.newValue,0)));const o=t.range.getIntersection(e.range);if(o){if(n.aIsStrong){i.push(new Vw(o,e.key,e.newValue,t.newValue,0))}}if(i.length==0){return[new Fw(0)]}return i}else{return[t]}}));Kw(Vw,zw,((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);const i=n.map((e=>new Vw(e,t.key,t.oldValue,t.newValue,t.baseVersion)));if(e.shouldReceiveAttributes){const n=nA(e,t.key,t.oldValue);if(n){i.unshift(n)}}return i}t.range=t.range._getTransformedByInsertion(e.position,e.howMany,false)[0];return[t]}));function nA(t,e,n){const i=t.nodes;const o=i.getNode(0).getAttribute(e);if(o==n){return null}const r=new ob(t.position,t.position.getShiftedBy(t.howMany));return new Vw(r,e,o,n,0)}Kw(Vw,Uw,((t,e)=>{const n=[];if(t.range.start.hasSameParentAs(e.deletionPosition)){if(t.range.containsPosition(e.deletionPosition)||t.range.start.isEqual(e.deletionPosition)){n.push(ob._createFromPositionAndShift(e.graveyardPosition,1))}}const i=t.range._getTransformedByMergeOperation(e);if(!i.isCollapsed){n.push(i)}return n.map((e=>new Vw(e,t.key,t.oldValue,t.newValue,t.baseVersion)))}));Kw(Vw,Nw,((t,e)=>{const n=iA(t.range,e);return n.map((e=>new Vw(e,t.key,t.oldValue,t.newValue,t.baseVersion)))}));function iA(t,e){const n=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);let i=null;let o=[];if(n.containsRange(t,true)){i=t}else if(t.start.hasSameParentAs(n.start)){o=t.getDifference(n);i=t.getIntersection(n)}else{o=[t]}const r=[];for(let t of o){t=t._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=e.getMovedRangeStart();const i=t.start.hasSameParentAs(n);const o=t._getTransformedByInsertion(n,e.howMany,i);r.push(...o)}if(i){r.push(i._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany,false)[0])}return r}Kw(Vw,Ww,((t,e)=>{if(t.range.end.isEqual(e.insertionPosition)){if(!e.graveyardPosition){t.range.end.offset++}return[t]}if(t.range.start.hasSameParentAs(e.splitPosition)&&t.range.containsPosition(e.splitPosition)){const n=t.clone();n.range=new ob(e.moveTargetPosition.clone(),t.range.end._getCombined(e.splitPosition,e.moveTargetPosition));t.range.end=e.splitPosition.clone();t.range.end.stickiness="toPrevious";return[t,n]}t.range=t.range._getTransformedBySplitOperation(e);return[t]}));Kw(zw,Vw,((t,e)=>{const n=[t];if(t.shouldReceiveAttributes&&t.position.hasSameParentAs(e.range.start)&&e.range.containsPosition(t.position)){const i=nA(t,e.key,e.newValue);if(i){n.push(i)}}return n}));Kw(zw,zw,((t,e,n)=>{if(t.position.isEqual(e.position)&&n.aIsStrong){return[t]}t.position=t.position._getTransformedByInsertOperation(e);return[t]}));Kw(zw,Nw,((t,e)=>{t.position=t.position._getTransformedByMoveOperation(e);return[t]}));Kw(zw,Ww,((t,e)=>{t.position=t.position._getTransformedBySplitOperation(e);return[t]}));Kw(zw,Uw,((t,e)=>{t.position=t.position._getTransformedByMergeOperation(e);return[t]}));Kw(Pw,zw,((t,e)=>{if(t.oldRange){t.oldRange=t.oldRange._getTransformedByInsertOperation(e)[0]}if(t.newRange){t.newRange=t.newRange._getTransformedByInsertOperation(e)[0]}return[t]}));Kw(Pw,Pw,((t,e,n)=>{if(t.name==e.name){if(n.aIsStrong){t.oldRange=e.newRange?e.newRange.clone():null}else{return[new Fw(0)]}}return[t]}));Kw(Pw,Uw,((t,e)=>{if(t.oldRange){t.oldRange=t.oldRange._getTransformedByMergeOperation(e)}if(t.newRange){t.newRange=t.newRange._getTransformedByMergeOperation(e)}return[t]}));Kw(Pw,Nw,((t,e,n)=>{if(t.oldRange){t.oldRange=ob._createFromRanges(t.oldRange._getTransformedByMoveOperation(e))}if(t.newRange){if(n.abRelation){const i=ob._createFromRanges(t.newRange._getTransformedByMoveOperation(e));if(n.abRelation.side=="left"&&e.targetPosition.isEqual(t.newRange.start)){t.newRange.end=i.end;t.newRange.start.path=n.abRelation.path;return[t]}else if(n.abRelation.side=="right"&&e.targetPosition.isEqual(t.newRange.end)){t.newRange.start=i.start;t.newRange.end.path=n.abRelation.path;return[t]}}t.newRange=ob._createFromRanges(t.newRange._getTransformedByMoveOperation(e))}return[t]}));Kw(Pw,Ww,((t,e,n)=>{if(t.oldRange){t.oldRange=t.oldRange._getTransformedBySplitOperation(e)}if(t.newRange){if(n.abRelation){const i=t.newRange._getTransformedBySplitOperation(e);if(t.newRange.start.isEqual(e.splitPosition)&&n.abRelation.wasStartBeforeMergedElement){t.newRange.start=Qp._createAt(e.insertionPosition)}else if(t.newRange.start.isEqual(e.splitPosition)&&!n.abRelation.wasInLeftElement){t.newRange.start=Qp._createAt(e.moveTargetPosition)}if(t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasInRightElement){t.newRange.end=Qp._createAt(e.moveTargetPosition)}else if(t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasEndBeforeMergedElement){t.newRange.end=Qp._createAt(e.insertionPosition)}else{t.newRange.end=i.end}return[t]}t.newRange=t.newRange._getTransformedBySplitOperation(e)}return[t]}));Kw(Uw,zw,((t,e)=>{if(t.sourcePosition.hasSameParentAs(e.position)){t.howMany+=e.howMany}t.sourcePosition=t.sourcePosition._getTransformedByInsertOperation(e);t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e);return[t]}));Kw(Uw,Uw,((t,e,n)=>{if(t.sourcePosition.isEqual(e.sourcePosition)&&t.targetPosition.isEqual(e.targetPosition)){if(!n.bWasUndone){return[new Fw(0)]}else{const n=e.graveyardPosition.path.slice();n.push(0);t.sourcePosition=new Qp(e.graveyardPosition.root,n);t.howMany=0;return[t]}}if(t.sourcePosition.isEqual(e.sourcePosition)&&!t.targetPosition.isEqual(e.targetPosition)&&!n.bWasUndone&&n.abRelation!="splitAtSource"){const i=t.targetPosition.root.rootName=="$graveyard";const o=e.targetPosition.root.rootName=="$graveyard";const r=i&&!o;const s=o&&!i;const a=s||!r&&n.aIsStrong;if(a){const n=e.targetPosition._getTransformedByMergeOperation(e);const i=t.targetPosition._getTransformedByMergeOperation(e);return[new Nw(n,t.howMany,i,0)]}else{return[new Fw(0)]}}if(t.sourcePosition.hasSameParentAs(e.targetPosition)){t.howMany+=e.howMany}t.sourcePosition=t.sourcePosition._getTransformedByMergeOperation(e);t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e);if(!t.graveyardPosition.isEqual(e.graveyardPosition)||!n.aIsStrong){t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)}return[t]}));Kw(Uw,Nw,((t,e,n)=>{const i=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);if(e.type=="remove"&&!n.bWasUndone&&!n.forceWeakRemove){if(t.deletionPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.sourcePosition)){return[new Fw(0)]}}if(t.sourcePosition.hasSameParentAs(e.targetPosition)){t.howMany+=e.howMany}if(t.sourcePosition.hasSameParentAs(e.sourcePosition)){t.howMany-=e.howMany}t.sourcePosition=t.sourcePosition._getTransformedByMoveOperation(e);t.targetPosition=t.targetPosition._getTransformedByMoveOperation(e);if(!t.graveyardPosition.isEqual(e.targetPosition)){t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)}return[t]}));Kw(Uw,Ww,((t,e,n)=>{if(e.graveyardPosition){t.graveyardPosition=t.graveyardPosition._getTransformedByDeletion(e.graveyardPosition,1);if(t.deletionPosition.isEqual(e.graveyardPosition)){t.howMany=e.howMany}}if(t.targetPosition.isEqual(e.splitPosition)){const i=e.howMany!=0;const o=e.graveyardPosition&&t.deletionPosition.isEqual(e.graveyardPosition);if(i||o||n.abRelation=="mergeTargetNotMoved"){t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e);return[t]}}if(t.sourcePosition.isEqual(e.splitPosition)){if(n.abRelation=="mergeSourceNotMoved"){t.howMany=0;t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e);return[t]}if(n.abRelation=="mergeSameElement"||t.sourcePosition.offset>0){t.sourcePosition=e.moveTargetPosition.clone();t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e);return[t]}}if(t.sourcePosition.hasSameParentAs(e.splitPosition)){t.howMany=e.splitPosition.offset}t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e);t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e);return[t]}));Kw(Nw,zw,((t,e)=>{const n=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);const i=n._getTransformedByInsertOperation(e,false)[0];t.sourcePosition=i.start;t.howMany=i.end.offset-i.start.offset;if(!t.targetPosition.isEqual(e.position)){t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e)}return[t]}));Kw(Nw,Nw,((t,e,n)=>{const i=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);const o=ob._createFromPositionAndShift(e.sourcePosition,e.howMany);let r=n.aIsStrong;let s=!n.aIsStrong;if(n.abRelation=="insertBefore"||n.baRelation=="insertAfter"){s=true}else if(n.abRelation=="insertAfter"||n.baRelation=="insertBefore"){s=false}let a;if(t.targetPosition.isEqual(e.targetPosition)&&s){a=t.targetPosition._getTransformedByDeletion(e.sourcePosition,e.howMany)}else{a=t.targetPosition._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany)}if(oA(t,e)&&oA(e,t)){return[e.getReversed()]}const c=i.containsPosition(e.targetPosition);if(c&&i.containsRange(o,true)){i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);return rA([i],a)}const l=o.containsPosition(t.targetPosition);if(l&&o.containsRange(i,true)){i.start=i.start._getCombined(e.sourcePosition,e.getMovedRangeStart());i.end=i.end._getCombined(e.sourcePosition,e.getMovedRangeStart());return rA([i],a)}const d=Dt(t.sourcePosition.getParentPath(),e.sourcePosition.getParentPath());if(d=="prefix"||d=="extension"){i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany);return rA([i],a)}if(t.type=="remove"&&e.type!="remove"&&!n.aWasUndone&&!n.forceWeakRemove){r=true}else if(t.type!="remove"&&e.type=="remove"&&!n.bWasUndone&&!n.forceWeakRemove){r=false}const u=[];const h=i.getDifference(o);for(const t of h){t.start=t.start._getTransformedByDeletion(e.sourcePosition,e.howMany);t.end=t.end._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=Dt(t.start.getParentPath(),e.getMovedRangeStart().getParentPath())=="same";const i=t._getTransformedByInsertion(e.getMovedRangeStart(),e.howMany,n);u.push(...i)}const g=i.getIntersection(o);if(g!==null&&r){g.start=g.start._getCombined(e.sourcePosition,e.getMovedRangeStart());g.end=g.end._getCombined(e.sourcePosition,e.getMovedRangeStart());if(u.length===0){u.push(g)}else if(u.length==1){if(o.start.isBefore(i.start)||o.start.isEqual(i.start)){u.unshift(g)}else{u.push(g)}}else{u.splice(1,0,g)}}if(u.length===0){return[new Fw(t.baseVersion)]}return rA(u,a)}));Kw(Nw,Ww,((t,e,n)=>{let i=t.targetPosition.clone();if(!t.targetPosition.isEqual(e.insertionPosition)||!e.graveyardPosition||n.abRelation=="moveTargetAfter"){i=t.targetPosition._getTransformedBySplitOperation(e)}const o=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);if(o.end.isEqual(e.insertionPosition)){if(!e.graveyardPosition){t.howMany++}t.targetPosition=i;return[t]}if(o.start.hasSameParentAs(e.splitPosition)&&o.containsPosition(e.splitPosition)){let t=new ob(e.splitPosition,o.end);t=t._getTransformedBySplitOperation(e);const n=[new ob(o.start,e.splitPosition),t];return rA(n,i)}if(t.targetPosition.isEqual(e.splitPosition)&&n.abRelation=="insertAtSource"){i=e.moveTargetPosition}if(t.targetPosition.isEqual(e.insertionPosition)&&n.abRelation=="insertBetween"){i=t.targetPosition}const r=o._getTransformedBySplitOperation(e);const s=[r];if(e.graveyardPosition){const i=o.start.isEqual(e.graveyardPosition)||o.containsPosition(e.graveyardPosition);if(t.howMany>1&&i&&!n.aWasUndone){s.push(ob._createFromPositionAndShift(e.insertionPosition,1))}}return rA(s,i)}));Kw(Nw,Uw,((t,e,n)=>{const i=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);if(e.deletionPosition.hasSameParentAs(t.sourcePosition)&&i.containsPosition(e.sourcePosition)){if(t.type=="remove"&&!n.forceWeakRemove){if(!n.aWasUndone){const n=[];let i=e.graveyardPosition.clone();let o=e.targetPosition._getTransformedByMergeOperation(e);if(t.howMany>1){n.push(new Nw(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);const s=new Nw(i,1,r,0);const a=s.getMovedRangeStart().path.slice();a.push(0);const c=new Qp(s.targetPosition.root,a);o=o._getTransformedByMove(i,r,1);const l=new Nw(o,e.howMany,c,0);n.push(s);n.push(l);return n}}else{if(t.howMany==1){if(!n.bWasUndone){return[new Fw(0)]}else{t.sourcePosition=e.graveyardPosition.clone();t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e);return[t]}}}}const o=ob._createFromPositionAndShift(t.sourcePosition,t.howMany);const r=o._getTransformedByMergeOperation(e);t.sourcePosition=r.start;t.howMany=r.end.offset-r.start.offset;t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e);return[t]}));Kw(jw,zw,((t,e)=>{t.position=t.position._getTransformedByInsertOperation(e);return[t]}));Kw(jw,Uw,((t,e)=>{if(t.position.isEqual(e.deletionPosition)){t.position=e.graveyardPosition.clone();t.position.stickiness="toNext";return[t]}t.position=t.position._getTransformedByMergeOperation(e);return[t]}));Kw(jw,Nw,((t,e)=>{t.position=t.position._getTransformedByMoveOperation(e);return[t]}));Kw(jw,jw,((t,e,n)=>{if(t.position.isEqual(e.position)){if(n.aIsStrong){t.oldName=e.newName}else{return[new Fw(0)]}}return[t]}));Kw(jw,Ww,((t,e)=>{const n=t.position.path;const i=e.splitPosition.getParentPath();if(Dt(n,i)=="same"&&!e.graveyardPosition){const e=new jw(t.position.getShiftedBy(1),t.oldName,t.newName,0);return[t,e]}t.position=t.position._getTransformedBySplitOperation(e);return[t]}));Kw(Hw,Hw,((t,e,n)=>{if(t.root===e.root&&t.key===e.key){if(!n.aIsStrong||t.newValue===e.newValue){return[new Fw(0)]}else{t.oldValue=e.newValue}}return[t]}));Kw(Ww,zw,((t,e)=>{if(t.splitPosition.hasSameParentAs(e.position)&&t.splitPosition.offset<e.position.offset){t.howMany+=e.howMany}t.splitPosition=t.splitPosition._getTransformedByInsertOperation(e);t.insertionPosition=t.insertionPosition._getTransformedByInsertOperation(e);return[t]}));Kw(Ww,Uw,((t,e,n)=>{if(!t.graveyardPosition&&!n.bWasUndone&&t.splitPosition.hasSameParentAs(e.sourcePosition)){const n=e.graveyardPosition.path.slice();n.push(0);const i=new Qp(e.graveyardPosition.root,n);const o=Ww.getInsertionPosition(new Qp(e.graveyardPosition.root,n));const r=new Ww(i,0,o,null,0);t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);t.graveyardPosition=r.insertionPosition.clone();t.graveyardPosition.stickiness="toNext";return[r,t]}if(t.splitPosition.hasSameParentAs(e.deletionPosition)&&!t.splitPosition.isAfter(e.deletionPosition)){t.howMany--}if(t.splitPosition.hasSameParentAs(e.targetPosition)){t.howMany+=e.howMany}t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);if(t.graveyardPosition){t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)}return[t]}));Kw(Ww,Nw,((t,e,n)=>{const i=ob._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);const i=t.graveyardPosition._getTransformedByMoveOperation(e);const o=i.path.slice();o.push(0);const r=new Qp(i.root,o);const s=new Nw(n,t.howMany,r,0);return[s]}t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)}const o=t.splitPosition.isEqual(e.targetPosition);if(o&&(n.baRelation=="insertAtSource"||n.abRelation=="splitBefore")){t.howMany+=e.howMany;t.splitPosition=t.splitPosition._getTransformedByDeletion(e.sourcePosition,e.howMany);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);return[t]}if(o&&n.abRelation&&n.abRelation.howMany){const{howMany:e,offset:i}=n.abRelation;t.howMany+=e;t.splitPosition=t.splitPosition.getShiftedBy(i);return[t]}if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.splitPosition)){const n=e.howMany-(t.splitPosition.offset-e.sourcePosition.offset);t.howMany-=n;if(t.splitPosition.hasSameParentAs(e.targetPosition)&&t.splitPosition.offset<e.targetPosition.offset){t.howMany+=e.howMany}t.splitPosition=e.sourcePosition.clone();t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);return[t]}if(!e.sourcePosition.isEqual(e.targetPosition)){if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&t.splitPosition.offset<=e.sourcePosition.offset){t.howMany-=e.howMany}if(t.splitPosition.hasSameParentAs(e.targetPosition)&&t.splitPosition.offset<e.targetPosition.offset){t.howMany+=e.howMany}}t.splitPosition.stickiness="toNone";t.splitPosition=t.splitPosition._getTransformedByMoveOperation(e);t.splitPosition.stickiness="toNext";if(t.graveyardPosition){t.insertionPosition=t.insertionPosition._getTransformedByMoveOperation(e)}else{t.insertionPosition=Ww.getInsertionPosition(t.splitPosition)}return[t]}));Kw(Ww,Ww,((t,e,n)=>{if(t.splitPosition.isEqual(e.splitPosition)){if(!t.graveyardPosition&&!e.graveyardPosition){return[new Fw(0)]}if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition)){return[new Fw(0)]}if(n.abRelation=="splitBefore"){t.howMany=0;t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e);return[t]}}if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition)){const i=t.splitPosition.root.rootName=="$graveyard";const o=e.splitPosition.root.rootName=="$graveyard";const r=i&&!o;const s=o&&!i;const a=s||!r&&n.aIsStrong;if(a){const n=[];if(e.howMany){n.push(new Nw(e.moveTargetPosition,e.howMany,e.splitPosition,0))}if(t.howMany){n.push(new Nw(t.splitPosition,t.howMany,t.moveTargetPosition,0))}return n}else{return[new Fw(0)]}}if(t.graveyardPosition){t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e)}if(t.splitPosition.isEqual(e.insertionPosition)&&n.abRelation=="splitBefore"){t.howMany++;return[t]}if(e.splitPosition.isEqual(t.insertionPosition)&&n.baRelation=="splitBefore"){const n=e.insertionPosition.path.slice();n.push(0);const i=new Qp(e.insertionPosition.root,n);const o=new Nw(t.insertionPosition,1,i,0);return[t,o]}if(t.splitPosition.hasSameParentAs(e.splitPosition)&&t.splitPosition.offset<e.splitPosition.offset){t.howMany-=e.howMany}t.splitPosition=t.splitPosition._getTransformedBySplitOperation(e);t.insertionPosition=Ww.getInsertionPosition(t.splitPosition);return[t]}));function oA(t,e){return t.targetPosition._getTransformedByDeletion(e.sourcePosition,e.howMany)===null}function rA(t,e){const n=[];for(let i=0;i<t.length;i++){const o=t[i];const r=new Nw(o.start,o.end.offset-o.start.offset,e,0);n.push(r);for(let e=i+1;e<t.length;e++){t[e]=t[e]._getTransformedByMove(r.sourcePosition,r.targetPosition,r.howMany)[0]}e=e._getTransformedByMove(r.sourcePosition,r.targetPosition,r.howMany)}return n}class sA extends(K(Qp)){constructor(t,e,n="toNone"){super(t,e,n);if(!this.root.is("rootElement")){throw new z("model-liveposition-root-not-rootelement",t)}aA.call(this)}detach(){this.stopListening()}toPosition(){return new Qp(this.root,this.path.slice(),this.stickiness)}static fromPosition(t,e){return new this(t.root,t.path.slice(),e?e:t.stickiness)}}sA.prototype.is=function(t){return t==="livePosition"||t==="model:livePosition"||t=="position"||t==="model:position"};function aA(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];if(!n.isDocumentOperation){return}cA.call(this,n)}),{priority:"low"})}function cA(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)}}class lA{constructor(t={}){if(typeof t==="string"){t=t==="transparent"?{isUndoable:false}:{};P("batch-constructor-deprecated-string-type")}const{isUndoable:e=true,isLocal:n=true,isUndo:i=false,isTyping:o=false}=t;this.operations=[];this.isUndoable=e;this.isLocal=n;this.isUndo=i;this.isTyping=o}get type(){P("batch-type-deprecated");return"default"}get baseVersion(){for(const t of this.operations){if(t.baseVersion!==null){return t.baseVersion}}return null}addOperation(t){t.batch=this;this.operations.push(t);return t}}class dA{constructor(t){this._changesInElement=new Map;this._elementSnapshots=new Map;this._changedMarkers=new Map;this._changeCount=0;this._cachedChanges=null;this._cachedChangesWithGraveyard=null;this._refreshedItems=new Set;this._markerCollection=t}get isEmpty(){return this._changesInElement.size==0&&this._changedMarkers.size==0}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:true})){if(this._isInInsertedElement(t.parent)){continue}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);const n=this._isInInsertedElement(e.targetPosition.parent);if(!t){this._markRemove(e.sourcePosition.parent,e.sourcePosition.offset,e.howMany)}if(!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=ob._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;if(!this._isInInsertedElement(t)){this._markRemove(t,e.splitPosition.offset,e.howMany)}if(!this._isInInsertedElement(e.insertionPosition.parent)){this._markInsert(e.insertionPosition.parent,e.insertionPosition.offset,1)}if(e.graveyardPosition){this._markRemove(e.graveyardPosition.parent,e.graveyardPosition.offset,1)}break}case"merge":{const t=e.sourcePosition.parent;if(!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;if(!this._isInInsertedElement(i)){this._markInsert(i,e.targetPosition.offset,t.maxOffset)}break}}this._cachedChanges=null}bufferMarkerChange(t,e,n){const i=this._changedMarkers.get(t);if(!i){this._changedMarkers.set(t,{newMarkerData:n,oldMarkerData:e})}else{i.newMarkerData=n;if(i.oldMarkerData.range==null&&n.range==null){this._changedMarkers.delete(t)}}}getMarkersToRemove(){const t=[];for(const[e,n]of this._changedMarkers){if(n.oldMarkerData.range!=null){t.push({name:e,range:n.oldMarkerData.range})}}return t}getMarkersToAdd(){const t=[];for(const[e,n]of this._changedMarkers){if(n.newMarkerData.range!=null){t.push({name:e,range:n.newMarkerData.range})}}return t}getChangedMarkers(){return Array.from(this._changedMarkers).map((([t,e])=>({name:t,data:{oldRange:e.oldMarkerData.range,newRange:e.newMarkerData.range}})))}hasDataChanges(){if(this._changesInElement.size>0){return true}for(const{newMarkerData:t,oldMarkerData:e}of this._changedMarkers.values()){if(t.affectsData!==e.affectsData){return true}if(t.affectsData){const n=t.range&&!e.range;const i=!t.range&&e.range;const o=t.range&&e.range&&!t.range.isEqual(e.range);if(n||i||o){return true}}}return false}getChanges(t={}){if(this._cachedChanges){if(t.includeChangesInGraveyard){return this._cachedChangesWithGraveyard.slice()}else{return this._cachedChanges.slice()}}let e=[];for(const t of this._changesInElement.keys()){const n=this._changesInElement.get(t).sort(((t,e)=>{if(t.offset===e.offset){if(t.type!=e.type){return t.type=="remove"?-1:1}return 0}return t.offset<e.offset?-1:1}));const i=this._elementSnapshots.get(t);const o=uA(t.getChildren());const r=hA(i.length,n);let s=0;let a=0;for(const n of r){if(n==="i"){e.push(this._getInsertDiff(t,s,o[s]));s++}else if(n==="r"){e.push(this._getRemoveDiff(t,s,i[a]));a++}else if(n==="a"){const n=o[s].attributes;const r=i[a].attributes;let c;if(o[s].name=="$text"){c=new ob(Qp._createAt(t,s),Qp._createAt(t,s+1))}else{const e=t.offsetToIndex(s);c=new ob(Qp._createAt(t,s),Qp._createAt(t.getChild(e),0))}e.push(...this._getAttributesDiff(c,r,n));s++;a++}else{s++;a++}}}e.sort(((t,e)=>{if(t.position.root!=e.position.root){return t.position.root.rootName<e.position.root.rootName?-1:1}if(t.position.isEqual(e.position)){return t.changeCount-e.changeCount}return t.position.isBefore(e.position)?-1:1}));for(let t=1,n=0;t<e.length;t++){const i=e[n];const o=e[t];const r=i.type=="remove"&&o.type=="remove"&&i.name=="$text"&&o.name=="$text"&&i.position.isEqual(o.position);const s=i.type=="insert"&&o.type=="insert"&&i.name=="$text"&&o.name=="$text"&&i.position.parent==o.position.parent&&i.position.offset+i.length==o.position.offset;const a=i.type=="attribute"&&o.type=="attribute"&&i.position.parent==o.position.parent&&i.range.isFlat&&o.range.isFlat&&i.position.offset+i.length==o.position.offset&&i.attributeKey==o.attributeKey&&i.attributeOldValue==o.attributeOldValue&&i.attributeNewValue==o.attributeNewValue;if(r||s||a){i.length++;if(a){i.range.end=i.range.end.getShiftedBy(1)}e[t]=null}else{n=t}}e=e.filter((t=>t));for(const t of e){delete t.changeCount;if(t.type=="attribute"){delete t.position;delete t.length}}this._changeCount=0;this._cachedChangesWithGraveyard=e;this._cachedChanges=e.filter(gA);if(t.includeChangesInGraveyard){return this._cachedChangesWithGraveyard.slice()}else{return this._cachedChanges.slice()}}getRefreshedItems(){return new Set(this._refreshedItems)}reset(){this._changesInElement.clear();this._elementSnapshots.clear();this._changedMarkers.clear();this._refreshedItems=new Set;this._cachedChanges=null}_refreshItem(t){if(this._isInInsertedElement(t.parent)){return}this._markRemove(t.parent,t.startOffset,t.offsetSize);this._markInsert(t.parent,t.startOffset,t.offsetSize);this._refreshedItems.add(t);const e=ob._createOn(t);for(const t of this._markerCollection.getMarkersIntersectingRange(e)){const e=t.getData();this.bufferMarkerChange(t.name,e,e)}this._cachedChanges=null}_markInsert(t,e,n){const i={type:"insert",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i)}_markRemove(t,e,n){const i={type:"remove",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i);this._removeAllNestedChanges(t,e,n)}_markAttribute(t){const e={type:"attribute",offset:t.startOffset,howMany:t.offsetSize,count:this._changeCount++};this._markChange(t.parent,e)}_markChange(t,e){this._makeSnapshot(t);const n=this._getChangesForElement(t);this._handleChange(e,n);n.push(e);for(let t=0;t<n.length;t++){if(n[t].howMany<1){n.splice(t,1);t--}}}_getChangesForElement(t){let e;if(this._changesInElement.has(t)){e=this._changesInElement.get(t)}else{e=[];this._changesInElement.set(t,e)}return e}_makeSnapshot(t){if(!this._elementSnapshots.has(t)){this._elementSnapshots.set(t,uA(t.getChildren()))}}_handleChange(t,e){t.nodesToHandle=t.howMany;for(const n of e){const i=t.offset+t.howMany;const o=n.offset+n.howMany;if(t.type=="insert"){if(n.type=="insert"){if(t.offset<=n.offset){n.offset+=t.howMany}else if(t.offset<o){n.howMany+=t.nodesToHandle;t.nodesToHandle=0}}if(n.type=="remove"){if(t.offset<n.offset){n.offset+=t.howMany}}if(n.type=="attribute"){if(t.offset<=n.offset){n.offset+=t.howMany}else if(t.offset<o){const o=n.howMany;n.howMany=t.offset-n.offset;e.unshift({type:"attribute",offset:i,howMany:o-n.howMany,count:this._changeCount++})}}}if(t.type=="remove"){if(n.type=="insert"){if(i<=n.offset){n.offset-=t.howMany}else if(i<=o){if(t.offset<n.offset){const e=i-n.offset;n.offset=t.offset;n.howMany-=e;t.nodesToHandle-=e}else{n.howMany-=t.nodesToHandle;t.nodesToHandle=0}}else{if(t.offset<=n.offset){t.nodesToHandle-=n.howMany;n.howMany=0}else if(t.offset<o){const e=o-t.offset;n.howMany-=e;t.nodesToHandle-=e}}}if(n.type=="remove"){if(i<=n.offset){n.offset-=t.howMany}else if(t.offset<n.offset){t.nodesToHandle+=n.howMany;n.howMany=0}}if(n.type=="attribute"){if(i<=n.offset){n.offset-=t.howMany}else if(t.offset<n.offset){const e=i-n.offset;n.offset=t.offset;n.howMany-=e}else if(t.offset<o){if(i<=o){const i=n.howMany;n.howMany=t.offset-n.offset;const o=i-n.howMany-t.nodesToHandle;e.unshift({type:"attribute",offset:t.offset,howMany:o,count:this._changeCount++})}else{n.howMany-=o-t.offset}}}}if(t.type=="attribute"){if(n.type=="insert"){if(t.offset<n.offset&&i>n.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 if(t.offset>=n.offset&&t.offset<o){if(i>o){t.nodesToHandle=i-o;t.offset=o}else{t.nodesToHandle=0}}}if(n.type=="remove"){if(t.offset<n.offset&&i>n.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}}if(n.type=="attribute"){if(t.offset>=n.offset&&i<=o){t.nodesToHandle=0;t.howMany=0;t.offset=0}else if(t.offset<=n.offset&&i>=o){n.howMany=0}}}}t.howMany=t.nodesToHandle;delete t.nodesToHandle}_getInsertDiff(t,e,n){return{type:"insert",position:Qp._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++}}_getRemoveDiff(t,e,n){return{type:"remove",position:Qp._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++}}_getAttributesDiff(t,e,n){const i=[];n=new Map(n);for(const[o,r]of e){const e=n.has(o)?n.get(o):null;if(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 false}const n=this._changesInElement.get(e);const i=t.startOffset;if(n){for(const t of n){if(t.type=="insert"&&i>=t.offset&&i<t.offset+t.howMany){return true}}}return this._isInInsertedElement(e)}_removeAllNestedChanges(t,e,n){const i=new ob(Qp._createAt(t,e),Qp._createAt(t,e+n));for(const t of i.getItems({shallow:true})){if(t.is("element")){this._elementSnapshots.delete(t);this._changesInElement.delete(t);this._removeAllNestedChanges(t,0,t.maxOffset)}}}}function uA(t){const e=[];for(const n of t){if(n.is("$text")){for(let t=0;t<n.data.length;t++){e.push({name:"$text",attributes:new Map(n.getAttributes())})}}else{e.push({name:n.name,attributes:new Map(n.getAttributes())})}}return e}function hA(t,e){const n=[];let i=0;let o=0;for(const t of e){if(t.offset>i){for(let e=0;e<t.offset-i;e++){n.push("e")}o+=t.offset-i}if(t.type=="insert"){for(let e=0;e<t.howMany;e++){n.push("i")}i=t.offset+t.howMany}else if(t.type=="remove"){for(let e=0;e<t.howMany;e++){n.push("r")}i=t.offset;o+=t.howMany}else{n.push(..."a".repeat(t.howMany).split(""));i=t.offset+t.howMany;o+=t.howMany}}if(o<t){for(let e=0;e<t-o-i;e++){n.push("e")}}return n}function gA(t){const e="position"in t&&t.position.root.rootName=="$graveyard";const n="range"in t&&t.range.root.rootName=="$graveyard";return!e&&!n}class mA{constructor(){this._operations=[];this._undoPairs=new Map;this._undoneOperations=new Set;this._baseVersionToOperationIndex=new Map;this._version=0;this._gaps=new Map}get version(){return this._version}set version(t){if(this._operations.length&&t>this._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 z("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];if(t===undefined){t=n.baseVersion}let i=e-1;for(const[e,n]of this._gaps){if(t>e&&t<n){t=n}if(i>e&&i<n){i=e-1}}if(i<n.baseVersion||t>this.lastOperation.baseVersion){return[]}let o=this._baseVersionToOperationIndex.get(t);if(o===undefined){o=0}let r=this._baseVersionToOperationIndex.get(i);if(r===undefined){r=this._operations.length-1}return this._operations.slice(o,r+1)}getOperation(t){const e=this._baseVersionToOperationIndex.get(t);if(e===undefined){return}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 fA extends Gp{constructor(t,e,n="main"){super(e);this._document=t;this.rootName=n}get document(){return this._document}toJSON(){return this.rootName}}fA.prototype.is=function(t,e){if(!e){return t==="rootElement"||t==="model:rootElement"||t==="element"||t==="model:element"||t==="node"||t==="model:node"}return e===this.name&&(t==="rootElement"||t==="model:rootElement"||t==="element"||t==="model:element")};const pA="$graveyard";class bA extends(K()){constructor(t){super();this.model=t;this.history=new mA;this.selection=new vb(this);this.roots=new ll({idProperty:"rootName"});this.differ=new dA(t.markers);this._postFixers=new Set;this._hasSelectionChangedFromTheLastChangeBlock=false;this.createRoot("$root",pA);this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];if(n.isDocumentOperation){this.differ.bufferOperation(n)}}),{priority:"high"});this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];if(n.isDocumentOperation){this.history.addOperation(n)}}),{priority:"low"});this.listenTo(this.selection,"change",(()=>{this._hasSelectionChangedFromTheLastChangeBlock=true}));this.listenTo(t.markers,"update",((t,e,n,i,o)=>{const r={...e.getData(),range:i};this.differ.bufferMarkerChange(e.name,o,r);if(n===null){e.on("change",((t,n)=>{const i=e.getData();this.differ.bufferMarkerChange(e.name,{...i,range:n},i)}))}}))}get version(){return this.history.version}set version(t){this.history.version=t}get graveyard(){return this.getRoot(pA)}createRoot(t="$root",e="main"){if(this.roots.get(e)){throw new z("model-document-createroot-name-exists",this,{name:e})}const n=new fA(this,t,e);this.roots.add(n);return n}destroy(){this.selection.destroy();this.stopListening()}getRoot(t="main"){return this.roots.get(t)}getRootNames(){return Array.from(this.roots,(t=>t.rootName)).filter((t=>t!=pA))}registerPostFixer(t){this._postFixers.add(t)}toJSON(){const t=xu(this);t.selection="[engine.model.DocumentSelection]";t.model="[engine.model.Model]";return t}_handleChangeBlock(t){if(this._hasDocumentChangedFromTheLastChangeBlock()){this._callPostFixers(t);this.selection.refresh();if(this.differ.hasDataChanges()){this.fire("change:data",t.batch)}else{this.fire("change",t.batch)}this.selection.refresh();this.differ.reset()}this._hasSelectionChangedFromTheLastChangeBlock=false}_hasDocumentChangedFromTheLastChangeBlock(){return!this.differ.isEmpty||this._hasSelectionChangedFromTheLastChangeBlock}_getDefaultRoot(){for(const t of this.roots){if(t!==this.graveyard){return t}}return this.graveyard}_getDefaultRange(){const t=this._getDefaultRoot();const e=this.model;const n=e.schema;const i=e.createPositionFromPath(t,[0]);const o=n.getNearestSelectionRange(i);return o||e.createRange(i)}_validateSelectionRange(t){return kA(t.start)&&kA(t.end)}_callPostFixers(t){let e=false;do{for(const n of this._postFixers){this.selection.refresh();e=n(t);if(e){break}}}while(e)}}function kA(t){const e=t.textNode;if(e){const n=e.data;const i=t.offset-e.startOffset;return!Al(n,i)&&!Cl(n,i)}return true}class wA extends(K()){constructor(){super(...arguments);this._markers=new Map}[Symbol.iterator](){return this._markers.values()}has(t){const e=t instanceof AA?t.name:t;return this._markers.has(e)}get(t){return this._markers.get(t)||null}_set(t,e,n=false,i=false){const o=t instanceof AA?t.name:t;if(o.includes(",")){throw new z("markercollection-incorrect-marker-name",this)}const r=this._markers.get(o);if(r){const t=r.getData();const s=r.getRange();let a=false;if(!s.isEqual(e)){r._attachLiveRange(kb.fromRange(e));a=true}if(n!=r.managedUsingOperations){r._managedUsingOperations=n;a=true}if(typeof i==="boolean"&&i!=r.affectsData){r._affectsData=i;a=true}if(a){this.fire(`update:${o}`,r,s,e,t)}return r}const s=kb.fromRange(e);const a=new AA(o,s,n,i);this._markers.set(o,a);this.fire(`update:${o}`,a,null,e,{...a.getData(),range:null});return a}_remove(t){const e=t instanceof AA?t.name:t;const n=this._markers.get(e);if(n){this._markers.delete(e);this.fire(`update:${e}`,n,n.getRange(),null,n.getData());this._destroyMarker(n);return true}return false}_refresh(t){const e=t instanceof AA?t.name:t;const n=this._markers.get(e);if(!n){throw new z("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){if(e.getRange().containsPosition(t)){yield e}}}*getMarkersIntersectingRange(t){for(const e of this){if(e.getRange().getIntersection(t)!==null){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()){if(e.name.startsWith(t+":")){yield e}}}_destroyMarker(t){t.stopListening();t._detachLiveRange()}}class AA extends(K(Hp)){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 z("marker-destroyed",this)}return this._managedUsingOperations}get affectsData(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._affectsData}getData(){return{range:this.getRange(),affectsData:this.affectsData,managedUsingOperations:this.managedUsingOperations}}getStart(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._liveRange.start.clone()}getEnd(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._liveRange.end.clone()}getRange(){if(!this._liveRange){throw new z("marker-destroyed",this)}return this._liveRange.toRange()}_attachLiveRange(t){if(this._liveRange){this._detachLiveRange()}t.delegate("change:range").to(this);t.delegate("change:content").to(this);this._liveRange=t;return t}_detachLiveRange(){this._liveRange.stopDelegating("change:range",this);this._liveRange.stopDelegating("change:content",this);this._liveRange.detach();this._liveRange=null}}AA.prototype.is=function(t){return t==="marker"||t==="model:marker"};class CA extends xw{constructor(t,e){super(null);this.sourcePosition=t.clone();this.howMany=e}get type(){return"detach"}toJSON(){const t=super.toJSON();t.sourcePosition=this.sourcePosition.toJSON();return t}_validate(){if(this.sourcePosition.root.document){throw new z("detach-operation-on-document-node",this)}}_execute(){Dw(ob._createFromPositionAndShift(this.sourcePosition,this.howMany))}static get className(){return"DetachOperation"}}class _A extends Hp{constructor(t){super();this.markers=new Map;this._children=new Wp;if(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 this.childCount===0}get nextSibling(){return null}get previousSibling(){return null}get root(){return this}get parent(){return null}get document(){return null}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){if(n.name){e.push(Gp.fromJSON(n))}else{e.push(qp.fromJSON(n))}}return new _A(e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=vA(e);for(const t of n){if(t.parent!==null){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}}_A.prototype.is=function(t){return t==="documentFragment"||t==="model:documentFragment"};function vA(t){if(typeof t=="string"){return[new qp(t)]}if(!Tt(t)){t=[t]}return Array.from(t).map((t=>{if(typeof t=="string"){return new qp(t)}if(t instanceof $p){return new qp(t.data,t.getAttributes())}return t}))}class yA{constructor(t,e){this.model=t;this.batch=e}createText(t,e){return new qp(t,e)}createElement(t,e){return new Gp(t,e)}createDocumentFragment(){return new _A}cloneElement(t,e=true){return t._clone(e)}insert(t,e,n=0){this._assertWriterUsedCorrectly();if(t instanceof qp&&t.data==""){return}const i=Qp._createAt(e,n);if(t.parent){if(SA(t.root,i.root)){this.move(ob._createOn(t),i);return}else{if(t.root.document){throw new z("model-writer-insert-forbidden-move",this)}else{this.remove(t)}}}const o=i.root.document?i.root.document.version:null;const r=new zw(i,t,o);if(t instanceof qp){r.shouldReceiveAttributes=true}this.batch.addOperation(r);this.model.applyOperation(r);if(t instanceof _A){for(const[e,n]of t.markers){const t=Qp._createAt(n.root,0);const o=new ob(n.start._getCombined(t,i),n.end._getCombined(t,i));const r={range:o,usingOperation:true,affectsData:true};if(this.model.markers.has(e)){this.updateMarker(e,r)}else{this.addMarker(e,r)}}}}insertText(t,e,n,i){if(e instanceof _A||e instanceof Gp||e instanceof Qp){this.insert(this.createText(t),e,n)}else{this.insert(this.createText(t,e),n,i)}}insertElement(t,e,n,i){if(e instanceof _A||e instanceof Gp||e instanceof Qp){this.insert(this.createElement(t),e,n)}else{this.insert(this.createElement(t,e),n,i)}}append(t,e){this.insert(t,e,"end")}appendText(t,e,n){if(e instanceof _A||e instanceof Gp){this.insert(this.createText(t),e,"end")}else{this.insert(this.createText(t,e),n,"end")}}appendElement(t,e,n){if(e instanceof _A||e instanceof Gp){this.insert(this.createElement(t),e,"end")}else{this.insert(this.createElement(t,e),n,"end")}}setAttribute(t,e,n){this._assertWriterUsedCorrectly();if(n instanceof ob){const i=n.getMinimalFlatRanges();for(const n of i){xA(this,t,e,n)}}else{EA(this,t,e,n)}}setAttributes(t,e){for(const[n,i]of ml(t)){this.setAttribute(n,i,e)}}removeAttribute(t,e){this._assertWriterUsedCorrectly();if(e instanceof ob){const n=e.getMinimalFlatRanges();for(const e of n){xA(this,t,null,e)}}else{EA(this,t,null,e)}}clearAttributes(t){this._assertWriterUsedCorrectly();const e=t=>{for(const e of t.getAttributeKeys()){this.removeAttribute(e,t)}};if(!(t instanceof ob)){e(t)}else{for(const n of t.getItems()){e(n)}}}move(t,e,n){this._assertWriterUsedCorrectly();if(!(t instanceof ob)){throw new z("writer-move-invalid-range",this)}if(!t.isFlat){throw new z("writer-move-range-not-flat",this)}const i=Qp._createAt(e,n);if(i.isEqual(t.start)){return}this._addOperationForAffectedMarkers("move",t);if(!SA(t.root,i.root)){throw new z("writer-move-different-document",this)}const o=t.root.document?t.root.document.version:null;const r=new Nw(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 ob?t:ob._createOn(t);const n=e.getMinimalFlatRanges().reverse();for(const t of n){this._addOperationForAffectedMarkers("move",t);TA(t.start,t.end.offset-t.start.offset,this.batch,this.model)}}merge(t){this._assertWriterUsedCorrectly();const e=t.nodeBefore;const n=t.nodeAfter;this._addOperationForAffectedMarkers("merge",t);if(!(e instanceof Gp)){throw new z("writer-merge-no-element-before",this)}if(!(n instanceof Gp)){throw new z("writer-merge-no-element-after",this)}if(!t.root.document){this._mergeDetached(t)}else{this._merge(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;const n=t.nodeAfter;this.move(ob._createIn(n),Qp._createAt(e,"end"));this.remove(n)}_merge(t){const e=Qp._createAt(t.nodeBefore,"end");const n=Qp._createAt(t.nodeAfter,0);const i=t.root.document.graveyard;const o=new Qp(i,[0]);const r=t.root.document.version;const s=new Uw(n,t.nodeAfter.maxOffset,e,o,r);this.batch.addOperation(s);this.model.applyOperation(s)}rename(t,e){this._assertWriterUsedCorrectly();if(!(t instanceof Gp)){throw new z("writer-rename-not-element-instance",this)}const n=t.root.document?t.root.document.version:null;const i=new jw(Qp._createBefore(t),t.name,e,n);this.batch.addOperation(i);this.model.applyOperation(i)}split(t,e){this._assertWriterUsedCorrectly();let n=t.parent;if(!n.parent){throw new z("writer-split-element-no-parent",this)}if(!e){e=n.parent}if(!t.parent.getAncestors({includeSelf:true}).includes(e)){throw new z("writer-split-invalid-limit-element",this)}let i;let o;do{const e=n.root.document?n.root.document.version:null;const r=n.maxOffset-t.offset;const s=Ww.getInsertionPosition(t);const a=new Ww(t,r,s,null,e);this.batch.addOperation(a);this.model.applyOperation(a);if(!i&&!o){i=n;o=t.parent.nextSibling}t=this.createPositionAfter(t.parent);n=t.parent}while(n!==e);return{position:t,range:new ob(Qp._createAt(i,"end"),Qp._createAt(o,0))}}wrap(t,e){this._assertWriterUsedCorrectly();if(!t.isFlat){throw new z("writer-wrap-range-not-flat",this)}const n=e instanceof Gp?e:new Gp(e);if(n.childCount>0){throw new z("writer-wrap-element-not-empty",this)}if(n.parent!==null){throw new z("writer-wrap-element-attached",this)}this.insert(n,t.start);const i=new ob(t.start.getShiftedBy(1),t.end.getShiftedBy(1));this.move(i,Qp._createAt(n,0))}unwrap(t){this._assertWriterUsedCorrectly();if(t.parent===null){throw new z("writer-unwrap-element-no-parent",this)}this.move(ob._createIn(t),this.createPositionAfter(t));this.remove(t)}addMarker(t,e){this._assertWriterUsedCorrectly();if(!e||typeof e.usingOperation!="boolean"){throw new z("writer-addmarker-no-usingoperation",this)}const n=e.usingOperation;const i=e.range;const o=e.affectsData===undefined?false:e.affectsData;if(this.model.markers.has(t)){throw new z("writer-addmarker-marker-exists",this)}if(!i){throw new z("writer-addmarker-no-range",this)}if(!n){return this.model.markers._set(t,i,n,o)}DA(this,t,null,i,o);return this.model.markers.get(t)}updateMarker(t,e){this._assertWriterUsedCorrectly();const n=typeof t=="string"?t:t.name;const i=this.model.markers.get(n);if(!i){throw new z("writer-updatemarker-marker-not-exists",this)}if(!e){P("writer-updatemarker-reconvert-using-editingcontroller",{markerName:n});this.model.markers._refresh(i);return}const o=typeof e.usingOperation=="boolean";const r=typeof e.affectsData=="boolean";const s=r?e.affectsData:i.affectsData;if(!o&&!e.range&&!r){throw new z("writer-updatemarker-wrong-options",this)}const a=i.getRange();const c=e.range?e.range:a;if(o&&e.usingOperation!==i.managedUsingOperations){if(e.usingOperation){DA(this,n,null,c,s)}else{DA(this,n,a,null,s);this.model.markers._set(n,c,undefined,s)}return}if(i.managedUsingOperations){DA(this,n,a,c,s)}else{this.model.markers._set(n,c,undefined,s)}}removeMarker(t){this._assertWriterUsedCorrectly();const e=typeof t=="string"?t:t.name;if(!this.model.markers.has(e)){throw new z("writer-removemarker-no-marker",this)}const n=this.model.markers.get(e);if(!n.managedUsingOperations){this.model.markers._remove(e);return}const i=n.getRange();DA(this,e,i,null,n.affectsData)}setSelection(...t){this._assertWriterUsedCorrectly();this.model.document.selection._setTo(...t)}setSelectionFocus(t,e){this._assertWriterUsedCorrectly();this.model.document.selection._setFocus(t,e)}setSelectionAttribute(t,e){this._assertWriterUsedCorrectly();if(typeof t==="string"){this._setSelectionAttribute(t,e)}else{for(const[e,n]of ml(t)){this._setSelectionAttribute(e,n)}}}removeSelectionAttribute(t){this._assertWriterUsedCorrectly();if(typeof t==="string"){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=vb._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=vb._getStoreAttributeKey(t);this.removeAttribute(n,e.anchor.parent)}e._removeAttribute(t)}_assertWriterUsedCorrectly(){if(this.model._currentWriter!==this){throw new z("writer-incorrect-use",this)}}_addOperationForAffectedMarkers(t,e){for(const n of this.model.markers){if(!n.managedUsingOperations){continue}const i=n.getRange();let o=false;if(t==="move"){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;const n=t.nodeBefore;const r=t.nodeAfter;const s=i.start.parent==n&&i.start.isAtEnd;const a=i.end.parent==r&&i.end.offset==0;const c=i.end.nodeAfter==r;const l=i.start.nodeAfter==r;o=s||a||c||l}if(o){this.updateMarker(n.name,{range:i})}}}}function xA(t,e,n,i){const o=t.model;const r=o.document;let s=i.start;let a;let c;let l;for(const t of i.getWalker({shallow:true})){l=t.item.getAttribute(e);if(a&&c!=l){if(c!=n){d()}s=a}a=t.nextPosition;c=l}if(a instanceof Qp&&a!=s&&c!=n){d()}function d(){const i=new ob(s,a);const l=i.root.document?r.version:null;const d=new Vw(i,e,c,n,l);t.batch.addOperation(d);o.applyOperation(d)}}function EA(t,e,n,i){const o=t.model;const r=o.document;const s=i.getAttribute(e);let a,c;if(s!=n){const l=i.root===i;if(l){const t=i.document?r.version:null;c=new Hw(i,e,s,n,t)}else{a=new ob(Qp._createBefore(i),t.createPositionAfter(i));const o=a.root.document?r.version:null;c=new Vw(a,e,s,n,o)}t.batch.addOperation(c);o.applyOperation(c)}}function DA(t,e,n,i,o){const r=t.model;const s=r.document;const a=new Pw(e,n,i,r.markers,!!o,s.version);t.batch.addOperation(a);r.applyOperation(a)}function TA(t,e,n,i){let o;if(t.root.document){const n=i.document;const r=new Qp(n.graveyard,[0]);o=new Nw(t,e,r,n.version)}else{o=new CA(t,e)}n.addOperation(o);i.applyOperation(o)}function SA(t,e){if(t===e){return true}if(t instanceof fA&&e instanceof fA){return true}return false}function IA(t){t.document.registerPostFixer((e=>BA(e,t)))}function BA(t,e){const n=e.document.selection;const i=e.schema;const o=[];let r=false;for(const t of n.getRanges()){const e=MA(t,i);if(e&&!e.isEqual(t)){o.push(e);r=true}else{o.push(t)}}if(r){t.setSelection(RA(o),{backward:n.isBackward})}return false}function MA(t,e){if(t.isCollapsed){return LA(t,e)}return NA(t,e)}function LA(t,e){const n=t.start;const i=e.getNearestSelectionRange(n);if(!i){const t=n.getAncestors().reverse().find((t=>e.isObject(t)));if(t){return ob._createOn(t)}return null}if(!i.isCollapsed){return i}const o=i.start;if(n.isEqual(o)){return null}return new ob(o)}function NA(t,e){const{start:n,end:i}=t;const o=e.checkChild(n,"$text");const r=e.checkChild(i,"$text");const s=e.getLimitElement(n);const a=e.getLimitElement(i);if(s===a){if(o&&r){return null}if(PA(n,i,e)){const t=n.nodeAfter&&e.isSelectable(n.nodeAfter);const o=t?null:e.getNearestSelectionRange(n,"forward");const r=i.nodeBefore&&e.isSelectable(i.nodeBefore);const s=r?null:e.getNearestSelectionRange(i,"backward");const a=o?o.start:n;const c=s?s.end:i;return new ob(a,c)}}const c=s&&!s.is("rootElement");const l=a&&!a.is("rootElement");if(c||l){const t=n.nodeAfter&&i.nodeBefore&&n.nodeAfter.parent===i.nodeBefore.parent;const o=c&&(!t||!OA(n.nodeAfter,e));const r=l&&(!t||!OA(i.nodeBefore,e));let d=n;let u=i;if(o){d=Qp._createBefore(zA(s,e))}if(r){u=Qp._createAfter(zA(a,e))}return new ob(d,u)}return null}function zA(t,e){let n=t;let i=n;while(e.isLimit(i)&&i.parent){n=i;i=i.parent}return n}function PA(t,e,n){const i=t.nodeAfter&&!n.isLimit(t.nodeAfter)||n.checkChild(t,"$text");const o=e.nodeBefore&&!n.isLimit(e.nodeBefore)||n.checkChild(e,"$text");return i||o}function RA(t){const e=[...t];const n=new Set;let i=1;while(i<e.length){const t=e[i];const o=e.slice(0,i);for(const[r,s]of o.entries()){if(n.has(r)){continue}if(t.isEqual(s)){n.add(r)}else if(t.isIntersecting(s)){n.add(r);n.add(i);const o=t.getJoined(s);e.push(o)}}i++}const o=e.filter(((t,e)=>!n.has(e)));return o}function OA(t,e){return t&&e.isSelectable(t)}function VA(t,e,n={}){if(e.isCollapsed){return}const i=e.getFirstRange();if(i.root.rootName=="$graveyard"){return}const o=t.schema;t.change((t=>{if(!n.doNotResetEntireContent&&JA(o,e)){QA(t,e);return}const r={};if(!n.doNotAutoparagraph){const t=e.getSelectedElement();if(t){Object.assign(r,o.getAttributesWithProperty(t,"copyOnReplace",true))}}const[s,a]=FA(i);if(!s.isTouching(a)){t.remove(t.createRange(s,a))}if(!n.leaveUnmerged){HA(t,s,a);o.removeDisallowedAttributes(s.parent.getChildren(),t)}XA(t,e,s);if(!n.doNotAutoparagraph&&KA(o,s)){ZA(t,s,e,r)}s.detach();a.detach()}))}function FA(t){const e=t.root.document.model;const n=t.start;let i=t.end;if(e.hasContent(t,{ignoreMarkers:true})){const n=jA(i);if(n&&i.isTouching(e.createPositionAt(n,0))){const n=e.createSelection(t);e.modifySelection(n,{direction:"backward"});const o=n.getLastPosition();const r=e.createRange(o,i);if(!e.hasContent(r,{ignoreMarkers:true})){i=o}}}return[sA.fromPosition(n,"toPrevious"),sA.fromPosition(i,"toNext")]}function jA(t){const e=t.parent;const n=e.root.document.model.schema;const i=e.getAncestors({parentFirst:true,includeSelf:true});for(const t of i){if(n.isLimit(t)){return null}if(n.isBlock(t)){return t}}}function HA(t,e,n){const i=t.model;if(!$A(t.model.schema,e,n)){return}const[o,r]=GA(e,n);if(!o||!r){return}if(!i.hasContent(o,{ignoreMarkers:true})&&i.hasContent(r,{ignoreMarkers:true})){WA(t,e,n,o.parent)}else{UA(t,e,n,o.parent)}}function UA(t,e,n,i){const o=e.parent;const r=n.parent;if(o==i||r==i){return}e=t.createPositionAfter(o);n=t.createPositionBefore(r);if(!n.isEqual(e)){t.insert(r,e)}t.merge(e);while(n.parent.isEmpty){const e=n.parent;n=t.createPositionBefore(e);t.remove(e)}if(!$A(t.model.schema,e,n)){return}UA(t,e,n,i)}function WA(t,e,n,i){const o=e.parent;const r=n.parent;if(o==i||r==i){return}e=t.createPositionAfter(o);n=t.createPositionBefore(r);if(!n.isEqual(e)){t.insert(o,n)}while(e.parent.isEmpty){const n=e.parent;e=t.createPositionBefore(n);t.remove(n)}n=t.createPositionBefore(r);qA(t,n);if(!$A(t.model.schema,e,n)){return}WA(t,e,n,i)}function qA(t,e){const n=e.nodeBefore;const i=e.nodeAfter;if(n.name!=i.name){t.rename(n,i.name)}t.clearAttributes(n);t.setAttributes(Object.fromEntries(i.getAttributes()),n);t.merge(e)}function $A(t,e,n){const i=e.parent;const o=n.parent;if(i==o){return false}if(t.isLimit(i)||t.isLimit(o)){return false}return YA(e,n,t)}function GA(t,e){const n=t.getAncestors();const i=e.getAncestors();let o=0;while(n[o]&&n[o]==i[o]){o++}return[n[o],i[o]]}function KA(t,e){const n=t.checkChild(e,"$text");const i=t.checkChild(e,"paragraph");return!n&&i}function YA(t,e,n){const i=new ob(t,e);for(const t of i.getWalker()){if(n.isLimit(t.item)){return false}}return true}function ZA(t,e,n,i={}){const o=t.createElement("paragraph");t.model.schema.setAllowedAttributes(o,i,t);t.insert(o,e);XA(t,n,t.createPositionAt(o,0))}function QA(t,e){const n=t.model.schema.getLimitElement(e);t.remove(t.createRangeIn(n));ZA(t,t.createPositionAt(n,0),e)}function JA(t,e){const n=t.getLimitElement(e);if(!e.containsEntireContent(n)){return false}const i=e.getFirstRange();if(i.start.parent==i.end.parent){return false}return t.checkChild(n,"paragraph")}function XA(t,e,n){if(e instanceof vb){t.setSelection(n)}else{e.setTo(n)}}function tC(t,e){return t.change((t=>{const n=t.createDocumentFragment();const i=e.getFirstRange();if(!i||i.isCollapsed){return n}const o=i.start.root;const r=i.start.getCommonPath(i.end);const s=o.getNodeByPath(r);let a;if(i.start.parent==i.end.parent){a=i}else{a=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:true})){if(e.is("$textProxy")){t.appendText(e.data,e.getAttributes(),n)}else{t.append(t.cloneElement(e,true),n)}}if(a!=i){const e=i._getTransformedByMove(a.start,t.createPositionAt(n,0),c)[0];const o=t.createRange(t.createPositionAt(n,0),e.start);const r=t.createRange(e.end,t.createPositionAt(n,"end"));eC(r,t);eC(o,t)}return n}))}function eC(t,e){const n=[];Array.from(t.getItems({direction:"backward"})).map((t=>e.createRangeOn(t))).filter((e=>{const n=(e.start.isAfter(t.start)||e.start.isEqual(t.start))&&(e.end.isBefore(t.end)||e.end.isEqual(t.end));return n})).forEach((t=>{n.push(t.start.parent);e.remove(t)}));n.forEach((t=>{let n=t;while(n.parent&&n.isEmpty){const t=e.createRangeOn(n);n=n.parent;e.remove(t)}}))}function nC(t,e,n,i){return t.change((o=>{let r;if(!n){r=t.document.selection}else if(n instanceof hb||n instanceof vb){r=n}else{r=o.createSelection(n,i)}if(!r.isCollapsed){t.deleteContent(r,{doNotAutoparagraph:true})}const s=new iC(t,o,r.anchor);const a=[];let c;if(e.is("documentFragment")){if(e.markers.size){const t=[];for(const[n,i]of e.markers){const{start:e,end:o}=i;const r=e.isEqual(o);t.push({position:e,name:n,isCollapsed:r},{position:o,name:n,isCollapsed:r})}t.sort((({position:t},{position:e})=>t.isBefore(e)?1:-1));for(const{position:n,name:i,isCollapsed:r}of t){let t=null;let s=null;const c=n.parent===e&&n.isAtStart;const l=n.parent===e&&n.isAtEnd;if(!c&&!l){t=o.createElement("$marker");o.insert(t,n)}else if(r){s=c?"start":"end"}a.push({name:i,element:t,collapsed:s})}}c=e.getChildren()}else{c=[e]}s.handleNodes(c);let l=s.getSelectionRange();if(e.is("documentFragment")&&a.length){const t=l?kb.fromRange(l):null;const e={};for(let t=a.length-1;t>=0;t--){const{name:n,element:i,collapsed:r}=a[t];const c=!e[n];if(c){e[n]=[]}if(i){const t=o.createPositionAt(i,"before");e[n].push(t);o.remove(i)}else{const t=s.getAffectedRange();if(!t){if(r){e[n].push(s.position)}continue}if(r){e[n].push(t[r])}else{e[n].push(c?t.start:t.end)}}}for(const[t,[n,i]]of Object.entries(e)){if(n&&i&&n.root===i.root){o.addMarker(t,{usingOperation:true,affectsData:true,range:new ob(n,i)})}}if(t){l=t.toRange();t.detach()}}if(l){if(r instanceof vb){o.setSelection(l)}else{r.setTo(l)}}else{}const d=s.getAffectedRange()||t.createRange(r.anchor);s.destroy();return d}))}class iC{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();if(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);const n=this.writer.createPositionAfter(t);if(n.isAfter(e)){this._lastNode=t;if(this.position.parent!=t||!this.position.isAtEnd){throw new z("insertcontent-invalid-insertion-position",this)}this.position=n;this._setAffectedBoundaries(this.position)}}getSelectionRange(){if(this._nodeToSelect){return ob._createOn(this._nodeToSelect)}return this.model.schema.getNearestSelectionRange(this.position)}getAffectedRange(){if(!this._affectedStart){return null}return new ob(this._affectedStart,this._affectedEnd)}destroy(){if(this._affectedStart){this._affectedStart.detach()}if(this._affectedEnd){this._affectedEnd.detach()}}_handleNode(t){if(this.schema.isObject(t)){this._handleObject(t);return}let e=this._checkAndAutoParagraphToAllowedPosition(t);if(!e){e=this._checkAndSplitToAllowedPosition(t);if(!e){this._handleDisallowedNode(t);return}}this._appendToFragment(t);if(!this._firstNode){this._firstNode=t}this._lastNode=t}_insertPartialFragment(){if(this._documentFragment.isEmpty){return}const t=sA.fromPosition(this.position,"toNext");this._setAffectedBoundaries(this.position);if(this._documentFragment.getChild(0)==this._firstNode){this.writer.insert(this._firstNode,this.position);this._mergeOnLeft();this.position=t.toPosition()}if(!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){if(this._checkAndSplitToAllowedPosition(t)){this._appendToFragment(t)}else{this._tryAutoparagraphing(t)}}_handleDisallowedNode(t){if(t.is("element")){this.handleNodes(t.getChildren())}else{this._tryAutoparagraphing(t)}}_appendToFragment(t){if(!this.schema.checkChild(this.position,t)){throw new z("insertcontent-wrong-position",this,{node:t,position:this.position})}this.writer.insert(t,this._documentFragmentPosition);this._documentFragmentPosition=this._documentFragmentPosition.getShiftedBy(t.offsetSize);if(this.schema.isObject(t)&&!this.schema.checkChild(this.position,"$text")){this._nodeToSelect=t}else{this._nodeToSelect=null}this._filterAttributesOf.push(t)}_setAffectedBoundaries(t){if(!this._affectedStart){this._affectedStart=sA.fromPosition(t,"toPrevious")}if(!this._affectedEnd||this._affectedEnd.isBefore(t)){if(this._affectedEnd){this._affectedEnd.detach()}this._affectedEnd=sA.fromPosition(t,"toNext")}}_mergeOnLeft(){const t=this._firstNode;if(!(t instanceof Gp)){return}if(!this._canMergeLeft(t)){return}const e=sA._createBefore(t);e.stickiness="toNext";const n=sA.fromPosition(this.position,"toNext");if(this._affectedStart.isEqual(e)){this._affectedStart.detach();this._affectedStart=sA._createAt(e.nodeBefore,"end","toPrevious")}if(this._firstNode===this._lastNode){this._firstNode=e.nodeBefore;this._lastNode=e.nodeBefore}this.writer.merge(e);if(e.isEqual(this._affectedEnd)&&this._firstNode===this._lastNode){this._affectedEnd.detach();this._affectedEnd=sA._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 Gp)){return}if(!this._canMergeRight(t)){return}const e=sA._createAfter(t);e.stickiness="toNext";if(!this.position.isEqual(e)){throw new z("insertcontent-invalid-insertion-position",this)}this.position=Qp._createAt(e.nodeBefore,"end");const n=sA.fromPosition(this.position,"toPrevious");if(this._affectedEnd.isEqual(e)){this._affectedEnd.detach();this._affectedEnd=sA._createAt(e.nodeBefore,"end","toNext")}if(this._firstNode===this._lastNode){this._firstNode=e.nodeBefore;this._lastNode=e.nodeBefore}this.writer.merge(e);if(e.getShiftedBy(-1).isEqual(this._affectedStart)&&this._firstNode===this._lastNode){this._affectedStart.detach();this._affectedStart=sA._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 Gp&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(e,t)}_canMergeRight(t){const e=t.nextSibling;return e instanceof Gp&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(t,e)}_tryAutoparagraphing(t){const e=this.writer.createElement("paragraph");if(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 true}if(!this.schema.checkChild(this.position.parent,"paragraph")||!this.schema.checkChild("paragraph",t)){return false}this._insertPartialFragment();const e=this.writer.createElement("paragraph");this.writer.insert(e,this.position);this._setAffectedBoundaries(this.position);this._lastAutoParagraph=e;this.position=this.writer.createPositionAt(e,0);return true}_checkAndSplitToAllowedPosition(t){const e=this._getAllowedIn(this.position.parent,t);if(!e){return false}if(e!=this.position.parent){this._insertPartialFragment()}while(e!=this.position.parent){if(this.position.isAtStart){const t=this.position.parent;this.position=this.writer.createPositionBefore(t);if(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 true}_getAllowedIn(t,e){if(this.schema.checkChild(t,e)){return t}if(this.schema.isLimit(t)){return null}return this._getAllowedIn(t.parent,e)}}function oC(t,e,n="auto"){const i=t.getSelectedElement();if(i&&e.schema.isObject(i)&&!e.schema.isInline(i)){if(n=="before"||n=="after"){return e.createRange(e.createPositionAt(i,n))}return e.createRangeOn(i)}const o=dl(t.getSelectedBlocks());if(!o){return e.createRange(t.focus)}if(o.isEmpty){return e.createRange(e.createPositionAt(o,0))}const r=e.createPositionAfter(o);if(t.focus.isTouching(r)){return e.createRange(r)}return e.createRange(e.createPositionBefore(o))}function rC(t,e,n,i,o={}){if(!t.schema.isObject(e)){throw new z("insertobject-element-not-an-object",t,{object:e})}let r;if(!n){r=t.document.selection}else if(n instanceof hb||n instanceof vb){r=n}else{r=t.createSelection(n,i)}let s=r;if(o.findOptimalPosition&&t.schema.isBlock(e)){s=t.createSelection(oC(r,t,o.findOptimalPosition))}const a=dl(r.getSelectedBlocks());const c={};if(a){Object.assign(c,t.schema.getAttributesWithProperty(a,"copyOnReplace",true))}return t.change((n=>{if(!s.isCollapsed){t.deleteContent(s,{doNotAutoparagraph:true})}let i=e;const r=s.anchor.parent;if(!t.schema.checkChild(r,e)&&t.schema.checkChild(r,"paragraph")&&t.schema.checkChild("paragraph",e)){i=n.createElement("paragraph");n.insert(e,i)}t.schema.setAllowedAttributes(i,c,n);const a=t.insertContent(i,s);if(a.isCollapsed){return a}if(o.setSelection){sC(n,e,o.setSelection,c)}return a}))}function sC(t,e,n,i){const o=t.model;if(n=="on"){t.setSelection(e,"on");return}if(n!="after"){throw new z("insertobject-invalid-place-parameter-value",o)}let r=e.nextSibling;if(o.schema.isInline(e)){t.setSelection(e,"after");return}const s=r&&o.schema.checkChild(r,"$text");if(!s&&o.schema.checkChild(e.parent,"paragraph")){r=t.createElement("paragraph");o.schema.setAllowedAttributes(r,i,t);o.insertContent(r,t.createPositionAfter(e))}if(r){t.setSelection(r,0)}}const aC=' ,.?!:;"-()';function cC(t,e,n={}){const i=t.schema;const o=n.direction!="backward";const r=n.unit?n.unit:"character";const s=!!n.treatEmojiAsSingleUnit;const a=e.focus;const c=new Yp({boundaries:hC(a,o),singleCharacters:true,direction:o?"forward":"backward"});const l={walker:c,schema:i,isForward:o,unit:r,treatEmojiAsSingleUnit:s};let d;while(d=c.next()){if(d.done){return}const n=lC(l,d.value);if(n){if(e instanceof vb){t.change((t=>{t.setSelectionFocus(n)}))}else{e.setFocus(n)}return}}}function lC(t,e){const{isForward:n,walker:i,unit:o,schema:r,treatEmojiAsSingleUnit:s}=t;const{type:a,item:c,nextPosition:l}=e;if(a=="text"){if(t.unit==="word"){return uC(i,n)}return dC(i,o,s)}if(a==(n?"elementStart":"elementEnd")){if(r.isSelectable(c)){return Qp._createAt(c,n?"after":"before")}if(r.checkChild(l,"$text")){return l}}else{if(r.isLimit(c)){i.skip((()=>true));return}if(r.checkChild(l,"$text")){return l}}}function dC(t,e,n){const i=t.position.textNode;if(i){const o=i.data;let r=t.position.offset-i.startOffset;while(Al(o,r)||e=="character"&&Cl(o,r)||n&&vl(o,r)){t.next();r=t.position.offset-i.startOffset}}return t.position}function uC(t,e){let n=t.position.textNode;if(!n){n=e?t.position.nodeAfter:t.position.nodeBefore}while(n&&n.is("$text")){const i=t.position.offset-n.startOffset;if(mC(n,i,e)){n=e?t.position.nodeAfter:t.position.nodeBefore}else if(gC(n.data,i,e)){break}else{t.next()}}return t.position}function hC(t,e){const n=t.root;const i=Qp._createAt(n,e?"end":0);if(e){return new ob(t,i)}else{return new ob(i,t)}}function gC(t,e,n){const i=e+(n?0:-1);return aC.includes(t.charAt(i))}function mC(t,e,n){return e===(n?t.offsetSize:0)}class fC extends(mt()){constructor(){super();this.markers=new wA;this.document=new bA(this);this.schema=new Yk;this._pendingChanges=[];this._currentWriter=null;["insertContent","insertObject","deleteContent","modifySelection","getSelectedContent","applyOperation"].forEach((t=>this.decorate(t)));this.on("applyOperation",((t,e)=>{const n=e[0];n._validate()}),{priority:"highest"});this.schema.register("$root",{isLimit:true});this.schema.register("$container",{allowIn:["$root","$container"]});this.schema.register("$block",{allowIn:["$root","$container"],isBlock:true});this.schema.register("$blockObject",{allowWhere:"$block",isBlock:true,isObject:true});this.schema.register("$inlineObject",{allowWhere:"$text",allowAttributesOf:"$text",isInline:true,isObject:true});this.schema.register("$text",{allowIn:"$block",isInline:true,isContent:true});this.schema.register("$clipboardHolder",{allowContentOf:"$root",allowChildren:"$text",isLimit:true});this.schema.register("$documentFragment",{allowContentOf:"$root",allowChildren:"$text",isLimit:true});this.schema.register("$marker");this.schema.addChildCheck(((t,e)=>{if(e.name==="$marker"){return true}}));IA(this);this.document.registerPostFixer(_k)}change(t){try{if(this._pendingChanges.length===0){this._pendingChanges.push({batch:new lA,callback:t});return this._runPendingChanges()[0]}else{return t(this._currentWriter)}}catch(t){z.rethrowUnexpectedError(t,this)}}enqueueChange(t,e){try{if(!t){t=new lA}else if(typeof t==="function"){e=t;t=new lA}else if(!(t instanceof lA)){t=new lA(t)}this._pendingChanges.push({batch:t,callback:e});if(this._pendingChanges.length==1){this._runPendingChanges()}}catch(t){z.rethrowUnexpectedError(t,this)}}applyOperation(t){t._execute()}insertContent(t,e,n){return nC(this,t,e,n)}insertObject(t,e,n,i){return rC(this,t,e,n,i)}deleteContent(t,e){VA(this,t,e)}modifySelection(t,e){cC(this,t,e)}getSelectedContent(t){return tC(this,t)}hasContent(t,e={}){const n=t instanceof ob?t:ob._createIn(t);if(n.isCollapsed){return false}const{ignoreWhitespaces:i=false,ignoreMarkers:o=false}=e;if(!o){for(const t of this.markers.getMarkersIntersectingRange(n)){if(t.affectsData){return true}}}for(const t of n.getItems()){if(this.schema.isContent(t)){if(t.is("$textProxy")){if(!i){return true}else if(t.data.search(/\S/)!==-1){return true}}else{return true}}}return false}createPositionFromPath(t,e,n){return new Qp(t,e,n)}createPositionAt(t,e){return Qp._createAt(t,e)}createPositionAfter(t){return Qp._createAfter(t)}createPositionBefore(t){return Qp._createBefore(t)}createRange(t,e){return new ob(t,e)}createRangeIn(t){return ob._createIn(t)}createRangeOn(t){return ob._createOn(t)}createSelection(...t){return new hb(...t)}createBatch(t){return new lA(t)}createOperationFromJSON(t){return $w.fromJSON(t,this.document)}destroy(){this.document.destroy();this.stopListening()}_runPendingChanges(){const t=[];this.fire("_beforeChanges");try{while(this._pendingChanges.length){const e=this._pendingChanges[0].batch;this._currentWriter=new yA(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}}class pC extends lf{constructor(t){super(t);this.domEventType="click"}onDomEvent(t){this.fire(t.type,t)}}class bC extends lf{constructor(t){super(t);this.domEventType=["mousedown","mouseup","mouseover","mouseout"]}onDomEvent(t){this.fire(t.type,t)}}class kC{constructor(t){this.document=t}createDocumentFragment(t){return new lm(this.document,t)}createElement(t,e,n){return new Dg(this.document,t,e,n)}createText(t){return new Du(this.document,t)}clone(t,e=false){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;if(e){return this.removeChildren(e.getChildIndex(t),1,e)}return[]}replace(t,e){const n=t.parent;if(n){const i=n.getChildIndex(t);this.removeChildren(i,1,n);this.insertChild(i,e,n);return true}return false}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 Dg(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){if(pe(t)&&n===undefined){e._setStyle(t)}else{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 Rg._createAt(t,e)}createPositionAfter(t){return Rg._createAfter(t)}createPositionBefore(t){return Rg._createBefore(t)}createRange(t,e){return new Og(t,e)}createRangeOn(t){return Og._createOn(t)}createRangeIn(t){return Og._createIn(t)}createSelection(...t){return new Fg(...t)}}const wC=/^#([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;const AC=/^rgb\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}[0-9]{1,3}[ %]?\)$/i;const CC=/^rgba\([ ]?([0-9]{1,3}[ %]?,[ ]?){3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i;const _C=/^hsl\([ ]?([0-9]{1,3}[ %]?[,]?[ ]*){3}(1|[0-9]+%|[0]?\.?[0-9]+)?\)$/i;const vC=/^hsla\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i;const yC=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 xC(t){if(t.startsWith("#")){return wC.test(t)}if(t.startsWith("rgb")){return AC.test(t)||CC.test(t)}if(t.startsWith("hsl")){return _C.test(t)||vC.test(t)}return yC.has(t.toLowerCase())}const EC=["none","hidden","dotted","dashed","solid","double","groove","ridge","inset","outset"];function DC(t){return EC.includes(t)}const TC=/^([+-]?[0-9]*([.][0-9]+)?(px|cm|mm|in|pc|pt|ch|em|ex|rem|vh|vw|vmin|vmax)|0)$/;function SC(t){return TC.test(t)}const IC=/^[+-]?[0-9]*([.][0-9]+)?%$/;function BC(t){return IC.test(t)}const MC=["repeat-x","repeat-y","repeat","space","round","no-repeat"];function LC(t){return MC.includes(t)}const NC=["center","top","bottom","left","right"];function zC(t){return NC.includes(t)}const PC=["fixed","scroll","local"];function RC(t){return PC.includes(t)}const OC=/^url\(/;function VC(t){return OC.test(t)}function FC(t=""){if(t===""){return{top:undefined,right:undefined,bottom:undefined,left:undefined}}const e=WC(t);const n=e[0];const i=e[2]||n;const o=e[1]||n;const r=e[3]||o;return{top:n,bottom:i,right:o,left:r}}function jC(t){return e=>{const{top:n,right:i,bottom:o,left:r}=e;const s=[];if(![n,i,r,o].every((t=>!!t))){if(n){s.push([t+"-top",n])}if(i){s.push([t+"-right",i])}if(o){s.push([t+"-bottom",o])}if(r){s.push([t+"-left",r])}}else{s.push([t,HC(e)])}return s}}function HC({top:t,right:e,bottom:n,left:i}){const o=[];if(i!==e){o.push(t,e,n,i)}else if(n!==t){o.push(t,e,n)}else if(e!==t){o.push(t,e)}else{o.push(t)}return o.join(" ")}function UC(t){return e=>({path:t,value:FC(e)})}function WC(t){return t.replace(/, /g,",").split(" ").map((t=>t.replace(/,/g,", ")))}function qC(t){t.setNormalizer("background",$C());t.setNormalizer("background-color",GC());t.setReducer("background",KC());t.setStyleRelation("background",["background-color"])}function $C(){return t=>{const e={};const n=WC(t);for(const t of n){if(LC(t)){e.repeat=e.repeat||[];e.repeat.push(t)}else if(zC(t)){e.position=e.position||[];e.position.push(t)}else if(RC(t)){e.attachment=t}else if(xC(t)){e.color=t}else if(VC(t)){e.image=t}}return{path:"background",value:e}}}function GC(){return t=>({path:"background.color",value:t})}function KC(){return t=>{const e=[];e.push(["background-color",t.color]);return e}}function YC(t){t.setNormalizer("border",ZC());t.setNormalizer("border-top",QC("top"));t.setNormalizer("border-right",QC("right"));t.setNormalizer("border-bottom",QC("bottom"));t.setNormalizer("border-left",QC("left"));t.setNormalizer("border-color",JC("color"));t.setNormalizer("border-width",JC("width"));t.setNormalizer("border-style",JC("style"));t.setNormalizer("border-top-color",t_("color","top"));t.setNormalizer("border-top-style",t_("style","top"));t.setNormalizer("border-top-width",t_("width","top"));t.setNormalizer("border-right-color",t_("color","right"));t.setNormalizer("border-right-style",t_("style","right"));t.setNormalizer("border-right-width",t_("width","right"));t.setNormalizer("border-bottom-color",t_("color","bottom"));t.setNormalizer("border-bottom-style",t_("style","bottom"));t.setNormalizer("border-bottom-width",t_("width","bottom"));t.setNormalizer("border-left-color",t_("color","left"));t.setNormalizer("border-left-style",t_("style","left"));t.setNormalizer("border-left-width",t_("width","left"));t.setExtractor("border-top",e_("top"));t.setExtractor("border-right",e_("right"));t.setExtractor("border-bottom",e_("bottom"));t.setExtractor("border-left",e_("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",jC("border-color"));t.setReducer("border-style",jC("border-style"));t.setReducer("border-width",jC("border-width"));t.setReducer("border-top",r_("top"));t.setReducer("border-right",r_("right"));t.setReducer("border-bottom",r_("bottom"));t.setReducer("border-left",r_("left"));t.setReducer("border",o_());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 ZC(){return t=>{const{color:e,style:n,width:i}=i_(t);return{path:"border",value:{color:FC(e),style:FC(n),width:FC(i)}}}}function QC(t){return e=>{const{color:n,style:i,width:o}=i_(e);const r={};if(n!==undefined){r.color={[t]:n}}if(i!==undefined){r.style={[t]:i}}if(o!==undefined){r.width={[t]:o}}return{path:"border",value:r}}}function JC(t){return e=>({path:"border",value:XC(e,t)})}function XC(t,e){return{[e]:FC(t)}}function t_(t,e){return n=>({path:"border",value:{[t]:{[e]:n}}})}function e_(t){return(e,n)=>{if(n.border){return n_(n.border,t)}}}function n_(t,e){const n={};if(t.width&&t.width[e]){n.width=t.width[e]}if(t.style&&t.style[e]){n.style=t.style[e]}if(t.color&&t.color[e]){n.color=t.color[e]}return n}function i_(t){const e={};const n=WC(t);for(const t of n){if(SC(t)||/thin|medium|thick/.test(t)){e.width=t}else if(DC(t)){e.style=t}else{e.color=t}}return e}function o_(){return e=>{const n=n_(e,"top");const i=n_(e,"right");const o=n_(e,"bottom");const r=n_(e,"left");const s=[n,i,o,r];const a={width:t(s,"width"),style:t(s,"style"),color:t(s,"color")};const c=s_(a,"all");if(c.length){return c}const l=Object.entries(a).reduce(((t,[e,n])=>{if(n){t.push([`border-${e}`,n]);s.forEach((t=>delete t[e]))}return t}),[]);return[...l,...s_(n,"top"),...s_(i,"right"),...s_(o,"bottom"),...s_(r,"left")]};function t(t,e){return t.map((t=>t[e])).reduce(((t,e)=>t==e?t:null))}}function r_(t){return e=>s_(e,t)}function s_(t,e){const n=[];if(t&&t.width){n.push("width")}if(t&&t.style){n.push("style")}if(t&&t.color){n.push("color")}if(n.length==3){const i=n.map((e=>t[e])).join(" ");return[e=="all"?["border",i]:[`border-${e}`,i]]}if(e=="all"){return[]}return n.map((n=>[`border-${e}-${n}`,t[n]]))}function a_(t){t.setNormalizer("margin",UC("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",jC("margin"));t.setStyleRelation("margin",["margin-top","margin-right","margin-bottom","margin-left"])}function c_(t){t.setNormalizer("padding",UC("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",jC("padding"));t.setStyleRelation("padding",["padding-top","padding-right","padding-bottom","padding-left"])}class l_{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 z("commandcollection-command-not-found",this,{commandName:t})}return n.execute(...e)}*names(){yield*this._commands.keys()}*commands(){yield*this._commands.values()}[Symbol.iterator](){return this._commands[Symbol.iterator]()}destroy(){for(const t of this.commands()){t.destroy()}}}class d_ extends hl{constructor(t){super();this.editor=t}set(t,e,n={}){if(typeof e=="string"){const t=e;e=(e,n)=>{this.editor.execute(t);n()}}super.set(t,e,n)}}class u_ extends(mt()){constructor(t={}){super();const e=this.constructor;const n=t.language||e.defaultConfig&&e.defaultConfig.language;this._context=t.context||new au({language:n});this._context._addEditor(this,!t.context);const i=Array.from(e.builtinPlugins||[]);this.config=new $a(t,e.defaultConfig);this.config.define("plugins",i);this.config.define(this._context._getEditorConfig());this.plugins=new su(this,i,this._context.plugins);this.locale=this._context.locale;this.t=this.locale.t;this._readOnlyLocks=new Set;this.commands=new l_;this.set("state","initializing");this.once("ready",(()=>this.state="ready"),{priority:"high"});this.once("destroy",(()=>this.state="destroyed"),{priority:"high"});this.model=new fC;const o=new vg;this.data=new Aw(this.model,o);this.editing=new qk(this.model,o);this.editing.view.document.bind("isReadOnly").to(this);this.conversion=new _w([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 d_(this);this.keystrokes.listenTo(this.editing.view.document)}get isReadOnly(){return this._readOnlyLocks.size>0}set isReadOnly(t){throw new z("editor-isreadonly-has-no-setter")}enableReadOnlyMode(t){if(typeof t!=="string"&&typeof t!=="symbol"){throw new z("editor-read-only-lock-id-invalid",null,{lockId:t})}if(this._readOnlyLocks.has(t)){return}this._readOnlyLocks.add(t);if(this._readOnlyLocks.size===1){this.fire("change:isReadOnly","isReadOnly",true,false)}}disableReadOnlyMode(t){if(typeof t!=="string"&&typeof t!=="symbol"){throw new z("editor-read-only-lock-id-invalid",null,{lockId:t})}if(!this._readOnlyLocks.has(t)){return}this._readOnlyLocks.delete(t);if(this._readOnlyLocks.size===0){this.fire("change:isReadOnly","isReadOnly",false,true)}}initPlugins(){const t=this.config;const e=t.get("plugins");const n=t.get("removePlugins")||[];const i=t.get("extraPlugins")||[];const o=t.get("substitutePlugins")||[];return this.plugins.init(e.concat(i),n,o)}destroy(){let t=Promise.resolve();if(this.state=="initializing"){t=new Promise((t=>this.once("ready",t)))}return 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){z.rethrowUnexpectedError(t,this)}}focus(){this.editing.view.focus()}}function h_(t){if(!Ke(t.updateSourceElement)){throw new z("attachtoform-missing-elementapi-interface",t)}const e=t.sourceElement;if(g_(e)&&e.form){let n;const i=e.form;const o=()=>t.updateSourceElement();if(Ke(i.submit)){n=i.submit;i.submit=()=>{o();n.apply(i)}}i.addEventListener("submit",o);t.on("destroy",(()=>{i.removeEventListener("submit",o);if(n){i.submit=n}}))}}function g_(t){return!!t&&t.tagName.toLowerCase()==="textarea"}function m_(t){class e extends t{setData(t){this.data.set(t)}getData(t){return this.data.get(t)}}return e}{const t=m_(Object);m_.setData=t.prototype.setData;m_.getData=t.prototype.getData}function f_(t){class e extends t{updateSourceElement(t=this.data.get()){if(!this.sourceElement){throw new z("editor-missing-sourceelement",this)}const e=this.config.get("updateSourceElementOnDestroy");const n=this.sourceElement instanceof HTMLTextAreaElement;if(!e&&!n){fc(this.sourceElement,"");return}fc(this.sourceElement,t)}}return e}f_.updateSourceElement=f_(Object).prototype.updateSourceElement;function p_(t){const e=t.sourceElement;if(!e){return}if(e.ckeditorInstance){throw new CKEditorError("editor-source-element-already-used",t)}e.ckeditorInstance=t;t.once("destroy",(()=>{delete e.ckeditorInstance}))}class b_ extends cu{static get pluginName(){return"PendingActions"}init(){this.set("hasAny",false);this._actions=new ll({idProperty:"_id"});this._actions.delegate("add","remove").to(this)}add(t){if(typeof t!=="string"){throw new z("pendingactions-add-invalid-message",this)}const e=new(mt());e.set("message",t);this._actions.add(e);this.hasAny=true;return 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 k_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.591 10.177 4.243 4.242a1 1 0 0 1-1.415 1.415l-4.242-4.243-4.243 4.243a1 1 0 0 1-1.414-1.415l4.243-4.242L4.52 5.934A1 1 0 0 1 5.934 4.52l4.243 4.243 4.242-4.243a1 1 0 1 1 1.415 1.414l-4.243 4.243z"/></svg>';const w_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 16h9a1 1 0 0 1 0 2H2a1 1 0 0 1 0-2z"/><path d="M17 1a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h14zm0 1.5H3a.5.5 0 0 0-.492.41L2.5 3v9a.5.5 0 0 0 .41.492L3 12.5h14a.5.5 0 0 0 .492-.41L17.5 12V3a.5.5 0 0 0-.41-.492L17 2.5z" fill-opacity=".6"/></svg>';const A_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M6.972 16.615a.997.997 0 0 1-.744-.292l-4.596-4.596a1 1 0 1 1 1.414-1.414l3.926 3.926 9.937-9.937a1 1 0 0 1 1.414 1.415L7.717 16.323a.997.997 0 0 1-.745.292z"/></svg>';const C_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.333 2 .19 2.263a5.899 5.899 0 0 1 1.458.604L14.714 3.4 16.6 5.286l-1.467 1.733c.263.452.468.942.605 1.46L18 8.666v2.666l-2.263.19a5.899 5.899 0 0 1-.604 1.458l1.467 1.733-1.886 1.886-1.733-1.467a5.899 5.899 0 0 1-1.46.605L11.334 18H8.667l-.19-2.263a5.899 5.899 0 0 1-1.458-.604L5.286 16.6 3.4 14.714l1.467-1.733a5.899 5.899 0 0 1-.604-1.458L2 11.333V8.667l2.262-.189a5.899 5.899 0 0 1 .605-1.459L3.4 5.286 5.286 3.4l1.733 1.467a5.899 5.899 0 0 1 1.46-.605L8.666 2h2.666zM10 6.267a3.733 3.733 0 1 0 0 7.466 3.733 3.733 0 0 0 0-7.466z"/></svg>';const __='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m8.636 9.531-2.758 3.94a.5.5 0 0 0 .122.696l3.224 2.284h1.314l2.636-3.736L8.636 9.53zm.288 8.451L5.14 15.396a2 2 0 0 1-.491-2.786l6.673-9.53a2 2 0 0 1 2.785-.49l3.742 2.62a2 2 0 0 1 .491 2.785l-7.269 10.053-2.147-.066z"/><path d="M4 18h5.523v-1H4zm-2 0h1v-1H2z"/></svg>';const v_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M5.085 6.22 2.943 4.078a.75.75 0 1 1 1.06-1.06l2.592 2.59A11.094 11.094 0 0 1 10 5.068c4.738 0 8.578 3.101 8.578 5.083 0 1.197-1.401 2.803-3.555 3.887l1.714 1.713a.75.75 0 0 1-.09 1.138.488.488 0 0 1-.15.084.75.75 0 0 1-.821-.16L6.17 7.304c-.258.11-.51.233-.757.365l6.239 6.24-.006.005.78.78c-.388.094-.78.166-1.174.215l-1.11-1.11h.011L4.55 8.197a7.2 7.2 0 0 0-.665.514l-.112.098 4.897 4.897-.005.006 1.276 1.276a10.164 10.164 0 0 1-1.477-.117l-.479-.479-.009.009-4.863-4.863-.022.031a2.563 2.563 0 0 0-.124.2c-.043.077-.08.158-.108.241a.534.534 0 0 0-.028.133.29.29 0 0 0 .008.072.927.927 0 0 0 .082.226c.067.133.145.26.234.379l3.242 3.365.025.01.59.623c-3.265-.918-5.59-3.155-5.59-4.668 0-1.194 1.448-2.838 3.663-3.93zm7.07.531a4.632 4.632 0 0 1 1.108 5.992l.345.344.046-.018a9.313 9.313 0 0 0 2-1.112c.256-.187.5-.392.727-.613.137-.134.27-.277.392-.431.072-.091.141-.185.203-.286.057-.093.107-.19.148-.292a.72.72 0 0 0 .036-.12.29.29 0 0 0 .008-.072.492.492 0 0 0-.028-.133.999.999 0 0 0-.036-.096 2.165 2.165 0 0 0-.071-.145 2.917 2.917 0 0 0-.125-.2 3.592 3.592 0 0 0-.263-.335 5.444 5.444 0 0 0-.53-.523 7.955 7.955 0 0 0-1.054-.768 9.766 9.766 0 0 0-1.879-.891c-.337-.118-.68-.219-1.027-.301zm-2.85.21-.069.002a.508.508 0 0 0-.254.097.496.496 0 0 0-.104.679.498.498 0 0 0 .326.199l.045.005c.091.003.181.003.272.012a2.45 2.45 0 0 1 2.017 1.513c.024.061.043.125.069.185a.494.494 0 0 0 .45.287h.008a.496.496 0 0 0 .35-.158.482.482 0 0 0 .13-.335.638.638 0 0 0-.048-.219 3.379 3.379 0 0 0-.36-.723 3.438 3.438 0 0 0-2.791-1.543l-.028-.001h-.013z"/></svg>';const y_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M6.91 10.54c.26-.23.64-.21.88.03l3.36 3.14 2.23-2.06a.64.64 0 0 1 .87 0l2.52 2.97V4.5H3.2v10.12l3.71-4.08zm10.27-7.51c.6 0 1.09.47 1.09 1.05v11.84c0 .59-.49 1.06-1.09 1.06H2.79c-.6 0-1.09-.47-1.09-1.06V4.08c0-.58.49-1.05 1.1-1.05h14.38zm-5.22 5.56a1.96 1.96 0 1 1 3.4-1.96 1.96 1.96 0 0 1-3.4 1.96z"/></svg>';const x_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m9.239 13.938-2.88-1.663a.75.75 0 0 1 .75-1.3L9 12.067V4.75a.75.75 0 1 1 1.5 0v7.318l1.89-1.093a.75.75 0 0 1 .75 1.3l-2.879 1.663a.752.752 0 0 1-.511.187.752.752 0 0 1-.511-.187zM4.25 17a.75.75 0 1 1 0-1.5h10.5a.75.75 0 0 1 0 1.5H4.25z"/></svg>';const E_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M9.75 11.875a.752.752 0 0 1 .508.184l2.883 1.666a.75.75 0 0 1-.659 1.344l-.091-.044-1.892-1.093.001 4.318a.75.75 0 1 1-1.5 0v-4.317l-1.89 1.092a.75.75 0 0 1-.75-1.3l2.879-1.663a.752.752 0 0 1 .51-.187zM15.25 9a.75.75 0 1 1 0 1.5H4.75a.75.75 0 1 1 0-1.5h10.5zM9.75.375a.75.75 0 0 1 .75.75v4.318l1.89-1.093.092-.045a.75.75 0 0 1 .659 1.344l-2.883 1.667a.752.752 0 0 1-.508.184.752.752 0 0 1-.511-.187L6.359 5.65a.75.75 0 0 1 .75-1.299L9 5.442V1.125a.75.75 0 0 1 .75-.75z"/></svg>';const D_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m10.261 7.062 2.88 1.663a.75.75 0 0 1-.75 1.3L10.5 8.933v7.317a.75.75 0 1 1-1.5 0V8.932l-1.89 1.093a.75.75 0 0 1-.75-1.3l2.879-1.663a.752.752 0 0 1 .511-.187.752.752 0 0 1 .511.187zM15.25 4a.75.75 0 1 1 0 1.5H4.75a.75.75 0 0 1 0-1.5h10.5z"/></svg>';const T_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 4c0 .414.336.75.75.75h9.929a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0-8c0 .414.336.75.75.75h9.929a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75z"/></svg>';const S_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm2.286 4c0 .414.336.75.75.75h9.928a.75.75 0 1 0 0-1.5H5.036a.75.75 0 0 0-.75.75zm0-8c0 .414.336.75.75.75h9.928a.75.75 0 1 0 0-1.5H5.036a.75.75 0 0 0-.75.75z"/></svg>';const I_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M18 3.75a.75.75 0 0 1-.75.75H2.75a.75.75 0 1 1 0-1.5h14.5a.75.75 0 0 1 .75.75zm0 8a.75.75 0 0 1-.75.75H2.75a.75.75 0 1 1 0-1.5h14.5a.75.75 0 0 1 .75.75zm0 4a.75.75 0 0 1-.75.75H7.321a.75.75 0 1 1 0-1.5h9.929a.75.75 0 0 1 .75.75zm0-8a.75.75 0 0 1-.75.75H7.321a.75.75 0 1 1 0-1.5h9.929a.75.75 0 0 1 .75.75z"/></svg>';const B_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 4c0 .414.336.75.75.75h9.929a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0-8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75z"/></svg>';const M_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M12.003 7v5.5a1 1 0 0 1-1 1H2.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H3.5V12h6.997V7.5z"/></svg>';const L_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M15.003 7v5.5a1 1 0 0 1-1 1H5.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H6.5V12h6.997V7.5z"/></svg>';const N_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M18.003 7v5.5a1 1 0 0 1-1 1H8.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H9.5V12h6.997V7.5z"/></svg>';const z_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M18 7v5.5a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1zm-1.505.5H3.504V12h12.991V7.5z"/></svg>';const P_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm11.5 9H18v1.5h-4.5zM2 15h16v1.5H2z"/><path d="M12.003 7v5.5a1 1 0 0 1-1 1H2.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H3.5V12h6.997V7.5z"/></svg>';const R_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm11.5 9H18v1.5h-4.5zm0-3H18v1.5h-4.5zm0-3H18v1.5h-4.5zM2 15h16v1.5H2z"/><path d="M12.003 7v5.5a1 1 0 0 1-1 1H2.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H3.5V12h6.997V7.5z"/></svg>';const O_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2zm0-9h5v1.5H2zm0 3h5v1.5H2zm0 3h5v1.5H2z"/><path d="M18.003 7v5.5a1 1 0 0 1-1 1H8.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H9.5V12h6.997V7.5z"/></svg>';const V_='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M18.095 2H1.905C.853 2 0 2.895 0 4v12c0 1.105.853 2 1.905 2h16.19C19.147 18 20 17.105 20 16V4c0-1.105-.853-2-1.905-2zm0 1.5c.263 0 .476.224.476.5v12c0 .276-.213.5-.476.5H1.905a.489.489 0 0 1-.476-.5V4c0-.276.213-.5.476-.5h16.19z"/></svg>';const F_='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M13 6H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2zm0 1.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5V8a.5.5 0 0 1 .5-.5h11z"/></svg>';const j_='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M7 10H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h5a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2zm0 1.5a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h5z"/></svg>';const H_='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M10 8H2a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2zm0 1.5a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5v-6a.5.5 0 0 1 .5-.5h8z"/></svg>';const U_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m7.3 17.37-.061.088a1.518 1.518 0 0 1-.934.535l-4.178.663-.806-4.153a1.495 1.495 0 0 1 .187-1.058l.056-.086L8.77 2.639c.958-1.351 2.803-1.076 4.296-.03 1.497 1.047 2.387 2.693 1.433 4.055L7.3 17.37zM9.14 4.728l-5.545 8.346 3.277 2.294 5.544-8.346L9.14 4.728zM6.07 16.512l-3.276-2.295.53 2.73 2.746-.435zM9.994 3.506 13.271 5.8c.316-.452-.16-1.333-1.065-1.966-.905-.634-1.895-.78-2.212-.328zM8 18.5 9.375 17H19v1.5H8z"/></svg>';const W_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M6.999 2H15a1 1 0 0 1 0 2h-1.004v13a1 1 0 1 1-2 0V4H8.999v13a1 1 0 1 1-2 0v-7A4 4 0 0 1 3 6a4 4 0 0 1 3.999-4z"/></svg>';const q_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3 10.423a6.5 6.5 0 0 1 6.056-6.408l.038.67C6.448 5.423 5.354 7.663 5.22 10H9c.552 0 .5.432.5.986v4.511c0 .554-.448.503-1 .503h-5c-.552 0-.5-.449-.5-1.003v-4.574zm8 0a6.5 6.5 0 0 1 6.056-6.408l.038.67c-2.646.739-3.74 2.979-3.873 5.315H17c.552 0 .5.432.5.986v4.511c0 .554-.448.503-1 .503h-5c-.552 0-.5-.449-.5-1.003v-4.574z"/></svg>';const $_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><circle cx="9.5" cy="4.5" r="1.5"/><circle cx="9.5" cy="10.5" r="1.5"/><circle cx="9.5" cy="16.5" r="1.5"/></svg>';const G_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10.187 17H5.773c-.637 0-1.092-.138-1.364-.415-.273-.277-.409-.718-.409-1.323V4.738c0-.617.14-1.062.419-1.332.279-.27.73-.406 1.354-.406h4.68c.69 0 1.288.041 1.793.124.506.083.96.242 1.36.478.341.197.644.447.906.75a3.262 3.262 0 0 1 .808 2.162c0 1.401-.722 2.426-2.167 3.075C15.05 10.175 16 11.315 16 13.01a3.756 3.756 0 0 1-2.296 3.504 6.1 6.1 0 0 1-1.517.377c-.571.073-1.238.11-2 .11zm-.217-6.217H7v4.087h3.069c1.977 0 2.965-.69 2.965-2.072 0-.707-.256-1.22-.768-1.537-.512-.319-1.277-.478-2.296-.478zM7 5.13v3.619h2.606c.729 0 1.292-.067 1.69-.2a1.6 1.6 0 0 0 .91-.765c.165-.267.247-.566.247-.897 0-.707-.26-1.176-.778-1.409-.519-.232-1.31-.348-2.375-.348H7z"/></svg>';const K_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 5.5H7v5h3.5a2.5 2.5 0 1 0 0-5zM5 3h6.5v.025a5 5 0 0 1 0 9.95V13H7v4a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z"/></svg>';const Y_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10 2a1 1 0 0 0-1 1v6H3a1 1 0 1 0 0 2h6v6a1 1 0 1 0 2 0v-6h6a1 1 0 1 0 0-2h-6V3a1 1 0 0 0-1-1Z"/></svg>';const Z_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#a)"><path d="M9.816 11.5 7.038 4.785 4.261 11.5h5.555Zm.62 1.5H3.641l-1.666 4.028H.312l5.789-14h1.875l5.789 14h-1.663L10.436 13Z"/><path clip-rule="evenodd" d="m12.09 17-.534-1.292.848-1.971.545 1.319L12.113 17h-.023Zm1.142-5.187.545 1.319L15.5 9.13l1.858 4.316h-3.45l.398.965h3.467L18.887 17H20l-3.873-9h-1.254l-1.641 3.813Z"/></g><defs><clipPath id="a"><path d="M0 0h20v20H0z"/></clipPath></defs></svg>';const Q_='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#a)"><path clip-rule="evenodd" d="M19 4.5 14 0H3v12.673l.868-1.041c.185-.222.4-.402.632-.54V1.5h8v5h5v7.626a2.24 2.24 0 0 1 1.5.822V4.5ZM14 5V2l3.3 3H14Zm-3.692 12.5c.062.105.133.206.213.303L11.52 19H8v-.876a2.243 2.243 0 0 0 1.82-.624h.488Zm7.518-.657a.75.75 0 0 0-1.152-.96L15.5 17.29V12H14v5.29l-1.174-1.408a.75.75 0 0 0-1.152.96l2.346 2.816a.95.95 0 0 0 1.46 0l2.346-2.815Zm-15.056-.38a.75.75 0 0 1-.096-1.056l2.346-2.815a.95.95 0 0 1 1.46 0l2.346 2.815a.75.75 0 1 1-1.152.96L6.5 14.96V20H5v-5.04l-1.174 1.408a.75.75 0 0 1-1.056.096Z"/></g><defs><clipPath id="a"><path d="M0 0h20v20H0z"/></clipPath></defs></svg>';const J_={bold:G_,cancel:k_,caption:w_,check:A_,cog:C_,eraser:__,image:y_,lowVision:v_,importExport:Q_,paragraph:K_,plus:Y_,text:Z_,alignBottom:x_,alignMiddle:E_,alignTop:D_,alignLeft:T_,alignCenter:S_,alignRight:I_,alignJustify:B_,objectLeft:R_,objectCenter:L_,objectRight:O_,objectFullWidth:z_,objectInline:P_,objectBlockLeft:M_,objectBlockRight:N_,objectSizeFull:V_,objectSizeLarge:F_,objectSizeSmall:j_,objectSizeMedium:H_,pencil:U_,pilcrow:W_,quote:q_,threeVerticalDots:$_};var X_=n(5571);var tv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tv.insert="head";tv.singleton=true;var ev=Tl()(X_.Z,tv);const nv=X_.Z.locals||{};const{threeVerticalDots:iv}=J_;const ov={alignLeft:J_.alignLeft,bold:J_.bold,importExport:J_.importExport,paragraph:J_.paragraph,plus:J_.plus,text:J_.text,threeVerticalDots:J_.threeVerticalDots};class rv extends Ll{constructor(t,e){super(t);const n=this.bindTemplate;const i=this.t;this.options=e||{};this.set("ariaLabel",i("Editor toolbar"));this.set("maxWidth","auto");this.items=this.createCollection();this.focusTracker=new ul;this.keystrokes=new hl;this.set("class",undefined);this.set("isCompact",false);this.itemsView=new sv(t);this.children=this.createCollection();this.children.add(this.itemsView);this.focusables=this.createCollection();const o=t.uiLanguageDirection==="rtl";this._focusCycler=new Yd({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")];if(this.options.shouldGroupWhenFull&&this.options.isFloating){r.push("ck-toolbar_floating")}this.setTemplate({tag:"div",attributes:{class:r,role:"toolbar","aria-label":n.to("ariaLabel"),style:{maxWidth:n.to("maxWidth")}},children:this.children,on:{mousedown:Xd(this)}});this._behavior=this.options.shouldGroupWhenFull?new cv(this):new av(this)}render(){super.render();for(const t of this.items){this.focusTracker.add(t.element)}this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)}));this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)}));this.keystrokes.listenTo(this.element);this._behavior.render(this)}destroy(){this._behavior.destroy();this.focusTracker.destroy();this.keystrokes.destroy();return 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=tu(t);const o=n||i.removeItems;const r=this._cleanItemsConfiguration(i.items,e,o).map((t=>{if(at(t)){return this._createNestedToolbarDropdown(t,e,o)}else if(t==="|"){return new Qd}else if(t==="-"){return new Jd}return e.create(t)})).filter((t=>!!t));return r}_cleanItemsConfiguration(t,e,n){const i=t.filter(((t,i,o)=>{if(t==="|"){return true}if(n.indexOf(t)!==-1){return false}if(t==="-"){if(this.options.shouldGroupWhenFull){P("toolbarview-line-break-ignored-when-grouping-items",o);return false}return true}if(!at(t)&&!e.has(t)){P("toolbarview-item-unavailable",{item:t});return false}return true}));return this._cleanSeparatorsAndLineBreaks(i)}_cleanSeparatorsAndLineBreaks(t){const e=t=>t!=="-"&&t!=="|";const n=t.length;const i=t.findIndex(e);if(i===-1){return[]}const o=n-t.slice().reverse().findIndex(e);return t.slice(i,o).filter(((t,n,i)=>{if(e(t)){return true}const o=n>0&&i[n-1]===t;return!o}))}_createNestedToolbarDropdown(t,e,n){let{label:i,icon:o,items:r,tooltip:s=true,withText:a=false}=t;r=this._cleanItemsConfiguration(r,e,n);if(!r.length){return null}const c=this.locale;const l=yv(c);if(!i){P("toolbarview-nested-toolbar-dropdown-missing-label",t)}l.class="ck-toolbar__nested-toolbar-dropdown";l.buttonView.set({label:i,tooltip:s,withText:!!a});if(o!==false){l.buttonView.icon=ov[o]||o||iv}else{l.buttonView.withText=true}xv(l,(()=>l.toolbarView._buildItemsFromConfig(r,e,n)));return l}}class sv extends Ll{constructor(t){super(t);this.children=this.createCollection();this.setTemplate({tag:"div",attributes:{class:["ck","ck-toolbar__items"]},children:this.children})}}class av{constructor(t){const e=t.bindTemplate;t.set("isVertical",false);t.itemsView.children.bindTo(t.items).using((t=>t));t.focusables.bindTo(t.items).using((t=>t));t.extendTemplate({attributes:{class:[e.if("isVertical","ck-toolbar_vertical")]}})}render(){}destroy(){}}class cv{constructor(t){this.view=t;this.viewChildren=t.children;this.viewFocusables=t.focusables;this.viewItemsView=t.itemsView;this.viewFocusTracker=t.focusTracker;this.viewLocale=t.locale;this.ungroupedItems=t.createCollection();this.groupedItems=t.createCollection();this.groupedItemsDropdown=this._createGroupedItemsDropdown();this.resizeObserver=null;this.cachedPadding=null;this.shouldUpdateGroupingOnNextResize=false;t.itemsView.children.bindTo(this.ungroupedItems).using((t=>t));this.ungroupedItems.on("change",this._updateFocusCycleableItems.bind(this));t.children.on("change",this._updateFocusCycleableItems.bind(this));t.items.on("change",((t,e)=>{const n=e.index;const i=Array.from(e.added);for(const t of e.removed){if(n>=this.ungroupedItems.length){this.groupedItems.remove(t)}else{this.ungroupedItems.remove(t)}}for(let t=n;t<n+i.length;t++){const e=i[t-n];if(t>this.ungroupedItems.length){this.groupedItems.add(e,t-this.ungroupedItems.length)}else{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(!Ac(this.viewElement)){this.shouldUpdateGroupingOnNextResize=true;return}const t=this.groupedItems.length;let e;while(this._areItemsOverflowing){this._groupLastItem();e=true}if(!e&&this.groupedItems.length){while(this.groupedItems.length&&!this._areItemsOverflowing){this._ungroupFirstItem()}if(this._areItemsOverflowing){this._groupLastItem()}}if(this.groupedItems.length!==t){this.view.fire("groupedItemsUpdate")}}get _areItemsOverflowing(){if(!this.ungroupedItems.length){return false}const t=this.viewElement;const e=this.viewLocale.uiLanguageDirection;const n=new dc(t.lastChild);const i=new dc(t);if(!this.cachedPadding){const n=ic.window.getComputedStyle(t);const i=e==="ltr"?"paddingRight":"paddingLeft";this.cachedPadding=Number.parseInt(n[i])}if(e==="ltr"){return n.right>i.right-this.cachedPadding}else{return n.left<i.left+this.cachedPadding}}_enableGroupingOnResize(){let t;this.resizeObserver=new mc(this.viewElement,(e=>{if(!t||t!==e.contentRect.width||this.shouldUpdateGroupingOnNextResize){this.shouldUpdateGroupingOnNextResize=false;this._updateGrouping();t=e.contentRect.width}}));this._updateGrouping()}_enableGroupingOnMaxWidthChange(t){t.on("change:maxWidth",(()=>{this._updateGrouping()}))}_groupLastItem(){if(!this.groupedItems.length){this.viewChildren.add(new Qd);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));if(!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;const e=t.t;const n=yv(t);n.class="ck-toolbar__grouped-dropdown";n.panelPosition=t.uiLanguageDirection==="ltr"?"sw":"se";xv(n,this.groupedItems);n.buttonView.set({label:e("Show more items"),tooltip:true,tooltipPosition:t.uiLanguageDirection==="rtl"?"se":"sw",icon:iv});return n}_updateFocusCycleableItems(){this.viewFocusables.clear();this.ungroupedItems.map((t=>{this.viewFocusables.add(t)}));if(this.groupedItems.length){this.viewFocusables.add(this.groupedItemsDropdown)}}}var lv=n(1162);var dv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};dv.insert="head";dv.singleton=true;var uv=Tl()(lv.Z,dv);const hv=lv.Z.locals||{};class gv extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.items=this.createCollection();this.focusTracker=new ul;this.keystrokes=new hl;this._focusCycler=new Yd({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"arrowup",focusNext:"arrowdown"}});this.set("ariaLabel",undefined);this.setTemplate({tag:"ul",attributes:{class:["ck","ck-reset","ck-list"],"aria-label":e.to("ariaLabel")},children:this.items})}render(){super.render();for(const t of this.items){this.focusTracker.add(t.element)}this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)}));this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)}));this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}}class mv extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",true);this.children=this.createCollection();this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__item",e.if("isVisible","ck-hidden",(t=>!t))]},children:this.children})}focus(){this.children.first.focus()}}class fv extends Ll{constructor(t){super(t);this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__separator"]}})}}var pv=n(5075);var bv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};bv.insert="head";bv.singleton=true;var kv=Tl()(pv.Z,bv);const wv=pv.Z.locals||{};var Av=n(6875);var Cv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Cv.insert="head";Cv.singleton=true;var _v=Tl()(Av.Z,Cv);const vv=Av.Z.locals||{};function yv(t,e=Hd){const n=new e(t);const i=new Kd(t);const o=new Fd(t,n,i);n.bind("isEnabled").to(o);if(n instanceof Gd){n.arrowView.bind("isOn").to(o,"isOpen")}else{n.bind("isOn").to(o,"isOpen")}Iv(o);return o}function xv(t,e,n={}){t.extendTemplate({attributes:{class:["ck-toolbar-dropdown"]}});if(t.isOpen){Ev(t,e,n)}else{t.once("change:isOpen",(()=>Ev(t,e,n)),{priority:"highest"})}if(n.enableActiveItemFocusOnDropdownOpen){Sv(t,(()=>t.toolbarView.items.find((t=>t.isOn))))}}function Ev(t,e,n){const i=t.locale;const o=i.t;const r=t.toolbarView=new rv(i);const s=typeof e=="function"?e():e;r.ariaLabel=n.ariaLabel||o("Dropdown toolbar");if(n.maxWidth){r.maxWidth=n.maxWidth}if(n.class){r.class=n.class}if(n.isCompact){r.isCompact=n.isCompact}if(n.isVertical){r.isVertical=true}if(s instanceof xl){r.items.bindTo(s).using((t=>t))}else{r.items.addMany(s)}t.panelView.children.add(r);r.items.delegate("execute").to(t)}function Dv(t,e,n={}){if(t.isOpen){Tv(t,e,n)}else{t.once("change:isOpen",(()=>Tv(t,e,n)),{priority:"highest"})}Sv(t,(()=>t.listView.items.find((t=>{if(t instanceof mv){return t.children.first.isOn}return false}))))}function Tv(t,e,n){const i=t.locale;const o=t.listView=new gv(i);const r=typeof e=="function"?e():e;o.ariaLabel=n.ariaLabel;o.items.bindTo(r).using((t=>{if(t.type==="separator"){return new fv(i)}else if(t.type==="button"||t.type==="switchbutton"){const e=new mv(i);let n;if(t.type==="button"){n=new kd(i)}else{n=new vd(i)}n.bind(...Object.keys(t.model)).to(t.model);n.delegate("execute").to(e);e.children.add(n);return e}return null}));t.panelView.children.add(o);o.items.delegate("execute").to(t)}function Sv(t,e){t.on("change:isOpen",(()=>{if(!t.isOpen){return}const n=e();if(!n){return}if(typeof n.focus==="function"){n.focus()}else{P("ui-dropdown-focus-child-on-open-child-missing-focus",{view:n})}}),{priority:M.low-10})}function Iv(t){Bv(t);Mv(t);Lv(t);Nv(t);zv(t);Pv(t)}function Bv(e){e.on("render",(()=>{t({emitter:e,activator:()=>e.isOpen,callback:()=>{e.isOpen=false},contextElements:[e.element]})}))}function Mv(t){t.on("execute",(e=>{if(e.source instanceof vd){return}t.isOpen=false}))}function Lv(t){t.focusTracker.on("change:isFocused",((e,n,i)=>{if(t.isOpen&&!i){t.isOpen=false}}))}function Nv(t){t.keystrokes.set("arrowdown",((e,n)=>{if(t.isOpen){t.panelView.focus();n()}}));t.keystrokes.set("arrowup",((e,n)=>{if(t.isOpen){t.panelView.focusLast();n()}}))}function zv(t){t.on("change:isOpen",((e,n,i)=>{if(i){return}const o=t.panelView.element;if(o&&o.contains(ic.document.activeElement)){t.buttonView.focus()}}))}function Pv(t){t.on("change:isOpen",((e,n,i)=>{if(!i){return}t.panelView.focus()}),{priority:"low"})}var Rv=n(8245);var Ov={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Ov.insert="head";Ov.singleton=true;var Vv=Tl()(Rv.Z,Ov);const Fv=Rv.Z.locals||{};const jv=pc("px");const Hv=ic.document.body;class Uv extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.set("top",0);this.set("left",0);this.set("position","arrow_nw");this.set("isVisible",false);this.set("withArrow",true);this.set("class",undefined);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",jv),left:e.to("left",jv)}},children:this.content})}show(){this.isVisible=true}hide(){this.isVisible=false}attachTo(t){this.show();const e=Uv.defaultPositions;const 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:Hv,fitInViewport:true},t);const i=Uv._getOptimalPosition(n);const o=parseInt(i.left);const r=parseInt(i.top);const s=i.name;const a=i.config||{};const{withArrow:c=true}=a;this.top=r;this.left=o;this.position=s;this.withArrow=c}pin(t){this.unpin();this._pinWhenIsVisibleCallback=()=>{if(this.isVisible){this._startPinning(t)}else{this._stopPinning()}};this._startPinning(t);this.listenTo(this,"change:isVisible",this._pinWhenIsVisibleCallback)}unpin(){if(this._pinWhenIsVisibleCallback){this._stopPinning();this.stopListening(this,"change:isVisible",this._pinWhenIsVisibleCallback);this._pinWhenIsVisibleCallback=null;this.hide()}}_startPinning(t){this.attachTo(t);const e=Wv(t.target);const n=t.limiter?Wv(t.limiter):Hv;this.listenTo(ic.document,"scroll",((i,o)=>{const r=o.target;const s=e&&r.contains(e);const a=n&&r.contains(n);if(s||a||!e||!n){this.attachTo(t)}}),{useCapture:true});this.listenTo(ic.window,"resize",(()=>{this.attachTo(t)}))}_stopPinning(){this.stopListening(ic.document,"scroll");this.stopListening(ic.window,"resize")}}Uv.arrowSideOffset=25;Uv.arrowHeightOffset=10;Uv.stickyVerticalOffset=20;Uv._getOptimalPosition=_c;Uv.defaultPositions=qv();function Wv(t){if(qa(t)){return t}if(ac(t)){return t.commonAncestorContainer}if(typeof t=="function"){return Wv(t())}return null}function qv(t={}){const{sideOffset:e=Uv.arrowSideOffset,heightOffset:n=Uv.arrowHeightOffset,stickyVerticalOffset:i=Uv.stickyVerticalOffset,config:o}=t;return{northWestArrowSouthWest:(t,n)=>({top:r(t,n),left:t.left-e,name:"arrow_sw",...o&&{config:o}}),northWestArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.left-n.width*.25-e,name:"arrow_smw",...o&&{config:o}}),northWestArrowSouth:(t,e)=>({top:r(t,e),left:t.left-e.width/2,name:"arrow_s",...o&&{config:o}}),northWestArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.left-n.width*.75+e,name:"arrow_sme",...o&&{config:o}}),northWestArrowSouthEast:(t,n)=>({top:r(t,n),left:t.left-n.width+e,name:"arrow_se",...o&&{config:o}}),northArrowSouthWest:(t,n)=>({top:r(t,n),left:t.left+t.width/2-e,name:"arrow_sw",...o&&{config:o}}),northArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.left+t.width/2-n.width*.25-e,name:"arrow_smw",...o&&{config:o}}),northArrowSouth:(t,e)=>({top:r(t,e),left:t.left+t.width/2-e.width/2,name:"arrow_s",...o&&{config:o}}),northArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.left+t.width/2-n.width*.75+e,name:"arrow_sme",...o&&{config:o}}),northArrowSouthEast:(t,n)=>({top:r(t,n),left:t.left+t.width/2-n.width+e,name:"arrow_se",...o&&{config:o}}),northEastArrowSouthWest:(t,n)=>({top:r(t,n),left:t.right-e,name:"arrow_sw",...o&&{config:o}}),northEastArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.right-n.width*.25-e,name:"arrow_smw",...o&&{config:o}}),northEastArrowSouth:(t,e)=>({top:r(t,e),left:t.right-e.width/2,name:"arrow_s",...o&&{config:o}}),northEastArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.right-n.width*.75+e,name:"arrow_sme",...o&&{config:o}}),northEastArrowSouthEast:(t,n)=>({top:r(t,n),left:t.right-n.width+e,name:"arrow_se",...o&&{config:o}}),southWestArrowNorthWest:t=>({top:s(t),left:t.left-e,name:"arrow_nw",...o&&{config:o}}),southWestArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.left-n.width*.25-e,name:"arrow_nmw",...o&&{config:o}}),southWestArrowNorth:(t,e)=>({top:s(t),left:t.left-e.width/2,name:"arrow_n",...o&&{config:o}}),southWestArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.left-n.width*.75+e,name:"arrow_nme",...o&&{config:o}}),southWestArrowNorthEast:(t,n)=>({top:s(t),left:t.left-n.width+e,name:"arrow_ne",...o&&{config:o}}),southArrowNorthWest:t=>({top:s(t),left:t.left+t.width/2-e,name:"arrow_nw",...o&&{config:o}}),southArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.left+t.width/2-n.width*.25-e,name:"arrow_nmw",...o&&{config:o}}),southArrowNorth:(t,e)=>({top:s(t),left:t.left+t.width/2-e.width/2,name:"arrow_n",...o&&{config:o}}),southArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.left+t.width/2-n.width*.75+e,name:"arrow_nme",...o&&{config:o}}),southArrowNorthEast:(t,n)=>({top:s(t),left:t.left+t.width/2-n.width+e,name:"arrow_ne",...o&&{config:o}}),southEastArrowNorthWest:t=>({top:s(t),left:t.right-e,name:"arrow_nw",...o&&{config:o}}),southEastArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.right-n.width*.25-e,name:"arrow_nmw",...o&&{config:o}}),southEastArrowNorth:(t,e)=>({top:s(t),left:t.right-e.width/2,name:"arrow_n",...o&&{config:o}}),southEastArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.right-n.width*.75+e,name:"arrow_nme",...o&&{config:o}}),southEastArrowNorthEast:(t,n)=>({top:s(t),left:t.right-n.width+e,name:"arrow_ne",...o&&{config:o}}),westArrowEast:(t,e)=>({top:t.top+t.height/2-e.height/2,left:t.left-e.width-n,name:"arrow_e",...o&&{config:o}}),eastArrowWest:(t,e)=>({top:t.top+t.height/2-e.height/2,left:t.right+n,name:"arrow_w",...o&&{config:o}}),viewportStickyNorth:(t,e,n)=>{if(!t.getIntersection(n)){return null}return{top:n.top+i,left:t.left+t.width/2-e.width/2,name:"arrowless",config:{withArrow:false,...o}}}};function r(t,e){return t.top-e.height-n}function s(t){return t.bottom+n}}var $v=n(9948);var Gv={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Gv.insert="head";Gv.singleton=true;var Kv=Tl()($v.Z,Gv);const Yv=$v.Z.locals||{};const Zv="ck-tooltip";class Qv extends(Ja()){constructor(t){super();Qv._editors.add(t);if(Qv._instance){return Qv._instance}Qv._instance=this;this.tooltipTextView=new Ll(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 Uv(t.locale);this.balloonPanelView.class=Zv;this.balloonPanelView.content.add(this.tooltipTextView);this._resizeObserver=null;this._currentElementWithTooltip=null;this._currentTooltipPosition=null;this._pinTooltipDebounced=If(this._pinTooltip,600);this.listenTo(ic.document,"mouseenter",this._onEnterOrFocus.bind(this),{useCapture:true});this.listenTo(ic.document,"mouseleave",this._onLeaveOrBlur.bind(this),{useCapture:true});this.listenTo(ic.document,"focus",this._onEnterOrFocus.bind(this),{useCapture:true});this.listenTo(ic.document,"blur",this._onLeaveOrBlur.bind(this),{useCapture:true});this.listenTo(ic.document,"scroll",this._onScroll.bind(this),{useCapture:true});this._watchdogExcluded=true}destroy(t){const e=t.ui.view&&t.ui.view.body;Qv._editors.delete(t);this.stopListening(t.ui);if(e&&e.has(this.balloonPanelView)){e.remove(this.balloonPanelView)}if(!Qv._editors.size){this._unpinTooltip();this.balloonPanelView.destroy();this.stopListening();Qv._instance=null}}static getPositioningFunctions(t){const e=Qv.defaultBalloonPositions;return{s:[e.southArrowNorth,e.southArrowNorthEast,e.southArrowNorthWest],n:[e.northArrowSouth],e:[e.eastArrowWest],w:[e.westArrowEast],sw:[e.southArrowNorthEast],se:[e.southArrowNorthWest]}[t]}_onEnterOrFocus(t,{target:e}){const n=Jv(e);if(!n){return}if(n===this._currentElementWithTooltip){return}this._unpinTooltip();this._pinTooltipDebounced(n,Xv(n))}_onLeaveOrBlur(t,{target:e,relatedTarget:n}){if(t.name==="mouseleave"){if(!qa(e)){return}if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip){return}const t=Jv(e);const i=Jv(n);if(t&&t!==i){this._unpinTooltip()}}else{if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip){return}this._unpinTooltip()}}_onScroll(t,{target:e}){if(!this._currentElementWithTooltip){return}if(e.contains(this.balloonPanelView.element)&&e.contains(this._currentElementWithTooltip)){return}this._unpinTooltip()}_pinTooltip(t,{text:e,position:n,cssClass:i}){const o=dl(Qv._editors.values()).ui.view.body;if(!o.has(this.balloonPanelView)){o.add(this.balloonPanelView)}this.tooltipTextView.text=e;this.balloonPanelView.pin({target:t,positions:Qv.getPositioningFunctions(n)});this._resizeObserver=new mc(t,(()=>{if(!Ac(t)){this._unpinTooltip()}}));this.balloonPanelView.class=[Zv,i].filter((t=>t)).join(" ");for(const t of Qv._editors){this.listenTo(t.ui,"update",this._updateTooltipPosition.bind(this),{priority:"low"})}this._currentElementWithTooltip=t;this._currentTooltipPosition=n}_unpinTooltip(){this._pinTooltipDebounced.cancel();this.balloonPanelView.unpin();for(const t of Qv._editors){this.stopListening(t.ui,"update")}this._currentElementWithTooltip=null;this._currentTooltipPosition=null;if(this._resizeObserver){this._resizeObserver.destroy()}}_updateTooltipPosition(){if(!Ac(this._currentElementWithTooltip)){this._unpinTooltip();return}this.balloonPanelView.pin({target:this._currentElementWithTooltip,positions:Qv.getPositioningFunctions(this._currentTooltipPosition)})}}Qv.defaultBalloonPositions=qv({heightOffset:5,sideOffset:13});Qv._editors=new Set;Qv._instance=null;function Jv(t){if(!qa(t)){return null}return t.closest("[data-cke-tooltip-text]:not([data-cke-tooltip-disabled])")}function Xv(t){return{text:t.dataset.ckeTooltipText,position:t.dataset.ckeTooltipPosition||"s",cssClass:t.dataset.ckeTooltipClass||""}}class ty extends(mt()){constructor(t){super();this.editor=t;this.componentFactory=new Nd(t);this.focusTracker=new ul;this.tooltipManager=new Qv(t);this.set("viewportOffset",this._readViewportOffsetFromConfig());this.isReady=false;this.once("ready",(()=>{this.isReady=true}));this._editableElementsMap=new Map;this._focusableToolbarDefinitions=[];this.listenTo(t.editing.view.document,"layoutChanged",(()=>this.update()));this._initFocusTracking()}get element(){return null}update(){this.fire("update")}destroy(){this.stopListening();this.focusTracker.destroy();this.tooltipManager.destroy(this.editor);for(const t of this._editableElementsMap.values()){t.ckeditorInstance=null}this._editableElementsMap=new Map;this._focusableToolbarDefinitions=[]}setEditableElement(t,e){this._editableElementsMap.set(t,e);if(!e.ckeditorInstance){e.ckeditorInstance=this.editor}this.focusTracker.add(e);const n=()=>{if(this.editor.editing.view.getDomRoot(t)){return}this.editor.keystrokes.listenTo(e)};if(this.isReady){n()}else{this.once("ready",n)}}getEditableElement(t="main"){return this._editableElementsMap.get(t)}getEditableElementsNames(){return this._editableElementsMap.keys()}addToolbar(t,e={}){if(t.isRendered){this.focusTracker.add(t.element);this.editor.keystrokes.listenTo(t.element)}else{t.once("render",(()=>{this.focusTracker.add(t.element);this.editor.keystrokes.listenTo(t.element)}))}this._focusableToolbarDefinitions.push({toolbarView:t,options:e})}get _editableElements(){console.warn("editor-ui-deprecated-editable-elements: "+"The EditorUI#_editableElements property has been deprecated and will be removed in the near future.",{editorUI:this});return this._editableElementsMap}_readViewportOffsetFromConfig(){const t=this.editor;const e=t.config.get("ui.viewportOffset");if(e){return e}const n=t.config.get("toolbar.viewportTopOffset");if(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.");return{top:n}}return{top:0}}_initFocusTracking(){const t=this.editor;const e=t.editing.view;let n;let i;t.keystrokes.set("Alt+F10",((t,o)=>{const r=this.focusTracker.focusedElement;if(Array.from(this._editableElementsMap.values()).includes(r)&&!Array.from(e.domRoots.values()).includes(r)){n=r}const s=this._getCurrentFocusedToolbarDefinition();if(!s||!i){i=this._getFocusableCandidateToolbarDefinitions()}for(let t=0;t<i.length;t++){const t=i.shift();i.push(t);if(t!==s&&this._focusFocusableCandidateToolbar(t)){if(s&&s.options.afterBlur){s.options.afterBlur()}break}}o()}));t.keystrokes.set("Esc",((e,i)=>{const o=this._getCurrentFocusedToolbarDefinition();if(!o){return}if(n){n.focus();n=null}else{t.editing.view.focus()}if(o.options.afterBlur){o.options.afterBlur()}i()}))}_getFocusableCandidateToolbarDefinitions(){const t=[];for(const e of this._focusableToolbarDefinitions){const{toolbarView:n,options:i}=e;if(Ac(n.element)||i.beforeFocus){t.push(e)}}t.sort(((t,e)=>ey(t)-ey(e)));return 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;if(n){n()}if(!Ac(e.element)){return false}e.focus();return true}}function ey(t){const{toolbarView:e,options:n}=t;let i=10;if(Ac(e.element)){i--}if(n.isContextual){i--}return i}var ny=n(4547);var iy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};iy.insert="head";iy.singleton=true;var oy=Tl()(ny.Z,iy);const ry=ny.Z.locals||{};class sy extends Ll{constructor(t){super(t);this.body=new cd(t)}render(){super.render();this.body.attachToDom()}destroy(){this.body.detachFromDom();return super.destroy()}}var ay=n(2751);var cy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};cy.insert="head";cy.singleton=true;var ly=Tl()(ay.Z,cy);const dy=ay.Z.locals||{};class uy extends Ll{constructor(t){super(t);this.set("text",undefined);this.set("for",undefined);this.id=`ck-editor__label_${I()}`;const e=this.bindTemplate;this.setTemplate({tag:"label",attributes:{class:["ck","ck-label"],id:this.id,for:e.to("for")},children:[{text:e.to("text")}]})}}class hy extends sy{constructor(t){super(t);this.top=this.createCollection();this.main=this.createCollection();this._voiceLabelView=this._createVoiceLabel();this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-editor","ck-rounded-corners"],role:"application",dir:t.uiLanguageDirection,lang:t.uiLanguage,"aria-labelledby":this._voiceLabelView.id},children:[this._voiceLabelView,{tag:"div",attributes:{class:["ck","ck-editor__top","ck-reset_all"],role:"presentation"},children:this.top},{tag:"div",attributes:{class:["ck","ck-editor__main"],role:"presentation"},children:this.main}]})}_createVoiceLabel(){const t=this.t;const e=new uy;e.text=t("Rich Text Editor");e.extendTemplate({attributes:{class:"ck-voice-label"}});return e}}class gy extends Ll{constructor(t,e,n){super(t);this.setTemplate({tag:"div",attributes:{class:["ck","ck-content","ck-editor__editable","ck-rounded-corners"],lang:t.contentLanguage,dir:t.contentLanguageDirection}});this.name=null;this.set("isFocused",false);this._editableElement=n;this._hasExternalElement=!!this._editableElement;this._editingView=e}render(){super.render();if(this._hasExternalElement){this.template.apply(this.element=this._editableElement)}else{this._editableElement=this.element}this.on("change:isFocused",(()=>this._updateIsFocusedClasses()));this._updateIsFocusedClasses()}destroy(){if(this._hasExternalElement){this.template.revert(this._editableElement)}super.destroy()}_updateIsFocusedClasses(){const t=this._editingView;if(t.isRenderingInProgress){n(this)}else{e(this)}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)}))}function n(i){t.once("change:isRenderingInProgress",((t,o,r)=>{if(!r){e(i)}else{n(i)}}))}}}class my extends gy{constructor(t,e,n,i={}){super(t,e,n);const o=t.t;this.extendTemplate({attributes:{role:"textbox",class:"ck-editor__editable_inline"}});this._generateLabel=i.label||(()=>o("Editor editing area: %0",this.name))}render(){super.render();const t=this._editingView;t.change((e=>{const n=t.document.getRoot(this.name);e.setAttribute("aria-label",this._generateLabel(this),n)}))}}var fy=n(5523);var py={injectType:"singletonStyleTag",attributes:{"data-cke":true}};py.insert="head";py.singleton=true;var by=Tl()(fy.Z,py);const ky=fy.Z.locals||{};class wy extends Ll{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("label",e.label||"");this.set("class",e.class||null);this.children=this.createCollection();this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__header",n.to("class")]},children:this.children});const i=new Ll(t);i.setTemplate({tag:"h2",attributes:{class:["ck","ck-form__header__label"]},children:[{text:n.to("label")}]});this.children.add(i)}}var Ay=n(6985);var Cy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Cy.insert="head";Cy.singleton=true;var _y=Tl()(Ay.Z,Cy);const vy=Ay.Z.locals||{};class yy extends Ll{constructor(t){super(t);this.set("value",undefined);this.set("id",undefined);this.set("placeholder",undefined);this.set("isReadOnly",false);this.set("hasError",false);this.set("ariaDescribedById",undefined);this.focusTracker=new ul;this.bind("isFocused").to(this.focusTracker);this.set("isEmpty",true);this.set("inputMode","text");const e=this.bindTemplate;this.setTemplate({tag:"input",attributes:{class:["ck","ck-input",e.if("isFocused","ck-input_focused"),e.if("isEmpty","ck-input-text_empty"),e.if("hasError","ck-error")],id:e.to("id"),placeholder:e.to("placeholder"),readonly:e.to("isReadOnly"),inputmode:e.to("inputMode"),"aria-invalid":e.if("hasError",true),"aria-describedby":e.to("ariaDescribedById")},on:{input:e.to(((...t)=>{this.fire("input",...t);this._updateIsEmpty()})),change:e.to(this._updateIsEmpty.bind(this))}})}render(){super.render();this.focusTracker.add(this.element);this._setDomElementValue(this.value);this._updateIsEmpty();this.on("change:value",((t,e,n)=>{this._setDomElementValue(n);this._updateIsEmpty()}))}destroy(){super.destroy();this.focusTracker.destroy()}select(){this.element.select()}focus(){this.element.focus()}_updateIsEmpty(){this.isEmpty=xy(this.element)}_setDomElementValue(t){this.element.value=!t&&t!==0?"":t}}function xy(t){return!t.value}class Ey extends yy{constructor(t){super(t);this.extendTemplate({attributes:{type:"text",class:["ck-input-text"]}})}}class Dy extends yy{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")}})}}class Ty extends(null&&View){constructor(t){super(t);const e=this.bindTemplate;this.setTemplate({tag:"iframe",attributes:{class:["ck","ck-reset_all"],sandbox:"allow-same-origin allow-scripts"},on:{load:e.to("loaded")}})}render(){return new Promise((t=>{this.on("loaded",t);return super.render()}))}}var Sy=n(8111);var Iy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Iy.insert="head";Iy.singleton=true;var By=Tl()(Sy.Z,Iy);const My=Sy.Z.locals||{};class Ly extends Ll{constructor(t,e){super(t);const n=`ck-labeled-field-view-${I()}`;const i=`ck-labeled-field-view-status-${I()}`;this.fieldView=e(this,n,i);this.set("label",undefined);this.set("isEnabled",true);this.set("isEmpty",true);this.set("isFocused",false);this.set("errorText",null);this.set("infoText",null);this.set("class",undefined);this.set("placeholder",undefined);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 uy(this.locale);e.for=t;e.bind("text").to(this,"label");return e}_createStatusView(t){const e=new Ll(this.locale);const n=this.bindTemplate;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")}]});return e}focus(){this.fieldView.focus()}}function Ny(t,e,n){const i=new Ey(t.locale);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);return i}function zy(t,e,n){const i=new Dy(t.locale);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);return i}function Py(t,e,n){const i=yv(t.locale);i.set({id:e,ariaDescribedById:n});i.bind("isEnabled").to(t);return i}class Ry extends cu{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 Oy extends(mt()){constructor(t,e){super();if(e){af(this,e)}if(t){this.set(t)}}}const Vy='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M11.463 5.187a.888.888 0 1 1 1.254 1.255L9.16 10l3.557 3.557a.888.888 0 1 1-1.254 1.255L7.26 10.61a.888.888 0 0 1 .16-1.382l4.043-4.042z"/></svg>';const Fy='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M8.537 14.813a.888.888 0 1 1-1.254-1.255L10.84 10 7.283 6.442a.888.888 0 1 1 1.254-1.255L12.74 9.39a.888.888 0 0 1-.16 1.382l-4.043 4.042z"/></svg>';var jy=n(1757);var Hy={injectType:"singletonStyleTag",attributes:{"data-cke":true}};Hy.insert="head";Hy.singleton=true;var Uy=Tl()(jy.Z,Hy);const Wy=jy.Z.locals||{};var qy=n(3553);var $y={injectType:"singletonStyleTag",attributes:{"data-cke":true}};$y.insert="head";$y.singleton=true;var Gy=Tl()(qy.Z,$y);const Ky=qy.Z.locals||{};const Yy=pc("px");class Zy extends eu{static get pluginName(){return"ContextualBalloon"}constructor(t){super(t);this._view=null;this._rotatorView=null;this._fakePanelsView=null;this.positionLimiter=()=>{const t=this.editor.editing.view;const e=t.document;const n=e.selection.editableElement;if(n){return t.domConverter.mapViewToDom(n.root)}return null};this.set("visibleView",null);this._viewToStack=new Map;this._idToStack=new Map;this.set("_numberOfStacks",0);this.set("_singleViewMode",false);this._rotatorView=null;this._fakePanelsView=null}destroy(){super.destroy();if(this._view){this._view.destroy()}if(this._rotatorView){this._rotatorView.destroy()}if(this._fakePanelsView){this._fakePanelsView.destroy()}}get view(){if(!this._view){this._createPanelView()}return this._view}hasView(t){return Array.from(this._viewToStack.keys()).includes(t)}add(t){if(!this._view){this._createPanelView()}if(this.hasView(t.view)){throw new z("contextualballoon-add-view-exist",[this,t])}const e=t.stackId||"main";if(!this._idToStack.has(e)){this._idToStack.set(e,new Map([[t.view,t]]));this._viewToStack.set(t.view,this._idToStack.get(e));this._numberOfStacks=this._idToStack.size;if(!this._visibleStack||t.singleViewMode){this.showStack(e)}return}const n=this._idToStack.get(e);if(t.singleViewMode){this.showStack(e)}n.set(t.view,t);this._viewToStack.set(t.view,n);if(n===this._visibleStack){this._showView(t)}}remove(t){if(!this.hasView(t)){throw new z("contextualballoon-remove-view-not-exist",[this,t])}const e=this._viewToStack.get(t);if(this._singleViewMode&&this.visibleView===t){this._singleViewMode=false}if(this.visibleView===t){if(e.size===1){if(this._idToStack.size>1){this._showNextStack()}else{this.view.hide();this.visibleView=null;this._rotatorView.hideView()}}else{this._showView(Array.from(e.values())[e.size-2])}}if(e.size===1){this._idToStack.delete(this._getStackId(e));this._numberOfStacks=this._idToStack.size}else{e.delete(t)}this._viewToStack.delete(t)}updatePosition(t){if(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 z("contextualballoon-showstack-stack-not-exist",this)}if(this._visibleStack===e){return}this._showView(Array.from(e.values()).pop())}_createPanelView(){this._view=new Uv(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){const e=Array.from(this._idToStack.entries()).find((e=>e[1]===t));return e[0]}_showNextStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)+1;if(!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;if(!t[e]){e=t.length-1}this.showStack(this._getStackId(t[e]))}_createRotatorView(){const t=new Qy(this.editor.locale);const e=this.editor.locale.t;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",(()=>{if(t.focusTracker.isFocused){this.editor.editing.view.focus()}this._showNextStack()}));t.buttonPrevView.on("execute",(()=>{if(t.focusTracker.isFocused){this.editor.editing.view.focus()}this._showPrevStack()}));return t}_createFakePanelsView(){const t=new Jy(this.editor.locale,this.view);t.bind("numberOfPanels").to(this,"_numberOfStacks",this,"_singleViewMode",((t,e)=>{const n=!e&&t>=2;return n?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);return t}_showView({view:t,balloonClassName:e="",withArrow:n=true,singleViewMode:i=false}){this.view.class=e;this.view.withArrow=n;this._rotatorView.showView(t);this.visibleView=t;this.view.pin(this._getBalloonPosition());this._fakePanelsView.updatePosition();if(i){this._singleViewMode=true}}_getBalloonPosition(){let t=Array.from(this._visibleStack.values()).pop().position;if(t){if(!t.limiter){t=Object.assign({},t,{limiter:this.positionLimiter})}t=Object.assign({},t,{viewportOffsetConfig:this.editor.ui.viewportOffset})}return t}}class Qy extends Ll{constructor(t){super(t);const e=t.t;const n=this.bindTemplate;this.set("isNavigationVisible",true);this.focusTracker=new ul;this.buttonPrevView=this._createButtonView(e("Previous"),Vy);this.buttonNextView=this._createButtonView(e("Next"),Fy);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 kd(this.locale);n.set({label:t,icon:e,tooltip:true});return n}}class Jy extends Ll{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",Yy),left:n.to("left",Yy),width:n.to("width",Yy),height:n.to("height",Yy)}},children:this.content});this.on("change:numberOfPanels",((t,e,n,i)=>{if(n>i){this._addPanels(n-i)}else{this._removePanels(i-n)}this.updatePosition()}))}_addPanels(t){while(t--){const t=new Ll;t.setTemplate({tag:"div"});this.content.add(t);this.registerChild(t)}}_removePanels(t){while(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;const{width:n,height:i}=new dc(this._balloonPanelView.element);Object.assign(this,{top:t,left:e,width:n,height:i})}}}var Xy=n(3609);var tx={injectType:"singletonStyleTag",attributes:{"data-cke":true}};tx.insert="head";tx.singleton=true;var ex=Tl()(Xy.Z,tx);const nx=Xy.Z.locals||{};const ix=pc("px");class ox extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.set("isActive",false);this.set("isSticky",false);this.set("limiterElement",null);this.set("limiterBottomOffset",50);this.set("viewportTopOffset",0);this.set("_marginLeft",null);this.set("_isStickyToTheLimiter",false);this.set("_hasViewportTopOffset",false);this.content=this.createCollection();this._contentPanelPlaceholder=new zl({tag:"div",attributes:{class:["ck","ck-sticky-panel__placeholder"],style:{display:e.to("isSticky",(t=>t?"block":"none")),height:e.to("isSticky",(t=>t?ix(this._panelRect.height):null))}}}).render();this._contentPanel=new zl({tag:"div",attributes:{class:["ck","ck-sticky-panel__content",e.if("isSticky","ck-sticky-panel__content_sticky"),e.if("_isStickyToTheLimiter","ck-sticky-panel__content_sticky_bottom-limit")],style:{width:e.to("isSticky",(t=>t?ix(this._contentPanelPlaceholder.getBoundingClientRect().width):null)),top:e.to("_hasViewportTopOffset",(t=>t?ix(this.viewportTopOffset):null)),bottom:e.to("_isStickyToTheLimiter",(t=>t?ix(this.limiterBottomOffset):null)),marginLeft:e.to("_marginLeft")}},children:this.content}).render();this.setTemplate({tag:"div",attributes:{class:["ck","ck-sticky-panel"]},children:[this._contentPanelPlaceholder,this._contentPanel]})}render(){super.render();this._checkIfShouldBeSticky();this.listenTo(ic.window,"scroll",(()=>{this._checkIfShouldBeSticky()}));this.listenTo(this,"change:isActive",(()=>{this._checkIfShouldBeSticky()}))}_checkIfShouldBeSticky(){const t=this._panelRect=this._contentPanel.getBoundingClientRect();let e;if(!this.limiterElement){this.isSticky=false}else{e=this._limiterRect=this.limiterElement.getBoundingClientRect();this.isSticky=this.isActive&&e.top<this.viewportTopOffset&&this._panelRect.height+this.limiterBottomOffset<e.height}if(this.isSticky){this._isStickyToTheLimiter=e.bottom<t.height+this.limiterBottomOffset+this.viewportTopOffset;this._hasViewportTopOffset=!this._isStickyToTheLimiter&&!!this.viewportTopOffset;this._marginLeft=this._isStickyToTheLimiter?null:ix(-ic.window.scrollX)}else{this._isStickyToTheLimiter=false;this._hasViewportTopOffset=false;this._marginLeft=null}}}const rx=pc("px");class sx extends(null&&Plugin){static get pluginName(){return"BalloonToolbar"}static get requires(){return[ContextualBalloon]}constructor(t){super(t);this._balloonConfig=normalizeToolbarConfig(t.config.get("balloonToolbar"));this.toolbarView=this._createToolbarView();this.focusTracker=new FocusTracker;t.ui.once("ready",(()=>{this.focusTracker.add(t.ui.getEditableElement());this.focusTracker.add(this.toolbarView.element)}));t.ui.addToolbar(this.toolbarView,{beforeFocus:()=>this.show(true),afterBlur:()=>this.hide(),isContextual:true});this._resizeObserver=null;this._balloon=t.plugins.get(ContextualBalloon);this._fireSelectionChangeDebounced=debounce((()=>this.fire("_selectionChangeDebounced")),200);this.decorate("show")}init(){const t=this.editor;const e=t.model.document.selection;this.listenTo(this.focusTracker,"change:isFocused",((t,e,n)=>{const i=this._balloon.visibleView===this.toolbarView;if(!n&&i){this.hide()}else if(n){this.show()}}));this.listenTo(e,"change:range",((t,n)=>{if(n.directChange||e.isCollapsed){this.hide()}this._fireSelectionChangeDebounced()}));this.listenTo(this,"_selectionChangeDebounced",(()=>{if(this.editor.editing.view.document.isFocused){this.show()}}));if(!this._balloonConfig.shouldNotGroupWhenFull){this.listenTo(t,"ready",(()=>{const e=t.ui.view.editable.element;this._resizeObserver=new ResizeObserver(e,(t=>{this.toolbarView.maxWidth=rx(t.contentRect.width*.9)}))}))}this.listenTo(this.toolbarView,"groupedItemsUpdate",(()=>{this._updatePosition()}))}afterInit(){const t=this.editor.ui.componentFactory;this.toolbarView.fillFromConfig(this._balloonConfig,t)}_createToolbarView(){const t=this.editor.locale.t;const e=!this._balloonConfig.shouldNotGroupWhenFull;const n=new ToolbarView(this.editor.locale,{shouldGroupWhenFull:e,isFloating:true});n.ariaLabel=t("Editor contextual toolbar");n.render();return n}show(t=false){const e=this.editor;const n=e.model.document.selection;const i=e.model.schema;if(this._balloon.hasView(this.toolbarView)){return}if(n.isCollapsed&&!t){return}if(ax(n,i)){return}if(Array.from(this.toolbarView.items).every((t=>t.isEnabled!==undefined&&!t.isEnabled))){return}this.listenTo(this.editor.ui,"update",(()=>{this._updatePosition()}));this._balloon.add({view:this.toolbarView,position:this._getBalloonPositionData(),balloonClassName:"ck-toolbar-container"})}hide(){if(this._balloon.hasView(this.toolbarView)){this.stopListening(this.editor.ui,"update");this._balloon.remove(this.toolbarView)}}_getBalloonPositionData(){const t=this.editor;const e=t.editing.view;const n=e.document;const i=n.selection;const o=n.selection.isBackward;return{target:()=>{const t=o?i.getFirstRange():i.getLastRange();const n=Rect.getDomRangeRects(e.domConverter.viewRangeToDom(t));if(o){return n[0]}else{if(n.length>1&&n[n.length-1].width===0){n.pop()}return n[n.length-1]}},positions:this._getBalloonPositions(o)}}_updatePosition(){this._balloon.updatePosition(this._getBalloonPositionData())}destroy(){super.destroy();this.stopListening();this._fireSelectionChangeDebounced.cancel();this.toolbarView.destroy();this.focusTracker.destroy();if(this._resizeObserver){this._resizeObserver.destroy()}}_getBalloonPositions(t){const e=env.isSafari&&env.isiOS;const n=e?generatePositions({heightOffset:Math.max(BalloonPanelView.arrowHeightOffset,Math.round(20/global.window.visualViewport.scale))}):BalloonPanelView.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]}}function ax(t,e){if(t.rangeCount===1){return false}return[...t.getRanges()].every((t=>{const n=t.getContainedElement();return n&&e.isSelectable(n)}))}var cx=n(6706);var lx={injectType:"singletonStyleTag",attributes:{"data-cke":true}};lx.insert="head";lx.singleton=true;var dx=Tl()(cx.Z,lx);const ux=cx.Z.locals||{};const hx=pc("px");class gx extends(null&&ButtonView){constructor(t){super(t);const e=this.bindTemplate;this.isVisible=false;this.isToggleable=true;this.set("top",0);this.set("left",0);this.extendTemplate({attributes:{class:"ck-block-toolbar-button",style:{top:e.to("top",(t=>hx(t))),left:e.to("left",(t=>hx(t)))}}})}}const mx=pc("px");const{pilcrow:fx}=J_;class px extends(null&&Plugin){static get pluginName(){return"BlockToolbar"}constructor(t){super(t);this._blockToolbarConfig=normalizeToolbarConfig(this.editor.config.get("blockToolbar"));this.toolbarView=this._createToolbarView();this.panelView=this._createPanelView();this.buttonView=this._createButtonView();this._resizeObserver=null;clickOutsideHandler({emitter:this.panelView,contextElements:[this.panelView.element,this.buttonView.element],activator:()=>this.panelView.isVisible,callback:()=>this._hidePanel()})}init(){const t=this.editor;this.listenTo(t.model.document.selection,"change:range",((t,e)=>{if(e.directChange){this._hidePanel()}}));this.listenTo(t.ui,"update",(()=>this._updateButton()));this.listenTo(t,"change:isReadOnly",(()=>this._updateButton()),{priority:"low"});this.listenTo(t.ui.focusTracker,"change:isFocused",(()=>this._updateButton()));this.listenTo(this.buttonView,"change:isVisible",((t,e,n)=>{if(n){this.buttonView.listenTo(window,"resize",(()=>this._updateButton()))}else{this.buttonView.stopListening(window,"resize");this._hidePanel()}}));t.ui.addToolbar(this.toolbarView,{beforeFocus:()=>this._showPanel(),afterBlur:()=>this._hidePanel()})}afterInit(){const t=this.editor.ui.componentFactory;const e=this._blockToolbarConfig;this.toolbarView.fillFromConfig(e,t);for(const t of this.toolbarView.items){t.on("execute",(()=>this._hidePanel(true)),{priority:"high"})}if(!e.shouldNotGroupWhenFull){this.listenTo(this.editor,"ready",(()=>{const t=this.editor.ui.view.editable.element;this._resizeObserver=new ResizeObserver(t,(()=>{this.toolbarView.maxWidth=this._getToolbarMaxWidth()}))}))}}destroy(){super.destroy();this.panelView.destroy();this.buttonView.destroy();this.toolbarView.destroy();if(this._resizeObserver){this._resizeObserver.destroy()}}_createToolbarView(){const t=this.editor.locale.t;const e=!this._blockToolbarConfig.shouldNotGroupWhenFull;const n=new ToolbarView(this.editor.locale,{shouldGroupWhenFull:e,isFloating:true});n.ariaLabel=t("Editor block content toolbar");n.focusTracker.on("change:isFocused",((t,e,n)=>{if(!n){this._hidePanel()}}));return n}_createPanelView(){const t=this.editor;const e=new BalloonPanelView(t.locale);e.content.add(this.toolbarView);e.class="ck-toolbar-container";t.ui.view.body.add(e);t.ui.focusTracker.add(e.element);this.toolbarView.keystrokes.set("Esc",((t,e)=>{this._hidePanel(true);e()}));return e}_createButtonView(){const t=this.editor;const e=t.t;const n=new BlockButtonView(t.locale);const i=n.bindTemplate;n.set({label:e("Edit block"),icon:fx,withText:false});n.extendTemplate({on:{mousedown:i.to((t=>{if(env.isSafari&&this.panelView.isVisible){this.toolbarView.focus()}t.preventDefault()}))}});n.bind("isOn").to(this.panelView,"isVisible");n.bind("tooltip").to(this.panelView,"isVisible",(t=>!t));this.listenTo(n,"execute",(()=>{if(!this.panelView.isVisible){this._showPanel()}else{this._hidePanel(true)}}));t.ui.view.body.add(n);t.ui.focusTracker.add(n.element);return n}_updateButton(){const t=this.editor;const e=t.model;const n=t.editing.view;if(!t.ui.focusTracker.isFocused){this._hideButton();return}if(t.isReadOnly){this._hideButton();return}const i=Array.from(e.document.selection.getSelectedBlocks())[0];if(!i||Array.from(this.toolbarView.items).every((t=>!t.isEnabled))){this._hideButton();return}const o=n.domConverter.mapViewToDom(t.editing.mapper.toViewElement(i));this.buttonView.isVisible=true;this._attachButtonToElement(o);if(this.panelView.isVisible){this._showPanel()}}_hideButton(){this.buttonView.isVisible=false}_showPanel(){if(!this.buttonView.isVisible){return}const t=this.panelView.isVisible;this.panelView.show();this.toolbarView.maxWidth=this._getToolbarMaxWidth();this.panelView.pin({target:this.buttonView.element,limiter:this.editor.ui.getEditableElement()});if(!t){this.toolbarView.items.get(0).focus()}}_hidePanel(t){this.panelView.isVisible=false;if(t){this.editor.editing.view.focus()}}_attachButtonToElement(t){const e=window.getComputedStyle(t);const n=new Rect(this.editor.ui.getEditableElement());const i=parseInt(e.paddingTop,10);const o=parseInt(e.lineHeight,10)||parseInt(e.fontSize,10)*1.2;const r=getOptimalPosition({element:this.buttonView.element,target:t,positions:[(t,e)=>{let r;if(this.editor.locale.uiLanguageDirection==="ltr"){r=n.left-e.width}else{r=n.right}return{top:t.top+i+(o-e.height)/2,left:r}}]});this.buttonView.top=r.top;this.buttonView.left=r.left}_getToolbarMaxWidth(){const t=this.editor.ui.view.editable.element;const e=new Rect(t);const n=new Rect(this.buttonView.element);const i=this.editor.locale.uiLanguageDirection==="rtl";const o=i?n.left-e.right+n.width:e.left-n.left;return mx(e.width+o)}}class bx extends ty{constructor(t,e){super(t);this.view=e;this._toolbarConfig=tu(t.config.get("toolbar"));this._elementReplacer=new xt}get element(){return this.view.element}init(t){const e=this.editor;const n=this.view;const i=e.editing.view;const o=n.editable;const r=i.document.getRoot();o.name=r.rootName;n.render();const s=o.element;this.setEditableElement(o.name,s);n.editable.bind("isFocused").to(this.focusTracker);i.attachDomRoot(s);if(t){this._elementReplacer.replace(t,this.element)}this._initPlaceholder();this._initToolbar();this.fire("ready")}destroy(){super.destroy();const t=this.view;const e=this.editor.editing.view;this._elementReplacer.restore();e.detachDomRoot(t.editable.name);t.destroy()}_initToolbar(){const t=this.view;t.stickyPanel.bind("isActive").to(this.focusTracker,"isFocused");t.stickyPanel.limiterElement=t.element;t.stickyPanel.bind("viewportTopOffset").to(this,"viewportOffset",(({top:t})=>t||0));t.toolbar.fillFromConfig(this._toolbarConfig,this.componentFactory);this.addToolbar(t.toolbar)}_initPlaceholder(){const t=this.editor;const e=t.editing.view;const n=e.document.getRoot();const i=t.sourceElement;const o=t.config.get("placeholder")||i&&i.tagName.toLowerCase()==="textarea"&&i.getAttribute("placeholder");if(o){mu({view:e,element:n,text:o,isDirectHost:false,keepOnFocus:true})}}}var kx=n(3638);var wx={injectType:"singletonStyleTag",attributes:{"data-cke":true}};wx.insert="head";wx.singleton=true;var Ax=Tl()(kx.Z,wx);const Cx=kx.Z.locals||{};class _x extends hy{constructor(t,e,n={}){super(t);this.stickyPanel=new ox(t);this.toolbar=new rv(t,{shouldGroupWhenFull:n.shouldToolbarGroupWhenFull});this.editable=new my(t,e)}render(){super.render();this.stickyPanel.content.add(this.toolbar);this.top.add(this.stickyPanel);this.main.add(this.editable)}}class vx extends(m_(f_(u_))){constructor(t,e={}){if(!xx(t)&&e.initialData!==undefined){throw new z("editor-create-initial-data",null)}super(e);if(this.config.get("initialData")===undefined){this.config.set("initialData",yx(t))}if(xx(t)){this.sourceElement=t}this.model.document.createRoot();const n=!this.config.get("toolbar.shouldNotGroupWhenFull");const i=new _x(this.locale,this.editing.view,{shouldToolbarGroupWhenFull:n});this.ui=new bx(this,i);h_(this)}destroy(){if(this.sourceElement){this.updateSourceElement()}this.ui.destroy();return super.destroy()}static create(t,e={}){return new Promise((n=>{const i=new this(t,e);n(i.initPlugins().then((()=>i.ui.init(xx(t)?t:null))).then((()=>i.data.init(i.config.get("initialData")))).then((()=>i.fire("ready"))).then((()=>i)))}))}}function yx(t){return xx(t)?rc(t):t}function xx(t){return qa(t)}const Ex=["left","right","center","justify"];function Dx(t){return Ex.includes(t)}function Tx(t,e){if(e.contentLanguageDirection=="rtl"){return t==="right"}else{return t==="left"}}function Sx(t){const e=t.map((t=>{let e;if(typeof t=="string"){e={name:t}}else{e=t}return e})).filter((t=>{const e=Ex.includes(t.name);if(!e){P("alignment-config-name-not-recognized",{option:t})}return e}));const n=e.filter((t=>Boolean(t.className))).length;if(n&&n<e.length){throw new z("alignment-config-classnames-are-missing",{configuredOptions:t})}e.forEach(((e,n,i)=>{const o=i.slice(n+1);const r=o.some((t=>t.name==e.name));if(r){throw new z("alignment-config-name-already-defined",{option:e,configuredOptions:t})}if(e.className){const n=o.some((t=>t.className==e.className));if(n){throw new z("alignment-config-classname-already-defined",{option:e,configuredOptions:t})}}}));return e}const Ix="alignment";class Bx extends iu{refresh(){const t=this.editor;const e=t.locale;const n=dl(this.editor.model.document.selection.getSelectedBlocks());this.isEnabled=Boolean(n)&&this._canBeAligned(n);if(this.isEnabled&&n.hasAttribute("alignment")){this.value=n.getAttribute("alignment")}else{this.value=e.contentLanguageDirection==="rtl"?"right":"left"}}execute(t={}){const e=this.editor;const n=e.locale;const i=e.model;const o=i.document;const r=t.value;i.change((t=>{const e=Array.from(o.selection.getSelectedBlocks()).filter((t=>this._canBeAligned(t)));const i=e[0].getAttribute("alignment");const s=Tx(r,n)||i===r||!r;if(s){Mx(e,t)}else{Lx(e,t,r)}}))}_canBeAligned(t){return this.editor.model.schema.checkAttribute(t,Ix)}}function Mx(t,e){for(const n of t){e.removeAttribute(Ix,n)}}function Lx(t,e,n){for(const i of t){e.setAttribute(Ix,n,i)}}class Nx extends eu{static get pluginName(){return"AlignmentEditing"}constructor(t){super(t);t.config.define("alignment",{options:Ex.map((t=>({name:t})))})}init(){const t=this.editor;const e=t.locale;const n=t.model.schema;const i=Sx(t.config.get("alignment.options"));const o=i.filter((t=>Dx(t.name)&&!Tx(t.name,e)));const r=o.some((t=>!!t.className));n.extend("$block",{allowAttributes:"alignment"});t.model.schema.setAttributeProperties("alignment",{isFormatting:true});if(r){t.conversion.attributeToAttribute(Ox(o))}else{t.conversion.for("downcast").attributeToAttribute(zx(o))}const s=Px(o);for(const e of s){t.conversion.for("upcast").attributeToAttribute(e)}const a=Rx(o);for(const e of a){t.conversion.for("upcast").attributeToAttribute(e)}t.commands.add("alignment",new Bx(t))}}function zx(t){const e={};for(const{name:n}of t){e[n]={key:"style",value:{"text-align":n}}}const n={model:{key:"alignment",values:t.map((t=>t.name))},view:e};return n}function Px(t){const e=[];for(const{name:n}of t){e.push({view:{key:"style",value:{"text-align":n}},model:{key:"alignment",value:n}})}return e}function Rx(t){const e=[];for(const{name:n}of t){e.push({view:{key:"align",value:n},model:{key:"alignment",value:n}})}return e}function Ox(t){const e={};for(const n of t){e[n.name]={key:"class",value:n.className}}const n={model:{key:"alignment",values:t.map((t=>t.name))},view:e};return n}const Vx=new Map([["left",J_.alignLeft],["right",J_.alignRight],["center",J_.alignCenter],["justify",J_.alignJustify]]);class Fx extends eu{get localizedOptionTitles(){const t=this.editor.t;return{left:t("Align left"),right:t("Align right"),center:t("Align center"),justify:t("Justify")}}static get pluginName(){return"AlignmentUI"}init(){const t=this.editor;const e=t.ui.componentFactory;const n=t.t;const i=Sx(t.config.get("alignment.options"));i.map((t=>t.name)).filter(Dx).forEach((t=>this._addButton(t)));e.add("alignment",(o=>{const r=yv(o);xv(r,(()=>i.map((t=>e.create(`alignment:${t.name}`)))),{enableActiveItemFocusOnDropdownOpen:true,isVertical:true,ariaLabel:n("Text alignment toolbar")});r.buttonView.set({label:n("Text alignment"),tooltip:true});r.extendTemplate({attributes:{class:"ck-alignment-dropdown"}});const s=o.contentLanguageDirection==="rtl"?Vx.get("right"):Vx.get("left");const a=t.commands.get("alignment");r.buttonView.bind("icon").to(a,"value",(t=>Vx.get(t)||s));r.bind("isEnabled").to(a,"isEnabled");this.listenTo(r,"execute",(()=>{t.editing.view.focus()}));return r}))}_addButton(t){const e=this.editor;e.ui.componentFactory.add(`alignment:${t}`,(n=>{const i=e.commands.get("alignment");const o=new kd(n);o.set({label:this.localizedOptionTitles[t],icon:Vx.get(t),tooltip:true,isToggleable:true});o.bind("isEnabled").to(i);o.bind("isOn").to(i,"value",(e=>e===t));this.listenTo(o,"execute",(()=>{e.execute("alignment",{value:t});e.editing.view.focus()}));return o}))}}class jx extends eu{static get requires(){return[Nx,Fx]}static get pluginName(){return"Alignment"}}class Hx{constructor(t,e=20){this._batch=null;this.model=t;this._size=0;this.limit=e;this._isLocked=false;this._changeCallback=(t,e)=>{if(e.isLocal&&e.isUndoable&&e!==this._batch){this._reset(true)}};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(){if(!this._batch){this._batch=this.model.createBatch({isTyping:true})}return this._batch}get size(){return this._size}input(t){this._size+=t;if(this._size>=this.limit){this._reset(true)}}get isLocked(){return this._isLocked}lock(){this._isLocked=true}unlock(){this._isLocked=false}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=false){if(!this.isLocked||t){this._batch=null;this._size=0}}}class Ux extends iu{constructor(t,e){super(t);this._buffer=new Hx(t.model,e)}get buffer(){return this._buffer}destroy(){super.destroy();this._buffer.destroy()}execute(t={}){const e=this.editor.model;const n=e.document;const i=t.text||"";const o=i.length;let r=n.selection;if(t.selection){r=t.selection}else if(t.range){r=e.createSelection(t.range)}const s=t.resultRange;e.enqueueChange(this._buffer.batch,(t=>{this._buffer.lock();e.deleteContent(r);if(i){e.insertContent(t.createText(i,n.selection.getAttributes()),r)}if(s){t.setSelection(s)}else if(!r.is("documentSelection")){t.setSelection(r)}this._buffer.unlock();this._buffer.input(o)}))}}const Wx=["insertText","insertReplacementText"];class qx extends rf{constructor(t){super(t);if(l.isAndroid){Wx.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(!Wx.includes(s)){return}const c=new T(e,"insertText");e.fire(c,new cf(t,a,{text:o,selection:t.createSelection(r)}));if(c.stop.called){n.stop()}}));e.on("compositionend",((n,{data:i,domEvent:o})=>{if(!this.isEnabled||l.isAndroid){return}if(!i){return}e.fire("insertText",new cf(t,o,{text:i,selection:e.selection}))}),{priority:"lowest"})}observe(){}}class $x extends eu{static get pluginName(){return"Input"}init(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=e.document.selection;n.addObserver(qx);const o=new Ux(t,t.config.get("typing.undoStep")||20);t.commands.add("insertText",o);t.commands.add("input",o);this.listenTo(n.document,"insertText",((i,o)=>{if(!n.document.isComposing){o.preventDefault()}const{text:r,selection:s,resultRange:a}=o;const c=Array.from(s.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));let d=r;if(l.isAndroid){const t=Array.from(c[0].getItems()).reduce(((t,e)=>t+(e.is("$textProxy")?e.data:"")),"");if(t){if(t.length<=d.length){if(d.startsWith(t)){d=d.substring(t.length);c[0].start=c[0].start.getShiftedBy(t.length)}}else{if(t.startsWith(d)){c[0].start=c[0].start.getShiftedBy(d.length);d=""}}}}const u={text:d,selection:e.createSelection(c)};if(a){u.resultRange=t.editing.mapper.toModelRange(a)}t.execute("insertText",u)}));if(l.isAndroid){this.listenTo(n.document,"keydown",((t,r)=>{if(i.isCollapsed||r.keyCode!=229||!n.document.isComposing){return}Gx(e,o)}))}else{this.listenTo(n.document,"compositionstart",(()=>{if(i.isCollapsed){return}Gx(e,o)}))}}}function Gx(t,e){if(!e.isEnabled){return}const n=e.buffer;n.lock();t.enqueueChange(n.batch,(()=>{t.deleteContent(t.document.selection)}));n.unlock()}class Kx extends iu{constructor(t,e){super(t);this.direction=e;this._buffer=new Hx(t.model,t.config.get("typing.undoStep"))}get buffer(){return this._buffer}execute(t={}){const e=this.editor.model;const n=e.document;e.enqueueChange(this._buffer.batch,(i=>{this._buffer.lock();const o=i.createSelection(t.selection||n.selection);const r=t.sequence||1;const s=o.isCollapsed;if(o.isCollapsed){e.modifySelection(o,{direction:this.direction,unit:t.unit,treatEmojiAsSingleUnit:true})}if(this._shouldEntireContentBeReplacedWithParagraph(r)){this._replaceEntireContentWithParagraph(i);return}if(this._shouldReplaceFirstBlockWithParagraph(o,r)){this.editor.execute("paragraph",{selection:o});return}if(o.isCollapsed){return}let a=0;o.getFirstRange().getMinimalFlatRanges().forEach((t=>{a+=Et(t.getWalker({singleCharacters:true,ignoreElementEnd:true,shallow:true}))}));e.deleteContent(o,{doNotResetEntireContent:s,direction:this.direction});this._buffer.input(a);i.setSelection(o);this._buffer.unlock()}))}_shouldEntireContentBeReplacedWithParagraph(t){if(t>1){return false}const e=this.editor.model;const n=e.document;const i=n.selection;const o=e.schema.getLimitElement(i);const r=i.isCollapsed&&i.containsEntireContent(o);if(!r){return false}if(!e.schema.checkChild(o,"paragraph")){return false}const s=o.getChild(0);if(s&&s.is("element","paragraph")){return false}return true}_replaceEntireContentWithParagraph(t){const e=this.editor.model;const n=e.document;const i=n.selection;const o=e.schema.getLimitElement(i);const r=t.createElement("paragraph");t.remove(t.createRangeIn(o));t.insert(r,o);t.setSelection(r,0)}_shouldReplaceFirstBlockWithParagraph(t,e){const n=this.editor.model;if(e>1||this.direction!="backward"){return false}if(!t.isCollapsed){return false}const i=t.getFirstPosition();const o=n.schema.getLimitElement(i);const r=o.getChild(0);if(i.parent!=r){return false}if(!t.containsEntireContent(r)){return false}if(!n.schema.checkChild(o,"paragraph")){return false}if(r.name=="paragraph"){return false}return true}}const Yx="character";const Zx="word";const Qx="codePoint";const Jx="selection";const Xx="backward";const tE="forward";const eE={deleteContent:{unit:Jx,direction:Xx},deleteContentBackward:{unit:Qx,direction:Xx},deleteWordBackward:{unit:Zx,direction:Xx},deleteHardLineBackward:{unit:Jx,direction:Xx},deleteSoftLineBackward:{unit:Jx,direction:Xx},deleteContentForward:{unit:Yx,direction:tE},deleteWordForward:{unit:Zx,direction:tE},deleteHardLineForward:{unit:Jx,direction:tE},deleteSoftLineForward:{unit:Jx,direction:tE}};class nE extends rf{constructor(t){super(t);const e=t.document;let n=0;e.on("keydown",(()=>{n++}));e.on("keyup",(()=>{n=0}));e.on("beforeinput",((i,o)=>{if(!this.isEnabled){return}const{targetRanges:r,domEvent:s,inputType:a}=o;const c=eE[a];if(!c){return}const d={direction:c.direction,unit:c.unit,sequence:n};if(d.unit==Jx){d.selectionToRemove=t.createSelection(r[0])}if(l.isAndroid&&a==="deleteContentBackward"){d.sequence=1;if(r.length==1&&(r[0].start.parent!=r[0].end.parent||r[0].start.offset+1!=r[0].end.offset)){d.unit=Jx;d.selectionToRemove=t.createSelection(r)}}const u=new Hg(e,"delete",r[0]);e.fire(u,new cf(t,s,d));if(u.stop.called){i.stop()}}));if(l.isBlink){iE(this)}}observe(){}}function iE(t){const e=t.view;const n=e.document;let i=null;let o=false;n.on("keydown",((t,{keyCode:e})=>{i=e;o=false}));n.on("keyup",((a,{keyCode:c,domEvent:l})=>{const d=n.selection;const u=t.isEnabled&&c==i&&r(c)&&!d.isCollapsed&&!o;i=null;if(u){const t=d.getFirstRange();const i=new Hg(n,"delete",t);const o={unit:Jx,direction:s(c),selectionToRemove:d};n.fire(i,new cf(e,l,o))}}));n.on("beforeinput",((t,{inputType:e})=>{const n=eE[e];const a=r(i)&&n&&n.direction==s(i);if(a){o=true}}),{priority:"high"});n.on("beforeinput",((t,{inputType:e,data:n})=>{const o=i==Hc["delete"]&&e=="insertText"&&n=="";if(o){t.stop()}}),{priority:"high"});function r(t){return t==Hc.backspace||t==Hc["delete"]}function s(t){return t==Hc.backspace?Xx:tE}}class oE extends eu{static get pluginName(){return"Delete"}init(){const t=this.editor;const e=t.editing.view;const n=e.document;const i=t.model.document;e.addObserver(nE);this._undoOnBackspace=false;const o=new Kx(t,"forward");t.commands.add("deleteForward",o);t.commands.add("forwardDelete",o);t.commands.add("delete",new Kx(t,"backward"));this.listenTo(n,"delete",((i,o)=>{if(!n.isComposing){o.preventDefault()}const{direction:r,sequence:s,selectionToRemove:a,unit:c}=o;const l=r==="forward"?"deleteForward":"delete";const d={sequence:s};if(c=="selection"){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"});if(this.editor.plugins.has("UndoEditing")){this.listenTo(n,"delete",((e,n)=>{if(this._undoOnBackspace&&n.direction=="backward"&&n.sequence==1&&n.unit=="codePoint"){this._undoOnBackspace=false;t.execute("undo");n.preventDefault();e.stop()}}),{context:"$capture"});this.listenTo(i,"change",(()=>{this._undoOnBackspace=false}))}}requestUndoOnBackspace(){if(this.editor.plugins.has("UndoEditing")){this._undoOnBackspace=true}}}class rE extends eu{static get requires(){return[$x,oE]}static get pluginName(){return"Typing"}}function sE(t,e){let n=t.start;const i=Array.from(t.getItems()).reduce(((t,i)=>{if(!(i.is("$text")||i.is("$textProxy"))){n=e.createPositionAfter(i);return""}return t+i.data}),"");return{text:i,range:e.createRange(n,t.end)}}class aE extends(mt()){constructor(t,e){super();this.model=t;this.testCallback=e;this._hasMatch=false;this.set("isEnabled",true);this.on("change:isEnabled",(()=>{if(this.isEnabled){this._startListening()}else{this.stopListening(t.document.selection);this.stopListening(t.document)}}));this._startListening()}get hasMatch(){return this._hasMatch}_startListening(){const t=this.model;const e=t.document;this.listenTo(e.selection,"change:range",((t,{directChange:n})=>{if(!n){return}if(!e.selection.isCollapsed){if(this.hasMatch){this.fire("unmatched");this._hasMatch=false}return}this._evaluateTextBeforeSelection("selection")}));this.listenTo(e,"change:data",((t,e)=>{if(e.isUndo||!e.isLocal){return}this._evaluateTextBeforeSelection("data",{batch:e})}))}_evaluateTextBeforeSelection(t,e={}){const n=this.model;const i=n.document;const o=i.selection;const r=n.createRange(n.createPositionAt(o.focus.parent,0),o.focus);const{text:s,range:a}=sE(r,n);const c=this.testCallback(s);if(!c&&this.hasMatch){this.fire("unmatched")}this._hasMatch=!!c;if(c){const n=Object.assign(e,{text:s,range:a});if(typeof c=="object"){Object.assign(n,c)}this.fire(`matched:${t}`,n)}}}class cE extends eu{static get pluginName(){return"TwoStepCaretMovement"}constructor(t){super(t);this.attributes=new Set;this._overrideUid=null}init(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=t.locale;const 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==Hc.arrowright;const r=e.keyCode==Hc.arrowleft;if(!n&&!r){return}const s=i.contentLanguageDirection;let a=false;if(s==="ltr"&&n||s==="rtl"&&r){a=this._handleForwardMovement(e)}else{a=this._handleBackwardMovement(e)}if(a===true){t.stop()}}),{context:"$text",priority:"highest"});this._isNextGravityRestorationSkipped=false;this.listenTo(o,"change:range",((t,e)=>{if(this._isNextGravityRestorationSkipped){this._isNextGravityRestorationSkipped=false;return}if(!this._isGravityOverridden){return}if(!e.directChange&&gE(o.getFirstPosition(),this.attributes)){return}this._restoreGravity()}))}registerAttribute(t){this.attributes.add(t)}_handleForwardMovement(t){const e=this.attributes;const n=this.editor.model;const i=n.document.selection;const o=i.getFirstPosition();if(this._isGravityOverridden){return false}if(o.isAtStart&&lE(i,e)){return false}if(gE(o,e)){uE(t);this._overrideGravity();return true}return false}_handleBackwardMovement(t){const e=this.attributes;const n=this.editor.model;const i=n.document.selection;const o=i.getFirstPosition();if(this._isGravityOverridden){uE(t);this._restoreGravity();dE(n,e,o);return true}else{if(o.isAtStart){if(lE(i,e)){uE(t);dE(n,e,o);return true}return false}if(hE(o,e)){if(o.isAtEnd&&!lE(i,e)&&gE(o,e)){uE(t);dE(n,e,o);return true}this._isNextGravityRestorationSkipped=true;this._overrideGravity();return false}}return false}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 lE(t,e){for(const n of e){if(t.hasAttribute(n)){return true}}return false}function dE(t,e,n){const i=n.nodeBefore;t.change((t=>{if(i){t.setSelectionAttribute(i.getAttributes())}else{t.removeSelectionAttribute(e)}}))}function uE(t){t.preventDefault()}function hE(t,e){const n=t.getShiftedBy(-1);return gE(n,e)}function gE(t,e){const{nodeBefore:n,nodeAfter:i}=t;for(const t of e){const e=n?n.getAttribute(t):undefined;const o=i?i.getAttribute(t):undefined;if(o!==e){return true}}return false}var mE=/[\\^$.*+?()[\]{}|]/g,fE=RegExp(mE.source);function pE(t){t=dh(t);return t&&fE.test(t)?t.replace(mE,"\\$&"):t}const bE=pE;const kE={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:xE('"'),to:[null,"“",null,"”"]},quotesSecondary:{from:xE("'"),to:[null,"‘",null,"’"]},quotesPrimaryEnGb:{from:xE("'"),to:[null,"‘",null,"’"]},quotesSecondaryEnGb:{from:xE('"'),to:[null,"“",null,"”"]},quotesPrimaryPl:{from:xE('"'),to:[null,"„",null,"”"]},quotesSecondaryPl:{from:xE("'"),to:[null,"‚",null,"’"]}};const wE={symbols:["copyright","registeredTrademark","trademark"],mathematical:["oneHalf","oneThird","twoThirds","oneForth","threeQuarters","lessThanOrEqual","greaterThanOrEqual","notEqual","arrowLeft","arrowRight"],typography:["horizontalEllipsis","enDash","emDash"],quotes:["quotesPrimary","quotesSecondary"]};const AE=["symbols","mathematical","typography","quotes"];class CE extends eu{static get requires(){return["Delete","Input"]}static get pluginName(){return"TextTransformation"}constructor(t){super(t);t.config.define("typing",{transformations:{include:AE}})}init(){const t=this.editor.model;const e=t.document.selection;e.on("change:range",(()=>{this.isEnabled=!e.anchor.parent.is("element","codeBlock")}));this._enableTransformationWatchers()}_enableTransformationWatchers(){const t=this.editor;const e=t.model;const n=t.plugins.get("Delete");const i=EE(t.config.get("typing.transformations"));const o=t=>{for(const e of i){const n=e.from;const i=n.test(t);if(i){return{normalizedTransformation:e}}}};const r=new aE(t.model,o);r.on("matched:data",((t,i)=>{if(!i.batch.isTyping){return}const{from:o,to:r}=i.normalizedTransformation;const s=o.exec(i.text);const a=r(s.slice(1));const c=i.range;let l=s.index;e.enqueueChange((t=>{for(let n=1;n<s.length;n++){const i=s[n];const o=a[n-1];if(o==null){l+=i.length;continue}const r=c.start.getShiftedBy(l);const d=e.createRange(r,r.getShiftedBy(i.length));const u=yE(r);e.insertContent(t.createText(o,u),d);l+=o.length}e.enqueueChange((()=>{n.requestUndoOnBackspace()}))}))}));r.bind("isEnabled").to(this)}}function _E(t){if(typeof t=="string"){return new RegExp(`(${bE(t)})$`)}return t}function vE(t){if(typeof t=="string"){return()=>[t]}else if(t instanceof Array){return()=>t}return t}function yE(t){const e=t.textNode?t.textNode:t.nodeAfter;return e.getAttributes()}function xE(t){return new RegExp(`(^|\\s)(${t})([^${t}]*)(${t})$`)}function EE(t){const e=t.extra||[];const n=t.remove||[];const i=t=>!n.includes(t);const o=t.include.concat(e).filter(i);return DE(o).filter(i).map((t=>typeof t=="string"&&kE[t]?kE[t]:t)).filter((t=>typeof t==="object")).map((t=>({from:_E(t.from),to:vE(t.to)})))}function DE(t){const e=new Set;for(const n of t){if(typeof n=="string"&&wE[n]){for(const t of wE[n]){e.add(t)}}else{e.add(n)}}return Array.from(e)}function TE(t,e,n,i){return i.createRange(SE(t,e,n,true,i),SE(t,e,n,false,i))}function SE(t,e,n,i,o){let r=t.textNode||(i?t.nodeBefore:t.nodeAfter);let s=null;while(r&&r.getAttribute(e)==n){s=r;r=i?r.previousSibling:r.nextSibling}return s?o.createPositionAt(s,i?"before":"after"):t}function IE(t,e,n,i){const o=t.editing.view;const r=new Set;o.document.registerPostFixer((o=>{const s=t.model.document.selection;let a=false;if(s.hasAttribute(e)){const c=TE(s.getFirstPosition(),e,s.getAttribute(e),t.model);const l=t.editing.mapper.toViewRange(c);for(const t of l.getItems()){if(t.is("element",n)&&!t.hasClass(i)){o.addClass(i,t);r.add(t);a=true}}}return a}));t.conversion.for("editingDowncast").add((t=>{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 e(){o.change((t=>{for(const e of r.values()){t.removeClass(i,e);r.delete(e)}}))}}))}function BE(t,e,n,i){let o;let r=null;if(typeof i=="function"){o=i}else{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=dl(t.model.document.selection.getRanges());if(!c.isCollapsed){return}if(a.isUndo||!a.isLocal){return}const l=Array.from(t.model.document.differ.getChanges());const d=l[0];if(l.length!=1||d.type!=="insert"||d.name!="$text"||d.length!=1){return}const u=d.position.parent;if(u.is("element","codeBlock")){return}if(u.is("element","listItem")&&typeof i!=="function"&&!["numberedList","bulletedList","todoList"].includes(i)){return}if(r&&r.value===true){return}const h=u.getChild(0);const g=t.model.createRangeOn(h);if(!g.containsRange(c)&&!c.end.isEqual(g.end)){return}const m=n.exec(h.data.substr(0,c.end.offset));if(!m){return}t.model.enqueueChange((e=>{const n=e.createPositionAt(u,0);const i=e.createPositionAt(u,m[0].length);const r=new kb(n,i);const s=o({match:m});if(s!==false){e.remove(r);const n=t.model.document.selection.getFirstRange();const i=e.createRangeIn(u);if(u.isEmpty&&!i.isEqual(n)&&!i.containsRange(n,true)){e.remove(u)}}r.detach();t.model.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}))}))}function ME(t,e,n,i){let o;let r;if(n instanceof RegExp){o=n}else{r=n}r=r||(t=>{let e;const n=[];const i=[];while((e=o.exec(t))!==null){if(e&&e.length<4){break}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];const 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;const a=s.document.selection;if(!a.isCollapsed){return}const c=Array.from(s.document.differ.getChanges());const l=c[0];if(c.length!=1||l.type!=="insert"||l.name!="$text"||l.length!=1){return}const d=a.focus;const u=d.parent;const{text:h,range:g}=NE(s.createRange(s.createPositionAt(u,0),d),s);const m=r(h);const f=LE(g.start,m.format,s);const p=LE(g.start,m.remove,s);if(!(f.length&&p.length)){return}s.enqueueChange((e=>{const n=i(e,f);if(n===false){return}for(const t of p.reverse()){e.remove(t)}s.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}))}))}function LE(t,e,n){return e.filter((t=>t[0]!==undefined&&t[1]!==undefined)).map((e=>n.createRange(t.getShiftedBy(e[0]),t.getShiftedBy(e[1]))))}function NE(t,e){let n=t.start;const i=Array.from(t.getItems()).reduce(((t,i)=>{if(!(i.is("$text")||i.is("$textProxy"))||i.getAttribute("code")){n=e.createPositionAfter(i);return""}return t+i.data}),"");return{text:i,range:e.createRange(n,t.end)}}class zE extends eu{static get requires(){return[oE]}static get pluginName(){return"Autoformat"}afterInit(){this._addListAutoformats();this._addBasicStylesAutoformats();this._addHeadingAutoformats();this._addBlockQuoteAutoformats();this._addCodeBlockAutoformats();this._addHorizontalLineAutoformats()}_addListAutoformats(){const t=this.editor.commands;if(t.get("bulletedList")){BE(this.editor,this,/^[*-]\s$/,"bulletedList")}if(t.get("numberedList")){BE(this.editor,this,/^1[.|)]\s$/,"numberedList")}if(t.get("todoList")){BE(this.editor,this,/^\[\s?\]\s$/,"todoList")}if(t.get("checkTodoList")){BE(this.editor,this,/^\[\s?x\s?\]\s$/,(()=>{this.editor.execute("todoList");this.editor.execute("checkTodoList")}))}}_addBasicStylesAutoformats(){const t=this.editor.commands;if(t.get("bold")){const t=PE(this.editor,"bold");ME(this.editor,this,/(?:^|\s)(\*\*)([^*]+)(\*\*)$/g,t);ME(this.editor,this,/(?:^|\s)(__)([^_]+)(__)$/g,t)}if(t.get("italic")){const t=PE(this.editor,"italic");ME(this.editor,this,/(?:^|\s)(\*)([^*_]+)(\*)$/g,t);ME(this.editor,this,/(?:^|\s)(_)([^_]+)(_)$/g,t)}if(t.get("code")){const t=PE(this.editor,"code");ME(this.editor,this,/(`)([^`]+)(`)$/g,t)}if(t.get("strikethrough")){const t=PE(this.editor,"strikethrough");ME(this.editor,this,/(~~)([^~]+)(~~)$/g,t)}}_addHeadingAutoformats(){const t=this.editor.commands.get("heading");if(t){t.modelElements.filter((t=>t.match(/^heading[1-6]$/))).forEach((e=>{const n=e[7];const i=new RegExp(`^(#{${n}})\\s$`);BE(this.editor,this,i,(()=>{if(!t.isEnabled||t.value===e){return false}this.editor.execute("heading",{value:e})}))}))}}_addBlockQuoteAutoformats(){if(this.editor.commands.get("blockQuote")){BE(this.editor,this,/^>\s$/,"blockQuote")}}_addCodeBlockAutoformats(){const t=this.editor;const e=t.model.document.selection;if(t.commands.get("codeBlock")){BE(t,this,/^```$/,(()=>{if(e.getFirstPosition().parent.is("element","listItem")){return false}this.editor.execute("codeBlock",{usePreviousLanguageChoice:true})}))}}_addHorizontalLineAutoformats(){if(this.editor.commands.get("horizontalLine")){BE(this.editor,this,/^---$/,"horizontalLine")}}}function PE(t,e){return(n,i)=>{const o=t.commands.get(e);if(!o.isEnabled){return false}const r=t.model.schema.getValidRanges(i,e);for(const t of r){n.setAttribute(e,true,t)}n.removeSelectionAttribute(e)}}class RE extends lf{constructor(t){super(t);const e=this.document;this.domEventType=["paste","copy","cut","drop","dragover","dragstart","dragend","dragenter","dragleave"];this.listenTo(e,"paste",n("clipboardInput"),{priority:"low"});this.listenTo(e,"drop",n("clipboardInput"),{priority:"low"});this.listenTo(e,"dragover",n("dragging"),{priority:"low"});function n(t){return(n,i)=>{i.preventDefault();const o=i.dropRange?[i.dropRange]:null;const r=new T(e,t);e.fire(r,{dataTransfer:i.dataTransfer,method:n.name,targetRanges:o,target:i.target});if(r.stop.called){i.stopPropagation()}}}}onDomEvent(t){const e="clipboardData"in t?t.clipboardData:t.dataTransfer;const n=t.type=="drop"||t.type=="paste";const i={dataTransfer:new Pp(e,{cacheFiles:n})};if(t.type=="drop"||t.type=="dragover"){i.dropRange=OE(this.view,t)}this.fire(t.type,t,i)}}function OE(t,e){const n=e.target.ownerDocument;const i=e.clientX;const o=e.clientY;let r;if(n.caretRangeFromPoint&&n.caretRangeFromPoint(i,o)){r=n.caretRangeFromPoint(i,o)}else if(e.rangeParent){r=n.createRange();r.setStart(e.rangeParent,e.rangeOffset);r.collapse(true)}if(r){return t.domConverter.domRangeToView(r)}return null}function VE(t){t=t.replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r?\n\r?\n/g,"</p><p>").replace(/\r?\n/g,"<br>").replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;").replace(/^\s/,"&nbsp;").replace(/\s$/,"&nbsp;").replace(/\s\s/g," &nbsp;");if(t.includes("</p><p>")||t.includes("<br>")){t=`<p>${t}</p>`}return t}function FE(t){return t.replace(/<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g,((t,e)=>{if(e.length==1){return" "}return e})).replace(/<!--[\s\S]*?-->/g,"")}const jE=["figcaption","li"];function HE(t){let e="";if(t.is("$text")||t.is("$textProxy")){e=t.data}else if(t.is("element","img")&&t.hasAttribute("alt")){e=t.getAttribute("alt")}else if(t.is("element","br")){e="\n"}else{let n=null;for(const i of t.getChildren()){const t=HE(i);if(n&&(n.is("containerElement")||i.is("containerElement"))){if(jE.includes(n.name)||jE.includes(i.name)){e+="\n"}else{e+="\n\n"}}e+=t;n=i}}return e}class UE extends eu{static get pluginName(){return"ClipboardPipeline"}init(){const t=this.editor;const e=t.editing.view;e.addObserver(RE);this._setupPasteDrop();this._setupCopyCut()}_setupPasteDrop(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=n.document;this.listenTo(i,"clipboardInput",(e=>{if(t.isReadOnly){e.stop()}}),{priority:"highest"});this.listenTo(i,"clipboardInput",((t,e)=>{const i=e.dataTransfer;let o;if(e.content){o=e.content}else{let t="";if(i.getData("text/html")){t=FE(i.getData("text/html"))}else if(i.getData("text/plain")){t=VE(i.getData("text/plain"))}o=this.editor.data.htmlProcessor.toView(t)}const r=new T(this,"inputTransformation");this.fire(r,{content:o,dataTransfer:i,targetRanges:e.targetRanges,method:e.method});if(r.stop.called){t.stop()}n.scrollToTheSelection()}),{priority:"low"});this.listenTo(this,"inputTransformation",((t,n)=>{if(n.content.isEmpty){return}const i=this.editor.data;const o=i.toModel(n.content,"$clipboardHolder");if(o.childCount==0){return}t.stop();e.change((()=>{this.fire("contentInsertion",{content:o,method:n.method,dataTransfer:n.dataTransfer,targetRanges:n.targetRanges})}))}),{priority:"low"});this.listenTo(this,"contentInsertion",((t,n)=>{n.resultRange=e.insertContent(n.content)}),{priority:"low"})}_setupCopyCut(){const t=this.editor;const e=t.model.document;const n=t.editing.view;const i=n.document;const o=(n,o)=>{const r=o.dataTransfer;o.preventDefault();const s=t.data.toView(t.model.getSelectedContent(e.selection));i.fire("clipboardOutput",{dataTransfer:r,content:s,method:n.name})};this.listenTo(i,"copy",o,{priority:"low"});this.listenTo(i,"cut",((e,n)=>{if(t.isReadOnly){n.preventDefault()}else{o(e,n)}}),{priority:"low"});this.listenTo(i,"clipboardOutput",((n,i)=>{if(!i.content.isEmpty){i.dataTransfer.setData("text/html",this.editor.data.htmlProcessor.toData(i.content));i.dataTransfer.setData("text/plain",HE(i.content))}if(i.method=="cut"){t.model.deleteContent(e.selection)}}),{priority:"low"})}}function*WE(t,e){for(const n of e){if(n&&t.getAttributeProperties(n[0]).copyOnEnter){yield n}}}class qE extends iu{execute(){this.editor.model.change((t=>{this.enterBlock(t);this.fire("afterExecute",{writer:t})}))}enterBlock(t){const e=this.editor.model;const n=e.document.selection;const i=e.schema;const o=n.isCollapsed;const r=n.getFirstRange();const s=r.start.parent;const a=r.end.parent;if(i.isLimit(s)||i.isLimit(a)){if(!o&&s==a){e.deleteContent(n)}return false}if(o){const e=WE(t.model.schema,n.getAttributes());$E(t,r.start);t.setSelectionAttribute(e);return true}else{const i=!(r.start.isAtStart&&r.end.isAtEnd);const o=s==a;e.deleteContent(n,{leaveUnmerged:i});if(i){if(o){$E(t,n.focus);return true}else{t.setSelection(a,0)}}}return false}}function $E(t,e){t.split(e);t.setSelection(e.parent.nextSibling,0)}const GE={insertParagraph:{isSoft:false},insertLineBreak:{isSoft:true}};class KE extends rf{constructor(t){super(t);const e=this.document;e.on("beforeinput",((n,i)=>{if(!this.isEnabled){return}const o=i.domEvent;const r=GE[i.inputType];if(!r){return}const s=new Hg(e,"enter",i.targetRanges[0]);e.fire(s,new cf(t,o,{isSoft:r.isSoft}));if(s.stop.called){n.stop()}}))}observe(){}}class YE extends eu{static get pluginName(){return"Enter"}init(){const t=this.editor;const e=t.editing.view;const n=e.document;e.addObserver(KE);t.commands.add("enter",new qE(t));this.listenTo(n,"enter",((i,o)=>{if(!n.isComposing){o.preventDefault()}if(o.isSoft){return}t.execute("enter");e.scrollToTheSelection()}),{priority:"low"})}}class ZE extends iu{execute(){const t=this.editor.model;const e=t.document;t.change((n=>{JE(t,n,e.selection);this.fire("afterExecute",{writer:n})}))}refresh(){const t=this.editor.model;const e=t.document;this.isEnabled=QE(t.schema,e.selection)}}function QE(t,e){if(e.rangeCount>1){return false}const n=e.anchor;if(!n||!t.checkChild(n,"softBreak")){return false}const i=e.getFirstRange();const o=i.start.parent;const r=i.end.parent;if((tD(o,t)||tD(r,t))&&o!==r){return false}return true}function JE(t,e,n){const i=n.isCollapsed;const o=n.getFirstRange();const r=o.start.parent;const s=o.end.parent;const a=r==s;if(i){const i=WE(t.schema,n.getAttributes());XE(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});if(a){XE(t,e,n.focus)}else{if(i){e.setSelection(s,0)}}}}function XE(t,e,n){const i=e.createElement("softBreak");t.insertContent(i,n);e.setSelection(i,"after")}function tD(t,e){if(t.is("rootElement")){return false}return e.isLimit(t)||tD(t.parent,e)}class eD extends eu{static get pluginName(){return"ShiftEnter"}init(){const t=this.editor;const e=t.model.schema;const n=t.conversion;const i=t.editing.view;const o=i.document;e.register("softBreak",{allowWhere:"$text",isInline:true});n.for("upcast").elementToElement({model:"softBreak",view:"br"});n.for("downcast").elementToElement({model:"softBreak",view:(t,{writer:e})=>e.createEmptyElement("br")});i.addObserver(KE);t.commands.add("shiftEnter",new ZE(t));this.listenTo(o,"enter",((e,n)=>{if(!o.isComposing){n.preventDefault()}if(!n.isSoft){return}t.execute("shiftEnter");i.scrollToTheSelection()}),{priority:"low"})}}class nD extends(K()){constructor(){super();this._stack=[]}add(t,e){const n=this._stack;const i=n[0];this._insertDescriptor(t);const o=n[0];if(i!==o&&!iD(i,o)){this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}}remove(t,e){const n=this._stack;const i=n[0];this._removeDescriptor(t);const o=n[0];if(i!==o&&!iD(i,o)){this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}}_insertDescriptor(t){const e=this._stack;const n=e.findIndex((e=>e.id===t.id));if(iD(t,e[n])){return}if(n>-1){e.splice(n,1)}let i=0;while(e[i]&&oD(e[i],t)){i++}e.splice(i,0,t)}_removeDescriptor(t){const e=this._stack;const n=e.findIndex((e=>e.id===t));if(n>-1){e.splice(n,1)}}}function iD(t,e){return t&&e&&t.priority==e.priority&&rD(t.classes)==rD(e.classes)}function oD(t,e){if(t.priority>e.priority){return true}else if(t.priority<e.priority){return false}return rD(t.classes)>rD(e.classes)}function rD(t){return Array.isArray(t)?t.sort().join(","):t}const sD='<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M4 0v1H1v3H0V.5A.5.5 0 0 1 .5 0H4zm8 0h3.5a.5.5 0 0 1 .5.5V4h-1V1h-3V0zM4 16H.5a.5.5 0 0 1-.5-.5V12h1v3h3v1zm8 0v-1h3v-3h1v3.5a.5.5 0 0 1-.5.5H12z"/><path fill-opacity=".256" d="M1 1h14v14H1z"/><g class="ck-icon__selected-indicator"><path d="M7 0h2v1H7V0zM0 7h1v2H0V7zm15 0h1v2h-1V7zm-8 8h2v1H7v-1z"/><path fill-opacity=".254" d="M1 1h14v14H1z"/></g></svg>';const aD="ck-widget";const cD="ck-widget_selected";function lD(t){if(!t.is("element")){return false}return!!t.getCustomProperty("widget")}function dD(t,e,n={}){if(!t.is("containerElement")){throw new z("widget-to-widget-wrong-element-type",null,{element:t})}e.setAttribute("contenteditable","false",t);e.addClass(aD,t);e.setCustomProperty("widget",true,t);t.getFillerOffset=wD;e.setCustomProperty("widgetLabel",[],t);if(n.label){mD(t,n.label)}if(n.hasSelectionHandle){AD(t,e)}gD(t,e);return t}function uD(t,e,n){if(e.classes){n.addClass(Xc(e.classes),t)}if(e.attributes){for(const i in e.attributes){n.setAttribute(i,e.attributes[i],t)}}}function hD(t,e,n){if(e.classes){n.removeClass(Xc(e.classes),t)}if(e.attributes){for(const i in e.attributes){n.removeAttribute(i,t)}}}function gD(t,e,n=uD,i=hD){const o=new nD;o.on("change:top",((e,o)=>{if(o.oldDescriptor){i(t,o.oldDescriptor,o.writer)}if(o.newDescriptor){n(t,o.newDescriptor,o.writer)}}));const r=(t,e,n)=>o.add(e,n);const s=(t,e,n)=>o.remove(e,n);e.setCustomProperty("addHighlight",r,t);e.setCustomProperty("removeHighlight",s,t)}function mD(t,e){const n=t.getCustomProperty("widgetLabel");n.push(e)}function fD(t){const e=t.getCustomProperty("widgetLabel");return e.reduce(((t,e)=>{if(typeof e==="function"){return t?t+". "+e():e()}else{return t?t+". "+e:e}}),"")}function pD(t,e,n={}){e.addClass(["ck-editor__editable","ck-editor__nested-editable"],t);e.setAttribute("role","textbox",t);if(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)=>{if(o){e.addClass("ck-editor__nested-editable_focused",t)}else{e.removeClass("ck-editor__nested-editable_focused",t)}}));gD(t,e);return t}function bD(t,e){const n=t.getSelectedElement();if(n){const i=ED(t);if(i){return e.createRange(e.createPositionAt(n,i))}}return oC(t,e)}function kD(t,e){return(n,i)=>{const{mapper:o,viewPosition:r}=i;const s=o.findMappedViewAncestor(r);if(!e(s)){return}const a=o.toModelElement(s);i.modelPosition=t.createPositionAt(a,r.isAtStart?"before":"after")}}function wD(){return null}function AD(t,e){const n=e.createUIElement("div",{class:"ck ck-widget__selection-handle"},(function(t){const e=this.toDomElement(t);const n=new gd;n.set("content",sD);n.render();e.appendChild(n.element);return e}));e.insert(e.createPositionAt(t,0),n);e.addClass(["ck-widget_with-selection-handle"],t)}const CD="widget-type-around";function _D(t,e,n){return!!t&&lD(t)&&!n.isInline(e)}function vD(t){return t.closest(".ck-widget__type-around__button")}function yD(t){return t.classList.contains("ck-widget__type-around__button_before")?"before":"after"}function xD(t,e){const n=t.closest(".ck-widget");return e.mapDomToView(n)}function ED(t){return t.getAttribute(CD)}const DD='<svg viewBox="0 0 10 8" xmlns="http://www.w3.org/2000/svg"><path d="M9.055.263v3.972h-6.77M1 4.216l2-2.038m-2 2 2 2.038"/></svg>';var TD=n(5137);var SD={injectType:"singletonStyleTag",attributes:{"data-cke":true}};SD.insert="head";SD.singleton=true;var ID=Tl()(TD.Z,SD);const BD=TD.Z.locals||{};const MD=["before","after"];const LD=(new DOMParser).parseFromString(DD,"image/svg+xml").firstChild;const ND="ck-widget__type-around_disabled";class zD extends eu{static get pluginName(){return"WidgetTypeAround"}static get requires(){return[YE,oE]}constructor(t){super(t);this._currentFakeCaretModelElement=null}init(){const t=this.editor;const e=t.editing.view;this.on("change:isEnabled",((n,i,o)=>{e.change((t=>{for(const n of e.document.roots){if(o){t.removeClass(ND,n)}else{t.addClass(ND,n)}}}));if(!o){t.model.change((t=>{t.removeSelectionAttribute(CD)}))}}));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;const i=n.editing.view;const o=n.model.schema.getAttributesWithProperty(t,"copyOnReplace",true);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)=>{if(this.isEnabled){n(...t)}}),i)}_insertParagraphAccordingToFakeCaretPosition(){const t=this.editor;const e=t.model;const n=e.document.selection;const i=ED(n);if(!i){return false}const o=n.getSelectedElement();this._insertParagraph(o,i);return true}_enableTypeAroundUIInjection(){const t=this.editor;const e=t.model.schema;const n=t.locale.t;const 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){return}if(_D(s,o.item,e)){PD(r.writer,i,s);const t=s.getCustomProperty("widgetLabel");t.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;const e=t.model;const n=e.document.selection;const i=e.schema;const o=t.editing.view;this._listenToIfEnabled(o.document,"arrowKey",((t,e)=>{this._handleArrowKeyPress(t,e)}),{context:[lD,"$text"],priority:"high"});this._listenToIfEnabled(n,"change:range",((e,n)=>{if(!n.directChange){return}t.model.change((t=>{t.removeSelectionAttribute(CD)}))}));this._listenToIfEnabled(e.document,"change:data",(()=>{const e=n.getSelectedElement();if(e){const n=t.editing.mapper.toViewElement(e);if(_D(n,e,i)){return}}t.model.change((t=>{t.removeSelectionAttribute(CD)}))}));this._listenToIfEnabled(t.editing.downcastDispatcher,"selection",((t,e,n)=>{const o=n.writer;if(this._currentFakeCaretModelElement){const t=n.mapper.toViewElement(this._currentFakeCaretModelElement);if(t){o.removeClass(MD.map(r),t);this._currentFakeCaretModelElement=null}}const s=e.selection.getSelectedElement();if(!s){return}const a=n.mapper.toViewElement(s);if(!_D(a,s,i)){return}const c=ED(e.selection);if(!c){return}o.addClass(r(c),a);this._currentFakeCaretModelElement=s}));this._listenToIfEnabled(t.ui.focusTracker,"change:isFocused",((e,n,i)=>{if(!i){t.model.change((t=>{t.removeSelectionAttribute(CD)}))}}));function r(t){return`ck-widget_type-around_show-fake-caret_${t}`}}_handleArrowKeyPress(t,e){const n=this.editor;const i=n.model;const o=i.document.selection;const r=i.schema;const s=n.editing.view;const a=e.keyCode;const c=Zc(a,n.locale.contentLanguageDirection);const l=s.document.selection.getSelectedElement();const d=n.editing.mapper.toModelElement(l);let u;if(_D(l,d,r)){u=this._handleArrowKeyPressOnSelectedWidget(c)}else if(o.isCollapsed){u=this._handleArrowKeyPressWhenSelectionNextToAWidget(c)}else if(!e.shiftKey){u=this._handleArrowKeyPressWhenNonCollapsedSelection(c)}if(u){e.preventDefault();t.stop()}}_handleArrowKeyPressOnSelectedWidget(t){const e=this.editor;const n=e.model;const i=n.document.selection;const o=ED(i);return n.change((e=>{if(o){const n=o===(t?"after":"before");if(!n){e.removeSelectionAttribute(CD);return true}}else{e.setSelectionAttribute(CD,t?"after":"before");return true}return false}))}_handleArrowKeyPressWhenSelectionNextToAWidget(t){const e=this.editor;const n=e.model;const i=n.schema;const o=e.plugins.get("Widget");const r=o._getObjectElementNextToSelection(t);const s=e.editing.mapper.toViewElement(r);if(_D(s,r,i)){n.change((e=>{o._setSelectionOverElement(r);e.setSelectionAttribute(CD,t?"before":"after")}));return true}return false}_handleArrowKeyPressWhenNonCollapsedSelection(t){const e=this.editor;const n=e.model;const i=n.schema;const o=e.editing.mapper;const r=n.document.selection;const s=t?r.getLastPosition().nodeBefore:r.getFirstPosition().nodeAfter;const a=o.toViewElement(s);if(_D(a,s,i)){n.change((e=>{e.setSelection(s,"on");e.setSelectionAttribute(CD,t?"after":"before")}));return true}return false}_enableInsertingParagraphsOnButtonClick(){const t=this.editor;const e=t.editing.view;this._listenToIfEnabled(e.document,"mousedown",((n,i)=>{const o=vD(i.domTarget);if(!o){return}const r=yD(o);const s=xD(o,e.domConverter);const a=t.editing.mapper.toModelElement(s);this._insertParagraph(a,r);i.preventDefault();n.stop()}))}_enableInsertingParagraphsOnEnterKeypress(){const t=this.editor;const e=t.model.document.selection;const n=t.editing.view;this._listenToIfEnabled(n.document,"enter",((n,i)=>{if(n.eventPhase!="atTarget"){return}const o=e.getSelectedElement();const r=t.editing.mapper.toViewElement(o);const s=t.model.schema;let a;if(this._insertParagraphAccordingToFakeCaretPosition()){a=true}else if(_D(r,o,s)){this._insertParagraph(o,i.isSoft?"before":"after");a=true}if(a){i.preventDefault();n.stop()}}),{context:lD})}_enableInsertingParagraphsOnTypingKeystroke(){const t=this.editor;const e=t.editing.view.document;this._listenToIfEnabled(e,"insertText",((t,n)=>{if(this._insertParagraphAccordingToFakeCaretPosition()){n.selection=e.selection}}),{priority:"high"});if(l.isAndroid){this._listenToIfEnabled(e,"keydown",((t,e)=>{if(e.keyCode==229){this._insertParagraphAccordingToFakeCaretPosition()}}))}else{this._listenToIfEnabled(e,"compositionstart",(()=>{this._insertParagraphAccordingToFakeCaretPosition()}),{priority:"high"})}}_enableDeleteIntegration(){const t=this.editor;const e=t.editing.view;const n=t.model;const i=n.schema;this._listenToIfEnabled(e.document,"delete",((e,o)=>{if(e.eventPhase!="atTarget"){return}const r=ED(n.document.selection);if(!r){return}const s=o.direction;const a=n.document.selection.getSelectedElement();const c=r==="before";const l=s=="forward";const d=c===l;if(d){t.execute("delete",{selection:n.createSelection(a,"on")})}else{const e=i.getNearestSelectionRange(n.createPositionAt(a,r),s);if(e){if(!e.isCollapsed){n.change((n=>{n.setSelection(e);t.execute(l?"deleteForward":"delete")}))}else{const o=n.createSelection(e.start);n.modifySelection(o,{direction:s});if(!o.focus.isEqual(e.start)){n.change((n=>{n.setSelection(e);t.execute(l?"deleteForward":"delete")}))}else{const t=VD(i,e.start.parent);n.deleteContent(n.createSelection(t,"on"),{doNotAutoparagraph:true})}}}}o.preventDefault();e.stop()}),{context:lD})}_enableInsertContentIntegration(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;this._listenToIfEnabled(t.model,"insertContent",((t,[i,o])=>{if(o&&!o.is("documentSelection")){return}const r=ED(n);if(!r){return}t.stop();return e.change((t=>{const o=n.getSelectedElement();const s=e.createPositionAt(o,r);const a=t.createSelection(s);const c=e.insertContent(i,a);t.setSelection(a);return c}))}),{priority:"high"})}_enableInsertObjectIntegration(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;this._listenToIfEnabled(t.model,"insertObject",((t,e)=>{const[,i,,o={}]=e;if(i&&!i.is("documentSelection")){return}const r=ED(n);if(!r){return}o.findOptimalPosition=r;e[3]=o}),{priority:"high"})}_enableDeleteContentIntegration(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;this._listenToIfEnabled(t.model,"deleteContent",((t,[e])=>{if(e&&!e.is("documentSelection")){return}const i=ED(n);if(i){t.stop()}}),{priority:"high"})}}function PD(t,e,n){const i=t.createUIElement("div",{class:"ck ck-reset_all ck-widget__type-around"},(function(t){const n=this.toDomElement(t);RD(n,e);OD(n);return n}));t.insert(t.createPositionAt(n,"end"),i)}function RD(t,e){for(const n of MD){const i=new zl({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(LD,true)]});t.appendChild(i.render())}}function OD(t){const e=new zl({tag:"div",attributes:{class:["ck","ck-widget__type-around__fake-caret"]}});t.appendChild(e.render())}function VD(t,e){let n=e;for(const i of e.getAncestors({parentFirst:true})){if(i.childCount>1||t.isLimit(i)){break}n=i}return n}function FD(t){const e=t.model;return(n,i)=>{const o=i.keyCode==Hc.arrowup;const r=i.keyCode==Hc.arrowdown;const s=i.shiftKey;const a=e.document.selection;if(!o&&!r){return}const c=r;if(s&&qD(a,c)){return}const l=jD(t,a,c);if(!l){return}if(l.isCollapsed){if(a.isCollapsed){return}else if(s){return}}if(l.isCollapsed||WD(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 jD(t,e,n){const i=t.model;if(n){const t=e.isCollapsed?e.focus:e.getLastPosition();const n=HD(i,t,"forward");if(!n){return null}const o=i.createRange(t,n);const r=UD(i.schema,o,"backward");if(r){return i.createRange(t,r)}return null}else{const t=e.isCollapsed?e.focus:e.getFirstPosition();const n=HD(i,t,"backward");if(!n){return null}const o=i.createRange(n,t);const r=UD(i.schema,o,"forward");if(r){return i.createRange(r,t)}return null}}function HD(t,e,n){const i=t.schema;const o=t.createRangeIn(e.root);const r=n=="forward"?"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 UD(t,e,n){const i=n=="backward"?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}function WD(t,e,n){const i=t.model;const o=t.view.domConverter;if(n){const t=i.createSelection(e.start);i.modifySelection(t);if(!t.focus.isAtEnd&&!e.start.isEqual(t.focus)){e=i.createRange(t.focus,e.end)}}const r=t.mapper.toViewRange(e);const s=o.viewRangeToDom(r);const a=dc.getDomRangeRects(s);let c;for(const t of a){if(c===undefined){c=Math.round(t.bottom);continue}if(Math.round(t.top)>=c){return false}c=Math.max(c,Math.round(t.bottom))}return true}function qD(t,e){return!t.isCollapsed&&t.isBackward==e}var $D=n(6507);var GD={injectType:"singletonStyleTag",attributes:{"data-cke":true}};GD.insert="head";GD.singleton=true;var KD=Tl()($D.Z,GD);const YD=$D.Z.locals||{};class ZD extends eu{static get pluginName(){return"Widget"}static get requires(){return[zD,oE]}init(){const t=this.editor;const e=t.editing.view;const n=e.document;this._previouslySelected=new Set;this.editor.editing.downcastDispatcher.on("selection",((e,n,i)=>{const o=i.writer;const r=n.selection;if(r.isCollapsed){return}const s=r.getSelectedElement();if(!s){return}const a=t.editing.mapper.toViewElement(s);if(!lD(a)){return}if(!i.consumable.consume(r,"selection")){return}o.setSelection(o.createRangeOn(a),{fake:true,label:fD(a)})}));this.editor.editing.downcastDispatcher.on("selection",((t,e,n)=>{this._clearPreviouslySelectedWidgets(n.writer);const i=n.writer;const o=i.document.selection;let r=null;for(const t of o.getRanges()){for(const e of t){const t=e.item;if(lD(t)&&!JD(t,r)){i.addClass(cD,t);this._previouslySelected.add(t);r=t}}}}),{priority:"low"});e.addObserver(bC);this.listenTo(n,"mousedown",((...t)=>this._onMousedown(...t)));this.listenTo(n,"arrowKey",((...t)=>{this._handleSelectionChangeOnArrowKeyPress(...t)}),{context:[lD,"$text"]});this.listenTo(n,"arrowKey",((...t)=>{this._preventDefaultOnArrowKeyPress(...t)}),{context:"$root"});this.listenTo(n,"arrowKey",FD(this.editor.editing),{context:"$text"});this.listenTo(n,"delete",((t,e)=>{if(this._handleDelete(e.direction=="forward")){e.preventDefault();t.stop()}}),{context:"$root"})}_onMousedown(t,e){const n=this.editor;const i=n.editing.view;const o=i.document;let r=e.target;if(QD(r)){if((l.isSafari||l.isGecko)&&e.domEvent.detail>=3){const t=n.editing.mapper;const i=r.is("attributeElement")?r.findAncestor((t=>!t.is("attributeElement"))):r;const o=t.toModelElement(i);e.preventDefault();this.editor.model.change((t=>{t.setSelection(o,"in")}))}return}if(!lD(r)){r=r.findAncestor(lD);if(!r){return}}if(l.isAndroid){e.preventDefault()}if(!o.isFocused){i.focus()}const s=n.editing.mapper.toModelElement(r);this._setSelectionOverElement(s)}_handleSelectionChangeOnArrowKeyPress(t,e){const n=e.keyCode;const i=this.editor.model;const o=i.schema;const r=i.document.selection;const s=r.getSelectedElement();const a=Kc(n,this.editor.locale.contentLanguageDirection);const c=a=="down"||a=="right";const l=a=="up"||a=="down";if(s&&o.isObject(s)){const n=c?r.getLastPosition():r.getFirstPosition();const s=o.getNearestSelectionRange(n,c?"forward":"backward");if(s){i.change((t=>{t.setSelection(s)}));e.preventDefault();t.stop()}return}if(!r.isCollapsed&&!e.shiftKey){const n=r.getFirstPosition();const s=r.getLastPosition();const a=n.nodeAfter;const l=s.nodeBefore;if(a&&o.isObject(a)||l&&o.isObject(l)){i.change((t=>{t.setSelection(c?s:n)}));e.preventDefault();t.stop()}return}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;const i=n.schema;const o=n.document.selection.getSelectedElement();if(o&&i.isObject(o)){e.preventDefault();t.stop()}}_handleDelete(t){if(this.editor.isReadOnly){return}const e=this.editor.model.document;const n=e.selection;if(!n.isCollapsed){return}const i=this._getObjectElementNextToSelection(t);if(i){this.editor.model.change((t=>{let e=n.anchor.parent;while(e.isEmpty){const n=e;e=n.parent;t.remove(n)}this._setSelectionOverElement(i)}));return true}}_setSelectionOverElement(t){this.editor.model.change((e=>{e.setSelection(e.createRangeOn(t))}))}_getObjectElementNextToSelection(t){const e=this.editor.model;const n=e.schema;const i=e.document.selection;const o=e.createSelection(i);e.modifySelection(o,{direction:t?"forward":"backward"});if(o.isEqual(i)){return null}const r=t?o.focus.nodeBefore:o.focus.nodeAfter;if(!!r&&n.isObject(r)){return r}return null}_clearPreviouslySelectedWidgets(t){for(const e of this._previouslySelected){t.removeClass(cD,e)}this._previouslySelected.clear()}}function QD(t){let e=t;while(e){if(e.is("editableElement")&&!e.is("rootElement")){return true}if(lD(e)){return false}e=e.parent}return false}function JD(t,e){if(!e){return false}return Array.from(t.getAncestors()).includes(e)}class XD extends eu{static get requires(){return[Zy]}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=>{if(nT(t.editing.view.document.selection)){e.stop()}}),{priority:"high"})}this._toolbarDefinitions=new Map;this._balloon=this.editor.plugins.get("ContextualBalloon");this.on("change:isEnabled",(()=>{this._updateToolbarsVisibility()}));this.listenTo(t.ui,"update",(()=>{this._updateToolbarsVisibility()}));this.listenTo(t.ui.focusTracker,"change:isFocused",(()=>{this._updateToolbarsVisibility()}),{priority:"low"})}destroy(){super.destroy();for(const t of this._toolbarDefinitions.values()){t.view.destroy()}}register(t,{ariaLabel:e,items:n,getRelatedElement:i,balloonClassName:o="ck-toolbar-container"}){if(!n.length){P("widget-toolbar-no-items",{toolbarId:t});return}const r=this.editor;const s=r.t;const a=new rv(r.locale);a.ariaLabel=e||s("Widget toolbar");if(this._toolbarDefinitions.has(t)){throw new z("widget-toolbar-duplicated",this,{toolbarId:t})}const c={view:a,getRelatedElement:i,balloonClassName:o,itemsConfig:n,initialized:false};r.ui.addToolbar(a,{isContextual:true,beforeFocus:()=>{const t=i(r.editing.view.document.selection);if(t){this._showToolbar(c,t)}},afterBlur:()=>{this._hideToolbar(c)}});this._toolbarDefinitions.set(t,c)}_updateToolbarsVisibility(){let t=0;let e=null;let 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._isToolbarInBalloon(i)){this._hideToolbar(i)}}else if(!this.editor.ui.focusTracker.isFocused){if(this._isToolbarVisible(i)){this._hideToolbar(i)}}else{const r=o.getAncestors().length;if(r>t){t=r;e=o;n=i}}}if(n){this._showToolbar(n,e)}}_hideToolbar(t){this._balloon.remove(t.view);this.stopListening(this._balloon,"change:visibleView")}_showToolbar(t,e){if(this._isToolbarVisible(t)){tT(this.editor,e)}else if(!this._isToolbarInBalloon(t)){if(!t.initialized){t.initialized=true;t.view.fillFromConfig(t.itemsConfig,this.editor.ui.componentFactory)}this._balloon.add({view:t.view,position:eT(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);tT(this.editor,e)}}}))}}_isToolbarVisible(t){return this._balloon.visibleView===t.view}_isToolbarInBalloon(t){return this._balloon.hasView(t.view)}}function tT(t,e){const n=t.plugins.get("ContextualBalloon");const i=eT(t,e);n.updatePosition(i)}function eT(t,e){const n=t.editing.view;const i=Uv.defaultPositions;return{target:n.domConverter.mapViewToDom(e),positions:[i.northArrowSouth,i.northArrowSouthWest,i.northArrowSouthEast,i.southArrowNorth,i.southArrowNorthWest,i.southArrowNorthEast,i.viewportStickyNorth]}}function nT(t){const e=t.getSelectedElement();return!!(e&&lD(e))}class iT extends(mt()){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 dc(e);this.activeHandlePosition=aT(t);this._referenceCoordinates=rT(e,cT(this.activeHandlePosition));this._originalWidth=i.width;this._originalHeight=i.height;this._aspectRatio=i.width/i.height;const o=n.style.width;if(o&&o.match(/^\d+(\.\d*)?%$/)){this._originalWidthPercents=parseFloat(o)}else{this._originalWidthPercents=oT(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 oT(t,e){const n=t.parentElement;const i=parseFloat(n.ownerDocument.defaultView.getComputedStyle(n).width);return e.width/i*100}function rT(t,e){const n=new dc(t);const i=e.split("-");const o={x:i[1]=="right"?n.right:n.left,y:i[0]=="bottom"?n.bottom:n.top};o.x+=t.ownerDocument.defaultView.scrollX;o.y+=t.ownerDocument.defaultView.scrollY;return o}function sT(t){return`ck-widget__resizer__handle-${t}`}function aT(t){const e=["top-left","top-right","bottom-right","bottom-left"];for(const n of e){if(t.classList.contains(sT(n))){return n}}}function cT(t){const e=t.split("-");const n={top:"bottom",bottom:"top",left:"right",right:"left"};return`${n[e[0]]}-${n[e[1]]}`}class lT extends Ll{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)=>t!==null&&e!==null));this.bind("_label").to(e,"proposedHandleHostWidth",e,"proposedHandleHostHeight",e,"proposedWidthPercents",((e,n,i)=>{if(t.unit==="px"){return`${e}×${n}`}else{return`${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=false}}class dT extends(mt()){constructor(t){super();this._options=t;this._viewResizerWrapper=null;this.set("isEnabled",true);this.set("isSelected",false);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=>{if(!this.state.proposedWidth&&!this.state.proposedWidthPercents){this._cleanup();t.stop()}}),{priority:"high"})}get state(){return this._state}show(){const t=this._options.editor.editing.view;t.change((t=>{t.removeClass("ck-hidden",this._viewResizerWrapper)}))}hide(){const t=this._options.editor.editing.view;t.change((t=>{t.addClass("ck-hidden",this._viewResizerWrapper)}))}attach(){const t=this;const e=this._options.viewElement;const n=this._options.editor.editing.view;n.change((n=>{const i=n.createUIElement("div",{class:"ck ck-reset_all ck-widget__resizer"},(function(e){const n=this.toDomElement(e);t._appendHandles(n);t._appendSizeUI(n);return n}));n.insert(n.createPositionAt(e,"end"),i);n.addClass("ck-widget_with-resizer",e);this._viewResizerWrapper=i;if(!this.isVisible){this.hide()}}));this.on("change:isVisible",(()=>{if(this.isVisible){this.show();this.redraw()}else{this.hide()}}))}begin(t){this._state=new iT(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);const n=this._options.editor.editing.view;n.change((t=>{const n=this._options.unit||"%";const i=(n==="%"?e.widthPercents:e.width)+n;t.setStyle("width",i,this._options.viewElement)}));const i=this._getHandleHost();const o=new dc(i);const r=Math.round(o.width);const s=Math.round(o.height);const a=new dc(i);e.width=Math.round(a.width);e.height=Math.round(a.height);this.redraw(o);this.state.update({...e,handleHostWidth:r,handleHostHeight:s})}commit(){const t=this._options.unit||"%";const 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(!gT(e)){return}const n=e.parentElement;const i=this._getHandleHost();const o=this._viewResizerWrapper;const r=[o.getStyle("width"),o.getStyle("height"),o.getStyle("left"),o.getStyle("top")];let s;if(n.isSameNode(i)){const e=t||new dc(i);s=[e.width+"px",e.height+"px",undefined,undefined]}else{s=[i.offsetWidth+"px",i.offsetHeight+"px",i.offsetLeft+"px",i.offsetTop+"px"]}if(Dt(r,s)!=="same"){this._options.editor.editing.view.change((t=>{t.setStyle({width:s[0],height:s[1],left:s[2],top:s[3]},o)}))}}containsHandle(t){return this._domResizerWrapper.contains(t)}static isResizeHandle(t){return t.classList.contains("ck-widget__resizer__handle")}_cleanup(){this._sizeView._dismiss();const t=this._options.editor.editing.view;t.change((t=>{t.setStyle("width",this._initialViewWidth,this._options.viewElement)}))}_proposeNewSize(t){const e=this.state;const n=hT(t);const i=this._options.isCentered?this._options.isCentered(this):true;const o={x:e._referenceCoordinates.x-(n.x+e.originalWidth),y:n.y-e.originalHeight-e._referenceCoordinates.y};if(i&&e.activeHandlePosition.endsWith("-right")){o.x=n.x-(e._referenceCoordinates.x+e.originalWidth)}if(i){o.x*=2}let r=Math.abs(e.originalWidth+o.x);let s=Math.abs(e.originalHeight+o.y);const a=r/e.aspectRatio>s?"width":"height";if(a=="width"){s=r/e.aspectRatio}else{r=s*e.aspectRatio}return{width:Math.round(r),height:Math.round(s),widthPercents:Math.min(Math.round(e.originalWidthPercents/e.originalWidth*r*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 n of e){t.appendChild(new zl({tag:"div",attributes:{class:`ck-widget__resizer__handle ${uT(n)}`}}).render())}}_appendSizeUI(t){this._sizeView=new lT;this._sizeView.render();t.appendChild(this._sizeView.element)}}function uT(t){return`ck-widget__resizer__handle-${t}`}function hT(t){return{x:t.pageX,y:t.pageY}}function gT(t){return t&&t.ownerDocument&&t.ownerDocument.contains(t)}var mT="Expected a function";function fT(t,e,n){var i=true,o=true;if(typeof t!="function"){throw new TypeError(mT)}if(at(n)){i="leading"in n?!!n.leading:i;o="trailing"in n?!!n.trailing:o}return If(t,e,{leading:i,maxWait:e,trailing:o})}const pT=fT;var bT=n(2263);var kT={injectType:"singletonStyleTag",attributes:{"data-cke":true}};kT.insert="head";kT.singleton=true;var wT=Tl()(bT.Z,kT);const AT=bT.Z.locals||{};class CT extends eu{static get pluginName(){return"WidgetResize"}init(){const t=this.editor.editing;const e=ic.window.document;this.set("selectedResizer",null);this.set("_activeResizer",null);this._resizers=new Map;t.view.addObserver(bC);this._observer=new(Ja());this.listenTo(t.view.document,"mousedown",this._mouseDownListener.bind(this),{priority:"high"});this._observer.listenTo(e,"mousemove",this._mouseMoveListener.bind(this));this._observer.listenTo(e,"mouseup",this._mouseUpListener.bind(this));this._redrawSelectedResizerThrottled=pT((()=>this.redrawSelectedResizer()),200);this.editor.ui.on("update",this._redrawSelectedResizerThrottled);this.editor.model.document.on("change",(()=>{for(const[t,e]of this._resizers){if(!t.isAttached()){this._resizers.delete(t);e.destroy()}}}),{priority:"lowest"});this._observer.listenTo(ic.window,"resize",this._redrawSelectedResizerThrottled);const n=this.editor.editing.view.document.selection;n.on("change",(()=>{const t=n.getSelectedElement();const e=this.getResizerByViewElement(t)||null;if(e){this.select(e)}else{this.deselect()}}))}redrawSelectedResizer(){if(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=true}deselect(){if(this.selectedResizer){this.selectedResizer.isSelected=false}this.selectedResizer=null}attachTo(t){const e=new dT(t);const n=this.editor.plugins;e.attach();if(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;const o=i.getSelectedElement();if(this.getResizerByViewElement(o)==e){this.select(e)}return 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;if(!dT.isResizeHandle(n)){return}this._activeResizer=this._getResizerByHandle(n)||null;if(this._activeResizer){this._activeResizer.begin(n);t.stop();e.preventDefault()}}_mouseMoveListener(t,e){if(this._activeResizer){this._activeResizer.updateSize(e)}}_mouseUpListener(){if(this._activeResizer){this._activeResizer.commit();this._activeResizer=null}}}var _T=n(390);var vT={injectType:"singletonStyleTag",attributes:{"data-cke":true}};vT.insert="head";vT.singleton=true;var yT=Tl()(_T.Z,vT);const xT=_T.Z.locals||{};class ET extends eu{static get pluginName(){return"DragDrop"}static get requires(){return[UE,ZD]}init(){const t=this.editor;const e=t.editing.view;this._draggedRange=null;this._draggingUid="";this._draggableElement=null;this._updateDropMarkerThrottled=pT((t=>this._updateDropMarker(t)),40);this._removeDropMarkerDelayed=NT((()=>this._removeDropMarker()),40);this._clearDraggableAttributesDelayed=NT((()=>this._clearDraggableAttributes()),40);e.addObserver(RE);e.addObserver(bC);this._setupDragging();this._setupContentInsertionIntegration();this._setupClipboardInputIntegration();this._setupDropMarker();this._setupDraggableAttributeHandling();this.listenTo(t,"change:isReadOnly",((t,e,n)=>{if(n){this.forceDisabled("readOnlyMode")}else{this.clearForceDisabled("readOnlyMode")}}));this.on("change:isEnabled",((t,e,n)=>{if(!n){this._finalizeDragging(false)}}));if(l.isAndroid){this.forceDisabled("noAndroidSupport")}}destroy(){if(this._draggedRange){this._draggedRange.detach();this._draggedRange=null}this._updateDropMarkerThrottled.cancel();this._removeDropMarkerDelayed.cancel();this._clearDraggableAttributesDelayed.cancel();return super.destroy()}_setupDragging(){const t=this.editor;const e=t.model;const n=e.document;const i=t.editing.view;const o=i.document;this.listenTo(o,"dragstart",((i,r)=>{const s=n.selection;if(r.target&&r.target.is("editableElement")){r.preventDefault();return}const a=r.target?zT(r.target):null;if(a){const n=t.editing.mapper.toModelElement(a);this._draggedRange=kb.fromRange(e.createRangeOn(n));if(t.plugins.has("WidgetToolbarRepository")){t.plugins.get("WidgetToolbarRepository").forceDisabled("dragDrop")}}else if(!o.selection.isCollapsed){const t=o.selection.getSelectedElement();if(!t||!lD(t)){this._draggedRange=kb.fromRange(s.getFirstRange())}}if(!this._draggedRange){r.preventDefault();return}this._draggingUid=I();r.dataTransfer.effectAllowed=this.isEnabled?"copyMove":"copy";r.dataTransfer.setData("application/ckeditor5-dragging-uid",this._draggingUid);const c=e.createSelection(this._draggedRange.toRange());const l=t.data.toView(e.getSelectedContent(c));o.fire("clipboardOutput",{dataTransfer:r.dataTransfer,content:l,method:"dragstart"});if(!this.isEnabled){this._draggedRange.detach();this._draggedRange=null;this._draggingUid=""}}),{priority:"low"});this.listenTo(o,"dragend",((t,e)=>{this._finalizeDragging(!e.dataTransfer.isCanceled&&e.dataTransfer.dropEffect=="move")}),{priority:"low"});this.listenTo(o,"dragenter",(()=>{if(!this.isEnabled){return}i.focus()}));this.listenTo(o,"dragleave",(()=>{this._removeDropMarkerDelayed()}));this.listenTo(o,"dragging",((e,n)=>{if(!this.isEnabled){n.dataTransfer.dropEffect="none";return}this._removeDropMarkerDelayed.cancel();const i=DT(t,n.targetRanges,n.target);if(!this._draggedRange){n.dataTransfer.dropEffect="copy"}if(!l.isGecko){if(n.dataTransfer.effectAllowed=="copy"){n.dataTransfer.dropEffect="copy"}else if(["all","copyMove"].includes(n.dataTransfer.effectAllowed)){n.dataTransfer.dropEffect="move"}}if(i){this._updateDropMarkerThrottled(i)}}),{priority:"low"})}_setupClipboardInputIntegration(){const t=this.editor;const e=t.editing.view;const n=e.document;this.listenTo(n,"clipboardInput",((e,n)=>{if(n.method!="drop"){return}const i=DT(t,n.targetRanges,n.target);this._removeDropMarker();if(!i){this._finalizeDragging(false);e.stop();return}if(this._draggedRange&&this._draggingUid!=n.dataTransfer.getData("application/ckeditor5-dragging-uid")){this._draggedRange.detach();this._draggedRange=null;this._draggingUid=""}const o=LT(n.dataTransfer)=="move";if(o&&this._draggedRange&&this._draggedRange.containsRange(i,true)){this._finalizeDragging(false);e.stop();return}n.targetRanges=[t.editing.mapper.toViewRange(i)]}),{priority:"high"})}_setupContentInsertionIntegration(){const t=this.editor.plugins.get(UE);t.on("contentInsertion",((t,e)=>{if(!this.isEnabled||e.method!=="drop"){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||e.method!=="drop"){return}const n=LT(e.dataTransfer)=="move";const i=!e.resultRange||!e.resultRange.isCollapsed;this._finalizeDragging(i&&n)}),{priority:"lowest"})}_setupDraggableAttributeHandling(){const t=this.editor;const e=t.editing.view;const n=e.document;this.listenTo(n,"mousedown",((i,o)=>{if(l.isAndroid||!o){return}this._clearDraggableAttributesDelayed.cancel();let r=zT(o.target);if(l.isBlink&&!t.isReadOnly&&!r&&!n.selection.isCollapsed){const t=n.selection.getSelectedElement();if(!t||!lD(t)){r=n.selection.editableElement}}if(r){e.change((t=>{t.setAttribute("draggable","true",r)}));this._draggableElement=t.editing.mapper.toModelElement(r)}}));this.listenTo(n,"mouseup",(()=>{if(!l.isAndroid){this._clearDraggableAttributesDelayed()}}))}_clearDraggableAttributes(){const t=this.editor.editing;t.view.change((e=>{if(this._draggableElement&&this._draggableElement.root.rootName!="$graveyard"){e.removeAttribute("draggable",t.mapper.toViewElement(this._draggableElement))}this._draggableElement=null}))}_setupDropMarker(){const t=this.editor;t.conversion.for("editingDowncast").markerToHighlight({model:"drop-target",view:{classes:["ck-clipboard-drop-target-range"]}});t.conversion.for("editingDowncast").markerToElement({model:"drop-target",view:(e,{writer:n})=>{const i=t.model.schema.checkChild(e.markerRange.start,"$text");if(!i){return}return n.createUIElement("span",{class:"ck ck-clipboard-drop-target-position"},(function(t){const e=this.toDomElement(t);e.append("⁠",t.createElement("span"),"⁠");return e}))}})}_updateDropMarker(t){const e=this.editor;const n=e.model.markers;e.model.change((e=>{if(n.has("drop-target")){if(!n.get("drop-target").getRange().isEqual(t)){e.updateMarker("drop-target",{range:t})}}else{e.addMarker("drop-target",{range:t,usingOperation:false,affectsData:false})}}))}_removeDropMarker(){const t=this.editor.model;this._removeDropMarkerDelayed.cancel();this._updateDropMarkerThrottled.cancel();if(t.markers.has("drop-target")){t.change((t=>{t.removeMarker("drop-target")}))}}_finalizeDragging(t){const e=this.editor;const n=e.model;this._removeDropMarker();this._clearDraggableAttributes();if(e.plugins.has("WidgetToolbarRepository")){e.plugins.get("WidgetToolbarRepository").clearForceDisabled("dragDrop")}this._draggingUid="";if(!this._draggedRange){return}if(t&&this.isEnabled){n.deleteContent(n.createSelection(this._draggedRange),{doNotAutoparagraph:true})}this._draggedRange.detach();this._draggedRange=null}}function DT(t,e,n){const i=t.model;const o=t.editing.mapper;let r=null;const s=e?e[0].start:null;if(n.is("uiElement")){n=n.parent}r=TT(t,n);if(r){return r}const a=MT(t,n);const c=s?o.toModelPosition(s):null;if(!c){return ST(t,a)}r=IT(t,c,a);if(r){return r}r=i.schema.getNearestSelectionRange(c,l.isGecko?"forward":"backward");if(r){return r}return BT(t,c.parent)}function TT(t,e){const n=t.model;const i=t.editing.mapper;if(lD(e)){return n.createRangeOn(i.toModelElement(e))}if(!e.is("editableElement")){const t=e.findAncestor((t=>lD(t)||t.is("editableElement")));if(lD(t)){return n.createRangeOn(i.toModelElement(t))}}return null}function ST(t,e){const n=t.model;const i=n.schema;const o=n.createPositionAt(e,0);return i.getNearestSelectionRange(o,"forward")}function IT(t,e,n){const i=t.model;if(!i.schema.checkChild(n,"$block")){return null}const o=i.createPositionAt(n,0);const r=e.path.slice(0,o.path.length);const s=i.createPositionFromPath(e.root,r);const a=s.nodeAfter;if(a&&i.schema.isObject(a)){return i.createRangeOn(a)}return null}function BT(t,e){const n=t.model;let i=e;while(i){if(n.schema.isObject(i)){return n.createRangeOn(i)}i=i.parent}return null}function MT(t,e){const n=t.editing.mapper;const i=t.editing.view;const o=n.toModelElement(e);if(o){return o}const r=i.createPositionBefore(e);const s=n.findMappedViewAncestor(r);return n.toModelElement(s)}function LT(t){if(l.isGecko){return t.dropEffect}return["all","copyMove"].includes(t.effectAllowed)?"move":"copy"}function NT(t,e){let n;function i(...o){i.cancel();n=setTimeout((()=>t(...o)),e)}i.cancel=()=>{clearTimeout(n)};return i}function zT(t){if(t.is("editableElement")){return null}if(t.hasClass("ck-widget__selection-handle")){return t.findAncestor(lD)}if(lD(t)){return t}const e=t.findAncestor((t=>lD(t)||t.is("editableElement")));if(lD(e)){return e}return null}class PT extends eu{static get pluginName(){return"PastePlainText"}static get requires(){return[UE]}init(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=n.document;const o=e.document.selection;let r=false;n.addObserver(RE);this.listenTo(i,"keydown",((t,e)=>{r=e.shiftKey}));t.plugins.get(UE).on("contentInsertion",((t,n)=>{if(!r&&!RT(n.content,e.schema)){return}e.change((t=>{const i=Array.from(o.getAttributes()).filter((([t])=>e.schema.getAttributeProperties(t).isFormatting));if(!o.isCollapsed){e.deleteContent(o,{doNotAutoparagraph:true})}i.push(...o.getAttributes());const r=t.createRangeIn(n.content);for(const e of r.getItems()){if(e.is("$textProxy")){t.setAttributes(i,e)}}}))}))}}function RT(t,e){if(t.childCount>1){return false}const n=t.getChild(0);if(e.isObject(n)){return false}return Array.from(n.getAttributeKeys()).length==0}class OT extends eu{static get pluginName(){return"Clipboard"}static get requires(){return[UE,ET,PT]}}class VT extends iu{constructor(t){super(t);this._stack=[];this._createdBatches=new WeakSet;this.refresh();this.listenTo(t.data,"set",((t,e)=>{e[1]={...e[1]};const n=e[1];if(!n.batchType){n.batchType={isUndoable:false}}}),{priority:"high"});this.listenTo(t.data,"set",((t,e)=>{const n=e[1];if(!n.batchType.isUndoable){this.clearStack()}}))}refresh(){this.isEnabled=this._stack.length>0}addBatch(t){const e=this.editor.model.document.selection;const 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;const o=i.document;const r=[];const s=t.map((t=>t.getTransformedByOperations(n)));const a=s.flat();for(const t of s){const e=t.filter((t=>t.root!=o.graveyard)).filter((t=>!jT(t,a)));if(!e.length){continue}FT(e);r.push(e[0])}if(r.length){i.change((t=>{t.setSelection(r,{backward:e})}))}}_undo(t,e){const n=this.editor.model;const 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;const r=Array.from(i.history.getOperations(o));const s=Jw([t.getReversed()],r,{useRelations:true,document:this.editor.model.document,padWithNoOps:false,forceWeakRemove:true});const a=s.operationsA;for(const o of a){e.addOperation(o);n.applyOperation(o);i.history.setOperationAsUndone(t,o)}}}}function FT(t){t.sort(((t,e)=>t.start.isBefore(e.start)?-1:1));for(let e=1;e<t.length;e++){const n=t[e-1];const i=n.getJoined(t[e],true);if(i){e--;t.splice(e,2,i)}}}function jT(t,e){return e.some((e=>e!==t&&e.containsRange(t,true)))}class HT extends VT{execute(t=null){const e=t?this._stack.findIndex((e=>e.batch==t)):this._stack.length-1;const n=this._stack.splice(e,1)[0];const i=this.editor.model.createBatch({isUndo:true});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 UT extends VT{execute(){const t=this._stack.pop();const e=this.editor.model.createBatch({isUndo:true});this.editor.model.enqueueChange(e,(()=>{const n=t.batch.operations[t.batch.operations.length-1];const i=n.baseVersion+1;const o=this.editor.model.document.history.getOperations(i);this._restoreSelection(t.selection.ranges,t.selection.isBackward,o);this._undo(t.batch,e)}));this.refresh()}}class WT extends eu{static get pluginName(){return"UndoEditing"}constructor(t){super(t);this._batchRegistry=new WeakSet}init(){const t=this.editor;this._undoCommand=new HT(t);this._redoCommand=new UT(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;const o=this._redoCommand._createdBatches.has(i);const r=this._undoCommand._createdBatches.has(i);const s=this._batchRegistry.has(i);if(s){return}this._batchRegistry.add(i);if(!i.isUndoable){return}if(o){this._undoCommand.addBatch(i)}else if(!r){this._undoCommand.addBatch(i);this._redoCommand.clearStack()}}),{priority:"highest"});this.listenTo(this._undoCommand,"revert",((t,e,n)=>{this._redoCommand.addBatch(n)}));t.keystrokes.set("CTRL+Z","undo");t.keystrokes.set("CTRL+Y","redo");t.keystrokes.set("CTRL+SHIFT+Z","redo")}}const qT='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m5.042 9.367 2.189 1.837a.75.75 0 0 1-.965 1.149l-3.788-3.18a.747.747 0 0 1-.21-.284.75.75 0 0 1 .17-.945L6.23 4.762a.75.75 0 1 1 .964 1.15L4.863 7.866h8.917A.75.75 0 0 1 14 7.9a4 4 0 1 1-1.477 7.718l.344-1.489a2.5 2.5 0 1 0 1.094-4.73l.008-.032H5.042z"/></svg>';const $T='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m14.958 9.367-2.189 1.837a.75.75 0 0 0 .965 1.149l3.788-3.18a.747.747 0 0 0 .21-.284.75.75 0 0 0-.17-.945L13.77 4.762a.75.75 0 1 0-.964 1.15l2.331 1.955H6.22A.75.75 0 0 0 6 7.9a4 4 0 1 0 1.477 7.718l-.344-1.489A2.5 2.5 0 1 1 6.039 9.4l-.008-.032h8.927z"/></svg>';class GT extends eu{static get pluginName(){return"UndoUI"}init(){const t=this.editor;const e=t.locale;const n=t.t;const i=e.uiLanguageDirection=="ltr"?qT:$T;const o=e.uiLanguageDirection=="ltr"?$T:qT;this._addButton("undo",n("Undo"),"CTRL+Z",i);this._addButton("redo",n("Redo"),"CTRL+Y",o)}_addButton(t,e,n,i){const o=this.editor;o.ui.componentFactory.add(t,(r=>{const s=o.commands.get(t);const a=new kd(r);a.set({label:e,icon:i,keystroke:n,tooltip:true});a.bind("isEnabled").to(s,"isEnabled");this.listenTo(a,"execute",(()=>{o.execute(t);o.editing.view.focus()}));return a}))}}class KT extends eu{static get requires(){return[WT,GT]}static get pluginName(){return"Undo"}}function YT(t){return t.createContainerElement("span",{class:"image-inline"},t.createEmptyElement("img"))}function ZT(t){return t.createContainerElement("figure",{class:"image"},[t.createEmptyElement("img"),t.createSlot()])}function QT(t,e){const n=t.plugins.get("ImageUtils");const i=t.plugins.has("ImageInlineEditing")&&t.plugins.has("ImageBlockEditing");return t=>{if(!n.isInlineImageView(t)){return null}if(!i){return o(t)}const r=t.getStyle("display")=="block"||t.findAncestor(n.isBlockImageView)?"imageBlock":"imageInline";if(r!==e){return null}return o(t)};function o(t){const e={name:true};if(t.hasAttribute("src")){e.attributes=["src"]}return e}}function JT(t,e){const n=dl(e.getSelectedBlocks());if(!n||t.isObject(n)){return"imageBlock"}if(n.isEmpty&&n.name!="listItem"){return"imageBlock"}return"imageInline"}class XT extends eu{static get pluginName(){return"ImageUtils"}isImage(t){return this.isInlineImage(t)||this.isBlockImage(t)}isInlineImageView(t){return!!t&&t.is("element","img")}isBlockImageView(t){return!!t&&t.is("element","figure")&&t.hasClass("image")}insertImage(t={},e=null,n=null){const i=this.editor;const o=i.model;const r=o.document.selection;n=iS(i,e||r,n);t={...Object.fromEntries(r.getAttributes()),...t};for(const e in t){if(!o.schema.checkAttribute(n,e)){delete t[e]}}return o.change((i=>{const r=i.createElement(n,t);o.insertObject(r,e,null,{setSelection:"on",findOptimalPosition:!e&&n!="imageInline"});if(r.parent){return r}return null}))}getClosestSelectedImageWidget(t){const e=t.getFirstPosition();if(!e){return null}const n=t.getSelectedElement();if(n&&this.isImageWidget(n)){return n}let i=e.parent;while(i){if(i.is("element")&&this.isImageWidget(i)){return i}i=i.parent}return null}getClosestSelectedImageElement(t){const e=t.getSelectedElement();return this.isImage(e)?e:t.getFirstPosition().findAncestor("imageBlock")}isImageAllowed(){const t=this.editor.model;const e=t.document.selection;return tS(this.editor,e)&&eS(e)}toImageWidget(t,e,n){e.setCustomProperty("image",true,t);const i=()=>{const e=this.findViewImgElement(t);const i=e.getAttribute("alt");return i?`${i} ${n}`:n};return dD(t,e,{label:i})}isImageWidget(t){return!!t.getCustomProperty("image")&&lD(t)}isBlockImage(t){return!!t&&t.is("element","imageBlock")}isInlineImage(t){return!!t&&t.is("element","imageInline")}findViewImgElement(t){if(this.isInlineImageView(t)){return t}const e=this.editor.editing.view;for(const{item:n}of e.createRangeIn(t)){if(this.isInlineImageView(n)){return n}}}}function tS(t,e){const n=iS(t,e);if(n=="imageBlock"){const n=nS(e,t.model);if(t.model.schema.checkChild(n,"imageBlock")){return true}}else if(t.model.schema.checkChild(e.focus,"imageInline")){return true}return false}function eS(t){return[...t.focus.getAncestors()].every((t=>!t.is("element","imageBlock")))}function nS(t,e){const n=bD(t,e);const i=n.start.parent;if(i.isEmpty&&!i.is("element","$root")){return i.parent}return i}function iS(t,e,n){const i=t.model.schema;const o=t.config.get("image.insert.type");if(!t.plugins.has("ImageBlockEditing")){return"imageInline"}if(!t.plugins.has("ImageInlineEditing")){return"imageBlock"}if(n){return n}if(o==="inline"){return"imageInline"}if(o==="block"){return"imageBlock"}if(e.is("selection")){return JT(i,e)}return i.checkChild(e,"imageInline")?"imageInline":"imageBlock"}const oS=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 rS extends eu{static get requires(){return[OT,XT,KT,oE]}static get pluginName(){return"AutoImage"}constructor(t){super(t);this._timeoutId=null;this._positionToInsert=null}init(){const t=this.editor;const e=t.model.document;this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",(()=>{const t=e.selection.getFirstRange();const n=sA.fromPosition(t.start);n.stickiness="toPrevious";const i=sA.fromPosition(t.end);i.stickiness="toNext";e.once("change:data",(()=>{this._embedImageBetweenPositions(n,i);n.detach();i.detach()}),{priority:"high"})}));t.commands.get("undo").on("execute",(()=>{if(this._timeoutId){ic.window.clearTimeout(this._timeoutId);this._positionToInsert.detach();this._timeoutId=null;this._positionToInsert=null}}),{priority:"high"})}_embedImageBetweenPositions(t,e){const n=this.editor;const i=new kb(t,e);const o=i.getWalker({ignoreElementEnd:true});const r=Object.fromEntries(n.model.document.selection.getAttributes());const s=this.editor.plugins.get("ImageUtils");let a="";for(const t of o){if(t.item.is("$textProxy")){a+=t.item.data}}a=a.trim();if(!a.match(oS)){i.detach();return}this._positionToInsert=sA.fromPosition(t);this._timeoutId=ic.window.setTimeout((()=>{const t=n.commands.get("insertImage");if(!t.isEnabled){i.detach();return}n.model.change((t=>{this._timeoutId=null;t.remove(i);i.detach();let e;if(this._positionToInsert.root.rootName!=="$graveyard"){e=this._positionToInsert.toPosition()}s.insertImage({...r,src:a},e);this._positionToInsert.detach();this._positionToInsert=null}));n.plugins.get("Delete").requestUndoOnBackspace()}),100)}}function sS(t,e,n){var i=t.length;n=n===undefined?i:n;return!e&&n>=i?t:Ch(t,e,n)}const aS=sS;var cS="\\ud800-\\udfff",lS="\\u0300-\\u036f",dS="\\ufe20-\\ufe2f",uS="\\u20d0-\\u20ff",hS=lS+dS+uS,gS="\\ufe0e\\ufe0f";var mS="\\u200d";var fS=RegExp("["+mS+cS+hS+gS+"]");function pS(t){return fS.test(t)}const bS=pS;function kS(t){return t.split("")}const wS=kS;var AS="\\ud800-\\udfff",CS="\\u0300-\\u036f",_S="\\ufe20-\\ufe2f",vS="\\u20d0-\\u20ff",yS=CS+_S+vS,xS="\\ufe0e\\ufe0f";var ES="["+AS+"]",DS="["+yS+"]",TS="\\ud83c[\\udffb-\\udfff]",SS="(?:"+DS+"|"+TS+")",IS="[^"+AS+"]",BS="(?:\\ud83c[\\udde6-\\uddff]){2}",MS="[\\ud800-\\udbff][\\udc00-\\udfff]",LS="\\u200d";var NS=SS+"?",zS="["+xS+"]?",PS="(?:"+LS+"(?:"+[IS,BS,MS].join("|")+")"+zS+NS+")*",RS=zS+NS+PS,OS="(?:"+[IS+DS+"?",DS,BS,MS,ES].join("|")+")";var VS=RegExp(TS+"(?="+TS+")|"+OS+RS,"g");function FS(t){return t.match(VS)||[]}const jS=FS;function HS(t){return bS(t)?jS(t):wS(t)}const US=HS;function WS(t){return function(e){e=dh(e);var n=bS(e)?US(e):undefined;var i=n?n[0]:e.charAt(0);var o=n?aS(n,1).join(""):e.slice(1);return i[t]()+o}}const qS=WS;var $S=qS("toUpperCase");const GS=$S;const KS=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g;const YS=/^(?:(?:https?|ftps?|mailto):|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))/i;const ZS=/^[\S]+@((?![-_])(?:[-\w\u00a1-\uffff]{0,63}[^-_]\.))+(?:[a-z\u00a1-\uffff]{2,})$/i;const QS=/^((\w+:(\/{2,})?)|(\W))/i;const JS="Ctrl+K";function XS(t){return t.is("attributeElement")&&!!t.getCustomProperty("link")}function tI(t,{writer:e}){const n=e.createAttributeElement("a",{href:t},{priority:5});e.setCustomProperty("link",true,n);return n}function eI(t){t=String(t);return nI(t)?t:"#"}function nI(t){const e=t.replace(KS,"");return e.match(YS)}function iI(t,e){const n={"Open in a new tab":t("Open in a new tab"),Downloadable:t("Downloadable")};e.forEach((t=>{if(t.label&&n[t.label]){t.label=n[t.label]}return t}));return e}function oI(t){const e=[];if(t){for(const[n,i]of Object.entries(t)){const t=Object.assign({},i,{id:`link${GS(n)}`});e.push(t)}}return e}function rI(t,e){if(!t){return false}return e.checkAttribute(t.name,"linkHref")}function sI(t){return ZS.test(t)}function aI(t,e){const n=sI(t)?"mailto:":e;const i=!!n&&!cI(t);return t&&i?n+t:t}function cI(t){return QS.test(t)}function lI(t){window.open(t,"_blank","noopener")}const dI=4;const uI=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");const hI=2;class gI extends eu{static get requires(){return[oE]}static get pluginName(){return"AutoLink"}init(){const t=this.editor;const e=t.model.document.selection;e.on("change:range",(()=>{this.isEnabled=!e.anchor.parent.is("element","codeBlock")}));this._enableTypingHandling()}afterInit(){this._enableEnterHandling();this._enableShiftEnterHandling()}_enableTypingHandling(){const t=this.editor;const e=new aE(t.model,(t=>{if(!mI(t)){return}const e=fI(t.substr(0,t.length-1));if(e){return{url:e}}}));e.on("matched:data",((e,n)=>{const{batch:i,range:o,url:r}=n;if(!i.isTyping){return}const s=o.end.getShiftedBy(-1);const a=s.getShiftedBy(-r.length);const c=t.model.createRange(a,s);this._applyAutoLink(r,c)}));e.bind("isEnabled").to(this)}_enableEnterHandling(){const t=this.editor;const e=t.model;const n=t.commands.get("enter");if(!n){return}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;const e=t.model;const n=t.commands.get("shiftEnter");if(!n){return}n.on("execute",(()=>{const t=e.document.selection.getFirstPosition();const n=e.createRange(e.createPositionAt(t.parent,0),t.getShiftedBy(-1));this._checkAndApplyAutoLinkOnRange(n)}))}_checkAndApplyAutoLinkOnRange(t){const e=this.editor.model;const{text:n,range:i}=sE(t,e);const o=fI(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;const i=this.editor.config.get("link.defaultProtocol");const o=aI(t,i);if(!this.isEnabled||!pI(e,n)||!cI(o)||bI(e)){return}this._persistAutoLink(o,e)}_persistAutoLink(t,e){const n=this.editor.model;const i=this.editor.plugins.get("Delete");n.enqueueChange((o=>{o.setAttribute("linkHref",t,e);n.enqueueChange((()=>{i.requestUndoOnBackspace()}))}))}}function mI(t){return t.length>dI&&t[t.length-1]===" "&&t[t.length-2]!==" "}function fI(t){const e=uI.exec(t);return e?e[hI]:null}function pI(t,e){return e.schema.checkAttributeInSelection(e.createSelection(t),"linkHref")}function bI(t){const e=t.start.nodeAfter;return e&&e.hasAttribute("linkHref")}class kI extends(mt()){constructor(){super();const t=new window.FileReader;this._reader=t;this._data=undefined;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;this.total=t.size;return 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 wI extends eu{static get pluginName(){return"FileRepository"}static get requires(){return[b_]}init(){this.loaders=new ll;this.loaders.on("change",(()=>this._updatePendingAction()));this._loadersMap=new Map;this._pendingAction=null;this.set("uploaded",0);this.set("uploadTotal",null);this.bind("uploadedPercent").to(this,"uploaded",this,"uploadTotal",((t,e)=>e?t/e*100:0))}getLoader(t){return this._loadersMap.get(t)||null}createLoader(t){if(!this.createUploadAdapter){P("filerepository-no-upload-adapter");return null}const e=new AI(Promise.resolve(t),this.createUploadAdapter);this.loaders.add(e);this._loadersMap.set(t,e);if(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){if(e.uploadTotal){t+=e.uploadTotal}}this.uploadTotal=t}));return e}destroyLoader(t){const e=t instanceof AI?t:this.getLoader(t);e._destroy();this.loaders.remove(e);this._loadersMap.forEach(((t,n)=>{if(t===e){this._loadersMap.delete(n)}}))}_updatePendingAction(){const t=this.editor.plugins.get(b_);if(this.loaders.length){if(!this._pendingAction){const e=this.editor.t;const 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 AI extends(mt()){constructor(t,e){super();this.id=I();this._filePromiseWrapper=this._createFilePromiseWrapper(t);this._adapter=e(this);this._reader=new kI;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(){if(!this._filePromiseWrapper){return Promise.resolve(null)}else{return this._filePromiseWrapper.promise.then((t=>this._filePromiseWrapper?t:null))}}get data(){return this._reader.data}read(){if(this.status!="idle"){throw new z("filerepository-read-wrong-status",this)}this.status="reading";return this.file.then((t=>this._reader.read(t))).then((t=>{if(this.status!=="reading"){throw this.status}this.status="idle";return t})).catch((t=>{if(t==="aborted"){this.status="aborted";throw"aborted"}this.status="error";throw this._reader.error?this._reader.error:t}))}upload(){if(this.status!="idle"){throw new z("filerepository-upload-wrong-status",this)}this.status="uploading";return this.file.then((()=>this._adapter.upload())).then((t=>{this.uploadResponse=t;this.status="idle";return t})).catch((t=>{if(this.status==="aborted"){throw"aborted"}this.status="error";throw t}))}abort(){const t=this.status;this.status="aborted";if(!this._filePromiseWrapper.isFulfilled){this._filePromiseWrapper.promise.catch((()=>{}));this._filePromiseWrapper.rejecter("aborted")}else if(t=="reading"){this._reader.abort()}else if(t=="uploading"&&this._adapter.abort){this._adapter.abort()}this._destroy()}_destroy(){this._filePromiseWrapper=undefined;this._reader=undefined;this._adapter=undefined;this.uploadResponse=undefined}_createFilePromiseWrapper(t){const e={};e.promise=new Promise(((n,i)=>{e.rejecter=i;e.isFulfilled=false;t.then((t=>{e.isFulfilled=true;n(t)})).catch((t=>{e.isFulfilled=true;i(t)}))}));return e}}class CI extends eu{static get requires(){return[wI]}static get pluginName(){return"Base64UploadAdapter"}init(){this.editor.plugins.get(wI).createUploadAdapter=t=>new _I(t)}}class _I{constructor(t){this.loader=t}upload(){return new Promise(((t,e)=>{const n=this.reader=new window.FileReader;n.addEventListener("load",(()=>{t({default:n.result})}));n.addEventListener("error",(t=>{e(t)}));n.addEventListener("abort",(()=>{e()}));this.loader.file.then((t=>{n.readAsDataURL(t)}))}))}abort(){this.reader.abort()}}class vI extends iu{refresh(){this.value=this._getValue();this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model;const n=e.schema;const i=e.document.selection;const o=Array.from(i.getSelectedBlocks());const r=t.forceValue===undefined?!this.value:t.forceValue;e.change((t=>{if(!r){this._removeQuote(t,o.filter(yI))}else{const e=o.filter((t=>yI(t)||EI(n,t)));this._applyQuote(t,e)}}))}_getValue(){const t=this.editor.model.document.selection;const e=dl(t.getSelectedBlocks());return!!(e&&yI(e))}_checkEnabled(){if(this.value){return true}const t=this.editor.model.document.selection;const e=this.editor.model.schema;const n=dl(t.getSelectedBlocks());if(!n){return false}return EI(e,n)}_removeQuote(t,e){xI(t,e).reverse().forEach((e=>{if(e.start.isAtStart&&e.end.isAtEnd){t.unwrap(e.start.parent);return}if(e.start.isAtStart){const n=t.createPositionBefore(e.start.parent);t.move(e,n);return}if(!e.end.isAtEnd){t.split(e.end)}const n=t.createPositionAfter(e.end.parent);t.move(e,n)}))}_applyQuote(t,e){const n=[];xI(t,e).reverse().forEach((e=>{let i=yI(e.start);if(!i){i=t.createElement("blockQuote");t.wrap(e,i)}n.push(i)}));n.reverse().reduce(((e,n)=>{if(e.nextSibling==n){t.merge(t.createPositionAfter(e));return e}return n}))}}function yI(t){return t.parent.name=="blockQuote"?t.parent:null}function xI(t,e){let n;let i=0;const o=[];while(i<e.length){const r=e[i];const s=e[i+1];if(!n){n=t.createPositionBefore(r)}if(!s||r.nextSibling!=s){o.push(t.createRange(n,t.createPositionAfter(r)));n=null}i++}return o}function EI(t,e){const n=t.checkChild(e.parent,"blockQuote");const i=t.checkChild(["$root","blockQuote"],e);return n&&i}class DI extends eu{static get pluginName(){return"BlockQuoteEditing"}static get requires(){return[YE,oE]}init(){const t=this.editor;const e=t.model.schema;t.commands.add("blockQuote",new vI(t));e.register("blockQuote",{inheritAllFrom:"$container"});t.conversion.elementToElement({model:"blockQuote",view:"blockquote"});t.model.document.registerPostFixer((n=>{const i=t.model.document.differ.getChanges();for(const t of i){if(t.type=="insert"){const i=t.position.nodeAfter;if(!i){continue}if(i.is("element","blockQuote")&&i.isEmpty){n.remove(i);return true}else if(i.is("element","blockQuote")&&!e.checkChild(t.position,i)){n.unwrap(i);return true}else 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)){n.unwrap(i);return true}}}}else if(t.type=="remove"){const e=t.position.parent;if(e.is("element","blockQuote")&&e.isEmpty){n.remove(e);return true}}}return false}));const n=this.editor.editing.view.document;const i=t.model.document.selection;const o=t.commands.get("blockQuote");this.listenTo(n,"enter",((e,n)=>{if(!i.isCollapsed||!o.value){return}const r=i.getLastPosition().parent;if(r.isEmpty){t.execute("blockQuote");t.editing.view.scrollToTheSelection();n.preventDefault();e.stop()}}),{context:"blockquote"});this.listenTo(n,"delete",((e,n)=>{if(n.direction!="backward"||!i.isCollapsed||!o.value){return}const r=i.getLastPosition().parent;if(r.isEmpty&&!r.previousSibling){t.execute("blockQuote");t.editing.view.scrollToTheSelection();n.preventDefault();e.stop()}}),{context:"blockquote"})}}var TI=n(636);var SI={injectType:"singletonStyleTag",attributes:{"data-cke":true}};SI.insert="head";SI.singleton=true;var II=Tl()(TI.Z,SI);const BI=TI.Z.locals||{};class MI extends eu{static get pluginName(){return"BlockQuoteUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("blockQuote",(n=>{const i=t.commands.get("blockQuote");const o=new kd(n);o.set({label:e("Block quote"),icon:J_.quote,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute("blockQuote");t.editing.view.focus()}));return o}))}}class LI extends eu{static get requires(){return[DI,MI]}static get pluginName(){return"BlockQuote"}}class NI extends iu{constructor(t,e){super(t);this.attributeKey=e}refresh(){const t=this.editor.model;const e=t.document;this.value=this._getValueFromFirstAllowedNode();this.isEnabled=t.schema.checkAttributeInSelection(e.selection,this.attributeKey)}execute(t={}){const e=this.editor.model;const n=e.document;const i=n.selection;const o=t.forceValue===undefined?!this.value:t.forceValue;e.change((t=>{if(i.isCollapsed){if(o){t.setSelectionAttribute(this.attributeKey,true)}else{t.removeSelectionAttribute(this.attributeKey)}}else{const n=e.schema.getValidRanges(i.getRanges(),this.attributeKey);for(const e of n){if(o){t.setAttribute(this.attributeKey,o,e)}else{t.removeAttribute(this.attributeKey,e)}}}}))}_getValueFromFirstAllowedNode(){const t=this.editor.model;const e=t.schema;const 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 false}}const zI="bold";class PI extends eu{static get pluginName(){return"BoldEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:zI});t.model.schema.setAttributeProperties(zI,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:zI,view:"strong",upcastAlso:["b",t=>{const e=t.getStyle("font-weight");if(!e){return null}if(e=="bold"||Number(e)>=600){return{name:true,styles:["font-weight"]}}return null}]});t.commands.add(zI,new NI(t,zI));t.keystrokes.set("CTRL+B",zI)}}const RI="bold";class OI extends eu{static get pluginName(){return"BoldUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(RI,(n=>{const i=t.commands.get(RI);const o=new kd(n);o.set({label:e("Bold"),icon:J_.bold,keystroke:"CTRL+B",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(RI);t.editing.view.focus()}));return o}))}}class VI extends eu{static get requires(){return[PI,OI]}static get pluginName(){return"Bold"}}const FI="code";const jI="ck-code_selected";class HI extends eu{static get pluginName(){return"CodeEditing"}static get requires(){return[cE]}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:FI});t.model.schema.setAttributeProperties(FI,{isFormatting:true,copyOnEnter:false});t.conversion.attributeToElement({model:FI,view:"code",upcastAlso:{styles:{"word-wrap":"break-word"}}});t.commands.add(FI,new NI(t,FI));t.plugins.get(cE).registerAttribute(FI);IE(t,FI,"code",jI)}}const UI='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.5 5.7 5.2 3.9v1.3l-5.6 4c-.1.2-.3.2-.5.2-.3-.1-.6-.7-.6-1l.3-.4 4.7-3.5L11.5 7l-.2-.2c-.1-.3-.1-.6 0-.8.2-.2.5-.4.8-.4a.8.8 0 0 1 .4.1zm-5.2 0L2 9.6v1.3l5.6 4c.1.2.3.2.5.2.3-.1.7-.7.6-1 0-.1 0-.3-.2-.4l-5-3.5L8.2 7l.2-.2c.1-.3.1-.6 0-.8-.2-.2-.5-.4-.8-.4a.8.8 0 0 0-.3.1z"/></svg>';var WI=n(8180);var qI={injectType:"singletonStyleTag",attributes:{"data-cke":true}};qI.insert="head";qI.singleton=true;var $I=Tl()(WI.Z,qI);const GI=WI.Z.locals||{};const KI="code";class YI extends eu{static get pluginName(){return"CodeUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(KI,(n=>{const i=t.commands.get(KI);const o=new kd(n);o.set({label:e("Code"),icon:UI,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(KI);t.editing.view.focus()}));return o}))}}class ZI extends eu{static get requires(){return[HI,YI]}static get pluginName(){return"Code"}}function QI(t){const e=t.t;const n=t.config.get("codeBlock.languages");for(const t of n){if(t.label==="Plain text"){t.label=e("Plain text")}if(t.class===undefined){t.class=`language-${t.language}`}}return n}function JI(t,e,n){const i={};for(const o of t){if(e==="class"){const t=o[e].split(" ").shift();i[t]=o[n]}else{i[o[e]]=o[n]}}return i}function XI(t){return t.data.match(/^(\s*)/)[0]}function tB(t,e){const n=t.createDocumentFragment();const i=e.split("\n");const o=i.reduce(((e,n,o)=>{e.push(n);if(o<i.length-1){e.push(t.createElement("br"))}return e}),[]);t.appendChild(o,n);return n}function eB(t){const e=t.document.selection;const n=[];if(e.isCollapsed){return[e.anchor]}const i=e.getFirstRange().getWalker({ignoreElementEnd:true,direction:"backward"});for(const{item:e}of i){if(!e.is("$textProxy")){continue}const{parent:i,startOffset:o}=e.textNode;if(!i.is("element","codeBlock")){continue}const r=XI(e.textNode);const s=t.createPositionAt(i,o+r.length);n.push(s)}return n}function nB(t){const e=dl(t.getSelectedBlocks());return!!e&&e.is("element","codeBlock")}function iB(t,e){if(e.is("rootElement")||t.isLimit(e)){return false}return t.checkChild(e.parent,"codeBlock")}class oB extends iu{constructor(t){super(t);this._lastLanguage=null}refresh(){this.value=this._getValue();this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor;const n=e.model;const i=n.document.selection;const o=QI(e);const r=o[0];const s=Array.from(i.getSelectedBlocks());const a=t.forceValue==undefined?!this.value:t.forceValue;const c=rB(t,this._lastLanguage,r.language);n.change((t=>{if(a){this._applyCodeBlock(t,s,c)}else{this._removeCodeBlock(t,s)}}))}_getValue(){const t=this.editor.model.document.selection;const e=dl(t.getSelectedBlocks());const n=!!(e&&e.is("element","codeBlock"));return n?e.getAttribute("language"):false}_checkEnabled(){if(this.value){return true}const t=this.editor.model.document.selection;const e=this.editor.model.schema;const n=dl(t.getSelectedBlocks());if(!n){return false}return iB(e,n)}_applyCodeBlock(t,e,n){this._lastLanguage=n;const i=this.editor.model.schema;const o=e.filter((t=>iB(i,t)));for(const e of o){t.rename(e,"codeBlock");t.setAttribute("language",n,e);i.removeDisallowedAttributes([e],t);Array.from(e.getChildren()).filter((t=>!i.checkChild(e,t))).forEach((e=>t.remove(e)))}o.reverse().forEach(((e,n)=>{const i=o[n+1];if(e.previousSibling===i){t.appendElement("softBreak",i);t.merge(t.createPositionBefore(e))}}))}_removeCodeBlock(t,e){const n=e.filter((t=>t.is("element","codeBlock")));for(const e of n){const n=t.createRangeOn(e);for(const e of Array.from(n.getItems()).reverse()){if(e.is("element","softBreak")&&e.parent.is("element","codeBlock")){const{position:n}=t.split(t.createPositionBefore(e));const i=n.nodeAfter;t.rename(i,"paragraph");t.removeAttribute("language",i);t.remove(e)}}t.rename(e,"paragraph");t.removeAttribute("language",e)}}}function rB(t,e,n){if(t.language){return t.language}if(t.usePreviousLanguageChoice&&e){return e}return n}class sB extends iu{constructor(t){super(t);this._indentSequence=t.config.get("codeBlock.indentSequence")}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor;const e=t.model;e.change((t=>{const n=eB(e);for(const i of n){const n=t.createText(this._indentSequence);e.insertContent(n,i)}}))}_checkEnabled(){if(!this._indentSequence){return false}return nB(this.editor.model.document.selection)}}class aB extends iu{constructor(t){super(t);this._indentSequence=t.config.get("codeBlock.indentSequence")}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor;const e=t.model;e.change((()=>{const t=eB(e);for(const n of t){const t=cB(e,n,this._indentSequence);if(t){e.deleteContent(e.createSelection(t))}}}))}_checkEnabled(){if(!this._indentSequence){return false}const t=this.editor.model;if(!nB(t.document.selection)){return false}return eB(t).some((e=>cB(t,e,this._indentSequence)))}}function cB(t,e,n){const i=lB(e);if(!i){return null}const o=XI(i);const r=o.lastIndexOf(n);if(r+n.length!==o.length){return null}if(r===-1){return null}const{parent:s,startOffset:a}=i;return t.createRange(t.createPositionAt(s,a+r),t.createPositionAt(s,a+r+n.length))}function lB(t){let e=t.parent.getChild(t.index);if(!e||e.is("element","softBreak")){e=t.nodeBefore}if(!e||e.is("element","softBreak")){return null}return e}function dB(t,e,n=false){const i=JI(e,"language","class");const o=JI(e,"language","label");return(e,r,s)=>{const{writer:a,mapper:c,consumable:l}=s;if(!l.consume(r.item,"insert")){return}const d=r.item.getAttribute("language");const u=c.toViewPosition(t.createPositionBefore(r.item));const h={};if(n){h["data-language"]=o[d];h.spellcheck="false"}const g=i[d]?{class:i[d]}:undefined;const m=a.createContainerElement("code",g);const f=a.createContainerElement("pre",h,m);a.insert(u,f);c.bindElements(r.item,m)}}function uB(t){return(e,n,i)=>{if(n.item.parent.name!=="codeBlock"){return}const{writer:o,mapper:r,consumable:s}=i;if(!s.consume(n.item,"insert")){return}const a=r.toViewPosition(t.createPositionBefore(n.item));o.insert(a,o.createText("\n"))}}function hB(t,e){const n=JI(e,"class","language");const i=e[0].language;return(t,e,o)=>{const r=e.viewItem;const s=r.parent;if(!s||!s.is("element","pre")){return}if(e.modelCursor.findAncestor("codeBlock")){return}const{consumable:a,writer:c}=o;if(!a.test(r,{name:true})){return}const l=c.createElement("codeBlock");const d=[...r.getClassNames()];if(!d.length){d.push("")}for(const t of d){const e=n[t];if(e){c.setAttribute("language",e,l);break}}if(!l.hasAttribute("language")){c.setAttribute("language",i,l)}o.convertChildren(r,l);if(!o.safeInsert(l,e.modelCursor)){return}a.consume(r,{name:true});o.updateConversionResult(l,e)}}function gB(){return(t,e,{consumable:n,writer:i})=>{let o=e.modelCursor;if(!n.test(e.viewItem)){return}if(!o.findAncestor("codeBlock")){return}n.consume(e.viewItem);const r=e.viewItem.data;const s=r.split("\n").map((t=>i.createText(t)));const a=s[s.length-1];for(const t of s){i.insert(t,o);o=o.getShiftedBy(t.offsetSize);if(t!==a){const t=i.createElement("softBreak");i.insert(t,o);o=i.createPositionAfter(t)}}e.modelRange=i.createRange(e.modelCursor,o);e.modelCursor=o}}function mB(){return(t,e,{consumable:n})=>{const i=e.viewItem;if(i.findAncestor("pre")){return}const o=Array.from(i.getChildren());const r=o.find((t=>t.is("element","code")));if(!r){return}for(const t of o){if(t===r||!t.is("$text")){continue}n.consume(t,{name:true})}}}const fB="paragraph";class pB extends eu{static get pluginName(){return"CodeBlockEditing"}static get requires(){return[eD]}constructor(t){super(t);t.config.define("codeBlock",{languages:[{language:"plaintext",label:"Plain text"},{language:"c",label:"C"},{language:"cs",label:"C#"},{language:"cpp",label:"C++"},{language:"css",label:"CSS"},{language:"diff",label:"Diff"},{language:"html",label:"HTML"},{language:"java",label:"Java"},{language:"javascript",label:"JavaScript"},{language:"php",label:"PHP"},{language:"python",label:"Python"},{language:"ruby",label:"Ruby"},{language:"typescript",label:"TypeScript"},{language:"xml",label:"XML"}],indentSequence:"\t"})}init(){const t=this.editor;const e=t.model.schema;const n=t.model;const i=t.editing.view;const o=t.plugins.has("DocumentListEditing");const r=QI(t);t.commands.add("codeBlock",new oB(t));t.commands.add("indentCodeBlock",new sB(t));t.commands.add("outdentCodeBlock",new aB(t));this.listenTo(i.document,"tab",((e,n)=>{const i=n.shiftKey?"outdentCodeBlock":"indentCodeBlock";const o=t.commands.get(i);if(!o.isEnabled){return}t.execute(i);n.stopPropagation();n.preventDefault();e.stop()}),{context:"pre"});e.register("codeBlock",{allowWhere:"$block",allowChildren:"$text",isBlock:true,allowAttributes:["language"]});e.addAttributeCheck(((t,e)=>{const n=t.endsWith("codeBlock")&&e.startsWith("list")&&e!=="list";if(o&&n){return true}if(t.endsWith("codeBlock $text")){return false}}));t.model.schema.addChildCheck(((t,e)=>{if(t.endsWith("codeBlock")&&e.isObject){return false}}));t.editing.downcastDispatcher.on("insert:codeBlock",dB(n,r,true));t.data.downcastDispatcher.on("insert:codeBlock",dB(n,r));t.data.downcastDispatcher.on("insert:softBreak",uB(n),{priority:"high"});t.data.upcastDispatcher.on("element:code",hB(i,r));t.data.upcastDispatcher.on("text",gB());t.data.upcastDispatcher.on("element:pre",mB(),{priority:"high"});this.listenTo(t.editing.view.document,"clipboardInput",((e,i)=>{let o=n.createRange(n.document.selection.anchor);if(i.targetRanges){o=t.editing.mapper.toModelRange(i.targetRanges[0])}if(!o.start.parent.is("element","codeBlock")){return}const r=i.dataTransfer.getData("text/plain");const s=new kC(t.editing.view.document);i.content=tB(s,r)}));this.listenTo(n,"getSelectedContent",((t,[i])=>{const o=i.anchor;if(i.isCollapsed||!o.parent.is("element","codeBlock")||!o.hasSameParentAs(i.focus)){return}n.change((n=>{const r=t.return;if(o.parent.is("element")&&(r.childCount>1||i.containsEntireContent(o.parent))){const e=n.createElement("codeBlock",o.parent.getAttributes());n.append(r,e);const i=n.createDocumentFragment();n.append(e,i);t.return=i;return}const s=r.getChild(0);if(e.checkAttribute(s,"code")){n.setAttribute("code",true,s)}}))}))}afterInit(){const t=this.editor;const e=t.commands;const n=e.get("indent");const i=e.get("outdent");if(n){n.registerChildCommand(e.get("indentCodeBlock"),{priority:"highest"})}if(i){i.registerChildCommand(e.get("outdentCodeBlock"))}this.listenTo(t.editing.view.document,"enter",((e,n)=>{const i=t.model.document.selection.getLastPosition().parent;if(!i.is("element","codeBlock")){return}if(!kB(t,n.isSoft)&&!wB(t,n.isSoft)){bB(t)}n.preventDefault();e.stop()}),{context:"pre"})}}function bB(t){const e=t.model;const n=e.document;const i=n.selection.getLastPosition();const o=i.nodeBefore||i.textNode;let r;if(o&&o.is("$text")){r=XI(o)}t.model.change((e=>{t.execute("shiftEnter");if(r){e.insertText(r,n.selection.anchor)}}))}function kB(t,e){const n=t.model;const i=n.document;const o=t.editing.view;const r=i.selection.getLastPosition();const s=r.nodeAfter;if(e||!i.selection.isCollapsed||!r.isAtStart){return false}if(!CB(s)){return false}t.model.change((e=>{t.execute("enter");const n=i.selection.anchor.parent.previousSibling;e.rename(n,fB);e.setSelection(n,"in");t.model.schema.removeDisallowedAttributes([n],e);e.remove(s)}));o.scrollToTheSelection();return true}function wB(t,e){const n=t.model;const i=n.document;const o=t.editing.view;const r=i.selection.getLastPosition();const s=r.nodeBefore;let a;if(e||!i.selection.isCollapsed||!r.isAtEnd||!s||!s.previousSibling){return false}if(CB(s)&&CB(s.previousSibling)){a=n.createRange(n.createPositionBefore(s.previousSibling),n.createPositionAfter(s))}else if(AB(s)&&CB(s.previousSibling)&&CB(s.previousSibling.previousSibling)){a=n.createRange(n.createPositionBefore(s.previousSibling.previousSibling),n.createPositionAfter(s))}else if(AB(s)&&CB(s.previousSibling)&&AB(s.previousSibling.previousSibling)&&s.previousSibling.previousSibling&&CB(s.previousSibling.previousSibling.previousSibling)){a=n.createRange(n.createPositionBefore(s.previousSibling.previousSibling.previousSibling),n.createPositionAfter(s))}else{return false}t.model.change((e=>{e.remove(a);t.execute("enter");const n=i.selection.anchor.parent;e.rename(n,fB);t.model.schema.removeDisallowedAttributes([n],e)}));o.scrollToTheSelection();return true}function AB(t){return t&&t.is("$text")&&!t.data.match(/\S/)}function CB(t){return t&&t.is("element","softBreak")}const _B='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M12.87 12.61a.75.75 0 0 1-.089.976l-.085.07-3.154 2.254 3.412 2.414a.75.75 0 0 1 .237.95l-.057.095a.75.75 0 0 1-.95.237l-.096-.058-4.272-3.022-.003-1.223 4.01-2.867a.75.75 0 0 1 1.047.174zm2.795-.231.095.057 4.011 2.867-.003 1.223-4.272 3.022-.095.058a.75.75 0 0 1-.88-.151l-.07-.086-.058-.095a.75.75 0 0 1 .15-.88l.087-.07 3.412-2.414-3.154-2.253-.085-.071a.75.75 0 0 1 .862-1.207zM16 0a2 2 0 0 1 2 2v9.354l-.663-.492-.837-.001V2a.5.5 0 0 0-.5-.5H2a.5.5 0 0 0-.5.5v15a.5.5 0 0 0 .5.5h3.118L7.156 19H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h14zM5.009 15l.003 1H3v-1h2.009zm2.188-2-1.471 1H5v-1h2.197zM10 11v.095L8.668 12H7v-1h3zm4-2v1H7V9h7zm0-2v1H7V7h7zm-4-2v1H5V5h5zM6 3v1H3V3h3z"/></svg>';var vB=n(9085);var yB={injectType:"singletonStyleTag",attributes:{"data-cke":true}};yB.insert="head";yB.singleton=true;var xB=Tl()(vB.Z,yB);const EB=vB.Z.locals||{};class DB extends eu{static get pluginName(){return"CodeBlockUI"}init(){const t=this.editor;const e=t.t;const n=t.ui.componentFactory;const i=QI(t);n.add("codeBlock",(n=>{const o=t.commands.get("codeBlock");const r=yv(n,Gd);const s=r.buttonView;s.set({label:e("Insert code block"),tooltip:true,icon:_B,isToggleable:true});s.bind("isOn").to(o,"value",(t=>!!t));s.on("execute",(()=>{t.execute("codeBlock",{usePreviousLanguageChoice:true});t.editing.view.focus()}));r.on("execute",(e=>{t.execute("codeBlock",{language:e.source._codeBlockLanguage,forceValue:true});t.editing.view.focus()}));r.class="ck-code-block-dropdown";r.bind("isEnabled").to(o);Dv(r,(()=>this._getLanguageListItemDefinitions(i)));return r}))}_getLanguageListItemDefinitions(t){const e=this.editor;const n=e.commands.get("codeBlock");const i=new ll;for(const e of t){const t={type:"button",model:new Oy({_codeBlockLanguage:e.language,label:e.label,withText:true})};t.model.bind("isOn").to(n,"value",(e=>e===t.model._codeBlockLanguage));i.add(t)}return i}}class TB extends eu{static get requires(){return[pB,DB]}static get pluginName(){return"CodeBlock"}}const SB={block:[{model:"codeBlock",view:"pre"},{model:"paragraph",view:"p"},{model:"blockQuote",view:"blockquote"},{model:"listItem",view:"li"},{model:"pageBreak",view:"div"},{model:"rawHtml",view:"div"},{model:"table",view:"table"},{model:"tableRow",view:"tr"},{model:"tableCell",view:"td"},{model:"tableCell",view:"th"},{model:"caption",view:"caption"},{model:"caption",view:"figcaption"},{model:"imageBlock",view:"img"},{model:"imageInline",view:"img"},{model:"htmlP",view:"p",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlBlockquote",view:"blockquote",modelSchema:{inheritAllFrom:"$container"}},{model:"htmlTable",view:"table",modelSchema:{allowWhere:"$block",isBlock:true}},{model:"htmlTbody",view:"tbody",modelSchema:{allowIn:"htmlTable",isBlock:false}},{model:"htmlThead",view:"thead",modelSchema:{allowIn:"htmlTable",isBlock:false}},{model:"htmlTfoot",view:"tfoot",modelSchema:{allowIn:"htmlTable",isBlock:false}},{model:"htmlCaption",view:"caption",modelSchema:{allowIn:"htmlTable",allowChildren:"$text",isBlock:false}},{model:"htmlColgroup",view:"colgroup",modelSchema:{allowIn:"htmlTable",allowChildren:"col",isBlock:false}},{model:"htmlCol",view:"col",modelSchema:{allowIn:"htmlColgroup",isBlock:false}},{model:"htmlTr",view:"tr",modelSchema:{allowIn:["htmlTable","htmlThead","htmlTbody"],isLimit:true}},{model:"htmlTd",view:"td",modelSchema:{allowIn:"htmlTr",allowContentOf:"$container",isLimit:true,isBlock:false}},{model:"htmlTh",view:"th",modelSchema:{allowIn:"htmlTr",allowContentOf:"$container",isLimit:true,isBlock:false}},{model:"htmlFigure",view:"figure",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlFigcaption",view:"figcaption",modelSchema:{allowIn:"htmlFigure",allowChildren:"$text",isBlock:false}},{model:"htmlAddress",view:"address",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlAside",view:"aside",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlMain",view:"main",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlDetails",view:"details",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlSummary",view:"summary",modelSchema:{allowChildren:"$text",allowIn:"htmlDetails",isBlock:false}},{model:"htmlDiv",view:"div",paragraphLikeModel:"htmlDivParagraph",modelSchema:{inheritAllFrom:"$container"}},{model:"htmlFieldset",view:"fieldset",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlLegend",view:"legend",modelSchema:{allowIn:"htmlFieldset",allowChildren:"$text"}},{model:"htmlHeader",view:"header",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlFooter",view:"footer",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlForm",view:"form",modelSchema:{inheritAllFrom:"$container",isBlock:true}},{model:"htmlHgroup",view:"hgroup",modelSchema:{allowChildren:["htmlH1","htmlH2","htmlH3","htmlH4","htmlH5","htmlH6"],isBlock:false}},{model:"htmlH1",view:"h1",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH2",view:"h2",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH3",view:"h3",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH4",view:"h4",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH5",view:"h5",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH6",view:"h6",modelSchema:{inheritAllFrom:"$block"}},{model:"$htmlList",modelSchema:{allowWhere:"$container",allowChildren:["$htmlList","htmlLi"],isBlock:false}},{model:"htmlDir",view:"dir",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlMenu",view:"menu",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlUl",view:"ul",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlOl",view:"ol",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlLi",view:"li",modelSchema:{allowIn:"$htmlList",allowChildren:"$text",isBlock:false}},{model:"htmlPre",view:"pre",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlArticle",view:"article",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlSection",view:"section",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlNav",view:"nav",modelSchema:{inheritAllFrom:"$container",isBlock:false}},{model:"htmlDl",view:"dl",modelSchema:{allowWhere:"$container",allowChildren:["htmlDt","htmlDd"],isBlock:false}},{model:"htmlDt",view:"dt",modelSchema:{allowChildren:"$block",isBlock:false}},{model:"htmlDd",view:"dd",modelSchema:{allowChildren:"$block",isBlock:false}},{model:"htmlCenter",view:"center",modelSchema:{inheritAllFrom:"$container",isBlock:false}}],inline:[{model:"htmlAcronym",view:"acronym",attributeProperties:{copyOnEnter:true}},{model:"htmlTt",view:"tt",attributeProperties:{copyOnEnter:true}},{model:"htmlFont",view:"font",attributeProperties:{copyOnEnter:true}},{model:"htmlTime",view:"time",attributeProperties:{copyOnEnter:true}},{model:"htmlVar",view:"var",attributeProperties:{copyOnEnter:true}},{model:"htmlBig",view:"big",attributeProperties:{copyOnEnter:true}},{model:"htmlSmall",view:"small",attributeProperties:{copyOnEnter:true}},{model:"htmlSamp",view:"samp",attributeProperties:{copyOnEnter:true}},{model:"htmlQ",view:"q",attributeProperties:{copyOnEnter:true}},{model:"htmlOutput",view:"output",attributeProperties:{copyOnEnter:true}},{model:"htmlKbd",view:"kbd",attributeProperties:{copyOnEnter:true}},{model:"htmlBdi",view:"bdi",attributeProperties:{copyOnEnter:true}},{model:"htmlBdo",view:"bdo",attributeProperties:{copyOnEnter:true}},{model:"htmlAbbr",view:"abbr",attributeProperties:{copyOnEnter:true}},{model:"htmlA",view:"a",priority:5,coupledAttribute:"linkHref",attributeProperties:{copyOnEnter:true}},{model:"htmlStrong",view:"strong",coupledAttribute:"bold",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlB",view:"b",coupledAttribute:"bold",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlI",view:"i",coupledAttribute:"italic",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlEm",view:"em",coupledAttribute:"italic",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlS",view:"s",coupledAttribute:"strikethrough",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlDel",view:"del",coupledAttribute:"strikethrough",attributeProperties:{copyOnEnter:true}},{model:"htmlIns",view:"ins",attributeProperties:{copyOnEnter:true}},{model:"htmlU",view:"u",coupledAttribute:"underline",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlSub",view:"sub",coupledAttribute:"subscript",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlSup",view:"sup",coupledAttribute:"superscript",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlCode",view:"code",coupledAttribute:"code",attributeProperties:{copyOnEnter:true,isFormatting:true}},{model:"htmlMark",view:"mark",attributeProperties:{copyOnEnter:true}},{model:"htmlSpan",view:"span",attributeProperties:{copyOnEnter:true}},{model:"htmlCite",view:"cite",attributeProperties:{copyOnEnter:true}},{model:"htmlLabel",view:"label",attributeProperties:{copyOnEnter:true}},{model:"htmlDfn",view:"dfn",attributeProperties:{copyOnEnter:true}},{model:"htmlObject",view:"object",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlIframe",view:"iframe",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlInput",view:"input",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlButton",view:"button",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlTextarea",view:"textarea",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlSelect",view:"select",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlVideo",view:"video",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlEmbed",view:"embed",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlOembed",view:"oembed",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlAudio",view:"audio",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlImg",view:"img",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlCanvas",view:"canvas",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlMeter",view:"meter",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlProgress",view:"progress",isObject:true,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlScript",view:"script",modelSchema:{allowWhere:["$text","$block"],isInline:true}},{model:"htmlStyle",view:"style",modelSchema:{allowWhere:["$text","$block"],isInline:true}},{model:"htmlCustomElement",view:"$customElement",modelSchema:{allowWhere:["$text","$block"],isInline:true}}]};var IB=fg((function(t,e,n,i){qh(t,e,n,i)}));const BB=IB;class MB extends eu{constructor(t){super(t);this._definitions=new Map}static get pluginName(){return"DataSchema"}init(){for(const t of SB.block){this.registerBlockElement(t)}for(const t of SB.inline){this.registerInlineElement(t)}}registerBlockElement(t){this._definitions.set(t.model,{...t,isBlock:true})}registerInlineElement(t){this._definitions.set(t.model,{...t,isInline:true})}extendBlockElement(t){this._extendDefinition({...t,isBlock:true})}extendInlineElement(t){this._extendDefinition({...t,isInline:true})}getDefinitionsForView(t,e){const n=new Set;for(const i of this._getMatchingViewDefinitions(t)){if(e){for(const t of this._getReferences(i.model)){n.add(t)}}n.add(i)}return n}_getMatchingViewDefinitions(t){return Array.from(this._definitions.values()).filter((e=>e.view&&LB(t,e.view)))}*_getReferences(t){const{modelSchema:e}=this._definitions.get(t);if(!e){return}const n=["inheritAllFrom","inheritTypesFrom","allowWhere","allowContentOf","allowAttributesOf"];for(const i of n){for(const n of Xc(e[i]||[])){const e=this._definitions.get(n);if(n!==t&&e){yield*this._getReferences(e.model);yield e}}}}_extendDefinition(t){const e=this._definitions.get(t.model);const n=BB({},e,t,((t,e)=>Array.isArray(t)?t.concat(e):undefined));this._definitions.set(t.model,n)}}function LB(t,e){if(typeof t==="string"){return t===e}if(t instanceof RegExp){return t.test(e)}return false}function NB(t,e,n,i){if(e){PB(t,e,i)}if(n){zB(t,n,i)}}function zB(t,e,n){if(e.attributes){for(const[i,o]of Object.entries(e.attributes)){t.setAttribute(i,o,n)}}if(e.styles){t.setStyle(e.styles,n)}if(e.classes){t.addClass(e.classes,n)}}function PB(t,e,n){if(e.attributes){for(const[i]of Object.entries(e.attributes)){t.removeAttribute(i,n)}}if(e.styles){for(const i of Object.keys(e.styles)){t.removeStyle(i,n)}}if(e.classes){t.removeClass(e.classes,n)}}function RB(t,e){const n=Bb(t);for(const i in e){if(Array.isArray(e[i])){n[i]=Array.from(new Set([...t[i]||[],...e[i]]))}else{n[i]={...t[i],...e[i]}}}return n}function OB({model:t}){return(e,n)=>n.writer.createElement(t,{htmlContent:e.getCustomProperty("$rawContent")})}function VB(t,{view:e,isInline:n}){const i=t.t;return(t,{writer:o})=>{const r=i("HTML object");const s=FB(e,t,o);const a=t.getAttribute("htmlAttributes");o.addClass("html-object-embed__content",s);if(a){zB(o,a,s)}const c=o.createContainerElement(n?"span":"div",{class:"html-object-embed","data-html-object-embed-label":r},s);return dD(c,o,{widgetLabel:r})}}function FB(t,e,n){return n.createRawElement(t,null,((t,n)=>{n.setContentOf(t,e.getAttribute("htmlContent"))}))}function jB({view:t,model:e},n){return i=>{i.on(`element:${t}`,((t,i,o)=>{let r=n.processViewAttributes(i.viewItem,o);if(!r&&!o.consumable.test(i.viewItem,{name:true})){return}r=r||{};o.consumable.consume(i.viewItem,{name:true});if(!i.modelRange){i=Object.assign(i,o.convertChildren(i.viewItem,i.modelCursor))}for(const t of i.modelRange.getItems()){if(o.schema.checkAttribute(t,e)){const n=t.getAttribute(e);const i=RB(r,n||{});o.writer.setAttribute(e,i,t)}}}),{priority:"low"})}}function HB({priority:t,view:e}){return(n,i)=>{if(!n){return}const{writer:o}=i;const r=o.createAttributeElement(e,null,{priority:t});zB(o,n,r);return r}}function UB({view:t},e){return n=>{n.on(`element:${t}`,((t,n,i)=>{if(!n.modelRange||n.modelRange.isCollapsed){return}const o=e.processViewAttributes(n.viewItem,i);if(o){i.writer.setAttribute("htmlAttributes",o,n.modelRange)}}),{priority:"low"})}}function WB({model:t}){return e=>{e.on(`attribute:htmlAttributes:${t}`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.writer;const s=n.mapper.toViewElement(e.item);NB(r,i,o,s)}))}}function qB(t,e,n,i){var o=t.length,r=n+(i?1:-1);while(i?r--:++r<o){if(e(t[r],r,t)){return r}}return-1}const $B=qB;function GB(t){return t!==t}const KB=GB;function YB(t,e,n){var i=n-1,o=t.length;while(++i<o){if(t[i]===e){return i}}return-1}const ZB=YB;function QB(t,e,n){return e===e?ZB(t,e,n):$B(t,KB,n)}const JB=QB;function XB(t,e,n,i){var o=n-1,r=t.length;while(++o<r){if(i(t[o],e)){return o}}return-1}const tM=XB;var eM=Array.prototype;var nM=eM.splice;function iM(t,e,n,i){var o=i?tM:JB,r=-1,s=e.length,a=t;if(t===e){e=gr(e)}if(n){a=ih(t,Ao(n))}while(++r<s){var c=0,l=e[r],d=n?n(l):l;while((c=o(a,d,c,i))>-1){if(a!==t){nM.call(a,c,1)}nM.call(t,c,1)}}return t}const oM=iM;function rM(t,e){return t&&t.length&&e&&e.length?oM(t,e):t}const sM=rM;var aM=ug(sM);const cM=aM;var lM=n(8468);var dM={injectType:"singletonStyleTag",attributes:{"data-cke":true}};dM.insert="head";dM.singleton=true;var uM=Tl()(lM.Z,dM);const hM=lM.Z.locals||{};class gM extends eu{constructor(t){super(t);this._dataSchema=t.plugins.get("DataSchema");this._allowedAttributes=new Su;this._disallowedAttributes=new Su;this._allowedElements=new Set;this._disallowedElements=new Set;this._dataInitialized=false;this._coupledAttributes=null;this._registerElementsAfterInit();this._registerElementHandlers();this._registerModelPostFixer()}static get pluginName(){return"DataFilter"}static get requires(){return[MB,ZD]}loadAllowedConfig(t){for(const e of t){const t=e.name||/[\s\S]+/;const n=AM(e);this.allowElement(t);n.forEach((t=>this.allowAttributes(t)))}}loadDisallowedConfig(t){for(const e of t){const t=e.name||/[\s\S]+/;const n=AM(e);if(n.length==0){this.disallowElement(t)}else{n.forEach((t=>this.disallowAttributes(t)))}}}allowElement(t){for(const e of this._dataSchema.getDefinitionsForView(t,true)){if(this._allowedElements.has(e)){continue}this._allowedElements.add(e);if(this._dataInitialized){this.editor.data.once("set",(()=>{this._fireRegisterEvent(e)}),{priority:M.get("highest")+1})}this._coupledAttributes=null}}disallowElement(t){for(const e of this._dataSchema.getDefinitionsForView(t,false)){this._disallowedElements.add(e.view)}}allowAttributes(t){this._allowedAttributes.add(t)}disallowAttributes(t){this._disallowedAttributes.add(t)}processViewAttributes(t,e){mM(t,e,this._disallowedAttributes);return mM(t,e,this._allowedAttributes)}_registerElementsAfterInit(){this.editor.data.on("init",(()=>{this._dataInitialized=true;for(const t of this._allowedElements){this._fireRegisterEvent(t)}}),{priority:M.get("highest")+1})}_registerElementHandlers(){this.on("register",((t,e)=>{const n=this.editor.model.schema;if(e.isObject&&!n.isRegistered(e.model)){this._registerObjectElement(e)}else if(e.isBlock){this._registerBlockElement(e)}else if(e.isInline){this._registerInlineElement(e)}else{throw new z("data-filter-invalid-definition",null,e)}t.stop()}),{priority:"lowest"})}_registerModelPostFixer(){const t=this.editor.model;t.document.registerPostFixer((e=>{const n=t.document.differ.getChanges();let i=false;const o=this._getCoupledAttributesMap();for(const t of n){if(t.type!="attribute"||t.attributeNewValue!==null){continue}const n=o.get(t.attributeKey);if(!n){continue}for(const{item:o}of t.range.getWalker({shallow:true})){for(const t of n){if(o.hasAttribute(t)){e.removeAttribute(t,o);i=true}}}}return i}))}_getCoupledAttributesMap(){if(this._coupledAttributes){return this._coupledAttributes}this._coupledAttributes=new Map;for(const t of this._allowedElements){if(t.coupledAttribute&&t.model){const e=this._coupledAttributes.get(t.coupledAttribute);if(e){e.push(t.model)}else{this._coupledAttributes.set(t.coupledAttribute,[t.model])}}}}_fireRegisterEvent(t){if(t.view&&this._disallowedElements.has(t.view)){return}this.fire(t.view?`register:${t.view}`:"register",t)}_registerObjectElement(t){const e=this.editor;const n=e.model.schema;const i=e.conversion;const{view:o,model:r}=t;n.register(r,t.modelSchema);if(!o){return}n.extend(t.model,{allowAttributes:["htmlAttributes","htmlContent"]});e.data.registerRawContentMatcher({name:o});i.for("upcast").elementToElement({view:o,model:OB(t),converterPriority:M.get("low")+1});i.for("upcast").add(UB(t,this));i.for("editingDowncast").elementToStructure({model:{name:r,attributes:["htmlAttributes"]},view:VB(e,t)});i.for("dataDowncast").elementToElement({model:r,view:(t,{writer:e})=>FB(o,t,e)});i.for("dataDowncast").add(WB(t))}_registerBlockElement(t){const e=this.editor;const n=e.model.schema;const i=e.conversion;const{view:o,model:r}=t;if(!n.isRegistered(t.model)){n.register(t.model,t.modelSchema);if(!o){return}i.for("upcast").elementToElement({model:r,view:o,converterPriority:M.get("low")+1});i.for("downcast").elementToElement({model:r,view:o})}if(!o){return}n.extend(t.model,{allowAttributes:"htmlAttributes"});i.for("upcast").add(UB(t,this));i.for("downcast").add(WB(t))}_registerInlineElement(t){const e=this.editor;const n=e.model.schema;const i=e.conversion;const o=t.model;n.extend("$text",{allowAttributes:o});if(t.attributeProperties){n.setAttributeProperties(o,t.attributeProperties)}i.for("upcast").add(jB(t,this));i.for("downcast").attributeToElement({model:o,view:HB(t)})}}function mM(t,e,n){const i=fM(t,e,n);const{attributes:o,styles:r,classes:s}=bM(i);const a={};if(o.size){for(const t of o){if(!CM(t)){o.delete(t)}}}if(o.size){a.attributes=kM(o,(e=>t.getAttribute(e)))}if(r.size){a.styles=kM(r,(e=>t.getStyle(e)))}if(s.size){a.classes=Array.from(s)}if(!Object.keys(a).length){return null}return a}function fM(t,{consumable:e},n){const i=n.matchAll(t)||[];const o=[];for(const n of i){pM(e,t,n);delete n.match.name;e.consume(t,n.match);o.push(n)}return o}function pM(t,e,n){for(const i of["attributes","classes","styles"]){const o=n.match[i];if(!o){continue}for(const n of Array.from(o)){if(!t.test(e,{[i]:[n]})){cM(o,n)}}}}function bM(t){const e={attributes:new Set,classes:new Set,styles:new Set};for(const n of t){for(const t in e){const i=n.match[t]||[];i.forEach((n=>e[t].add(n)))}}return e}function kM(t,e){const n={};for(const i of t){const t=e(i);if(t!==undefined){n[i]=e(i)}}return n}function wM(t,e){const{name:n}=t;if(pe(t[e])){return Object.entries(t[e]).map((([t,i])=>({name:n,[e]:{[t]:i}})))}if(Array.isArray(t[e])){return t[e].map((t=>({name:n,[e]:[t]})))}return[t]}function AM(t){const{name:e,attributes:n,classes:i,styles:o}=t;const r=[];if(n){r.push(...wM({name:e,attributes:n},"attributes"))}if(i){r.push(...wM({name:e,classes:i},"classes"))}if(o){r.push(...wM({name:e,styles:o},"styles"))}return r}function CM(t){try{document.createAttribute(t)}catch(t){return false}return true}class _M{constructor(t,e){this._startElement=t;this._referenceIndent=t.getAttribute("listIndent");this._isForward=e.direction=="forward";this._includeSelf=!!e.includeSelf;this._sameAttributes=Xc(e.sameAttributes||[]);this._sameIndent=!!e.sameIndent;this._lowerIndent=!!e.lowerIndent;this._higherIndent=!!e.higherIndent}static first(t,e){const n=new this(t,e);const i=n[Symbol.iterator]();return dl(i)}*[Symbol.iterator](){const t=[];for(const{node:e}of vM(this._getStartNode(),this._isForward?"forward":"backward")){const n=e.getAttribute("listIndent");if(n<this._referenceIndent){if(!this._lowerIndent){break}this._referenceIndent=n}else if(n>this._referenceIndent){if(!this._higherIndent){continue}if(!this._isForward){t.push(e);continue}}else{if(!this._sameIndent){if(this._higherIndent){if(t.length){yield*t;t.length=0}break}continue}if(this._sameAttributes.some((t=>e.getAttribute(t)!==this._startElement.getAttribute(t)))){break}}if(t.length){yield*t;t.length=0}yield e}}_getStartNode(){if(this._includeSelf){return this._startElement}return this._isForward?this._startElement.nextSibling:this._startElement.previousSibling}}function*vM(t,e="forward"){const n=e=="forward";let i=null;while(EM(t)){yield{node:t,previous:i};i=t;t=n?t.nextSibling:t.previousSibling}}class yM{constructor(t){this._listHead=t}[Symbol.iterator](){return vM(this._listHead,"forward")}}class xM{static next(){return I()}}function EM(t){return!!t&&t.is("element")&&t.hasAttribute("listItemId")}function DM(t,e={}){return[...TM(t,{...e,direction:"backward"}),...TM(t,{...e,direction:"forward"})]}function TM(t,e={}){const n=e.direction=="forward";const i=Array.from(new _M(t,{...e,includeSelf:n,sameIndent:true,sameAttributes:"listItemId"}));return n?i:i.reverse()}function SM(t){return Array.from(new _M(t,{direction:"forward",higherIndent:true}))}function IM(t){const e=new _M(t,{sameIndent:true,sameAttributes:"listType"});const n=new _M(t,{sameIndent:true,sameAttributes:"listType",includeSelf:true,direction:"forward"});return[...Array.from(e).reverse(),...n]}function BM(t){const e=_M.first(t,{sameIndent:true,sameAttributes:"listItemId"});if(!e){return true}return false}function MM(t){const e=_M.first(t,{direction:"forward",sameIndent:true,sameAttributes:"listItemId"});if(!e){return true}return false}function LM(t,e={}){t=Xc(t);const n=e.withNested!==false;const i=new Set;for(const e of t){for(const t of DM(e,{higherIndent:n})){i.add(t)}}return HM(i)}function NM(t){t=Xc(t);const e=new Set;for(const n of t){for(const t of IM(n)){e.add(t)}}return HM(e)}function zM(t,e){const n=TM(t,{direction:"forward"});const i=xM.next();for(const t of n){e.setAttribute("listItemId",i,t)}return n}function PM(t,e,n){const i={};for(const[t,n]of e.getAttributes()){if(t.startsWith("list")){i[t]=n}}const o=TM(t,{direction:"forward"});for(const t of o){n.setAttributes(i,t)}return o}function RM(t,e,{expand:n,indentBy:i=1}={}){t=Xc(t);const o=n?LM(t):t;for(const t of o){const n=t.getAttribute("listIndent")+i;if(n<0){VM(t,e)}else{e.setAttribute("listIndent",n,t)}}return o}function OM(t,e){t=Xc(t);const n=LM(t);const i=new Set;const o=Math.min(...n.map((t=>t.getAttribute("listIndent"))));const r=new Map;for(const t of n){r.set(t,_M.first(t,{lowerIndent:true}))}for(const t of n){if(i.has(t)){continue}i.add(t);const n=t.getAttribute("listIndent")-1;if(n<0){VM(t,e);continue}if(t.getAttribute("listIndent")==o){const n=WM(t,r.get(t),e);for(const t of n){i.add(t)}if(n.length){continue}}e.setAttribute("listIndent",n,t)}return HM(i)}function VM(t,e){t=Xc(t);for(const n of t){for(const t of n.getAttributeKeys()){if(t.startsWith("list")){e.removeAttribute(t,n)}}}return t}function FM(t){if(!t.length){return false}const e=t[0].getAttribute("listItemId");if(!e){return false}return!t.some((t=>t.getAttribute("listItemId")!=e))}function jM(t,e){const n=[];let i=Number.POSITIVE_INFINITY;for(const{node:o}of vM(t.nextSibling,"forward")){const t=o.getAttribute("listIndent");if(t==0){break}if(t<i){i=t}const r=t-i;e.setAttribute("listIndent",r,o);n.push(o)}return n}function HM(t){return Array.from(t).filter((t=>t.root.rootName!=="$graveyard")).sort(((t,e)=>t.index-e.index))}function UM(t){const e=t.document.selection.getSelectedElement();if(!e){return null}if(t.schema.isObject(e)&&t.schema.isBlock(e)){return e}return null}function WM(t,e,n){const i=TM(e,{direction:"forward"});if(i.pop().index>t.index){return PM(t,e,n)}return[]}class qM extends iu{constructor(t,e){super(t);this._direction=e}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model;const e=$M(t.document.selection);t.change((t=>{const n=[];if(FM(e)&&!BM(e[0])){if(this._direction=="forward"){n.push(...RM(e,t))}n.push(...zM(e[0],t))}else{if(this._direction=="forward"){n.push(...RM(e,t,{expand:true}))}else{n.push(...OM(e,t))}}for(const e of n){if(!e.hasAttribute("listType")){continue}const n=_M.first(e,{sameIndent:true});if(n){t.setAttribute("listType",n.getAttribute("listType"),e)}}this._fireAfterExecute(n)}))}_fireAfterExecute(t){this.fire("afterExecute",HM(new Set(t)))}_checkEnabled(){let t=$M(this.editor.model.document.selection);let e=t[0];if(!e){return false}if(this._direction=="backward"){return true}if(FM(t)&&!BM(t[0])){return true}t=LM(t);e=t[0];const n=_M.first(e,{sameIndent:true});if(!n){return false}if(n.getAttribute("listType")==e.getAttribute("listType")){return true}return false}}function $M(t){const e=Array.from(t.getSelectedBlocks());const n=e.findIndex((t=>!EM(t)));if(n!=-1){e.length=n}return e}class GM extends iu{constructor(t,e){super(t);this.type=e}refresh(){this.value=this._getValue();this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model;const n=e.document;const i=UM(e);const o=Array.from(n.selection.getSelectedBlocks()).filter((t=>e.schema.checkAttribute(t,"listType")));const r=t.forceValue!==undefined?!t.forceValue:this.value;e.change((t=>{if(r){const e=o[o.length-1];const n=TM(e,{direction:"forward"});const i=[];if(n.length>1){i.push(...zM(n[1],t))}i.push(...VM(o,t));i.push(...jM(e,t));this._fireAfterExecute(i)}else if((i||n.selection.isCollapsed)&&EM(o[0])){const e=IM(i||o[0]);for(const n of e){t.setAttribute("listType",this.type,n)}this._fireAfterExecute(e)}else{const e=[];for(const n of o){if(!n.hasAttribute("listType")){t.setAttributes({listIndent:0,listItemId:xM.next(),listType:this.type},n);e.push(n)}else{for(const i of LM(n,{withNested:false})){if(i.getAttribute("listType")!=this.type){t.setAttribute("listType",this.type,i);e.push(i)}}}}this._fireAfterExecute(e)}}))}_fireAfterExecute(t){this.fire("afterExecute",HM(new Set(t)))}_getValue(){const t=this.editor.model.document.selection;const e=Array.from(t.getSelectedBlocks());if(!e.length){return false}for(const t of e){if(t.getAttribute("listType")!=this.type){return false}}return true}_checkEnabled(){const t=this.editor.model.document.selection;const e=this.editor.model.schema;const n=Array.from(t.getSelectedBlocks());if(!n.length){return false}if(this.value){return true}for(const t of n){if(e.checkAttribute(t,"listType")){return true}}return false}}class KM extends iu{constructor(t,e){super(t);this._direction=e}refresh(){this.isEnabled=this._checkEnabled()}execute({shouldMergeOnBlocksContentLevel:t=false}={}){const e=this.editor.model;const n=e.document.selection;const i=[];e.change((o=>{const{firstElement:r,lastElement:s}=this._getMergeSubjectElements(n,t);const a=r.getAttribute("listIndent")||0;const c=s.getAttribute("listIndent");const l=s.getAttribute("listItemId");if(a!=c){const t=SM(s);i.push(...RM([s,...t],o,{indentBy:a-c,expand:a<c}))}if(t){let t=n;if(n.isCollapsed){t=o.createSelection(o.createRange(o.createPositionAt(r,"end"),o.createPositionAt(s,0)))}e.deleteContent(t,{doNotResetEntireContent:n.isCollapsed});const a=t.getLastPosition().parent;const c=a.nextSibling;i.push(a);if(c&&c!==s&&c.getAttribute("listItemId")==l){i.push(...PM(c,a,o))}}else{i.push(...PM(s,r,o))}this._fireAfterExecute(i)}))}_fireAfterExecute(t){this.fire("afterExecute",HM(new Set(t)))}_checkEnabled(){const t=this.editor.model;const e=t.document.selection;const n=UM(t);if(e.isCollapsed||n){const t=n||e.getFirstPosition().parent;if(!EM(t)){return false}const i=this._direction=="backward"?t.previousSibling:t.nextSibling;if(!i){return false}if(FM([t,i])){return false}}else{const t=e.getLastPosition();const n=e.getFirstPosition();if(t.parent===n.parent){return false}if(!EM(t.parent)){return false}}return true}_getMergeSubjectElements(t,e){const n=this.editor.model;const i=UM(n);let o,r;if(t.isCollapsed||i){const n=i||t.getFirstPosition().parent;const s=BM(n);if(this._direction=="backward"){r=n;if(s&&!e){o=_M.first(n,{sameIndent:true,lowerIndent:true})}else{o=n.previousSibling}}else{o=n;r=n.nextSibling}}else{o=t.getFirstPosition().parent;r=t.getLastPosition().parent}return{firstElement:o,lastElement:r}}}class YM extends iu{constructor(t,e){super(t);this._direction=e}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor;t.model.change((t=>{const e=zM(this._getStartBlock(),t);this._fireAfterExecute(e)}))}_fireAfterExecute(t){this.fire("afterExecute",HM(new Set(t)))}_checkEnabled(){const t=this.editor.model.document.selection;const e=this._getStartBlock();return t.isCollapsed&&EM(e)&&!BM(e)}_getStartBlock(){const t=this.editor.model.document;const e=t.selection.getFirstPosition().parent;return this._direction=="before"?e:e.nextSibling}}class ZM extends eu{static get pluginName(){return"DocumentListUtils"}expandListBlocksToCompleteList(t){return NM(t)}isFirstBlockOfListItem(t){return BM(t)}isListItemBlock(t){return EM(t)}}function QM(t){return t.is("element","ol")||t.is("element","ul")}function JM(t){return t.is("element","li")}function XM(t){let e=0;let n=t.parent;while(n){if(JM(n)){e++}else{const t=n.previousSibling;if(t&&JM(t)){e++}}n=n.parent}return e}function tL(t,e,n,i=iL(n,e)){return t.createAttributeElement(nL(n),null,{priority:2*e/100-100,id:i})}function eL(t,e,n){return t.createAttributeElement("li",null,{priority:(2*e+1)/100-100,id:n})}function nL(t){return t=="numbered"?"ol":"ul"}function iL(t,e){return`list-${t}-${e}`}function oL(t,e){const n=t.nodeBefore;if(!EM(n)){const n=t.nodeAfter;if(EM(n)){e.set(n,n)}}else{let t=n;for(const{node:n}of vM(t,"backward")){t=n;if(e.has(t)){return}}e.set(n,t)}}function rL(t,e){let n=0;let i=-1;let o=null;let r=false;for(const{node:s}of t){const t=s.getAttribute("listIndent");if(t>n){let a;if(o===null){o=t-n;a=n}else{if(o>t){o=t}a=t-o}if(a>i+1){a=i+1}e.setAttribute("listIndent",a,s);r=true;i=a}else{o=null;n=t+1;i=t}}return r}function sL(t,e,n){const i=new Set;let o=false;for(const{node:r}of t){if(i.has(r)){continue}let t=r.getAttribute("listType");let s=r.getAttribute("listItemId");if(e.has(s)){s=xM.next()}e.add(s);for(const e of TM(r,{direction:"forward"})){i.add(e);if(e.getAttribute("listType")!=t){s=xM.next();t=e.getAttribute("listType")}if(e.getAttribute("listItemId")!=s){n.setAttribute("listItemId",s,e);o=true}}}return o}function aL(){return(t,e,n)=>{const{writer:i,schema:o}=n;if(!e.modelRange){return}const r=Array.from(e.modelRange.getItems({shallow:true})).filter((t=>o.checkAttribute(t,"listItemId")));if(!r.length){return}const s={listItemId:xM.next(),listIndent:XM(e.viewItem),listType:e.viewItem.parent&&e.viewItem.parent.is("element","ol")?"numbered":"bulleted"};for(const t of r){if(!EM(t)){i.setAttributes(s,t)}}if(r.length>1){if(r[1].getAttribute("listItemId")!=s.listItemId){n.keepEmptyElement(r[0])}}}}function cL(){return(t,e,n)=>{if(!n.consumable.test(e.viewItem,{name:true})){return}const i=new kC(e.viewItem.document);for(const t of Array.from(e.viewItem.getChildren())){if(!JM(t)&&!QM(t)){i.remove(t)}}}}function lL(t,e,n,i){return()=>{const i=t.document.differ.getChanges();const s=[];const a=new Map;const c=new Set;for(const t of i){if(t.type=="insert"&&t.name!="$text"){oL(t.position,a);if(!t.attributes.has("listItemId")){oL(t.position.getShiftedBy(t.length),a)}else{c.add(t.position.nodeAfter)}}else if(t.type=="remove"&&t.attributes.has("listItemId")){oL(t.position,a)}else if(t.type=="attribute"){const e=t.range.start.nodeAfter;if(n.includes(t.attributeKey)){oL(t.range.start,a);if(t.attributeNewValue===null){oL(t.range.start.getShiftedBy(1),a);if(r(e)){s.push(e)}}else{c.add(e)}}else if(EM(e)){if(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=[];const o=new Set;const a=[];for(const{node:c,previous:l}of vM(t,"forward")){if(o.has(c)){continue}const t=c.getAttribute("listIndent");if(l&&t<l.getAttribute("listIndent")){a.length=t+1}a[t]=Object.fromEntries(Array.from(c.getAttributes()).filter((([t])=>n.includes(t))));const d=TM(c,{direction:"forward"});for(const t of d){o.add(t);if(r(t,d)){i.push(t)}else if(s(t,a,e)){i.push(t)}}}return i}function r(t,i){if(!t.is("element","paragraph")){return false}const o=e.mapper.toViewElement(t);if(!o){return false}const r=pL(t,n,i);if(r&&o.is("element","p")){return true}else if(!r&&o.is("element","span")){return true}return false}function s(t,n,o){if(o.has(t)){return false}const r=e.mapper.toViewElement(t);let s=n.length-1;for(let t=r.parent;!t.is("editableElement");t=t.parent){const e=JM(t);const o=QM(t);if(!o&&!e){continue}const r=`checkAttributes:${e?"item":"list"}`;const a=i.fire(r,{viewElement:t,modelAttributes:n[s]});if(a){break}if(o){s--;if(s<0){return false}}}return true}}function dL(t,e,n){const i=fL(t);return(o,r,s)=>{const{writer:a,mapper:c,consumable:l}=s;const d=r.item;if(!t.includes(r.attributeKey)){return}if(!i(d,l)){return}const u=hL(d,c,n);gL(u,a);mL(d,a.createRangeOn(u),e,a)}}function uL(t,{dataPipeline:e}={}){return(n,{writer:i})=>{if(!pL(n,t)){return null}if(!e){return i.createContainerElement("span",{class:"ck-list-bogus-paragraph"})}const o=i.createContainerElement("p");i.setCustomProperty("dataPipeline:transparentRendering",true,o);return o}}function hL(t,e,n){const i=n.createRangeOn(t);const o=e.toViewRange(i).getTrimmed();return o.getContainedElement()}function gL(t,e){let n=t.parent;while(n.is("attributeElement")&&["ul","ol","li"].includes(n.name)){const i=n.parent;e.unwrap(e.createRangeOn(t),n);n=i}}function mL(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=eL(i,t,r.getAttribute("listItemId"));const s=tL(i,t,r.getAttribute("listType"));for(const t of n){if(r.hasAttribute(t.attributeName)){t.setAttributeOnDowncast(i,r.getAttribute(t.attributeName),t.scope=="list"?s:o)}}e=i.wrap(e,o);e=i.wrap(e,s);if(t==0){break}r=_M.first(r,{lowerIndent:true});if(!r){break}}}function fL(t){return(e,n)=>{const i=[];for(const n of t){if(e.hasAttribute(n)){i.push(`attribute:${n}`)}}if(!i.every((t=>n.test(e,t)!==false))){return false}i.forEach((t=>n.consume(e,t)));return true}}function pL(t,e,n=DM(t)){if(!EM(t)){return false}for(const n of t.getAttributeKeys()){if(n.startsWith("selection:")){continue}if(!e.includes(n)){return false}}return n.length<2}var bL=n(8676);var kL={injectType:"singletonStyleTag",attributes:{"data-cke":true}};kL.insert="head";kL.singleton=true;var wL=Tl()(bL.Z,kL);const AL=bL.Z.locals||{};var CL=n(9989);var _L={injectType:"singletonStyleTag",attributes:{"data-cke":true}};_L.insert="head";_L.singleton=true;var vL=Tl()(CL.Z,_L);const yL=CL.Z.locals||{};const xL=["listType","listIndent","listItemId"];class EL extends eu{constructor(){super(...arguments);this._downcastStrategies=[]}static get pluginName(){return"DocumentListEditing"}static get requires(){return[YE,oE,ZM]}init(){const t=this.editor;const e=t.model;if(t.plugins.has("ListEditing")){throw new z("document-list-feature-conflict",this,{conflictPlugin:"ListEditing"})}e.schema.extend("$container",{allowAttributes:xL});e.schema.extend("$block",{allowAttributes:xL});e.schema.extend("$blockObject",{allowAttributes:xL});for(const t of xL){e.schema.setAttributeProperties(t,{copyOnReplace:true})}t.commands.add("numberedList",new GM(t,"numbered"));t.commands.add("bulletedList",new GM(t,"bulleted"));t.commands.add("indentList",new qM(t,"forward"));t.commands.add("outdentList",new qM(t,"backward"));t.commands.add("mergeListItemBackward",new KM(t,"backward"));t.commands.add("mergeListItemForward",new KM(t,"forward"));t.commands.add("splitListItemBefore",new YM(t,"before"));t.commands.add("splitListItemAfter",new YM(t,"after"));this._setupDeleteIntegration();this._setupEnterIntegration();this._setupTabIntegration();this._setupClipboardIntegration()}afterInit(){const t=this.editor;const e=t.commands;const n=e.get("indent");const i=e.get("outdent");if(n){n.registerChildCommand(e.get("indentList"),{priority:"high"})}if(i){i.registerChildCommand(e.get("outdentList"),{priority:"lowest"})}this._setupModelPostFixing();this._setupConversion()}registerDowncastStrategy(t){this._downcastStrategies.push(t)}_getListAttributeNames(){return[...xL,...this._downcastStrategies.map((t=>t.attributeName))]}_setupDeleteIntegration(){const t=this.editor;const e=t.commands.get("mergeListItemBackward");const n=t.commands.get("mergeListItemForward");this.listenTo(t.editing.view.document,"delete",((i,o)=>{const r=t.model.document.selection;if(UM(t.model)){return}t.model.change((()=>{const s=r.getFirstPosition();if(r.isCollapsed&&o.direction=="backward"){if(!s.isAtStart){return}const n=s.parent;if(!EM(n)){return}const r=_M.first(n,{sameAttributes:"listType",sameIndent:true});if(!r&&n.getAttribute("listIndent")===0){if(!MM(n)){t.execute("splitListItemAfter")}t.execute("outdentList")}else{if(!e.isEnabled){return}e.execute({shouldMergeOnBlocksContentLevel:SL(t.model,"backward")})}o.preventDefault();i.stop()}else{if(r.isCollapsed&&!r.getLastPosition().isAtEnd){return}if(!n.isEnabled){return}n.execute({shouldMergeOnBlocksContentLevel:SL(t.model,"forward")});o.preventDefault();i.stop()}}))}),{context:"li"})}_setupEnterIntegration(){const t=this.editor;const e=t.model;const n=t.commands;const i=n.get("enter");this.listenTo(t.editing.view.document,"enter",((n,i)=>{const o=e.document;const r=o.selection.getFirstPosition().parent;if(o.selection.isCollapsed&&EM(r)&&r.isEmpty&&!i.isSoft){const e=BM(r);const o=MM(r);if(e&&o){t.execute("outdentList");i.preventDefault();n.stop()}else if(e&&!o){t.execute("splitListItemAfter");i.preventDefault();n.stop()}else if(o){t.execute("splitListItemBefore");i.preventDefault();n.stop()}}}),{context:"li"});this.listenTo(i,"afterExecute",(()=>{const e=n.get("splitListItemBefore");e.refresh();if(!e.isEnabled){return}const i=t.model.document;const o=i.selection.getLastPosition().parent;const r=DM(o);if(r.length===2){e.execute()}}))}_setupTabIntegration(){const t=this.editor;this.listenTo(t.editing.view.document,"tab",((e,n)=>{const i=n.shiftKey?"outdentList":"indentList";const o=this.editor.commands.get(i);if(o.isEnabled){t.execute(i);n.stopPropagation();n.preventDefault();e.stop()}}),{context:"li"})}_setupConversion(){const t=this.editor;const e=t.model;const n=this._getListAttributeNames();t.conversion.for("upcast").elementToElement({view:"li",model:"paragraph"}).add((t=>{t.on("element:li",aL());t.on("element:ul",cL(),{priority:"high"});t.on("element:ol",cL(),{priority:"high"})}));t.conversion.for("editingDowncast").elementToElement({model:"paragraph",view:uL(n),converterPriority:"high"});t.conversion.for("dataDowncast").elementToElement({model:"paragraph",view:uL(n,{dataPipeline:true}),converterPriority:"high"});t.conversion.for("downcast").add((t=>{t.on("attribute",dL(n,this._downcastStrategies,e))}));this.listenTo(e.document,"change:data",lL(e,t.editing,n,this),{priority:"high"});this.on("checkAttributes:item",((t,{viewElement:e,modelAttributes:n})=>{if(e.id!=n.listItemId){t.return=true;t.stop()}}));this.on("checkAttributes:list",((t,{viewElement:e,modelAttributes:n})=>{if(e.name!=nL(n.listType)||e.id!=iL(n.listType,n.listIndent)){t.return=true;t.stop()}}))}_setupModelPostFixing(){const t=this.editor.model;const e=this._getListAttributeNames();t.document.registerPostFixer((n=>DL(t,n,e,this)));this.on("postFixer",((t,{listNodes:e,writer:n})=>{t.return=rL(e,n)||t.return}),{priority:"high"});this.on("postFixer",((t,{listNodes:e,writer:n,seenIds:i})=>{t.return=sL(e,i,n)||t.return}),{priority:"high"})}_setupClipboardIntegration(){const t=this.editor.model;this.listenTo(t,"insertContent",TL(t),{priority:"high"});this.listenTo(t,"getSelectedContent",((e,[n])=>{const i=FM(Array.from(n.getSelectedBlocks()));if(i){t.change((t=>VM(Array.from(e.return.getChildren()),t)))}}))}}function DL(t,e,n,i){const o=t.document.differ.getChanges();const r=new Map;let s=false;for(const i of o){if(i.type=="insert"&&i.name!="$text"){const o=i.position.nodeAfter;if(!t.schema.checkAttribute(o,"listItemId")){for(const t of Array.from(o.getAttributeKeys())){if(n.includes(t)){e.removeAttribute(t,o);s=true}}}oL(i.position,r);if(!i.attributes.has("listItemId")){oL(i.position.getShiftedBy(i.length),r)}for(const{item:e,previousPosition:n}of t.createRangeIn(o)){if(EM(e)){oL(n,r)}}}else if(i.type=="remove"){oL(i.position,r)}else if(i.type=="attribute"&&n.includes(i.attributeKey)){oL(i.range.start,r);if(i.attributeNewValue===null){oL(i.range.start.getShiftedBy(1),r)}}}const a=new Set;for(const t of r.values()){s=i.fire("postFixer",{listNodes:new yM(t),listHead:t,writer:e,seenIds:a})||s}return s}function TL(t){return(e,[n,i])=>{const o=n.is("documentFragment")?n.getChild(0):n;if(!EM(o)){return}let r;if(!i){r=t.document.selection}else{r=t.createSelection(i)}const s=r.getFirstPosition();let a=null;if(EM(s.parent)){a=s.parent}else if(EM(s.nodeBefore)){a=s.nodeBefore}if(!a){return}const c=a.getAttribute("listIndent")-o.getAttribute("listIndent");if(c<=0){return}t.change((t=>{for(const{node:e}of vM(o,"forward")){t.setAttribute("listIndent",e.getAttribute("listIndent")+c,e)}}))}}function SL(t,e){const n=t.document.selection;if(!n.isCollapsed){return!UM(t)}if(e==="forward"){return true}const i=n.getFirstPosition();const o=i.parent;const r=o.previousSibling;if(t.schema.isObject(r)){return false}if(r.isEmpty){return true}return FM([o,r])}function IL(t){const e=t.createContainerElement("li");e.getFillerOffset=UL;return e}function BL(t,e){const n=e.mapper;const i=e.writer;const o=t.getAttribute("listType")=="numbered"?"ol":"ul";const r=IL(i);const s=i.createContainerElement(o,null);i.insert(i.createPositionAt(s,0),r);n.bindElements(t,r);return r}function ML(t,e,n,i){const o=e.parent;const r=n.mapper;const s=n.writer;let a=r.toViewPosition(i.createPositionBefore(t));const c=zL(t.previousSibling,{sameIndent:true,smallerIndent:true,listIndent:t.getAttribute("listIndent")});const l=t.previousSibling;if(c&&c.getAttribute("listIndent")==t.getAttribute("listIndent")){const t=r.toViewElement(c);a=s.breakContainer(s.createPositionAfter(t))}else{if(l&&l.name=="listItem"){a=r.toViewPosition(i.createPositionAt(l,"end"));const t=r.findMappedViewAncestor(a);const e=RL(t);if(e){a=s.createPositionBefore(e)}else{a=s.createPositionAt(t,"end")}}else{a=r.toViewPosition(i.createPositionBefore(t))}}a=NL(a);s.insert(a,o);if(l&&l.name=="listItem"){const t=r.toViewElement(l);const n=s.createRange(s.createPositionAt(t,0),a);const i=n.getWalker({ignoreElementEnd:true});for(const t of i){if(t.item.is("element","li")){const n=s.breakContainer(s.createPositionBefore(t.item));const o=t.item.parent;const r=s.createPositionAt(e,"end");LL(s,r.nodeBefore,r.nodeAfter);s.move(s.createRangeOn(o),r);i.position=n}}}else{const n=o.nextSibling;if(n&&(n.is("element","ul")||n.is("element","ol"))){let i=null;for(const e of n.getChildren()){const n=r.toModelElement(e);if(n&&n.getAttribute("listIndent")>t.getAttribute("listIndent")){i=e}else{break}}if(i){s.breakContainer(s.createPositionAfter(i));s.move(s.createRangeOn(i.parent),s.createPositionAt(e,"end"))}}}LL(s,o,o.nextSibling);LL(s,o.previousSibling,o)}function LL(t,e,n){if(!e||!n||e.name!="ul"&&e.name!="ol"){return null}if(e.name!=n.name||e.getAttribute("class")!==n.getAttribute("class")){return null}return t.mergeContainers(t.createPositionAfter(e))}function NL(t){return t.getLastMatchingPosition((t=>t.item.is("uiElement")))}function zL(t,e){const n=!!e.sameIndent;const i=!!e.smallerIndent;const o=e.listIndent;let r=t;while(r&&r.name=="listItem"){const t=r.getAttribute("listIndent");if(n&&o==t||i&&o>t){return r}if(e.direction==="forward"){r=r.nextSibling}else{r=r.previousSibling}}return null}function PL(t,e,n,i){t.ui.componentFactory.add(e,(o=>{const r=t.commands.get(e);const s=new kd(o);s.set({label:n,icon:i,tooltip:true,isToggleable:true});s.bind("isOn","isEnabled").to(r,"value","isEnabled");s.on("execute",(()=>{t.execute(e);t.editing.view.focus()}));return s}))}function RL(t){for(const e of t.getChildren()){if(e.name=="ul"||e.name=="ol"){return e}}return null}function OL(t,e){const n=[];const i=t.parent;const o={ignoreElementEnd:false,startPosition:t,shallow:true,direction:e};const r=i.getAttribute("listIndent");const s=[...new TreeWalker(o)].filter((t=>t.item.is("element"))).map((t=>t.item));for(const t of s){if(!t.is("element","listItem")){break}if(t.getAttribute("listIndent")<r){break}if(t.getAttribute("listIndent")>r){continue}if(t.getAttribute("listType")!==i.getAttribute("listType")){break}if(t.getAttribute("listStyle")!==i.getAttribute("listStyle")){break}if(t.getAttribute("listReversed")!==i.getAttribute("listReversed")){break}if(t.getAttribute("listStart")!==i.getAttribute("listStart")){break}if(e==="backward"){n.unshift(t)}else{n.push(t)}}return n}function VL(t){const e=t.document;let n=[...e.selection.getSelectedBlocks()].filter((t=>t.is("element","listItem"))).map((e=>{const n=t.change((t=>t.createPositionAt(e,0)));return[...OL(n,"backward"),...OL(n,"forward")]})).flat();n=[...new Set(n)];return n}const FL=null&&["disc","circle","square"];const jL=null&&["decimal","decimal-leading-zero","lower-roman","upper-roman","lower-latin","upper-latin"];function HL(t){if(FL.includes(t)){return"bulleted"}if(jL.includes(t)){return"numbered"}return null}function UL(){const t=!this.isEmpty&&(this.getChild(0).name=="ul"||this.getChild(0).name=="ol");if(this.isEmpty||t){return 0}return getFillerOffset.call(this)}const WL='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M7 5.75c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zM3.5 3v5H2V3.7H1v-1h2.5V3zM.343 17.857l2.59-3.257H2.92a.6.6 0 1 0-1.04 0H.302a2 2 0 1 1 3.995 0h-.001c-.048.405-.16.734-.333.988-.175.254-.59.692-1.244 1.312H4.3v1h-4l.043-.043zM7 14.75a.75.75 0 0 1 .75-.75h9.5a.75.75 0 1 1 0 1.5h-9.5a.75.75 0 0 1-.75-.75z"/></svg>';const qL='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M7 5.75c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zm-6 0C1 4.784 1.777 4 2.75 4c.966 0 1.75.777 1.75 1.75 0 .966-.777 1.75-1.75 1.75C1.784 7.5 1 6.723 1 5.75zm6 9c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zm-6 0c0-.966.777-1.75 1.75-1.75.966 0 1.75.777 1.75 1.75 0 .966-.777 1.75-1.75 1.75-.966 0-1.75-.777-1.75-1.75z"/></svg>';class $L extends eu{static get pluginName(){return"ListUI"}init(){const t=this.editor.t;PL(this.editor,"numberedList",t("Numbered List"),WL);PL(this.editor,"bulletedList",t("Bulleted List"),qL)}}class GL extends eu{static get requires(){return[EL,$L]}static get pluginName(){return"DocumentList"}}class KL extends iu{refresh(){const t=this._getValue();this.value=t;this.isEnabled=t!=null}execute({startIndex:t=1}={}){const e=this.editor.model;const n=e.document;let i=Array.from(n.selection.getSelectedBlocks()).filter((t=>EM(t)&&t.getAttribute("listType")=="numbered"));i=NM(i);e.change((e=>{for(const n of i){e.setAttribute("listStart",t>=0?t:1,n)}}))}_getValue(){const t=this.editor.model;const e=t.document;const n=dl(e.selection.getSelectedBlocks());if(n&&EM(n)&&n.getAttribute("listType")=="numbered"){return n.getAttribute("listStart")}return null}}const YL={};const ZL={};const QL={};const JL=[{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 JL){YL[t]=n;ZL[t]=e;if(e){QL[e]=t}}function XL(){return JL.map((t=>t.listStyle))}function tN(t){return YL[t]||null}function eN(t){return QL[t]||null}function nN(t){return ZL[t]||null}class iN extends iu{constructor(t,e,n){super(t);this.defaultType=e;this._supportedTypes=n}refresh(){this.value=this._getValue();this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model;const n=e.document;e.change((e=>{this._tryToConvertItemsToList(t);let i=Array.from(n.selection.getSelectedBlocks()).filter((t=>t.hasAttribute("listType")));if(!i.length){return}i=NM(i);for(const n of i){e.setAttribute("listStyle",t.type||this.defaultType,n)}}))}isStyleTypeSupported(t){if(!this._supportedTypes){return true}return this._supportedTypes.includes(t)}_getValue(){const t=dl(this.editor.model.document.selection.getSelectedBlocks());if(EM(t)){return t.getAttribute("listStyle")}return null}_checkEnabled(){const t=this.editor;const e=t.commands.get("numberedList");const n=t.commands.get("bulletedList");return e.isEnabled||n.isEnabled}_tryToConvertItemsToList(t){if(!t.type){return}const e=tN(t.type);if(!e){return}const n=this.editor;const i=`${e}List`;const o=n.commands.get(i);if(!o.value){n.execute(i)}}}class oN extends iu{refresh(){const t=this._getValue();this.value=t;this.isEnabled=t!=null}execute(t={}){const e=this.editor.model;const n=e.document;let i=Array.from(n.selection.getSelectedBlocks()).filter((t=>EM(t)&&t.getAttribute("listType")=="numbered"));i=NM(i);e.change((e=>{for(const n of i){e.setAttribute("listReversed",!!t.reversed,n)}}))}_getValue(){const t=this.editor.model;const e=t.document;const n=dl(e.selection.getSelectedBlocks());if(EM(n)&&n.getAttribute("listType")=="numbered"){return n.getAttribute("listReversed")}return null}}function rN(t){return(e,n,i)=>{const{writer:o,schema:r,consumable:s}=i;if(s.test(n.viewItem,t.viewConsumables)===false){return}if(!n.modelRange){Object.assign(n,i.convertChildren(n.viewItem,n.modelCursor))}let a=false;for(const e of n.modelRange.getItems({shallow:true})){if(!r.checkAttribute(e,t.attributeName)){continue}if(!t.appliesToListItem(e)){continue}if(e.hasAttribute(t.attributeName)){continue}o.setAttribute(t.attributeName,t.getAttributeOnUpcast(n.viewItem),e);a=true}if(a){s.consume(n.viewItem,t.viewConsumables)}}}class sN extends eu{static get pluginName(){return"DocumentListPropertiesUtils"}getAllSupportedStyleTypes(){return XL()}getListTypeFromListStyleType(t){return tN(t)}getListStyleTypeFromTypeAttribute(t){return eN(t)}getTypeAttributeFromListStyleType(t){return nN(t)}}const aN="default";class cN extends eu{static get requires(){return[EL,sN]}static get pluginName(){return"DocumentListPropertiesEditing"}constructor(t){super(t);t.config.define("list",{properties:{styles:true,startIndex:false,reversed:false}})}init(){const t=this.editor;const e=t.model;const n=t.plugins.get(EL);const i=t.config.get("list.properties");const o=lN(i);for(const i of o){i.addCommand(t);e.schema.extend("$container",{allowAttributes:i.attributeName});e.schema.extend("$block",{allowAttributes:i.attributeName});e.schema.extend("$blockObject",{allowAttributes:i.attributeName});n.registerDowncastStrategy({scope:"list",attributeName:i.attributeName,setAttributeOnDowncast(t,e,n){i.setAttributeOnDowncast(t,e,n)}})}t.conversion.for("upcast").add((t=>{for(const e of o){t.on("element:ol",rN(e));t.on("element:ul",rN(e))}}));n.on("checkAttributes:list",((t,{viewElement:e,modelAttributes:n})=>{for(const i of o){if(i.getAttributeOnUpcast(e)!=n[i.attributeName]){t.return=true;t.stop()}}}));this.listenTo(t.commands.get("indentList"),"afterExecute",((t,n)=>{e.change((t=>{for(const e of n){for(const n of o){if(n.appliesToListItem(e)){t.setAttribute(n.attributeName,n.defaultValue,e)}}}}))}));n.on("postFixer",((t,{listNodes:e,writer:n})=>{for(const{node:i}of e){for(const e of o){if(e.hasValidAttribute(i)){continue}if(e.appliesToListItem(i)){n.setAttribute(e.attributeName,e.defaultValue,i)}else{n.removeAttribute(e.attributeName,i)}t.return=true}}}));n.on("postFixer",((t,{listNodes:e,writer:n})=>{const i=[];for(const{node:r,previous:s}of e){if(!s){continue}const e=r.getAttribute("listIndent");const a=s.getAttribute("listIndent");let c=null;if(e>a){i[a]=s}else if(e<a){c=i[e];i.length=e}else{c=s}if(!c){continue}if(c.getAttribute("listType")!=r.getAttribute("listType")){continue}for(const e of o){const{attributeName:i}=e;if(!e.appliesToListItem(r)){continue}const o=c.getAttribute(i);if(r.getAttribute(i)!=o){n.setAttribute(i,o,r);t.return=true}}}}))}}function lN(t){const e=[];if(t.styles){const n=typeof t.styles=="object"&&t.styles.useAttribute;e.push({attributeName:"listStyle",defaultValue:aN,viewConsumables:{styles:"list-style-type"},addCommand(t){let e=XL();if(n){e=e.filter((t=>!!nN(t)))}t.commands.add("listStyle",new iN(t,aN,e))},appliesToListItem(){return true},hasValidAttribute(t){if(!t.hasAttribute("listStyle")){return false}const e=t.getAttribute("listStyle");if(e==aN){return true}return tN(e)==t.getAttribute("listType")},setAttributeOnDowncast(t,e,i){if(e&&e!==aN){if(n){const n=nN(e);if(n){t.setAttribute("type",n,i);return}}else{t.setStyle("list-style-type",e,i);return}}t.removeStyle("list-style-type",i);t.removeAttribute("type",i)},getAttributeOnUpcast(t){const e=t.getStyle("list-style-type");if(e){return e}const n=t.getAttribute("type");if(n){return eN(n)}return aN}})}if(t.reversed){e.push({attributeName:"listReversed",defaultValue:false,viewConsumables:{attributes:"reversed"},addCommand(t){t.commands.add("listReversed",new oN(t))},appliesToListItem(t){return t.getAttribute("listType")=="numbered"},hasValidAttribute(t){return this.appliesToListItem(t)==t.hasAttribute("listReversed")},setAttributeOnDowncast(t,e,n){if(e){t.setAttribute("reversed","reversed",n)}else{t.removeAttribute("reversed",n)}},getAttributeOnUpcast(t){return t.hasAttribute("reversed")}})}if(t.startIndex){e.push({attributeName:"listStart",defaultValue:1,viewConsumables:{attributes:"start"},addCommand(t){t.commands.add("listStart",new KL(t))},appliesToListItem(t){return t.getAttribute("listType")=="numbered"},hasValidAttribute(t){return this.appliesToListItem(t)==t.hasAttribute("listStart")},setAttributeOnDowncast(t,e,n){if(e==0||e>1){t.setAttribute("start",e,n)}else{t.removeAttribute("start",n)}},getAttributeOnUpcast(t){const e=t.getAttribute("start");return e>=0?e:1}})}return e}var dN=n(3195);var uN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};uN.insert="head";uN.singleton=true;var hN=Tl()(dN.Z,uN);const gN=dN.Z.locals||{};class mN extends Ll{constructor(t,e){super(t);const n=this.bindTemplate;this.set("isCollapsed",false);this.set("label","");this.buttonView=this._createButtonView();this.children=this.createCollection();this.set("_collapsibleAriaLabelUid",undefined);if(e){this.children.addMany(e)}this.setTemplate({tag:"div",attributes:{class:["ck","ck-collapsible",n.if("isCollapsed","ck-collapsible_collapsed")]},children:[this.buttonView,{tag:"div",attributes:{class:["ck","ck-collapsible__children"],role:"region",hidden:n.if("isCollapsed","hidden"),"aria-labelledby":n.to("_collapsibleAriaLabelUid")},children:this.children}]})}render(){super.render();this._collapsibleAriaLabelUid=this.buttonView.labelView.element.id}_createButtonView(){const t=new kd(this.locale);const e=t.bindTemplate;t.set({withText:true,icon:jd});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}));return t}}var fN=n(7133);var pN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};pN.insert="head";pN.singleton=true;var bN=Tl()(fN.Z,pN);const kN=fN.Z.locals||{};class wN extends Ll{constructor(t,{enabledProperties:e,styleButtonViews:n,styleGridAriaLabel:i}){super(t);this.stylesView=null;this.additionalPropertiesCollapsibleView=null;this.startIndexFieldView=null;this.reversedSwitchButtonView=null;this.focusTracker=new ul;this.keystrokes=new hl;this.focusables=new xl;const o=["ck","ck-list-properties"];this.children=this.createCollection();this.focusCycler=new Yd({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});if(e.styles){this.stylesView=this._createStylesView(n,i);this.children.add(this.stylesView)}else{o.push("ck-list-properties_without-styles")}if(e.startIndex||e.reversed){this._addNumberedListPropertyViews(e);o.push("ck-list-properties_with-numbered-properties")}this.setTemplate({tag:"div",attributes:{class:o},children:this.children})}render(){super.render();if(this.stylesView){this.focusables.add(this.stylesView);this.focusTracker.add(this.stylesView.element);if(this.startIndexFieldView||this.reversedSwitchButtonView){this.focusables.add(this.children.last.buttonView);this.focusTracker.add(this.children.last.buttonView.element)}for(const t of this.stylesView.children){this.stylesView.focusTracker.add(t.element)}r({keystrokeHandler:this.stylesView.keystrokes,focusTracker:this.stylesView.focusTracker,gridItems:this.stylesView.children,numberOfColumns:()=>ic.window.getComputedStyle(this.stylesView.element).getPropertyValue("grid-template-columns").split(" ").length,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}if(this.startIndexFieldView){this.focusables.add(this.startIndexFieldView);this.focusTracker.add(this.startIndexFieldView.element);this.listenTo(this.startIndexFieldView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"});const t=t=>t.stopPropagation();this.keystrokes.set("arrowright",t);this.keystrokes.set("arrowleft",t);this.keystrokes.set("arrowup",t);this.keystrokes.set("arrowdown",t)}if(this.reversedSwitchButtonView){this.focusables.add(this.reversedSwitchButtonView);this.focusTracker.add(this.reversedSwitchButtonView.element)}this.keystrokes.listenTo(this.element)}focus(){this.focusCycler.focusFirst()}focusLast(){this.focusCycler.focusLast()}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}_createStylesView(t,e){const n=new Ll(this.locale);n.children=n.createCollection();n.children.addMany(t);n.setTemplate({tag:"div",attributes:{"aria-label":e,class:["ck","ck-list-styles-list"]},children:n.children});n.children.delegate("execute").to(this);n.focus=function(){this.children.first.focus()};n.focusTracker=new ul;n.keystrokes=new hl;n.render();n.keystrokes.listenTo(n.element);return n}_addNumberedListPropertyViews(t){const e=this.locale.t;const n=[];if(t.startIndex){this.startIndexFieldView=this._createStartIndexField();n.push(this.startIndexFieldView)}if(t.reversed){this.reversedSwitchButtonView=this._createReversedSwitchButton();n.push(this.reversedSwitchButtonView)}if(t.styles){this.additionalPropertiesCollapsibleView=new mN(this.locale,n);this.additionalPropertiesCollapsibleView.set({label:e("List properties"),isCollapsed:true});this.additionalPropertiesCollapsibleView.buttonView.bind("isEnabled").toMany(n,"isEnabled",((...t)=>t.some((t=>t))));this.additionalPropertiesCollapsibleView.buttonView.on("change:isEnabled",((t,e,n)=>{if(!n){this.additionalPropertiesCollapsibleView.isCollapsed=true}}));this.children.add(this.additionalPropertiesCollapsibleView)}else{this.children.addMany(n)}}_createStartIndexField(){const t=this.locale.t;const e=new Ly(this.locale,zy);e.set({label:t("Start at"),class:"ck-numbered-list-properties__start-index"});e.fieldView.set({min:0,step:1,value:1,inputMode:"numeric"});e.fieldView.on("input",(()=>{const n=e.fieldView.element;const i=n.valueAsNumber;if(Number.isNaN(i)){return}if(!n.checkValidity()){e.errorText=t("Start index must be greater than 0.")}else{this.fire("listStart",{startIndex:i})}}));return e}_createReversedSwitchButton(){const t=this.locale.t;const e=new vd(this.locale);e.set({withText:true,label:t("Reversed order"),class:"ck-numbered-list-properties__reversed-order"});e.delegate("execute").to(this,"listReversed");return e}}const AN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11 27a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0-9a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0-9a3 3 0 1 1 0 6 3 3 0 0 1 0-6z"/></svg>';const CN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11 27a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 1a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm0-10a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 1a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm0-10a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 1a2 2 0 1 0 0 4 2 2 0 0 0 0-4z"/></svg>';const _N='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M14 27v6H8v-6h6zm0-9v6H8v-6h6zm0-9v6H8V9h6z"/></svg>';const vN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M10.29 15V8.531H9.286c-.14.393-.4.736-.778 1.03-.378.295-.728.495-1.05.6v1.121a4.257 4.257 0 0 0 1.595-.936V15h1.235zm3.343 0v-1.235h-1.235V15h1.235zM11.3 24v-1.147H8.848c.064-.111.148-.226.252-.343.104-.117.351-.354.74-.712.39-.357.66-.631.81-.821.225-.288.39-.562.494-.824.104-.263.156-.539.156-.829 0-.51-.182-.936-.545-1.279-.363-.342-.863-.514-1.499-.514-.58 0-1.063.148-1.45.444-.387.296-.617.784-.69 1.463l1.23.124c.024-.36.112-.619.264-.774.153-.155.358-.233.616-.233.26 0 .465.074.613.222.148.148.222.36.222.635 0 .25-.085.501-.255.756-.126.185-.468.536-1.024 1.055-.692.641-1.155 1.156-1.389 1.544-.234.389-.375.8-.422 1.233H11.3zm2.333 0v-1.235h-1.235V24h1.235zM9.204 34.11c.615 0 1.129-.2 1.542-.598.413-.398.62-.88.62-1.446 0-.39-.11-.722-.332-.997a1.5 1.5 0 0 0-.886-.532c.619-.337.928-.788.928-1.353 0-.399-.151-.756-.453-1.073-.366-.386-.852-.58-1.459-.58a2.25 2.25 0 0 0-.96.2 1.617 1.617 0 0 0-.668.55c-.16.232-.28.544-.358.933l1.138.194c.032-.282.123-.495.272-.642.15-.146.33-.22.54-.22.215 0 .386.065.515.194s.193.302.193.518c0 .255-.087.46-.263.613-.176.154-.43.227-.765.218l-.136 1.006c.22-.061.409-.092.567-.092.24 0 .444.09.61.272.168.182.251.428.251.739 0 .328-.087.589-.261.782a.833.833 0 0 1-.644.29.841.841 0 0 1-.607-.242c-.167-.16-.27-.394-.307-.698l-1.196.145c.062.542.285.98.668 1.316.384.335.868.503 1.45.503zm4.43-.11v-1.235h-1.236V34h1.235z"/></svg>';const yN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M5.714 15.11c.624 0 1.11-.22 1.46-.66.421-.533.632-1.408.632-2.627 0-1.222-.21-2.096-.629-2.624-.351-.445-.839-.668-1.463-.668-.624 0-1.11.22-1.459.66-.422.533-.633 1.406-.633 2.619 0 1.236.192 2.095.576 2.577.384.482.89.723 1.516.723zm0-1.024a.614.614 0 0 1-.398-.14c-.115-.094-.211-.283-.287-.565-.077-.283-.115-.802-.115-1.558s.043-1.294.128-1.613c.064-.246.155-.417.272-.512a.617.617 0 0 1 .4-.143.61.61 0 0 1 .398.143c.116.095.211.284.288.567.076.283.114.802.114 1.558s-.043 1.292-.128 1.608c-.064.246-.155.417-.272.512a.617.617 0 0 1-.4.143zm6.078.914V8.531H10.79c-.14.393-.4.736-.778 1.03-.378.295-.728.495-1.05.6v1.121a4.257 4.257 0 0 0 1.595-.936V15h1.235zm3.344 0v-1.235h-1.235V15h1.235zm-9.422 9.11c.624 0 1.11-.22 1.46-.66.421-.533.632-1.408.632-2.627 0-1.222-.21-2.096-.629-2.624-.351-.445-.839-.668-1.463-.668-.624 0-1.11.22-1.459.66-.422.533-.633 1.406-.633 2.619 0 1.236.192 2.095.576 2.577.384.482.89.723 1.516.723zm0-1.024a.614.614 0 0 1-.398-.14c-.115-.094-.211-.283-.287-.565-.077-.283-.115-.802-.115-1.558s.043-1.294.128-1.613c.064-.246.155-.417.272-.512a.617.617 0 0 1 .4-.143.61.61 0 0 1 .398.143c.116.095.211.284.288.567.076.283.114.802.114 1.558s-.043 1.292-.128 1.608c-.064.246-.155.417-.272.512a.617.617 0 0 1-.4.143zm7.088.914v-1.147H10.35c.065-.111.149-.226.253-.343.104-.117.35-.354.74-.712.39-.357.66-.631.81-.821.225-.288.39-.562.493-.824.104-.263.156-.539.156-.829 0-.51-.181-.936-.544-1.279-.364-.342-.863-.514-1.499-.514-.58 0-1.063.148-1.45.444-.387.296-.617.784-.69 1.463l1.23.124c.024-.36.112-.619.264-.774.152-.155.357-.233.615-.233.261 0 .465.074.613.222.148.148.222.36.222.635 0 .25-.085.501-.255.756-.126.185-.467.536-1.024 1.055-.691.641-1.154 1.156-1.388 1.544-.235.389-.375.8-.422 1.233h4.328zm2.334 0v-1.235h-1.235V24h1.235zM5.714 34.11c.624 0 1.11-.22 1.46-.66.421-.533.632-1.408.632-2.627 0-1.222-.21-2.096-.629-2.624-.351-.445-.839-.668-1.463-.668-.624 0-1.11.22-1.459.66-.422.533-.633 1.406-.633 2.619 0 1.236.192 2.095.576 2.577.384.482.89.723 1.516.723zm0-1.024a.614.614 0 0 1-.398-.14c-.115-.094-.211-.283-.287-.565-.077-.283-.115-.802-.115-1.558s.043-1.294.128-1.613c.064-.246.155-.417.272-.512a.617.617 0 0 1 .4-.143.61.61 0 0 1 .398.143c.116.095.211.284.288.567.076.283.114.802.114 1.558s-.043 1.292-.128 1.608c-.064.246-.155.417-.272.512a.617.617 0 0 1-.4.143zm4.992 1.024c.616 0 1.13-.2 1.543-.598.413-.398.62-.88.62-1.446 0-.39-.111-.722-.332-.997a1.5 1.5 0 0 0-.886-.532c.618-.337.927-.788.927-1.353 0-.399-.15-.756-.452-1.073-.366-.386-.853-.58-1.46-.58a2.25 2.25 0 0 0-.96.2 1.617 1.617 0 0 0-.667.55c-.16.232-.28.544-.359.933l1.139.194c.032-.282.123-.495.272-.642.15-.146.33-.22.54-.22.214 0 .386.065.515.194s.193.302.193.518c0 .255-.088.46-.264.613-.175.154-.43.227-.764.218l-.136 1.006c.22-.061.408-.092.566-.092.24 0 .444.09.611.272.167.182.25.428.25.739 0 .328-.086.589-.26.782a.833.833 0 0 1-.644.29.841.841 0 0 1-.607-.242c-.167-.16-.27-.394-.308-.698l-1.195.145c.062.542.284.98.668 1.316.384.335.867.503 1.45.503zm4.43-.11v-1.235h-1.235V34h1.235z"/></svg>';const xN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11.88 8.7V7.558h-1.234V8.7h1.234zm0 5.3V9.333h-1.234V14h1.234zm2.5 0v-1.235h-1.234V14h1.235zm-4.75 4.7v-1.142H8.395V18.7H9.63zm0 5.3v-4.667H8.395V24H9.63zm2.5-5.3v-1.142h-1.234V18.7h1.235zm0 5.3v-4.667h-1.234V24h1.235zm2.501 0v-1.235h-1.235V24h1.235zM7.38 28.7v-1.142H6.145V28.7H7.38zm0 5.3v-4.667H6.145V34H7.38zm2.5-5.3v-1.142H8.646V28.7H9.88zm0 5.3v-4.667H8.646V34H9.88zm2.5-5.3v-1.142h-1.234V28.7h1.235zm0 5.3v-4.667h-1.234V34h1.235zm2.501 0v-1.235h-1.235V34h1.235z"/></svg>';const EN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11.916 15V8.558h-1.301V15h1.3zm2.465 0v-1.235h-1.235V15h1.235zM9.665 25v-6.442h-1.3V25h1.3zm2.5 0v-6.442h-1.3V25h1.3zm2.466 0v-1.235h-1.235V25h1.235zm-7.216 9v-6.442h-1.3V34h1.3zm2.5 0v-6.442h-1.3V34h1.3zm2.501 0v-6.442h-1.3V34h1.3zm2.465 0v-1.235h-1.235V34h1.235z"/></svg>';const DN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M9.62 14.105c.272 0 .528-.05.768-.153s.466-.257.677-.462c.009.024.023.072.044.145.047.161.086.283.119.365h1.221a2.649 2.649 0 0 1-.222-.626c-.04-.195-.059-.498-.059-.908l.013-1.441c0-.536-.055-.905-.165-1.105-.11-.201-.3-.367-.569-.497-.27-.13-.68-.195-1.23-.195-.607 0-1.064.108-1.371.325-.308.217-.525.55-.65 1.002l1.12.202c.076-.217.176-.369.299-.455.123-.086.294-.13.514-.13.325 0 .546.05.663.152.118.101.176.27.176.508v.123c-.222.093-.622.194-1.2.303-.427.082-.755.178-.982.288-.227.11-.403.268-.53.474a1.327 1.327 0 0 0-.188.706c0 .398.138.728.415.988.277.261.656.391 1.136.391zm.368-.87a.675.675 0 0 1-.492-.189.606.606 0 0 1-.193-.448c0-.176.08-.32.241-.435.106-.07.33-.142.673-.215a7.19 7.19 0 0 0 .751-.19v.247c0 .296-.016.496-.048.602a.773.773 0 0 1-.295.409 1.07 1.07 0 0 1-.637.22zm4.645.765v-1.235h-1.235V14h1.235zM10.2 25.105c.542 0 1.003-.215 1.382-.646.38-.43.57-1.044.57-1.84 0-.771-.187-1.362-.559-1.774a1.82 1.82 0 0 0-1.41-.617c-.522 0-.973.216-1.354.65v-2.32H7.594V25h1.147v-.686a1.9 1.9 0 0 0 .67.592c.26.133.523.2.79.2zm-.299-.975c-.354 0-.638-.164-.852-.492-.153-.232-.229-.59-.229-1.073 0-.468.098-.818.295-1.048a.93.93 0 0 1 .738-.345c.302 0 .55.118.743.354.193.236.29.62.29 1.154 0 .5-.096.868-.288 1.1-.192.233-.424.35-.697.35zm4.478.87v-1.235h-1.234V25h1.234zm-4.017 9.105c.6 0 1.08-.142 1.437-.426.357-.284.599-.704.725-1.261l-1.213-.207c-.061.326-.167.555-.316.688a.832.832 0 0 1-.576.2.916.916 0 0 1-.75-.343c-.185-.228-.278-.62-.278-1.173 0-.498.091-.853.274-1.066.183-.212.429-.318.736-.318.232 0 .42.061.565.184.145.123.238.306.28.55l1.216-.22c-.146-.501-.387-.874-.722-1.119-.336-.244-.788-.366-1.356-.366-.695 0-1.245.214-1.653.643-.407.43-.61 1.03-.61 1.8 0 .762.202 1.358.608 1.788.406.431.95.646 1.633.646zM14.633 34v-1.235h-1.235V34h1.235z"/></svg>';const TN='<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="m7.88 15 .532-1.463h2.575L11.549 15h1.415l-2.58-6.442H9.01L6.5 15h1.38zm2.69-2.549H8.811l.87-2.39.887 2.39zM14.88 15v-1.235h-1.234V15h1.234zM9.352 25c.83-.006 1.352-.02 1.569-.044.346-.038.636-.14.872-.305.236-.166.422-.387.558-.664.137-.277.205-.562.205-.855 0-.372-.106-.695-.317-.97-.21-.276-.512-.471-.905-.585a1.51 1.51 0 0 0 .661-.567 1.5 1.5 0 0 0 .244-.83c0-.28-.066-.53-.197-.754a1.654 1.654 0 0 0-.495-.539 1.676 1.676 0 0 0-.672-.266c-.25-.042-.63-.063-1.14-.063H7.158V25h2.193zm.142-3.88H8.46v-1.49h.747c.612 0 .983.007 1.112.022.217.026.38.102.49.226.11.125.165.287.165.486a.68.68 0 0 1-.192.503.86.86 0 0 1-.525.23 11.47 11.47 0 0 1-.944.023h.18zm.17 2.795H8.46v-1.723h1.05c.592 0 .977.03 1.154.092.177.062.313.16.406.295a.84.84 0 0 1 .14.492c0 .228-.06.41-.181.547a.806.806 0 0 1-.473.257c-.126.026-.423.04-.892.04zM14.88 25v-1.235h-1.234V25h1.234zm-5.018 9.11c.691 0 1.262-.17 1.711-.512.45-.341.772-.864.965-1.567l-1.261-.4c-.109.472-.287.818-.536 1.037-.25.22-.547.33-.892.33-.47 0-.85-.173-1.143-.519-.293-.345-.44-.925-.44-1.74 0-.767.15-1.322.447-1.665.297-.343.684-.514 1.162-.514.346 0 .64.096.881.29.242.193.4.457.477.79l1.288-.307c-.147-.516-.367-.911-.66-1.187-.492-.465-1.132-.698-1.92-.698-.902 0-1.63.296-2.184.89-.554.593-.83 1.426-.83 2.498 0 1.014.275 1.813.825 2.397.551.585 1.254.877 2.11.877zM14.88 34v-1.235h-1.234V34h1.234z"/></svg>';var SN=n(4553);var IN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};IN.insert="head";IN.singleton=true;var BN=Tl()(SN.Z,IN);const MN=SN.Z.locals||{};class LN extends eu{static get pluginName(){return"ListPropertiesUI"}init(){const t=this.editor;const e=t.locale.t;const n=t.config.get("list.properties");if(n.styles){t.ui.componentFactory.add("bulletedList",NN({editor:t,parentCommandName:"bulletedList",buttonLabel:e("Bulleted List"),buttonIcon:qL,styleGridAriaLabel:e("Bulleted list styles toolbar"),styleDefinitions:[{label:e("Toggle the disc list style"),tooltip:e("Disc"),type:"disc",icon:AN},{label:e("Toggle the circle list style"),tooltip:e("Circle"),type:"circle",icon:CN},{label:e("Toggle the square list style"),tooltip:e("Square"),type:"square",icon:_N}]}))}if(n.styles||n.startIndex||n.reversed){t.ui.componentFactory.add("numberedList",NN({editor:t,parentCommandName:"numberedList",buttonLabel:e("Numbered List"),buttonIcon:WL,styleGridAriaLabel:e("Numbered list styles toolbar"),styleDefinitions:[{label:e("Toggle the decimal list style"),tooltip:e("Decimal"),type:"decimal",icon:vN},{label:e("Toggle the decimal with leading zero list style"),tooltip:e("Decimal with leading zero"),type:"decimal-leading-zero",icon:yN},{label:e("Toggle the lower–roman list style"),tooltip:e("Lower–roman"),type:"lower-roman",icon:xN},{label:e("Toggle the upper–roman list style"),tooltip:e("Upper-roman"),type:"upper-roman",icon:EN},{label:e("Toggle the lower–latin list style"),tooltip:e("Lower-latin"),type:"lower-latin",icon:DN},{label:e("Toggle the upper–latin list style"),tooltip:e("Upper-latin"),type:"upper-latin",icon:TN}]}))}}}function NN({editor:t,parentCommandName:e,buttonLabel:n,buttonIcon:i,styleGridAriaLabel:o,styleDefinitions:r}){const s=t.commands.get(e);return a=>{const c=yv(a,Gd);const l=c.buttonView;c.bind("isEnabled").to(s);c.class="ck-list-styles-dropdown";l.on("execute",(()=>{t.execute(e);t.editing.view.focus()}));l.set({label:n,icon:i,tooltip:true,isToggleable:true});l.bind("isOn").to(s,"value",(t=>!!t));c.once("change:isOpen",(()=>{const n=PN({editor:t,dropdownView:c,parentCommandName:e,styleGridAriaLabel:o,styleDefinitions:r});c.panelView.children.add(n)}));c.on("execute",(()=>{t.editing.view.focus()}));return c}}function zN({editor:t,listStyleCommand:e,parentCommandName:n}){const i=t.locale;const o=t.commands.get(n);return({label:n,type:r,icon:s,tooltip:a})=>{const c=new kd(i);c.set({label:n,icon:s,tooltip:a});e.on("change:value",(()=>{c.isOn=e.value===r}));c.on("execute",(()=>{if(o.value){if(e.value!==r){t.execute("listStyle",{type:r})}else{t.execute("listStyle",{type:e.defaultType})}}else{t.model.change((()=>{t.execute("listStyle",{type:r})}))}}));return c}}function PN({editor:t,dropdownView:e,parentCommandName:n,styleDefinitions:i,styleGridAriaLabel:o}){const r=t.locale;const s=t.config.get("list.properties");let a=null;if(n!="numberedList"){s.startIndex=false;s.reversed=false}if(s.styles){const e=t.commands.get("listStyle");const o=zN({editor:t,parentCommandName:n,listStyleCommand:e});const r=typeof e.isStyleTypeSupported=="function"?t=>e.isStyleTypeSupported(t.type):()=>true;a=i.filter(r).map(o)}const c=new wN(r,{styleGridAriaLabel:o,enabledProperties:s,styleButtonViews:a});if(s.styles){Sv(e,(()=>c.stylesView.children.find((t=>t.isOn))))}if(s.startIndex){const e=t.commands.get("listStart");c.startIndexFieldView.bind("isEnabled").to(e);c.startIndexFieldView.fieldView.bind("value").to(e);c.on("listStart",((e,n)=>t.execute("listStart",n)))}if(s.reversed){const e=t.commands.get("listReversed");c.reversedSwitchButtonView.bind("isEnabled").to(e);c.reversedSwitchButtonView.bind("isOn").to(e,"value",(t=>!!t));c.on("listReversed",(()=>{const n=e.value;t.execute("listReversed",{reversed:!n})}))}c.delegate("execute").to(e);return c}class RN extends eu{static get requires(){return[cN,LN]}static get pluginName(){return"DocumentListProperties"}}class ON extends iu{constructor(t){super(t);this.affectsData=false}execute(){const t=this.editor.model;const e=t.document.selection;let n=t.schema.getLimitElement(e);if(e.containsEntireContent(n)||!VN(t.schema,n)){do{n=n.parent;if(!n){return}}while(!VN(t.schema,n))}t.change((t=>{t.setSelection(n,"in")}))}}function VN(t,e){return t.isLimit(e)&&(t.checkChild(e,"$text")||t.checkChild(e,"paragraph"))}const FN=qc("Ctrl+A");class jN extends eu{static get pluginName(){return"SelectAllEditing"}init(){const t=this.editor;const e=t.editing.view;const n=e.document;t.commands.add("selectAll",new ON(t));this.listenTo(n,"keydown",((e,n)=>{if(Wc(n)===FN){t.execute("selectAll");n.preventDefault()}}))}}const HN='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M.75 15.5a.75.75 0 0 1 .75.75V18l.008.09A.5.5 0 0 0 2 18.5h1.75a.75.75 0 1 1 0 1.5H1.5l-.144-.007a1.5 1.5 0 0 1-1.35-1.349L0 18.5v-2.25a.75.75 0 0 1 .75-.75zm18.5 0a.75.75 0 0 1 .75.75v2.25l-.007.144a1.5 1.5 0 0 1-1.349 1.35L18.5 20h-2.25a.75.75 0 1 1 0-1.5H18a.5.5 0 0 0 .492-.41L18.5 18v-1.75a.75.75 0 0 1 .75-.75zm-10.45 3c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2H7.2a.2.2 0 0 1-.2-.2v-1.1c0-.11.09-.2.2-.2h1.6zm4 0c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2h-1.6a.2.2 0 0 1-.2-.2v-1.1c0-.11.09-.2.2-.2h1.6zm.45-5.5a.75.75 0 1 1 0 1.5h-8.5a.75.75 0 1 1 0-1.5h8.5zM1.3 11c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2H.2a.2.2 0 0 1-.2-.2v-1.6c0-.11.09-.2.2-.2h1.1zm18.5 0c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2h-1.1a.2.2 0 0 1-.2-.2v-1.6c0-.11.09-.2.2-.2h1.1zm-4.55-2a.75.75 0 1 1 0 1.5H4.75a.75.75 0 1 1 0-1.5h10.5zM1.3 7c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2H.2a.2.2 0 0 1-.2-.2V7.2c0-.11.09-.2.2-.2h1.1zm18.5 0c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2h-1.1a.2.2 0 0 1-.2-.2V7.2c0-.11.09-.2.2-.2h1.1zm-4.55-2a.75.75 0 1 1 0 1.5h-2.5a.75.75 0 1 1 0-1.5h2.5zm-5 0a.75.75 0 1 1 0 1.5h-5.5a.75.75 0 0 1 0-1.5h5.5zm-6.5-5a.75.75 0 0 1 0 1.5H2a.5.5 0 0 0-.492.41L1.5 2v1.75a.75.75 0 0 1-1.5 0V1.5l.007-.144A1.5 1.5 0 0 1 1.356.006L1.5 0h2.25zM18.5 0l.144.007a1.5 1.5 0 0 1 1.35 1.349L20 1.5v2.25a.75.75 0 1 1-1.5 0V2l-.008-.09A.5.5 0 0 0 18 1.5h-1.75a.75.75 0 1 1 0-1.5h2.25zM8.8 0c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2H7.2a.2.2 0 0 1-.2-.2V.2c0-.11.09-.2.2-.2h1.6zm4 0c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2h-1.6a.2.2 0 0 1-.2-.2V.2c0-.11.09-.2.2-.2h1.6z"/></svg>';class UN extends eu{static get pluginName(){return"SelectAllUI"}init(){const t=this.editor;t.ui.componentFactory.add("selectAll",(e=>{const n=t.commands.get("selectAll");const i=new kd(e);const o=e.t;i.set({label:o("Select all"),icon:HN,keystroke:"Ctrl+A",tooltip:true});i.bind("isEnabled").to(n,"isEnabled");this.listenTo(i,"execute",(()=>{t.execute("selectAll");t.editing.view.focus()}));return i}))}}class WN extends eu{static get requires(){return[jN,UN]}static get pluginName(){return"SelectAll"}}class qN extends eu{static get requires(){return[OT,YE,WN,eD,rE,KT]}static get pluginName(){return"Essentials"}}var $N=n(1590);var GN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};GN.insert="head";GN.singleton=true;var KN=Tl()($N.Z,GN);const YN=$N.Z.locals||{};var ZN=n(9289);var QN={injectType:"singletonStyleTag",attributes:{"data-cke":true}};QN.insert="head";QN.singleton=true;var JN=Tl()(ZN.Z,QN);const XN=ZN.Z.locals||{};class tz extends Ll{constructor(t){super(t);const n=t.t;this.set("matchCount",0);this.set("highlightOffset",0);this.set("isDirty",false);this.set("_areCommandsEnabled",{});this.set("_resultsCounterText","");this.set("_matchCase",false);this.set("_wholeWordsOnly",false);this.bind("_searchResultsFound").to(this,"matchCount",this,"isDirty",((t,e)=>t>0&&!e));this._findInputView=this._createInputField(n("Find in text…"));this._replaceInputView=this._createInputField(n("Replace with…"));this._findButtonView=this._createButton({label:n("Find"),class:"ck-button-find ck-button-action",withText:true});this._findPrevButtonView=this._createButton({label:n("Previous result"),class:"ck-button-prev",icon:Vy,keystroke:"Shift+F3",tooltip:true});this._findNextButtonView=this._createButton({label:n("Next result"),class:"ck-button-next",icon:Vy,keystroke:"F3",tooltip:true});this._optionsDropdown=this._createOptionsDropdown();this._replaceButtonView=this._createButton({label:n("Replace"),class:"ck-button-replace",withText:true});this._replaceAllButtonView=this._createButton({label:n("Replace all"),class:"ck-button-replaceall",withText:true});this._findFieldsetView=this._createFindFieldset();this._replaceFieldsetView=this._createReplaceFieldset();this._focusTracker=new ul;this._keystrokes=new hl;this._focusables=new xl;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this._keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.setTemplate({tag:"form",attributes:{class:["ck","ck-find-and-replace-form"],tabindex:"-1"},children:[new wy(t,{label:n("Find and replace")}),this._findFieldsetView,this._replaceFieldsetView]});e(this)}render(){super.render();o({view:this});this._initFocusCycling();this._initKeystrokeHandling()}destroy(){super.destroy();this._focusTracker.destroy();this._keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}reset(){this._findInputView.errorText=null;this.isDirty=true}get _textToFind(){return this._findInputView.fieldView.element.value}get _textToReplace(){return this._replaceInputView.fieldView.element.value}_createFindFieldset(){const t=this.locale;const e=new Ll(t);this._findInputView.fieldView.on("input",(()=>{this.isDirty=true}));this._findButtonView.on("execute",this._onFindButtonExecute.bind(this));this._findPrevButtonView.delegate("execute").to(this,"findPrevious");this._findNextButtonView.delegate("execute").to(this,"findNext");this._findPrevButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findPrevious:t})=>t));this._findNextButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findNext:t})=>t));this._injectFindResultsCounter();e.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__find"]},children:[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView]});return e}_onFindButtonExecute(){if(!this._textToFind){const t=this.t;this._findInputView.errorText=t("Text to find must not be empty.");return}this.isDirty=false;this.fire("findNext",{searchText:this._textToFind,matchCase:this._matchCase,wholeWords:this._wholeWordsOnly})}_injectFindResultsCounter(){const t=this.locale;const e=t.t;const n=this.bindTemplate;const i=new Ll(t);this.bind("_resultsCounterText").to(this,"highlightOffset",this,"matchCount",((t,n)=>e("%0 of %1",[t,n])));i.setTemplate({tag:"span",attributes:{class:["ck","ck-results-counter",n.if("isDirty","ck-hidden")]},children:[{text:n.to("_resultsCounterText")}]});const o=()=>{const e=this._findInputView.fieldView.element;if(!e||!Ac(e)){return}const n=new dc(i.element).width;const o=t.uiLanguageDirection==="ltr"?"paddingRight":"paddingLeft";if(!n){e.style[o]=null}else{e.style[o]=`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)}_createReplaceFieldset(){const t=this.locale;const e=t.t;const n=new Ll(t);this._replaceButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:t},e)=>t&&e));this._replaceAllButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replaceAll:t},e)=>t&&e));this._replaceInputView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:t},e)=>t&&e));this._replaceInputView.bind("infoText").to(this._replaceInputView,"isEnabled",this._replaceInputView,"isFocused",((t,n)=>{if(t||!n){return""}return e("Tip: Find some text first in order to replace it.")}));this._replaceButtonView.on("execute",(()=>{this.fire("replace",{searchText:this._textToFind,replaceText:this._textToReplace})}));this._replaceAllButtonView.on("execute",(()=>{this.fire("replaceAll",{searchText:this._textToFind,replaceText:this._textToReplace});this.focus()}));n.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__replace"]},children:[this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView]});return n}_createOptionsDropdown(){const t=this.locale;const e=t.t;const n=yv(t);n.class="ck-options-dropdown";n.buttonView.set({withText:false,label:e("Show options"),icon:J_.cog,tooltip:true});const i=new Oy({withText:true,label:e("Match case"),_isMatchCaseSwitch:true});const o=new Oy({withText:true,label:e("Whole words only")});i.bind("isOn").to(this,"_matchCase");o.bind("isOn").to(this,"_wholeWordsOnly");n.on("execute",(t=>{if(t.source._isMatchCaseSwitch){this._matchCase=!this._matchCase}else{this._wholeWordsOnly=!this._wholeWordsOnly}this.isDirty=true}));Dv(n,new ll([{type:"switchbutton",model:i},{type:"switchbutton",model:o}]));return n}_initFocusCycling(){const t=[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView];t.forEach((t=>{this._focusables.add(t);this._focusTracker.add(t.element)}))}_initKeystrokeHandling(){const t=t=>t.stopPropagation();const 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;if(n===this._findInputView.fieldView.element){if(this._areCommandsEnabled.findNext){this._findNextButtonView.fire("execute")}else{this._findButtonView.fire("execute")}e(t)}else if(n===this._replaceInputView.fieldView.element&&!this.isDirty){this._replaceButtonView.fire("execute");e(t)}}));this._keystrokes.set("shift+enter",(t=>{const n=t.target;if(n!==this._findInputView.fieldView.element){return}if(this._areCommandsEnabled.findPrevious){this._findPrevButtonView.fire("execute")}else{this._findButtonView.fire("execute")}e(t)}));this._keystrokes.set("arrowright",t);this._keystrokes.set("arrowleft",t);this._keystrokes.set("arrowup",t);this._keystrokes.set("arrowdown",t);this.listenTo(this._findInputView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"});this.listenTo(this._replaceInputView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}_createButton(t){const e=new kd(this.locale);e.set(t);return e}_createInputField(t){const e=new Ly(this.locale,Ny);e.label=t;return e}}const ez='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.87 13.786 1.532-1.286 3.857 4.596a1 1 0 1 1-1.532 1.286l-3.857-4.596z"/><path d="M16.004 8.5a6.5 6.5 0 0 1-9.216 5.905c-1.154-.53-.863-1.415-.663-1.615.194-.194.564-.592 1.635-.141a4.5 4.5 0 0 0 5.89-5.904l-.104-.227 1.332-1.331c.045-.046.196-.041.224.007a6.47 6.47 0 0 1 .902 3.306zm-3.4-5.715c.562.305.742 1.106.354 1.494-.388.388-.995.414-1.476.178a4.5 4.5 0 0 0-6.086 5.882l.114.236-1.348 1.349c-.038.037-.17.022-.198-.023a6.5 6.5 0 0 1 5.54-9.9 6.469 6.469 0 0 1 3.1.784z"/><path d="M4.001 11.93.948 8.877a.2.2 0 0 1 .141-.341h6.106a.2.2 0 0 1 .141.341L4.283 11.93a.2.2 0 0 1-.282 0zm11.083-6.789 3.053 3.053a.2.2 0 0 1-.14.342H11.89a.2.2 0 0 1-.14-.342l3.052-3.053a.2.2 0 0 1 .282 0z"/></svg>';class nz extends eu{static get pluginName(){return"FindAndReplaceUI"}constructor(t){super(t);this.formView=null}init(){const t=this.editor;t.ui.componentFactory.add("findAndReplace",(e=>{const n=yv(e);n.bind("isEnabled").to(t.commands.get("find"));n.once("change:isOpen",(()=>{this.formView=new tz(t.locale);n.panelView.children.add(this.formView);this._setupFormView(this.formView)}));n.on("change:isOpen",((t,e,n)=>{if(n){this.formView.disableCssTransitions();this.formView.reset();this.formView._findInputView.fieldView.select();this.formView.enableCssTransitions()}else{this.fire("searchReseted")}}),{priority:"low"});this._setupDropdownButton(n);return n}))}_setupDropdownButton(t){const e=this.editor;const n=e.locale.t;t.buttonView.set({icon:ez,label:n("Find and replace"),keystroke:"CTRL+F",tooltip:true});e.keystrokes.set("Ctrl+F",((e,n)=>{if(t.isEnabled){t.isOpen=true;n()}}))}_setupFormView(t){const e=this.editor;const n=e.commands;const i=this.editor.plugins.get("FindAndReplaceEditing");const o=i.state;const r={before:-1,same:0,after:1};t.bind("highlightOffset").to(o,"highlightedResult",(t=>{if(!t){return 0}return Array.from(o.results).sort(((t,e)=>r[t.marker.getStart().compareWith(e.marker.getStart())])).indexOf(t)+1}));t.listenTo(o.results,"change",(()=>{t.matchCount=o.results.length}));t.bind("_areCommandsEnabled").to(n.get("findNext"),"isEnabled",n.get("findPrevious"),"isEnabled",n.get("replace"),"isEnabled",n.get("replaceAll"),"isEnabled",((t,e,n,i)=>({findNext:t,findPrevious:e,replace:n,replaceAll:i})));t.delegate("findNext","findPrevious","replace","replaceAll").to(this);t.on("change:isDirty",((t,e,n)=>{if(n){this.fire("searchReseted")}}))}}class iz extends iu{constructor(t,e){super(t);this.isEnabled=true;this.affectsData=false;this._state=e}execute(t,{matchCase:e,wholeWords:n}={}){const{editor:i}=this;const{model:o}=i;const r=i.plugins.get("FindAndReplaceUtils");let s;if(typeof t==="string"){s=r.findByTextCallback(t,{matchCase:e,wholeWords:n});this._state.searchText=t}else{s=t}const a=o.document.getRootNames().reduce(((t,e)=>r.updateFindResultFromRange(o.createRangeIn(o.document.getRoot(e)),o,s,t)),null);this._state.clear(o);this._state.results.addMany(Array.from(a));this._state.highlightedResult=a.get(0);if(typeof t==="string"){this._state.searchText=t}this._state.matchCase=!!e;this._state.matchWholeWords=!!n;return{results:a,findCallback:s}}}class oz extends iu{constructor(t,e){super(t);this.isEnabled=true;this._state=e}execute(t,e){const{model:n}=this.editor;n.change((i=>{const o=e.marker.getRange();if(o.root.rootName==="$graveyard"){this._state.results.remove(e);return}let r={};for(const t of o.getItems()){if(t.is("$text")||t.is("$textProxy")){r=t.getAttributes();break}}n.insertContent(i.createText(t,r),o);if(this._state.results.has(e)){this._state.results.remove(e)}}))}}class rz extends oz{execute(t,e){const{editor:n}=this;const{model:i}=n;const o=n.plugins.get("FindAndReplaceUtils");const r=e instanceof ll?e:i.document.getRootNames().reduce(((t,n)=>o.updateFindResultFromRange(i.createRangeIn(i.document.getRoot(n)),i,o.findByTextCallback(e,this._state),t)),null);if(r.length){i.change((()=>{[...r].forEach((e=>{super.execute(t,e)}))}))}}}class sz extends iu{constructor(t,e){super(t);this.affectsData=false;this._state=e;this.isEnabled=false;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;const e=t.getIndex(this._state.highlightedResult);const n=e+1>=t.length?0:e+1;this._state.highlightedResult=this._state.results.get(n)}}class az extends sz{execute(){const t=this._state.results;const e=t.getIndex(this._state.highlightedResult);const n=e-1<0?this._state.results.length-1:e-1;this._state.highlightedResult=this._state.results.get(n)}}class cz{constructor(t){this.set("results",new ll);this.set("highlightedResult",null);this.set("searchText","");this.set("replaceText","");this.set("matchCase",false);this.set("matchWholeWords",false);this.results.on("change",((e,{removed:n,index:i})=>{n=Array.from(n);if(n.length){let e=false;t.change((i=>{for(const o of n){if(this.highlightedResult===o){e=true}if(t.markers.has(o.marker.name)){i.removeMarker(o.marker)}}}));if(e){const t=i>=this.results.length?0:i;this.highlightedResult=this.results.get(t)}}}))}clear(t){this.searchText="";t.change((e=>{if(this.highlightedResult){const n=this.highlightedResult.marker.name.split(":")[1];const i=t.markers.get(`findResultHighlighted:${n}`);if(i){e.removeMarker(i)}}[...this.results].forEach((({marker:t})=>{e.removeMarker(t)}))}));this.results.clear()}}x(cz,mt);class lz extends eu{static get pluginName(){return"FindAndReplaceUtils"}updateFindResultFromRange(t,e,n,i){const o=i||new ll;e.change((i=>{[...t].forEach((({type:t,item:r})=>{if(t==="elementStart"){if(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:${I()}`;const n=i.addMarker(e,{usingOperation:false,affectsData:false,range:i.createRange(i.createPositionAt(r,t.start),i.createPositionAt(r,t.end))});const s=dz(o,n);o.add({id:e,label:t.label,marker:n},s)}))}}}))}));return o}rangeToText(t){return Array.from(t.getItems()).reduce(((t,e)=>{if(!(e.is("text")||e.is("textProxy"))){return`${t}\n`}return t+e.data}),"")}findByTextCallback(t,e){let n="gu";if(!e.matchCase){n+="i"}let i=`(${bE(t)})`;if(e.wholeWords){const e="[^a-zA-ZÀ-ɏḀ-ỿ]";if(!new RegExp("^"+e).test(t)){i=`(^|${e}|_)${i}`}if(!new RegExp(e+"$").test(t)){i=`${i}(?=_|${e}|$)`}}const o=new RegExp(i,n);function r({text:t}){const e=[...t.matchAll(o)];return e.map(uz)}return r}}function dz(t,e){const n=t.find((({marker:t})=>e.getStart().isBefore(t.getStart())));return n?t.getIndex(n):t.length}function uz(t){const e=t.length-1;let n=t.index;if(t.length===3){n+=t[1].length}return{label:t[e],start:n,end:n+t[e].length}}var hz=n(5436);var gz={injectType:"singletonStyleTag",attributes:{"data-cke":true}};gz.insert="head";gz.singleton=true;var mz=Tl()(hz.Z,gz);const fz=hz.Z.locals||{};const pz="ck-find-result_selected";function bz(t,e,n){const i=new Set;const o=new Set;const r=e.model;const s=r.document.differ.getChanges();s.forEach((t=>{if(t.name==="$text"||r.schema.isInline(t.position.nodeAfter)){i.add(t.position.parent);[...r.markers.getMarkersAtPosition(t.position)].forEach((t=>{o.add(t.name)}))}else if(t.type==="insert"){i.add(t.position.nodeAfter)}}));r.document.differ.getChangedMarkers().forEach((({name:t,data:{newRange:e}})=>{if(e&&e.start.root.rootName==="$graveyard"){o.add(t)}}));i.forEach((t=>{const e=[...r.markers.getMarkersIntersectingRange(r.createRangeIn(t))];e.forEach((t=>o.add(t.name)))}));r.change((e=>{o.forEach((n=>{if(t.has(n)){t.remove(n)}e.removeMarker(n)}))}));i.forEach((i=>{const o=e.plugins.get("FindAndReplaceUtils");o.updateFindResultFromRange(r.createRangeOn(i),r,n,t)}))}class kz extends eu{static get requires(){return[lz]}static get pluginName(){return"FindAndReplaceEditing"}init(){this._activeResults=null;this.state=new cz(this.editor.model);this._defineConverters();this._defineCommands();this.listenTo(this.state,"change:highlightedResult",((t,e,n,i)=>{const{model:o}=this.editor;o.change((t=>{if(i){const e=i.marker.name.split(":")[1];const n=o.markers.get(`findResultHighlighted:${e}`);if(n){t.removeMarker(n)}}if(n){const e=n.marker.name.split(":")[1];t.addMarker(`findResultHighlighted:${e}`,{usingOperation:false,affectsData:false,range:n.marker.getRange()})}}))}));const t=If(e.bind(this),32);this.listenTo(this.state,"change:highlightedResult",t,{priority:"low"});this.listenTo(this.editor,"destroy",t.cancel);function e(t,e,n){if(n){const t=this.editor.editing.view.domConverter;const e=this.editor.editing.mapper.toViewRange(n.marker.getRange());Sc({target:t.viewRangeToDom(e),viewportOffset:40})}}}find(t){const{editor:e}=this;const{model:n}=e;const{findCallback:i,results:o}=e.execute("find",t);this._activeResults=o;this.listenTo(n.document,"change:data",(()=>bz(this._activeResults,e,i)));return this._activeResults}stop(){if(!this._activeResults){return}this.stopListening(this.editor.model.document);this.state.clear(this.editor.model);this._activeResults=null}_defineCommands(){this.editor.commands.add("find",new iz(this.editor,this.state));this.editor.commands.add("findNext",new sz(this.editor,this.state));this.editor.commands.add("findPrevious",new az(this.editor,this.state));this.editor.commands.add("replace",new oz(this.editor,this.state));this.editor.commands.add("replaceAll",new rz(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:[pz],attributes:{"data-find-result":e}}}})}}class wz extends eu{static get requires(){return[kz,nz]}static get pluginName(){return"FindAndReplace"}init(){const t=this.editor.plugins.get("FindAndReplaceUI");const e=this.editor.plugins.get("FindAndReplaceEditing");const n=e.state;t.on("findNext",((t,e)=>{if(e){n.searchText=e.searchText;this.editor.execute("find",e.searchText,e)}else{this.editor.execute("findNext")}}));t.on("findPrevious",((t,e)=>{if(e&&n.searchText!==e.searchText){this.editor.execute("find",e.searchText)}else{this.editor.execute("findPrevious")}}));t.on("replace",((t,e)=>{if(n.searchText!==e.searchText){this.editor.execute("find",e.searchText)}const i=n.highlightedResult;if(i){this.editor.execute("replace",e.replaceText,i)}}));t.on("replaceAll",((t,e)=>{if(n.searchText!==e.searchText){this.editor.execute("find",e.searchText)}this.editor.execute("replaceAll",e.replaceText,n.results)}));t.on("searchReseted",(()=>{n.clear(this.editor.model);e.stop()}))}}class Az extends eu{static get requires(){return[gM]}static get pluginName(){return"CodeBlockElementSupport"}init(){if(!this.editor.plugins.has("CodeBlockEditing")){return}const t=this.editor.plugins.get(gM);t.on("register:pre",((e,n)=>{if(n.model!=="codeBlock"){return}const i=this.editor;const o=i.model.schema;const r=i.conversion;o.extend("codeBlock",{allowAttributes:["htmlAttributes","htmlContentAttributes"]});r.for("upcast").add(Cz(t));r.for("downcast").add(_z());e.stop()}))}}function Cz(t){return e=>{e.on("element:code",((e,n,i)=>{const o=n.viewItem;const r=o.parent;if(!r||!r.is("element","pre")){return}s(r,"htmlAttributes");s(o,"htmlContentAttributes");function s(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}}),{priority:"low"})}}function _z(){return t=>{t.on("attribute:htmlAttributes:codeBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.mapper.toViewElement(e.item);const s=r.parent;NB(n.writer,i,o,s)}));t.on("attribute:htmlContentAttributes:codeBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.mapper.toViewElement(e.item);NB(n.writer,i,o,r)}))}}class vz extends eu{static get requires(){return[gM]}static get pluginName(){return"DualContentModelElementSupport"}init(){const t=this.editor.plugins.get(gM);t.on("register",((t,e)=>{const n=this.editor;const i=n.model.schema;const o=n.conversion;if(!e.paragraphLikeModel){return}if(i.isRegistered(e.model)||i.isRegistered(e.paragraphLikeModel)){return}const r={model:e.paragraphLikeModel,view:e.view};i.register(e.model,e.modelSchema);i.register(r.model,{inheritAllFrom:"$block"});o.for("upcast").elementToElement({view:e.view,model:(t,{writer:n})=>{if(this._hasBlockContent(t)){return n.createElement(e.model)}return n.createElement(r.model)},converterPriority:M.get("low")+1});o.for("downcast").elementToElement({view:e.view,model:e.model});this._addAttributeConversion(e);o.for("downcast").elementToElement({view:r.view,model:r.model});this._addAttributeConversion(r);t.stop()}))}_hasBlockContent(t){const e=this.editor.editing.view;const n=e.domConverter.blockElements;for(const i of e.createRangeIn(t).getItems()){if(i.is("element")&&n.includes(i.name)){return true}}return false}_addAttributeConversion(t){const e=this.editor;const n=e.conversion;const i=e.plugins.get(gM);e.model.schema.extend(t.model,{allowAttributes:"htmlAttributes"});n.for("upcast").add(UB(t,i));n.for("downcast").add(WB(t))}}class yz extends eu{static get requires(){return[MB]}static get pluginName(){return"HeadingElementSupport"}init(){const t=this.editor;if(!t.plugins.has("HeadingEditing")){return}const e=t.plugins.get(MB);const n=t.config.get("heading.options");const i=[];for(const t of n){if("model"in t&&"view"in t){e.registerBlockElement({view:t.view,model:t.model});i.push(t.model)}}e.extendBlockElement({model:"htmlHgroup",modelSchema:{allowChildren:i}})}}class xz extends eu{static get requires(){return[gM]}static get pluginName(){return"ImageElementSupport"}init(){const t=this.editor;if(!t.plugins.has("ImageInlineEditing")&&!t.plugins.has("ImageBlockEditing")){return}const e=t.model.schema;const n=t.conversion;const i=t.plugins.get(gM);i.on("register:figure",(()=>{n.for("upcast").add(Dz(i))}));i.on("register:img",((t,o)=>{if(o.model!=="imageBlock"&&o.model!=="imageInline"){return}if(e.isRegistered("imageBlock")){e.extend("imageBlock",{allowAttributes:["htmlAttributes","htmlFigureAttributes","htmlLinkAttributes"]})}if(e.isRegistered("imageInline")){e.extend("imageInline",{allowAttributes:["htmlA","htmlAttributes"]})}n.for("upcast").add(Ez(i));n.for("downcast").add(Tz());t.stop()}))}}function Ez(t){return e=>{e.on("element:img",((e,n,i)=>{if(!n.modelRange){return}const o=n.viewItem;const r=o.parent;s(o,"htmlAttributes");if(r.is("element","a")){a(r)}function s(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}function a(t){if(n.modelRange&&n.modelRange.getContainedElement().is("element","imageBlock")){s(t,"htmlLinkAttributes")}}}),{priority:"low"})}}function Dz(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("image")){return}const r=t.processViewAttributes(o,i);if(r){i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}}),{priority:"low"})}}function Tz(){return t=>{e("htmlAttributes");n("img","htmlAttributes");n("figure","htmlFigureAttributes");n("a","htmlLinkAttributes");function e(e){t.on(`attribute:${e}:imageInline`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const{attributeOldValue:i,attributeNewValue:o}=e;const r=n.mapper.toViewElement(e.item);NB(n.writer,i,o,r)}),{priority:"low"})}function n(e,n){t.on(`attribute:${n}:imageBlock`,((t,n,i)=>{if(!i.consumable.test(n.item,t.name)){return}const{attributeOldValue:o,attributeNewValue:r}=n;const s=i.mapper.toViewElement(n.item);const a=Sz(i.writer,s,e);if(a){NB(i.writer,o,r,a);i.consumable.consume(n.item,t.name)}}),{priority:"low"});if(e==="a"){t.on("attribute:linkHref:imageBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,"attribute:htmlLinkAttributes:imageBlock")){return}const i=n.mapper.toViewElement(e.item);const o=Sz(n.writer,i,"a");zB(n.writer,e.item.getAttribute("htmlLinkAttributes"),o)}),{priority:"low"})}}}}function Sz(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker()){if(t.is("element",n)){return t}}}class Iz extends eu{static get requires(){return[gM]}static get pluginName(){return"MediaEmbedElementSupport"}init(){const t=this.editor;if(!t.plugins.has("MediaEmbed")||t.config.get("mediaEmbed.previewsInData")){return}const e=t.model.schema;const n=t.conversion;const i=this.editor.plugins.get(gM);const o=this.editor.plugins.get(MB);const r=t.config.get("mediaEmbed.elementName");o.registerBlockElement({model:"media",view:r});i.on("register:figure",(()=>{n.for("upcast").add(Mz(i))}));i.on(`register:${r}`,((t,o)=>{if(o.model!=="media"){return}e.extend("media",{allowAttributes:["htmlAttributes","htmlFigureAttributes"]});n.for("upcast").add(Bz(i,r));n.for("dataDowncast").add(Lz(r));t.stop()}))}}function Bz(t,e){return t=>{t.on(`element:${e}`,n,{priority:"low"})};function n(e,n,i){const o=n.viewItem;r(o,"htmlAttributes");function r(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}}}function Mz(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("media")){return}const r=t.processViewAttributes(o,i);if(r){i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}}),{priority:"low"})}}function Lz(t){return e=>{n(t,"htmlAttributes");n("figure","htmlFigureAttributes");function n(t,n){e.on(`attribute:${n}:media`,((e,n,i)=>{if(!i.consumable.consume(n.item,e.name)){return}const{attributeOldValue:o,attributeNewValue:r}=n;const s=i.mapper.toViewElement(n.item);const a=Nz(i.writer,s,t);NB(i.writer,o,r,a)}))}}}function Nz(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker()){if(t.is("element",n)){return t}}}class zz extends eu{static get requires(){return[gM]}static get pluginName(){return"ScriptElementSupport"}init(){const t=this.editor.plugins.get(gM);t.on("register:script",((e,n)=>{const i=this.editor;const o=i.model.schema;const r=i.conversion;o.register("htmlScript",n.modelSchema);o.extend("htmlScript",{allowAttributes:["htmlAttributes","htmlContent"],isContent:true});i.data.registerRawContentMatcher({name:"script"});r.for("upcast").elementToElement({view:"script",model:OB(n)});r.for("upcast").add(UB(n,t));r.for("downcast").elementToElement({model:"htmlScript",view:(t,{writer:e})=>FB("script",t,e)});r.for("downcast").add(WB(n));e.stop()}))}}class Pz extends eu{static get requires(){return[gM]}static get pluginName(){return"TableElementSupport"}init(){const t=this.editor;if(!t.plugins.has("TableEditing")){return}const e=t.model.schema;const n=t.conversion;const i=t.plugins.get(gM);i.on("register:figure",(()=>{n.for("upcast").add(Oz(i))}));i.on("register:table",((t,o)=>{if(o.model!=="table"){return}e.extend("table",{allowAttributes:["htmlAttributes","htmlFigureAttributes","htmlTheadAttributes","htmlTbodyAttributes"]});n.for("upcast").add(Rz(i));n.for("downcast").add(Vz());t.stop()}))}}function Rz(t){return e=>{e.on("element:table",((e,n,i)=>{const o=n.viewItem;r(o,"htmlAttributes");for(const t of o.getChildren()){if(t.is("element","thead")){r(t,"htmlTheadAttributes")}if(t.is("element","tbody")){r(t,"htmlTbodyAttributes")}}function r(e,o){const r=t.processViewAttributes(e,i);if(r){i.writer.setAttribute(o,r,n.modelRange)}}}),{priority:"low"})}}function Oz(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("table")){return}const r=t.processViewAttributes(o,i);if(r){i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}}),{priority:"low"})}}function Vz(){return t=>{e("table","htmlAttributes");e("figure","htmlFigureAttributes");e("thead","htmlTheadAttributes");e("tbody","htmlTbodyAttributes");function e(e,n){t.on(`attribute:${n}:table`,((t,n,i)=>{if(!i.consumable.consume(n.item,t.name)){return}const o=i.mapper.toViewElement(n.item);const r=Fz(i.writer,o,e);zB(i.writer,n.attributeNewValue,r)}))}}}function Fz(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker()){if(t.is("element",n)){return t}}}class jz extends eu{static get requires(){return[gM]}static get pluginName(){return"StyleElementSupport"}init(){const t=this.editor.plugins.get(gM);t.on("register:style",((e,n)=>{const i=this.editor;const o=i.model.schema;const r=i.conversion;o.register("htmlStyle",n.modelSchema);o.extend("htmlStyle",{allowAttributes:["htmlAttributes","htmlContent"],isContent:true});i.data.registerRawContentMatcher({name:"style"});r.for("upcast").elementToElement({view:"style",model:OB(n)});r.for("upcast").add(UB(n,t));r.for("downcast").elementToElement({model:"htmlStyle",view:(t,{writer:e})=>FB("style",t,e)});r.for("downcast").add(WB(n));e.stop()}))}}class Hz extends eu{static get requires(){return[gM]}static get pluginName(){return"DocumentListElementSupport"}init(){const t=this.editor;if(!t.plugins.has("DocumentListEditing")){return}const e=t.model.schema;const n=t.conversion;const i=t.plugins.get(gM);const o=t.plugins.get("DocumentListEditing");o.registerDowncastStrategy({scope:"item",attributeName:"htmlLiAttributes",setAttributeOnDowncast(t,e,n){zB(t,e,n)}});o.registerDowncastStrategy({scope:"list",attributeName:"htmlListAttributes",setAttributeOnDowncast(t,e,n){zB(t,e,n)}});i.on("register",((t,o)=>{if(!["ul","ol","li"].includes(o.view)){return}t.stop();if(e.checkAttribute("$block","htmlListAttributes")){return}e.extend("$block",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]});e.extend("$blockObject",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]});e.extend("$container",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]});n.for("upcast").add((t=>{t.on("element:ul",Uz("htmlListAttributes",i),{priority:"low"});t.on("element:ol",Uz("htmlListAttributes",i),{priority:"low"});t.on("element:li",Uz("htmlLiAttributes",i),{priority:"low"})}))}));o.on("postFixer",((t,{listNodes:e,writer:n})=>{const i=[];for(const{node:o,previous:r}of e){if(!r){continue}const e=o.getAttribute("listIndent");const s=r.getAttribute("listIndent");let a=null;if(e>s){i[s]=r}else if(e<s){a=i[e];i.length=e}else{a=r}if(!a){continue}if(a.getAttribute("listType")==o.getAttribute("listType")){const e=a.getAttribute("htmlListAttributes");if(!Ow(o.getAttribute("htmlListAttributes"),e)){n.setAttribute("htmlListAttributes",e,o);t.return=true}}if(a.getAttribute("listItemId")==o.getAttribute("listItemId")){const e=a.getAttribute("htmlLiAttributes");if(!Ow(o.getAttribute("htmlLiAttributes"),e)){n.setAttribute("htmlLiAttributes",e,o);t.return=true}}}}))}afterInit(){const t=this.editor;if(!t.commands.get("indentList")){return}this.listenTo(t.commands.get("indentList"),"afterExecute",((e,n)=>{t.model.change((t=>{for(const e of n){t.setAttribute("htmlListAttributes",{},e)}}))}))}}function Uz(t,e){return(n,i,o)=>{const r=i.viewItem;if(!i.modelRange){Object.assign(i,o.convertChildren(i.viewItem,i.modelCursor))}const s=e.processViewAttributes(r,o);for(const e of i.modelRange.getItems({shallow:true})){if(!e.hasAttribute("listItemId")){continue}if(e.hasAttribute(t)){continue}o.writer.setAttribute(t,s||{},e)}}}class Wz extends eu{static get requires(){return[gM,MB]}static get pluginName(){return"CustomElementSupport"}init(){const t=this.editor.plugins.get(gM);const e=this.editor.plugins.get(MB);t.on("register:$customElement",((n,i)=>{n.stop();const o=this.editor;const r=o.model.schema;const s=o.conversion;const a=o.editing.view.domConverter.unsafeElements;const c=o.data.htmlProcessor.domConverter.preElements;r.register(i.model,i.modelSchema);r.extend(i.model,{allowAttributes:["htmlElementName","htmlAttributes","htmlContent"],isContent:true});s.for("upcast").elementToElement({view:/.*/,model:(n,r)=>{if(n.name=="$comment"){return}if(!qz(n.name)){return}if(e.getDefinitionsForView(n.name).size){return}if(!a.includes(n.name)){a.push(n.name)}if(!c.includes(n.name)){c.push(n.name)}const s=r.writer.createElement(i.model,{htmlElementName:n.name});const l=t.processViewAttributes(n,r);if(l){r.writer.setAttribute("htmlAttributes",l,s)}const d=new kC(n.document);const u=d.createDocumentFragment(n);const h=o.data.processor.toData(u);r.writer.setAttribute("htmlContent",h,s);for(const{item:t}of o.editing.view.createRangeIn(n)){r.consumable.consume(t,{name:true})}return s},converterPriority:"low"});s.for("editingDowncast").elementToElement({model:{name:i.model,attributes:["htmlElementName","htmlAttributes","htmlContent"]},view:(t,{writer:e})=>{const n=t.getAttribute("htmlElementName");const i=e.createRawElement(n);if(t.hasAttribute("htmlAttributes")){zB(e,t.getAttribute("htmlAttributes"),i)}return i}});s.for("dataDowncast").elementToElement({model:{name:i.model,attributes:["htmlElementName","htmlAttributes","htmlContent"]},view:(t,{writer:e})=>{const n=t.getAttribute("htmlElementName");const i=t.getAttribute("htmlContent");const o=e.createRawElement(n,null,((t,e)=>{e.setContentOf(t,i);const n=t.firstChild;n.remove();while(n.firstChild){t.appendChild(n.firstChild)}}));if(t.hasAttribute("htmlAttributes")){zB(e,t.getAttribute("htmlAttributes"),o)}return o}})}))}}function qz(t){try{document.createElement(t)}catch(t){return false}return true}class $z extends eu{static get pluginName(){return"GeneralHtmlSupport"}static get requires(){return[gM,Az,vz,yz,xz,Iz,zz,Pz,jz,Hz,Wz]}init(){const t=this.editor;const e=t.plugins.get(gM);e.loadAllowedConfig(t.config.get("htmlSupport.allow")||[]);e.loadDisallowedConfig(t.config.get("htmlSupport.disallow")||[])}getGhsAttributeNameForElement(t){const e=this.editor.plugins.get("DataSchema");const n=Array.from(e.getDefinitionsForView(t,false));if(n&&n.length&&n[0].isInline&&!n[0].isObject){return n[0].model}return"htmlAttributes"}addModelHtmlClass(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of Gz(i,n,o)){Yz(t,r,o,"classes",(t=>{for(const n of Xc(e)){t.add(n)}}))}}))}removeModelHtmlClass(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of Gz(i,n,o)){Yz(t,r,o,"classes",(t=>{for(const n of Xc(e)){t.delete(n)}}))}}))}setModelHtmlAttributes(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of Gz(i,n,o)){Yz(t,r,o,"attributes",(t=>{for(const[n,i]of Object.entries(e)){t.set(n,i)}}))}}))}removeModelHtmlAttributes(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of Gz(i,n,o)){Yz(t,r,o,"attributes",(t=>{for(const n of Xc(e)){t.delete(n)}}))}}))}setModelHtmlStyles(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of Gz(i,n,o)){Yz(t,r,o,"styles",(t=>{for(const[n,i]of Object.entries(e)){t.set(n,i)}}))}}))}removeModelHtmlStyles(t,e,n){const i=this.editor.model;const o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of Gz(i,n,o)){Yz(t,r,o,"styles",(t=>{for(const n of Xc(e)){t.delete(n)}}))}}))}}function*Gz(t,e,n){if(e.is("documentSelection")&&e.isCollapsed){if(t.schema.checkAttributeInSelection(e,n)){yield e}}else{for(const i of Kz(t,e,n)){yield*i.getItems({shallow:true})}}}function Kz(t,e,n){if(e.is("node")||e.is("$text")||e.is("$textProxy")){if(t.schema.checkAttribute(e,n)){return[t.createRangeOn(e)]}else{return[]}}else{return t.schema.getValidRanges(t.createSelection(e).getRanges(),n)}}function Yz(t,e,n,i,o){const r=e.getAttribute(n);const s={};for(const t of["attributes","styles","classes"]){if(t!=i){if(r&&r[t]){s[t]=r[t]}}else{const e=t=="classes"?new Set(r&&r[t]||[]):new Map(Object.entries(r&&r[t]||{}));o(e);if(e.size){s[t]=t=="classes"?Array.from(e):Object.fromEntries(e)}}}if(Object.keys(s).length){if(e.is("documentSelection")){t.setSelectionAttribute(n,s)}else{t.setAttribute(n,s,e)}}else if(r){if(e.is("documentSelection")){t.removeSelectionAttribute(n)}else{t.removeAttribute(n,e)}}}class Zz extends iu{refresh(){const t=this.editor.model;const e=t.document;const n=dl(e.selection.getSelectedBlocks());this.value=!!n&&n.is("element","paragraph");this.isEnabled=!!n&&Qz(n,t.schema)}execute(t={}){const e=this.editor.model;const n=e.document;e.change((i=>{const o=(t.selection||n.selection).getSelectedBlocks();for(const t of o){if(!t.is("element","paragraph")&&Qz(t,e.schema)){i.rename(t,"paragraph")}}}))}}function Qz(t,e){return e.checkChild(t.parent,"paragraph")&&!e.isObject(t)}class Jz extends iu{execute(t){const e=this.editor.model;const n=t.attributes;let i=t.position;e.change((t=>{const o=t.createElement("paragraph");if(n){e.schema.setAllowedAttributes(o,n,t)}if(!e.schema.checkChild(i.parent,o)){const n=e.schema.findAllowedParent(i,o);if(!n){return}i=t.split(i,n).position}e.insertContent(o,i);t.setSelection(o,"in")}))}}class Xz extends eu{static get pluginName(){return"Paragraph"}init(){const t=this.editor;const e=t.model;t.commands.add("paragraph",new Zz(t));t.commands.add("insertParagraph",new Jz(t));e.schema.register("paragraph",{inheritAllFrom:"$block"});t.conversion.elementToElement({model:"paragraph",view:"p"});t.conversion.for("upcast").elementToElement({model:(t,{writer:e})=>{if(!Xz.paragraphLikeElements.has(t.name)){return null}if(t.isEmpty){return null}return e.createElement("paragraph")},view:/.+/,converterPriority:"low"})}}Xz.paragraphLikeElements=new Set(["blockquote","dd","div","dt","h1","h2","h3","h4","h5","h6","li","p","td","th"]);const tP=J_.paragraph;class eP extends(null&&Plugin){static get requires(){return[Paragraph]}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("paragraph",(n=>{const i=new ButtonView(n);const o=t.commands.get("paragraph");i.label=e("Paragraph");i.icon=tP;i.tooltip=true;i.isToggleable=true;i.bind("isEnabled").to(o);i.bind("isOn").to(o,"value");i.on("execute",(()=>{t.execute("paragraph")}));return i}))}}class nP extends iu{constructor(t,e){super(t);this.modelElements=e}refresh(){const t=dl(this.editor.model.document.selection.getSelectedBlocks());this.value=!!t&&this.modelElements.includes(t.name)&&t.name;this.isEnabled=!!t&&this.modelElements.some((e=>iP(t,e,this.editor.model.schema)))}execute(t){const e=this.editor.model;const n=e.document;const i=t.value;e.change((t=>{const o=Array.from(n.selection.getSelectedBlocks()).filter((t=>iP(t,i,e.schema)));for(const e of o){if(!e.is("element",i)){t.rename(e,i)}}}))}}function iP(t,e,n){return n.checkChild(t.parent,e)&&!n.isObject(t)}const oP="paragraph";class rP extends eu{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[Xz]}init(){const t=this.editor;const e=t.config.get("heading.options");const n=[];for(const i of e){if(i.model==="paragraph"){continue}t.model.schema.register(i.model,{inheritAllFrom:"$block"});t.conversion.elementToElement(i);n.push(i.model)}this._addDefaultH1Conversion(t);t.commands.add("heading",new nP(t,n))}afterInit(){const t=this.editor;const e=t.commands.get("enter");const n=t.config.get("heading.options");if(e){this.listenTo(e,"afterExecute",((e,i)=>{const o=t.model.document.selection.getFirstPosition().parent;const r=n.some((t=>o.is("element",t.model)));if(r&&!o.is("element",oP)&&o.childCount===0){i.writer.rename(o,oP)}}))}}_addDefaultH1Conversion(t){t.conversion.for("upcast").elementToElement({model:"heading1",view:"h1",converterPriority:M.get("low")+1})}}function sP(t){const e=t.t;const 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];if(e&&e!=t.title){t.title=e}return t}))}var aP=n(3230);var cP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};cP.insert="head";cP.singleton=true;var lP=Tl()(aP.Z,cP);const dP=aP.Z.locals||{};class uP extends eu{static get pluginName(){return"HeadingUI"}init(){const t=this.editor;const e=t.t;const n=sP(t);const i=e("Choose heading");const o=e("Heading");t.ui.componentFactory.add("heading",(e=>{const r={};const s=new ll;const a=t.commands.get("heading");const c=t.commands.get("paragraph");const l=[a];for(const t of n){const e={type:"button",model:new Oy({label:t.title,class:t.class,withText:true})};if(t.model==="paragraph"){e.model.bind("isOn").to(c,"value");e.model.set("commandName","paragraph");l.push(c)}else{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=yv(e);Dv(d,s);d.buttonView.set({isOn:false,withText:true,tooltip:o});d.extendTemplate({attributes:{class:["ck-heading-dropdown"]}});d.bind("isEnabled").toMany(l,"isEnabled",((...t)=>t.some((t=>t))));d.buttonView.bind("label").to(a,"value",c,"value",((t,e)=>{const n=t||e&&"paragraph";if(typeof n==="boolean"){return i}if(!r[n]){return i}return r[n]}));this.listenTo(d,"execute",(e=>{const{commandName:n,commandValue:i}=e.source;t.execute(n,i?{value:i}:undefined);t.editing.view.focus()}));return d}))}}class hP extends eu{static get requires(){return[rP,uP]}static get pluginName(){return"Heading"}}class gP extends iu{refresh(){const t=this.editor.model;const e=t.document;this.value=e.selection.getAttribute("highlight");this.isEnabled=t.schema.checkAttributeInSelection(e.selection,"highlight")}execute(t={}){const e=this.editor.model;const n=e.document;const i=n.selection;const o=t.value;e.change((t=>{if(i.isCollapsed){const e=i.getFirstPosition();if(i.hasAttribute("highlight")){const n=t=>t.item.hasAttribute("highlight")&&t.item.getAttribute("highlight")===this.value;const i=e.getLastMatchingPosition(n,{direction:"backward"});const r=e.getLastMatchingPosition(n);const s=t.createRange(i,r);if(!o||this.value===o){if(!e.isEqual(r)){t.removeAttribute("highlight",s)}t.removeSelectionAttribute("highlight")}else{if(!e.isEqual(r)){t.setAttribute("highlight",o,s)}t.setSelectionAttribute("highlight",o)}}else if(o){t.setSelectionAttribute("highlight",o)}}else{const n=e.schema.getValidRanges(i.getRanges(),"highlight");for(const e of n){if(o){t.setAttribute("highlight",o,e)}else{t.removeAttribute("highlight",e)}}}}))}}class mP extends eu{static get pluginName(){return"HighlightEditing"}constructor(t){super(t);t.config.define("highlight",{options:[{model:"yellowMarker",class:"marker-yellow",title:"Yellow marker",color:"var(--ck-highlight-marker-yellow)",type:"marker"},{model:"greenMarker",class:"marker-green",title:"Green marker",color:"var(--ck-highlight-marker-green)",type:"marker"},{model:"pinkMarker",class:"marker-pink",title:"Pink marker",color:"var(--ck-highlight-marker-pink)",type:"marker"},{model:"blueMarker",class:"marker-blue",title:"Blue marker",color:"var(--ck-highlight-marker-blue)",type:"marker"},{model:"redPen",class:"pen-red",title:"Red pen",color:"var(--ck-highlight-pen-red)",type:"pen"},{model:"greenPen",class:"pen-green",title:"Green pen",color:"var(--ck-highlight-pen-green)",type:"pen"}]})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:"highlight"});const e=t.config.get("highlight.options");t.conversion.attributeToElement(fP(e));t.commands.add("highlight",new gP(t))}}function fP(t){const e={model:{key:"highlight",values:[]},view:{}};for(const n of t){e.model.values.push(n.model);e.view[n.model]={name:"mark",classes:n.class}}return e}const pP='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path class="ck-icon__fill" d="M10.798 1.59 3.002 12.875l1.895 1.852 2.521 1.402 6.997-12.194z"/><path d="m2.556 16.727.234-.348c-.297-.151-.462-.293-.498-.426-.036-.137.002-.416.115-.837.094-.25.15-.449.169-.595a4.495 4.495 0 0 0 0-.725c-.209-.621-.303-1.041-.284-1.26.02-.218.178-.506.475-.862l6.77-9.414c.539-.91 1.605-.85 3.199.18 1.594 1.032 2.188 1.928 1.784 2.686l-5.877 10.36c-.158.412-.333.673-.526.782-.193.108-.604.179-1.232.21-.362.131-.608.237-.738.318-.13.081-.305.238-.526.47-.293.265-.504.397-.632.397-.096 0-.27-.075-.524-.226l-.31.41-1.6-1.12zm-.279.415 1.575 1.103-.392.515H1.19l1.087-1.618zm8.1-13.656-4.953 6.9L8.75 12.57l4.247-7.574c.175-.25-.188-.647-1.092-1.192-.903-.546-1.412-.652-1.528-.32zM8.244 18.5 9.59 17h9.406v1.5H8.245z"/></svg>';const bP='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path class="ck-icon__fill" d="M10.126 2.268 2.002 13.874l1.895 1.852 2.521 1.402L14.47 5.481l-1.543-2.568-2.801-.645z"/><path d="m4.5 18.088-2.645-1.852-.04-2.95-.006-.005.006-.008v-.025l.011.008L8.73 2.97c.165-.233.356-.417.567-.557l-1.212.308L4.604 7.9l-.83-.558 3.694-5.495 2.708-.69 1.65 1.145.046.018.85-1.216 2.16 1.512-.856 1.222c.828.967 1.144 2.141.432 3.158L7.55 17.286l.006.005-3.055.797H4.5zm-.634.166-1.976.516-.026-1.918 2.002 1.402zM9.968 3.817l-.006-.004-6.123 9.184 3.277 2.294 6.108-9.162.005.003c.317-.452-.16-1.332-1.064-1.966-.891-.624-1.865-.776-2.197-.349zM8.245 18.5 9.59 17h9.406v1.5H8.245z"/></svg>';var kP=n(713);var wP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};wP.insert="head";wP.singleton=true;var AP=Tl()(kP.Z,wP);const CP=kP.Z.locals||{};class _P extends eu{get localizedOptionTitles(){const t=this.editor.t;return{"Yellow marker":t("Yellow marker"),"Green marker":t("Green marker"),"Pink marker":t("Pink marker"),"Blue marker":t("Blue marker"),"Red pen":t("Red pen"),"Green pen":t("Green pen")}}static get pluginName(){return"HighlightUI"}init(){const t=this.editor.config.get("highlight.options");for(const e of t){this._addHighlighterButton(e)}this._addRemoveHighlightButton();this._addDropdown(t)}_addRemoveHighlightButton(){const t=this.editor.t;const e=this.editor.commands.get("highlight");this._addButton("removeHighlight",t("Remove highlight"),J_.eraser,null,(t=>{t.bind("isEnabled").to(e,"isEnabled")}))}_addHighlighterButton(t){const e=this.editor.commands.get("highlight");this._addButton("highlight:"+t.model,t.title,yP(t.type),t.model,n);function n(n){n.bind("isEnabled").to(e,"isEnabled");n.bind("isOn").to(e,"value",(e=>e===t.model));n.iconView.fillColor=t.color;n.isToggleable=true}}_addButton(t,e,n,i,o){const r=this.editor;r.ui.componentFactory.add(t,(t=>{const s=new kd(t);const a=this.localizedOptionTitles[e]?this.localizedOptionTitles[e]:e;s.set({label:a,icon:n,tooltip:true});s.on("execute",(()=>{r.execute("highlight",{value:i});r.editing.view.focus()}));o(s);return s}))}_addDropdown(t){const e=this.editor;const n=e.t;const i=e.ui.componentFactory;const o=t[0];const r=t.reduce(((t,e)=>{t[e.model]=e;return t}),{});i.add("highlight",(s=>{const a=e.commands.get("highlight");const c=yv(s,Gd);const l=c.buttonView;l.set({label:n("Highlight"),tooltip:true,lastExecuted:o.model,commandValue:o.model,isToggleable:true});l.bind("icon").to(a,"value",(t=>yP(u(t,"type"))));l.bind("color").to(a,"value",(t=>u(t,"color")));l.bind("commandValue").to(a,"value",(t=>u(t,"model")));l.bind("isOn").to(a,"value",(t=>!!t));l.delegate("execute").to(c);const d=()=>{const e=t.map((t=>{const e=i.create("highlight:"+t.model);this.listenTo(e,"execute",(()=>{c.buttonView.set({lastExecuted:t.model})}));return e}));e.push(new Qd);e.push(i.create("removeHighlight"));return e};c.bind("isEnabled").to(a,"isEnabled");xv(c,d,{enableActiveItemFocusOnDropdownOpen:true,ariaLabel:n("Text highlight toolbar")});vP(c);l.on("execute",(()=>{e.execute("highlight",{value:l.commandValue})}));this.listenTo(c,"execute",(()=>{e.editing.view.focus()}));function u(t,e){const n=!t||t===l.lastExecuted?l.lastExecuted:t;return r[n][e]}return c}))}}function vP(t){const e=t.buttonView.actionView;e.iconView.bind("fillColor").to(t.buttonView,"color")}function yP(t){return t==="marker"?pP:bP}class xP extends eu{static get requires(){return[mP,_P]}static get pluginName(){return"Highlight"}}class EP extends iu{refresh(){const t=this.editor.model;const e=t.schema;const n=t.document.selection;this.isEnabled=DP(n,e,t)}execute(){const t=this.editor.model;t.change((e=>{const n=e.createElement("horizontalLine");t.insertObject(n,null,null,{setSelection:"after"})}))}}function DP(t,e,n){const i=TP(t,n);return e.checkChild(i,"horizontalLine")}function TP(t,e){const n=bD(t,e);const i=n.start.parent;if(i.isEmpty&&!i.is("element","$root")){return i.parent}return i}var SP=n(2536);var IP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};IP.insert="head";IP.singleton=true;var BP=Tl()(SP.Z,IP);const MP=SP.Z.locals||{};class LP extends eu{static get pluginName(){return"HorizontalLineEditing"}init(){const t=this.editor;const e=t.model.schema;const n=t.t;const i=t.conversion;e.register("horizontalLine",{inheritAllFrom:"$blockObject"});i.for("dataDowncast").elementToElement({model:"horizontalLine",view:(t,{writer:e})=>e.createEmptyElement("hr")});i.for("editingDowncast").elementToStructure({model:"horizontalLine",view:(t,{writer:e})=>{const i=n("Horizontal line");const o=e.createContainerElement("div",null,e.createEmptyElement("hr"));e.addClass("ck-horizontal-line",o);e.setCustomProperty("hr",true,o);return NP(o,e,i)}});i.for("upcast").elementToElement({view:"hr",model:"horizontalLine"});t.commands.add("horizontalLine",new EP(t))}}function NP(t,e,n){e.setCustomProperty("horizontalLine",true,t);return dD(t,e,{label:n})}const zP='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 9h16v2H2z"/></svg>';class PP extends eu{static get pluginName(){return"HorizontalLineUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("horizontalLine",(n=>{const i=t.commands.get("horizontalLine");const o=new kd(n);o.set({label:e("Horizontal line"),icon:zP,tooltip:true});o.bind("isEnabled").to(i,"isEnabled");this.listenTo(o,"execute",(()=>{t.execute("horizontalLine");t.editing.view.focus()}));return o}))}}class RP extends eu{static get requires(){return[LP,PP,ZD]}static get pluginName(){return"HorizontalLine"}}class OP extends eu{static get pluginName(){return"HtmlComment"}init(){const t=this.editor;t.data.processor.skipComments=false;t.model.schema.addAttributeCheck(((t,e)=>{if(t.endsWith("$root")&&e.startsWith("$comment")){return true}}));t.conversion.for("upcast").elementToMarker({view:"$comment",model:(t,{writer:e})=>{const n=this.editor.model.document.getRoot();const i=t.getCustomProperty("$rawContent");const o=`$comment:${I()}`;e.setAttribute(o,i,n);return o}});t.conversion.for("dataDowncast").markerToElement({model:"$comment",view:(t,{writer:e})=>{const n=this.editor.model.document.getRoot();const i=t.markerName;const o=n.getAttribute(i);const r=e.createUIElement("$comment");e.setCustomProperty("$rawContent",o,r);return r}});t.model.document.registerPostFixer((e=>{const n=t.model.document.getRoot();const i=t.model.document.differ.getChangedMarkers();const o=i.filter((t=>t.name.startsWith("$comment")));const r=o.filter((t=>{const e=t.data.newRange;return e&&e.root.rootName==="$graveyard"}));if(r.length===0){return false}for(const t of r){e.removeMarker(t.name);e.removeAttribute(t.name,n)}return true}));t.data.on("set",(()=>{for(const e of t.model.markers.getMarkersGroup("$comment")){this.removeHtmlComment(e.name)}}),{priority:"high"});t.model.on("deleteContent",((e,[n])=>{for(const e of n.getRanges()){const n=t.model.schema.getLimitElement(e);const i=t.model.createPositionAt(n,0);const o=t.model.createPositionAt(n,"end");let r;if(i.isTouching(e.start)&&o.isTouching(e.end)){r=this.getHtmlCommentsInRange(t.model.createRange(i,o))}else{r=this.getHtmlCommentsInRange(e,{skipBoundaries:true})}for(const t of r){this.removeHtmlComment(t)}}}),{priority:"high"})}createHtmlComment(t,e){const n=I();const i=this.editor;const o=i.model;const r=o.document.getRoot();const s=`$comment:${n}`;return o.change((n=>{const i=n.createRange(t);n.addMarker(s,{usingOperation:true,affectsData:true,range:i});n.setAttribute(s,e,r);return s}))}removeHtmlComment(t){const e=this.editor;const n=e.model.document.getRoot();const i=e.model.markers.get(t);if(!i){return false}e.model.change((e=>{e.removeMarker(i);e.removeAttribute(t,n)}));return true}getHtmlCommentData(t){const e=this.editor;const n=e.model.markers.get(t);const i=e.model.document.getRoot();if(!n){return null}return{content:i.getAttribute(t),position:n.getStart()}}getHtmlCommentsInRange(t,{skipBoundaries:e=false}={}){const n=!e;return Array.from(this.editor.model.markers.getMarkersGroup("$comment")).filter((e=>i(e,t))).map((t=>t.name));function i(t,e){const i=t.getRange().start;return(i.isAfter(e.start)||n&&i.isEqual(e.start))&&(i.isBefore(e.end)||n&&i.isEqual(e.end))}}}class VP extends iu{refresh(){const t=this.editor.model;const e=t.schema;const n=t.document.selection;const i=HP(n);this.isEnabled=FP(n,e,t);this.value=i?i.getAttribute("value")||"":null}execute(t){const e=this.editor.model;const n=e.document.selection;e.change((i=>{let o;if(this.value!==null){o=HP(n)}else{o=i.createElement("rawHtml");e.insertObject(o,null,null,{setSelection:"on"})}i.setAttribute("value",t,o)}))}}function FP(t,e,n){const i=jP(t,n);return e.checkChild(i,"rawHtml")}function jP(t,e){const n=bD(t,e);const i=n.start.parent;if(i.isEmpty&&!i.is("element","$root")){return i.parent}return i}function HP(t){const e=t.getSelectedElement();if(e&&e.is("element","rawHtml")){return e}return null}var UP=n(3403);var WP={injectType:"singletonStyleTag",attributes:{"data-cke":true}};WP.insert="head";WP.singleton=true;var qP=Tl()(UP.Z,WP);const $P=UP.Z.locals||{};class GP extends eu{static get pluginName(){return"HtmlEmbedEditing"}constructor(t){super(t);t.config.define("htmlEmbed",{showPreviews:false,sanitizeHtml:t=>{P("html-embed-provide-sanitize-function");return{html:t,hasChanged:false}}});this._widgetButtonViewReferences=new Set}init(){const t=this.editor;const e=t.model.schema;e.register("rawHtml",{inheritAllFrom:"$blockObject",allowAttributes:["value"]});t.commands.add("htmlEmbed",new VP(t));this._setupConversion()}_setupConversion(){const t=this.editor;const e=t.t;const n=t.editing.view;const i=this._widgetButtonViewReferences;const o=t.config.get("htmlEmbed");this.editor.editing.view.on("render",(()=>{for(const t of i){if(t.element.isConnected){return}t.destroy();i.delete(t)}}),{priority:"lowest"});t.data.registerRawContentMatcher({name:"div",classes:"raw-html-embed"});t.conversion.for("upcast").elementToElement({view:{name:"div",classes:"raw-html-embed"},model:(t,{writer:e})=>e.createElement("rawHtml",{value:t.getCustomProperty("$rawContent")})});t.conversion.for("dataDowncast").elementToElement({model:"rawHtml",view:(t,{writer:e})=>e.createRawElement("div",{class:"raw-html-embed"},(function(e){e.innerHTML=t.getAttribute("value")||""}))});t.conversion.for("editingDowncast").elementToStructure({model:{name:"rawHtml",attributes:["value"]},view:(i,{writer:s})=>{let a,c,l;const d=s.createRawElement("div",{class:"raw-html-embed__content-wrapper"},(function(e){a=e;r({domElement:e,editor:t,state:c,props:l});a.addEventListener("mousedown",(()=>{if(c.isEditable){const e=t.model;const n=e.document.selection.getSelectedElement();if(n!==i){e.change((t=>t.setSelection(i,"on")))}}}),true)}));const u={makeEditable(){c=Object.assign({},c,{isEditable:true});r({domElement:a,editor:t,state:c,props:l});n.change((t=>{t.setAttribute("data-cke-ignore-events","true",d)}));a.querySelector("textarea").focus()},save(e){if(e!==c.getRawHtmlValue()){t.execute("htmlEmbed",e);t.editing.view.focus()}else{this.cancel()}},cancel(){c=Object.assign({},c,{isEditable:false});r({domElement:a,editor:t,state:c,props:l});t.editing.view.focus();n.change((t=>{t.removeAttribute("data-cke-ignore-events",d)}))}};c={showPreviews:o.showPreviews,isEditable:false,getRawHtmlValue:()=>i.getAttribute("value")||""};l={sanitizeHtml:o.sanitizeHtml,textareaPlaceholder:e("Paste raw HTML here..."),onEditClick(){u.makeEditable()},onSaveClick(t){u.save(t)},onCancelClick(){u.cancel()}};const h=s.createContainerElement("div",{class:"raw-html-embed","data-html-embed-label":e("HTML snippet"),dir:t.locale.uiLanguageDirection},d);s.setCustomProperty("rawHtmlApi",u,h);s.setCustomProperty("rawHtml",true,h);return dD(h,s,{widgetLabel:e("HTML snippet"),hasSelectionHandle:true})}});function r({domElement:t,editor:e,state:n,props:i}){t.textContent="";const o=t.ownerDocument;let r;if(n.isEditable){const e={isDisabled:false,placeholder:i.textareaPlaceholder};r=a({domDocument:o,state:n,props:e});t.append(r)}else if(n.showPreviews){const r={sanitizeHtml:i.sanitizeHtml};t.append(c({domDocument:o,state:n,props:r,editor:e}))}else{const e={isDisabled:true,placeholder:i.textareaPlaceholder};t.append(a({domDocument:o,state:n,props:e}))}const l={onEditClick:i.onEditClick,onSaveClick:()=>{i.onSaveClick(r.value)},onCancelClick:i.onCancelClick};t.prepend(s({editor:e,domDocument:o,state:n,props:l}))}function s({editor:t,domDocument:e,state:n,props:o}){const r=oe(e,"div",{class:"raw-html-embed__buttons-wrapper"});if(n.isEditable){const e=KP(t,"save",o.onSaveClick);const n=KP(t,"cancel",o.onCancelClick);r.append(e.element,n.element);i.add(e).add(n)}else{const e=KP(t,"edit",o.onEditClick);r.append(e.element);i.add(e)}return r}function a({domDocument:t,state:e,props:n}){const i=oe(t,"textarea",{placeholder:n.placeholder,class:"ck ck-reset ck-input ck-input-text raw-html-embed__source"});i.disabled=n.isDisabled;i.value=e.getRawHtmlValue();return i}function c({domDocument:t,state:n,props:i,editor:o}){const r=i.sanitizeHtml(n.getRawHtmlValue());const s=n.getRawHtmlValue().length>0?e("No preview available"):e("Empty snippet content");const a=oe(t,"div",{class:"ck ck-reset_all raw-html-embed__preview-placeholder"},s);const c=oe(t,"div",{class:"raw-html-embed__preview-content",dir:o.locale.contentLanguageDirection});const l=t.createRange();const d=l.createContextualFragment(r.html);c.appendChild(d);const u=oe(t,"div",{class:"raw-html-embed__preview"},[a,c]);return u}}}function KP(t,e,n){const i=t.locale.t;const o=new kd(t.locale);const r=t.commands.get("htmlEmbed");o.set({class:`raw-html-embed__${e}-button`,icon:J_.pencil,tooltip:true,tooltipPosition:t.locale.uiLanguageDirection==="rtl"?"e":"w"});o.render();if(e==="edit"){o.set({icon:J_.pencil,label:i("Edit source")});o.bind("isEnabled").to(r)}else if(e==="save"){o.set({icon:J_.check,label:i("Save changes")});o.bind("isEnabled").to(r)}else{o.set({icon:J_.cancel,label:i("Cancel")})}o.on("execute",n);return o}const YP='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M17 0a2 2 0 0 1 2 2v7a1 1 0 0 1 1 1v5a1 1 0 0 1-.883.993l-.118.006L19 17a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2l-.001-1.001-.116-.006A1 1 0 0 1 0 15v-5a1 1 0 0 1 .999-1L1 2a2 2 0 0 1 2-2h14zm.499 15.999h-15L2.5 17a.5.5 0 0 0 .5.5h14a.5.5 0 0 0 .5-.5l-.001-1.001zm-3.478-6.013-.014.014H14v.007l-1.525 1.525-1.46-1.46-.015.013V10h-1v5h1v-3.53l1.428 1.43.048.043.131-.129L14 11.421V15h1v-5h-.965l-.014-.014zM2 10H1v5h1v-2h2v2h1v-5H4v2H2v-2zm7 0H6v1h1v4h1v-4h1v-1zm8 0h-1v5h3v-1h-2v-4zm0-8.5H3a.5.5 0 0 0-.5.5l-.001 6.999h15L17.5 2a.5.5 0 0 0-.5-.5zM10 7v1H4V7h6zm3-2v1H4V5h9zm-3-2v1H4V3h6z"/></svg>';class ZP extends eu{static get pluginName(){return"HtmlEmbedUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("htmlEmbed",(n=>{const i=t.commands.get("htmlEmbed");const o=new kd(n);o.set({label:e("Insert HTML"),icon:YP,tooltip:true});o.bind("isEnabled").to(i,"isEnabled");this.listenTo(o,"execute",(()=>{t.execute("htmlEmbed");t.editing.view.focus();const e=t.editing.view.document.selection.getSelectedElement();e.getCustomProperty("rawHtmlApi").makeEditable()}));return o}))}}class QP extends eu{static get requires(){return[GP,ZP,ZD]}static get pluginName(){return"HtmlEmbed"}}class JP extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!n;if(this.isEnabled&&n.hasAttribute("alt")){this.value=n.getAttribute("alt")}else{this.value=false}}execute(t){const e=this.editor;const n=e.plugins.get("ImageUtils");const i=e.model;const o=n.getClosestSelectedImageElement(i.document.selection);i.change((e=>{e.setAttribute("alt",t.newValue,o)}))}}class XP extends eu{static get requires(){return[XT]}static get pluginName(){return"ImageTextAlternativeEditing"}init(){this.editor.commands.add("imageTextAlternative",new JP(this.editor))}}var tR=n(6831);var eR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};eR.insert="head";eR.singleton=true;var nR=Tl()(tR.Z,eR);const iR=tR.Z.locals||{};class oR extends Ll{constructor(t){super(t);const n=this.locale.t;this.focusTracker=new ul;this.keystrokes=new hl;this.labeledInput=this._createLabeledInputView();this.saveButtonView=this._createButton(n("Save"),J_.check,"ck-button-save");this.saveButtonView.type="submit";this.cancelButtonView=this._createButton(n("Cancel"),J_.cancel,"ck-button-cancel","cancel");this._focusables=new xl;this._focusCycler=new Yd({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]});e(this)}render(){super.render();this.keystrokes.listenTo(this.element);o({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 kd(this.locale);o.set({label:t,icon:e,tooltip:true});o.extendTemplate({attributes:{class:n}});if(i){o.delegate("execute").to(this,i)}return o}_createLabeledInputView(){const t=this.locale.t;const e=new Ly(this.locale,Ny);e.label=t("Text alternative");return e}}function rR(t){const e=t.plugins.get("ContextualBalloon");if(t.plugins.get("ImageUtils").getClosestSelectedImageWidget(t.editing.view.document.selection)){const n=sR(t);e.updatePosition(n)}}function sR(t){const e=t.editing.view;const n=Uv.defaultPositions;const 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 aR extends eu{static get requires(){return[Zy]}static get pluginName(){return"ImageTextAlternativeUI"}init(){this._createButton()}destroy(){super.destroy();if(this._form){this._form.destroy()}}_createButton(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("imageTextAlternative",(n=>{const i=t.commands.get("imageTextAlternative");const o=new kd(n);o.set({label:e("Change image text alternative"),icon:J_.lowVision,tooltip:true});o.bind("isEnabled").to(i,"isEnabled");o.bind("isOn").to(i,"value",(t=>!!t));this.listenTo(o,"execute",(()=>{this._showForm()}));return o}))}_createForm(){const e=this.editor;const n=e.editing.view;const i=n.document;const o=e.plugins.get("ImageUtils");this._balloon=this.editor.plugins.get("ContextualBalloon");this._form=new oR(e.locale);this._form.render();this.listenTo(this._form,"submit",(()=>{e.execute("imageTextAlternative",{newValue:this._form.labeledInput.fieldView.element.value});this._hideForm(true)}));this.listenTo(this._form,"cancel",(()=>{this._hideForm(true)}));this._form.keystrokes.set("Esc",((t,e)=>{this._hideForm(true);e()}));this.listenTo(e.ui,"update",(()=>{if(!o.getClosestSelectedImageWidget(i.selection)){this._hideForm(true)}else if(this._isVisible){rR(e)}}));t({emitter:this._form,activator:()=>this._isVisible,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideForm()})}_showForm(){if(this._isVisible){return}if(!this._form){this._createForm()}const t=this.editor;const e=t.commands.get("imageTextAlternative");const n=this._form.labeledInput;this._form.disableCssTransitions();if(!this._isInBalloon){this._balloon.add({view:this._form,position:sR(t)})}n.fieldView.value=n.fieldView.element.value=e.value||"";this._form.labeledInput.fieldView.select();this._form.enableCssTransitions()}_hideForm(t){if(!this._isInBalloon){return}if(this._form.focusTracker.isFocused){this._form.saveButtonView.focus()}this._balloon.remove(this._form);if(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 cR extends eu{static get requires(){return[XP,aR]}static get pluginName(){return"ImageTextAlternative"}}function lR(t){return t=>{t.on("element:figure",e)};function e(e,n,i){if(!i.consumable.test(n.viewItem,{name:true,classes:"image"})){return}const o=t.findViewImgElement(n.viewItem);if(!o||!i.consumable.test(o,{name:true})){return}i.consumable.consume(n.viewItem,{name:true,classes:"image"});const r=i.convertItem(o,n.modelCursor);const s=dl(r.modelRange.getItems());if(!s){i.consumable.revert(n.viewItem,{name:true,classes:"image"});return}i.convertChildren(n.viewItem,s);i.updateConversionResult(s,n)}}function dR(t){const e=["srcset","media","type","sizes"];return t=>{t.on("element:picture",n)};function n(n,i,o){const r=i.viewItem;if(!o.consumable.test(r,{name:true})){return}const s=new Map;for(const t of r.getChildren()){if(t.is("element","source")){const n={};for(const i of e){if(t.hasAttribute(i)){if(o.consumable.test(t,{attributes:i})){n[i]=t.getAttribute(i)}}}if(Object.keys(n).length){s.set(t,n)}}}const a=t.findViewImgElement(r);if(!a){return}let c=i.modelCursor.parent;if(!c.is("element","imageBlock")){const t=o.convertItem(a,i.modelCursor);i.modelRange=t.modelRange;i.modelCursor=t.modelCursor;c=first(t.modelRange.getItems())}o.consumable.consume(r,{name:true});for(const[t,e]of s){o.consumable.consume(t,{attributes:Object.keys(e)})}if(s.size){o.writer.setAttribute("sources",Array.from(s.values()),c)}o.convertChildren(r,c)}}function uR(t,e){return t=>{t.on(`attribute:srcset:${e}`,n)};function n(e,n,i){if(!i.consumable.consume(n.item,e.name)){return}const o=i.writer;const r=i.mapper.toViewElement(n.item);const s=t.findViewImgElement(r);if(n.attributeNewValue===null){const t=n.attributeOldValue;if(t.data){o.removeAttribute("srcset",s);o.removeAttribute("sizes",s);if(t.width){o.removeAttribute("width",s)}}}else{const t=n.attributeNewValue;if(t.data){o.setAttribute("srcset",t.data,s);o.setAttribute("sizes","100vw",s);if(t.width){o.setAttribute("width",t.width,s)}}}}}function hR(t){return t=>{t.on("attribute:sources:imageBlock",e);t.on("attribute:sources:imageInline",e)};function e(e,n,i){if(!i.consumable.consume(n.item,e.name)){return}const o=i.writer;const r=i.mapper.toViewElement(n.item);const s=t.findViewImgElement(r);if(n.attributeNewValue&&n.attributeNewValue.length){const t=o.createContainerElement("picture",null,n.attributeNewValue.map((t=>o.createEmptyElement("source",t))));const e=[];let i=s.parent;while(i&&i.is("attributeElement")){const t=i.parent;o.unwrap(o.createRangeOn(s),i);e.unshift(i);i=t}o.insert(o.createPositionBefore(s),t);o.move(o.createRangeOn(s),o.createPositionAt(t,"end"));for(const n of e){o.wrap(o.createRangeOn(t),n)}}else if(s.parent.is("element","picture")){const t=s.parent;o.move(o.createRangeOn(s),o.createPositionBefore(t));o.remove(t)}}}function gR(t,e,n){return t=>{t.on(`attribute:${n}:${e}`,i)};function i(e,n,i){if(!i.consumable.consume(n.item,e.name)){return}const o=i.writer;const r=i.mapper.toViewElement(n.item);const s=t.findViewImgElement(r);o.setAttribute(n.attributeKey,n.attributeNewValue||"",s)}}class mR extends rf{observe(t){this.listenTo(t,"load",((t,e)=>{const n=e.target;if(this.checkShouldIgnoreEventFromTarget(n)){return}if(n.tagName=="IMG"){this._fireEvents(e)}}),{useCapture:true})}_fireEvents(t){if(this.isEnabled){this.document.fire("layoutChanged");this.document.fire("imageLoaded",t)}}}class fR extends iu{constructor(t){super(t);const e=t.config.get("image.insert.type");if(!t.plugins.has("ImageBlockEditing")){if(e==="block"){P("image-block-plugin-required")}}if(!t.plugins.has("ImageInlineEditing")){if(e==="inline"){P("image-inline-plugin-required")}}}refresh(){this.isEnabled=this.editor.plugins.get("ImageUtils").isImageAllowed()}execute(t){const e=Xc(t.source);const n=this.editor.model.document.selection;const i=this.editor.plugins.get("ImageUtils");const o=Object.fromEntries(n.getAttributes());e.forEach(((t,e)=>{const r=n.getSelectedElement();if(typeof t==="string"){t={src:t}}if(e&&r&&i.isImage(r)){const e=this.editor.model.createPositionAfter(r);i.insertImage({...t,...o},e)}else{i.insertImage({...t,...o})}}))}}class pR extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=this.editor.model.document.selection.getSelectedElement();this.isEnabled=e.isImage(n);this.value=this.isEnabled?n.getAttribute("src"):null}execute(t){const e=this.editor.model.document.selection.getSelectedElement();this.editor.model.change((n=>{n.setAttribute("src",t.source,e);n.removeAttribute("srcset",e);n.removeAttribute("sizes",e)}))}}class bR extends eu{static get requires(){return[XT]}static get pluginName(){return"ImageEditing"}init(){const t=this.editor;const e=t.conversion;t.editing.view.addObserver(mR);e.for("upcast").attributeToAttribute({view:{name:"img",key:"alt"},model:"alt"}).attributeToAttribute({view:{name:"img",key:"srcset"},model:{key:"srcset",value:t=>{const e={data:t.getAttribute("srcset")};if(t.hasAttribute("width")){e.width=t.getAttribute("width")}return e}}});const n=new fR(t);const i=new pR(t);t.commands.add("insertImage",n);t.commands.add("replaceImageSource",i);t.commands.add("imageInsert",n)}}class kR extends iu{constructor(t,e){super(t);this._modelElementName=e}refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(this.editor.model.document.selection);if(this._modelElementName==="imageBlock"){this.isEnabled=e.isInlineImage(n)}else{this.isEnabled=e.isBlockImage(n)}}execute(){const t=this.editor;const e=this.editor.model;const n=t.plugins.get("ImageUtils");const i=n.getClosestSelectedImageElement(e.document.selection);const o=Object.fromEntries(i.getAttributes());if(!o.src&&!o.uploadId){return null}return e.change((t=>{const r=Array.from(e.markers).filter((t=>t.getRange().containsItem(i)));const s=n.insertImage(o,e.createSelection(i,"on"),this._modelElementName);if(!s){return null}const a=t.createRangeOn(s);for(const e of r){const n=e.getRange();const i=n.root.rootName!="$graveyard"?n.getJoined(a,true):a;t.updateMarker(e,{range:i})}return{oldElement:i,newElement:s}}))}}class wR extends eu{static get requires(){return[bR,XT,UE]}static get pluginName(){return"ImageBlockEditing"}init(){const t=this.editor;const e=t.model.schema;e.register("imageBlock",{inheritAllFrom:"$blockObject",allowAttributes:["alt","src","srcset"]});this._setupConversion();if(t.plugins.has("ImageInlineEditing")){t.commands.add("imageTypeBlock",new kR(this.editor,"imageBlock"));this._setupClipboardIntegration()}}_setupConversion(){const t=this.editor;const e=t.t;const n=t.conversion;const i=t.plugins.get("ImageUtils");n.for("dataDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:e})=>ZT(e)});n.for("editingDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:n})=>i.toImageWidget(ZT(n),n,e("image widget"))});n.for("downcast").add(gR(i,"imageBlock","src")).add(gR(i,"imageBlock","alt")).add(uR(i,"imageBlock"));n.for("upcast").elementToElement({view:QT(t,"imageBlock"),model:(t,{writer:e})=>e.createElement("imageBlock",t.hasAttribute("src")?{src:t.getAttribute("src")}:null)}).add(lR(i))}_setupClipboardIntegration(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=t.plugins.get("ImageUtils");this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isInlineImageView)){return}if(r.targetRanges){a=t.editing.mapper.toModelRange(r.targetRanges[0])}else{a=e.document.selection.getFirstRange()}const c=e.createSelection(a);if(JT(e.schema,c)==="imageBlock"){const t=new kC(n.document);const e=s.map((e=>t.createElement("figure",{class:"image"},e)));r.content=t.createDocumentFragment(e)}}))}}var AR=n(9048);var CR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};CR.insert="head";CR.singleton=true;var _R=Tl()(AR.Z,CR);const vR=AR.Z.locals||{};class yR extends eu{static get requires(){return[wR,ZD,cR]}static get pluginName(){return"ImageBlock"}}class xR extends eu{static get requires(){return[bR,XT,UE]}static get pluginName(){return"ImageInlineEditing"}init(){const t=this.editor;const e=t.model.schema;e.register("imageInline",{inheritAllFrom:"$inlineObject",allowAttributes:["alt","src","srcset"]});e.addChildCheck(((t,e)=>{if(t.endsWith("caption")&&e.name==="imageInline"){return false}}));this._setupConversion();if(t.plugins.has("ImageBlockEditing")){t.commands.add("imageTypeInline",new kR(this.editor,"imageInline"));this._setupClipboardIntegration()}}_setupConversion(){const t=this.editor;const e=t.t;const n=t.conversion;const 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(YT(n),n,e("image widget"))});n.for("downcast").add(gR(i,"imageInline","src")).add(gR(i,"imageInline","alt")).add(uR(i,"imageInline"));n.for("upcast").elementToElement({view:QT(t,"imageInline"),model:(t,{writer:e})=>e.createElement("imageInline",t.hasAttribute("src")?{src:t.getAttribute("src")}:null)})}_setupClipboardIntegration(){const t=this.editor;const e=t.model;const n=t.editing.view;const i=t.plugins.get("ImageUtils");this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isBlockImageView)){return}if(r.targetRanges){a=t.editing.mapper.toModelRange(r.targetRanges[0])}else{a=e.document.selection.getFirstRange()}const c=e.createSelection(a);if(JT(e.schema,c)==="imageInline"){const t=new kC(n.document);const e=s.map((e=>{if(e.childCount===1){Array.from(e.getAttributes()).forEach((n=>t.setAttribute(...n,i.findViewImgElement(e))));return e.getChild(0)}else{return e}}));r.content=t.createDocumentFragment(e)}}))}}class ER extends eu{static get requires(){return[xR,ZD,cR]}static get pluginName(){return"ImageInline"}}class DR extends eu{static get requires(){return[yR,ER]}static get pluginName(){return"Image"}}class TR extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageCaptionUtils");if(!t.plugins.has(wR)){this.isEnabled=false;this.value=false;return}const n=t.model.document.selection;const i=n.getSelectedElement();if(!i){const t=e.getCaptionFromModelSelection(n);this.isEnabled=!!t;this.value=!!t;return}this.isEnabled=this.editor.plugins.get("ImageUtils").isImage(i);if(!this.isEnabled){this.value=false}else{this.value=!!e.getCaptionFromImageModelElement(i)}}execute(t={}){const{focusCaptionOnShow:e}=t;this.editor.model.change((t=>{if(this.value){this._hideImageCaption(t)}else{this._showImageCaption(t,e)}}))}_showImageCaption(t,e){const n=this.editor.model;const i=n.document.selection;const o=this.editor.plugins.get("ImageCaptionEditing");let r=i.getSelectedElement();const s=o._getSavedCaption(r);if(this.editor.plugins.get("ImageUtils").isInlineImage(r)){this.editor.execute("imageTypeBlock");r=i.getSelectedElement()}const a=s||t.createElement("caption");t.append(a,r);if(e){t.setSelection(a,"in")}}_hideImageCaption(t){const e=this.editor;const n=e.model.document.selection;const i=e.plugins.get("ImageCaptionEditing");const o=e.plugins.get("ImageCaptionUtils");let r=n.getSelectedElement();let s;if(r){s=o.getCaptionFromImageModelElement(r)}else{s=o.getCaptionFromModelSelection(n);r=s.parent}i._saveCaption(r,s);t.setSelection(r,"on");t.remove(s)}}class SR extends eu{static get pluginName(){return"ImageCaptionUtils"}static get requires(){return[XT]}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");const n=t.getFirstPosition().findAncestor("caption");if(!n){return null}if(e.isBlockImage(n.parent)){return n}return null}matchImageCaptionViewElement(t){const e=this.editor.plugins.get("ImageUtils");if(t.name=="figcaption"&&e.isBlockImageView(t.parent)){return{name:true}}return null}}class IR extends eu{static get requires(){return[XT,SR]}static get pluginName(){return"ImageCaptionEditing"}constructor(t){super(t);this._savedCaptionsMap=new WeakMap}init(){const t=this.editor;const e=t.model.schema;if(!e.isRegistered("caption")){e.register("caption",{allowIn:"imageBlock",allowContentOf:"$block",isLimit:true})}else{e.extend("caption",{allowIn:"imageBlock"})}t.commands.add("toggleImageCaption",new TR(this.editor));this._setupConversion();this._setupImageTypeCommandsIntegration();this._registerCaptionReconversion()}_setupConversion(){const t=this.editor;const e=t.editing.view;const n=t.plugins.get("ImageUtils");const i=t.plugins.get("ImageCaptionUtils");const 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})=>{if(!n.isBlockImage(t.parent)){return null}return e.createContainerElement("figcaption")}});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",true,r);mu({view:e,element:r,text:o("Enter image caption"),keepOnFocus:true});const s=t.parent.getAttribute("alt");const a=s?o("Caption for image: %0",[s]):o("Caption for the image");return pD(r,i,{label:a})}})}_setupImageTypeCommandsIntegration(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=t.plugins.get("ImageCaptionUtils");const i=t.commands.get("imageTypeInline");const o=t.commands.get("imageTypeBlock");const 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){this._saveCaption(o,t);return}}const r=this._getSavedCaption(i);if(r){this._saveCaption(o,r)}};if(i){this.listenTo(i,"execute",r,{priority:"low"})}if(o){this.listenTo(o,"execute",r,{priority:"low"})}}_getSavedCaption(t){const e=this._savedCaptionsMap.get(t);return e?Gp.fromJSON(e):null}_saveCaption(t,e){this._savedCaptionsMap.set(t,e.toJSON())}_registerCaptionReconversion(){const t=this.editor;const e=t.model;const n=t.plugins.get("ImageUtils");const i=t.plugins.get("ImageCaptionUtils");e.document.on("change:data",(()=>{const o=e.document.differ.getChanges();for(const e of o){if(e.attributeKey!=="alt"){continue}const o=e.range.start.nodeAfter;if(n.isBlockImage(o)){const e=i.getCaptionFromImageModelElement(o);if(!e){return}t.editing.reconvertItem(e)}}}))}}class BR extends eu{static get requires(){return[SR]}static get pluginName(){return"ImageCaptionUI"}init(){const t=this.editor;const e=t.editing.view;const n=t.plugins.get("ImageCaptionUtils");const i=t.t;t.ui.componentFactory.add("toggleImageCaption",(o=>{const r=t.commands.get("toggleImageCaption");const s=new kd(o);s.set({icon:J_.caption,tooltip:true,isToggleable:true});s.bind("isOn","isEnabled").to(r,"value","isEnabled");s.bind("label").to(r,"value",(t=>t?i("Toggle caption off"):i("Toggle caption on")));this.listenTo(s,"execute",(()=>{t.execute("toggleImageCaption",{focusCaptionOnShow:true});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()}));return s}))}}var MR=n(8662);var LR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};LR.insert="head";LR.singleton=true;var NR=Tl()(MR.Z,LR);const zR=MR.Z.locals||{};class PR extends eu{static get requires(){return[IR,BR]}static get pluginName(){return"ImageCaption"}}class RR extends Ll{constructor(t){super(t);this.buttonView=new kd(t);this._fileInputView=new OR(t);this._fileInputView.bind("acceptedType").to(this);this._fileInputView.bind("allowMultipleFiles").to(this);this._fileInputView.delegate("done").to(this);this.setTemplate({tag:"span",attributes:{class:"ck-file-dialog-button"},children:[this.buttonView,this._fileInputView]});this.buttonView.on("execute",(()=>{this._fileInputView.open()}))}focus(){this.buttonView.focus()}}class OR extends Ll{constructor(t){super(t);this.set("acceptedType",undefined);this.set("allowMultipleFiles",false);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((()=>{if(this.element&&this.element.files&&this.element.files.length){this.fire("done",this.element.files)}this.element.value=""}))}})}open(){this.element.click()}}class VR extends(null&&Plugin){static get requires(){return[FileRepository]}static get pluginName(){return"SimpleUploadAdapter"}init(){const t=this.editor.config.get("simpleUpload");if(!t){return}if(!t.uploadUrl){logWarning("simple-upload-adapter-missing-uploadurl");return}this.editor.plugins.get(FileRepository).createUploadAdapter=e=>new FR(e,t)}}class FR{constructor(t,e){this.loader=t;this.options=e}upload(){return this.loader.file.then((t=>new Promise(((e,n)=>{this._initRequest();this._initListeners(e,n,t);this._sendRequest(t)}))))}abort(){if(this.xhr){this.xhr.abort()}}_initRequest(){const t=this.xhr=new XMLHttpRequest;t.open("POST",this.options.uploadUrl,true);t.responseType="json"}_initListeners(t,e,n){const i=this.xhr;const o=this.loader;const r=`Couldn't upload file: ${n.name}.`;i.addEventListener("error",(()=>e(r)));i.addEventListener("abort",(()=>e()));i.addEventListener("load",(()=>{const n=i.response;if(!n||n.error){return e(n&&n.error&&n.error.message?n.error.message:r)}const o=n.url?{default:n.url}:n.urls;t({...n,urls:o})}));if(i.upload){i.upload.addEventListener("progress",(t=>{if(t.lengthComputable){o.uploadTotal=t.total;o.uploaded=t.loaded}}))}}_sendRequest(t){const e=this.options.headers||{};const n=this.options.withCredentials||false;for(const t of Object.keys(e)){this.xhr.setRequestHeader(t,e[t])}this.xhr.withCredentials=n;const i=new FormData;i.append("upload",t);this.xhr.send(i)}}function jR(t){const e=t.map((t=>t.replace("+","\\+")));return new RegExp(`^image\\/(${e.join("|")})$`)}function HR(t){return new Promise(((e,n)=>{const i=t.getAttribute("src");fetch(i).then((t=>t.blob())).then((t=>{const n=WR(t,i);const o=n.replace("image/","");const r=`image.${o}`;const s=new File([t],r,{type:n});e(s)})).catch((t=>t&&t.name==="TypeError"?qR(i).then(e).catch(n):n(t)))}))}function UR(t,e){if(!t.isInlineImageView(e)||!e.getAttribute("src")){return false}return e.getAttribute("src").match(/^data:image\/\w+;base64,/g)||e.getAttribute("src").match(/^blob:/g)}function WR(t,e){if(t.type){return t.type}else if(e.match(/data:(image\/\w+);base64/)){return e.match(/data:(image\/\w+);base64/)[1].toLowerCase()}else{return"image/jpeg"}}function qR(t){return $R(t).then((e=>{const n=WR(e,t);const i=n.replace("image/","");const o=`image.${i}`;return new File([e],o,{type:n})}))}function $R(t){return new Promise(((e,n)=>{const i=ic.document.createElement("img");i.addEventListener("load",(()=>{const t=ic.document.createElement("canvas");t.width=i.width;t.height=i.height;const o=t.getContext("2d");o.drawImage(i,0,0);t.toBlob((t=>t?e(t):n()))}));i.addEventListener("error",(()=>n()));i.src=t}))}class GR extends eu{static get pluginName(){return"ImageUploadUI"}init(){const t=this.editor;const e=t.t;const n=n=>{const i=new RR(n);const o=t.commands.get("uploadImage");const r=t.config.get("image.upload.types");const s=jR(r);i.set({acceptedType:r.map((t=>`image/${t}`)).join(","),allowMultipleFiles:true});i.buttonView.set({label:e("Insert image"),icon:J_.image,tooltip:true});i.buttonView.bind("isEnabled").to(o);i.on("done",((e,n)=>{const i=Array.from(n).filter((t=>s.test(t.type)));if(i.length){t.execute("uploadImage",{file:i});t.editing.view.focus()}}));return i};t.ui.componentFactory.add("uploadImage",n);t.ui.componentFactory.add("imageUpload",n)}}var KR=n(5870);var YR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};YR.insert="head";YR.singleton=true;var ZR=Tl()(KR.Z,YR);const QR=KR.Z.locals||{};var JR=n(9899);var XR={injectType:"singletonStyleTag",attributes:{"data-cke":true}};XR.insert="head";XR.singleton=true;var tO=Tl()(JR.Z,XR);const eO=JR.Z.locals||{};var nO=n(9825);var iO={injectType:"singletonStyleTag",attributes:{"data-cke":true}};iO.insert="head";iO.singleton=true;var oO=Tl()(nO.Z,iO);const rO=nO.Z.locals||{};class sO extends eu{static get pluginName(){return"ImageUploadProgress"}constructor(t){super(t);this.placeholder="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="}init(){const t=this.editor;if(t.plugins.has("ImageBlockEditing")){t.editing.downcastDispatcher.on("attribute:uploadStatus:imageBlock",((...t)=>this.uploadStatusChange(...t)))}if(t.plugins.has("ImageInlineEditing")){t.editing.downcastDispatcher.on("attribute:uploadStatus:imageInline",((...t)=>this.uploadStatusChange(...t)))}}uploadStatusChange(t,e,n){const i=this.editor;const o=e.item;const r=o.getAttribute("uploadId");if(!n.consumable.consume(e.item,t.name)){return}const s=i.plugins.get("ImageUtils");const a=i.plugins.get(wI);const c=r?e.attributeNewValue:null;const l=this.placeholder;const d=i.editing.mapper.toViewElement(o);const u=n.writer;if(c=="reading"){aO(d,u);lO(s,l,d,u);return}if(c=="uploading"){const t=a.loaders.get(r);aO(d,u);if(!t){lO(s,l,d,u)}else{dO(d,u);uO(d,u,t,i.editing.view);kO(s,d,u,t)}return}if(c=="complete"&&a.loaders.get(r)){gO(d,u,i.editing.view)}hO(d,u);dO(d,u);cO(d,u)}}function aO(t,e){if(!t.hasClass("ck-appear")){e.addClass("ck-appear",t)}}function cO(t,e){e.removeClass("ck-appear",t)}function lO(t,e,n,i){if(!n.hasClass("ck-image-upload-placeholder")){i.addClass("ck-image-upload-placeholder",n)}const o=t.findViewImgElement(n);if(o.getAttribute("src")!==e){i.setAttribute("src",e,o)}if(!pO(n,"placeholder")){i.insert(i.createPositionAfter(o),fO(i))}}function dO(t,e){if(t.hasClass("ck-image-upload-placeholder")){e.removeClass("ck-image-upload-placeholder",t)}bO(t,e,"placeholder")}function uO(t,e,n,i){const o=mO(e);e.insert(e.createPositionAt(t,"end"),o);n.on("change:uploadedPercent",((t,e,n)=>{i.change((t=>{t.setStyle("width",n+"%",o)}))}))}function hO(t,e){bO(t,e,"progressBar")}function gO(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)}function mO(t){const e=t.createUIElement("div",{class:"ck-progress-bar"});t.setCustomProperty("progressBar",true,e);return e}function fO(t){const e=t.createUIElement("div",{class:"ck-upload-placeholder-loader"});t.setCustomProperty("placeholder",true,e);return e}function pO(t,e){for(const n of t.getChildren()){if(n.getCustomProperty(e)){return n}}}function bO(t,e,n){const i=pO(t,n);if(i){e.remove(e.createRangeOn(i))}}function kO(t,e,n,i){if(i.data){const o=t.findViewImgElement(e);n.setAttribute("src",i.data,o)}}class wO extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=t.model.document.selection.getSelectedElement();this.isEnabled=e.isImageAllowed()||e.isImage(n)}execute(t){const e=Xc(t.file);const n=this.editor.model.document.selection;const i=this.editor.plugins.get("ImageUtils");const 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;const o=i.plugins.get(wI);const r=o.createLoader(t);const s=i.plugins.get("ImageUtils");if(!r){return}s.insertImage({...e,uploadId:r.id},n)}}class AO extends eu{static get requires(){return[wI,Ry,UE,XT]}static get pluginName(){return"ImageUploadEditing"}constructor(t){super(t);t.config.define("image",{upload:{types:["jpeg","png","gif","bmp","webp","tiff"]}});this._uploadImageElements=new Map}init(){const t=this.editor;const e=t.model.document;const n=t.conversion;const i=t.plugins.get(wI);const o=t.plugins.get("ImageUtils");const r=jR(t.config.get("image.upload.types"));const s=new wO(t);t.commands.add("uploadImage",s);t.commands.add("imageUpload",s);n.for("upcast").attributeToAttribute({view:{name:"img",key:"uploadId"},model:"uploadId"});this.listenTo(t.editing.view.document,"clipboardInput",((e,n)=>{if(CO(n.dataTransfer)){return}const i=Array.from(n.dataTransfer.files).filter((t=>{if(!t){return false}return r.test(t.type)}));if(!i.length){return}e.stop();t.model.change((e=>{if(n.targetRanges){e.setSelection(n.targetRanges.map((e=>t.editing.mapper.toModelRange(e))))}t.model.enqueueChange((()=>{t.execute("uploadImage",{file:i})}))}))}));this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",((e,n)=>{const r=Array.from(t.editing.view.createRangeIn(n.content)).filter((t=>UR(o,t.item)&&!t.item.getAttribute("uploadProcessed"))).map((t=>({promise:HR(t.item),imageElement:t.item})));if(!r.length){return}const s=new kC(t.editing.view.document);for(const t of r){s.setAttribute("uploadProcessed",true,t.imageElement);const e=i.createLoader(t.promise);if(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:true}).reverse();const o=new Set;for(const e of n){if(e.type=="insert"&&e.name!="$text"){const n=e.position.nodeAfter;const r=e.position.root.rootName=="$graveyard";for(const e of _O(t,n)){const t=e.getAttribute("uploadId");if(!t){continue}const n=i.loaders.get(t);if(!n){continue}if(r){if(!o.has(t)){n.abort()}}else{o.add(t);this._uploadImageElements.set(t,e);if(n.status=="idle"){this._readAndUpload(n)}}}}}}));this.on("uploadComplete",((t,{imageElement:e,data:n})=>{const i=n.urls?n.urls:n;this.editor.model.change((t=>{t.setAttribute("src",i.default,e);this._parseAndSetSrcsetAttributeOnImage(i,e,t)}))}),{priority:"low"})}afterInit(){const t=this.editor.model.schema;if(this.editor.plugins.has("ImageBlockEditing")){t.extend("imageBlock",{allowAttributes:["uploadId","uploadStatus"]})}if(this.editor.plugins.has("ImageInlineEditing")){t.extend("imageInline",{allowAttributes:["uploadId","uploadStatus"]})}}_readAndUpload(t){const e=this.editor;const n=e.model;const i=e.locale.t;const o=e.plugins.get(wI);const r=e.plugins.get(Ry);const s=e.plugins.get("ImageUtils");const a=this._uploadImageElements;n.enqueueChange({isUndoable:false},(e=>{e.setAttribute("uploadStatus","reading",a.get(t.id))}));return t.read().then((()=>{const i=t.upload();const o=a.get(t.id);if(l.isSafari){const t=e.editing.mapper.toViewElement(o);const n=s.findViewImgElement(t);e.editing.view.once("render",(()=>{if(!n.parent){return}const t=e.editing.view.domConverter.mapViewToDom(n.parent);if(!t){return}const i=t.style.display;t.style.display="none";t._ckHack=t.offsetHeight;t.style.display=i}))}n.enqueueChange({isUndoable:false},(t=>{t.setAttribute("uploadStatus","uploading",o)}));return i})).then((e=>{n.enqueueChange({isUndoable:false},(n=>{const i=a.get(t.id);n.setAttribute("uploadStatus","complete",i);this.fire("uploadComplete",{data:e,imageElement:i})}));c()})).catch((e=>{if(t.status!=="error"&&t.status!=="aborted"){throw e}if(t.status=="error"&&e){r.showWarning(e,{title:i("Upload failed"),namespace:"upload"})}n.enqueueChange({isUndoable:false},(e=>{e.remove(a.get(t.id))}));c()}));function c(){n.enqueueChange({isUndoable:false},(e=>{const n=a.get(t.id);e.removeAttribute("uploadId",n);e.removeAttribute("uploadStatus",n);a.delete(t.id)}));o.destroyLoader(t)}}_parseAndSetSrcsetAttributeOnImage(t,e,n){let i=0;const o=Object.keys(t).filter((t=>{const e=parseInt(t,10);if(!isNaN(e)){i=Math.max(i,e);return true}})).map((e=>`${t[e]} ${e}w`)).join(", ");if(o!=""){n.setAttribute("srcset",{data:o,width:i},e)}}}function CO(t){return Array.from(t.types).includes("text/html")&&t.getData("text/html")!==""}function _O(t,e){const n=t.plugins.get("ImageUtils");return Array.from(t.model.createRangeOn(e)).filter((t=>n.isImage(t.item))).map((t=>t.item))}class vO extends eu{static get pluginName(){return"ImageUpload"}static get requires(){return[AO,GR,sO]}}var yO=n(5150);var xO={injectType:"singletonStyleTag",attributes:{"data-cke":true}};xO.insert="head";xO.singleton=true;var EO=Tl()(yO.Z,xO);const DO=yO.Z.locals||{};class TO extends Ll{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("class",e.class||null);this.children=this.createCollection();if(e.children){e.children.forEach((t=>this.children.add(t)))}this.set("_role",null);this.set("_ariaLabelledBy",null);if(e.labelView){this.set({_role:"group",_ariaLabelledBy:e.labelView.id})}this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__row",n.to("class")],role:n.to("_role"),"aria-labelledby":n.to("_ariaLabelledBy")},children:this.children})}}var SO=n(9292);var IO={injectType:"singletonStyleTag",attributes:{"data-cke":true}};IO.insert="head";IO.singleton=true;var BO=Tl()(SO.Z,IO);const MO=SO.Z.locals||{};class LO extends Ll{constructor(t,e){super(t);const{insertButtonView:n,cancelButtonView:i}=this._createActionButtons(t);this.insertButtonView=n;this.cancelButtonView=i;this.set("imageURLInputValue","");this.focusTracker=new ul;this.keystrokes=new hl;this._focusables=new xl;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.set("_integrations",new ll);if(e){for(const[t,n]of Object.entries(e)){if(t==="insertImageViaUrl"){n.fieldView.bind("value").to(this,"imageURLInputValue",(t=>t||""));n.fieldView.on("input",(()=>{this.imageURLInputValue=n.fieldView.element.value.trim()}))}n.name=t;this._integrations.add(n)}}this.setTemplate({tag:"form",attributes:{class:["ck","ck-image-insert-form"],tabindex:"-1"},children:[...this._integrations,new TO(t,{children:[this.insertButtonView,this.cancelButtonView],class:"ck-image-insert-form__action-row"})]})}render(){super.render();o({view:this});const t=[...this._integrations,this.insertButtonView,this.cancelButtonView];t.forEach((t=>{this._focusables.add(t);this.focusTracker.add(t.element)}));this.keystrokes.listenTo(this.element);const e=t=>t.stopPropagation();this.keystrokes.set("arrowright",e);this.keystrokes.set("arrowleft",e);this.keystrokes.set("arrowup",e);this.keystrokes.set("arrowdown",e);this.listenTo(t[0].element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}getIntegration(t){return this._integrations.find((e=>e.name===t))}_createActionButtons(t){const e=t.t;const n=new kd(t);const i=new kd(t);n.set({label:e("Insert"),icon:J_.check,class:"ck-button-save",type:"submit",withText:true,isEnabled:this.imageURLInputValue});i.set({label:e("Cancel"),icon:J_.cancel,class:"ck-button-cancel",withText:true});n.bind("isEnabled").to(this,"imageURLInputValue",(t=>!!t));n.delegate("execute").to(this,"submit");i.delegate("execute").to(this,"cancel");return{insertButtonView:n,cancelButtonView:i}}focus(){this._focusCycler.focusFirst()}}function NO(t){const e=t.config.get("image.insert.integrations");const n=t.plugins.get("ImageInsertUI");const i={insertImageViaUrl:zO(t.locale)};if(!e){return i}if(e.find((t=>t==="openCKFinder"))&&t.ui.componentFactory.has("ckfinder")){const e=t.ui.componentFactory.create("ckfinder");e.set({withText:true,class:"ck-image-insert__ck-finder-button"});e.delegate("execute").to(n,"cancel");i.openCKFinder=e}return e.reduce(((e,n)=>{if(i[n]){e[n]=i[n]}else if(t.ui.componentFactory.has(n)){e[n]=t.ui.componentFactory.create(n)}return e}),{})}function zO(t){const e=t.t;const n=new Ly(t,Ny);n.set({label:e("Insert image via URL")});n.fieldView.placeholder="https://example.com/image.png";return n}class PO extends eu{static get pluginName(){return"ImageInsertUI"}init(){const t=this.editor;const e=t=>this._createDropdownView(t);t.ui.componentFactory.add("insertImage",e);t.ui.componentFactory.add("imageInsert",e)}_createDropdownView(t){const e=this.editor;const n=t.t;const i=e.commands.get("uploadImage");const o=e.commands.get("insertImage");this.dropdownView=yv(t,i?Gd:undefined);const r=this.dropdownView.buttonView;const s=this.dropdownView.panelView;r.set({label:n("Insert image"),icon:J_.image,tooltip:true});s.extendTemplate({attributes:{class:"ck-image-insert__panel"}});if(i){const t=this.dropdownView.buttonView;t.actionView=e.ui.componentFactory.create("uploadImage");t.actionView.extendTemplate({attributes:{class:"ck ck-button ck-splitbutton__action"}})}return this._setUpDropdown(i||o)}_setUpDropdown(t){const e=this.editor;const n=e.t;const i=this.dropdownView;const o=i.panelView;const r=this.editor.plugins.get("ImageUtils");const s=e.commands.get("replaceImageSource");let a;i.bind("isEnabled").to(t);i.once("change:isOpen",(()=>{a=new LO(e.locale,NO(e));a.delegate("submit","cancel").to(i);o.children.add(a)}));i.on("change:isOpen",(()=>{const t=e.model.document.selection.getSelectedElement();const o=a.insertButtonView;const c=a.getIntegration("insertImageViaUrl");if(i.isOpen){if(r.isImage(t)){a.imageURLInputValue=s.value;o.label=n("Update");c.label=n("Update image URL")}else{a.imageURLInputValue="";o.label=n("Insert");c.label=n("Insert image via URL")}}}),{priority:"low"});this.delegate("cancel").to(i);i.on("submit",(()=>{l();c()}));i.on("cancel",(()=>{l()}));function c(){const t=e.model.document.selection.getSelectedElement();if(r.isImage(t)){e.execute("replaceImageSource",{source:a.imageURLInputValue})}else{e.execute("insertImage",{source:a.imageURLInputValue})}}function l(){e.editing.view.focus();i.isOpen=false}return i}}class RO extends eu{static get pluginName(){return"ImageInsertViaUrl"}static get requires(){return[PO]}}class OO extends eu{static get pluginName(){return"ImageInsert"}static get requires(){return[vO,RO,PO]}}class VO extends iu{refresh(){const t=this.editor;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(t.model.document.selection);this.isEnabled=!!n;if(!n||!n.hasAttribute("width")){this.value=null}else{this.value={width:n.getAttribute("width"),height:null}}}execute(t){const e=this.editor;const n=e.model;const i=e.plugins.get("ImageUtils");const o=i.getClosestSelectedImageElement(n.document.selection);this.value={width:t.width,height:null};if(o){n.change((e=>{e.setAttribute("width",t.width,o)}))}}}class FO extends eu{static get requires(){return[XT]}static get pluginName(){return"ImageResizeEditing"}constructor(t){super(t);t.config.define("image",{resizeUnit:"%",resizeOptions:[{name:"resizeImage:original",value:null,icon:"original"},{name:"resizeImage:25",value:"25",icon:"small"},{name:"resizeImage:50",value:"50",icon:"medium"},{name:"resizeImage:75",value:"75",icon:"large"}]})}init(){const t=this.editor;const e=new VO(t);this._registerSchema();this._registerConverters("imageBlock");this._registerConverters("imageInline");t.commands.add("resizeImage",e);t.commands.add("imageResize",e)}_registerSchema(){if(this.editor.plugins.has("ImageBlockEditing")){this.editor.model.schema.extend("imageBlock",{allowAttributes:"width"})}if(this.editor.plugins.has("ImageInlineEditing")){this.editor.model.schema.extend("imageInline",{allowAttributes:"width"})}}_registerConverters(t){const e=this.editor;e.conversion.for("downcast").add((e=>e.on(`attribute:width:${t}`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name)){return}const i=n.writer;const o=n.mapper.toViewElement(e.item);if(e.attributeNewValue!==null){i.setStyle("width",e.attributeNewValue,o);i.addClass("image_resized",o)}else{i.removeStyle("width",o);i.removeClass("image_resized",o)}}))));e.conversion.for("upcast").attributeToAttribute({view:{name:t==="imageBlock"?"figure":"img",styles:{width:/.+/}},model:{key:"width",value:t=>t.getStyle("width")}})}}const jO={small:J_.objectSizeSmall,medium:J_.objectSizeMedium,large:J_.objectSizeLarge,original:J_.objectSizeFull};class HO extends eu{static get requires(){return[FO]}static get pluginName(){return"ImageResizeButtons"}constructor(t){super(t);this._resizeUnit=t.config.get("image.resizeUnit")}init(){const t=this.editor;const e=t.config.get("image.resizeOptions");const 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;const{name:n,value:i,icon:o}=t;const r=i?i+this._resizeUnit:null;e.ui.componentFactory.add(n,(n=>{const i=new kd(n);const s=e.commands.get("resizeImage");const a=this._getOptionLabelValue(t,true);if(!jO[o]){throw new z("imageresizebuttons-missing-icon",e,t)}i.set({label:a,icon:jO[o],tooltip:a,isToggleable:true});i.bind("isEnabled").to(this);i.bind("isOn").to(s,"value",UO(r));this.listenTo(i,"execute",(()=>{e.execute("resizeImage",{width:r})}));return i}))}_registerImageResizeDropdown(t){const e=this.editor;const n=e.t;const i=t.find((t=>!t.value));const o=o=>{const r=e.commands.get("resizeImage");const s=yv(o,Hd);const a=s.buttonView;a.set({tooltip:n("Resize image"),commandValue:i.value,icon:jO.medium,isToggleable:true,label:this._getOptionLabelValue(i),withText:true,class:"ck-resize-image-button"});a.bind("label").to(r,"value",(t=>{if(t&&t.width){return t.width}else{return this._getOptionLabelValue(i)}}));s.bind("isOn").to(r);s.bind("isEnabled").to(this);Dv(s,(()=>this._getResizeDropdownListItemDefinitions(t,r)),{ariaLabel:n("Image resize list")});this.listenTo(s,"execute",(t=>{e.execute(t.source.commandName,{width:t.source.commandValue});e.editing.view.focus()}));return s};e.ui.componentFactory.add("resizeImage",o);e.ui.componentFactory.add("imageResize",o)}_getOptionLabelValue(t,e){const n=this.editor.t;if(t.label){return t.label}else if(e){if(t.value){return n("Resize image to %0",t.value+this._resizeUnit)}else{return n("Resize image to the original size")}}else{if(t.value){return t.value+this._resizeUnit}else{return n("Original")}}}_getResizeDropdownListItemDefinitions(t,e){const n=new ll;t.map((t=>{const i=t.value?t.value+this._resizeUnit:null;const o={type:"button",model:new Oy({commandName:"resizeImage",commandValue:i,label:this._getOptionLabelValue(t),withText:true,icon:null})};o.model.bind("isOn").to(e,"value",UO(i));n.add(o)}));return n}}function UO(t){return e=>{if(t===null&&e===t){return true}return e&&e.width===t}}const WO="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";const qO=/(image|image-inline)/;const $O="image_resized";class GO extends eu{static get requires(){return[CT]}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;const e=t.editing.view;e.addObserver(mR);this.listenTo(e.document,"imageLoaded",((n,i)=>{if(!i.target.matches(WO)){return}const o=t.editing.view.domConverter;const r=o.domToView(i.target);const s=r.findAncestor({classes:qO});let a=this.editor.plugins.get(CT).getResizerByViewElement(s);if(a){a.redraw();return}const c=t.editing.mapper;const l=c.toModelElement(s);a=t.plugins.get(CT).attachTo({unit:t.config.get("image.resizeUnit"),modelElement:l,viewElement:s,editor:t,getHandleHost(t){return t.querySelector("img")},getResizeHost(){return o.mapViewToDom(c.toViewElement(l.parent))},isCentered(){const t=l.getAttribute("imageStyle");return!t||t=="block"||t=="alignCenter"},onCommit(n){e.change((t=>{t.removeClass($O,s)}));t.execute("resizeImage",{width:n})}});a.on("updateSize",(()=>{if(!s.hasClass($O)){e.change((t=>{t.addClass($O,s)}))}}));a.bind("isEnabled").to(this)}))}}var KO=n(1043);var YO={injectType:"singletonStyleTag",attributes:{"data-cke":true}};YO.insert="head";YO.singleton=true;var ZO=Tl()(KO.Z,YO);const QO=KO.Z.locals||{};class JO extends eu{static get requires(){return[FO,GO,HO]}static get pluginName(){return"ImageResize"}}class XO extends iu{constructor(t,e){super(t);this._defaultStyles={imageBlock:false,imageInline:false};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;const e=t.plugins.get("ImageUtils");const n=e.getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!n;if(!this.isEnabled){this.value=false}else if(n.hasAttribute("imageStyle")){this.value=n.getAttribute("imageStyle")}else{this.value=this._defaultStyles[n.name]}}execute(t={}){const e=this.editor;const n=e.model;const i=e.plugins.get("ImageUtils");n.change((e=>{const o=t.value;let r=i.getClosestSelectedImageElement(n.document.selection);if(o&&this.shouldConvertImageType(o,r)){this.editor.execute(i.isBlockImage(r)?"imageTypeInline":"imageTypeBlock");r=i.getClosestSelectedImageElement(n.document.selection)}if(!o||this._styles.get(o).isDefault){e.removeAttribute("imageStyle",r)}else{e.setAttribute("imageStyle",o,r)}}))}shouldConvertImageType(t,e){const n=this._styles.get(t).modelElements;return!n.includes(e.name)}}const{objectFullWidth:tV,objectInline:eV,objectLeft:nV,objectRight:iV,objectCenter:oV,objectBlockLeft:rV,objectBlockRight:sV}=J_;const aV={get inline(){return{name:"inline",title:"In line",icon:eV,modelElements:["imageInline"],isDefault:true}},get alignLeft(){return{name:"alignLeft",title:"Left aligned image",icon:nV,modelElements:["imageBlock","imageInline"],className:"image-style-align-left"}},get alignBlockLeft(){return{name:"alignBlockLeft",title:"Left aligned image",icon:rV,modelElements:["imageBlock"],className:"image-style-block-align-left"}},get alignCenter(){return{name:"alignCenter",title:"Centered image",icon:oV,modelElements:["imageBlock"],className:"image-style-align-center"}},get alignRight(){return{name:"alignRight",title:"Right aligned image",icon:iV,modelElements:["imageBlock","imageInline"],className:"image-style-align-right"}},get alignBlockRight(){return{name:"alignBlockRight",title:"Right aligned image",icon:sV,modelElements:["imageBlock"],className:"image-style-block-align-right"}},get block(){return{name:"block",title:"Centered image",icon:oV,modelElements:["imageBlock"],isDefault:true}},get side(){return{name:"side",title:"Side image",icon:iV,modelElements:["imageBlock"],className:"image-style-side"}}};const cV={full:tV,left:rV,right:sV,center:oV,inlineLeft:nV,inlineRight:iV,inline:eV};const lV=[{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 dV(t){const e=t.configuredStyles.options||[];const n=e.map((t=>gV(t))).filter((e=>mV(e,t)));return n}function uV(t,e){if(t&&e){return{options:["inline","alignLeft","alignRight","alignCenter","alignBlockLeft","alignBlockRight","block","side"]}}else if(t){return{options:["block","side"]}}else if(e){return{options:["inline","alignLeft","alignRight"]}}return{}}function hV(t){if(t.has("ImageBlockEditing")&&t.has("ImageInlineEditing")){return[...lV]}else{return[]}}function gV(t){if(typeof t==="string"){if(!aV[t]){t={name:t}}else{t={...aV[t]}}}else{t=fV(aV[t.name],t)}if(typeof t.icon==="string"){t.icon=cV[t.icon]||t.icon}return t}function mV(t,{isBlockPluginLoaded:e,isInlinePluginLoaded:n}){const{modelElements:i,name:o}=t;if(!i||!i.length||!o){pV({style:t});return false}else{const o=[e?"imageBlock":null,n?"imageInline":null];if(!i.some((t=>o.includes(t)))){P("image-style-missing-dependency",{style:t,missingPlugins:i.map((t=>t==="imageBlock"?"ImageBlockEditing":"ImageInlineEditing"))});return false}}return true}function fV(t,e){const n={...e};for(const i in t){if(!Object.prototype.hasOwnProperty.call(e,i)){n[i]=t[i]}}return n}function pV(t){P("image-style-configuration-definition-invalid",t)}const bV={normalizeStyles:dV,getDefaultStylesConfiguration:uV,getDefaultDropdownDefinitions:hV,warnInvalidStyle:pV,DEFAULT_OPTIONS:aV,DEFAULT_ICONS:cV,DEFAULT_DROPDOWN_DEFINITIONS:lV};function kV(t){return(e,n,i)=>{if(!i.consumable.consume(n.item,e.name)){return}const o=AV(n.attributeNewValue,t);const r=AV(n.attributeOldValue,t);const s=i.mapper.toViewElement(n.item);const a=i.writer;if(r){a.removeClass(r.className,s)}if(o){a.addClass(o.className,s)}}}function wV(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;const r=dl(n.modelRange.getItems());if(!r){return}if(!i.schema.checkAttribute(r,"imageStyle")){return}for(const t of e[r.name]){if(i.consumable.consume(o,{classes:t.className})){i.writer.setAttribute("imageStyle",t.name,r)}}}}function AV(t,e){for(const n of e){if(n.name===t){return n}}}class CV extends eu{static get pluginName(){return"ImageStyleEditing"}static get requires(){return[XT]}init(){const{normalizeStyles:t,getDefaultStylesConfiguration:e}=bV;const n=this.editor;const i=n.plugins.has("ImageBlockEditing");const 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 XO(n,this.normalizedStyles))}_setupConversion(t,e){const n=this.editor;const i=n.model.schema;const o=kV(this.normalizedStyles);const r=wV(this.normalizedStyles);n.editing.downcastDispatcher.on("attribute:imageStyle",o);n.data.downcastDispatcher.on("attribute:imageStyle",o);if(t){i.extend("imageBlock",{allowAttributes:"imageStyle"});n.data.upcastDispatcher.on("element:figure",r,{priority:"low"})}if(e){i.extend("imageInline",{allowAttributes:"imageStyle"});n.data.upcastDispatcher.on("element:img",r,{priority:"low"})}}_setupPostFixer(){const t=this.editor;const e=t.model.document;const n=t.plugins.get(XT);const i=new Map(this.normalizedStyles.map((t=>[t.name,t])));e.registerPostFixer((t=>{let o=false;for(const r of e.differ.getChanges()){if(r.type=="insert"||r.type=="attribute"&&r.attributeKey=="imageStyle"){let e=r.type=="insert"?r.position.nodeAfter:r.range.start.nodeAfter;if(e&&e.is("element","paragraph")&&e.childCount>0){e=e.getChild(0)}if(!n.isImage(e)){continue}const s=e.getAttribute("imageStyle");if(!s){continue}const a=i.get(s);if(!a||!a.modelElements.includes(e.name)){t.removeAttribute("imageStyle",e);o=true}}}return o}))}}var _V=n(4622);var vV={injectType:"singletonStyleTag",attributes:{"data-cke":true}};vV.insert="head";vV.singleton=true;var yV=Tl()(_V.Z,vV);const xV=_V.Z.locals||{};class EV extends eu{static get requires(){return[CV]}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;const e=this.editor.config.get("image.toolbar")||[];const n=DV(t.get("ImageStyleEditing").normalizedStyles,this.localizedDefaultStylesTitles);for(const t of n){this._createButton(t)}const i=DV([...e.filter(at),...bV.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;const c=s.filter((t=>e.find((({name:e})=>TV(e)===t)))).map((t=>{const e=n.create(t);if(t===r){o=e}return e}));if(s.length!==c.length){bV.warnInvalidStyle({dropdown:t})}const l=yv(i,Gd);const d=l.buttonView;const u=d.arrowView;xv(l,c,{enableActiveItemFocusOnDropdownOpen:true});d.set({label:SV(a,o.label),class:null,tooltip:true});u.unbind("label");u.set({label:a});d.bind("icon").toMany(c,"isOn",((...t)=>{const e=t.findIndex(Gh);return e<0?o.icon:c[e].icon}));d.bind("label").toMany(c,"isOn",((...t)=>{const e=t.findIndex(Gh);return SV(a,e<0?o.label:c[e].label)}));d.bind("isOn").toMany(c,"isOn",((...t)=>t.some(Gh)));d.bind("class").toMany(c,"isOn",((...t)=>t.some(Gh)?"ck-splitbutton_flatten":null));d.on("execute",(()=>{if(!c.some((({isOn:t})=>t))){o.fire("execute")}else{l.isOpen=!l.isOpen}}));l.bind("isEnabled").toMany(c,"isEnabled",((...t)=>t.some(Gh)));this.listenTo(l,"execute",(()=>{this.editor.editing.view.focus()}));return l}))}_createButton(t){const e=t.name;this.editor.ui.componentFactory.add(TV(e),(n=>{const i=this.editor.commands.get("imageStyle");const o=new kd(n);o.set({label:t.title,icon:t.icon,tooltip:true,isToggleable:true});o.bind("isEnabled").to(i,"isEnabled");o.bind("isOn").to(i,"value",(t=>t===e));o.on("execute",this._executeCommand.bind(this,e));return o}))}_executeCommand(t){this.editor.execute("imageStyle",{value:t});this.editor.editing.view.focus()}}function DV(t,e){for(const n of t){if(e[n.title]){n.title=e[n.title]}}return t}function TV(t){return`imageStyle:${t}`}function SV(t,e){return(t?t+": ":"")+e}class IV extends eu{static get requires(){return[CV,EV]}static get pluginName(){return"ImageStyle"}}class BV extends eu{static get requires(){return[XD,XT]}static get pluginName(){return"ImageToolbar"}afterInit(){const t=this.editor;const e=t.t;const n=t.plugins.get(XD);const i=t.plugins.get("ImageUtils");n.register("image",{ariaLabel:e("Image toolbar"),items:MV(t.config.get("image.toolbar")||[]),getRelatedElement:t=>i.getClosestSelectedImageWidget(t)})}}function MV(t){return t.map((t=>at(t)?t.name:t))}class LV extends eu{static get pluginName(){return"IndentEditing"}init(){const t=this.editor;t.commands.add("indent",new ru(t));t.commands.add("outdent",new ru(t))}}const NV='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm5 6c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zM2.75 16.5h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 1 0 0 1.5zM1.632 6.95 5.02 9.358a.4.4 0 0 1-.013.661l-3.39 2.207A.4.4 0 0 1 1 11.892V7.275a.4.4 0 0 1 .632-.326z"/></svg>';const zV='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm5 6c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zM2.75 16.5h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 1 0 0 1.5zm1.618-9.55L.98 9.358a.4.4 0 0 0 .013.661l3.39 2.207A.4.4 0 0 0 5 11.892V7.275a.4.4 0 0 0-.632-.326z"/></svg>';class PV extends eu{static get pluginName(){return"IndentUI"}init(){const t=this.editor;const e=t.locale;const n=t.t;const i=e.uiLanguageDirection=="ltr"?NV:zV;const o=e.uiLanguageDirection=="ltr"?zV:NV;this._defineButton("indent",n("Increase indent"),i);this._defineButton("outdent",n("Decrease indent"),o)}_defineButton(t,e,n){const i=this.editor;i.ui.componentFactory.add(t,(o=>{const r=i.commands.get(t);const s=new kd(o);s.set({label:e,icon:n,tooltip:true});s.bind("isOn","isEnabled").to(r,"value","isEnabled");this.listenTo(s,"execute",(()=>{i.execute(t);i.editing.view.focus()}));return s}))}}class RV extends eu{static get pluginName(){return"Indent"}static get requires(){return[LV,PV]}}class OV extends iu{constructor(t,e){super(t);this._indentBehavior=e}refresh(){const t=this.editor;const e=t.model;const n=dl(e.document.selection.getSelectedBlocks());if(!n||!e.schema.checkAttribute(n,"blockIndent")){this.isEnabled=false;return}this.isEnabled=this._indentBehavior.checkEnabled(n.getAttribute("blockIndent"))}execute(){const t=this.editor.model;const e=VV(t);t.change((t=>{for(const n of e){const e=n.getAttribute("blockIndent");const i=this._indentBehavior.getNextIndent(e);if(i){t.setAttribute("blockIndent",i,n)}else{t.removeAttribute("blockIndent",n)}}}))}}function VV(t){const e=t.document.selection;const n=t.schema;const i=Array.from(e.getSelectedBlocks());return i.filter((t=>n.checkAttribute(t,"blockIndent")))}class FV{constructor(t){this.isForward=t.direction==="forward";this.offset=t.offset;this.unit=t.unit}checkEnabled(t){const e=parseFloat(t||0);return this.isForward||e>0}getNextIndent(t){const e=parseFloat(t||0);const n=!t||t.endsWith(this.unit);if(!n){return this.isForward?this.offset+this.unit:undefined}const i=this.isForward?this.offset:-this.offset;const o=e+i;return o>0?o+this.unit:undefined}}class jV{constructor(t){this.isForward=t.direction==="forward";this.classes=t.classes}checkEnabled(t){const e=this.classes.indexOf(t);if(this.isForward){return e<this.classes.length-1}else{return e>=0}}getNextIndent(t){const e=this.classes.indexOf(t);const n=this.isForward?1:-1;return this.classes[e+n]}}const HV=["paragraph","heading1","heading2","heading3","heading4","heading5","heading6"];class UV extends eu{constructor(t){super(t);t.config.define("indentBlock",{offset:40,unit:"px"})}static get pluginName(){return"IndentBlock"}init(){const t=this.editor;const e=t.config.get("indentBlock");const n=!e.classes||!e.classes.length;const i=Object.assign({direction:"forward"},e);const o=Object.assign({direction:"backward"},e);if(n){t.data.addStyleProcessorRules(a_);this._setupConversionUsingOffset(t.conversion);t.commands.add("indentBlock",new OV(t,new FV(i)));t.commands.add("outdentBlock",new OV(t,new FV(o)))}else{this._setupConversionUsingClasses(e.classes);t.commands.add("indentBlock",new OV(t,new jV(i)));t.commands.add("outdentBlock",new OV(t,new jV(o)))}}afterInit(){const t=this.editor;const e=t.model.schema;const n=t.commands.get("indent");const i=t.commands.get("outdent");const o=t.config.get("heading.options");const r=o&&o.map((t=>t.model));const s=r||HV;s.forEach((t=>{if(e.isRegistered(t)){e.extend(t,{allowAttributes:"blockIndent"})}}));e.setAttributeProperties("blockIndent",{isFormatting:true});n.registerChildCommand(t.commands.get("indentBlock"));i.registerChildCommand(t.commands.get("outdentBlock"))}_setupConversionUsingOffset(){const t=this.editor.conversion;const e=this.editor.locale;const n=e.contentLanguageDirection==="rtl"?"margin-right":"margin-left";t.for("upcast").attributeToAttribute({view:{styles:{[n]:/[\s\S]+/}},model:{key:"blockIndent",value:t=>t.getStyle(n)}});t.for("downcast").attributeToAttribute({model:"blockIndent",view:t=>({key:"style",value:{[n]:t}})})}_setupConversionUsingClasses(t){const e={model:{key:"blockIndent",values:[]},view:{}};for(const n of t){e.model.values.push(n);e.view[n]={key:"class",value:[n]}}this.editor.conversion.attributeToAttribute(e)}}const WV="italic";class qV extends eu{static get pluginName(){return"ItalicEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:WV});t.model.schema.setAttributeProperties(WV,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:WV,view:"i",upcastAlso:["em",{styles:{"font-style":"italic"}}]});t.commands.add(WV,new NI(t,WV));t.keystrokes.set("CTRL+I",WV)}}const $V='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m9.586 14.633.021.004c-.036.335.095.655.393.962.082.083.173.15.274.201h1.474a.6.6 0 1 1 0 1.2H5.304a.6.6 0 0 1 0-1.2h1.15c.474-.07.809-.182 1.005-.334.157-.122.291-.32.404-.597l2.416-9.55a1.053 1.053 0 0 0-.281-.823 1.12 1.12 0 0 0-.442-.296H8.15a.6.6 0 0 1 0-1.2h6.443a.6.6 0 1 1 0 1.2h-1.195c-.376.056-.65.155-.823.296-.215.175-.423.439-.623.79l-2.366 9.347z"/></svg>';const GV="italic";class KV extends eu{static get pluginName(){return"ItalicUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(GV,(n=>{const i=t.commands.get(GV);const o=new kd(n);o.set({label:e("Italic"),icon:$V,keystroke:"CTRL+I",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(GV);t.editing.view.focus()}));return o}))}}class YV extends eu{static get requires(){return[qV,KV]}static get pluginName(){return"Italic"}}class ZV{constructor(){this._definitions=new Set}get length(){return this._definitions.size}add(t){if(Array.isArray(t)){t.forEach((t=>this._definitions.add(t)))}else{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;const o=i.document.selection;for(const t of this._definitions){const r=i.createAttributeElement("a",t.attributes,{priority:5});if(t.classes){i.addClass(t.classes,r)}for(const e in t.styles){i.setStyle(e,t.styles[e],r)}i.setCustomProperty("link",true,r);if(t.callback(e.attributeNewValue)){if(e.item.is("selection")){i.wrap(o.getFirstRange(),r)}else{i.wrap(n.mapper.toViewRange(e.range),r)}}else{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);const r=Array.from(o.getChildren()).find((t=>t.name==="a"));for(const t of this._definitions){const i=ml(t.attributes);if(t.callback(e.attributeNewValue)){for(const[t,e]of i){if(t==="class"){n.addClass(e,r)}else{n.setAttribute(t,e,r)}}if(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){if(t==="class"){n.removeClass(e,r)}else{n.removeAttribute(t,r)}}if(t.classes){n.removeClass(t.classes,r)}for(const e in t.styles){n.removeStyle(e,r)}}}}))}}}class QV extends iu{constructor(t){super(t);this.manualDecorators=new ll;this.automaticDecorators=new ZV}restoreManualDecoratorStates(){for(const t of this.manualDecorators){t.value=this._getDecoratorStateFromModel(t.id)}}refresh(){const t=this.editor.model;const e=t.document.selection;const n=e.getSelectedElement()||dl(e.getSelectedBlocks());if(rI(n,t.schema)){this.value=n.getAttribute("linkHref");this.isEnabled=t.schema.checkAttribute(n,"linkHref")}else{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;const i=n.document.selection;const o=[];const r=[];for(const t in e){if(e[t]){o.push(t)}else{r.push(t)}}n.change((e=>{if(i.isCollapsed){const s=i.getFirstPosition();if(i.hasAttribute("linkHref")){const a=TE(s,"linkHref",i.getAttribute("linkHref"),n);e.setAttribute("linkHref",t,a);o.forEach((t=>{e.setAttribute(t,true,a)}));r.forEach((t=>{e.removeAttribute(t,a)}));e.setSelection(e.createPositionAfter(a.end.nodeBefore))}else if(t!==""){const r=ml(i.getAttributes());r.set("linkHref",t);o.forEach((t=>{r.set(t,true)}));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");const a=[];for(const t of i.getSelectedBlocks()){if(n.schema.checkAttribute(t,"linkHref")){a.push(e.createRangeOn(t))}}const c=a.slice();for(const t of s){if(this._isRangeToUpdate(t,a)){c.push(t)}}for(const n of c){e.setAttribute("linkHref",t,n);o.forEach((t=>{e.setAttribute(t,true,n)}));r.forEach((t=>{e.removeAttribute(t,n)}))}}}))}_getDecoratorStateFromModel(t){const e=this.editor.model;const n=e.document.selection;const i=n.getSelectedElement();if(rI(i,e.schema)){return i.getAttribute(t)}return n.getAttribute(t)}_isRangeToUpdate(t,e){for(const n of e){if(n.containsRange(t)){return false}}return true}}class JV extends iu{refresh(){const t=this.editor.model;const e=t.document.selection;const n=e.getSelectedElement();if(rI(n,t.schema)){this.isEnabled=t.schema.checkAttribute(n,"linkHref")}else{this.isEnabled=t.schema.checkAttributeInSelection(e,"linkHref")}}execute(){const t=this.editor;const e=this.editor.model;const n=e.document.selection;const i=t.commands.get("link");e.change((t=>{const o=n.isCollapsed?[TE(n.getFirstPosition(),"linkHref",n.getAttribute("linkHref"),e)]:e.schema.getValidRanges(n.getRanges(),"linkHref");for(const e of o){t.removeAttribute("linkHref",e);if(i){for(const n of i.manualDecorators){t.removeAttribute(n.id,e)}}}}))}}class XV{constructor({id:t,label:e,attributes:n,classes:i,styles:o,defaultValue:r}){this.id=t;this.set("value");this.defaultValue=r;this.label=e;this.attributes=n;this.classes=i;this.styles=o}_createPattern(){return{attributes:this.attributes,classes:this.classes,styles:this.styles}}}x(XV,mt);var tF=n(399);var eF={injectType:"singletonStyleTag",attributes:{"data-cke":true}};eF.insert="head";eF.singleton=true;var nF=Tl()(tF.Z,eF);const iF=tF.Z.locals||{};const oF="ck-link_selected";const rF="automatic";const sF="manual";const aF=/^(https?:)?\/\//;class cF extends eu{static get pluginName(){return"LinkEditing"}static get requires(){return[cE,$x,UE]}constructor(t){super(t);t.config.define("link",{addTargetToExternalLinks:false})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:"linkHref"});t.conversion.for("dataDowncast").attributeToElement({model:"linkHref",view:tI});t.conversion.for("editingDowncast").attributeToElement({model:"linkHref",view:(t,e)=>tI(eI(t),e)});t.conversion.for("upcast").elementToAttribute({view:{name:"a",attributes:{href:true}},model:{key:"linkHref",value:t=>t.getAttribute("href")}});t.commands.add("link",new QV(t));t.commands.add("unlink",new JV(t));const e=iI(t.t,oI(t.config.get("link.decorators")));this._enableAutomaticDecorators(e.filter((t=>t.mode===rF)));this._enableManualDecorators(e.filter((t=>t.mode===sF)));const n=t.plugins.get(cE);n.registerAttribute("linkHref");IE(t,"linkHref","a",oF);this._enableLinkOpen();this._enableInsertContentSelectionAttributesFixer();this._enableClickingAfterLink();this._enableTypingOverLink();this._handleDeleteContentAfterLink();this._enableClipboardIntegration()}_enableAutomaticDecorators(t){const e=this.editor;const n=e.commands.get("link");const i=n.automaticDecorators;if(e.config.get("link.addTargetToExternalLinks")){i.add({id:"linkIsExternal",mode:rF,callback:t=>aF.test(t),attributes:{target:"_blank",rel:"noopener noreferrer"}})}i.add(t);if(i.length){e.conversion.for("downcast").add(i.getDispatcher())}}_enableManualDecorators(t){if(!t.length){return}const e=this.editor;const n=e.commands.get("link");const i=n.manualDecorators;t.forEach((t=>{e.model.schema.extend("$text",{allowAttributes:t.id});t=new XV(t);i.add(t);e.conversion.for("downcast").attributeToElement({model:t.id,view:(e,{writer:n,schema:i},{item:o})=>{if(!(o.is("selection")||i.isInline(o))){return}if(e){const e=n.createAttributeElement("a",t.attributes,{priority:5});if(t.classes){n.addClass(t.classes,e)}for(const i in t.styles){n.setStyle(i,t.styles[i],e)}n.setCustomProperty("link",true,e);return e}}});e.conversion.for("upcast").elementToAttribute({view:{name:"a",...t._createPattern()},model:{key:t.id}})}))}_enableLinkOpen(){const t=this.editor;const e=t.editing.view;const n=e.document;this.listenTo(n,"click",((t,e)=>{const n=l.isMac?e.domEvent.metaKey:e.domEvent.ctrlKey;if(!n){return}let i=e.domTarget;if(i.tagName.toLowerCase()!="a"){i=i.closest("a")}if(!i){return}const o=i.getAttribute("href");if(!o){return}t.stop();e.preventDefault();lI(o)}),{context:"$capture"});this.listenTo(n,"keydown",((e,n)=>{const i=t.commands.get("link").value;const o=i&&n.keyCode===Hc.enter&&n.altKey;if(!o){return}e.stop();lI(i)}))}_enableInsertContentSelectionAttributesFixer(){const t=this.editor;const e=t.model;const n=e.document.selection;this.listenTo(e,"insertContent",(()=>{const t=n.anchor.nodeBefore;const i=n.anchor.nodeAfter;if(!n.hasAttribute("linkHref")){return}if(!t){return}if(!t.hasAttribute("linkHref")){return}if(i&&i.hasAttribute("linkHref")){return}e.change((t=>{lF(t,hF(e.schema))}))}),{priority:"low"})}_enableClickingAfterLink(){const t=this.editor;const e=t.model;t.editing.view.addObserver(bC);let n=false;this.listenTo(t.editing.view.document,"mousedown",(()=>{n=true}));this.listenTo(t.editing.view.document,"selectionChange",(()=>{if(!n){return}n=false;const t=e.document.selection;if(!t.isCollapsed){return}if(!t.hasAttribute("linkHref")){return}const i=t.getFirstPosition();const o=TE(i,"linkHref",t.getAttribute("linkHref"),e);if(i.isTouching(o.start)||i.isTouching(o.end)){e.change((t=>{lF(t,hF(e.schema))}))}}))}_enableTypingOverLink(){const t=this.editor;const e=t.editing.view;let n;let i;this.listenTo(e.document,"delete",(()=>{i=true}),{priority:"high"});this.listenTo(t.model,"deleteContent",(()=>{const e=t.model.document.selection;if(e.isCollapsed){return}if(i){i=false;return}if(!uF(t)){return}if(dF(t.model)){n=e.getAttributes()}}),{priority:"high"});this.listenTo(t.model,"insertContent",((e,[o])=>{i=false;if(!uF(t)){return}if(!n){return}t.model.change((t=>{for(const[e,i]of n){t.setAttribute(e,i,o)}}));n=null}),{priority:"high"})}_handleDeleteContentAfterLink(){const t=this.editor;const e=t.model;const n=e.document.selection;const i=t.editing.view;let o=false;let r=false;this.listenTo(i.document,"delete",((t,e)=>{r=e.direction==="backward"}),{priority:"high"});this.listenTo(e,"deleteContent",(()=>{o=false;const t=n.getFirstPosition();const i=n.getAttribute("linkHref");if(!i){return}const r=TE(t,"linkHref",i,e);o=r.containsPosition(t)||r.end.isEqual(t)}),{priority:"high"});this.listenTo(e,"deleteContent",(()=>{if(!r){return}r=false;if(o){return}t.model.enqueueChange((t=>{lF(t,hF(e.schema))}))}),{priority:"low"})}_enableClipboardIntegration(){const t=this.editor;const e=t.model;const n=this.editor.config.get("link.defaultProtocol");if(!n){return}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=aI(i.getAttribute("linkHref"),n);t.setAttribute("linkHref",e,i)}}}))}))}}function lF(t,e){t.removeSelectionAttribute("linkHref");for(const n of e){t.removeSelectionAttribute(n)}}function dF(t){const e=t.document.selection;const n=e.getFirstPosition();const i=e.getLastPosition();const o=n.nodeAfter;if(!o){return false}if(!o.is("$text")){return false}if(!o.hasAttribute("linkHref")){return false}const r=i.textNode||i.nodeBefore;if(o===r){return true}const s=TE(n,"linkHref",o.getAttribute("linkHref"),t);return s.containsRange(t.createRange(n,i),true)}function uF(t){const e=t.model.change((t=>t.batch));return e.isTyping}function hF(t){const e=t.getDefinition("$text").allowAttributes;return e.filter((t=>t.startsWith("link")))}var gF=n(4827);var mF={injectType:"singletonStyleTag",attributes:{"data-cke":true}};mF.insert="head";mF.singleton=true;var fF=Tl()(gF.Z,mF);const pF=gF.Z.locals||{};class bF extends Ll{constructor(t,n){super(t);const i=t.t;this.focusTracker=new ul;this.keystrokes=new hl;this.urlInputView=this._createUrlInput();this.saveButtonView=this._createButton(i("Save"),J_.check,"ck-button-save");this.saveButtonView.type="submit";this.cancelButtonView=this._createButton(i("Cancel"),J_.cancel,"ck-button-cancel","cancel");this._manualDecoratorSwitches=this._createManualDecoratorSwitches(n);this.children=this._createFormChildren(n.manualDecorators);this._focusables=new xl;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});const o=["ck","ck-link-form","ck-responsive-form"];if(n.manualDecorators.length){o.push("ck-link-form_layout-vertical","ck-vertical-form")}this.setTemplate({tag:"form",attributes:{class:o,tabindex:"-1"},children:this.children});e(this)}getDecoratorSwitchesState(){return Array.from(this._manualDecoratorSwitches).reduce(((t,e)=>{t[e.name]=e.isOn;return t}),{})}render(){super.render();o({view:this});const t=[this.urlInputView,...this._manualDecoratorSwitches,this.saveButtonView,this.cancelButtonView];t.forEach((t=>{this._focusables.add(t);this.focusTracker.add(t.element)}));this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}_createUrlInput(){const t=this.locale.t;const e=new Ly(this.locale,Ny);e.label=t("Link URL");return e}_createButton(t,e,n,i){const o=new kd(this.locale);o.set({label:t,icon:e,tooltip:true});o.extendTemplate({attributes:{class:n}});if(i){o.delegate("execute").to(this,i)}return o}_createManualDecoratorSwitches(t){const e=this.createCollection();for(const n of t.manualDecorators){const i=new vd(this.locale);i.set({name:n.id,label:n.label,withText:true});i.bind("isOn").toMany([n,t],"value",((t,e)=>e===undefined&&t===undefined?n.defaultValue:t));i.on("execute",(()=>{n.set("value",!i.isOn)}));e.add(i)}return e}_createFormChildren(t){const e=this.createCollection();e.add(this.urlInputView);if(t.length){const t=new Ll;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)}e.add(this.saveButtonView);e.add(this.cancelButtonView);return e}}var kF=n(9465);var wF={injectType:"singletonStyleTag",attributes:{"data-cke":true}};wF.insert="head";wF.singleton=true;var AF=Tl()(kF.Z,wF);const CF=kF.Z.locals||{};const _F='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.077 15 .991-1.416a.75.75 0 1 1 1.229.86l-1.148 1.64a.748.748 0 0 1-.217.206 5.251 5.251 0 0 1-8.503-5.955.741.741 0 0 1 .12-.274l1.147-1.639a.75.75 0 1 1 1.228.86L4.933 10.7l.006.003a3.75 3.75 0 0 0 6.132 4.294l.006.004zm5.494-5.335a.748.748 0 0 1-.12.274l-1.147 1.639a.75.75 0 1 1-1.228-.86l.86-1.23a3.75 3.75 0 0 0-6.144-4.301l-.86 1.229a.75.75 0 0 1-1.229-.86l1.148-1.64a.748.748 0 0 1 .217-.206 5.251 5.251 0 0 1 8.503 5.955zm-4.563-2.532a.75.75 0 0 1 .184 1.045l-3.155 4.505a.75.75 0 1 1-1.229-.86l3.155-4.506a.75.75 0 0 1 1.045-.184zm4.919 10.562-1.414 1.414a.75.75 0 1 1-1.06-1.06l1.414-1.415-1.415-1.414a.75.75 0 0 1 1.061-1.06l1.414 1.414 1.414-1.415a.75.75 0 0 1 1.061 1.061l-1.414 1.414 1.414 1.415a.75.75 0 0 1-1.06 1.06l-1.415-1.414z"/></svg>';class vF extends Ll{constructor(t){super(t);const e=t.t;this.focusTracker=new ul;this.keystrokes=new hl;this.previewButtonView=this._createPreviewButton();this.unlinkButtonView=this._createButton(e("Unlink"),_F,"unlink");this.editButtonView=this._createButton(e("Edit link"),J_.pencil,"edit");this.set("href");this._focusables=new xl;this._focusCycler=new Yd({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();const t=[this.previewButtonView,this.editButtonView,this.unlinkButtonView];t.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 kd(this.locale);i.set({label:t,icon:e,tooltip:true});i.delegate("execute").to(this,n);return i}_createPreviewButton(){const t=new kd(this.locale);const e=this.bindTemplate;const n=this.t;t.set({withText:true,tooltip:n("Open link in new tab")});t.extendTemplate({attributes:{class:["ck","ck-link-actions__preview"],href:e.to("href",(t=>t&&eI(t))),target:"_blank",rel:"noopener noreferrer"}});t.bind("label").to(this,"href",(t=>t||n("This link has no URL")));t.bind("isEnabled").to(this,"href",(t=>!!t));t.template.tag="a";t.template.eventListeners={};return t}}const yF='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.077 15 .991-1.416a.75.75 0 1 1 1.229.86l-1.148 1.64a.748.748 0 0 1-.217.206 5.251 5.251 0 0 1-8.503-5.955.741.741 0 0 1 .12-.274l1.147-1.639a.75.75 0 1 1 1.228.86L4.933 10.7l.006.003a3.75 3.75 0 0 0 6.132 4.294l.006.004zm5.494-5.335a.748.748 0 0 1-.12.274l-1.147 1.639a.75.75 0 1 1-1.228-.86l.86-1.23a3.75 3.75 0 0 0-6.144-4.301l-.86 1.229a.75.75 0 0 1-1.229-.86l1.148-1.64a.748.748 0 0 1 .217-.206 5.251 5.251 0 0 1 8.503 5.955zm-4.563-2.532a.75.75 0 0 1 .184 1.045l-3.155 4.505a.75.75 0 1 1-1.229-.86l3.155-4.506a.75.75 0 0 1 1.045-.184z"/></svg>';const xF="link-ui";class EF extends eu{static get requires(){return[Zy]}static get pluginName(){return"LinkUI"}init(){const t=this.editor;t.editing.view.addObserver(pC);this.actionsView=null;this.formView=null;this._balloon=t.plugins.get(Zy);this._createToolbarLinkButton();this._enableBalloonActivators();t.conversion.for("editingDowncast").markerToHighlight({model:xF,view:{classes:["ck-fake-link-selection"]}});t.conversion.for("editingDowncast").markerToElement({model:xF,view:{name:"span",classes:["ck-fake-link-selection","ck-fake-link-selection_collapsed"]}})}destroy(){super.destroy();if(this.formView){this.formView.destroy()}if(this.actionsView){this.actionsView.destroy()}}_createViews(){this.actionsView=this._createActionsView();this.formView=this._createFormView();this._enableUserBalloonInteractions()}_createActionsView(){const t=this.editor;const e=new vF(t.locale);const n=t.commands.get("link");const i=t.commands.get("unlink");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(JS,((t,e)=>{this._addFormView();e()}));return e}_createFormView(){const t=this.editor;const e=t.commands.get("link");const n=t.config.get("link.defaultProtocol");const i=new bF(t.locale,e);i.urlInputView.fieldView.bind("value").to(e,"value");i.urlInputView.bind("isReadOnly").to(e,"isEnabled",(t=>!t));i.saveButtonView.bind("isEnabled").to(e);this.listenTo(i,"submit",(()=>{const{value:e}=i.urlInputView.fieldView.element;const o=aI(e,n);t.execute("link",o,i.getDecoratorSwitchesState());this._closeFormView()}));this.listenTo(i,"cancel",(()=>{this._closeFormView()}));i.keystrokes.set("Esc",((t,e)=>{this._closeFormView();e()}));return i}_createToolbarLinkButton(){const t=this.editor;const e=t.commands.get("link");const n=t.t;t.ui.componentFactory.add("link",(t=>{const i=new kd(t);i.isEnabled=true;i.label=n("Link");i.icon=yF;i.keystroke=JS;i.tooltip=true;i.isToggleable=true;i.bind("isEnabled").to(e,"isEnabled");i.bind("isOn").to(e,"value",(t=>!!t));this.listenTo(i,"execute",(()=>this._showUI(true)));return i}))}_enableBalloonActivators(){const t=this.editor;const e=t.editing.view.document;this.listenTo(e,"click",(()=>{const t=this._getSelectedLinkElement();if(t){this._showUI()}}));t.keystrokes.set(JS,((e,n)=>{n();if(t.commands.get("link").isEnabled){this._showUI(true)}}))}_enableUserBalloonInteractions(){this.editor.keystrokes.set("Tab",((t,e)=>{if(this._areActionsVisible&&!this.actionsView.focusTracker.isFocused){this.actionsView.focus();e()}}),{priority:"high"});this.editor.keystrokes.set("Esc",((t,e)=>{if(this._isUIVisible){this._hideUI();e()}}));t({emitter:this.formView,activator:()=>this._isUIInPanel,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideUI()})}_addActionsView(){if(!this.actionsView){this._createViews()}if(this._areActionsInPanel){return}this._balloon.add({view:this.actionsView,position:this._getBalloonPositionData()})}_addFormView(){if(!this.formView){this._createViews()}if(this._isFormInPanel){return}const t=this.editor;const e=t.commands.get("link");this.formView.disableCssTransitions();this._balloon.add({view:this.formView,position:this._getBalloonPositionData()});if(this._balloon.visibleView===this.formView){this.formView.urlInputView.fieldView.select()}this.formView.enableCssTransitions();this.formView.urlInputView.fieldView.element.value=e.value||""}_closeFormView(){const t=this.editor.commands.get("link");t.restoreManualDecoratorStates();if(t.value!==undefined){this._removeFormView()}else{this._hideUI()}}_removeFormView(){if(this._isFormInPanel){this.formView.saveButtonView.focus();this._balloon.remove(this.formView);this.editor.editing.view.focus();this._hideFakeVisualSelection()}}_showUI(t=false){if(!this.formView){this._createViews()}if(!this._getSelectedLinkElement()){this._showFakeVisualSelection();this._addActionsView();if(t){this._balloon.showStack("main")}this._addFormView()}else{if(this._areActionsVisible){this._addFormView()}else{this._addActionsView()}if(t){this._balloon.showStack("main")}}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;const e=t.editing.view.document;let n=this._getSelectedLinkElement();let i=r();const o=()=>{const t=this._getSelectedLinkElement();const e=r();if(n&&!t||!n&&e!==i){this._hideUI()}else if(this._isUIVisible){this._balloon.updatePosition(this._getBalloonPositionData())}n=t;i=e};function r(){return e.selection.focus.getAncestors().reverse().find((t=>t.is("element")))}this.listenTo(t.ui,"update",o);this.listenTo(this._balloon,"change:visibleView",o)}get _isFormInPanel(){return this._balloon.hasView(this.formView)}get _areActionsInPanel(){return this._balloon.hasView(this.actionsView)}get _areActionsVisible(){return this._balloon.visibleView===this.actionsView}get _isUIInPanel(){return this._isFormInPanel||this._areActionsInPanel}get _isUIVisible(){const t=this._balloon.visibleView;return t==this.formView||this._areActionsVisible}_getBalloonPositionData(){const t=this.editor.editing.view;const e=this.editor.model;const n=t.document;let i=null;if(e.markers.has(xF)){const e=Array.from(this.editor.editing.mapper.markerNameToElements(xF));const 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;const e=t.document.selection;const n=e.getSelectedElement();if(e.isCollapsed||n&&lD(n)){return DF(e.getFirstPosition())}else{const n=e.getFirstRange().getTrimmed();const i=DF(n.start);const o=DF(n.end);if(!i||i!=o){return null}if(t.createRangeIn(i).getTrimmed().isEqual(n)){return i}else{return null}}}_showFakeVisualSelection(){const t=this.editor.model;t.change((e=>{const n=t.document.selection.getFirstRange();if(t.markers.has(xF)){e.updateMarker(xF,{range:n})}else{if(n.start.isAtEnd){const i=n.start.getLastMatchingPosition((({item:e})=>!t.schema.isContent(e)),{boundaries:n});e.addMarker(xF,{usingOperation:false,affectsData:false,range:e.createRange(i,n.end)})}else{e.addMarker(xF,{usingOperation:false,affectsData:false,range:n})}}}))}_hideFakeVisualSelection(){const t=this.editor.model;if(t.markers.has(xF)){t.change((t=>{t.removeMarker(xF)}))}}}function DF(t){return t.getAncestors().find((t=>XS(t)))}class TF extends eu{static get requires(){return[cF,EF,gI]}static get pluginName(){return"Link"}}class SF extends eu{static get requires(){return["ImageEditing","ImageUtils",cF]}static get pluginName(){return"LinkImageEditing"}init(){const t=this.editor;const e=t.model.schema;if(t.plugins.has("ImageBlockEditing")){e.extend("imageBlock",{allowAttributes:["linkHref"]})}t.conversion.for("upcast").add(IF(t));t.conversion.for("downcast").add(BF(t));this._enableAutomaticDecorators();this._enableManualDecorators()}_enableAutomaticDecorators(){const t=this.editor;const e=t.commands.get("link");const n=e.automaticDecorators;if(n.length){t.conversion.for("downcast").add(n.getDispatcherForLinkedImage())}}_enableManualDecorators(){const t=this.editor;const e=t.commands.get("link");for(const n of e.manualDecorators){if(t.plugins.has("ImageBlockEditing")){t.model.schema.extend("imageBlock",{allowAttributes:n.id})}if(t.plugins.has("ImageInlineEditing")){t.model.schema.extend("imageInline",{allowAttributes:n.id})}t.conversion.for("downcast").add(MF(n));t.conversion.for("upcast").add(LF(t,n))}}}function IF(t){const e=t.plugins.has("ImageInlineEditing");const n=t.plugins.get("ImageUtils");return t=>{t.on("element:a",((t,i,o)=>{const r=i.viewItem;const s=n.findViewImgElement(r);if(!s){return}const a=s.findAncestor((t=>n.isBlockImageView(t)));if(e&&!a){return}const c={attributes:["href"]};if(!o.consumable.consume(r,c)){return}const l=r.getAttribute("href");if(!l){return}let d=i.modelCursor.parent;if(!d.is("element","imageBlock")){const t=o.convertItem(s,i.modelCursor);i.modelRange=t.modelRange;i.modelCursor=t.modelCursor;d=i.modelCursor.nodeBefore}if(d&&d.is("element","imageBlock")){o.writer.setAttribute("linkHref",l,d)}}),{priority:"high"})}}function BF(t){const e=t.plugins.get("ImageUtils");return t=>{t.on("attribute:linkHref:imageBlock",((t,n,i)=>{if(!i.consumable.consume(n.item,t.name)){return}const o=i.mapper.toViewElement(n.item);const r=i.writer;const s=Array.from(o.getChildren()).find((t=>t.name==="a"));const a=e.findViewImgElement(o);const c=a.parent.is("element","picture")?a.parent:a;if(s){if(n.attributeNewValue){r.setAttribute("href",n.attributeNewValue,s)}else{r.move(r.createRangeOn(c),r.createPositionAt(o,0));r.remove(s)}}else{const t=r.createContainerElement("a",{href:n.attributeNewValue});r.insert(r.createPositionAt(o,0),t);r.move(r.createRangeOn(c),r.createPositionAt(t,0))}}),{priority:"high"})}}function MF(t){return e=>{e.on(`attribute:${t.id}:imageBlock`,((e,n,i)=>{const o=i.mapper.toViewElement(n.item);const r=Array.from(o.getChildren()).find((t=>t.name==="a"));if(!r){return}for(const[e,n]of ml(t.attributes)){i.writer.setAttribute(e,n,r)}if(t.classes){i.writer.addClass(t.classes,r)}for(const e in t.styles){i.writer.setStyle(e,t.styles[e],r)}}))}}function LF(t,e){const n=t.plugins.has("ImageInlineEditing");const i=t.plugins.get("ImageUtils");return t=>{t.on("element:a",((t,o,r)=>{const s=o.viewItem;const a=i.findViewImgElement(s);if(!a){return}const c=a.findAncestor((t=>i.isBlockImageView(t)));if(n&&!c){return}const l=new Su(e._createPattern());const d=l.match(s);if(!d){return}if(!r.consumable.consume(s,d.match)){return}const u=o.modelCursor.nodeBefore||o.modelCursor.parent;r.writer.setAttribute(e.id,true,u)}),{priority:"high"})}}class NF extends eu{static get requires(){return[cF,EF,"ImageBlockEditing"]}static get pluginName(){return"LinkImageUI"}init(){const t=this.editor;const e=t.editing.view.document;this.listenTo(e,"click",((e,n)=>{if(this._isSelectedLinkedImage(t.model.document.selection)){n.preventDefault();e.stop()}}),{priority:"high"});this._createToolbarLinkImageButton()}_createToolbarLinkImageButton(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("linkImage",(n=>{const i=new kd(n);const o=t.plugins.get("LinkUI");const r=t.commands.get("link");i.set({isEnabled:true,label:e("Link image"),icon:yF,keystroke:JS,tooltip:true,isToggleable:true});i.bind("isEnabled").to(r,"isEnabled");i.bind("isOn").to(r,"value",(t=>!!t));this.listenTo(i,"execute",(()=>{if(this._isSelectedLinkedImage(t.model.document.selection)){o._addActionsView()}else{o._showUI(true)}}));return i}))}_isSelectedLinkedImage(t){const e=t.getSelectedElement();const n=this.editor.plugins.get("ImageUtils");return n.isImage(e)&&e.hasAttribute("linkHref")}}var zF=n(3858);var PF={injectType:"singletonStyleTag",attributes:{"data-cke":true}};PF.insert="head";PF.singleton=true;var RF=Tl()(zF.Z,PF);const OF=zF.Z.locals||{};class VF extends eu{static get requires(){return[SF,NF]}static get pluginName(){return"LinkImage"}}function FF(){return{baseUrl:null,breaks:false,extensions:null,gfm:true,headerIds:true,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:true,pedantic:false,renderer:null,sanitize:false,sanitizer:null,silent:false,smartLists:false,smartypants:false,tokenizer:null,walkTokens:null,xhtml:false}}let jF=FF();function HF(t){jF=t}const UF=/[&<>"']/;const WF=/[&<>"']/g;const qF=/[<>"']|&(?!#?\w+;)/;const $F=/[<>"']|&(?!#?\w+;)/g;const GF={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};const KF=t=>GF[t];function YF(t,e){if(e){if(UF.test(t)){return t.replace(WF,KF)}}else{if(qF.test(t)){return t.replace($F,KF)}}return t}const ZF=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function QF(t){return t.replace(ZF,((t,e)=>{e=e.toLowerCase();if(e==="colon")return":";if(e.charAt(0)==="#"){return e.charAt(1)==="x"?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1))}return""}))}const JF=/(^|[^\[])\^/g;function XF(t,e){t=t.source||t;e=e||"";const n={replace:(e,i)=>{i=i.source||i;i=i.replace(JF,"$1");t=t.replace(e,i);return n},getRegex:()=>new RegExp(t,e)};return n}const tj=/[^\w:]/g;const ej=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function nj(t,e,n){if(t){let t;try{t=decodeURIComponent(QF(n)).replace(tj,"").toLowerCase()}catch(t){return null}if(t.indexOf("javascript:")===0||t.indexOf("vbscript:")===0||t.indexOf("data:")===0){return null}}if(e&&!ej.test(n)){n=aj(e,n)}try{n=encodeURI(n).replace(/%25/g,"%")}catch(t){return null}return n}const ij={};const oj=/^[^:]+:\/*[^/]*$/;const rj=/^([^:]+:)[\s\S]*$/;const sj=/^([^:]+:\/*[^/]*)[\s\S]*$/;function aj(t,e){if(!ij[" "+t]){if(oj.test(t)){ij[" "+t]=t+"/"}else{ij[" "+t]=uj(t,"/",true)}}t=ij[" "+t];const n=t.indexOf(":")===-1;if(e.substring(0,2)==="//"){if(n){return e}return t.replace(rj,"$1")+e}else if(e.charAt(0)==="/"){if(n){return e}return t.replace(sj,"$1")+e}else{return t+e}}const cj={exec:function t(){}};function lj(t){let e=1,n,i;for(;e<arguments.length;e++){n=arguments[e];for(i in n){if(Object.prototype.hasOwnProperty.call(n,i)){t[i]=n[i]}}}return t}function dj(t,e){const n=t.replace(/\|/g,((t,e,n)=>{let i=false,o=e;while(--o>=0&&n[o]==="\\")i=!i;if(i){return"|"}else{return" |"}})),i=n.split(/ \|/);let o=0;if(!i[0].trim()){i.shift()}if(i.length>0&&!i[i.length-1].trim()){i.pop()}if(i.length>e){i.splice(e)}else{while(i.length<e)i.push("")}for(;o<i.length;o++){i[o]=i[o].trim().replace(/\\\|/g,"|")}return i}function uj(t,e,n){const i=t.length;if(i===0){return""}let o=0;while(o<i){const r=t.charAt(i-o-1);if(r===e&&!n){o++}else if(r!==e&&n){o++}else{break}}return t.substr(0,i-o)}function hj(t,e){if(t.indexOf(e[1])===-1){return-1}const n=t.length;let i=0,o=0;for(;o<n;o++){if(t[o]==="\\"){o++}else if(t[o]===e[0]){i++}else if(t[o]===e[1]){i--;if(i<0){return o}}}return-1}function gj(t){if(t&&t.sanitize&&!t.silent){console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")}}function mj(t,e){if(e<1){return""}let n="";while(e>1){if(e&1){n+=t}e>>=1;t+=t}return n+t}function fj(t,e,n,i){const o=e.href;const r=e.title?YF(e.title):null;const s=t[1].replace(/\\([\[\]])/g,"$1");if(t[0].charAt(0)!=="!"){i.state.inLink=true;const t={type:"link",raw:n,href:o,title:r,text:s,tokens:i.inlineTokens(s,[])};i.state.inLink=false;return t}else{return{type:"image",raw:n,href:o,title:r,text:YF(s)}}}function pj(t,e){const n=t.match(/^(\s+)(?:```)/);if(n===null){return e}const i=n[1];return e.split("\n").map((t=>{const e=t.match(/^\s+/);if(e===null){return t}const[n]=e;if(n.length>=i.length){return t.slice(i.length)}return t})).join("\n")}class bj{constructor(t){this.options=t||jF}space(t){const e=this.rules.block.newline.exec(t);if(e&&e[0].length>0){return{type:"space",raw:e[0]}}}code(t){const e=this.rules.block.code.exec(t);if(e){const t=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:!this.options.pedantic?uj(t,"\n"):t}}}fences(t){const e=this.rules.block.fences.exec(t);if(e){const t=e[0];const n=pj(t,e[3]||"");return{type:"code",raw:t,lang:e[2]?e[2].trim():e[2],text:n}}}heading(t){const e=this.rules.block.heading.exec(t);if(e){let t=e[2].trim();if(/#$/.test(t)){const e=uj(t,"#");if(this.options.pedantic){t=e.trim()}else if(!e||/ $/.test(e)){t=e.trim()}}const n={type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:[]};this.lexer.inline(n.text,n.tokens);return n}}hr(t){const e=this.rules.block.hr.exec(t);if(e){return{type:"hr",raw:e[0]}}}blockquote(t){const e=this.rules.block.blockquote.exec(t);if(e){const t=e[0].replace(/^ *> ?/gm,"");return{type:"blockquote",raw:e[0],tokens:this.lexer.blockTokens(t,[]),text:t}}}list(t){let e=this.rules.block.list.exec(t);if(e){let n,i,o,r,s,a,c,l,d,u,h,g;let m=e[1].trim();const f=m.length>1;const p={type:"list",raw:"",ordered:f,start:f?+m.slice(0,-1):"",loose:false,items:[]};m=f?`\\d{1,9}\\${m.slice(-1)}`:`\\${m}`;if(this.options.pedantic){m=f?m:"[*+-]"}const b=new RegExp(`^( {0,3}${m})((?: [^\\n]*)?(?:\\n|$))`);while(t){g=false;if(!(e=b.exec(t))){break}if(this.rules.block.hr.test(t)){break}n=e[0];t=t.substring(n.length);l=e[2].split("\n",1)[0];d=t.split("\n",1)[0];if(this.options.pedantic){r=2;h=l.trimLeft()}else{r=e[2].search(/[^ ]/);r=r>4?1:r;h=l.slice(r);r+=e[1].length}a=false;if(!l&&/^ *$/.test(d)){n+=d+"\n";t=t.substring(d.length+1);g=true}if(!g){const e=new RegExp(`^ {0,${Math.min(3,r-1)}}(?:[*+-]|\\d{1,9}[.)])`);while(t){u=t.split("\n",1)[0];l=u;if(this.options.pedantic){l=l.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")}if(e.test(l)){break}if(l.search(/[^ ]/)>=r||!l.trim()){h+="\n"+l.slice(r)}else if(!a){h+="\n"+l}else{break}if(!a&&!l.trim()){a=true}n+=u+"\n";t=t.substring(u.length+1)}}if(!p.loose){if(c){p.loose=true}else if(/\n *\n *$/.test(n)){c=true}}if(this.options.gfm){i=/^\[[ xX]\] /.exec(h);if(i){o=i[0]!=="[ ] ";h=h.replace(/^\[[ xX]\] +/,"")}}p.items.push({type:"list_item",raw:n,task:!!i,checked:o,loose:false,text:h});p.raw+=n}p.items[p.items.length-1].raw=n.trimRight();p.items[p.items.length-1].text=h.trimRight();p.raw=p.raw.trimRight();const k=p.items.length;for(s=0;s<k;s++){this.lexer.state.top=false;p.items[s].tokens=this.lexer.blockTokens(p.items[s].text,[]);const t=p.items[s].tokens.filter((t=>t.type==="space"));const e=t.every((t=>{const e=t.raw.split("");let n=0;for(const t of e){if(t==="\n"){n+=1}if(n>1){return true}}return false}));if(!p.loose&&t.length&&e){p.loose=true;p.items[s].loose=true}}return p}}html(t){const e=this.rules.block.html.exec(t);if(e){const t={type:"html",raw:e[0],pre:!this.options.sanitizer&&(e[1]==="pre"||e[1]==="script"||e[1]==="style"),text:e[0]};if(this.options.sanitize){t.type="paragraph";t.text=this.options.sanitizer?this.options.sanitizer(e[0]):YF(e[0]);t.tokens=[];this.lexer.inline(t.text,t.tokens)}return t}}def(t){const e=this.rules.block.def.exec(t);if(e){if(e[3])e[3]=e[3].substring(1,e[3].length-1);const t=e[1].toLowerCase().replace(/\s+/g," ");return{type:"def",tag:t,raw:e[0],href:e[2],title:e[3]}}}table(t){const e=this.rules.block.table.exec(t);if(e){const t={type:"table",header:dj(e[1]).map((t=>({text:t}))),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:e[3]&&e[3].trim()?e[3].replace(/\n[ \t]*$/,"").split("\n"):[]};if(t.header.length===t.align.length){t.raw=e[0];let n=t.align.length;let i,o,r,s;for(i=0;i<n;i++){if(/^ *-+: *$/.test(t.align[i])){t.align[i]="right"}else if(/^ *:-+: *$/.test(t.align[i])){t.align[i]="center"}else if(/^ *:-+ *$/.test(t.align[i])){t.align[i]="left"}else{t.align[i]=null}}n=t.rows.length;for(i=0;i<n;i++){t.rows[i]=dj(t.rows[i],t.header.length).map((t=>({text:t})))}n=t.header.length;for(o=0;o<n;o++){t.header[o].tokens=[];this.lexer.inlineTokens(t.header[o].text,t.header[o].tokens)}n=t.rows.length;for(o=0;o<n;o++){s=t.rows[o];for(r=0;r<s.length;r++){s[r].tokens=[];this.lexer.inlineTokens(s[r].text,s[r].tokens)}}return t}}}lheading(t){const e=this.rules.block.lheading.exec(t);if(e){const t={type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:[]};this.lexer.inline(t.text,t.tokens);return t}}paragraph(t){const e=this.rules.block.paragraph.exec(t);if(e){const t={type:"paragraph",raw:e[0],text:e[1].charAt(e[1].length-1)==="\n"?e[1].slice(0,-1):e[1],tokens:[]};this.lexer.inline(t.text,t.tokens);return t}}text(t){const e=this.rules.block.text.exec(t);if(e){const t={type:"text",raw:e[0],text:e[0],tokens:[]};this.lexer.inline(t.text,t.tokens);return t}}escape(t){const e=this.rules.inline.escape.exec(t);if(e){return{type:"escape",raw:e[0],text:YF(e[1])}}}tag(t){const e=this.rules.inline.tag.exec(t);if(e){if(!this.lexer.state.inLink&&/^<a /i.test(e[0])){this.lexer.state.inLink=true}else if(this.lexer.state.inLink&&/^<\/a>/i.test(e[0])){this.lexer.state.inLink=false}if(!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(e[0])){this.lexer.state.inRawBlock=true}else if(this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(e[0])){this.lexer.state.inRawBlock=false}return{type:this.options.sanitize?"text":"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(e[0]):YF(e[0]):e[0]}}}link(t){const e=this.rules.inline.link.exec(t);if(e){const t=e[2].trim();if(!this.options.pedantic&&/^</.test(t)){if(!/>$/.test(t)){return}const e=uj(t.slice(0,-1),"\\");if((t.length-e.length)%2===0){return}}else{const t=hj(e[2],"()");if(t>-1){const n=e[0].indexOf("!")===0?5:4;const i=n+e[1].length+t;e[2]=e[2].substring(0,t);e[0]=e[0].substring(0,i).trim();e[3]=""}}let n=e[2];let i="";if(this.options.pedantic){const t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(n);if(t){n=t[1];i=t[3]}}else{i=e[3]?e[3].slice(1,-1):""}n=n.trim();if(/^</.test(n)){if(this.options.pedantic&&!/>$/.test(t)){n=n.slice(1)}else{n=n.slice(1,-1)}}return fj(e,{href:n?n.replace(this.rules.inline._escapes,"$1"):n,title:i?i.replace(this.rules.inline._escapes,"$1"):i},e[0],this.lexer)}}reflink(t,e){let n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){let t=(n[2]||n[1]).replace(/\s+/g," ");t=e[t.toLowerCase()];if(!t||!t.href){const t=n[0].charAt(0);return{type:"text",raw:t,text:t}}return fj(n,t,n[0],this.lexer)}}emStrong(t,e,n=""){let i=this.rules.inline.emStrong.lDelim.exec(t);if(!i)return;if(i[3]&&n.match(/[\p{L}\p{N}]/u))return;const o=i[1]||i[2]||"";if(!o||o&&(n===""||this.rules.inline.punctuation.exec(n))){const n=i[0].length-1;let o,r,s=n,a=0;const c=i[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;c.lastIndex=0;e=e.slice(-1*t.length+n);while((i=c.exec(e))!=null){o=i[1]||i[2]||i[3]||i[4]||i[5]||i[6];if(!o)continue;r=o.length;if(i[3]||i[4]){s+=r;continue}else if(i[5]||i[6]){if(n%3&&!((n+r)%3)){a+=r;continue}}s-=r;if(s>0)continue;r=Math.min(r,r+s+a);if(Math.min(n,r)%2){const e=t.slice(1,n+i.index+r);return{type:"em",raw:t.slice(0,n+i.index+r+1),text:e,tokens:this.lexer.inlineTokens(e,[])}}const e=t.slice(2,n+i.index+r-1);return{type:"strong",raw:t.slice(0,n+i.index+r+1),text:e,tokens:this.lexer.inlineTokens(e,[])}}}}codespan(t){const e=this.rules.inline.code.exec(t);if(e){let t=e[2].replace(/\n/g," ");const n=/[^ ]/.test(t);const i=/^ /.test(t)&&/ $/.test(t);if(n&&i){t=t.substring(1,t.length-1)}t=YF(t,true);return{type:"codespan",raw:e[0],text:t}}}br(t){const e=this.rules.inline.br.exec(t);if(e){return{type:"br",raw:e[0]}}}del(t){const e=this.rules.inline.del.exec(t);if(e){return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2],[])}}}autolink(t,e){const n=this.rules.inline.autolink.exec(t);if(n){let t,i;if(n[2]==="@"){t=YF(this.options.mangle?e(n[1]):n[1]);i="mailto:"+t}else{t=YF(n[1]);i=t}return{type:"link",raw:n[0],text:t,href:i,tokens:[{type:"text",raw:t,text:t}]}}}url(t,e){let n;if(n=this.rules.inline.url.exec(t)){let t,i;if(n[2]==="@"){t=YF(this.options.mangle?e(n[0]):n[0]);i="mailto:"+t}else{let e;do{e=n[0];n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(e!==n[0]);t=YF(n[0]);if(n[1]==="www."){i="http://"+t}else{i=t}}return{type:"link",raw:n[0],text:t,href:i,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(t,e){const n=this.rules.inline.text.exec(t);if(n){let t;if(this.lexer.state.inRawBlock){t=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(n[0]):YF(n[0]):n[0]}else{t=YF(this.options.smartypants?e(n[0]):n[0])}return{type:"text",raw:n[0],text:t}}}}const kj={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)( [^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:"+"<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)"+"|comment[^\\n]*(\\n+|$)"+"|<\\?[\\s\\S]*?(?:\\?>\\n*|$)"+"|<![A-Z][\\s\\S]*?(?:>\\n*|$)"+"|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)"+"|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)"+"|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)"+"|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)"+")",def:/^ {0,3}\[(label)\]: *(?:\n *)?<?([^\s>]+)>?(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:cj,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};kj._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/;kj._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;kj.def=XF(kj.def).replace("label",kj._label).replace("title",kj._title).getRegex();kj.bullet=/(?:[*+-]|\d{1,9}[.)])/;kj.listItemStart=XF(/^( *)(bull) */).replace("bull",kj.bullet).getRegex();kj.list=XF(kj.list).replace(/bull/g,kj.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+kj.def.source+")").getRegex();kj._tag="address|article|aside|base|basefont|blockquote|body|caption"+"|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption"+"|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe"+"|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option"+"|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr"+"|track|ul";kj._comment=/<!--(?!-?>)[\s\S]*?(?:-->|$)/;kj.html=XF(kj.html,"i").replace("comment",kj._comment).replace("tag",kj._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();kj.paragraph=XF(kj._paragraph).replace("hr",kj.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",kj._tag).getRegex();kj.blockquote=XF(kj.blockquote).replace("paragraph",kj.paragraph).getRegex();kj.normal=lj({},kj);kj.gfm=lj({},kj.normal,{table:"^ *([^\\n ].*\\|.*)\\n"+" {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?"+"(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"});kj.gfm.table=XF(kj.gfm.table).replace("hr",kj.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",kj._tag).getRegex();kj.gfm.paragraph=XF(kj._paragraph).replace("hr",kj.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",kj.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",kj._tag).getRegex();kj.pedantic=lj({},kj.normal,{html:XF("^ *(?:comment *(?:\\n|\\s*$)"+"|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)"+"|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",kj._comment).replace(/tag/g,"(?!(?:"+"a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub"+"|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)"+"\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:cj,paragraph:XF(kj.normal._paragraph).replace("hr",kj.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",kj.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});const wj={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:cj,tag:"^comment"+"|^</[a-zA-Z][\\w:-]*\\s*>"+"|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>"+"|^<\\?[\\s\\S]*?\\?>"+"|^<![a-zA-Z]+\\s[\\s\\S]*?>"+"|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^[^_*]*?\_\_[^_*]*?\*[^_*]*?(?=\_\_)|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/^[^_*]*?\*\*[^_*]*?\_[^_*]*?(?=\*\*)|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:cj,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/};wj._punctuation="!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~";wj.punctuation=XF(wj.punctuation).replace(/punctuation/g,wj._punctuation).getRegex();wj.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;wj.escapedEmSt=/\\\*|\\_/g;wj._comment=XF(kj._comment).replace("(?:--\x3e|$)","--\x3e").getRegex();wj.emStrong.lDelim=XF(wj.emStrong.lDelim).replace(/punct/g,wj._punctuation).getRegex();wj.emStrong.rDelimAst=XF(wj.emStrong.rDelimAst,"g").replace(/punct/g,wj._punctuation).getRegex();wj.emStrong.rDelimUnd=XF(wj.emStrong.rDelimUnd,"g").replace(/punct/g,wj._punctuation).getRegex();wj._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;wj._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;wj._email=/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;wj.autolink=XF(wj.autolink).replace("scheme",wj._scheme).replace("email",wj._email).getRegex();wj._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;wj.tag=XF(wj.tag).replace("comment",wj._comment).replace("attribute",wj._attribute).getRegex();wj._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;wj._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;wj._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;wj.link=XF(wj.link).replace("label",wj._label).replace("href",wj._href).replace("title",wj._title).getRegex();wj.reflink=XF(wj.reflink).replace("label",wj._label).replace("ref",kj._label).getRegex();wj.nolink=XF(wj.nolink).replace("ref",kj._label).getRegex();wj.reflinkSearch=XF(wj.reflinkSearch,"g").replace("reflink",wj.reflink).replace("nolink",wj.nolink).getRegex();wj.normal=lj({},wj);wj.pedantic=lj({},wj.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:XF(/^!?\[(label)\]\((.*?)\)/).replace("label",wj._label).getRegex(),reflink:XF(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",wj._label).getRegex()});wj.gfm=lj({},wj.normal,{escape:XF(wj.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/});wj.gfm.url=XF(wj.gfm.url,"i").replace("email",wj.gfm._extended_email).getRegex();wj.breaks=lj({},wj.gfm,{br:XF(wj.br).replace("{2,}","*").getRegex(),text:XF(wj.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()});function Aj(t){return t.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")}function Cj(t){let e="",n,i;const o=t.length;for(n=0;n<o;n++){i=t.charCodeAt(n);if(Math.random()>.5){i="x"+i.toString(16)}e+="&#"+i+";"}return e}class _j{constructor(t){this.tokens=[];this.tokens.links=Object.create(null);this.options=t||jF;this.options.tokenizer=this.options.tokenizer||new bj;this.tokenizer=this.options.tokenizer;this.tokenizer.options=this.options;this.tokenizer.lexer=this;this.inlineQueue=[];this.state={inLink:false,inRawBlock:false,top:true};const e={block:kj.normal,inline:wj.normal};if(this.options.pedantic){e.block=kj.pedantic;e.inline=wj.pedantic}else if(this.options.gfm){e.block=kj.gfm;if(this.options.breaks){e.inline=wj.breaks}else{e.inline=wj.gfm}}this.tokenizer.rules=e}static get rules(){return{block:kj,inline:wj}}static lex(t,e){const n=new _j(e);return n.lex(t)}static lexInline(t,e){const n=new _j(e);return n.inlineTokens(t)}lex(t){t=t.replace(/\r\n|\r/g,"\n").replace(/\t/g," ");this.blockTokens(t,this.tokens);let e;while(e=this.inlineQueue.shift()){this.inlineTokens(e.src,e.tokens)}return this.tokens}blockTokens(t,e=[]){if(this.options.pedantic){t=t.replace(/^ +$/gm,"")}let n,i,o,r;while(t){if(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some((i=>{if(n=i.call({lexer:this},t,e)){t=t.substring(n.raw.length);e.push(n);return true}return false}))){continue}if(n=this.tokenizer.space(t)){t=t.substring(n.raw.length);if(n.raw.length===1&&e.length>0){e[e.length-1].raw+="\n"}else{e.push(n)}continue}if(n=this.tokenizer.code(t)){t=t.substring(n.raw.length);i=e[e.length-1];if(i&&(i.type==="paragraph"||i.type==="text")){i.raw+="\n"+n.raw;i.text+="\n"+n.text;this.inlineQueue[this.inlineQueue.length-1].src=i.text}else{e.push(n)}continue}if(n=this.tokenizer.fences(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.heading(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.hr(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.blockquote(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.list(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.html(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.def(t)){t=t.substring(n.raw.length);i=e[e.length-1];if(i&&(i.type==="paragraph"||i.type==="text")){i.raw+="\n"+n.raw;i.text+="\n"+n.raw;this.inlineQueue[this.inlineQueue.length-1].src=i.text}else if(!this.tokens.links[n.tag]){this.tokens.links[n.tag]={href:n.href,title:n.title}}continue}if(n=this.tokenizer.table(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.lheading(t)){t=t.substring(n.raw.length);e.push(n);continue}o=t;if(this.options.extensions&&this.options.extensions.startBlock){let e=Infinity;const n=t.slice(1);let i;this.options.extensions.startBlock.forEach((function(t){i=t.call({lexer:this},n);if(typeof i==="number"&&i>=0){e=Math.min(e,i)}}));if(e<Infinity&&e>=0){o=t.substring(0,e+1)}}if(this.state.top&&(n=this.tokenizer.paragraph(o))){i=e[e.length-1];if(r&&i.type==="paragraph"){i.raw+="\n"+n.raw;i.text+="\n"+n.text;this.inlineQueue.pop();this.inlineQueue[this.inlineQueue.length-1].src=i.text}else{e.push(n)}r=o.length!==t.length;t=t.substring(n.raw.length);continue}if(n=this.tokenizer.text(t)){t=t.substring(n.raw.length);i=e[e.length-1];if(i&&i.type==="text"){i.raw+="\n"+n.raw;i.text+="\n"+n.text;this.inlineQueue.pop();this.inlineQueue[this.inlineQueue.length-1].src=i.text}else{e.push(n)}continue}if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(e);break}else{throw new Error(e)}}}this.state.top=true;return e}inline(t,e){this.inlineQueue.push({src:t,tokens:e})}inlineTokens(t,e=[]){let n,i,o;let r=t;let s;let a,c;if(this.tokens.links){const t=Object.keys(this.tokens.links);if(t.length>0){while((s=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null){if(t.includes(s[0].slice(s[0].lastIndexOf("[")+1,-1))){r=r.slice(0,s.index)+"["+mj("a",s[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex)}}}}while((s=this.tokenizer.rules.inline.blockSkip.exec(r))!=null){r=r.slice(0,s.index)+"["+mj("a",s[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex)}while((s=this.tokenizer.rules.inline.escapedEmSt.exec(r))!=null){r=r.slice(0,s.index)+"++"+r.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex)}while(t){if(!a){c=""}a=false;if(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some((i=>{if(n=i.call({lexer:this},t,e)){t=t.substring(n.raw.length);e.push(n);return true}return false}))){continue}if(n=this.tokenizer.escape(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.tag(t)){t=t.substring(n.raw.length);i=e[e.length-1];if(i&&n.type==="text"&&i.type==="text"){i.raw+=n.raw;i.text+=n.text}else{e.push(n)}continue}if(n=this.tokenizer.link(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(n.raw.length);i=e[e.length-1];if(i&&n.type==="text"&&i.type==="text"){i.raw+=n.raw;i.text+=n.text}else{e.push(n)}continue}if(n=this.tokenizer.emStrong(t,r,c)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.codespan(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.br(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.del(t)){t=t.substring(n.raw.length);e.push(n);continue}if(n=this.tokenizer.autolink(t,Cj)){t=t.substring(n.raw.length);e.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(t,Cj))){t=t.substring(n.raw.length);e.push(n);continue}o=t;if(this.options.extensions&&this.options.extensions.startInline){let e=Infinity;const n=t.slice(1);let i;this.options.extensions.startInline.forEach((function(t){i=t.call({lexer:this},n);if(typeof i==="number"&&i>=0){e=Math.min(e,i)}}));if(e<Infinity&&e>=0){o=t.substring(0,e+1)}}if(n=this.tokenizer.inlineText(o,Aj)){t=t.substring(n.raw.length);if(n.raw.slice(-1)!=="_"){c=n.raw.slice(-1)}a=true;i=e[e.length-1];if(i&&i.type==="text"){i.raw+=n.raw;i.text+=n.text}else{e.push(n)}continue}if(t){const e="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(e);break}else{throw new Error(e)}}}return e}}class vj{constructor(t){this.options=t||jF}code(t,e,n){const i=(e||"").match(/\S*/)[0];if(this.options.highlight){const e=this.options.highlight(t,i);if(e!=null&&e!==t){n=true;t=e}}t=t.replace(/\n$/,"")+"\n";if(!i){return"<pre><code>"+(n?t:YF(t,true))+"</code></pre>\n"}return'<pre><code class="'+this.options.langPrefix+YF(i,true)+'">'+(n?t:YF(t,true))+"</code></pre>\n"}blockquote(t){return"<blockquote>\n"+t+"</blockquote>\n"}html(t){return t}heading(t,e,n,i){if(this.options.headerIds){return"<h"+e+' id="'+this.options.headerPrefix+i.slug(n)+'">'+t+"</h"+e+">\n"}return"<h"+e+">"+t+"</h"+e+">\n"}hr(){return this.options.xhtml?"<hr/>\n":"<hr>\n"}list(t,e,n){const i=e?"ol":"ul",o=e&&n!==1?' start="'+n+'"':"";return"<"+i+o+">\n"+t+"</"+i+">\n"}listitem(t){return"<li>"+t+"</li>\n"}checkbox(t){return"<input "+(t?'checked="" ':"")+'disabled="" type="checkbox"'+(this.options.xhtml?" /":"")+"> "}paragraph(t){return"<p>"+t+"</p>\n"}table(t,e){if(e)e="<tbody>"+e+"</tbody>";return"<table>\n"+"<thead>\n"+t+"</thead>\n"+e+"</table>\n"}tablerow(t){return"<tr>\n"+t+"</tr>\n"}tablecell(t,e){const n=e.header?"th":"td";const i=e.align?"<"+n+' align="'+e.align+'">':"<"+n+">";return i+t+"</"+n+">\n"}strong(t){return"<strong>"+t+"</strong>"}em(t){return"<em>"+t+"</em>"}codespan(t){return"<code>"+t+"</code>"}br(){return this.options.xhtml?"<br/>":"<br>"}del(t){return"<del>"+t+"</del>"}link(t,e,n){t=nj(this.options.sanitize,this.options.baseUrl,t);if(t===null){return n}let i='<a href="'+YF(t)+'"';if(e){i+=' title="'+e+'"'}i+=">"+n+"</a>";return i}image(t,e,n){t=nj(this.options.sanitize,this.options.baseUrl,t);if(t===null){return n}let i='<img src="'+t+'" alt="'+n+'"';if(e){i+=' title="'+e+'"'}i+=this.options.xhtml?"/>":">";return i}text(t){return t}}class yj{strong(t){return t}em(t){return t}codespan(t){return t}del(t){return t}html(t){return t}text(t){return t}link(t,e,n){return""+n}image(t,e,n){return""+n}br(){return""}}class xj{constructor(){this.seen={}}serialize(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}getNextSafeSlug(t,e){let n=t;let i=0;if(this.seen.hasOwnProperty(n)){i=this.seen[t];do{i++;n=t+"-"+i}while(this.seen.hasOwnProperty(n))}if(!e){this.seen[t]=i;this.seen[n]=0}return n}slug(t,e={}){const n=this.serialize(t);return this.getNextSafeSlug(n,e.dryrun)}}class Ej{constructor(t){this.options=t||jF;this.options.renderer=this.options.renderer||new vj;this.renderer=this.options.renderer;this.renderer.options=this.options;this.textRenderer=new yj;this.slugger=new xj}static parse(t,e){const n=new Ej(e);return n.parse(t)}static parseInline(t,e){const n=new Ej(e);return n.parseInline(t)}parse(t,e=true){let n="",i,o,r,s,a,c,l,d,u,h,g,m,f,p,b,k,w,A,C;const _=t.length;for(i=0;i<_;i++){h=t[i];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[h.type]){C=this.options.extensions.renderers[h.type].call({parser:this},h);if(C!==false||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(h.type)){n+=C||"";continue}}switch(h.type){case"space":{continue}case"hr":{n+=this.renderer.hr();continue}case"heading":{n+=this.renderer.heading(this.parseInline(h.tokens),h.depth,QF(this.parseInline(h.tokens,this.textRenderer)),this.slugger);continue}case"code":{n+=this.renderer.code(h.text,h.lang,h.escaped);continue}case"table":{d="";l="";s=h.header.length;for(o=0;o<s;o++){l+=this.renderer.tablecell(this.parseInline(h.header[o].tokens),{header:true,align:h.align[o]})}d+=this.renderer.tablerow(l);u="";s=h.rows.length;for(o=0;o<s;o++){c=h.rows[o];l="";a=c.length;for(r=0;r<a;r++){l+=this.renderer.tablecell(this.parseInline(c[r].tokens),{header:false,align:h.align[r]})}u+=this.renderer.tablerow(l)}n+=this.renderer.table(d,u);continue}case"blockquote":{u=this.parse(h.tokens);n+=this.renderer.blockquote(u);continue}case"list":{g=h.ordered;m=h.start;f=h.loose;s=h.items.length;u="";for(o=0;o<s;o++){b=h.items[o];k=b.checked;w=b.task;p="";if(b.task){A=this.renderer.checkbox(k);if(f){if(b.tokens.length>0&&b.tokens[0].type==="paragraph"){b.tokens[0].text=A+" "+b.tokens[0].text;if(b.tokens[0].tokens&&b.tokens[0].tokens.length>0&&b.tokens[0].tokens[0].type==="text"){b.tokens[0].tokens[0].text=A+" "+b.tokens[0].tokens[0].text}}else{b.tokens.unshift({type:"text",text:A})}}else{p+=A}}p+=this.parse(b.tokens,f);u+=this.renderer.listitem(p,w,k)}n+=this.renderer.list(u,g,m);continue}case"html":{n+=this.renderer.html(h.text);continue}case"paragraph":{n+=this.renderer.paragraph(this.parseInline(h.tokens));continue}case"text":{u=h.tokens?this.parseInline(h.tokens):h.text;while(i+1<_&&t[i+1].type==="text"){h=t[++i];u+="\n"+(h.tokens?this.parseInline(h.tokens):h.text)}n+=e?this.renderer.paragraph(u):u;continue}default:{const t='Token with "'+h.type+'" type was not found.';if(this.options.silent){console.error(t);return}else{throw new Error(t)}}}}return n}parseInline(t,e){e=e||this.renderer;let n="",i,o,r;const s=t.length;for(i=0;i<s;i++){o=t[i];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[o.type]){r=this.options.extensions.renderers[o.type].call({parser:this},o);if(r!==false||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(o.type)){n+=r||"";continue}}switch(o.type){case"escape":{n+=e.text(o.text);break}case"html":{n+=e.html(o.text);break}case"link":{n+=e.link(o.href,o.title,this.parseInline(o.tokens,e));break}case"image":{n+=e.image(o.href,o.title,o.text);break}case"strong":{n+=e.strong(this.parseInline(o.tokens,e));break}case"em":{n+=e.em(this.parseInline(o.tokens,e));break}case"codespan":{n+=e.codespan(o.text);break}case"br":{n+=e.br();break}case"del":{n+=e.del(this.parseInline(o.tokens,e));break}case"text":{n+=e.text(o.text);break}default:{const t='Token with "'+o.type+'" type was not found.';if(this.options.silent){console.error(t);return}else{throw new Error(t)}}}}return n}}function Dj(t,e,n){if(typeof t==="undefined"||t===null){throw new Error("marked(): input parameter is undefined or null")}if(typeof t!=="string"){throw new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected")}if(typeof e==="function"){n=e;e=null}e=lj({},Dj.defaults,e||{});gj(e);if(n){const i=e.highlight;let o;try{o=_j.lex(t,e)}catch(t){return n(t)}const r=function(t){let r;if(!t){try{if(e.walkTokens){Dj.walkTokens(o,e.walkTokens)}r=Ej.parse(o,e)}catch(e){t=e}}e.highlight=i;return t?n(t):n(null,r)};if(!i||i.length<3){return r()}delete e.highlight;if(!o.length)return r();let s=0;Dj.walkTokens(o,(function(t){if(t.type==="code"){s++;setTimeout((()=>{i(t.text,t.lang,(function(e,n){if(e){return r(e)}if(n!=null&&n!==t.text){t.text=n;t.escaped=true}s--;if(s===0){r()}}))}),0)}}));if(s===0){r()}return}try{const n=_j.lex(t,e);if(e.walkTokens){Dj.walkTokens(n,e.walkTokens)}return Ej.parse(n,e)}catch(t){t.message+="\nPlease report this to https://github.com/markedjs/marked.";if(e.silent){return"<p>An error occurred:</p><pre>"+YF(t.message+"",true)+"</pre>"}throw t}}Dj.options=Dj.setOptions=function(t){lj(Dj.defaults,t);HF(Dj.defaults);return Dj};Dj.getDefaults=FF;Dj.defaults=jF;Dj.use=function(...t){const e=lj({},...t);const n=Dj.defaults.extensions||{renderers:{},childTokens:{}};let i;t.forEach((t=>{if(t.extensions){i=true;t.extensions.forEach((t=>{if(!t.name){throw new Error("extension name required")}if(t.renderer){const e=n.renderers?n.renderers[t.name]:null;if(e){n.renderers[t.name]=function(...n){let i=t.renderer.apply(this,n);if(i===false){i=e.apply(this,n)}return i}}else{n.renderers[t.name]=t.renderer}}if(t.tokenizer){if(!t.level||t.level!=="block"&&t.level!=="inline"){throw new Error("extension level must be 'block' or 'inline'")}if(n[t.level]){n[t.level].unshift(t.tokenizer)}else{n[t.level]=[t.tokenizer]}if(t.start){if(t.level==="block"){if(n.startBlock){n.startBlock.push(t.start)}else{n.startBlock=[t.start]}}else if(t.level==="inline"){if(n.startInline){n.startInline.push(t.start)}else{n.startInline=[t.start]}}}}if(t.childTokens){n.childTokens[t.name]=t.childTokens}}))}if(t.renderer){const n=Dj.defaults.renderer||new vj;for(const e in t.renderer){const i=n[e];n[e]=(...o)=>{let r=t.renderer[e].apply(n,o);if(r===false){r=i.apply(n,o)}return r}}e.renderer=n}if(t.tokenizer){const n=Dj.defaults.tokenizer||new bj;for(const e in t.tokenizer){const i=n[e];n[e]=(...o)=>{let r=t.tokenizer[e].apply(n,o);if(r===false){r=i.apply(n,o)}return r}}e.tokenizer=n}if(t.walkTokens){const n=Dj.defaults.walkTokens;e.walkTokens=function(e){t.walkTokens.call(this,e);if(n){n.call(this,e)}}}if(i){e.extensions=n}Dj.setOptions(e)}))};Dj.walkTokens=function(t,e){for(const n of t){e.call(Dj,n);switch(n.type){case"table":{for(const t of n.header){Dj.walkTokens(t.tokens,e)}for(const t of n.rows){for(const n of t){Dj.walkTokens(n.tokens,e)}}break}case"list":{Dj.walkTokens(n.items,e);break}default:{if(Dj.defaults.extensions&&Dj.defaults.extensions.childTokens&&Dj.defaults.extensions.childTokens[n.type]){Dj.defaults.extensions.childTokens[n.type].forEach((function(t){Dj.walkTokens(n[t],e)}))}else if(n.tokens){Dj.walkTokens(n.tokens,e)}}}}};Dj.parseInline=function(t,e){if(typeof t==="undefined"||t===null){throw new Error("marked.parseInline(): input parameter is undefined or null")}if(typeof t!=="string"){throw new Error("marked.parseInline(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected")}e=lj({},Dj.defaults,e||{});gj(e);try{const n=_j.lexInline(t,e);if(e.walkTokens){Dj.walkTokens(n,e.walkTokens)}return Ej.parseInline(n,e)}catch(t){t.message+="\nPlease report this to https://github.com/markedjs/marked.";if(e.silent){return"<p>An error occurred:</p><pre>"+YF(t.message+"",true)+"</pre>"}throw t}};Dj.Parser=Ej;Dj.parser=Ej.parse;Dj.Renderer=vj;Dj.TextRenderer=yj;Dj.Lexer=_j;Dj.lexer=_j.lex;Dj.Tokenizer=bj;Dj.Slugger=xj;Dj.parse=Dj;const Tj=Dj.options;const Sj=Dj.setOptions;const Ij=Dj.use;const Bj=Dj.walkTokens;const Mj=Dj.parseInline;const Lj=null&&Dj;const Nj=Ej.parse;const zj=_j.lex;Dj.use({tokenizer:{autolink:()=>null,url:()=>null},renderer:{checkbox(...t){return Object.getPrototypeOf(this).checkbox.call(this,...t).trimRight()},code(...t){return Object.getPrototypeOf(this).code.call(this,...t).replace("\n</code>","</code>")}}});function Pj(t){const e={gfm:true,breaks:true,tables:true,xhtml:true,headerIds:false};return Dj.parse(t,e)}function Rj(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n){if(n.hasOwnProperty(i))t[i]=n[i]}}return t}function Oj(t,e){return Array(e+1).join(t)}var Vj=["address","article","aside","audio","blockquote","body","canvas","center","dd","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frameset","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","isindex","li","main","menu","nav","noframes","noscript","ol","output","p","pre","section","table","tbody","td","tfoot","th","thead","tr","ul"];function Fj(t){return Vj.indexOf(t.nodeName.toLowerCase())!==-1}var jj=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"];function Hj(t){return jj.indexOf(t.nodeName.toLowerCase())!==-1}var Uj=jj.join();function Wj(t){return t.querySelector&&t.querySelector(Uj)}var qj={};qj.paragraph={filter:"p",replacement:function(t){return"\n\n"+t+"\n\n"}};qj.lineBreak={filter:"br",replacement:function(t,e,n){return n.br+"\n"}};qj.heading={filter:["h1","h2","h3","h4","h5","h6"],replacement:function(t,e,n){var i=Number(e.nodeName.charAt(1));if(n.headingStyle==="setext"&&i<3){var o=Oj(i===1?"=":"-",t.length);return"\n\n"+t+"\n"+o+"\n\n"}else{return"\n\n"+Oj("#",i)+" "+t+"\n\n"}}};qj.blockquote={filter:"blockquote",replacement:function(t){t=t.replace(/^\n+|\n+$/g,"");t=t.replace(/^/gm,"> ");return"\n\n"+t+"\n\n"}};qj.list={filter:["ul","ol"],replacement:function(t,e){var n=e.parentNode;if(n.nodeName==="LI"&&n.lastElementChild===e){return"\n"+t}else{return"\n\n"+t+"\n\n"}}};qj.listItem={filter:"li",replacement:function(t,e,n){t=t.replace(/^\n+/,"").replace(/\n+$/,"\n").replace(/\n/gm,"\n ");var i=n.bulletListMarker+" ";var o=e.parentNode;if(o.nodeName==="OL"){var r=o.getAttribute("start");var s=Array.prototype.indexOf.call(o.children,e);i=(r?Number(r)+s:s+1)+". "}return i+t+(e.nextSibling&&!/\n$/.test(t)?"\n":"")}};qj.indentedCodeBlock={filter:function(t,e){return e.codeBlockStyle==="indented"&&t.nodeName==="PRE"&&t.firstChild&&t.firstChild.nodeName==="CODE"},replacement:function(t,e,n){return"\n\n "+e.firstChild.textContent.replace(/\n/g,"\n ")+"\n\n"}};qj.fencedCodeBlock={filter:function(t,e){return e.codeBlockStyle==="fenced"&&t.nodeName==="PRE"&&t.firstChild&&t.firstChild.nodeName==="CODE"},replacement:function(t,e,n){var i=e.firstChild.className||"";var o=(i.match(/language-(\S+)/)||[null,""])[1];var r=e.firstChild.textContent;var s=n.fence.charAt(0);var a=3;var c=new RegExp("^"+s+"{3,}","gm");var l;while(l=c.exec(r)){if(l[0].length>=a){a=l[0].length+1}}var d=Oj(s,a);return"\n\n"+d+o+"\n"+r.replace(/\n$/,"")+"\n"+d+"\n\n"}};qj.horizontalRule={filter:"hr",replacement:function(t,e,n){return"\n\n"+n.hr+"\n\n"}};qj.inlineLink={filter:function(t,e){return e.linkStyle==="inlined"&&t.nodeName==="A"&&t.getAttribute("href")},replacement:function(t,e){var n=e.getAttribute("href");var i=e.title?' "'+e.title+'"':"";return"["+t+"]("+n+i+")"}};qj.referenceLink={filter:function(t,e){return e.linkStyle==="referenced"&&t.nodeName==="A"&&t.getAttribute("href")},replacement:function(t,e,n){var i=e.getAttribute("href");var o=e.title?' "'+e.title+'"':"";var r;var s;switch(n.linkReferenceStyle){case"collapsed":r="["+t+"][]";s="["+t+"]: "+i+o;break;case"shortcut":r="["+t+"]";s="["+t+"]: "+i+o;break;default:var a=this.references.length+1;r="["+t+"]["+a+"]";s="["+a+"]: "+i+o}this.references.push(s);return r},references:[],append:function(t){var e="";if(this.references.length){e="\n\n"+this.references.join("\n")+"\n\n";this.references=[]}return e}};qj.emphasis={filter:["em","i"],replacement:function(t,e,n){if(!t.trim())return"";return n.emDelimiter+t+n.emDelimiter}};qj.strong={filter:["strong","b"],replacement:function(t,e,n){if(!t.trim())return"";return n.strongDelimiter+t+n.strongDelimiter}};qj.code={filter:function(t){var e=t.previousSibling||t.nextSibling;var n=t.parentNode.nodeName==="PRE"&&!e;return t.nodeName==="CODE"&&!n},replacement:function(t){if(!t.trim())return"";var e="`";var n="";var i="";var o=t.match(/`+/gm);if(o){if(/^`/.test(t))n=" ";if(/`$/.test(t))i=" ";while(o.indexOf(e)!==-1)e=e+"`"}return e+n+t+i+e}};qj.image={filter:"img",replacement:function(t,e){var n=e.alt||"";var i=e.getAttribute("src")||"";var o=e.title||"";var r=o?' "'+o+'"':"";return i?"!["+n+"]"+"("+i+r+")":""}};function $j(t){this.options=t;this._keep=[];this._remove=[];this.blankRule={replacement:t.blankReplacement};this.keepReplacement=t.keepReplacement;this.defaultRule={replacement:t.defaultReplacement};this.array=[];for(var e in t.rules)this.array.push(t.rules[e])}$j.prototype={add:function(t,e){this.array.unshift(e)},keep:function(t){this._keep.unshift({filter:t,replacement:this.keepReplacement})},remove:function(t){this._remove.unshift({filter:t,replacement:function(){return""}})},forNode:function(t){if(t.isBlank)return this.blankRule;var e;if(e=Gj(this.array,t,this.options))return e;if(e=Gj(this._keep,t,this.options))return e;if(e=Gj(this._remove,t,this.options))return e;return this.defaultRule},forEach:function(t){for(var e=0;e<this.array.length;e++)t(this.array[e],e)}};function Gj(t,e,n){for(var i=0;i<t.length;i++){var o=t[i];if(Kj(o,e,n))return o}return void 0}function Kj(t,e,n){var i=t.filter;if(typeof i==="string"){if(i===e.nodeName.toLowerCase())return true}else if(Array.isArray(i)){if(i.indexOf(e.nodeName.toLowerCase())>-1)return true}else if(typeof i==="function"){if(i.call(t,e,n))return true}else{throw new TypeError("`filter` needs to be a string, array, or function")}}function Yj(t){var e=t.element;var n=t.isBlock;var i=t.isVoid;var o=t.isPre||function(t){return t.nodeName==="PRE"};if(!e.firstChild||o(e))return;var r=null;var s=false;var a=null;var c=Qj(a,e,o);while(c!==e){if(c.nodeType===3||c.nodeType===4){var l=c.data.replace(/[ \r\n\t]+/g," ");if((!r||/ $/.test(r.data))&&!s&&l[0]===" "){l=l.substr(1)}if(!l){c=Zj(c);continue}c.data=l;r=c}else if(c.nodeType===1){if(n(c)||c.nodeName==="BR"){if(r){r.data=r.data.replace(/ $/,"")}r=null;s=false}else if(i(c)){r=null;s=true}}else{c=Zj(c);continue}var d=Qj(a,c,o);a=c;c=d}if(r){r.data=r.data.replace(/ $/,"");if(!r.data){Zj(r)}}}function Zj(t){var e=t.nextSibling||t.parentNode;t.parentNode.removeChild(t);return e}function Qj(t,e,n){if(t&&t.parentNode===e||n(e)){return e.nextSibling||e.parentNode}return e.firstChild||e.nextSibling||e.parentNode}var Jj=typeof window!=="undefined"?window:{};function Xj(){var t=Jj.DOMParser;var e=false;try{if((new t).parseFromString("","text/html")){e=true}}catch(t){}return e}function tH(){var t=function(){};{var e=n(1576).JSDOM;t.prototype.parseFromString=function(t){return new e(t).window.document}}return t}var eH=Xj()?Jj.DOMParser:tH();function nH(t){var e;if(typeof t==="string"){var n=oH().parseFromString('<x-turndown id="turndown-root">'+t+"</x-turndown>","text/html");e=n.getElementById("turndown-root")}else{e=t.cloneNode(true)}Yj({element:e,isBlock:Fj,isVoid:Hj});return e}var iH;function oH(){iH=iH||new eH;return iH}function rH(t){t.isBlock=Fj(t);t.isCode=t.nodeName.toLowerCase()==="code"||t.parentNode.isCode;t.isBlank=sH(t);t.flankingWhitespace=aH(t);return t}function sH(t){return["A","TH","TD","IFRAME","SCRIPT","AUDIO","VIDEO"].indexOf(t.nodeName)===-1&&/^\s*$/i.test(t.textContent)&&!Hj(t)&&!Wj(t)}function aH(t){var e="";var n="";if(!t.isBlock){var i=/^\s/.test(t.textContent);var o=/\s$/.test(t.textContent);var r=t.isBlank&&i&&o;if(i&&!cH("left",t)){e=" "}if(!r&&o&&!cH("right",t)){n=" "}}return{leading:e,trailing:n}}function cH(t,e){var n;var i;var o;if(t==="left"){n=e.previousSibling;i=/ $/}else{n=e.nextSibling;i=/^ /}if(n){if(n.nodeType===3){o=i.test(n.nodeValue)}else if(n.nodeType===1&&!Fj(n)){o=i.test(n.textContent)}}return o}var lH=Array.prototype.reduce;var dH=/^\n*/;var uH=/\n*$/;var hH=[[/\\/g,"\\\\"],[/\*/g,"\\*"],[/^-/g,"\\-"],[/^\+ /g,"\\+ "],[/^(=+)/g,"\\$1"],[/^(#{1,6}) /g,"\\$1 "],[/`/g,"\\`"],[/^~~~/g,"\\~~~"],[/\[/g,"\\["],[/\]/g,"\\]"],[/^>/g,"\\>"],[/_/g,"\\_"],[/^(\d+)\. /g,"$1\\. "]];function gH(t){if(!(this instanceof gH))return new gH(t);var e={rules:qj,headingStyle:"setext",hr:"* * *",bulletListMarker:"*",codeBlockStyle:"indented",fence:"```",emDelimiter:"_",strongDelimiter:"**",linkStyle:"inlined",linkReferenceStyle:"full",br:" ",blankReplacement:function(t,e){return e.isBlock?"\n\n":""},keepReplacement:function(t,e){return e.isBlock?"\n\n"+e.outerHTML+"\n\n":e.outerHTML},defaultReplacement:function(t,e){return e.isBlock?"\n\n"+t+"\n\n":t}};this.options=Rj({},e,t);this.rules=new $j(this.options)}gH.prototype={turndown:function(t){if(!wH(t)){throw new TypeError(t+" is not a string, or an element/document/fragment node.")}if(t==="")return"";var e=mH.call(this,new nH(t));return fH.call(this,e)},use:function(t){if(Array.isArray(t)){for(var e=0;e<t.length;e++)this.use(t[e])}else if(typeof t==="function"){t(this)}else{throw new TypeError("plugin must be a Function or an Array of Functions")}return this},addRule:function(t,e){this.rules.add(t,e);return this},keep:function(t){this.rules.keep(t);return this},remove:function(t){this.rules.remove(t);return this},escape:function(t){return hH.reduce((function(t,e){return t.replace(e[0],e[1])}),t)}};function mH(t){var e=this;return lH.call(t.childNodes,(function(t,n){n=new rH(n);var i="";if(n.nodeType===3){i=n.isCode?n.nodeValue:e.escape(n.nodeValue)}else if(n.nodeType===1){i=pH.call(e,n)}return kH(t,i)}),"")}function fH(t){var e=this;this.rules.forEach((function(n){if(typeof n.append==="function"){t=kH(t,n.append(e.options))}}));return t.replace(/^[\t\r\n]+/,"").replace(/[\t\r\n\s]+$/,"")}function pH(t){var e=this.rules.forNode(t);var n=mH.call(this,t);var i=t.flankingWhitespace;if(i.leading||i.trailing)n=n.trim();return i.leading+e.replacement(n,t,this.options)+i.trailing}function bH(t,e){var n=[t.match(uH)[0],e.match(dH)[0]].sort();var i=n[n.length-1];return i.length<2?i:"\n\n"}function kH(t,e){var n=bH(t,e);t=t.replace(uH,"");e=e.replace(dH,"");return t+n+e}function wH(t){return t!=null&&(typeof t==="string"||t.nodeType&&(t.nodeType===1||t.nodeType===9||t.nodeType===11))}const AH=gH;var CH=/highlight-(?:text|source)-([a-z0-9]+)/;function _H(t){t.addRule("highlightedCodeBlock",{filter:function(t){var e=t.firstChild;return t.nodeName==="DIV"&&CH.test(t.className)&&e&&e.nodeName==="PRE"},replacement:function(t,e,n){var i=e.className||"";var o=(i.match(CH)||[null,""])[1];return"\n\n"+n.fence+o+"\n"+e.firstChild.textContent+"\n"+n.fence+"\n\n"}})}function vH(t){t.addRule("strikethrough",{filter:["del","s","strike"],replacement:function(t){return"~"+t+"~"}})}var yH=Array.prototype.indexOf;var xH=Array.prototype.every;var EH={};EH.tableCell={filter:["th","td"],replacement:function(t,e){return SH(t,e)}};EH.tableRow={filter:"tr",replacement:function(t,e){var n="";var i={left:":--",right:"--:",center:":-:"};if(DH(e)){for(var o=0;o<e.childNodes.length;o++){var r="---";var s=(e.childNodes[o].getAttribute("align")||"").toLowerCase();if(s)r=i[s]||r;n+=SH(r,e.childNodes[o])}}return"\n"+t+(n?"\n"+n:"")}};EH.table={filter:function(t){return t.nodeName==="TABLE"&&DH(t.rows[0])},replacement:function(t){t=t.replace("\n\n","\n");return"\n\n"+t+"\n\n"}};EH.tableSection={filter:["thead","tbody","tfoot"],replacement:function(t){return t}};function DH(t){var e=t.parentNode;return e.nodeName==="THEAD"||e.firstChild===t&&(e.nodeName==="TABLE"||TH(e))&&xH.call(t.childNodes,(function(t){return t.nodeName==="TH"}))}function TH(t){var e=t.previousSibling;return t.nodeName==="TBODY"&&(!e||e.nodeName==="THEAD"&&/^\s*$/i.test(e.textContent))}function SH(t,e){var n=yH.call(e.parentNode.childNodes,e);var i=" ";if(n===0)i="| ";return i+t+" |"}function IH(t){t.keep((function(t){return t.nodeName==="TABLE"&&!DH(t.rows[0])}));for(var e in EH)t.addRule(e,EH[e])}function BH(t){t.addRule("taskListItems",{filter:function(t){return t.type==="checkbox"&&t.parentNode.nodeName==="LI"},replacement:function(t,e){return(e.checked?"[x]":"[ ]")+" "}})}function MH(t){t.use([_H,vH,IH,BH])}const LH=AH.prototype.escape;function NH(t){t=LH(t);t=t.replace(/</g,"\\<");return t}AH.prototype.escape=function(t){let e="";let n=0;for(const i of VH(t)){const o=i.index;if(o>n){e+=NH(t.substring(n,o))}const r=i[0];e+=r;n=o+r.length}if(n<t.length){e+=NH(t.substring(n,t.length))}return e};const zH=new AH({codeBlockStyle:"fenced",hr:"---",headingStyle:"atx"});zH.use([MH,RH]);function PH(t){return zH.turndown(t)}function RH(t){t.addRule("taskListItems",{filter(t){return t.type==="checkbox"&&(t.parentNode.nodeName==="LI"||t.parentNode.parentNode.nodeName==="LI")},replacement(t,e){return(e.checked?"[x]":"[ ]")+" "}})}const OH=new RegExp(/\b(?:(?:https?|ftp):\/\/|www\.)/.source+/(?![-_])(?:[-_a-z0-9\u00a1-\uffff]{1,63}\.)+(?:[a-z\u00a1-\uffff]{2,63})/.source+/(?:[^\s<>]*)/.source,"gi");function*VH(t){for(const e of t.matchAll(OH)){const t=e[0];const n=FH(t);yield Object.assign([t.substring(0,n)],{index:e.index})}}function FH(t){let e=t.length;while(e>0){const n=t[e-1];if("?!.,:*_~'\"".includes(n)){e--}else if(n==")"){let n=0;for(let i=0;i<e;i++){if(t[i]=="("){n++}else if(t[i]==")"){n--}}if(n<0){e--}else{break}}else{break}}return e}class jH{constructor(t){this._htmlDP=new ww(t)}keepHtml(t){zH.keep([t])}toView(t){const e=Pj(t);return this._htmlDP.toView(e)}toData(t){const e=this._htmlDP.toData(t);return PH(e)}registerRawContentMatcher(t){this._htmlDP.registerRawContentMatcher(t)}useFillerType(){}}class HH extends eu{constructor(t){super(t);t.data.processor=new jH(t.data.viewDocument)}static get pluginName(){return"Markdown"}}function UH(t,e){return t=>{t.on("attribute:url:media",n)};function n(n,i,o){if(!o.consumable.consume(i.item,n.name)){return}const r=i.attributeNewValue;const s=o.writer;const a=o.mapper.toViewElement(i.item);const c=[...a.getChildren()].find((t=>t.getCustomProperty("media-content")));s.remove(c);const l=t.getMediaViewElement(s,r,e);s.insert(s.createPositionAt(a,0),l)}}function WH(t,e,n){e.setCustomProperty("media",true,t);return dD(t,e,{label:n})}function qH(t){const e=t.getSelectedElement();if(e&&$H(e)){return e}return null}function $H(t){return!!t.getCustomProperty("media")&&lD(t)}function GH(t,e,n,i){return t.createContainerElement("figure",{class:"media"},[e.getMediaViewElement(t,n,i),t.createSlot()])}function KH(t){const e=t.getSelectedElement();if(e&&e.is("element","media")){return e}return null}function YH(t,e,n,i){t.change((o=>{const r=o.createElement("media",{url:e});t.insertObject(r,n,null,{setSelection:"on",findOptimalPosition:i})}))}class ZH extends iu{refresh(){const t=this.editor.model;const e=t.document.selection;const n=KH(e);this.value=n?n.getAttribute("url"):null;this.isEnabled=JH(e)||QH(e,t)}execute(t){const e=this.editor.model;const n=e.document.selection;const i=KH(n);if(i){e.change((e=>{e.setAttribute("url",t,i)}))}else{YH(e,t,n,true)}}}function QH(t,e){const n=bD(t,e);let i=n.start.parent;if(i.isEmpty&&!e.schema.isLimit(i)){i=i.parent}return e.schema.checkChild(i,"media")}function JH(t){const e=t.getSelectedElement();return!!e&&e.name==="media"}const XH='<svg viewBox="0 0 64 42" xmlns="http://www.w3.org/2000/svg"><path d="M47.426 17V3.713L63.102 0v19.389h-.001l.001.272c0 1.595-2.032 3.43-4.538 4.098-2.506.668-4.538-.083-4.538-1.678 0-1.594 2.032-3.43 4.538-4.098.914-.244 2.032-.565 2.888-.603V4.516L49.076 7.447v9.556A1.014 1.014 0 0 0 49 17h-1.574zM29.5 17h-8.343a7.073 7.073 0 1 0-4.657 4.06v3.781H3.3a2.803 2.803 0 0 1-2.8-2.804V8.63a2.803 2.803 0 0 1 2.8-2.805h4.082L8.58 2.768A1.994 1.994 0 0 1 10.435 1.5h8.985c.773 0 1.477.448 1.805 1.149l1.488 3.177H26.7c1.546 0 2.8 1.256 2.8 2.805V17zm-11.637 0H17.5a1 1 0 0 0-1 1v.05A4.244 4.244 0 1 1 17.863 17zm29.684 2c.97 0 .953-.048.953.889v20.743c0 .953.016.905-.953.905H19.453c-.97 0-.953.048-.953-.905V19.89c0-.937-.016-.889.97-.889h28.077zm-4.701 19.338V22.183H24.154v16.155h18.692zM20.6 21.375v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616V37.53H20.6zm24.233-16.155v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615V37.53h-1.615zM29.485 25.283a.4.4 0 0 1 .593-.35l9.05 4.977a.4.4 0 0 1 0 .701l-9.05 4.978a.4.4 0 0 1-.593-.35v-9.956z"/></svg>';const tU="0 0 64 42";class eU{constructor(t,e){const n=e.providers;const i=e.extraProviders||[];const o=new Set(e.removeProviders);const r=n.concat(i).filter((t=>{const e=t.name;if(!e){P("media-embed-no-provider-name",{provider:t});return false}return!o.has(e)}));this.locale=t;this.providerDefinitions=r}hasMedia(t){return!!this._getMedia(t)}getMediaViewElement(t,e,n){return this._getMedia(e).getViewElement(t,n)}_getMedia(t){if(!t){return new nU(this.locale)}t=t.trim();for(const e of this.providerDefinitions){const n=e.html;const i=Xc(e.url);for(const e of i){const i=this._getUrlMatches(t,e);if(i){return new nU(this.locale,t,i,n)}}}return null}_getUrlMatches(t,e){let n=t.match(e);if(n){return n}let i=t.replace(/^https?:\/\//,"");n=i.match(e);if(n){return n}i=i.replace(/^www\./,"");n=i.match(e);if(n){return n}return null}}class nU{constructor(t,e,n,i){this.url=this._getValidUrl(e);this._locale=t;this._match=n;this._previewRenderer=i}getViewElement(t,e){const n={};let i;if(e.renderForEditingView||e.renderMediaPreview&&this.url&&this._previewRenderer){if(this.url){n["data-oembed-url"]=this.url}if(e.renderForEditingView){n.class="ck-media__wrapper"}const o=this._getPreviewHtml(e);i=t.createRawElement("div",n,((t,e)=>{e.setContentOf(t,o)}))}else{if(this.url){n.url=this.url}i=t.createEmptyElement(e.elementName,n)}t.setCustomProperty("media-content",true,i);return i}_getPreviewHtml(t){if(this._previewRenderer){return this._previewRenderer(this._match)}else{if(this.url&&t.renderForEditingView){return this._getPlaceholderHtml()}return""}}_getPlaceholderHtml(){const t=new gd;const e=this._locale.t;t.content=XH;t.viewBox=tU;const n=new zl({tag:"div",attributes:{class:"ck ck-reset_all ck-media__placeholder"},children:[{tag:"div",attributes:{class:"ck-media__placeholder__icon"},children:[t]},{tag:"a",attributes:{class:"ck-media__placeholder__url",target:"_blank",rel:"noopener noreferrer",href:this.url,"data-cke-tooltip-text":e("Open media in new tab")},children:[{tag:"span",attributes:{class:"ck-media__placeholder__url__text"},children:[this.url]}]}]}).render();return n.outerHTML}_getValidUrl(t){if(!t){return null}if(t.match(/^https?/)){return t}return"https://"+t}}var iU=n(952);var oU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};oU.insert="head";oU.singleton=true;var rU=Tl()(iU.Z,oU);const sU=iU.Z.locals||{};class aU extends eu{static get pluginName(){return"MediaEmbedEditing"}constructor(t){super(t);t.config.define("mediaEmbed",{elementName:"oembed",providers:[{name:"dailymotion",url:/^dailymotion\.com\/video\/(\w+)/,html:t=>{const e=t[1];return'<div style="position: relative; padding-bottom: 100%; height: 0; ">'+`<iframe src="https://www.dailymotion.com/embed/video/${e}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" width="480" height="270" allowfullscreen allow="autoplay">'+"</iframe>"+"</div>"}},{name:"spotify",url:[/^open\.spotify\.com\/(artist\/\w+)/,/^open\.spotify\.com\/(album\/\w+)/,/^open\.spotify\.com\/(track\/\w+)/],html:t=>{const e=t[1];return'<div style="position: relative; padding-bottom: 100%; height: 0; padding-bottom: 126%;">'+`<iframe src="https://open.spotify.com/embed/${e}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" allowtransparency="true" allow="encrypted-media">'+"</iframe>"+"</div>"}},{name:"youtube",url:[/^(?:m\.)?youtube\.com\/watch\?v=([\w-]+)(?:&t=(\d+))?/,/^(?:m\.)?youtube\.com\/v\/([\w-]+)(?:\?t=(\d+))?/,/^youtube\.com\/embed\/([\w-]+)(?:\?start=(\d+))?/,/^youtu\.be\/([\w-]+)(?:\?t=(\d+))?/],html:t=>{const e=t[1];const n=t[2];return'<div style="position: relative; padding-bottom: 100%; height: 0; padding-bottom: 56.2493%;">'+`<iframe src="https://www.youtube.com/embed/${e}${n?`?start=${n}`:""}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" allow="autoplay; encrypted-media" allowfullscreen>'+"</iframe>"+"</div>"}},{name:"vimeo",url:[/^vimeo\.com\/(\d+)/,/^vimeo\.com\/[^/]+\/[^/]+\/video\/(\d+)/,/^vimeo\.com\/album\/[^/]+\/video\/(\d+)/,/^vimeo\.com\/channels\/[^/]+\/(\d+)/,/^vimeo\.com\/groups\/[^/]+\/videos\/(\d+)/,/^vimeo\.com\/ondemand\/[^/]+\/(\d+)/,/^player\.vimeo\.com\/video\/(\d+)/],html:t=>{const e=t[1];return'<div style="position: relative; padding-bottom: 100%; height: 0; padding-bottom: 56.2493%;">'+`<iframe src="https://player.vimeo.com/video/${e}" `+'style="position: absolute; width: 100%; height: 100%; top: 0; left: 0;" '+'frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen>'+"</iframe>"+"</div>"}},{name:"instagram",url:/^instagram\.com\/p\/(\w+)/},{name:"twitter",url:/^twitter\.com/},{name:"googleMaps",url:[/^google\.com\/maps/,/^goo\.gl\/maps/,/^maps\.google\.com/,/^maps\.app\.goo\.gl/]},{name:"flickr",url:/^flickr\.com/},{name:"facebook",url:/^facebook\.com/}]});this.registry=new eU(t.locale,t.config.get("mediaEmbed"))}init(){const t=this.editor;const e=t.model.schema;const n=t.t;const i=t.conversion;const o=t.config.get("mediaEmbed.previewsInData");const r=t.config.get("mediaEmbed.elementName");const s=this.registry;t.commands.add("mediaEmbed",new ZH(t));e.register("media",{inheritAllFrom:"$blockObject",allowAttributes:["url"]});i.for("dataDowncast").elementToStructure({model:"media",view:(t,{writer:e})=>{const n=t.getAttribute("url");return GH(e,s,n,{elementName:r,renderMediaPreview:n&&o})}});i.for("dataDowncast").add(UH(s,{elementName:r,renderMediaPreview:o}));i.for("editingDowncast").elementToStructure({model:"media",view:(t,{writer:e})=>{const i=t.getAttribute("url");const o=GH(e,s,i,{elementName:r,renderForEditingView:true});return WH(o,e,n("media widget"))}});i.for("editingDowncast").add(UH(s,{elementName:r,renderForEditingView:true}));i.for("upcast").elementToElement({view:t=>["oembed",r].includes(t.name)&&t.getAttribute("url")?{name:true}:null,model:(t,{writer:e})=>{const n=t.getAttribute("url");if(s.hasMedia(n)){return e.createElement("media",{url:n})}}}).elementToElement({view:{name:"div",attributes:{"data-oembed-url":true}},model:(t,{writer:e})=>{const n=t.getAttribute("data-oembed-url");if(s.hasMedia(n)){return e.createElement("media",{url:n})}}}).add((t=>{t.on("element:figure",e);function e(t,e,n){if(!n.consumable.consume(e.viewItem,{name:true,classes:"media"})){return}const{modelRange:i,modelCursor:o}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=i;e.modelCursor=o;const r=dl(i.getItems());if(!r){n.consumable.revert(e.viewItem,{name:true,classes:"media"})}}}))}}const cU=/^(?:http(s)?:\/\/)?[\w-]+\.[\w-.~:/?#[\]@!$&'()*+,;=%]+$/;class lU extends eu{static get requires(){return[OT,oE,KT]}static get pluginName(){return"AutoMediaEmbed"}constructor(t){super(t);this._timeoutId=null;this._positionToInsert=null}init(){const t=this.editor;const e=t.model.document;this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",(()=>{const t=e.selection.getFirstRange();const n=sA.fromPosition(t.start);n.stickiness="toPrevious";const i=sA.fromPosition(t.end);i.stickiness="toNext";e.once("change:data",(()=>{this._embedMediaBetweenPositions(n,i);n.detach();i.detach()}),{priority:"high"})}));t.commands.get("undo").on("execute",(()=>{if(this._timeoutId){ic.window.clearTimeout(this._timeoutId);this._positionToInsert.detach();this._timeoutId=null;this._positionToInsert=null}}),{priority:"high"})}_embedMediaBetweenPositions(t,e){const n=this.editor;const i=n.plugins.get(aU).registry;const o=new kb(t,e);const r=o.getWalker({ignoreElementEnd:true});let s="";for(const t of r){if(t.item.is("$textProxy")){s+=t.item.data}}s=s.trim();if(!s.match(cU)){o.detach();return}if(!i.hasMedia(s)){o.detach();return}const a=n.commands.get("mediaEmbed");if(!a.isEnabled){o.detach();return}this._positionToInsert=sA.fromPosition(t);this._timeoutId=ic.window.setTimeout((()=>{n.model.change((t=>{this._timeoutId=null;t.remove(o);o.detach();let e;if(this._positionToInsert.root.rootName!=="$graveyard"){e=this._positionToInsert}YH(n.model,s,e,false);this._positionToInsert.detach();this._positionToInsert=null}));n.plugins.get("Delete").requestUndoOnBackspace()}),100)}}var dU=n(3525);var uU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};uU.insert="head";uU.singleton=true;var hU=Tl()(dU.Z,uU);const gU=dU.Z.locals||{};class mU extends Ll{constructor(t,n){super(n);const i=n.t;this.focusTracker=new ul;this.keystrokes=new hl;this.set("mediaURLInputValue","");this.urlInputView=this._createUrlInput();this.saveButtonView=this._createButton(i("Save"),J_.check,"ck-button-save");this.saveButtonView.type="submit";this.saveButtonView.bind("isEnabled").to(this,"mediaURLInputValue",(t=>!!t));this.cancelButtonView=this._createButton(i("Cancel"),J_.cancel,"ck-button-cancel","cancel");this._focusables=new xl;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this._validators=t;this.setTemplate({tag:"form",attributes:{class:["ck","ck-media-form","ck-responsive-form"],tabindex:"-1"},children:[this.urlInputView,this.saveButtonView,this.cancelButtonView]});e(this)}render(){super.render();o({view:this});const t=[this.urlInputView,this.saveButtonView,this.cancelButtonView];t.forEach((t=>{this._focusables.add(t);this.focusTracker.add(t.element)}));this.keystrokes.listenTo(this.element);const e=t=>t.stopPropagation();this.keystrokes.set("arrowright",e);this.keystrokes.set("arrowleft",e);this.keystrokes.set("arrowup",e);this.keystrokes.set("arrowdown",e);this.listenTo(this.urlInputView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}get url(){return this.urlInputView.fieldView.element.value.trim()}set url(t){this.urlInputView.fieldView.element.value=t.trim()}isValid(){this.resetFormStatus();for(const t of this._validators){const e=t(this);if(e){this.urlInputView.errorText=e;return false}}return true}resetFormStatus(){this.urlInputView.errorText=null;this.urlInputView.infoText=this._urlInputViewInfoDefault}_createUrlInput(){const t=this.locale.t;const e=new Ly(this.locale,Ny);const n=e.fieldView;this._urlInputViewInfoDefault=t("Paste the media URL in the input.");this._urlInputViewInfoTip=t("Tip: Paste the URL into the content to embed faster.");e.label=t("Media URL");e.infoText=this._urlInputViewInfoDefault;n.on("input",(()=>{e.infoText=n.element.value?this._urlInputViewInfoTip:this._urlInputViewInfoDefault;this.mediaURLInputValue=n.element.value.trim()}));return e}_createButton(t,e,n,i){const o=new kd(this.locale);o.set({label:t,icon:e,tooltip:true});o.extendTemplate({attributes:{class:n}});if(i){o.delegate("execute").to(this,i)}return o}}const fU='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M18.68 3.03c.6 0 .59-.03.59.55v12.84c0 .59.01.56-.59.56H1.29c-.6 0-.59.03-.59-.56V3.58c0-.58-.01-.55.6-.55h17.38zM15.77 15V5H4.2v10h11.57zM2 4v1h1V4H2zm0 2v1h1V6H2zm0 2v1h1V8H2zm0 2v1h1v-1H2zm0 2v1h1v-1H2zm0 2v1h1v-1H2zM17 4v1h1V4h-1zm0 2v1h1V6h-1zm0 2v1h1V8h-1zm0 2v1h1v-1h-1zm0 2v1h1v-1h-1zm0 2v1h1v-1h-1zM7.5 7.177a.4.4 0 0 1 .593-.351l5.133 2.824a.4.4 0 0 1 0 .7l-5.133 2.824a.4.4 0 0 1-.593-.35V7.176v.001z"/></svg>';class pU extends eu{static get requires(){return[aU]}static get pluginName(){return"MediaEmbedUI"}init(){const t=this.editor;const e=t.commands.get("mediaEmbed");t.ui.componentFactory.add("mediaEmbed",(t=>{const n=yv(t);this._setUpDropdown(n,e);return n}))}_setUpDropdown(t,e){const n=this.editor;const i=n.t;const o=t.buttonView;const r=n.plugins.get(aU).registry;t.once("change:isOpen",(()=>{const i=new mU(bU(n.t,r),n.locale);t.panelView.children.add(i);o.on("open",(()=>{i.disableCssTransitions();i.url=e.value||"";i.urlInputView.fieldView.select();i.enableCssTransitions()}),{priority:"low"});t.on("submit",(()=>{if(i.isValid()){n.execute("mediaEmbed",i.url);n.editing.view.focus()}}));t.on("change:isOpen",(()=>i.resetFormStatus()));t.on("cancel",(()=>{n.editing.view.focus()}));i.delegate("submit","cancel").to(t);i.urlInputView.bind("value").to(e,"value");i.urlInputView.bind("isReadOnly").to(e,"isEnabled",(t=>!t))}));t.bind("isEnabled").to(e);o.set({label:i("Insert media"),icon:fU,tooltip:true})}}function bU(t,e){return[e=>{if(!e.url.length){return t("The URL must not be empty.")}},n=>{if(!e.hasMedia(n.url)){return t("This media URL is not supported.")}}]}var kU=n(5777);var wU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};wU.insert="head";wU.singleton=true;var AU=Tl()(kU.Z,wU);const CU=kU.Z.locals||{};class _U extends eu{static get requires(){return[aU,pU,lU,ZD]}static get pluginName(){return"MediaEmbed"}}class vU extends eu{static get requires(){return[XD]}static get pluginName(){return"MediaEmbedToolbar"}afterInit(){const t=this.editor;const e=t.t;const n=t.plugins.get(XD);n.register("mediaEmbed",{ariaLabel:e("Media toolbar"),items:t.config.get("mediaEmbed.toolbar")||[],getRelatedElement:qH})}}class yU extends iu{refresh(){const t=this.editor.model;const e=t.schema;const n=t.document.selection;this.isEnabled=xU(n,e,t)}execute(){const t=this.editor.model;t.change((e=>{const n=e.createElement("pageBreak");t.insertObject(n,null,null,{setSelection:"after"})}))}}function xU(t,e,n){const i=EU(t,n);return e.checkChild(i,"pageBreak")}function EU(t,e){const n=bD(t,e);const i=n.start.parent;if(i.isEmpty&&!i.is("element","$root")){return i.parent}return i}var DU=n(6448);var TU={injectType:"singletonStyleTag",attributes:{"data-cke":true}};TU.insert="head";TU.singleton=true;var SU=Tl()(DU.Z,TU);const IU=DU.Z.locals||{};class BU extends eu{static get pluginName(){return"PageBreakEditing"}init(){const t=this.editor;const e=t.model.schema;const n=t.t;const i=t.conversion;e.register("pageBreak",{inheritAllFrom:"$blockObject"});i.for("dataDowncast").elementToStructure({model:"pageBreak",view:(t,{writer:e})=>{const n=e.createContainerElement("div",{class:"page-break",style:"page-break-after: always"},e.createContainerElement("span",{style:"display: none"}));return n}});i.for("editingDowncast").elementToStructure({model:"pageBreak",view:(t,{writer:e})=>{const i=n("Page break");const o=e.createContainerElement("div");const r=e.createRawElement("span",{class:"page-break__label"},(function(t){t.innerText=n("Page break")}));e.addClass("page-break",o);e.insert(e.createPositionAt(o,0),r);return MU(o,e,i)}});i.for("upcast").elementToElement({view:t=>{const e=t.getStyle("page-break-before")=="always";const n=t.getStyle("page-break-after")=="always";if(!e&&!n){return null}if(t.childCount==1){const e=t.getChild(0);if(!e.is("element","span")||e.getStyle("display")!="none"){return null}}else if(t.childCount>1){return null}return{name:true}},model:"pageBreak",converterPriority:"high"});t.commands.add("pageBreak",new yU(t))}}function MU(t,e,n){e.setCustomProperty("pageBreak",true,t);return dD(t,e,{label:n})}const LU='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3.598.687h1.5v5h-1.5zm14.5 0h1.5v5h-1.5z"/><path d="M19.598 4.187v1.5h-16v-1.5zm-16 14.569h1.5v-5h-1.5zm14.5 0h1.5v-5h-1.5z"/><path d="M19.598 15.256v-1.5h-16v1.5zM5.081 9h6v2h-6zm8 0h6v2h-6zm-9.483 1L0 12.5v-5z"/></svg>';class NU extends eu{static get pluginName(){return"PageBreakUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("pageBreak",(n=>{const i=t.commands.get("pageBreak");const o=new kd(n);o.set({label:e("Page break"),icon:LU,tooltip:true});o.bind("isEnabled").to(i,"isEnabled");this.listenTo(o,"execute",(()=>{t.execute("pageBreak");t.editing.view.focus()}));return o}))}}class zU extends eu{static get requires(){return[BU,NU,ZD]}static get pluginName(){return"PageBreak"}}function PU(t,e){for(const n of t.getChildren()){if(n.is("element","b")&&n.getStyle("font-weight")==="normal"){const i=t.getChildIndex(n);e.remove(n);e.insertChild(i,n.getChildren(),t)}}}function RU(t,e){const n=new Zg(e.document.stylesProcessor);const i=new Jm(n,{renderingMode:"data"});const o=i.blockElements;const r=i.inlineObjectElements;const s=[];for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","br")){const n=OU(t,"forward",e,{blockElements:o,inlineObjectElements:r});const i=OU(t,"backward",e,{blockElements:o,inlineObjectElements:r});const a=VU(n,o);const c=VU(i,o);if(c||a){s.push(t)}}}for(const t of s){if(t.hasClass("Apple-interchange-newline")){e.remove(t)}else{e.replace(t,e.createElement("p"))}}}function OU(t,e,n,{blockElements:i,inlineObjectElements:o}){let r=n.createPositionAt(t,e=="forward"?"after":"before");r=r.getLastMatchingPosition((({item:t})=>t.is("element")&&!i.includes(t.name)&&!o.includes(t.name)),{direction:e});return e=="forward"?r.nodeAfter:r.nodeBefore}function VU(t,e){return!!t&&t.is("element")&&e.includes(t.name)}function FU(t,e){if(!t.childCount){return}const n=new kC(t.document);const i=HU(t,n);if(!i.length){return}let o=null;let r=1;i.forEach(((t,s)=>{const a=QU(i[s-1],t);const c=a?null:i[s-1];const l=XU(c,t);if(a){o=null;r=1}if(!o||l!==0){const i=UU(t,e);if(!o){o=GU(i,t.element,n)}else if(t.indent>r){const t=o.getChild(o.childCount-1);const e=t.getChild(t.childCount-1);o=GU(i,e,n);r+=1}else if(t.indent<r){const e=r-t.indent;o=tW(o,e);r=t.indent}if(t.indent<=r){if(!o.is("element",i.type)){o=n.rename(i.type,o)}}}const d=KU(t.element,n);n.appendChild(d,o)}))}function jU(t,e){for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","li")){const n=t.getChild(0);if(n&&n.is("element","p")){e.unwrapElement(n)}}}}function HU(t,e){const n=e.createRangeIn(t);const i=new Su({name:/^p|h\d+$/,styles:{"mso-list":/.*/}});const o=[];for(const t of n){if(t.type==="elementStart"&&i.match(t.item)){const e=YU(t.item);o.push({element:t.item,id:e.id,order:e.order,indent:e.indent})}}return o}function UU(t,e){const n=new RegExp(`@list l${t.id}:level${t.indent}\\s*({[^}]*)`,"gi");const i=/mso-level-number-format:([^;]{0,100});/gi;const o=/mso-level-start-at:\s{0,100}([0-9]{0,10})\s{0,100};/gi;const r=n.exec(e);let s="decimal";let a="ol";let c=null;if(r&&r[1]){const e=i.exec(r[1]);if(e&&e[1]){s=e[1].trim();a=s!=="bullet"&&s!=="image"?"ol":"ul"}if(s==="bullet"){const e=WU(t.element);if(e){s=e}}else{const t=o.exec(r[1]);if(t&&t[1]){c=parseInt(t[1])}}}return{type:a,startIndex:c,style:$U(s)}}function WU(t){const e=qU(t);if(!e){return null}const n=e._data;if(n==="o"){return"circle"}else if(n==="·"){return"disc"}else if(n==="§"){return"square"}return null}function qU(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.is("$text")){return t}return t.getChild(0)}return null}function $U(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 GU(t,e,n){const i=e.parent;const o=n.createElement(t.type);const r=i.getChildIndex(e)+1;n.insertChild(r,o,i);if(t.style){n.setStyle("list-style-type",t.style,o)}if(t.startIndex&&t.startIndex>1){n.setAttribute("start",t.startIndex,o)}return o}function KU(t,e){ZU(t,e);return e.rename("li",t)}function YU(t){const e={};const n=t.getStyle("mso-list");if(n){const t=n.match(/(^|\s{1,100})l(\d+)/i);const i=n.match(/\s{0,100}lfo(\d+)/i);const o=n.match(/\s{0,100}level(\d+)/i);if(t&&i&&o){e.id=t[2];e.order=i[1];e.indent=parseInt(o[1])}}return e}function ZU(t,e){const n=new Su({name:"span",styles:{"mso-list":"Ignore"}});const i=e.createRangeIn(t);for(const t of i){if(t.type==="elementStart"&&n.match(t.item)){e.remove(t.item)}}}function QU(t,e){if(!t){return true}if(t.id!==e.id){if(e.indent-t.indent===1){return false}return true}const n=e.element.previousSibling;if(!n){return true}return!JU(n)}function JU(t){return t.is("element","ol")||t.is("element","ul")}function XU(t,e){return t?e.indent-t.indent:e.indent-1}function tW(t,e){const n=t.getAncestors({parentFirst:true});let i=null;let o=0;for(const t of n){if(t.is("element","ul")||t.is("element","ol")){o++}if(o===e){i=t;break}}return i}const eW=/id=("|')docs-internal-guid-[-0-9a-f]+("|')/i;class nW{constructor(t){this.document=t}isActive(t){return eW.test(t)}execute(t){const e=new kC(this.document);const{body:n}=t._parsedData;PU(n,e);jU(n,e);RU(n,e);t.content=n}}function iW(t,e){if(!t.childCount){return}const n=new kC(t.document);const i=rW(t,n);sW(i,t,n);cW(i,t,n);aW(t,n);const o=lW(t,n);if(o.length){uW(o,dW(e),n)}}function oW(t){return btoa(t.match(/\w{2}/g).map((t=>String.fromCharCode(parseInt(t,16)))).join(""))}function rW(t,e){const n=e.createRangeIn(t);const i=new Su({name:/v:(.+)/});const o=[];for(const t of n){if(t.type!="elementStart"){continue}const e=t.item;const n=e.previousSibling;const r=n&&n.is("element")?n.name:null;if(i.match(e)&&e.getAttribute("o:gfxdata")&&r!=="v:shapetype"){o.push(t.item.getAttribute("id"))}}return o}function sW(t,e,n){const i=n.createRangeIn(e);const o=new Su({name:"img"});const r=[];for(const e of i){if(e.item.is("element")&&o.match(e.item)){const n=e.item;const i=n.getAttribute("v:shapes")?n.getAttribute("v:shapes").split(" "):[];if(i.length&&i.every((e=>t.indexOf(e)>-1))){r.push(n)}else if(!n.getAttribute("src")){r.push(n)}}}for(const t of r){n.remove(t)}}function aW(t,e){const n=e.createRangeIn(t);const i=new Su({name:/v:(.+)/});const o=[];for(const t of n){if(t.type=="elementStart"&&i.match(t.item)){o.push(t.item)}}for(const t of o){e.remove(t)}}function cW(t,e,n){const i=n.createRangeIn(e);const o=[];for(const e of i){if(e.type=="elementStart"&&e.item.is("element","v:shape")){const n=e.item.getAttribute("id");if(t.includes(n)){continue}if(!r(e.item.parent.getChildren(),n)){o.push(e.item)}}}for(const t of o){const e={src:s(t)};if(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(n.name=="img"&&n.getAttribute("v:shapes")==e){return true}if(r(n.getChildren(),e)){return true}}}return false}function s(t){for(const e of t.getChildren()){if(e.is("element")&&e.getAttribute("src")){return e.getAttribute("src")}}}}function lW(t,e){const n=e.createRangeIn(t);const i=new Su({name:"img"});const o=[];for(const t of n){if(t.item.is("element")&&i.match(t.item)){if(t.item.getAttribute("src").startsWith("file://")){o.push(t.item)}}}return o}function dW(t){if(!t){return[]}const e=/{\\pict[\s\S]+?\\bliptag-?\d+(\\blipupi-?\d+)?({\\\*\\blipuid\s?[\da-fA-F]+)?[\s}]*?/;const n=new RegExp("(?:("+e.source+"))([\\da-fA-F\\s]+)\\}","g");const i=t.match(n);const o=[];if(i){for(const t of i){let n=false;if(t.includes("\\pngblip")){n="image/png"}else if(t.includes("\\jpegblip")){n="image/jpeg"}if(n){o.push({hex:t.replace(e,"").replace(/[^\da-fA-F]/g,""),type:n})}}}return o}function uW(t,e,n){if(t.length===e.length){for(let i=0;i<t.length;i++){const o=`data:${e[i].type};base64,${oW(e[i].hex)}`;n.setAttribute("src",o,t[i])}}}const hW=/<meta\s*name="?generator"?\s*content="?microsoft\s*word\s*\d+"?\/?>/i;const gW=/xmlns:o="urn:schemas-microsoft-com/i;class mW{constructor(t){this.document=t}isActive(t){return hW.test(t)||gW.test(t)}execute(t){const{body:e,stylesString:n}=t._parsedData;FU(e,n);iW(e,t.dataTransfer.getData("text/rtf"));t.content=e}}function fW(t){return bW(bW(t)).replace(/(<span\s+style=['"]mso-spacerun:yes['"]>[^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<span\s+style=['"]mso-spacerun:yes['"]><\/span>/g,"").replace(/ <\//g," </").replace(/ <o:p><\/o:p>/g," <o:p></o:p>").replace(/<o:p>(&nbsp;|\u00A0)<\/o:p>/g,"").replace(/>([^\S\r\n]*[\r\n]\s*)</g,"><")}function pW(t){t.querySelectorAll("span[style*=spacerun]").forEach((t=>{const e=t;const n=e.innerText.length||0;e.innerText=Array(n+1).join("  ").substr(0,n)}))}function bW(t){return t.replace(/<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g,((t,e)=>e.length===1?" ":Array(e.length+1).join("  ").substr(0,e.length)))}function kW(t,e){const n=new DOMParser;t=t.replace(/<!--\[if gte vml 1]>/g,"");const i=fW(CW(t));const o=n.parseFromString(i,"text/html");pW(o);const r=o.body.innerHTML;const s=wW(o,e);const a=AW(o);return{body:s,bodyString:r,styles:a.styles,stylesString:a.stylesString}}function wW(t,e){const n=new Zg(e);const i=new Jm(n,{renderingMode:"data"});const o=t.createDocumentFragment();const r=t.body.childNodes;while(r.length>0){o.appendChild(r[0])}return i.domToView(o,{skipComments:true})}function AW(t){const e=[];const n=[];const i=Array.from(t.getElementsByTagName("style"));for(const t of i){if(t.sheet&&t.sheet.cssRules&&t.sheet.cssRules.length){e.push(t.sheet);n.push(t.innerHTML)}}return{styles:e,stylesString:n.join(" ")}}function CW(t){const e="</body>";const n="</html>";const 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):"")}class _W extends eu{static get pluginName(){return"PasteFromOffice"}static get requires(){return[UE]}init(){const t=this.editor;const e=t.editing.view.document;const n=[];n.push(new mW(e));n.push(new nW(e));t.plugins.get("ClipboardPipeline").on("inputTransformation",((i,o)=>{if(o._isTransformedWithPasteFromOffice){return}const r=t.model.document.selection.getFirstPosition().parent;if(r.is("element","codeBlock")){return}const s=o.dataTransfer.getData("text/html");const a=n.find((t=>t.isActive(s)));if(a){o._parsedData=kW(s,e.stylesProcessor);a.execute(o);o._isTransformedWithPasteFromOffice=true}}),{priority:"high"})}}const vW='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M8.69 14.915c.053.052.173.083.36.093a.366.366 0 0 1 .345.485l-.003.01a.738.738 0 0 1-.697.497h-2.67a.374.374 0 0 1-.353-.496l.013-.038a.681.681 0 0 1 .644-.458c.197-.012.325-.043.386-.093a.28.28 0 0 0 .072-.11L9.592 4.5H6.269c-.359-.017-.609.013-.75.09-.142.078-.289.265-.442.563-.192.29-.516.464-.864.464H4.17a.43.43 0 0 1-.407-.569L4.46 3h13.08l-.62 2.043a.81.81 0 0 1-.775.574h-.114a.486.486 0 0 1-.486-.486c.001-.284-.054-.464-.167-.54-.112-.076-.367-.106-.766-.091h-3.28l-2.68 10.257c-.006.074.007.127.038.158zM3 17h8a.5.5 0 1 1 0 1H3a.5.5 0 1 1 0-1zm11.299 1.17a.75.75 0 1 1-1.06-1.06l1.414-1.415-1.415-1.414a.75.75 0 0 1 1.06-1.06l1.415 1.414 1.414-1.415a.75.75 0 1 1 1.06 1.06l-1.413 1.415 1.414 1.415a.75.75 0 0 1-1.06 1.06l-1.415-1.414-1.414 1.414z"/></svg>';const yW="removeFormat";class xW extends eu{static get pluginName(){return"RemoveFormatUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(yW,(n=>{const i=t.commands.get(yW);const o=new kd(n);o.set({label:e("Remove Format"),icon:vW,tooltip:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(yW);t.editing.view.focus()}));return o}))}}class EW extends iu{refresh(){const t=this.editor.model;this.isEnabled=!!dl(this._getFormattingItems(t.document.selection,t.schema))}execute(){const t=this.editor.model;const e=t.schema;t.change((n=>{for(const i of this._getFormattingItems(t.document.selection,e)){if(i.is("selection")){for(const t of this._getFormattingAttributes(i,e)){n.removeSelectionAttribute(t)}}else{const t=n.createRangeOn(i);for(const o of this._getFormattingAttributes(i,e)){n.removeAttribute(o,t)}}}}))}*_getFormattingItems(t,e){const n=t=>!!dl(this._getFormattingAttributes(t,e));for(const i of t.getRanges()){for(const t of i.getItems()){if(!e.isBlock(t)&&n(t)){yield t}}}for(const e of t.getSelectedBlocks()){if(n(e)){yield e}}if(n(t)){yield t}}*_getFormattingAttributes(t,e){for(const[n]of t.getAttributes()){const t=e.getAttributeProperties(n);if(t&&t.isFormatting){yield n}}}}class DW extends eu{static get pluginName(){return"RemoveFormatEditing"}init(){const t=this.editor;t.commands.add("removeFormat",new EW(t))}}class TW extends eu{static get requires(){return[DW,xW]}static get pluginName(){return"RemoveFormat"}}function SW(t){const e=[{name:"address",isVoid:false},{name:"article",isVoid:false},{name:"aside",isVoid:false},{name:"blockquote",isVoid:false},{name:"br",isVoid:true},{name:"details",isVoid:false},{name:"dialog",isVoid:false},{name:"dd",isVoid:false},{name:"div",isVoid:false},{name:"dl",isVoid:false},{name:"dt",isVoid:false},{name:"fieldset",isVoid:false},{name:"figcaption",isVoid:false},{name:"figure",isVoid:false},{name:"footer",isVoid:false},{name:"form",isVoid:false},{name:"h1",isVoid:false},{name:"h2",isVoid:false},{name:"h3",isVoid:false},{name:"h4",isVoid:false},{name:"h5",isVoid:false},{name:"h6",isVoid:false},{name:"header",isVoid:false},{name:"hgroup",isVoid:false},{name:"hr",isVoid:true},{name:"input",isVoid:true},{name:"li",isVoid:false},{name:"main",isVoid:false},{name:"nav",isVoid:false},{name:"ol",isVoid:false},{name:"p",isVoid:false},{name:"section",isVoid:false},{name:"table",isVoid:false},{name:"tbody",isVoid:false},{name:"td",isVoid:false},{name:"textarea",isVoid:false},{name:"th",isVoid:false},{name:"thead",isVoid:false},{name:"tr",isVoid:false},{name:"ul",isVoid:false}];const n=e.map((t=>t.name)).join("|");const i=t.replace(new RegExp(`</?(${n})( .*?)?>`,"g"),"\n$&\n").split("\n");let o=0;return i.filter((t=>t.length)).map((t=>{if(IW(t,e)){return MW(t,o++)}if(BW(t,e)){return MW(t,--o)}return MW(t,o)})).join("\n")}function IW(t,e){return e.some((e=>{if(e.isVoid){return false}if(!new RegExp(`<${e.name}( .*?)?>`).test(t)){return false}return true}))}function BW(t,e){return e.some((e=>new RegExp(`</${e.name}>`).test(t)))}function MW(t,e,n=" "){return`${n.repeat(Math.max(0,e))}${t}`}var LW=n(671);var NW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};NW.insert="head";NW.singleton=true;var zW=Tl()(LW.Z,NW);const PW=LW.Z.locals||{};const RW='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.5 0 5 4.5v15.003h-16V0h11zM3 1.5v3.25l-1.497 1-.003 8 1.5 1v3.254L7.685 18l-.001 1.504H17.5V8.002L16 9.428l-.004-4.22-4.222-3.692L3 1.5z"/><path d="M4.06 6.64a.75.75 0 0 1 .958 1.15l-.085.07L2.29 9.75l2.646 1.89c.302.216.4.62.232.951l-.058.095a.75.75 0 0 1-.951.232l-.095-.058-3.5-2.5V9.14l3.496-2.5zm4.194 6.22a.75.75 0 0 1-.958-1.149l.085-.07 2.643-1.89-2.646-1.89a.75.75 0 0 1-.232-.952l.058-.095a.75.75 0 0 1 .95-.232l.096.058 3.5 2.5v1.22l-3.496 2.5zm7.644-.836 2.122 2.122-5.825 5.809-2.125-.005.003-2.116zm2.539-1.847 1.414 1.414a.5.5 0 0 1 0 .707l-1.06 1.06-2.122-2.12 1.061-1.061a.5.5 0 0 1 .707 0z"/></svg>';const OW="SourceEditingMode";class VW extends eu{static get pluginName(){return"SourceEditing"}static get requires(){return[b_]}constructor(t){super(t);this.set("isSourceEditingMode",false);this._elementReplacer=new xt;this._replacedRoots=new Map;this._dataFromRoots=new Map}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add("sourceEditing",(n=>{const i=new kd(n);i.set({label:e("Source"),icon:RW,tooltip:true,withText:true,class:"ck-source-editing-button"});i.bind("isOn").to(this,"isSourceEditingMode");i.bind("isEnabled").to(this,"isEnabled",t,"isReadOnly",t.plugins.get(b_),"hasAny",((t,e,n)=>{if(!t){return false}if(e){return false}if(n){return false}return true}));this.listenTo(i,"execute",(()=>{this.isSourceEditingMode=!this.isSourceEditingMode}));return i}));if(this._isAllowedToHandleSourceEditingMode()){this.on("change:isSourceEditingMode",((t,e,n)=>{if(n){this._showSourceEditing();this._disableCommands()}else{this._hideSourceEditing();this._enableCommands()}}));this.on("change:isEnabled",((t,e,n)=>this._handleReadOnlyMode(!n)));this.listenTo(t,"change:isReadOnly",((t,e,n)=>this._handleReadOnlyMode(n)))}t.data.on("get",(()=>{if(this.isSourceEditingMode){this._updateEditorData()}}),{priority:"high"})}afterInit(){const t=this.editor;const e=["RealTimeCollaborativeEditing","CommentsEditing","TrackChangesEditing","RevisionHistory"];if(e.some((e=>t.plugins.has(e)))){console.warn("You initialized the editor with the source editing feature and at least one of the collaboration features. "+"Please be advised that the source editing feature may not work, and be careful when editing document source "+"that contains markers created by the collaboration features.")}if(t.plugins.has("RestrictedEditingModeEditing")){console.warn("You initialized the editor with the source editing feature and restricted editing feature. "+"Please be advised that the source editing feature may not work, and be careful when editing document source "+"that contains markers created by the restricted editing feature.")}}_showSourceEditing(){const t=this.editor;const e=t.editing.view;const n=t.model;n.change((t=>{t.setSelection(null);t.removeSelectionAttribute(n.document.selection.getAttributeKeys())}));for(const[n,i]of e.domRoots){const o=FW(t.data.get({rootName:n}));const r=oe(i.ownerDocument,"textarea",{rows:"1","aria-label":"Source code editing area"});const s=oe(i.ownerDocument,"div",{class:"ck-source-editing-area","data-value":o},[r]);r.value=o;r.setSelectionRange(0,0);r.addEventListener("input",(()=>{s.dataset.value=r.value}));e.change((t=>{const i=e.document.getRoot(n);t.addClass("ck-hidden",i)}));t.ui.setEditableElement("sourceEditing:"+n,r);this._replacedRoots.set(n,s);this._elementReplacer.replace(i,s);this._dataFromRoots.set(n,o)}this._focusSourceEditing()}_hideSourceEditing(){const t=this.editor;const e=t.editing.view;this._updateEditorData();e.change((t=>{for(const[n]of this._replacedRoots){t.removeClass("ck-hidden",e.document.getRoot(n))}}));this._elementReplacer.restore();this._replacedRoots.clear();this._dataFromRoots.clear();e.focus()}_updateEditorData(){const t=this.editor;const e={};for(const[t,n]of this._replacedRoots){const i=this._dataFromRoots.get(t);const o=n.dataset.value;if(i!==o){e[t]=o}}if(Object.keys(e).length){t.data.set(e,{batchType:{isUndoable:true}})}}_focusSourceEditing(){const t=this.editor;const[e]=this._replacedRoots.values();const n=e.querySelector("textarea");t.editing.view.document.isFocused=false;n.focus()}_disableCommands(){const t=this.editor;for(const e of t.commands.commands()){e.forceDisabled(OW)}}_enableCommands(){const t=this.editor;for(const e of t.commands.commands()){e.clearForceDisabled(OW)}}_handleReadOnlyMode(t){if(!this.isSourceEditingMode){return}for(const[,e]of this._replacedRoots){e.querySelector("textarea").readOnly=t}}_isAllowedToHandleSourceEditingMode(){const t=this.editor;const e=t.ui.view.editable;return e&&!e._hasExternalElement}}function FW(t){if(!jW(t)){return t}return SW(t)}function jW(t){return t.startsWith("<")}class HW extends wy{constructor(t,e){super(t);const n=t.t;this.set("class","ck-special-characters-navigation");this.groupDropdownView=this._createGroupDropdown(e);this.groupDropdownView.panelPosition=t.uiLanguageDirection==="rtl"?"se":"sw";this.label=n("Special characters");this.children.add(this.groupDropdownView)}get currentGroupName(){return this.groupDropdownView.value}focus(){this.groupDropdownView.focus()}_createGroupDropdown(t){const e=this.locale;const n=e.t;const i=yv(e);const o=this._getCharacterGroupListItemDefinitions(i,t);i.set("value",o.first.model.name);i.buttonView.bind("label").to(i,"value",(e=>t.get(e)));i.buttonView.set({isOn:false,withText:true,tooltip:n("Character categories"),class:["ck-dropdown__button_label-width_auto"]});i.on("execute",(t=>{i.value=t.source.name}));i.delegate("execute").to(this);Dv(i,o);return i}_getCharacterGroupListItemDefinitions(t,e){const n=new ll;for(const[i,o]of e){const e={type:"button",model:new Oy({name:i,label:o,withText:true})};e.model.bind("isOn").to(t,"value",(t=>t===e.model.name));n.add(e)}return n}}var UW=n(4046);var WW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};WW.insert="head";WW.singleton=true;var qW=Tl()(UW.Z,WW);const $W=UW.Z.locals||{};class GW extends Ll{constructor(t){super(t);this.tiles=this.createCollection();this.setTemplate({tag:"div",children:[{tag:"div",attributes:{class:["ck","ck-character-grid__tiles"]},children:this.tiles}],attributes:{class:["ck","ck-character-grid"]}});this.focusTracker=new ul;this.keystrokes=new hl;r({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.tiles,numberOfColumns:()=>ic.window.getComputedStyle(this.element.firstChild).getPropertyValue("grid-template-columns").split(" ").length,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}createTile(t,e){const n=new kd(this.locale);n.set({label:t,withText:true,class:"ck-character-grid__tile"});n.extendTemplate({attributes:{title:e},on:{mouseover:n.bindTemplate.to("mouseover"),focus:n.bindTemplate.to("focus")}});n.on("mouseover",(()=>{this.fire("tileHover",{name:e,character:t})}));n.on("focus",(()=>{this.fire("tileFocus",{name:e,character:t})}));n.on("execute",(()=>{this.fire("execute",{name:e,character:t})}));return n}render(){super.render();for(const t of this.tiles){this.focusTracker.add(t.element)}this.tiles.on("change",((t,{added:e,removed:n})=>{if(e.length>0){for(const t of e){this.focusTracker.add(t.element)}}if(n.length>0){for(const t of n){this.focusTracker.remove(t.element)}}}));this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.keystrokes.destroy()}focus(){this.tiles.get(0).focus()}}var KW=n(4779);var YW={injectType:"singletonStyleTag",attributes:{"data-cke":true}};YW.insert="head";YW.singleton=true;var ZW=Tl()(KW.Z,YW);const QW=KW.Z.locals||{};class JW extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.set("character",null);this.set("name",null);this.bind("code").to(this,"character",XW);this.setTemplate({tag:"div",children:[{tag:"span",attributes:{class:["ck-character-info__name"]},children:[{text:e.to("name",(t=>t?t:"​"))}]},{tag:"span",attributes:{class:["ck-character-info__code"]},children:[{text:e.to("code")}]}],attributes:{class:["ck","ck-character-info"]}})}}function XW(t){if(t===null){return""}const e=t.codePointAt(0).toString(16);return"U+"+("0000"+e).slice(-4)}class tq extends Ll{constructor(t,e,n,i){super(t);this.items=this.createCollection();this.focusTracker=new ul;this.keystrokes=new hl;this._focusCycler=new Yd({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.navigationView=e;this.gridView=n;this.infoView=i;this.setTemplate({tag:"div",children:[this.navigationView,this.gridView,this.infoView],attributes:{tabindex:"-1"}});this.items.add(this.navigationView.groupDropdownView.buttonView);this.items.add(this.gridView)}render(){super.render();this.focusTracker.add(this.navigationView.groupDropdownView.buttonView.element);this.focusTracker.add(this.gridView.element);this.keystrokes.listenTo(this.element)}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}focus(){this.navigationView.focus()}}const eq='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10 2.5a7.47 7.47 0 0 1 4.231 1.31 7.268 7.268 0 0 1 2.703 3.454 7.128 7.128 0 0 1 .199 4.353c-.39 1.436-1.475 2.72-2.633 3.677h2.013c0-.226.092-.443.254-.603a.876.876 0 0 1 1.229 0c.163.16.254.377.254.603v.853c0 .209-.078.41-.22.567a.873.873 0 0 1-.547.28l-.101.006h-4.695a.517.517 0 0 1-.516-.518v-1.265c0-.21.128-.398.317-.489a5.601 5.601 0 0 0 2.492-2.371 5.459 5.459 0 0 0 .552-3.693 5.53 5.53 0 0 0-1.955-3.2A5.71 5.71 0 0 0 10 4.206 5.708 5.708 0 0 0 6.419 5.46 5.527 5.527 0 0 0 4.46 8.663a5.457 5.457 0 0 0 .554 3.695 5.6 5.6 0 0 0 2.497 2.37.55.55 0 0 1 .317.49v1.264c0 .286-.23.518-.516.518H2.618a.877.877 0 0 1-.614-.25.845.845 0 0 1-.254-.603v-.853c0-.226.091-.443.254-.603a.876.876 0 0 1 1.228 0c.163.16.255.377.255.603h1.925c-1.158-.958-2.155-2.241-2.545-3.678a7.128 7.128 0 0 1 .199-4.352 7.268 7.268 0 0 1 2.703-3.455A7.475 7.475 0 0 1 10 2.5z"/></svg>';var nq=n(8170);var iq={injectType:"singletonStyleTag",attributes:{"data-cke":true}};iq.insert="head";iq.singleton=true;var oq=Tl()(nq.Z,iq);const rq=nq.Z.locals||{};const sq="All";class aq extends eu{static get requires(){return[rE]}static get pluginName(){return"SpecialCharacters"}constructor(t){super(t);const e=t.t;this._characters=new Map;this._groups=new Map;this._allSpecialCharactersGroupLabel=e("All")}init(){const t=this.editor;const e=t.t;const n=t.commands.get("input");t.ui.componentFactory.add("specialCharacters",(i=>{const o=yv(i);let r;o.buttonView.set({label:e("Special characters"),icon:eq,tooltip:true});o.bind("isEnabled").to(n);o.on("execute",((e,n)=>{t.execute("insertText",{text:n.character});t.editing.view.focus()}));o.on("change:isOpen",(()=>{if(!r){r=this._createDropdownPanelContent(i,o);const t=new tq(i,r.navigationView,r.gridView,r.infoView);o.panelView.children.add(t)}r.infoView.set({character:null,name:null})}));return o}))}addItems(t,e,n={label:t}){if(t===sq){throw new z("special-character-invalid-group-name",null)}const i=this._getGroup(t,n.label);for(const t of e){i.items.add(t.title);this._characters.set(t.title,t.character)}}getGroups(){const t=Array.from(this._groups.keys());const e=this.editor.config.get("specialCharacters.order")||[];const n=e.find((e=>!t.includes(e)));if(n){throw new z("special-character-invalid-order-group-name",null,{invalidGroup:n})}return new Set([...e,...t])}getCharactersForGroup(t){if(t===sq){return new Set(this._characters.keys())}const e=this._groups.get(t);if(e){return e.items}}getCharacter(t){return this._characters.get(t)}_getGroup(t,e){if(!this._groups.has(t)){this._groups.set(t,{items:new Set,label:e})}return this._groups.get(t)}_updateGrid(t,e){e.tiles.clear();const n=this.getCharactersForGroup(t);for(const t of n){const n=this.getCharacter(t);e.tiles.add(e.createTile(n,t))}}_createDropdownPanelContent(t,e){const n=new Map([[sq,this._allSpecialCharactersGroupLabel],...Array.from(this.getGroups()).map((t=>[t,this._groups.get(t).label]))]);const i=new HW(t,n);const o=new GW(t);const r=new JW(t);o.delegate("execute").to(e);o.on("tileHover",((t,e)=>{r.set(e)}));o.on("tileFocus",((t,e)=>{r.set(e)}));i.on("execute",(()=>{this._updateGrid(i.currentGroupName,o)}));this._updateGrid(i.currentGroupName,o);return{navigationView:i,gridView:o,infoView:r}}}class cq extends eu{static get pluginName(){return"SpecialCharactersArrows"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Arrows",[{title:e("leftwards simple arrow"),character:"←"},{title:e("rightwards simple arrow"),character:"→"},{title:e("upwards simple arrow"),character:"↑"},{title:e("downwards simple arrow"),character:"↓"},{title:e("leftwards double arrow"),character:"⇐"},{title:e("rightwards double arrow"),character:"⇒"},{title:e("upwards double arrow"),character:"⇑"},{title:e("downwards double arrow"),character:"⇓"},{title:e("leftwards dashed arrow"),character:"⇠"},{title:e("rightwards dashed arrow"),character:"⇢"},{title:e("upwards dashed arrow"),character:"⇡"},{title:e("downwards dashed arrow"),character:"⇣"},{title:e("leftwards arrow to bar"),character:"⇤"},{title:e("rightwards arrow to bar"),character:"⇥"},{title:e("upwards arrow to bar"),character:"⤒"},{title:e("downwards arrow to bar"),character:"⤓"},{title:e("up down arrow with base"),character:"↨"},{title:e("back with leftwards arrow above"),character:"🔙"},{title:e("end with leftwards arrow above"),character:"🔚"},{title:e("on with exclamation mark with left right arrow above"),character:"🔛"},{title:e("soon with rightwards arrow above"),character:"🔜"},{title:e("top with upwards arrow above"),character:"🔝"}],{label:e("Arrows")})}}class lq extends eu{static get pluginName(){return"SpecialCharactersCurrency"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Currency",[{character:"$",title:e("Dollar sign")},{character:"€",title:e("Euro sign")},{character:"¥",title:e("Yen sign")},{character:"£",title:e("Pound sign")},{character:"¢",title:e("Cent sign")},{character:"₠",title:e("Euro-currency sign")},{character:"₡",title:e("Colon sign")},{character:"₢",title:e("Cruzeiro sign")},{character:"₣",title:e("French franc sign")},{character:"₤",title:e("Lira sign")},{character:"¤",title:e("Currency sign")},{character:"₿",title:e("Bitcoin sign")},{character:"₥",title:e("Mill sign")},{character:"₦",title:e("Naira sign")},{character:"₧",title:e("Peseta sign")},{character:"₨",title:e("Rupee sign")},{character:"₩",title:e("Won sign")},{character:"₪",title:e("New sheqel sign")},{character:"₫",title:e("Dong sign")},{character:"₭",title:e("Kip sign")},{character:"₮",title:e("Tugrik sign")},{character:"₯",title:e("Drachma sign")},{character:"₰",title:e("German penny sign")},{character:"₱",title:e("Peso sign")},{character:"₲",title:e("Guarani sign")},{character:"₳",title:e("Austral sign")},{character:"₴",title:e("Hryvnia sign")},{character:"₵",title:e("Cedi sign")},{character:"₶",title:e("Livre tournois sign")},{character:"₷",title:e("Spesmilo sign")},{character:"₸",title:e("Tenge sign")},{character:"₹",title:e("Indian rupee sign")},{character:"₺",title:e("Turkish lira sign")},{character:"₻",title:e("Nordic mark sign")},{character:"₼",title:e("Manat sign")},{character:"₽",title:e("Ruble sign")}],{label:e("Currency")})}}class dq extends eu{static get pluginName(){return"SpecialCharactersMathematical"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Mathematical",[{character:"<",title:e("Less-than sign")},{character:">",title:e("Greater-than sign")},{character:"≤",title:e("Less-than or equal to")},{character:"≥",title:e("Greater-than or equal to")},{character:"–",title:e("En dash")},{character:"—",title:e("Em dash")},{character:"¯",title:e("Macron")},{character:"‾",title:e("Overline")},{character:"°",title:e("Degree sign")},{character:"−",title:e("Minus sign")},{character:"±",title:e("Plus-minus sign")},{character:"÷",title:e("Division sign")},{character:"⁄",title:e("Fraction slash")},{character:"×",title:e("Multiplication sign")},{character:"ƒ",title:e("Latin small letter f with hook")},{character:"∫",title:e("Integral")},{character:"∑",title:e("N-ary summation")},{character:"∞",title:e("Infinity")},{character:"√",title:e("Square root")},{character:"∼",title:e("Tilde operator")},{character:"≅",title:e("Approximately equal to")},{character:"≈",title:e("Almost equal to")},{character:"≠",title:e("Not equal to")},{character:"≡",title:e("Identical to")},{character:"∈",title:e("Element of")},{character:"∉",title:e("Not an element of")},{character:"∋",title:e("Contains as member")},{character:"∏",title:e("N-ary product")},{character:"∧",title:e("Logical and")},{character:"∨",title:e("Logical or")},{character:"¬",title:e("Not sign")},{character:"∩",title:e("Intersection")},{character:"∪",title:e("Union")},{character:"∂",title:e("Partial differential")},{character:"∀",title:e("For all")},{character:"∃",title:e("There exists")},{character:"∅",title:e("Empty set")},{character:"∇",title:e("Nabla")},{character:"∗",title:e("Asterisk operator")},{character:"∝",title:e("Proportional to")},{character:"∠",title:e("Angle")},{character:"¼",title:e("Vulgar fraction one quarter")},{character:"½",title:e("Vulgar fraction one half")},{character:"¾",title:e("Vulgar fraction three quarters")}],{label:e("Mathematical")})}}class uq extends eu{static get pluginName(){return"SpecialCharactersLatin"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Latin",[{character:"Ā",title:e("Latin capital letter a with macron")},{character:"ā",title:e("Latin small letter a with macron")},{character:"Ă",title:e("Latin capital letter a with breve")},{character:"ă",title:e("Latin small letter a with breve")},{character:"Ą",title:e("Latin capital letter a with ogonek")},{character:"ą",title:e("Latin small letter a with ogonek")},{character:"Ć",title:e("Latin capital letter c with acute")},{character:"ć",title:e("Latin small letter c with acute")},{character:"Ĉ",title:e("Latin capital letter c with circumflex")},{character:"ĉ",title:e("Latin small letter c with circumflex")},{character:"Ċ",title:e("Latin capital letter c with dot above")},{character:"ċ",title:e("Latin small letter c with dot above")},{character:"Č",title:e("Latin capital letter c with caron")},{character:"č",title:e("Latin small letter c with caron")},{character:"Ď",title:e("Latin capital letter d with caron")},{character:"ď",title:e("Latin small letter d with caron")},{character:"Đ",title:e("Latin capital letter d with stroke")},{character:"đ",title:e("Latin small letter d with stroke")},{character:"Ē",title:e("Latin capital letter e with macron")},{character:"ē",title:e("Latin small letter e with macron")},{character:"Ĕ",title:e("Latin capital letter e with breve")},{character:"ĕ",title:e("Latin small letter e with breve")},{character:"Ė",title:e("Latin capital letter e with dot above")},{character:"ė",title:e("Latin small letter e with dot above")},{character:"Ę",title:e("Latin capital letter e with ogonek")},{character:"ę",title:e("Latin small letter e with ogonek")},{character:"Ě",title:e("Latin capital letter e with caron")},{character:"ě",title:e("Latin small letter e with caron")},{character:"Ĝ",title:e("Latin capital letter g with circumflex")},{character:"ĝ",title:e("Latin small letter g with circumflex")},{character:"Ğ",title:e("Latin capital letter g with breve")},{character:"ğ",title:e("Latin small letter g with breve")},{character:"Ġ",title:e("Latin capital letter g with dot above")},{character:"ġ",title:e("Latin small letter g with dot above")},{character:"Ģ",title:e("Latin capital letter g with cedilla")},{character:"ģ",title:e("Latin small letter g with cedilla")},{character:"Ĥ",title:e("Latin capital letter h with circumflex")},{character:"ĥ",title:e("Latin small letter h with circumflex")},{character:"Ħ",title:e("Latin capital letter h with stroke")},{character:"ħ",title:e("Latin small letter h with stroke")},{character:"Ĩ",title:e("Latin capital letter i with tilde")},{character:"ĩ",title:e("Latin small letter i with tilde")},{character:"Ī",title:e("Latin capital letter i with macron")},{character:"ī",title:e("Latin small letter i with macron")},{character:"Ĭ",title:e("Latin capital letter i with breve")},{character:"ĭ",title:e("Latin small letter i with breve")},{character:"Į",title:e("Latin capital letter i with ogonek")},{character:"į",title:e("Latin small letter i with ogonek")},{character:"İ",title:e("Latin capital letter i with dot above")},{character:"ı",title:e("Latin small letter dotless i")},{character:"IJ",title:e("Latin capital ligature ij")},{character:"ij",title:e("Latin small ligature ij")},{character:"Ĵ",title:e("Latin capital letter j with circumflex")},{character:"ĵ",title:e("Latin small letter j with circumflex")},{character:"Ķ",title:e("Latin capital letter k with cedilla")},{character:"ķ",title:e("Latin small letter k with cedilla")},{character:"ĸ",title:e("Latin small letter kra")},{character:"Ĺ",title:e("Latin capital letter l with acute")},{character:"ĺ",title:e("Latin small letter l with acute")},{character:"Ļ",title:e("Latin capital letter l with cedilla")},{character:"ļ",title:e("Latin small letter l with cedilla")},{character:"Ľ",title:e("Latin capital letter l with caron")},{character:"ľ",title:e("Latin small letter l with caron")},{character:"Ŀ",title:e("Latin capital letter l with middle dot")},{character:"ŀ",title:e("Latin small letter l with middle dot")},{character:"Ł",title:e("Latin capital letter l with stroke")},{character:"ł",title:e("Latin small letter l with stroke")},{character:"Ń",title:e("Latin capital letter n with acute")},{character:"ń",title:e("Latin small letter n with acute")},{character:"Ņ",title:e("Latin capital letter n with cedilla")},{character:"ņ",title:e("Latin small letter n with cedilla")},{character:"Ň",title:e("Latin capital letter n with caron")},{character:"ň",title:e("Latin small letter n with caron")},{character:"ʼn",title:e("Latin small letter n preceded by apostrophe")},{character:"Ŋ",title:e("Latin capital letter eng")},{character:"ŋ",title:e("Latin small letter eng")},{character:"Ō",title:e("Latin capital letter o with macron")},{character:"ō",title:e("Latin small letter o with macron")},{character:"Ŏ",title:e("Latin capital letter o with breve")},{character:"ŏ",title:e("Latin small letter o with breve")},{character:"Ő",title:e("Latin capital letter o with double acute")},{character:"ő",title:e("Latin small letter o with double acute")},{character:"Œ",title:e("Latin capital ligature oe")},{character:"œ",title:e("Latin small ligature oe")},{character:"Ŕ",title:e("Latin capital letter r with acute")},{character:"ŕ",title:e("Latin small letter r with acute")},{character:"Ŗ",title:e("Latin capital letter r with cedilla")},{character:"ŗ",title:e("Latin small letter r with cedilla")},{character:"Ř",title:e("Latin capital letter r with caron")},{character:"ř",title:e("Latin small letter r with caron")},{character:"Ś",title:e("Latin capital letter s with acute")},{character:"ś",title:e("Latin small letter s with acute")},{character:"Ŝ",title:e("Latin capital letter s with circumflex")},{character:"ŝ",title:e("Latin small letter s with circumflex")},{character:"Ş",title:e("Latin capital letter s with cedilla")},{character:"ş",title:e("Latin small letter s with cedilla")},{character:"Š",title:e("Latin capital letter s with caron")},{character:"š",title:e("Latin small letter s with caron")},{character:"Ţ",title:e("Latin capital letter t with cedilla")},{character:"ţ",title:e("Latin small letter t with cedilla")},{character:"Ť",title:e("Latin capital letter t with caron")},{character:"ť",title:e("Latin small letter t with caron")},{character:"Ŧ",title:e("Latin capital letter t with stroke")},{character:"ŧ",title:e("Latin small letter t with stroke")},{character:"Ũ",title:e("Latin capital letter u with tilde")},{character:"ũ",title:e("Latin small letter u with tilde")},{character:"Ū",title:e("Latin capital letter u with macron")},{character:"ū",title:e("Latin small letter u with macron")},{character:"Ŭ",title:e("Latin capital letter u with breve")},{character:"ŭ",title:e("Latin small letter u with breve")},{character:"Ů",title:e("Latin capital letter u with ring above")},{character:"ů",title:e("Latin small letter u with ring above")},{character:"Ű",title:e("Latin capital letter u with double acute")},{character:"ű",title:e("Latin small letter u with double acute")},{character:"Ų",title:e("Latin capital letter u with ogonek")},{character:"ų",title:e("Latin small letter u with ogonek")},{character:"Ŵ",title:e("Latin capital letter w with circumflex")},{character:"ŵ",title:e("Latin small letter w with circumflex")},{character:"Ŷ",title:e("Latin capital letter y with circumflex")},{character:"ŷ",title:e("Latin small letter y with circumflex")},{character:"Ÿ",title:e("Latin capital letter y with diaeresis")},{character:"Ź",title:e("Latin capital letter z with acute")},{character:"ź",title:e("Latin small letter z with acute")},{character:"Ż",title:e("Latin capital letter z with dot above")},{character:"ż",title:e("Latin small letter z with dot above")},{character:"Ž",title:e("Latin capital letter z with caron")},{character:"ž",title:e("Latin small letter z with caron")},{character:"ſ",title:e("Latin small letter long s")}],{label:e("Latin")})}}class hq extends eu{static get pluginName(){return"SpecialCharactersText"}init(){const t=this.editor;const e=t.t;t.plugins.get("SpecialCharacters").addItems("Text",[{character:"‹",title:e("Single left-pointing angle quotation mark")},{character:"›",title:e("Single right-pointing angle quotation mark")},{character:"«",title:e("Left-pointing double angle quotation mark")},{character:"»",title:e("Right-pointing double angle quotation mark")},{character:"‘",title:e("Left single quotation mark")},{character:"’",title:e("Right single quotation mark")},{character:"“",title:e("Left double quotation mark")},{character:"”",title:e("Right double quotation mark")},{character:"‚",title:e("Single low-9 quotation mark")},{character:"„",title:e("Double low-9 quotation mark")},{character:"¡",title:e("Inverted exclamation mark")},{character:"¿",title:e("Inverted question mark")},{character:"‥",title:e("Two dot leader")},{character:"…",title:e("Horizontal ellipsis")},{character:"‡",title:e("Double dagger")},{character:"‰",title:e("Per mille sign")},{character:"‱",title:e("Per ten thousand sign")},{character:"‼",title:e("Double exclamation mark")},{character:"⁈",title:e("Question exclamation mark")},{character:"⁉",title:e("Exclamation question mark")},{character:"⁇",title:e("Double question mark")},{character:"©",title:e("Copyright sign")},{character:"®",title:e("Registered sign")},{character:"™",title:e("Trade mark sign")},{character:"§",title:e("Section sign")},{character:"¶",title:e("Paragraph sign")},{character:"⁋",title:e("Reversed paragraph sign")}],{label:e("Text")})}}class gq extends eu{static get requires(){return[lq,hq,dq,cq,uq]}}const mq="strikethrough";class fq extends eu{static get pluginName(){return"StrikethroughEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:mq});t.model.schema.setAttributeProperties(mq,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:mq,view:"s",upcastAlso:["del","strike",{styles:{"text-decoration":"line-through"}}]});t.commands.add(mq,new NI(t,mq));t.keystrokes.set("CTRL+SHIFT+X","strikethrough")}}const pq='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M7 16.4c-.8-.4-1.5-.9-2.2-1.5a.6.6 0 0 1-.2-.5l.3-.6h1c1 1.2 2.1 1.7 3.7 1.7 1 0 1.8-.3 2.3-.6.6-.4.6-1.2.6-1.3.2-1.2-.9-2.1-.9-2.1h2.1c.3.7.4 1.2.4 1.7v.8l-.6 1.2c-.6.8-1.1 1-1.6 1.2a6 6 0 0 1-2.4.6c-1 0-1.8-.3-2.5-.6zM6.8 9 6 8.3c-.4-.5-.5-.8-.5-1.6 0-.7.1-1.3.5-1.8.4-.6 1-1 1.6-1.3a6.3 6.3 0 0 1 4.7 0 4 4 0 0 1 1.7 1l.3.7c0 .1.2.4-.2.7-.4.2-.9.1-1 0a3 3 0 0 0-1.2-1c-.4-.2-1-.3-2-.4-.7 0-1.4.2-2 .6-.8.6-1 .8-1 1.5 0 .8.5 1 1.2 1.5.6.4 1.1.7 1.9 1H6.8z"/><path d="M3 10.5V9h14v1.5z"/></svg>';const bq="strikethrough";class kq extends eu{static get pluginName(){return"StrikethroughUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(bq,(n=>{const i=t.commands.get(bq);const o=new kd(n);o.set({label:e("Strikethrough"),icon:pq,keystroke:"CTRL+SHIFT+X",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(bq);t.editing.view.focus()}));return o}))}}class wq extends eu{static get requires(){return[fq,kq]}static get pluginName(){return"Strikethrough"}}const Aq="subscript";class Cq extends eu{static get pluginName(){return"SubscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:Aq});t.model.schema.setAttributeProperties(Aq,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:Aq,view:"sub",upcastAlso:[{styles:{"vertical-align":"sub"}}]});t.commands.add(Aq,new NI(t,Aq))}}const _q='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m7.03 10.349 3.818-3.819a.8.8 0 1 1 1.132 1.132L8.16 11.48l3.819 3.818a.8.8 0 1 1-1.132 1.132L7.03 12.61l-3.818 3.82a.8.8 0 1 1-1.132-1.132L5.9 11.48 2.08 7.662A.8.8 0 1 1 3.212 6.53l3.818 3.82zm8.147 7.829h2.549c.254 0 .447.05.58.152a.49.49 0 0 1 .201.413.54.54 0 0 1-.159.393c-.105.108-.266.162-.48.162h-3.594c-.245 0-.435-.066-.572-.197a.621.621 0 0 1-.205-.463c0-.114.044-.265.132-.453a1.62 1.62 0 0 1 .288-.444c.433-.436.824-.81 1.172-1.122.348-.312.597-.517.747-.615.267-.183.49-.368.667-.553.177-.185.312-.375.405-.57.093-.194.139-.384.139-.57a1.008 1.008 0 0 0-.554-.917 1.197 1.197 0 0 0-.56-.133c-.426 0-.761.182-1.005.546a2.332 2.332 0 0 0-.164.39 1.609 1.609 0 0 1-.258.488c-.096.114-.237.17-.423.17a.558.558 0 0 1-.405-.156.568.568 0 0 1-.161-.427c0-.218.05-.446.151-.683.101-.238.252-.453.452-.646s.454-.349.762-.467a2.998 2.998 0 0 1 1.081-.178c.498 0 .923.076 1.274.228a1.916 1.916 0 0 1 1.004 1.032 1.984 1.984 0 0 1-.156 1.794c-.2.32-.405.572-.613.754-.208.182-.558.468-1.048.857-.49.39-.826.691-1.008.906a2.703 2.703 0 0 0-.24.309z"/></svg>';const vq="subscript";class yq extends eu{static get pluginName(){return"SubscriptUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(vq,(n=>{const i=t.commands.get(vq);const o=new kd(n);o.set({label:e("Subscript"),icon:_q,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(vq);t.editing.view.focus()}));return o}))}}class xq extends eu{static get requires(){return[Cq,yq]}static get pluginName(){return"Subscript"}}const Eq="superscript";class Dq extends eu{static get pluginName(){return"SuperscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:Eq});t.model.schema.setAttributeProperties(Eq,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:Eq,view:"sup",upcastAlso:[{styles:{"vertical-align":"super"}}]});t.commands.add(Eq,new NI(t,Eq))}}const Tq='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M15.677 8.678h2.549c.254 0 .447.05.58.152a.49.49 0 0 1 .201.413.54.54 0 0 1-.159.393c-.105.108-.266.162-.48.162h-3.594c-.245 0-.435-.066-.572-.197a.621.621 0 0 1-.205-.463c0-.114.044-.265.132-.453a1.62 1.62 0 0 1 .288-.444c.433-.436.824-.81 1.172-1.122.348-.312.597-.517.747-.615.267-.183.49-.368.667-.553.177-.185.312-.375.405-.57.093-.194.139-.384.139-.57a1.008 1.008 0 0 0-.554-.917 1.197 1.197 0 0 0-.56-.133c-.426 0-.761.182-1.005.546a2.332 2.332 0 0 0-.164.39 1.609 1.609 0 0 1-.258.488c-.096.114-.237.17-.423.17a.558.558 0 0 1-.405-.156.568.568 0 0 1-.161-.427c0-.218.05-.446.151-.683.101-.238.252-.453.452-.646s.454-.349.762-.467a2.998 2.998 0 0 1 1.081-.178c.498 0 .923.076 1.274.228a1.916 1.916 0 0 1 1.004 1.032 1.984 1.984 0 0 1-.156 1.794c-.2.32-.405.572-.613.754-.208.182-.558.468-1.048.857-.49.39-.826.691-1.008.906a2.703 2.703 0 0 0-.24.309zM7.03 10.349l3.818-3.819a.8.8 0 1 1 1.132 1.132L8.16 11.48l3.819 3.818a.8.8 0 1 1-1.132 1.132L7.03 12.61l-3.818 3.82a.8.8 0 1 1-1.132-1.132L5.9 11.48 2.08 7.662A.8.8 0 1 1 3.212 6.53l3.818 3.82z"/></svg>';const Sq="superscript";class Iq extends eu{static get pluginName(){return"SuperscriptUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(Sq,(n=>{const i=t.commands.get(Sq);const o=new kd(n);o.set({label:e("Superscript"),icon:Tq,tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(Sq);t.editing.view.focus()}));return o}))}}class Bq extends eu{static get requires(){return[Dq,Iq]}static get pluginName(){return"Superscript"}}function Mq(t,e){const{viewElement:n,defaultValue:i,modelAttribute:o,styleName:r,reduceBoxSides:s=false,shouldUpcast:a=(()=>true)}=e;t.for("upcast").attributeToAttribute({view:{name:n,styles:{[r]:/[\s\S]+/}},model:{key:o,value:t=>{if(!a(t)){return}const e=t.getNormalizedStyle(r);const n=s?Pq(e):e;if(i!==n){return n}}}})}function Lq(t,e,n,i){t.for("upcast").add((t=>t.on("element:"+e,((t,e,o)=>{if(!e.modelRange){return}const r=["border-top-width","border-top-color","border-top-style","border-bottom-width","border-bottom-color","border-bottom-style","border-right-width","border-right-color","border-right-style","border-left-width","border-left-color","border-left-style"].filter((t=>e.viewItem.hasStyle(t)));if(!r.length){return}const s={styles:r};if(!o.consumable.test(e.viewItem,s)){return}const a=[...e.modelRange.getItems({shallow:true})].pop();o.consumable.consume(e.viewItem,s);const c={style:e.viewItem.getNormalizedStyle("border-style"),color:e.viewItem.getNormalizedStyle("border-color"),width:e.viewItem.getNormalizedStyle("border-width")};const l={style:Pq(c.style),color:Pq(c.color),width:Pq(c.width)};if(l.style!==i.style){o.writer.setAttribute(n.style,l.style,a)}if(l.color!==i.color){o.writer.setAttribute(n.color,l.color,a)}if(l.width!==i.width){o.writer.setAttribute(n.width,l.width,a)}}))))}function Nq(t,{modelElement:e,modelAttribute:n,styleName:i}){t.for("downcast").attributeToAttribute({model:{name:e,key:n},view:t=>({key:"style",value:{[i]:t}})})}function zq(t,{modelAttribute:e,styleName:n}){t.for("downcast").add((t=>t.on(`attribute:${e}:table`,((t,e,i)=>{const{item:o,attributeNewValue:r}=e;const{mapper:s,writer:a}=i;if(!i.consumable.consume(e.item,t.name)){return}const c=[...s.toViewElement(o).getChildren()].find((t=>t.is("element","table")));if(r){a.setStyle(n,r,c)}else{a.removeStyle(n,c)}}))))}function Pq(t){if(!t){return}const e=["top","right","bottom","left"].map((e=>t[e])).reduce(((t,e)=>t==e?t:null));return e||t}function Rq(t,e,n,i,o=1){if(e>o){i.setAttribute(t,e,n)}else{i.removeAttribute(t,n)}}function Oq(t,e,n={}){const i=t.createElement("tableCell",n);t.insertElement("paragraph",i);t.insert(i,e);return i}function Vq(t,e){const n=e.parent.parent;const i=parseInt(n.getAttribute("headingColumns")||0);const{column:o}=t.getCellLocation(e);return!!i&&o<i}function Fq(t,e,n){const{modelAttribute:i}=n;t.extend("tableCell",{allowAttributes:[i]});Mq(e,{viewElement:/^(td|th)$/,...n});Nq(e,{modelElement:"tableCell",...n})}function jq(){return t=>{t.on("element:figure",((t,e,n)=>{if(!n.consumable.test(e.viewItem,{name:true,classes:"table"})){return}const i=qq(e.viewItem);if(!i||!n.consumable.test(i,{name:true})){return}n.consumable.consume(e.viewItem,{name:true,classes:"table"});const o=n.convertItem(i,e.modelCursor);const r=dl(o.modelRange.getItems());if(!r){n.consumable.revert(e.viewItem,{name:true,classes:"table"});return}n.convertChildren(e.viewItem,n.writer.createPositionAt(r,"end"));n.updateConversionResult(r,e)}))}}function Hq(){return t=>{t.on("element:table",((t,e,n)=>{const i=e.viewItem;if(!n.consumable.test(i,{name:true})){return}const{rows:o,headingRows:r,headingColumns:s}=$q(i);const a={};if(s){a.headingColumns=s}if(r){a.headingRows=r}const c=n.writer.createElement("table",a);if(!n.safeInsert(c,e.modelCursor)){return}n.consumable.consume(i,{name:true});o.forEach((t=>n.convertItem(t,n.writer.createPositionAt(c,"end"))));n.convertChildren(i,n.writer.createPositionAt(c,"end"));if(c.isEmpty){const t=n.writer.createElement("tableRow");n.writer.insert(t,n.writer.createPositionAt(c,"end"));Oq(n.writer,n.writer.createPositionAt(t,"end"))}n.updateConversionResult(c,e)}))}}function Uq(){return t=>{t.on("element:tr",((t,e)=>{if(e.viewItem.isEmpty&&e.modelCursor.index==0){t.stop()}}),{priority:"high"})}}function Wq(t){return e=>{e.on(`element:${t}`,((t,e,{writer:n})=>{if(!e.modelRange){return}const i=e.modelRange.start.nodeAfter;const o=n.createPositionAt(i,0);if(e.viewItem.isEmpty){n.insertElement("paragraph",o);return}const r=Array.from(i.getChildren());if(r.every((t=>t.is("element","$marker")))){const t=n.createElement("paragraph");n.insert(t,n.createPositionAt(i,0));for(const e of r){n.move(n.createRangeOn(e),n.createPositionAt(t,"end"))}}}),{priority:"low"})}}function qq(t){for(const e of t.getChildren()){if(e.is("element","table")){return e}}}function $q(t){const e={headingRows:0,headingColumns:0};const n=[];const i=[];let o;for(const r of Array.from(t.getChildren())){if(r.name==="tbody"||r.name==="thead"||r.name==="tfoot"){if(r.name==="thead"&&!o){o=r}const t=Array.from(r.getChildren()).filter((t=>t.is("element","tr")));for(const r of t){if(r.parent.name==="thead"&&r.parent===o){e.headingRows++;n.push(r)}else{i.push(r);const t=Gq(r,e,o);if(t>e.headingColumns){e.headingColumns=t}}}}}e.rows=[...n,...i];return e}function Gq(t){let e=0;let n=0;const i=Array.from(t.getChildren()).filter((t=>t.name==="th"||t.name==="td"));while(n<i.length&&i[n].name==="th"){const t=i[n];const o=parseInt(t.getAttribute("colspan")||1);e=e+o;n++}return e}class Kq{constructor(t,e={}){this._table=t;this._startRow=e.row!==undefined?e.row:e.startRow||0;this._endRow=e.row!==undefined?e.row:e.endRow;this._startColumn=e.column!==undefined?e.column:e.startColumn||0;this._endColumn=e.column!==undefined?e.column:e.endColumn;this._includeAllSlots=!!e.includeAllSlots;this._skipRows=new Set;this._row=0;this._rowIndex=0;this._column=0;this._cellIndex=0;this._spannedCells=new Map;this._nextCellAtColumn=-1}[Symbol.iterator](){return this}next(){const t=this._table.getChild(this._rowIndex);if(!t||this._isOverEndRow()){return{done:true}}if(!t.is("element","tableRow")){this._rowIndex++;return this.next()}if(this._isOverEndColumn()){return this._advanceToNextRow()}let e=null;const n=this._getSpanned();if(n){if(this._includeAllSlots&&!this._shouldSkipSlot()){e=this._formatOutValue(n.cell,n.row,n.column)}}else{const n=t.getChild(this._cellIndex);if(!n){return this._advanceToNextRow()}const i=parseInt(n.getAttribute("colspan")||1);const o=parseInt(n.getAttribute("rowspan")||1);if(i>1||o>1){this._recordSpans(n,o,i)}if(!this._shouldSkipSlot()){e=this._formatOutValue(n)}this._nextCellAtColumn=this._column+i}this._column++;if(this._column==this._nextCellAtColumn){this._cellIndex++}return e||this.next()}skipRow(t){this._skipRows.add(t)}_advanceToNextRow(){this._row++;this._rowIndex++;this._column=0;this._cellIndex=0;this._nextCellAtColumn=-1;return this.next()}_isOverEndRow(){return this._endRow!==undefined&&this._row>this._endRow}_isOverEndColumn(){return this._endColumn!==undefined&&this._column>this._endColumn}_formatOutValue(t,e=this._row,n=this._column){return{done:false,value:new Yq(this,t,e,n)}}_shouldSkipSlot(){const t=this._skipRows.has(this._row);const e=this._row<this._startRow;const n=this._column<this._startColumn;const i=this._endColumn!==undefined&&this._column>this._endColumn;return t||e||n||i}_getSpanned(){const t=this._spannedCells.get(this._row);if(!t){return null}return t.get(this._column)||null}_recordSpans(t,e,n){const i={cell:t,row:this._row,column:this._column};for(let t=this._row;t<this._row+e;t++){for(let e=this._column;e<this._column+n;e++){if(t!=this._row||e!=this._column){this._markSpannedCell(t,e,i)}}}}_markSpannedCell(t,e,n){if(!this._spannedCells.has(t)){this._spannedCells.set(t,new Map)}const i=this._spannedCells.get(t);i.set(e,n)}}class Yq{constructor(t,e,n,i){this.cell=e;this.row=t._row;this.column=t._column;this.cellAnchorRow=n;this.cellAnchorColumn=i;this._cellIndex=t._cellIndex;this._rowIndex=t._rowIndex;this._table=t._table}get isAnchor(){return this.row===this.cellAnchorRow&&this.column===this.cellAnchorColumn}get cellWidth(){return parseInt(this.cell.getAttribute("colspan")||1)}get cellHeight(){return parseInt(this.cell.getAttribute("rowspan")||1)}get rowIndex(){return this._rowIndex}getPositionBefore(){const t=this._table.root.document.model;return t.createPositionAt(this._table.getChild(this.row),this._cellIndex)}}function Zq(t,e={}){return(n,{writer:i})=>{const o=n.getAttribute("headingRows")||0;const r=[];if(o>0){r.push(i.createContainerElement("thead",null,i.createSlot((t=>t.is("element","tableRow")&&t.index<o))))}if(o<t.getRows(n)){r.push(i.createContainerElement("tbody",null,i.createSlot((t=>t.is("element","tableRow")&&t.index>=o))))}const s=i.createContainerElement("figure",{class:"table"},[i.createContainerElement("table",null,r),i.createSlot((t=>!t.is("element","tableRow")))]);return e.asWidget?e$(s,i):s}}function Qq(){return(t,{writer:e})=>t.isEmpty?e.createEmptyElement("tr"):e.createContainerElement("tr")}function Jq(t={}){return(e,{writer:n})=>{const i=e.parent;const o=i.parent;const r=o.getChildIndex(i);const s=new Kq(o,{row:r});const a=o.getAttribute("headingRows")||0;const c=o.getAttribute("headingColumns")||0;for(const i of s){if(i.cell==e){const e=i.row<a||i.column<c;const o=e?"th":"td";return t.asWidget?pD(n.createEditableElement(o),n):n.createContainerElement(o)}}}}function Xq(t={}){return(e,{writer:n})=>{if(!e.parent.is("element","tableCell")){return}if(!t$(e)){return}if(t.asWidget){return n.createContainerElement("span",{class:"ck-table-bogus-paragraph"})}else{const t=n.createContainerElement("p");n.setCustomProperty("dataPipeline:transparentRendering",true,t);return t}}}function t$(t){const e=t.parent;const n=e.childCount==1;return n&&!n$(t)}function e$(t,e){e.setCustomProperty("table",true,t);return dD(t,e,{hasSelectionHandle:true})}function n$(t){return!![...t.getAttributeKeys()].length}class i$ extends iu{refresh(){const t=this.editor.model;const e=t.document.selection;const n=t.schema;this.isEnabled=o$(e,n)}execute(t={}){const e=this.editor.model;const n=this.editor.plugins.get("TableUtils");const i=this.editor.config.get("table");const o=i.defaultHeadings.rows;const r=i.defaultHeadings.columns;if(t.headingRows===undefined&&o){t.headingRows=o}if(t.headingColumns===undefined&&r){t.headingColumns=r}e.change((i=>{const o=n.createTable(i,t);e.insertObject(o,null,null,{findOptimalPosition:"auto"});i.setSelection(i.createPositionAt(o.getNodeByPath([0,0,0]),0))}))}}function o$(t,e){const n=t.getFirstPosition().parent;const i=n===n.root?n:n.parent;return e.checkChild(i,"table")}class r$ extends iu{constructor(t,e={}){super(t);this.order=e.order||"below"}refresh(){const t=this.editor.model.document.selection;const e=this.editor.plugins.get("TableUtils");const n=!!e.getSelectionAffectedTableCells(t).length;this.isEnabled=n}execute(){const t=this.editor;const e=t.model.document.selection;const n=t.plugins.get("TableUtils");const i=this.order==="above";const o=n.getSelectionAffectedTableCells(e);const r=n.getRowIndexes(o);const s=i?r.first:r.last;const a=o[0].findAncestor("table");n.insertRows(a,{at:i?s:s+1,copyStructureFromAbove:!i})}}class s$ extends iu{constructor(t,e={}){super(t);this.order=e.order||"right"}refresh(){const t=this.editor.model.document.selection;const e=this.editor.plugins.get("TableUtils");const n=!!e.getSelectionAffectedTableCells(t).length;this.isEnabled=n}execute(){const t=this.editor;const e=t.model.document.selection;const n=t.plugins.get("TableUtils");const i=this.order==="left";const o=n.getSelectionAffectedTableCells(e);const r=n.getColumnIndexes(o);const s=i?r.first:r.last;const a=o[0].findAncestor("table");n.insertColumns(a,{columns:1,at:i?s:s+1})}}class a$ extends iu{constructor(t,e={}){super(t);this.direction=e.direction||"horizontally"}refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);this.isEnabled=e.length===1}execute(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection)[0];const n=this.direction==="horizontally";if(n){t.splitCellHorizontally(e,2)}else{t.splitCellVertically(e,2)}}}function c$(t,e,n){const{startRow:i,startColumn:o,endRow:r,endColumn:s}=e;const a=n.createElement("table");const c=r-i+1;for(let t=0;t<c;t++){n.insertElement("tableRow",a,"end")}const l=[...new Kq(t,{startRow:i,endRow:r,startColumn:o,endColumn:s,includeAllSlots:true})];for(const{row:t,column:e,cell:c,isAnchor:d,cellAnchorRow:u,cellAnchorColumn:h}of l){const l=t-i;const g=a.getChild(l);if(!d){if(u<i||h<o){Oq(n,n.createPositionAt(g,"end"))}}else{const i=n.cloneElement(c);n.append(i,g);g$(i,t,e,r,s,n)}}m$(a,t,i,o,n);return a}function l$(t,e,n=0){const i=[];const o=new Kq(t,{startRow:n,endRow:e-1});for(const t of o){const{row:n,cellHeight:o}=t;const r=n+o-1;if(n<e&&e<=r){i.push(t)}}return i}function d$(t,e,n){const i=t.parent;const o=i.parent;const r=i.index;const s=parseInt(t.getAttribute("rowspan"));const a=e-r;const c={};const l=s-a;if(l>1){c.rowspan=l}const d=parseInt(t.getAttribute("colspan")||1);if(d>1){c.colspan=d}const u=r;const h=u+a;const g=[...new Kq(o,{startRow:u,endRow:h,includeAllSlots:true})];let m=null;let f;for(const e of g){const{row:i,column:o,cell:r}=e;if(r===t&&f===undefined){f=o}if(f!==undefined&&f===o&&i===h){m=Oq(n,e.getPositionBefore(),c)}}Rq("rowspan",a,t,n);return m}function u$(t,e){const n=[];const i=new Kq(t);for(const t of i){const{column:i,cellWidth:o}=t;const r=i+o-1;if(i<e&&e<=r){n.push(t)}}return n}function h$(t,e,n,i){const o=parseInt(t.getAttribute("colspan"));const r=n-e;const s={};const a=o-r;if(a>1){s.colspan=a}const c=parseInt(t.getAttribute("rowspan")||1);if(c>1){s.rowspan=c}const l=Oq(i,i.createPositionAfter(t),s);Rq("colspan",r,t,i);return l}function g$(t,e,n,i,o,r){const s=parseInt(t.getAttribute("colspan")||1);const a=parseInt(t.getAttribute("rowspan")||1);const c=n+s-1;if(c>o){const e=o-n+1;Rq("colspan",e,t,r,1)}const l=e+a-1;if(l>i){const n=i-e+1;Rq("rowspan",n,t,r,1)}}function m$(t,e,n,i,o){const r=parseInt(e.getAttribute("headingRows")||0);if(r>0){const e=r-n;Rq("headingRows",e,t,o,0)}const s=parseInt(e.getAttribute("headingColumns")||0);if(s>0){const e=s-i;Rq("headingColumns",e,t,o,0)}}function f$(t,e){const n=e.getColumns(t);const i=new Array(n).fill(0);for(const{column:e}of new Kq(t)){i[e]++}const o=i.reduce(((t,e,n)=>e?t:[...t,n]),[]);if(o.length>0){const n=o[o.length-1];e.removeColumns(t,{at:n});return true}return false}function p$(t,e){const n=[];const i=e.getRows(t);for(let e=0;e<i;e++){const i=t.getChild(e);if(i.isEmpty){n.push(e)}}if(n.length>0){const i=n[n.length-1];e.removeRows(t,{at:i});return true}return false}function b$(t,e){const n=f$(t,e);if(!n){p$(t,e)}}function k$(t,e){const n=Array.from(new Kq(t,{startColumn:e.firstColumn,endColumn:e.lastColumn,row:e.lastRow}));const i=n.every((({cellHeight:t})=>t===1));if(i){return e.lastRow}const o=n[0].cellHeight-1;return e.lastRow+o}function w$(t,e){const n=Array.from(new Kq(t,{startRow:e.firstRow,endRow:e.lastRow,column:e.lastColumn}));const i=n.every((({cellWidth:t})=>t===1));if(i){return e.lastColumn}const o=n[0].cellWidth-1;return e.lastColumn+o}class A$ extends iu{constructor(t,e){super(t);this.direction=e.direction;this.isHorizontal=this.direction=="right"||this.direction=="left"}refresh(){const t=this._getMergeableCell();this.value=t;this.isEnabled=!!t}execute(){const t=this.editor.model;const e=t.document;const n=this.editor.plugins.get("TableUtils");const i=n.getTableCellsContainingSelection(e.selection)[0];const o=this.value;const r=this.direction;t.change((t=>{const e=r=="right"||r=="down";const n=e?i:o;const s=e?o:i;const a=s.parent;v$(s,n,t);const c=this.isHorizontal?"colspan":"rowspan";const l=parseInt(i.getAttribute(c)||1);const d=parseInt(o.getAttribute(c)||1);t.setAttribute(c,l+d,n);t.setSelection(t.createRangeIn(n));const u=this.editor.plugins.get("TableUtils");const h=a.findAncestor("table");b$(h,u)}))}_getMergeableCell(){const t=this.editor.model;const e=t.document;const n=this.editor.plugins.get("TableUtils");const i=n.getTableCellsContainingSelection(e.selection)[0];if(!i){return}const o=this.isHorizontal?C$(i,this.direction,n):_$(i,this.direction,n);if(!o){return}const r=this.isHorizontal?"rowspan":"colspan";const s=parseInt(i.getAttribute(r)||1);const a=parseInt(o.getAttribute(r)||1);if(a===s){return o}}}function C$(t,e,n){const i=t.parent;const o=i.parent;const r=e=="right"?t.nextSibling:t.previousSibling;const s=(o.getAttribute("headingColumns")||0)>0;if(!r){return}const a=e=="right"?t:r;const c=e=="right"?r:t;const{column:l}=n.getCellLocation(a);const{column:d}=n.getCellLocation(c);const u=parseInt(a.getAttribute("colspan")||1);const h=Vq(n,a,o);const g=Vq(n,c,o);if(s&&h!=g){return}const m=l+u===d;return m?r:undefined}function _$(t,e,n){const i=t.parent;const o=i.parent;const r=o.getChildIndex(i);if(e=="down"&&r===n.getRows(o)-1||e=="up"&&r===0){return}const s=parseInt(t.getAttribute("rowspan")||1);const a=o.getAttribute("headingRows")||0;const c=e=="down"&&r+s===a;const l=e=="up"&&r===a;if(a&&(c||l)){return}const d=parseInt(t.getAttribute("rowspan")||1);const u=e=="down"?r+d:r;const h=[...new Kq(o,{endRow:u})];const g=h.find((e=>e.cell===t));const m=g.column;const f=h.find((({row:t,cellHeight:n,column:i})=>{if(i!==m){return false}if(e=="down"){return t===u}else{return u===t+n}}));return f&&f.cell}function v$(t,e,n){if(!y$(t)){if(y$(e)){n.remove(n.createRangeIn(e))}n.move(n.createRangeIn(t),n.createPositionAt(e,"end"))}n.remove(t)}function y$(t){return t.childCount==1&&t.getChild(0).is("element","paragraph")&&t.getChild(0).isEmpty}class x$ extends iu{refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);const n=e[0];if(n){const i=n.findAncestor("table");const o=this.editor.plugins.get("TableUtils").getRows(i);const r=o-1;const s=t.getRowIndexes(e);const a=s.first===0&&s.last===r;this.isEnabled=!a}else{this.isEnabled=false}}execute(){const t=this.editor.model;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.document.selection);const i=e.getRowIndexes(n);const o=n[0];const r=o.findAncestor("table");const s=e.getCellLocation(o).column;t.change((t=>{const n=i.last-i.first+1;e.removeRows(r,{at:i.first,rows:n});const o=E$(r,i.first,s,e.getRows(r));t.setSelection(t.createPositionAt(o,0))}))}}function E$(t,e,n,i){const o=t.getChild(Math.min(e,i-1));let r=o.getChild(0);let s=0;for(const t of o.getChildren()){if(s>n){return r}r=t;s+=parseInt(t.getAttribute("colspan")||1)}return r}class D$ extends iu{refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);const n=e[0];if(n){const i=n.findAncestor("table");const o=t.getColumns(i);const{first:r,last:s}=t.getColumnIndexes(e);this.isEnabled=s-r<o-1}else{this.isEnabled=false}}execute(){const t=this.editor.plugins.get("TableUtils");const[e,n]=S$(this.editor.model.document.selection,t);const i=e.parent.parent;const o=[...new Kq(i)];const r={first:o.find((t=>t.cell===e)).column,last:o.find((t=>t.cell===n)).column};const s=T$(o,e,n,r);this.editor.model.change((t=>{const e=r.last-r.first+1;this.editor.plugins.get("TableUtils").removeColumns(i,{at:r.first,columns:e});t.setSelection(t.createPositionAt(s,0))}))}}function T$(t,e,n,i){const o=parseInt(n.getAttribute("colspan")||1);if(o>1){return n}else if(e.previousSibling||n.nextSibling){return n.nextSibling||e.previousSibling}else{if(i.first){return t.reverse().find((({column:t})=>t<i.first)).cell}else{return t.reverse().find((({column:t})=>t>i.last)).cell}}}function S$(t,e){const n=e.getSelectionAffectedTableCells(t);const i=n[0];const o=n.pop();const r=[i,o];return i.isBefore(o)?r:r.reverse()}class I$ extends iu{refresh(){const t=this.editor.plugins.get("TableUtils");const e=this.editor.model;const n=t.getSelectionAffectedTableCells(e.document.selection);const i=n.length>0;this.isEnabled=i;this.value=i&&n.every((t=>this._isInHeading(t,t.parent.parent)))}execute(t={}){if(t.forceValue===this.value){return}const e=this.editor.plugins.get("TableUtils");const n=this.editor.model;const i=e.getSelectionAffectedTableCells(n.document.selection);const o=i[0].findAncestor("table");const{first:r,last:s}=e.getRowIndexes(i);const a=this.value?r:s+1;const c=o.getAttribute("headingRows")||0;n.change((t=>{if(a){const e=a>c?c:0;const n=l$(o,a,e);for(const{cell:e}of n){d$(e,a,t)}}Rq("headingRows",a,o,t,0)}))}_isInHeading(t,e){const n=parseInt(e.getAttribute("headingRows")||0);return!!n&&t.parent.index<n}}class B$ extends iu{refresh(){const t=this.editor.model;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.document.selection);const i=n.length>0;this.isEnabled=i;this.value=i&&n.every((t=>Vq(e,t)))}execute(t={}){if(t.forceValue===this.value){return}const e=this.editor.plugins.get("TableUtils");const n=this.editor.model;const i=e.getSelectionAffectedTableCells(n.document.selection);const o=i[0].findAncestor("table");const{first:r,last:s}=e.getColumnIndexes(i);const a=this.value?r:s+1;n.change((t=>{if(a){const e=u$(o,a);for(const{cell:n,column:i}of e){h$(n,i,a,t)}}Rq("headingColumns",a,o,t,0)}))}}class M$ extends eu{static get pluginName(){return"TableUtils"}init(){this.decorate("insertColumns");this.decorate("insertRows")}getCellLocation(t){const e=t.parent;const n=e.parent;const i=n.getChildIndex(e);const o=new Kq(n,{row:i});for(const{cell:e,row:n,column:i}of o){if(e===t){return{row:n,column:i}}}}createTable(t,e){const n=t.createElement("table");const i=parseInt(e.rows)||2;const o=parseInt(e.columns)||2;L$(t,n,0,i,o);if(e.headingRows){Rq("headingRows",Math.min(e.headingRows,i),n,t,0)}if(e.headingColumns){Rq("headingColumns",Math.min(e.headingColumns,o),n,t,0)}return n}insertRows(t,e={}){const n=this.editor.model;const i=e.at||0;const o=e.rows||1;const r=e.copyStructureFromAbove!==undefined;const s=e.copyStructureFromAbove?i-1:i;const a=this.getRows(t);const c=this.getColumns(t);if(i>a){throw new z("tableutils-insertrows-insert-out-of-range",this,{options:e})}n.change((e=>{const n=t.getAttribute("headingRows")||0;if(n>i){Rq("headingRows",n+o,t,e,0)}if(!r&&(i===0||i===a)){L$(e,t,i,o,c);return}const l=r?Math.max(i,s):i;const d=new Kq(t,{endRow:l});const u=new Array(c).fill(1);for(const{row:t,column:n,cellHeight:a,cellWidth:c,cell:l}of d){const d=t+a-1;const h=t<i&&i<=d;const g=t<=s&&s<=d;if(h){e.setAttribute("rowspan",a+o,l);u[n]=-c}else if(r&&g){u[n]=c}}for(let n=0;n<o;n++){const n=e.createElement("tableRow");e.insert(n,t,i);for(let t=0;t<u.length;t++){const i=u[t];const o=e.createPositionAt(n,"end");if(i>0){Oq(e,o,i>1?{colspan:i}:null)}t+=Math.abs(i)-1}}}))}insertColumns(t,e={}){const n=this.editor.model;const i=e.at||0;const o=e.columns||1;n.change((e=>{const n=t.getAttribute("headingColumns");if(i<n){e.setAttribute("headingColumns",n+o,t)}const r=this.getColumns(t);if(i===0||r===i){for(const n of t.getChildren()){if(!n.is("element","tableRow")){continue}N$(o,e,e.createPositionAt(n,i?"end":0))}return}const s=new Kq(t,{column:i,includeAllSlots:true});for(const t of s){const{row:n,cell:r,cellAnchorColumn:a,cellAnchorRow:c,cellWidth:l,cellHeight:d}=t;if(a<i){e.setAttribute("colspan",l+o,r);const t=c+d-1;for(let e=n;e<=t;e++){s.skipRow(e)}}else{N$(o,e,t.getPositionBefore())}}}))}removeRows(t,e){const n=this.editor.model;const i=e.rows||1;const o=this.getRows(t);const r=e.at;const s=r+i-1;if(s>o-1){throw new z("tableutils-removerows-row-index-out-of-range",this,{table:t,options:e})}n.change((e=>{const{cellsToMove:n,cellsToTrim:i}=O$(t,r,s);if(n.size){const i=s+1;V$(t,i,n,e)}for(let n=s;n>=r;n--){e.remove(t.getChild(n))}for(const{rowspan:t,cell:n}of i){Rq("rowspan",t,n,e)}R$(t,r,s,e);if(!f$(t,this)){p$(t,this)}}))}removeColumns(t,e){const n=this.editor.model;const i=e.at;const o=e.columns||1;const r=e.at+o-1;n.change((e=>{P$(t,{first:i,last:r},e);for(let n=r;n>=i;n--){for(const{cell:i,column:o,cellWidth:r}of[...new Kq(t)]){if(o<=n&&r>1&&o+r>n){Rq("colspan",r-1,i,e)}else if(o===n){e.remove(i)}}}if(!p$(t,this)){f$(t,this)}}))}splitCellVertically(t,e=2){const n=this.editor.model;const i=t.parent;const o=i.parent;const r=parseInt(t.getAttribute("rowspan")||1);const s=parseInt(t.getAttribute("colspan")||1);n.change((n=>{if(s>1){const{newCellsSpan:i,updatedSpan:o}=z$(s,e);Rq("colspan",o,t,n);const a={};if(i>1){a.colspan=i}if(r>1){a.rowspan=r}const c=s>e?e-1:s-1;N$(c,n,n.createPositionAfter(t),a)}if(s<e){const i=e-s;const a=[...new Kq(o)];const{column:c}=a.find((({cell:e})=>e===t));const l=a.filter((({cell:e,cellWidth:n,column:i})=>{const o=e!==t&&i===c;const r=i<c&&i+n>c;return o||r}));for(const{cell:t,cellWidth:e}of l){n.setAttribute("colspan",e+i,t)}const d={};if(r>1){d.rowspan=r}N$(i,n,n.createPositionAfter(t),d);const u=o.getAttribute("headingColumns")||0;if(u>c){Rq("headingColumns",u+i,o,n)}}}))}splitCellHorizontally(t,e=2){const n=this.editor.model;const i=t.parent;const o=i.parent;const r=o.getChildIndex(i);const s=parseInt(t.getAttribute("rowspan")||1);const a=parseInt(t.getAttribute("colspan")||1);n.change((n=>{if(s>1){const i=[...new Kq(o,{startRow:r,endRow:r+s-1,includeAllSlots:true})];const{newCellsSpan:c,updatedSpan:l}=z$(s,e);Rq("rowspan",l,t,n);const{column:d}=i.find((({cell:e})=>e===t));const u={};if(c>1){u.rowspan=c}if(a>1){u.colspan=a}for(const t of i){const{column:e,row:i}=t;const o=i>=r+l;const s=e===d;const a=(i+r+l)%c===0;if(o&&s&&a){N$(1,n,t.getPositionBefore(),u)}}}if(s<e){const i=e-s;const c=[...new Kq(o,{startRow:0,endRow:r})];for(const{cell:e,cellHeight:o,row:s}of c){if(e!==t&&s+o>r){const t=o+i;n.setAttribute("rowspan",t,e)}}const l={};if(a>1){l.colspan=a}L$(n,o,r+1,i,1,l);const d=o.getAttribute("headingRows")||0;if(d>r){Rq("headingRows",d+i,o,n)}}}))}getColumns(t){const e=t.getChild(0);return[...e.getChildren()].reduce(((t,e)=>{const n=parseInt(e.getAttribute("colspan")||1);return t+n}),0)}getRows(t){return Array.from(t.getChildren()).reduce(((t,e)=>e.is("element","tableRow")?t+1:t),0)}createTableWalker(t,e={}){return new Kq(t,e)}getSelectedTableCells(t){const e=[];for(const n of this.sortRanges(t.getRanges())){const t=n.getContainedElement();if(t&&t.is("element","tableCell")){e.push(t)}}return e}getTableCellsContainingSelection(t){const e=[];for(const n of t.getRanges()){const t=n.start.findAncestor("tableCell");if(t){e.push(t)}}return e}getSelectionAffectedTableCells(t){const e=this.getSelectedTableCells(t);if(e.length){return e}return this.getTableCellsContainingSelection(t)}getRowIndexes(t){const e=t.map((t=>t.parent.index));return this._getFirstLastIndexesObject(e)}getColumnIndexes(t){const e=t[0].findAncestor("table");const n=[...new Kq(e)];const i=n.filter((e=>t.includes(e.cell))).map((t=>t.column));return this._getFirstLastIndexesObject(i)}isSelectionRectangular(t){if(t.length<2||!this._areCellInTheSameTableSection(t)){return false}const e=new Set;const n=new Set;let i=0;for(const o of t){const{row:t,column:r}=this.getCellLocation(o);const s=parseInt(o.getAttribute("rowspan")||1);const a=parseInt(o.getAttribute("colspan")||1);e.add(t);n.add(r);if(s>1){e.add(t+s-1)}if(a>1){n.add(r+a-1)}i+=s*a}const o=j$(e,n);return o==i}sortRanges(t){return Array.from(t).sort(F$)}_getFirstLastIndexesObject(t){const e=t.sort(((t,e)=>t-e));const n=e[0];const i=e[e.length-1];return{first:n,last:i}}_areCellInTheSameTableSection(t){const e=t[0].findAncestor("table");const n=this.getRowIndexes(t);const i=parseInt(e.getAttribute("headingRows")||0);if(!this._areIndexesInSameSection(n,i)){return false}const o=parseInt(e.getAttribute("headingColumns")||0);const r=this.getColumnIndexes(t);return this._areIndexesInSameSection(r,o)}_areIndexesInSameSection({first:t,last:e},n){const i=t<n;const o=e<n;return i===o}}function L$(t,e,n,i,o,r={}){for(let s=0;s<i;s++){const i=t.createElement("tableRow");t.insert(i,e,n);N$(o,t,t.createPositionAt(i,"end"),r)}}function N$(t,e,n,i={}){for(let o=0;o<t;o++){Oq(e,n,i)}}function z$(t,e){if(t<e){return{newCellsSpan:1,updatedSpan:1}}const n=Math.floor(t/e);const i=t-n*e+n;return{newCellsSpan:n,updatedSpan:i}}function P$(t,e,n){const i=t.getAttribute("headingColumns")||0;if(i&&e.first<i){const o=Math.min(i-1,e.last)-e.first+1;n.setAttribute("headingColumns",i-o,t)}}function R$(t,e,n,i){const o=t.getAttribute("headingRows")||0;if(e<o){const r=n<o?o-(n-e+1):e;Rq("headingRows",r,t,i,0)}}function O$(t,e,n){const i=new Map;const o=[];for(const{row:r,column:s,cellHeight:a,cell:c}of new Kq(t,{endRow:n})){const t=r+a-1;const l=r>=e&&r<=n&&t>n;if(l){const t=n-r+1;const e=a-t;i.set(s,{cell:c,rowspan:e})}const d=r<e&&t>=e;if(d){let i;if(t>=n){i=n-e+1}else{i=t-e+1}o.push({cell:c,rowspan:a-i})}}return{cellsToMove:i,cellsToTrim:o}}function V$(t,e,n,i){const o=new Kq(t,{includeAllSlots:true,row:e});const r=[...o];const s=t.getChild(e);let a;for(const{column:t,cell:e,isAnchor:o}of r){if(n.has(t)){const{cell:e,rowspan:o}=n.get(t);const r=a?i.createPositionAfter(a):i.createPositionAt(s,0);i.move(i.createRangeOn(e),r);Rq("rowspan",o,e,i);a=e}else if(o){a=e}}}function F$(t,e){const n=t.start;const i=e.start;return n.isBefore(i)?-1:1}function j$(t,e){const n=Array.from(t.values());const i=Array.from(e.values());const o=Math.max(...n);const r=Math.min(...n);const s=Math.max(...i);const a=Math.min(...i);return(o-r+1)*(s-a+1)}class H$ extends iu{refresh(){const t=this.editor.plugins.get(M$);const e=t.getSelectedTableCells(this.editor.model.document.selection);this.isEnabled=t.isSelectionRectangular(e,this.editor.plugins.get(M$))}execute(){const t=this.editor.model;const e=this.editor.plugins.get(M$);t.change((n=>{const i=e.getSelectedTableCells(t.document.selection);const o=i.shift();const{mergeWidth:r,mergeHeight:s}=q$(o,i,e);Rq("colspan",r,o,n);Rq("rowspan",s,o,n);for(const t of i){U$(t,o,n)}const a=o.findAncestor("table");b$(a,e);n.setSelection(o,"in")}))}}function U$(t,e,n){if(!W$(t)){if(W$(e)){n.remove(n.createRangeIn(e))}n.move(n.createRangeIn(t),n.createPositionAt(e,"end"))}n.remove(t)}function W$(t){return t.childCount==1&&t.getChild(0).is("element","paragraph")&&t.getChild(0).isEmpty}function q$(t,e,n){let i=0;let o=0;for(const t of e){const{row:e,column:r}=n.getCellLocation(t);i=$$(t,r,i,"colspan");o=$$(t,e,o,"rowspan")}const{row:r,column:s}=n.getCellLocation(t);const a=i-s;const c=o-r;return{mergeWidth:a,mergeHeight:c}}function $$(t,e,n,i){const o=parseInt(t.getAttribute(i)||1);return Math.max(n,e+o)}class G$ extends iu{constructor(t){super(t);this.affectsData=false}refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);this.isEnabled=e.length>0}execute(){const t=this.editor.model;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.document.selection);const i=e.getRowIndexes(n);const o=n[0].findAncestor("table");const r=[];for(let e=i.first;e<=i.last;e++){for(const n of o.getChild(e).getChildren()){r.push(t.createRangeOn(n))}}t.change((t=>{t.setSelection(r)}))}}class K$ extends iu{constructor(t){super(t);this.affectsData=false}refresh(){const t=this.editor.plugins.get("TableUtils");const e=t.getSelectionAffectedTableCells(this.editor.model.document.selection);this.isEnabled=e.length>0}execute(){const t=this.editor.plugins.get("TableUtils");const e=this.editor.model;const n=t.getSelectionAffectedTableCells(e.document.selection);const i=n[0];const o=n.pop();const r=i.findAncestor("table");const s=t.getCellLocation(i);const a=t.getCellLocation(o);const c=Math.min(s.column,a.column);const l=Math.max(s.column,a.column);const d=[];for(const t of new Kq(r,{startColumn:c,endColumn:l})){d.push(e.createRangeOn(t.cell))}e.change((t=>{t.setSelection(d)}))}}function Y$(t){t.document.registerPostFixer((e=>Z$(e,t)))}function Z$(t,e){const n=e.document.differ.getChanges();let i=false;const o=new Set;for(const e of n){let n;if(e.name=="table"&&e.type=="insert"){n=e.position.nodeAfter}if(e.name=="tableRow"||e.name=="tableCell"){n=e.position.findAncestor("table")}if(eG(e)){n=e.range.start.findAncestor("table")}if(n&&!o.has(n)){i=Q$(n,t)||i;i=J$(n,t)||i;o.add(n)}}return i}function Q$(t,e){let n=false;const i=X$(t);if(i.length){n=true;for(const t of i){Rq("rowspan",t.rowspan,t.cell,e,1)}}return n}function J$(t,e){let n=false;const i=tG(t);const o=[];for(const[e,n]of i.entries()){if(!n&&t.getChild(e).is("element","tableRow")){o.push(e)}}if(o.length){n=true;for(const n of o.reverse()){e.remove(t.getChild(n));i.splice(n,1)}}const r=i.filter(((e,n)=>t.getChild(n).is("element","tableRow")));const s=r[0];const a=r.every((t=>t===s));if(!a){const i=r.reduce(((t,e)=>e>t?e:t),0);for(const[o,s]of r.entries()){const r=i-s;if(r){for(let n=0;n<r;n++){Oq(e,e.createPositionAt(t.getChild(o),"end"))}n=true}}}return n}function X$(t){const e=parseInt(t.getAttribute("headingRows")||0);const n=Array.from(t.getChildren()).reduce(((t,e)=>e.is("element","tableRow")?t+1:t),0);const i=[];for(const{row:o,cell:r,cellHeight:s}of new Kq(t)){if(s<2){continue}const t=o<e;const a=t?e:n;if(o+s>a){const t=a-o;i.push({cell:r,rowspan:t})}}return i}function tG(t){const e=new Array(t.childCount).fill(0);for(const{rowIndex:n}of new Kq(t,{includeAllSlots:true})){e[n]++}return e}function eG(t){const e=t.type==="attribute";const n=t.attributeKey;return e&&(n==="headingRows"||n==="colspan"||n==="rowspan")}function nG(t){t.document.registerPostFixer((e=>iG(e,t)))}function iG(t,e){const n=e.document.differ.getChanges();let i=false;for(const e of n){if(e.type=="insert"&&e.name=="table"){i=oG(e.position.nodeAfter,t)||i}if(e.type=="insert"&&e.name=="tableRow"){i=rG(e.position.nodeAfter,t)||i}if(e.type=="insert"&&e.name=="tableCell"){i=sG(e.position.nodeAfter,t)||i}if(aG(e)){i=sG(e.position.parent,t)||i}}return i}function oG(t,e){let n=false;for(const i of t.getChildren()){if(i.is("element","tableRow")){n=rG(i,e)||n}}return n}function rG(t,e){let n=false;for(const i of t.getChildren()){n=sG(i,e)||n}return n}function sG(t,e){if(t.childCount==0){e.insertElement("paragraph",t);return true}const n=Array.from(t.getChildren()).filter((t=>t.is("$text")));for(const t of n){e.wrap(e.createRangeOn(t),"paragraph")}return!!n.length}function aG(t){if(!t.position||!t.position.parent.is("element","tableCell")){return false}return t.type=="insert"&&t.name=="$text"||t.type=="remove"}function cG(t,e){const n=t.document.differ;for(const t of n.getChanges()){let n;let i=false;if(t.type=="attribute"){const e=t.range.start.nodeAfter;if(!e||!e.is("element","table")){continue}if(t.attributeKey!="headingRows"&&t.attributeKey!="headingColumns"){continue}n=e;i=t.attributeKey=="headingRows"}else if(t.name=="tableRow"||t.name=="tableCell"){n=t.position.findAncestor("table");i=t.name=="tableRow"}if(!n){continue}const o=n.getAttribute("headingRows")||0;const r=n.getAttribute("headingColumns")||0;const s=new Kq(n);for(const t of s){const n=t.row<o||t.column<r;const s=n?"th":"td";const a=e.mapper.toViewElement(t.cell);if(a&&a.is("element")&&a.name!=s){e.reconvertItem(i?t.cell.parent:t.cell)}}}}function lG(t,e){const n=t.document.differ;const i=new Set;for(const t of n.getChanges()){const e=t.type=="attribute"?t.range.start.parent:t.position.parent;if(e.is("element","tableCell")){i.add(e)}}for(const t of i.values()){const n=Array.from(t.getChildren()).filter((t=>dG(t,e.mapper)));for(const t of n){e.reconvertItem(t)}}}function dG(t,e){if(!t.is("element","paragraph")){return false}const n=e.toViewElement(t);if(!n){return false}return t$(t)!==n.is("element","span")}var uG=n(4777);var hG={injectType:"singletonStyleTag",attributes:{"data-cke":true}};hG.insert="head";hG.singleton=true;var gG=Tl()(uG.Z,hG);const mG=uG.Z.locals||{};class fG extends eu{static get pluginName(){return"TableEditing"}static get requires(){return[M$]}init(){const t=this.editor;const e=t.model;const n=e.schema;const i=t.conversion;const o=t.plugins.get(M$);n.register("table",{inheritAllFrom:"$blockObject",allowAttributes:["headingRows","headingColumns"]});n.register("tableRow",{allowIn:"table",isLimit:true});n.register("tableCell",{allowContentOf:"$container",allowIn:"tableRow",allowAttributes:["colspan","rowspan"],isLimit:true,isSelectable:true});i.for("upcast").add(jq());i.for("upcast").add(Hq());i.for("editingDowncast").elementToStructure({model:{name:"table",attributes:["headingRows"]},view:Zq(o,{asWidget:true})});i.for("dataDowncast").elementToStructure({model:{name:"table",attributes:["headingRows"]},view:Zq(o)});i.for("upcast").elementToElement({model:"tableRow",view:"tr"});i.for("upcast").add(Uq());i.for("downcast").elementToElement({model:"tableRow",view:Qq()});i.for("upcast").elementToElement({model:"tableCell",view:"td"});i.for("upcast").elementToElement({model:"tableCell",view:"th"});i.for("upcast").add(Wq("td"));i.for("upcast").add(Wq("th"));i.for("editingDowncast").elementToElement({model:"tableCell",view:Jq({asWidget:true})});i.for("dataDowncast").elementToElement({model:"tableCell",view:Jq()});i.for("editingDowncast").elementToElement({model:"paragraph",view:Xq({asWidget:true}),converterPriority:"high"});i.for("dataDowncast").elementToElement({model:"paragraph",view:Xq(),converterPriority:"high"});i.for("downcast").attributeToAttribute({model:"colspan",view:"colspan"});i.for("upcast").attributeToAttribute({model:{key:"colspan",value:pG("colspan")},view:"colspan"});i.for("downcast").attributeToAttribute({model:"rowspan",view:"rowspan"});i.for("upcast").attributeToAttribute({model:{key:"rowspan",value:pG("rowspan")},view:"rowspan"});t.config.define("table.defaultHeadings.rows",0);t.config.define("table.defaultHeadings.columns",0);t.commands.add("insertTable",new i$(t));t.commands.add("insertTableRowAbove",new r$(t,{order:"above"}));t.commands.add("insertTableRowBelow",new r$(t,{order:"below"}));t.commands.add("insertTableColumnLeft",new s$(t,{order:"left"}));t.commands.add("insertTableColumnRight",new s$(t,{order:"right"}));t.commands.add("removeTableRow",new x$(t));t.commands.add("removeTableColumn",new D$(t));t.commands.add("splitTableCellVertically",new a$(t,{direction:"vertically"}));t.commands.add("splitTableCellHorizontally",new a$(t,{direction:"horizontally"}));t.commands.add("mergeTableCells",new H$(t));t.commands.add("mergeTableCellRight",new A$(t,{direction:"right"}));t.commands.add("mergeTableCellLeft",new A$(t,{direction:"left"}));t.commands.add("mergeTableCellDown",new A$(t,{direction:"down"}));t.commands.add("mergeTableCellUp",new A$(t,{direction:"up"}));t.commands.add("setTableColumnHeader",new B$(t));t.commands.add("setTableRowHeader",new I$(t));t.commands.add("selectTableRow",new G$(t));t.commands.add("selectTableColumn",new K$(t));Y$(e);nG(e);this.listenTo(e.document,"change:data",(()=>{cG(e,t.editing);lG(e,t.editing)}))}}function pG(t){return e=>{const n=parseInt(e.getAttribute(t));if(Number.isNaN(n)||n<=0){return null}return n}}var bG=n(8085);var kG={injectType:"singletonStyleTag",attributes:{"data-cke":true}};kG.insert="head";kG.singleton=true;var wG=Tl()(bG.Z,kG);const AG=bG.Z.locals||{};class CG extends Ll{constructor(t){super(t);const e=this.bindTemplate;this.items=this._createGridCollection();this.keystrokes=new hl;this.focusTracker=new ul;this.set("rows",0);this.set("columns",0);this.bind("label").to(this,"columns",this,"rows",((t,e)=>`${e} × ${t}`));this.setTemplate({tag:"div",attributes:{class:["ck"]},children:[{tag:"div",attributes:{class:["ck-insert-table-dropdown__grid"]},on:{"mouseover@.ck-insert-table-dropdown-grid-box":e.to("boxover")},children:this.items},{tag:"div",attributes:{class:["ck","ck-insert-table-dropdown__label"],"aria-hidden":true},children:[{text:e.to("label")}]}],on:{mousedown:e.to((t=>{t.preventDefault()})),click:e.to((()=>{this.fire("execute")}))}});this.on("boxover",((t,e)=>{const{row:n,column:i}=e.target.dataset;this.items.get((parseInt(n,10)-1)*10+(parseInt(i,10)-1)).focus()}));this.focusTracker.on("change:focusedElement",((t,e,n)=>{if(!n){return}const{row:i,column:o}=n.dataset;this.set({rows:parseInt(i),columns:parseInt(o)})}));this.on("change:columns",(()=>this._highlightGridBoxes()));this.on("change:rows",(()=>this._highlightGridBoxes()))}render(){super.render();r({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.items,numberOfColumns:10,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection});for(const t of this.items){this.focusTracker.add(t.element)}this.keystrokes.listenTo(this.element)}focus(){this.items.get(0).focus()}focusLast(){this.items.get(0).focus()}_highlightGridBoxes(){const t=this.rows;const e=this.columns;this.items.map(((n,i)=>{const o=Math.floor(i/10);const r=i%10;const s=o<t&&r<e;n.set("isOn",s)}))}_createGridButton(t,e,n,i){const o=new kd(t);o.set({label:i,class:"ck-insert-table-dropdown-grid-box"});o.extendTemplate({attributes:{"data-row":e,"data-column":n}});return o}_createGridCollection(){const t=[];for(let e=0;e<100;e++){const n=Math.floor(e/10);const i=e%10;const o=`${n+1} × ${i+1}`;t.push(this._createGridButton(this.locale,n+1,i+1,o))}return this.createCollection(t)}}const _G='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3 6v3h4V6H3zm0 4v3h4v-3H3zm0 4v3h4v-3H3zm5 3h4v-3H8v3zm5 0h4v-3h-4v3zm4-4v-3h-4v3h4zm0-4V6h-4v3h4zm1.5 8a1.5 1.5 0 0 1-1.5 1.5H3A1.5 1.5 0 0 1 1.5 17V4c.222-.863 1.068-1.5 2-1.5h13c.932 0 1.778.637 2 1.5v13zM12 13v-3H8v3h4zm0-4V6H8v3h4z"/></svg>';const vG='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1h15A1.5 1.5 0 0 1 19 2.5v15a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1zM2 2v16h16V2H2z" opacity=".6"/><path d="M18 7v1H2V7h16zm0 5v1H2v-1h16z" opacity=".6"/><path d="M14 1v18a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1zm-2 1H8v4h4V2zm0 6H8v4h4V8zm0 6H8v4h4v-4z"/></svg>';const yG='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1h15A1.5 1.5 0 0 1 19 2.5v15a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1zM2 2v16h16V2H2z" opacity=".6"/><path d="M7 2h1v16H7V2zm5 0h1v16h-1V2z" opacity=".6"/><path d="M1 6h18a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1zm1 2v4h4V8H2zm6 0v4h4V8H8zm6 0v4h4V8h-4z"/></svg>';const xG='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1h15A1.5 1.5 0 0 1 19 2.5v15a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1zM2 2v16h16V2H2z" opacity=".6"/><path d="M7 2h1v16H7V2zm5 0h1v7h-1V2zm6 5v1H2V7h16zM8 12v1H2v-1h6z" opacity=".6"/><path d="M7 7h12a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1zm1 2v9h10V9H8z"/></svg>';class EG extends eu{static get pluginName(){return"TableUI"}init(){const t=this.editor;const e=this.editor.t;const n=t.locale.contentLanguageDirection;const i=n==="ltr";t.ui.componentFactory.add("insertTable",(n=>{const i=t.commands.get("insertTable");const o=yv(n);o.bind("isEnabled").to(i);o.buttonView.set({icon:_G,label:e("Insert table"),tooltip:true});let r;o.on("change:isOpen",(()=>{if(r){return}r=new CG(n);o.panelView.children.add(r);r.delegate("execute").to(o);o.on("execute",(()=>{t.execute("insertTable",{rows:r.rows,columns:r.columns});t.editing.view.focus()}))}));return o}));t.ui.componentFactory.add("tableColumn",(t=>{const n=[{type:"switchbutton",model:{commandName:"setTableColumnHeader",label:e("Header column"),bindIsOn:true}},{type:"separator"},{type:"button",model:{commandName:i?"insertTableColumnLeft":"insertTableColumnRight",label:e("Insert column left")}},{type:"button",model:{commandName:i?"insertTableColumnRight":"insertTableColumnLeft",label:e("Insert column right")}},{type:"button",model:{commandName:"removeTableColumn",label:e("Delete column")}},{type:"button",model:{commandName:"selectTableColumn",label:e("Select column")}}];return this._prepareDropdown(e("Column"),vG,n,t)}));t.ui.componentFactory.add("tableRow",(t=>{const n=[{type:"switchbutton",model:{commandName:"setTableRowHeader",label:e("Header row"),bindIsOn:true}},{type:"separator"},{type:"button",model:{commandName:"insertTableRowAbove",label:e("Insert row above")}},{type:"button",model:{commandName:"insertTableRowBelow",label:e("Insert row below")}},{type:"button",model:{commandName:"removeTableRow",label:e("Delete row")}},{type:"button",model:{commandName:"selectTableRow",label:e("Select row")}}];return this._prepareDropdown(e("Row"),yG,n,t)}));t.ui.componentFactory.add("mergeTableCells",(t=>{const n=[{type:"button",model:{commandName:"mergeTableCellUp",label:e("Merge cell up")}},{type:"button",model:{commandName:i?"mergeTableCellRight":"mergeTableCellLeft",label:e("Merge cell right")}},{type:"button",model:{commandName:"mergeTableCellDown",label:e("Merge cell down")}},{type:"button",model:{commandName:i?"mergeTableCellLeft":"mergeTableCellRight",label:e("Merge cell left")}},{type:"separator"},{type:"button",model:{commandName:"splitTableCellVertically",label:e("Split cell vertically")}},{type:"button",model:{commandName:"splitTableCellHorizontally",label:e("Split cell horizontally")}}];return this._prepareMergeSplitButtonDropdown(e("Merge cells"),xG,n,t)}))}_prepareDropdown(t,e,n,i){const o=this.editor;const r=yv(i);const s=this._fillDropdownWithListOptions(r,n);r.buttonView.set({label:t,icon:e,tooltip:true});r.bind("isEnabled").toMany(s,"isEnabled",((...t)=>t.some((t=>t))));this.listenTo(r,"execute",(t=>{o.execute(t.source.commandName);if(!(t.source instanceof vd)){o.editing.view.focus()}}));return r}_prepareMergeSplitButtonDropdown(t,e,n,i){const o=this.editor;const r=yv(i,Gd);const s="mergeTableCells";const a=o.commands.get(s);const c=this._fillDropdownWithListOptions(r,n);r.buttonView.set({label:t,icon:e,tooltip:true,isEnabled:true});r.bind("isEnabled").toMany([a,...c],"isEnabled",((...t)=>t.some((t=>t))));this.listenTo(r.buttonView,"execute",(()=>{o.execute(s);o.editing.view.focus()}));this.listenTo(r,"execute",(t=>{o.execute(t.source.commandName);o.editing.view.focus()}));return r}_fillDropdownWithListOptions(t,e){const n=this.editor;const i=[];const o=new ll;for(const t of e){DG(t,n,i,o)}Dv(t,o);return i}}function DG(t,e,n,i){const o=t.model=new Oy(t.model);const{commandName:r,bindIsOn:s}=t.model;if(t.type==="button"||t.type==="switchbutton"){const t=e.commands.get(r);n.push(t);o.set({commandName:r});o.bind("isEnabled").to(t);if(s){o.bind("isOn").to(t,"value")}}o.set({withText:true});i.add(t)}var TG=n(5593);var SG={injectType:"singletonStyleTag",attributes:{"data-cke":true}};SG.insert="head";SG.singleton=true;var IG=Tl()(TG.Z,SG);const BG=TG.Z.locals||{};class MG extends eu{static get pluginName(){return"TableSelection"}static get requires(){return[M$,M$]}init(){const t=this.editor;const e=t.model;const n=t.editing.view;this.listenTo(e,"deleteContent",((t,e)=>this._handleDeleteContent(t,e)),{priority:"high"});this.listenTo(n.document,"insertText",((t,e)=>this._handleInsertTextEvent(t,e)),{priority:"high"});this._defineSelectionConverter();this._enablePluginDisabling()}getSelectedTableCells(){const t=this.editor.plugins.get(M$);const e=this.editor.model.document.selection;const n=t.getSelectedTableCells(e);if(n.length==0){return null}return n}getSelectionAsFragment(){const t=this.editor.plugins.get(M$);const e=this.getSelectedTableCells();if(!e){return null}return this.editor.model.change((n=>{const i=n.createDocumentFragment();const{first:o,last:r}=t.getColumnIndexes(e);const{first:s,last:a}=t.getRowIndexes(e);const c=e[0].findAncestor("table");let l=a;let d=r;if(t.isSelectionRectangular(e)){const t={firstColumn:o,lastColumn:r,firstRow:s,lastRow:a};l=k$(c,t);d=w$(c,t)}const u={startRow:s,startColumn:o,endRow:l,endColumn:d};const h=c$(c,u,n);n.insert(h,i,0);return i}))}setCellSelection(t,e){const n=this._getCellsToSelect(t,e);this.editor.model.change((t=>{t.setSelection(n.cells.map((e=>t.createRangeOn(e))),{backward:n.backward})}))}getFocusCell(){const t=this.editor.model.document.selection;const e=[...t.getRanges()].pop();const n=e.getContainedElement();if(n&&n.is("element","tableCell")){return n}return null}getAnchorCell(){const t=this.editor.model.document.selection;const e=dl(t.getRanges());const n=e.getContainedElement();if(n&&n.is("element","tableCell")){return n}return null}_defineSelectionConverter(){const t=this.editor;const e=new Set;t.conversion.for("editingDowncast").add((t=>t.on("selection",((t,i,o)=>{const r=o.writer;n(r);const s=this.getSelectedTableCells();if(!s){return}for(const t of s){const n=o.mapper.toViewElement(t);r.addClass("ck-editor__editable_selected",n);e.add(n)}const a=o.mapper.toViewElement(s[s.length-1]);r.setSelection(a,0)}),{priority:"lowest"})));function n(t){for(const n of e){t.removeClass("ck-editor__editable_selected",n)}e.clear()}}_enablePluginDisabling(){const t=this.editor;this.on("change:isEnabled",(()=>{if(!this.isEnabled){const e=this.getSelectedTableCells();if(!e){return}t.model.change((n=>{const i=n.createPositionAt(e[0],0);const o=t.model.schema.getNearestSelectionRange(i);n.setSelection(o)}))}}))}_handleDeleteContent(t,e){const n=this.editor.plugins.get(M$);const[i,o]=e;const r=this.editor.model;const s=!o||o.direction=="backward";const a=n.getSelectedTableCells(i);if(!a.length){return}t.stop();r.change((t=>{const e=a[s?a.length-1:0];r.change((t=>{for(const e of a){r.deleteContent(t.createSelection(e,"in"))}}));const n=r.schema.getNearestSelectionRange(t.createPositionAt(e,0));if(i.is("documentSelection")){t.setSelection(n)}else{i.setTo(n)}}))}_handleInsertTextEvent(t,e){const n=this.editor;const i=n.model;const o=i.document.selection;const r=this.getSelectedTableCells(o);if(!r){return}const s=n.editing.view;const a=n.editing.mapper;const c=r.map((t=>s.createRangeOn(a.toViewElement(t))));e.selection=s.createSelection(c)}_getCellsToSelect(t,e){const n=this.editor.plugins.get("TableUtils");const i=n.getCellLocation(t);const o=n.getCellLocation(e);const r=Math.min(i.row,o.row);const s=Math.max(i.row,o.row);const a=Math.min(i.column,o.column);const c=Math.max(i.column,o.column);const l=new Array(s-r+1).fill(null).map((()=>[]));const d={startRow:r,endRow:s,startColumn:a,endColumn:c};for(const{row:e,cell:n}of new Kq(t.findAncestor("table"),d)){l[e-r].push(n)}const u=o.row<i.row;const h=o.column<i.column;if(u){l.reverse()}if(h){l.forEach((t=>t.reverse()))}return{cells:l.flat(),backward:u||h}}}class LG extends eu{static get pluginName(){return"TableClipboard"}static get requires(){return[MG,M$]}init(){const t=this.editor;const e=t.editing.view.document;this.listenTo(e,"copy",((t,e)=>this._onCopyCut(t,e)));this.listenTo(e,"cut",((t,e)=>this._onCopyCut(t,e)));this.listenTo(t.model,"insertContent",((t,e)=>this._onInsertContent(t,...e)),{priority:"high"});this.decorate("_replaceTableSlotCell")}_onCopyCut(t,e){const n=this.editor.plugins.get(MG);if(!n.getSelectedTableCells()){return}if(t.name=="cut"&&this.editor.isReadOnly){return}e.preventDefault();t.stop();const i=this.editor.data;const o=this.editor.editing.view.document;const r=i.toView(n.getSelectionAsFragment());o.fire("clipboardOutput",{dataTransfer:e.dataTransfer,content:r,method:t.name})}_onInsertContent(t,e,n){if(n&&!n.is("documentSelection")){return}const i=this.editor.model;const o=this.editor.plugins.get(M$);let r=NG(e,i);if(!r){return}const s=o.getSelectionAffectedTableCells(i.document.selection);if(!s.length){b$(r,o);return}t.stop();i.change((t=>{const e={width:o.getColumns(r),height:o.getRows(r)};const n=zG(s,e,t,o);const i=n.lastRow-n.firstRow+1;const a=n.lastColumn-n.firstColumn+1;const c={startRow:0,startColumn:0,endRow:Math.min(i,e.height)-1,endColumn:Math.min(a,e.width)-1};r=c$(r,c,t);const l=s[0].findAncestor("table");const d=this._replaceSelectedCellsWithPasted(r,e,l,n,t);if(this.editor.plugins.get("TableSelection").isEnabled){const e=o.sortRanges(d.map((e=>t.createRangeOn(e))));t.setSelection(e)}else{t.setSelection(d[0],0)}}))}_replaceSelectedCellsWithPasted(t,e,n,i,o){const{width:r,height:s}=e;const a=RG(t,r,s);const c=[...new Kq(n,{startRow:i.firstRow,endRow:i.lastRow,startColumn:i.firstColumn,endColumn:i.lastColumn,includeAllSlots:true})];const l=[];let d;for(const t of c){const{row:e,column:n}=t;if(n===i.firstColumn){d=t.getPositionBefore()}const c=e-i.firstRow;const u=n-i.firstColumn;const h=a[c%s][u%r];const g=h?o.cloneElement(h):null;const m=this._replaceTableSlotCell(t,g,d,o);if(!m){continue}g$(m,e,n,i.lastRow,i.lastColumn,o);l.push(m);d=o.createPositionAfter(m)}const u=parseInt(n.getAttribute("headingRows")||0);const h=parseInt(n.getAttribute("headingColumns")||0);const g=i.firstRow<u&&u<=i.lastRow;const m=i.firstColumn<h&&h<=i.lastColumn;if(g){const t={first:i.firstColumn,last:i.lastColumn};const e=VG(n,u,t,o,i.firstRow);l.push(...e)}if(m){const t={first:i.firstRow,last:i.lastRow};const e=FG(n,h,t,o);l.push(...e)}return l}_replaceTableSlotCell(t,e,n,i){const{cell:o,isAnchor:r}=t;if(r){i.remove(o)}if(!e){return null}i.insert(e,n);return e}getTableIfOnlyTableInContent(t,e){return NG(t,e)}}function NG(t,e){if(!t.is("documentFragment")&&!t.is("element")){return null}if(t.is("element","table")){return t}if(t.childCount==1&&t.getChild(0).is("element","table")){return t.getChild(0)}const n=e.createRangeIn(t);for(const t of n.getItems()){if(t.is("element","table")){const i=e.createRange(n.start,e.createPositionBefore(t));if(e.hasContent(i,{ignoreWhitespaces:true})){return null}const o=e.createRange(e.createPositionAfter(t),n.end);if(e.hasContent(o,{ignoreWhitespaces:true})){return null}return t}}return null}function zG(t,e,n,i){const o=t[0].findAncestor("table");const r=i.getColumnIndexes(t);const s=i.getRowIndexes(t);const a={firstColumn:r.first,lastColumn:r.last,firstRow:s.first,lastRow:s.last};const c=t.length===1;if(c){a.lastRow+=e.height-1;a.lastColumn+=e.width-1;PG(o,a.lastRow+1,a.lastColumn+1,i)}if(c||!i.isSelectionRectangular(t)){OG(o,a,n)}else{a.lastRow=k$(o,a);a.lastColumn=w$(o,a)}return a}function PG(t,e,n,i){const o=i.getColumns(t);const r=i.getRows(t);if(n>o){i.insertColumns(t,{at:o,columns:n-o})}if(e>r){i.insertRows(t,{at:r,rows:e-r})}}function RG(t,e,n){const i=new Array(n).fill(null).map((()=>new Array(e).fill(null)));for(const{column:e,row:n,cell:o}of new Kq(t)){i[n][e]=o}return i}function OG(t,e,n){const{firstRow:i,lastRow:o,firstColumn:r,lastColumn:s}=e;const a={first:i,last:o};const c={first:r,last:s};FG(t,r,a,n);FG(t,s+1,a,n);VG(t,i,c,n);VG(t,o+1,c,n,i)}function VG(t,e,n,i,o=0){if(e<1){return}const r=l$(t,e,o);const s=r.filter((({column:t,cellWidth:e})=>jG(t,e,n)));return s.map((({cell:t})=>d$(t,e,i)))}function FG(t,e,n,i){if(e<1){return}const o=u$(t,e);const r=o.filter((({row:t,cellHeight:e})=>jG(t,e,n)));return r.map((({cell:t,column:n})=>h$(t,n,e,i)))}function jG(t,e,n){const i=t+e-1;const{first:o,last:r}=n;const s=t>=o&&t<=r;const a=t<o&&i>=o;return s||a}class HG extends eu{static get pluginName(){return"TableKeyboard"}static get requires(){return[MG,M$]}init(){const t=this.editor.editing.view;const e=t.document;this.listenTo(e,"arrowKey",((...t)=>this._onArrowKey(...t)),{context:"table"});this.listenTo(e,"tab",((...t)=>this._handleTabOnSelectedTable(...t)),{context:"figure"});this.listenTo(e,"tab",((...t)=>this._handleTab(...t)),{context:["th","td"]})}_handleTabOnSelectedTable(t,e){const n=this.editor;const i=n.model.document.selection;const o=i.getSelectedElement();if(!o||!o.is("element","table")){return}e.preventDefault();e.stopPropagation();t.stop();n.model.change((t=>{t.setSelection(t.createRangeIn(o.getChild(0).getChild(0)))}))}_handleTab(t,e){const n=this.editor;const i=this.editor.plugins.get(M$);const o=n.model.document.selection;const r=!e.shiftKey;let s=i.getTableCellsContainingSelection(o)[0];if(!s){s=this.editor.plugins.get("TableSelection").getFocusCell()}if(!s){return}e.preventDefault();e.stopPropagation();t.stop();const a=s.parent;const c=a.parent;const l=c.getChildIndex(a);const d=a.getChildIndex(s);const u=d===0;if(!r&&u&&l===0){n.model.change((t=>{t.setSelection(t.createRangeOn(c))}));return}const h=d===a.childCount-1;const g=l===i.getRows(c)-1;if(r&&g&&h){n.execute("insertTableRowBelow");if(l===i.getRows(c)-1){n.model.change((t=>{t.setSelection(t.createRangeOn(c))}));return}}let m;if(r&&h){const t=c.getChild(l+1);m=t.getChild(0)}else if(!r&&u){const t=c.getChild(l-1);m=t.getChild(t.childCount-1)}else{m=a.getChild(d+(r?1:-1))}n.model.change((t=>{t.setSelection(t.createRangeIn(m))}))}_onArrowKey(t,e){const n=this.editor;const i=e.keyCode;const o=Kc(i,n.locale.contentLanguageDirection);const r=this._handleArrowKeys(o,e.shiftKey);if(r){e.preventDefault();e.stopPropagation();t.stop()}}_handleArrowKeys(t,e){const n=this.editor.plugins.get(M$);const i=this.editor.model;const o=i.document.selection;const r=["right","down"].includes(t);const s=n.getSelectedTableCells(o);if(s.length){let n;if(e){n=this.editor.plugins.get("TableSelection").getFocusCell()}else{n=r?s[s.length-1]:s[0]}this._navigateFromCellInDirection(n,t,e);return true}const a=o.focus.findAncestor("tableCell");if(!a){return false}if(!o.isCollapsed){if(e){if(o.isBackward==r&&!o.containsEntireContent(a)){return false}}else{const t=o.getSelectedElement();if(!t||!i.schema.isObject(t)){return false}}}if(this._isSelectionAtCellEdge(o,a,r)){this._navigateFromCellInDirection(a,t,e);return true}return false}_isSelectionAtCellEdge(t,e,n){const i=this.editor.model;const o=this.editor.model.schema;const r=n?t.getLastPosition():t.getFirstPosition();if(!o.getLimitElement(r).is("element","tableCell")){const t=i.createPositionAt(e,n?"end":0);return t.isTouching(r)}const s=i.createSelection(r);i.modifySelection(s,{direction:n?"forward":"backward"});return r.isEqual(s.focus)}_navigateFromCellInDirection(t,e,n=false){const i=this.editor.model;const o=t.findAncestor("table");const r=[...new Kq(o,{includeAllSlots:true})];const{row:s,column:a}=r[r.length-1];const c=r.find((({cell:e})=>e==t));let{row:l,column:d}=c;switch(e){case"left":d--;break;case"up":l--;break;case"right":d+=c.cellWidth;break;case"down":l+=c.cellHeight;break}const u=l<0||l>s;const h=d<0&&l<=0;const g=d>a&&l>=s;if(u||h||g){i.change((t=>{t.setSelection(t.createRangeOn(o))}));return}if(d<0){d=n?0:a;l--}else if(d>a){d=n?a:0;l++}const m=r.find((t=>t.row==l&&t.column==d)).cell;const f=["right","down"].includes(e);const p=this.editor.plugins.get("TableSelection");if(n&&p.isEnabled){const e=p.getAnchorCell()||t;p.setCellSelection(e,m)}else{const t=i.createPositionAt(m,f?0:"end");i.change((e=>{e.setSelection(t)}))}}}class UG extends lf{constructor(t){super(t);this.domEventType=["mousemove","mouseleave"]}onDomEvent(t){this.fire(t.type,t)}}class WG extends eu{static get pluginName(){return"TableMouse"}static get requires(){return[MG,M$]}init(){const t=this.editor;t.editing.view.addObserver(UG);this._enableShiftClickSelection();this._enableMouseDragSelection()}_enableShiftClickSelection(){const t=this.editor;const e=t.plugins.get(M$);let n=false;const i=t.plugins.get(MG);this.listenTo(t.editing.view.document,"mousedown",((o,r)=>{const s=t.model.document.selection;if(!this.isEnabled||!i.isEnabled){return}if(!r.domEvent.shiftKey){return}const a=i.getAnchorCell()||e.getTableCellsContainingSelection(s)[0];if(!a){return}const c=this._getModelTableCellFromDomEvent(r);if(c&&qG(a,c)){n=true;i.setCellSelection(a,c);r.preventDefault()}}));this.listenTo(t.editing.view.document,"mouseup",(()=>{n=false}));this.listenTo(t.editing.view.document,"selectionChange",(t=>{if(n){t.stop()}}),{priority:"highest"})}_enableMouseDragSelection(){const t=this.editor;let e,n;let i=false;let o=false;const r=t.plugins.get(MG);this.listenTo(t.editing.view.document,"mousedown",((t,n)=>{if(!this.isEnabled||!r.isEnabled){return}if(n.domEvent.shiftKey||n.domEvent.ctrlKey||n.domEvent.altKey){return}e=this._getModelTableCellFromDomEvent(n)}));this.listenTo(t.editing.view.document,"mousemove",((t,s)=>{if(!s.domEvent.buttons){return}if(!e){return}const a=this._getModelTableCellFromDomEvent(s);if(a&&qG(e,a)){n=a;if(!i&&n!=e){i=true}}if(!i){return}o=true;r.setCellSelection(e,n);s.preventDefault()}));this.listenTo(t.editing.view.document,"mouseup",(()=>{i=false;o=false;e=null;n=null}));this.listenTo(t.editing.view.document,"selectionChange",(t=>{if(o){t.stop()}}),{priority:"highest"})}_getModelTableCellFromDomEvent(t){const e=t.target;const n=this.editor.editing.view.createPositionAt(e,0);const i=this.editor.editing.mapper.toModelPosition(n);const o=i.parent;return o.findAncestor("tableCell",{includeSelf:true})}}function qG(t,e){return t.parent.parent==e.parent.parent}var $G=n(4104);var GG={injectType:"singletonStyleTag",attributes:{"data-cke":true}};GG.insert="head";GG.singleton=true;var KG=Tl()($G.Z,GG);const YG=$G.Z.locals||{};class ZG extends eu{static get requires(){return[fG,EG,MG,WG,HG,LG,ZD]}static get pluginName(){return"Table"}}function QG(t){t.document.registerPostFixer((e=>JG(e,t)))}function JG(t,e){const n=e.document.differ.getChanges();let i=false;for(const e of n){if(e.type!="insert"){continue}const n=e.position.parent;if(n.is("element","table")||e.name=="table"){const n=e.name=="table"?e.position.nodeAfter:e.position.parent;const o=Array.from(n.getChildren()).filter((t=>t.is("element","caption")));const r=o.shift();if(!r){continue}for(const e of o){t.move(t.createRangeIn(e),r,"end");t.remove(e)}if(r.nextSibling){t.move(t.createRangeOn(r),n,"end");i=true}i=!!o.length||i}}return i}function XG(t){return!!t&&t.is("element","table")}function tK(t){for(const e of t.getChildren()){if(e.is("element","caption")){return e}}return null}function eK(t){const e=iK(t);if(!e){return null}return tK(e)}function nK(t){const e=t.parent;if(t.name=="figcaption"&&e&&e.name=="figure"&&e.hasClass("table")){return{name:true}}if(t.name=="caption"&&e&&e.name=="table"){return{name:true}}return null}function iK(t){const e=t.getSelectedElement();if(e&&e.is("element","table")){return e}return t.getFirstPosition().findAncestor("table")}class oK extends iu{refresh(){const t=this.editor;const e=iK(t.model.document.selection);this.isEnabled=!!e;if(!this.isEnabled){this.value=false}else{this.value=!!tK(e)}}execute(t={}){const{focusCaptionOnShow:e}=t;this.editor.model.change((t=>{if(this.value){this._hideTableCaption(t)}else{this._showTableCaption(t,e)}}))}_showTableCaption(t,e){const n=this.editor.model;const i=iK(n.document.selection);const o=this.editor.plugins.get("TableCaptionEditing");const r=o._getSavedCaption(i);const s=r||t.createElement("caption");n.insertContent(s,i,"end");if(e){t.setSelection(s,"in")}}_hideTableCaption(t){const e=this.editor.model;const n=iK(e.document.selection);const i=this.editor.plugins.get("TableCaptionEditing");const o=tK(n);i._saveCaption(n,o);e.deleteContent(t.createSelection(o,"on"))}}class rK extends eu{static get pluginName(){return"TableCaptionEditing"}constructor(t){super(t);this._savedCaptionsMap=new WeakMap}init(){const t=this.editor;const e=t.model.schema;const n=t.editing.view;const i=t.t;if(!e.isRegistered("caption")){e.register("caption",{allowIn:"table",allowContentOf:"$block",isLimit:true})}else{e.extend("caption",{allowIn:"table"})}t.commands.add("toggleTableCaption",new oK(this.editor));t.conversion.for("upcast").elementToElement({view:nK,model:"caption"});t.conversion.for("dataDowncast").elementToElement({model:"caption",view:(t,{writer:e})=>{if(!XG(t.parent)){return null}return e.createContainerElement("figcaption")}});t.conversion.for("editingDowncast").elementToElement({model:"caption",view:(t,{writer:e})=>{if(!XG(t.parent)){return null}const o=e.createEditableElement("figcaption");e.setCustomProperty("tableCaption",true,o);mu({view:n,element:o,text:i("Enter table caption"),keepOnFocus:true});return pD(o,e)}});QG(t.model)}_getSavedCaption(t){const e=this._savedCaptionsMap.get(t);return e?Gp.fromJSON(e):null}_saveCaption(t,e){this._savedCaptionsMap.set(t,e.toJSON())}}class sK extends eu{static get pluginName(){return"TableCaptionUI"}init(){const t=this.editor;const e=t.editing.view;const n=t.t;t.ui.componentFactory.add("toggleTableCaption",(i=>{const o=t.commands.get("toggleTableCaption");const r=new kd(i);r.set({icon:J_.caption,tooltip:true,isToggleable:true});r.bind("isOn","isEnabled").to(o,"value","isEnabled");r.bind("label").to(o,"value",(t=>t?n("Toggle caption off"):n("Toggle caption on")));this.listenTo(r,"execute",(()=>{t.execute("toggleTableCaption",{focusCaptionOnShow:true});if(o.value){const n=eK(t.model.document.selection);const i=t.editing.mapper.toViewElement(n);if(!i){return}e.scrollToTheSelection();e.change((t=>{t.addClass("table__caption_highlighted",i)}))}t.editing.view.focus()}));return r}))}}var aK=n(9888);var cK={injectType:"singletonStyleTag",attributes:{"data-cke":true}};cK.insert="head";cK.singleton=true;var lK=Tl()(aK.Z,cK);const dK=aK.Z.locals||{};class uK extends eu{static get pluginName(){return"TableCaption"}static get requires(){return[rK,sK]}}var hK=n(4082);var gK={injectType:"singletonStyleTag",attributes:{"data-cke":true}};gK.insert="head";gK.singleton=true;var mK=Tl()(hK.Z,gK);const fK=hK.Z.locals||{};class pK extends Ll{constructor(t,e){super(t);this.set("value","");this.set("isReadOnly",false);this.set("isFocused",false);this.set("isEmpty",true);this.options=e;this.focusTracker=new ul;this._focusables=new xl;this.dropdownView=this._createDropdownView();this.inputView=this._createInputTextView();this.keystrokes=new hl;this._stillTyping=false;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.setTemplate({tag:"div",attributes:{class:["ck","ck-input-color"]},children:[this.dropdownView,this.inputView]});this.on("change:value",((t,e,n)=>this._setInputValue(n)))}render(){super.render();this.keystrokes.listenTo(this.dropdownView.panelView.element)}focus(){this.inputView.focus()}destroy(){super.destroy();this.focusTracker.destroy();this.keystrokes.destroy()}_createDropdownView(){const t=this.locale;const e=t.t;const n=this.bindTemplate;const i=this._createColorGrid(t);const o=yv(t);const r=new Ll;const s=this._createRemoveColorButton();r.setTemplate({tag:"span",attributes:{class:["ck","ck-input-color__button__preview"],style:{backgroundColor:n.to("value")}},children:[{tag:"span",attributes:{class:["ck","ck-input-color__button__preview__no-color-indicator",n.if("value","ck-hidden",(t=>t!=""))]}}]});o.buttonView.extendTemplate({attributes:{class:"ck-input-color__button"}});o.buttonView.children.add(r);o.buttonView.label=e("Color picker");o.buttonView.tooltip=true;o.panelPosition=t.uiLanguageDirection==="rtl"?"se":"sw";o.panelView.children.add(s);o.panelView.children.add(i);o.bind("isEnabled").to(this,"isReadOnly",(t=>!t));this._focusables.add(s);this._focusables.add(i);this.focusTracker.add(s.element);this.focusTracker.add(i.element);return o}_createInputTextView(){const t=this.locale;const e=new Ey(t);e.extendTemplate({on:{blur:e.bindTemplate.to("blur")}});e.value=this.value;e.bind("isReadOnly","hasError").to(this);this.bind("isFocused","isEmpty").to(e);e.on("input",(()=>{const t=e.element.value;const n=this.options.colorDefinitions.find((e=>t===e.label));this._stillTyping=true;this.value=n&&n.color||t}));e.on("blur",(()=>{this._stillTyping=false;this._setInputValue(e.element.value)}));e.delegate("input").to(this);return e}_createRemoveColorButton(){const t=this.locale;const e=t.t;const n=new kd(t);const i=this.options.defaultColorValue||"";const o=i?e("Restore default"):e("Remove color");n.class="ck-input-color__remove-color";n.withText=true;n.icon=J_.eraser;n.label=o;n.on("execute",(()=>{this.value=i;this.dropdownView.isOpen=false;this.fire("input")}));return n}_createColorGrid(t){const e=new Ld(t,{colorDefinitions:this.options.colorDefinitions,columns:this.options.columns});e.on("execute",((t,e)=>{this.value=e.value;this.dropdownView.isOpen=false;this.fire("input")}));e.bind("selectedColor").to(this,"value");return e}_setInputValue(t){if(!this._stillTyping){const e=bK(t);const n=this.options.colorDefinitions.find((t=>e===bK(t.color)));if(n){this.inputView.value=n.label}else{this.inputView.value=t||""}}}}function bK(t){return t.replace(/([(,])\s+/g,"$1").replace(/^\s+|\s+(?=[),\s]|$)/g,"").replace(/,|\s/g," ")}const kK=t=>t==="";function wK(t){return{none:t("None"),solid:t("Solid"),dotted:t("Dotted"),dashed:t("Dashed"),double:t("Double"),groove:t("Groove"),ridge:t("Ridge"),inset:t("Inset"),outset:t("Outset")}}function AK(t){return t('The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".')}function CK(t){return t('The value is invalid. Try "10px" or "2em" or simply "2".')}function _K(t){t=t.trim();return kK(t)||xC(t)}function vK(t){t=t.trim();return kK(t)||SK(t)||SC(t)||BC(t)}function yK(t){t=t.trim();return kK(t)||SK(t)||SC(t)}function xK(t,e){const n=new ll;const i=wK(t.t);for(const o in i){const r={type:"button",model:new Oy({_borderStyleValue:o,label:i[o],withText:true})};if(o==="none"){r.model.bind("isOn").to(t,"borderStyle",(t=>{if(e==="none"){return!t}return t===o}))}else{r.model.bind("isOn").to(t,"borderStyle",(t=>t===o))}n.add(r)}return n}function EK(t){const{view:e,icons:n,toolbar:i,labels:o,propertyName:r,nameToValue:s,defaultValue:a}=t;for(const t in o){const c=new kd(e.locale);c.set({label:o[t],icon:n[t],tooltip:o[t]});const l=s?s(t):t;c.bind("isOn").to(e,r,(t=>{let e=t;if(t===""&&a){e=a}return l===e}));c.on("execute",(()=>{e[r]=l}));i.items.add(c)}}const DK=[{color:"hsl(0, 0%, 0%)",label:"Black"},{color:"hsl(0, 0%, 30%)",label:"Dim grey"},{color:"hsl(0, 0%, 60%)",label:"Grey"},{color:"hsl(0, 0%, 90%)",label:"Light grey"},{color:"hsl(0, 0%, 100%)",label:"White",hasBorder:true},{color:"hsl(0, 75%, 60%)",label:"Red"},{color:"hsl(30, 75%, 60%)",label:"Orange"},{color:"hsl(60, 75%, 60%)",label:"Yellow"},{color:"hsl(90, 75%, 60%)",label:"Light green"},{color:"hsl(120, 75%, 60%)",label:"Green"},{color:"hsl(150, 75%, 60%)",label:"Aquamarine"},{color:"hsl(180, 75%, 60%)",label:"Turquoise"},{color:"hsl(210, 75%, 60%)",label:"Light blue"},{color:"hsl(240, 75%, 60%)",label:"Blue"},{color:"hsl(270, 75%, 60%)",label:"Purple"}];function TK(t){return(e,n,i)=>{const o=new pK(e.locale,{colorDefinitions:IK(t.colorConfig),columns:t.columns,defaultColorValue:t.defaultColorValue});o.inputView.set({id:n,ariaDescribedById:i});o.bind("isReadOnly").to(e,"isEnabled",(t=>!t));o.bind("hasError").to(e,"errorText",(t=>!!t));o.on("input",(()=>{e.errorText=null}));e.bind("isEmpty","isFocused").to(o);return o}}function SK(t){const e=parseFloat(t);return!Number.isNaN(e)&&t===String(e)}function IK(t){return t.map((t=>({color:t.model,label:t.label,options:{hasBorder:t.hasBorder}})))}var BK=n(9865);var MK={injectType:"singletonStyleTag",attributes:{"data-cke":true}};MK.insert="head";MK.singleton=true;var LK=Tl()(BK.Z,MK);const NK=BK.Z.locals||{};class zK extends Ll{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("class",e.class||null);this.children=this.createCollection();if(e.children){e.children.forEach((t=>this.children.add(t)))}this.set("_role",null);this.set("_ariaLabelledBy",null);if(e.labelView){this.set({_role:"group",_ariaLabelledBy:e.labelView.id})}this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__row",n.to("class")],role:n.to("_role"),"aria-labelledby":n.to("_ariaLabelledBy")},children:this.children})}}var PK=n(4880);var RK={injectType:"singletonStyleTag",attributes:{"data-cke":true}};RK.insert="head";RK.singleton=true;var OK=Tl()(PK.Z,RK);const VK=PK.Z.locals||{};var FK=n(198);var jK={injectType:"singletonStyleTag",attributes:{"data-cke":true}};jK.insert="head";jK.singleton=true;var HK=Tl()(FK.Z,jK);const UK=FK.Z.locals||{};var WK=n(5737);var qK={injectType:"singletonStyleTag",attributes:{"data-cke":true}};qK.insert="head";qK.singleton=true;var $K=Tl()(WK.Z,qK);const GK=WK.Z.locals||{};const KK={left:J_.alignLeft,center:J_.alignCenter,right:J_.alignRight,justify:J_.alignJustify,top:J_.alignTop,middle:J_.alignMiddle,bottom:J_.alignBottom};class YK extends Ll{constructor(t,e){super(t);this.set({borderStyle:"",borderWidth:"",borderColor:"",padding:"",backgroundColor:"",width:"",height:"",horizontalAlignment:"",verticalAlignment:""});this.options=e;const{borderStyleDropdown:n,borderWidthInput:i,borderColorInput:o,borderRowLabel:r}=this._createBorderFields();const{backgroundRowLabel:s,backgroundInput:a}=this._createBackgroundFields();const{widthInput:c,operatorLabel:l,heightInput:d,dimensionsLabel:u}=this._createDimensionFields();const{horizontalAlignmentToolbar:h,verticalAlignmentToolbar:g,alignmentLabel:m}=this._createAlignmentFields();this.focusTracker=new ul;this.keystrokes=new hl;this.children=this.createCollection();this.borderStyleDropdown=n;this.borderWidthInput=i;this.borderColorInput=o;this.backgroundInput=a;this.paddingInput=this._createPaddingField();this.widthInput=c;this.heightInput=d;this.horizontalAlignmentToolbar=h;this.verticalAlignmentToolbar=g;const{saveButtonView:f,cancelButtonView:p}=this._createActionButtons();this.saveButtonView=f;this.cancelButtonView=p;this._focusables=new xl;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.children.add(new wy(t,{label:this.t("Cell properties")}));this.children.add(new zK(t,{labelView:r,children:[r,n,o,i],class:"ck-table-form__border-row"}));this.children.add(new zK(t,{labelView:s,children:[s,a],class:"ck-table-form__background-row"}));this.children.add(new zK(t,{children:[new zK(t,{labelView:u,children:[u,c,l,d],class:"ck-table-form__dimensions-row"}),new zK(t,{children:[this.paddingInput],class:"ck-table-cell-properties-form__padding-row"})]}));this.children.add(new zK(t,{labelView:m,children:[m,h,g],class:"ck-table-cell-properties-form__alignment-row"}));this.children.add(new zK(t,{children:[this.saveButtonView,this.cancelButtonView],class:"ck-table-form__action-row"}));this.setTemplate({tag:"form",attributes:{class:["ck","ck-form","ck-table-form","ck-table-cell-properties-form"],tabindex:"-1"},children:this.children})}render(){super.render();o({view:this});[this.borderStyleDropdown,this.borderColorInput,this.borderColorInput.fieldView.dropdownView.buttonView,this.borderWidthInput,this.backgroundInput,this.backgroundInput.fieldView.dropdownView.buttonView,this.widthInput,this.heightInput,this.paddingInput,this.horizontalAlignmentToolbar,this.verticalAlignmentToolbar,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()}_createBorderFields(){const t=this.options.defaultTableCellProperties;const e={style:t.borderStyle,width:t.borderWidth,color:t.borderColor};const n=TK({colorConfig:this.options.borderColors,columns:5,defaultColorValue:e.color});const i=this.locale;const o=this.t;const r=new uy(i);r.text=o("Border");const s=wK(o);const a=new Ly(i,Py);a.set({label:o("Style"),class:"ck-table-form__border-style"});a.fieldView.buttonView.set({isOn:false,withText:true,tooltip:o("Style")});a.fieldView.buttonView.bind("label").to(this,"borderStyle",(t=>s[t?t:"none"]));a.fieldView.on("execute",(t=>{this.borderStyle=t.source._borderStyleValue}));a.bind("isEmpty").to(this,"borderStyle",(t=>!t));Dv(a.fieldView,xK(this,e.style));const c=new Ly(i,Ny);c.set({label:o("Width"),class:"ck-table-form__border-width"});c.fieldView.bind("value").to(this,"borderWidth");c.bind("isEnabled").to(this,"borderStyle",ZK);c.fieldView.on("input",(()=>{this.borderWidth=c.fieldView.element.value}));const l=new Ly(i,n);l.set({label:o("Color"),class:"ck-table-form__border-color"});l.fieldView.bind("value").to(this,"borderColor");l.bind("isEnabled").to(this,"borderStyle",ZK);l.fieldView.on("input",(()=>{this.borderColor=l.fieldView.value}));this.on("change:borderStyle",((t,n,i,o)=>{if(!ZK(i)){this.borderColor="";this.borderWidth=""}if(!ZK(o)){this.borderColor=e.color;this.borderWidth=e.width}}));return{borderRowLabel:r,borderStyleDropdown:a,borderColorInput:l,borderWidthInput:c}}_createBackgroundFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Background");const i=TK({colorConfig:this.options.backgroundColors,columns:5,defaultColorValue:this.options.defaultTableCellProperties.backgroundColor});const o=new Ly(t,i);o.set({label:e("Color"),class:"ck-table-cell-properties-form__background"});o.fieldView.bind("value").to(this,"backgroundColor");o.fieldView.on("input",(()=>{this.backgroundColor=o.fieldView.value}));return{backgroundRowLabel:n,backgroundInput:o}}_createDimensionFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Dimensions");const i=new Ly(t,Ny);i.set({label:e("Width"),class:"ck-table-form__dimensions-row__width"});i.fieldView.bind("value").to(this,"width");i.fieldView.on("input",(()=>{this.width=i.fieldView.element.value}));const o=new Ll(t);o.setTemplate({tag:"span",attributes:{class:["ck-table-form__dimension-operator"]},children:[{text:"×"}]});const r=new Ly(t,Ny);r.set({label:e("Height"),class:"ck-table-form__dimensions-row__height"});r.fieldView.bind("value").to(this,"height");r.fieldView.on("input",(()=>{this.height=r.fieldView.element.value}));return{dimensionsLabel:n,widthInput:i,operatorLabel:o,heightInput:r}}_createPaddingField(){const t=this.locale;const e=this.t;const n=new Ly(t,Ny);n.set({label:e("Padding"),class:"ck-table-cell-properties-form__padding"});n.fieldView.bind("value").to(this,"padding");n.fieldView.on("input",(()=>{this.padding=n.fieldView.element.value}));return n}_createAlignmentFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Table cell text alignment");const i=new rv(t);const o=this.locale.contentLanguageDirection==="rtl";i.set({isCompact:true,ariaLabel:e("Horizontal text alignment toolbar")});EK({view:this,icons:KK,toolbar:i,labels:this._horizontalAlignmentLabels,propertyName:"horizontalAlignment",nameToValue:t=>{if(o){if(t==="left"){return"right"}else if(t==="right"){return"left"}}return t},defaultValue:this.options.defaultTableCellProperties.horizontalAlignment});const r=new rv(t);r.set({isCompact:true,ariaLabel:e("Vertical text alignment toolbar")});EK({view:this,icons:KK,toolbar:r,labels:this._verticalAlignmentLabels,propertyName:"verticalAlignment",defaultValue:this.options.defaultTableCellProperties.verticalAlignment});return{horizontalAlignmentToolbar:i,verticalAlignmentToolbar:r,alignmentLabel:n}}_createActionButtons(){const t=this.locale;const e=this.t;const n=new kd(t);const i=new kd(t);const o=[this.borderWidthInput,this.borderColorInput,this.backgroundInput,this.paddingInput];n.set({label:e("Save"),icon:J_.check,class:"ck-button-save",type:"submit",withText:true});n.bind("isEnabled").toMany(o,"errorText",((...t)=>t.every((t=>!t))));i.set({label:e("Cancel"),icon:J_.cancel,class:"ck-button-cancel",withText:true});i.delegate("execute").to(this,"cancel");return{saveButtonView:n,cancelButtonView:i}}get _horizontalAlignmentLabels(){const t=this.locale;const e=this.t;const n=e("Align cell text to the left");const i=e("Align cell text to the center");const o=e("Align cell text to the right");const r=e("Justify cell text");if(t.uiLanguageDirection==="rtl"){return{right:o,center:i,left:n,justify:r}}else{return{left:n,center:i,right:o,justify:r}}}get _verticalAlignmentLabels(){const t=this.t;return{top:t("Align cell text to the top"),middle:t("Align cell text to the middle"),bottom:t("Align cell text to the bottom")}}}function ZK(t){return t!=="none"}function QK(t){const e=t.getSelectedElement();if(e&&XK(e)){return e}return null}function JK(t){const e=t.getFirstPosition();if(!e){return null}let n=e.parent;while(n){if(n.is("element")&&XK(n)){return n}n=n.parent}return null}function XK(t){return!!t.getCustomProperty("table")&&lD(t)}const tY=Uv.defaultPositions;const eY=[tY.northArrowSouth,tY.northArrowSouthWest,tY.northArrowSouthEast,tY.southArrowNorth,tY.southArrowNorthWest,tY.southArrowNorthEast,tY.viewportStickyNorth];function nY(t,e){const n=t.plugins.get("ContextualBalloon");if(JK(t.editing.view.document.selection)){let i;if(e==="cell"){i=oY(t)}else{i=iY(t)}n.updatePosition(i)}}function iY(t){const e=t.model.document.selection.getFirstPosition();const n=e.findAncestor("table");const i=t.editing.mapper.toViewElement(n);return{target:t.editing.view.domConverter.mapViewToDom(i),positions:eY}}function oY(t){const e=t.editing.mapper;const n=t.editing.view.domConverter;const i=t.model.document.selection;if(i.rangeCount>1){return{target:()=>sY(i.getRanges(),t),positions:eY}}const o=rY(i.getFirstPosition());const r=e.toViewElement(o);return{target:n.mapViewToDom(r),positions:eY}}function rY(t){const e=t.nodeAfter&&t.nodeAfter.is("element","tableCell");return e?t.nodeAfter:t.findAncestor("tableCell")}function sY(t,e){const n=e.editing.mapper;const i=e.editing.view.domConverter;const o=Array.from(t).map((t=>{const e=rY(t.start);const o=n.toViewElement(e);return new dc(i.mapViewToDom(o))}));return dc.getBoundingRect(o)}const aY='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.105 18-.17 1H2.5A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1h15A1.5 1.5 0 0 1 19 2.5v9.975l-.85-.124-.15-.302V8h-5v4h.021l-.172.351-1.916.28-.151.027c-.287.063-.54.182-.755.341L8 13v5h3.105zM2 12h5V8H2v4zm10-4H8v4h4V8zM2 2v5h5V2H2zm0 16h5v-5H2v5zM13 7h5V2h-5v5zM8 2v5h4V2H8z" opacity=".6"/><path d="m15.5 11.5 1.323 2.68 2.957.43-2.14 2.085.505 2.946L15.5 18.25l-2.645 1.39.505-2.945-2.14-2.086 2.957-.43L15.5 11.5zM13 6a1 1 0 0 1 1 1v3.172a2.047 2.047 0 0 0-.293.443l-.858 1.736-1.916.28-.151.027A1.976 1.976 0 0 0 9.315 14H7a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h6zm-1 2H8v4h4V8z"/></svg>';function cY(t){if(!t||!at(t)){return t}const{top:e,right:n,bottom:i,left:o}=t;if(e==n&&n==i&&i==o){return e}}function lY(t,e){const n=parseFloat(t);if(Number.isNaN(n)){return t}if(String(n)!==String(t)){return t}return`${n}${e}`}function dY(t,e={}){const n=Object.assign({borderStyle:"none",borderWidth:"",borderColor:"",backgroundColor:"",width:"",height:""},t);if(e.includeAlignmentProperty&&!n.alignment){n.alignment="center"}if(e.includePaddingProperty&&!n.padding){n.padding=""}if(e.includeVerticalAlignmentProperty&&!n.verticalAlignment){n.verticalAlignment="middle"}if(e.includeHorizontalAlignmentProperty&&!n.horizontalAlignment){n.horizontalAlignment=e.isRightToLeftContent?"right":"left"}return n}const uY=500;const hY={borderStyle:"tableCellBorderStyle",borderColor:"tableCellBorderColor",borderWidth:"tableCellBorderWidth",height:"tableCellHeight",width:"tableCellWidth",padding:"tableCellPadding",backgroundColor:"tableCellBackgroundColor",horizontalAlignment:"tableCellHorizontalAlignment",verticalAlignment:"tableCellVerticalAlignment"};class gY extends eu{static get requires(){return[Zy]}static get pluginName(){return"TableCellPropertiesUI"}constructor(t){super(t);t.config.define("table.tableCellProperties",{borderColors:DK,backgroundColors:DK})}init(){const t=this.editor;const e=t.t;this._defaultTableCellProperties=dY(t.config.get("table.tableCellProperties.defaultProperties"),{includeVerticalAlignmentProperty:true,includeHorizontalAlignmentProperty:true,includePaddingProperty:true,isRightToLeftContent:t.locale.contentLanguageDirection==="rtl"});this._balloon=t.plugins.get(Zy);this.view=null;this._undoStepBatch=null;this._isReady=false;t.ui.componentFactory.add("tableCellProperties",(n=>{const i=new kd(n);i.set({label:e("Cell properties"),icon:aY,tooltip:true});this.listenTo(i,"execute",(()=>this._showView()));const o=Object.values(hY).map((e=>t.commands.get(e)));i.bind("isEnabled").toMany(o,"isEnabled",((...t)=>t.some((t=>t))));return i}))}destroy(){super.destroy();if(this.view){this.view.destroy()}}_createPropertiesView(){const e=this.editor;const n=e.config.get("table.tableCellProperties");const i=xd(n.borderColors);const o=yd(e.locale,i);const r=xd(n.backgroundColors);const s=yd(e.locale,r);const a=new YK(e.locale,{borderColors:o,backgroundColors:s,defaultTableCellProperties:this._defaultTableCellProperties});const c=e.t;a.render();this.listenTo(a,"submit",(()=>{this._hideView()}));this.listenTo(a,"cancel",(()=>{if(this._undoStepBatch.operations.length){e.execute("undo",this._undoStepBatch)}this._hideView()}));a.keystrokes.set("Esc",((t,e)=>{this._hideView();e()}));t({emitter:a,activator:()=>this._isViewInBalloon,contextElements:[this._balloon.view.element],callback:()=>this._hideView()});const l=AK(c);const d=CK(c);a.on("change:borderStyle",this._getPropertyChangeCallback("tableCellBorderStyle",this._defaultTableCellProperties.borderStyle));a.on("change:borderColor",this._getValidatedPropertyChangeCallback({viewField:a.borderColorInput,commandName:"tableCellBorderColor",errorText:l,validator:_K,defaultValue:this._defaultTableCellProperties.borderColor}));a.on("change:borderWidth",this._getValidatedPropertyChangeCallback({viewField:a.borderWidthInput,commandName:"tableCellBorderWidth",errorText:d,validator:yK,defaultValue:this._defaultTableCellProperties.borderWidth}));a.on("change:padding",this._getValidatedPropertyChangeCallback({viewField:a.paddingInput,commandName:"tableCellPadding",errorText:d,validator:vK,defaultValue:this._defaultTableCellProperties.padding}));a.on("change:width",this._getValidatedPropertyChangeCallback({viewField:a.widthInput,commandName:"tableCellWidth",errorText:d,validator:vK,defaultValue:this._defaultTableCellProperties.width}));a.on("change:height",this._getValidatedPropertyChangeCallback({viewField:a.heightInput,commandName:"tableCellHeight",errorText:d,validator:vK,defaultValue:this._defaultTableCellProperties.height}));a.on("change:backgroundColor",this._getValidatedPropertyChangeCallback({viewField:a.backgroundInput,commandName:"tableCellBackgroundColor",errorText:l,validator:_K,defaultValue:this._defaultTableCellProperties.backgroundColor}));a.on("change:horizontalAlignment",this._getPropertyChangeCallback("tableCellHorizontalAlignment",this._defaultTableCellProperties.horizontalAlignment));a.on("change:verticalAlignment",this._getPropertyChangeCallback("tableCellVerticalAlignment",this._defaultTableCellProperties.verticalAlignment));return a}_fillViewFormFromCommandValues(){const t=this.editor.commands;const e=t.get("tableCellBorderStyle");Object.entries(hY).map((([e,n])=>{const i=this._defaultTableCellProperties[e]||"";return[e,t.get(n).value||i]})).forEach((([t,n])=>{if((t==="borderColor"||t==="borderWidth")&&e.value==="none"){return}this.view.set(t,n)}));this._isReady=true}_showView(){const t=this.editor;if(!this.view){this.view=this._createPropertiesView()}this.listenTo(t.ui,"update",(()=>{this._updateView()}));this._fillViewFormFromCommandValues();this._balloon.add({view:this.view,position:oY(t)});this._undoStepBatch=t.model.createBatch();this.view.focus()}_hideView(){const t=this.editor;this.stopListening(t.ui,"update");this._isReady=false;this.view.saveButtonView.focus();this._balloon.remove(this.view);this.editor.editing.view.focus()}_updateView(){const t=this.editor;const e=t.editing.view.document;if(!JK(e.selection)){this._hideView()}else if(this._isViewVisible){nY(t,"cell")}}get _isViewVisible(){return!!this.view&&this._balloon.visibleView===this.view}get _isViewInBalloon(){return!!this.view&&this._balloon.hasView(this.view)}_getPropertyChangeCallback(t){return(e,n,i)=>{if(!this._isReady){return}this.editor.execute(t,{value:i,batch:this._undoStepBatch})}}_getValidatedPropertyChangeCallback(t){const{commandName:e,viewField:n,validator:i,errorText:o}=t;const r=If((()=>{n.errorText=o}),uY);return(t,o,s)=>{r.cancel();if(!this._isReady){return}if(i(s)){this.editor.execute(e,{value:s,batch:this._undoStepBatch});n.errorText=null}else{r()}}}}class mY extends iu{constructor(t,e,n){super(t);this.attributeName=e;this._defaultValue=n}refresh(){const t=this.editor;const e=this.editor.plugins.get("TableUtils");const n=e.getSelectionAffectedTableCells(t.model.document.selection);this.isEnabled=!!n.length;this.value=this._getSingleValue(n)}execute(t={}){const{value:e,batch:n}=t;const i=this.editor.model;const o=this.editor.plugins.get("TableUtils");const r=o.getSelectionAffectedTableCells(i.document.selection);const s=this._getValueToSet(e);i.enqueueChange(n,(t=>{if(s){r.forEach((e=>t.setAttribute(this.attributeName,s,e)))}else{r.forEach((e=>t.removeAttribute(this.attributeName,e)))}}))}_getAttribute(t){if(!t){return}const e=t.getAttribute(this.attributeName);if(e===this._defaultValue){return}return e}_getValueToSet(t){if(t===this._defaultValue){return}return t}_getSingleValue(t){const e=this._getAttribute(t[0]);const n=t.every((t=>this._getAttribute(t)===e));return n?e:undefined}}class fY extends mY{constructor(t,e){super(t,"tableCellWidth",e)}_getValueToSet(t){t=lY(t,"px");if(t===this._defaultValue){return}return t}}class pY extends eu{static get pluginName(){return"TableCellWidthEditing"}static get requires(){return[fG]}init(){const t=this.editor;const e=dY(t.config.get("table.tableCellProperties.defaultProperties"));Fq(t.model.schema,t.conversion,{modelAttribute:"tableCellWidth",styleName:"width",defaultValue:e.width});t.commands.add("tableCellWidth",new fY(t,e.width))}}class bY extends mY{constructor(t,e){super(t,"tableCellPadding",e)}_getAttribute(t){if(!t){return}const e=cY(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}_getValueToSet(t){t=lY(t,"px");if(t===this._defaultValue){return}return t}}class kY extends mY{constructor(t,e){super(t,"tableCellHeight",e)}_getValueToSet(t){t=lY(t,"px");if(t===this._defaultValue){return null}return t}}class wY extends mY{constructor(t,e){super(t,"tableCellBackgroundColor",e)}}class AY extends mY{constructor(t,e){super(t,"tableCellVerticalAlignment",e)}}class CY extends mY{constructor(t,e){super(t,"tableCellHorizontalAlignment",e)}}class _Y extends mY{constructor(t,e){super(t,"tableCellBorderStyle",e)}_getAttribute(t){if(!t){return}const e=cY(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class vY extends mY{constructor(t,e){super(t,"tableCellBorderColor",e)}_getAttribute(t){if(!t){return}const e=cY(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class yY extends mY{constructor(t,e){super(t,"tableCellBorderWidth",e)}_getAttribute(t){if(!t){return}const e=cY(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}_getValueToSet(t){t=lY(t,"px");if(t===this._defaultValue){return}return t}}const xY=/^(top|middle|bottom)$/;const EY=/^(left|center|right|justify)$/;class DY extends eu{static get pluginName(){return"TableCellPropertiesEditing"}static get requires(){return[fG,pY]}init(){const t=this.editor;const e=t.model.schema;const n=t.conversion;t.config.define("table.tableCellProperties.defaultProperties",{});const i=dY(t.config.get("table.tableCellProperties.defaultProperties"),{includeVerticalAlignmentProperty:true,includeHorizontalAlignmentProperty:true,includePaddingProperty:true,isRightToLeftContent:t.locale.contentLanguageDirection==="rtl"});t.data.addStyleProcessorRules(YC);TY(e,n,{color:i.borderColor,style:i.borderStyle,width:i.borderWidth});t.commands.add("tableCellBorderStyle",new _Y(t,i.borderStyle));t.commands.add("tableCellBorderColor",new vY(t,i.borderColor));t.commands.add("tableCellBorderWidth",new yY(t,i.borderWidth));Fq(e,n,{modelAttribute:"tableCellHeight",styleName:"height",defaultValue:i.height});t.commands.add("tableCellHeight",new kY(t,i.height));t.data.addStyleProcessorRules(c_);Fq(e,n,{modelAttribute:"tableCellPadding",styleName:"padding",reduceBoxSides:true,defaultValue:i.padding});t.commands.add("tableCellPadding",new bY(t,i.padding));t.data.addStyleProcessorRules(qC);Fq(e,n,{modelAttribute:"tableCellBackgroundColor",styleName:"background-color",defaultValue:i.backgroundColor});t.commands.add("tableCellBackgroundColor",new wY(t,i.backgroundColor));SY(e,n,i.horizontalAlignment);t.commands.add("tableCellHorizontalAlignment",new CY(t,i.horizontalAlignment));IY(e,n,i.verticalAlignment);t.commands.add("tableCellVerticalAlignment",new AY(t,i.verticalAlignment))}}function TY(t,e,n){const i={width:"tableCellBorderWidth",color:"tableCellBorderColor",style:"tableCellBorderStyle"};t.extend("tableCell",{allowAttributes:Object.values(i)});Lq(e,"td",i,n);Lq(e,"th",i,n);Nq(e,{modelElement:"tableCell",modelAttribute:i.style,styleName:"border-style"});Nq(e,{modelElement:"tableCell",modelAttribute:i.color,styleName:"border-color"});Nq(e,{modelElement:"tableCell",modelAttribute:i.width,styleName:"border-width"})}function SY(t,e,n){t.extend("tableCell",{allowAttributes:["tableCellHorizontalAlignment"]});e.for("downcast").attributeToAttribute({model:{name:"tableCell",key:"tableCellHorizontalAlignment"},view:t=>({key:"style",value:{"text-align":t}})});e.for("upcast").attributeToAttribute({view:{name:/^(td|th)$/,styles:{"text-align":EY}},model:{key:"tableCellHorizontalAlignment",value:t=>{const e=t.getStyle("text-align");return e===n?null:e}}}).attributeToAttribute({view:{name:/^(td|th)$/,attributes:{align:EY}},model:{key:"tableCellHorizontalAlignment",value:t=>{const e=t.getAttribute("align");return e===n?null:e}}})}function IY(t,e,n){t.extend("tableCell",{allowAttributes:["tableCellVerticalAlignment"]});e.for("downcast").attributeToAttribute({model:{name:"tableCell",key:"tableCellVerticalAlignment"},view:t=>({key:"style",value:{"vertical-align":t}})});e.for("upcast").attributeToAttribute({view:{name:/^(td|th)$/,styles:{"vertical-align":xY}},model:{key:"tableCellVerticalAlignment",value:t=>{const e=t.getStyle("vertical-align");return e===n?null:e}}}).attributeToAttribute({view:{name:/^(td|th)$/,attributes:{valign:xY}},model:{key:"tableCellVerticalAlignment",value:t=>{const e=t.getAttribute("valign");return e===n?null:e}}})}class BY extends eu{static get pluginName(){return"TableCellProperties"}static get requires(){return[DY,gY]}}class MY extends iu{constructor(t,e,n){super(t);this.attributeName=e;this._defaultValue=n}refresh(){const t=this.editor;const e=t.model.document.selection;const n=e.getFirstPosition().findAncestor("table");this.isEnabled=!!n;this.value=this._getValue(n)}execute(t={}){const e=this.editor.model;const n=e.document.selection;const{value:i,batch:o}=t;const r=n.getFirstPosition().findAncestor("table");const s=this._getValueToSet(i);e.enqueueChange(o,(t=>{if(s){t.setAttribute(this.attributeName,s,r)}else{t.removeAttribute(this.attributeName,r)}}))}_getValue(t){if(!t){return}const e=t.getAttribute(this.attributeName);if(e===this._defaultValue){return}return e}_getValueToSet(t){if(t===this._defaultValue){return}return t}}class LY extends MY{constructor(t,e){super(t,"tableWidth",e)}refresh(){this.isEnabled=true}execute(t={}){const e=this.editor.model;const n=t.table||e.document.selection.getSelectedElement();const{tableWidth:i,columnWidths:o}=t;e.change((t=>{if(i){t.setAttribute(this.attributeName,i,n)}else{t.removeAttribute(this.attributeName,n)}if(o){t.setAttribute("columnWidths",o,n)}else{t.removeAttribute("columnWidths",n)}}))}}class NY extends MY{constructor(t,e){super(t,"columnWidths",e)}refresh(){this.isEnabled=true}execute(t={}){const e=this.editor.model;const n=t.table||e.document.selection.getSelectedElement();const{columnWidths:i}=t;e.change((t=>{if(i){t.setAttribute(this.attributeName,i,n)}else{t.removeAttribute(this.attributeName,n)}}))}}const zY=5;const PY=40;const RY=2;function OY(t){const e=new Set;for(const n of t.document.differ.getChanges()){let i=null;switch(n.type){case"insert":i=["table","tableRow","tableCell"].includes(n.name)?n.position:null;break;case"remove":i=["tableRow","tableCell"].includes(n.name)?n.position:null;break;case"attribute":if(n.range.start.nodeAfter){i=["table","tableRow","tableCell"].includes(n.range.start.nodeAfter.name)?n.range.start:null}break}if(!i){continue}const o=i.nodeAfter&&i.nodeAfter.name==="table"?i.nodeAfter:i.findAncestor("table");for(const n of t.createRangeOn(o).getItems()){if(n.is("element")&&n.name==="table"&&n.hasAttribute("columnWidths")){e.add(n)}}}return e}function VY(t,e){return PY*100/FY(t,e)}function FY(t,e){const n=jY(t,"tbody",e)||jY(t,"thead",e);const i=e.editing.view.domConverter.mapViewToDom(n);return HY(i)}function jY(t,e,n){const i=n.editing.mapper.toViewElement(t);const o=[...i.getChildren()].find((t=>t.is("element","table")));return[...o.getChildren()].find((t=>t.is("element",e)))}function HY(t){const e=ic.window.getComputedStyle(t);if(e.boxSizing==="border-box"){return parseFloat(e.width)-parseFloat(e.paddingLeft)-parseFloat(e.paddingRight)-parseFloat(e.borderLeftWidth)-parseFloat(e.borderRightWidth)}else{return parseFloat(e.width)}}function UY(t,e){const n=e.getCellLocation(t).column;const i=t.getAttribute("colspan")||1;return{leftEdge:n,rightEdge:n+i-1}}function WY(t){const e=Math.pow(10,RY);const n=parseFloat(t);return Math.round(n*e)/e}function qY(t,e,n){if(t<=e){return WY(e)}if(t>=n){return WY(n)}return WY(t)}function $Y(t,e){return Array(t).fill(e)}function GY(t){return t.map((t=>parseFloat(t))).filter((t=>!Number.isNaN(t))).reduce(((t,e)=>t+e),0)}function KY(t){t=YY(t);const e=GY(t);if(e===100){return t}return t.map((t=>WY(t*100/e))).map(((t,e,n)=>{const i=e===n.length-1;if(!i){return t}const o=GY(n);return WY(t+100-o)}))}function YY(t){const e=t.filter((t=>t==="auto")).length;if(e===0){return t.map((t=>WY(t)))}const n=GY(t);const i=Math.max((100-n)/e,zY);return t.map((t=>t==="auto"?i:t)).map((t=>WY(t)))}function ZY(t){const e=ic.window.getComputedStyle(t);if(e.boxSizing==="border-box"){return parseInt(e.width)}else{return parseFloat(e.width)+parseFloat(e.paddingLeft)+parseFloat(e.paddingRight)+parseFloat(e.borderWidth)}}function QY(t){return e=>e.on("element:colgroup",((e,n,i)=>{const o=n.viewItem;if(!i.consumable.test(o,{name:true})){return}i.consumable.consume(o,{name:true});const r=n.modelCursor.findAncestor("table");const s=t.getColumns(r);let a=[...Array(s).keys()].map((t=>{const e=o.getChild(t);if(!e||!e.is("element","col")){return"auto"}const n=e.getStyle("width");if(!n||!n.endsWith("%")){return"auto"}return n}));if(a.includes("auto")){a=KY(a).map((t=>t+"%"))}i.writer.setAttribute("columnWidths",a.join(","),r)}))}function JY(){return t=>t.on("attribute:columnWidths:table",((t,e,n)=>{const i=n.writer;const o=e.item;const r=n.mapper.toViewElement(o);const s=r.is("element","table")?r:Array.from(r.getChildren()).find((t=>t.is("element","table")));if(e.attributeNewValue){XY(i,s,e.attributeNewValue);i.addClass("ck-table-resized",s)}else{tZ(i,s);i.removeClass("ck-table-resized",s)}}))}function XY(t,e,n){const i=n.split(",");let o=[...e.getChildren()].find((t=>t.is("element","colgroup")));if(!o){o=t.createContainerElement("colgroup")}else{for(const e of[...o.getChildren()]){t.remove(e)}}for(const e of Array(i.length).keys()){const n=t.createEmptyElement("col");t.setStyle("width",i[e],n);t.insert(t.createPositionAt(o,"end"),n)}t.insert(t.createPositionAt(e,"start"),o)}function tZ(t,e){const n=[...e.getChildren()].find((t=>t.is("element","colgroup")));t.remove(n)}class eZ extends eu{static get requires(){return[fG,M$]}static get pluginName(){return"TableColumnResizeEditing"}constructor(t){super(t);this._isResizingActive=false;this.set("_isResizingAllowed",true);this._resizingData=null;this._domEmitter=Object.create(Ja);this._tableUtilsPlugin=t.plugins.get("TableUtils");this.on("change:_isResizingAllowed",((e,n,i)=>{t.editing.view.change((e=>{e[i?"removeClass":"addClass"]("ck-column-resize_disabled",t.editing.view.document.getRoot())}))}))}init(){this._extendSchema();this._registerPostFixer();this._registerConverters();this._registerResizingListeners();this._registerColgroupFixer();this._registerResizerInserter();const t=this.editor;const e=t.plugins.get("TableColumnResize");t.commands.add("resizeTableWidth",new LY(t));t.commands.add("resizeColumnWidths",new NY(t));const n=t.commands.get("resizeTableWidth");const i=t.commands.get("resizeColumnWidths");this.bind("_isResizingAllowed").to(t,"isReadOnly",e,"isEnabled",n,"isEnabled",i,"isEnabled",((t,e,n,i)=>!t&&e&&n&&i))}destroy(){this._domEmitter.stopListening();super.destroy()}_extendSchema(){this.editor.model.schema.extend("table",{allowAttributes:["tableWidth","columnWidths"]})}_registerPostFixer(){const t=this.editor;const e=t.model;e.document.registerPostFixer((t=>{let i=false;for(const o of OY(e)){const e=KY(o.getAttribute("columnWidths").split(","));n(e,o,this);const r=e.map((t=>`${t}%`)).join(",");if(o.getAttribute("columnWidths")===r){continue}t.setAttribute("columnWidths",r,o);i=true}return i}));function n(t,e,n){const o=n._tableUtilsPlugin.getColumns(e);const r=o-t.length;if(r===0){return}const s=i(n.editor.model.document.differ,e);for(const i of s){const r=o-t.length;if(r===0){continue}const s=r>0;const a=n._tableUtilsPlugin.getCellLocation(i).column;if(s){const i=VY(e,n.editor);const o=$Y(r,i);t.splice(a,0,...o)}else{const e=t.splice(a,Math.abs(r));t[a]+=GY(e)}}}function i(t,e){const n=new Set;for(const i of t.getChanges()){if(i.type=="insert"&&i.position.nodeAfter&&i.position.nodeAfter.name=="tableCell"&&i.position.nodeAfter.getAncestors().includes(e)){n.add(i.position.nodeAfter)}else if(i.type=="remove"){const t=i.position.nodeBefore||i.position.nodeAfter;if(t.name=="tableCell"&&t.getAncestors().includes(e)){n.add(t)}}}return n}}_registerConverters(){const t=this.editor;const e=t.conversion;const n={view:{name:"figure",key:"style",value:{width:/[\s\S]+/}},model:{name:"table",key:"tableWidth",value:t=>t.getStyle("width")}};const i={model:{name:"table",key:"tableWidth"},view:t=>({name:"figure",key:"style",value:{width:t}})};e.for("upcast").attributeToAttribute(n);e.for("upcast").add(QY(this._tableUtilsPlugin));e.for("downcast").attributeToAttribute(i);e.for("downcast").add(JY())}_registerResizingListeners(){const t=this.editor.editing.view;t.addObserver(UG);t.document.on("mousedown",this._onMouseDownHandler.bind(this),{priority:"high"});this._domEmitter.listenTo(ic.window.document,"mousemove",pT(this._onMouseMoveHandler.bind(this),50));this._domEmitter.listenTo(ic.window.document,"mouseup",this._onMouseUpHandler.bind(this))}_onMouseDownHandler(t,e){const n=e.target;if(!n.hasClass("ck-table-column-resizer")){return}if(!this._isResizingAllowed){return}e.preventDefault();t.stop();const i=this.editor;const o=i.editing.mapper.toModelElement(n.findAncestor("figure"));const r=c(o,this._tableUtilsPlugin,i);const s=n.findAncestor("table");const a=i.editing.view;if(![...s.getChildren()].find((t=>t.is("element","colgroup")))){a.change((t=>{l(t,r,s)}))}this._isResizingActive=true;this._resizingData=this._getResizingData(e,r);a.change((t=>d(t,s,this._resizingData)));function c(t,e,n){const i=Array(e.getColumns(t));const o=new Kq(t);for(const t of o){const e=n.editing.mapper.toViewElement(t.cell);const o=n.editing.view.domConverter.mapViewToDom(e);const r=ZY(o);if(!i[t.column]||r<i[t.column]){i[t.column]=WY(r)}}return i}function l(t,e,n){const i=t.createContainerElement("colgroup");for(let n=0;n<e.length;n++){const o=t.createEmptyElement("col");const r=`${WY(e[n]/GY(e)*100)}%`;t.setStyle("width",r,o);t.insert(t.createPositionAt(i,"end"),o)}t.insert(t.createPositionAt(n,"start"),i)}function d(t,e,n){const i=n.widths.viewFigureWidth/n.widths.viewFigureParentWidth;t.addClass("ck-table-resized",e);t.addClass("ck-table-column-resizer__active",n.elements.viewResizer);t.setStyle("width",`${WY(i*100)}%`,e.findAncestor("figure"))}}_onMouseMoveHandler(t,e){if(!this._isResizingActive){return}if(!this._isResizingAllowed){this._onMouseUpHandler();return}const{columnPosition:n,flags:{isRightEdge:i,isTableCentered:o,isLtrContent:r},elements:{viewFigure:s,viewLeftColumn:a,viewRightColumn:c},widths:{viewFigureParentWidth:l,tableWidth:d,leftColumnWidth:u,rightColumnWidth:h}}=this._resizingData;const g=-u+PY;const m=i?l-d:h-PY;const f=(r?1:-1)*(i&&o?2:1);const p=qY((e.clientX-n)*f,Math.min(g,0),Math.max(m,0));if(p===0){return}this.editor.editing.view.change((t=>{const e=WY((u+p)*100/d);t.setStyle("width",`${e}%`,a);if(i){const e=WY((d+p)*100/l);t.setStyle("width",`${e}%`,s)}else{const e=WY((h-p)*100/d);t.setStyle("width",`${e}%`,c)}}))}_onMouseUpHandler(){if(!this._isResizingActive){return}const{viewResizer:t,modelTable:e,viewFigure:n,viewColgroup:i}=this._resizingData.elements;const o=this.editor;const r=o.editing.view;const s=e.getAttribute("columnWidths");const a=[...i.getChildren()].map((t=>t.getStyle("width"))).join(",");const c=s!==a;const l=e.getAttribute("tableWidth");const d=n.getStyle("width");const u=l!==d;if(c||u){if(this._isResizingAllowed){if(u){o.execute("resizeTableWidth",{table:e,tableWidth:`${WY(d)}%`,columnWidths:a})}else{o.execute("resizeColumnWidths",{columnWidths:a,table:e})}}else{r.change((t=>{if(s){const e=s.split(",");for(const n of i.getChildren()){t.setStyle("width",e.shift(),n)}}else{t.remove(i)}if(u){if(l){t.setStyle("width",l,n)}else{t.removeStyle("width",n)}}if(!s&&!l){t.removeClass("ck-table-resized",[...n.getChildren()].find((t=>t.name==="table")))}}))}}r.change((e=>{e.removeClass("ck-table-column-resizer__active",t)}));this._isResizingActive=false;this._resizingData=null}_getResizingData(t,e){const n=this.editor;const i=t.domEvent.clientX;const o=t.target;const r=o.findAncestor("td")||o.findAncestor("th");const s=n.editing.mapper.toModelElement(r);const a=s.findAncestor("table");const c=UY(s,this._tableUtilsPlugin).rightEdge;const l=this._tableUtilsPlugin.getColumns(a)-1;const d=c===l;const u=!a.hasAttribute("tableAlignment");const h=n.locale.contentLanguageDirection!=="rtl";const g=r.findAncestor("table");const m=g.findAncestor("figure");const f=[...g.getChildren()].find((t=>t.is("element","colgroup")));const p=f.getChild(c);const b=d?undefined:f.getChild(c+1);const k=HY(n.editing.view.domConverter.mapViewToDom(m.parent));const w=HY(n.editing.view.domConverter.mapViewToDom(m));const A=FY(a,n);const C=e[c];const _=d?undefined:e[c+1];return{columnPosition:i,flags:{isRightEdge:d,isTableCentered:u,isLtrContent:h},elements:{viewResizer:o,modelTable:a,viewFigure:m,viewColgroup:f,viewLeftColumn:p,viewRightColumn:b},widths:{viewFigureParentWidth:k,viewFigureWidth:w,tableWidth:A,leftColumnWidth:C,rightColumnWidth:_}}}_registerColgroupFixer(){const t=this.editor;this.listenTo(t.editing.view.document,"layoutChanged",(()=>{const e=t.editing.view.document.selection.getFirstPosition().getAncestors().reverse().find((t=>t.name==="table"));const n=e&&[...e.getChildren()].find((t=>t.is("element","colgroup")));const i=t.model.document.selection.getFirstPosition().findAncestor("table");if(i&&i.hasAttribute("columnWidths")&&e&&!n){t.editing.reconvertItem(i)}}),{priority:"low"})}_registerResizerInserter(){this.editor.conversion.for("editingDowncast").add((t=>{t.on("insert:tableCell",((t,e,n)=>{const i=e.item;const o=n.mapper.toViewElement(i);const r=n.writer;r.insert(r.createPositionAt(o,"end"),r.createUIElement("div",{class:"ck-table-column-resizer"}))}),{priority:"lowest"})}))}}var nZ=n(728);var iZ={injectType:"singletonStyleTag",attributes:{"data-cke":true}};iZ.insert="head";iZ.singleton=true;var oZ=Tl()(nZ.Z,iZ);const rZ=nZ.Z.locals||{};class sZ extends eu{static get requires(){return[eZ,pY]}static get pluginName(){return"TableColumnResize"}}class aZ extends MY{constructor(t,e){super(t,"tableBackgroundColor",e)}}class cZ extends MY{constructor(t,e){super(t,"tableBorderColor",e)}_getValue(t){if(!t){return}const e=cY(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class lZ extends MY{constructor(t,e){super(t,"tableBorderStyle",e)}_getValue(t){if(!t){return}const e=cY(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}}class dZ extends MY{constructor(t,e){super(t,"tableBorderWidth",e)}_getValue(t){if(!t){return}const e=cY(t.getAttribute(this.attributeName));if(e===this._defaultValue){return}return e}_getValueToSet(t){t=lY(t,"px");if(t===this._defaultValue){return}return t}}class uZ extends MY{constructor(t,e){super(t,"tableWidth",e)}_getValueToSet(t){t=lY(t,"px");if(t===this._defaultValue){return}return t}}class hZ extends MY{constructor(t,e){super(t,"tableHeight",e)}_getValueToSet(t){t=lY(t,"px");if(t===this._defaultValue){return null}return t}}class gZ extends MY{constructor(t,e){super(t,"tableAlignment",e)}}const mZ=/^(left|center|right)$/;const fZ=/^(left|none|right)$/;class pZ extends eu{static get pluginName(){return"TablePropertiesEditing"}static get requires(){return[fG]}init(){const t=this.editor;const e=t.model.schema;const n=t.conversion;t.config.define("table.tableProperties.defaultProperties",{});const i=dY(t.config.get("table.tableProperties.defaultProperties"),{includeAlignmentProperty:true});t.data.addStyleProcessorRules(YC);bZ(e,n,{color:i.borderColor,style:i.borderStyle,width:i.borderWidth});t.commands.add("tableBorderColor",new cZ(t,i.borderColor));t.commands.add("tableBorderStyle",new lZ(t,i.borderStyle));t.commands.add("tableBorderWidth",new dZ(t,i.borderWidth));kZ(e,n,i.alignment);t.commands.add("tableAlignment",new gZ(t,i.alignment));AZ(e,n,{modelAttribute:"tableWidth",styleName:"width",defaultValue:i.width});t.commands.add("tableWidth",new uZ(t,i.width));AZ(e,n,{modelAttribute:"tableHeight",styleName:"height",defaultValue:i.height});t.commands.add("tableHeight",new hZ(t,i.height));t.data.addStyleProcessorRules(qC);wZ(e,n,{modelAttribute:"tableBackgroundColor",styleName:"background-color",defaultValue:i.backgroundColor});t.commands.add("tableBackgroundColor",new aZ(t,i.backgroundColor))}}function bZ(t,e,n){const i={width:"tableBorderWidth",color:"tableBorderColor",style:"tableBorderStyle"};t.extend("table",{allowAttributes:Object.values(i)});Lq(e,"table",i,n);zq(e,{modelAttribute:i.color,styleName:"border-color"});zq(e,{modelAttribute:i.style,styleName:"border-style"});zq(e,{modelAttribute:i.width,styleName:"border-width"})}function kZ(t,e,n){t.extend("table",{allowAttributes:["tableAlignment"]});e.for("downcast").attributeToAttribute({model:{name:"table",key:"tableAlignment"},view:t=>({key:"style",value:{float:t==="center"?"none":t}}),converterPriority:"high"});e.for("upcast").attributeToAttribute({view:{name:/^(table|figure)$/,styles:{float:fZ}},model:{key:"tableAlignment",value:t=>{let e=t.getStyle("float");if(e==="none"){e="center"}return e===n?null:e}}}).attributeToAttribute({view:{attributes:{align:mZ}},model:{name:"table",key:"tableAlignment",value:t=>{const e=t.getAttribute("align");return e===n?null:e}}})}function wZ(t,e,n){const{modelAttribute:i}=n;t.extend("table",{allowAttributes:[i]});Mq(e,{viewElement:"table",...n});zq(e,n)}function AZ(t,e,n){const{modelAttribute:i}=n;t.extend("table",{allowAttributes:[i]});Mq(e,{viewElement:/^(table|figure)$/,shouldUpcast:t=>!(t.name=="table"&&t.parent.name=="figure"),...n});Nq(e,{modelElement:"table",...n})}var CZ=n(9221);var _Z={injectType:"singletonStyleTag",attributes:{"data-cke":true}};_Z.insert="head";_Z.singleton=true;var vZ=Tl()(CZ.Z,_Z);const yZ=CZ.Z.locals||{};const xZ={left:J_.objectLeft,center:J_.objectCenter,right:J_.objectRight};class EZ extends Ll{constructor(t,e){super(t);this.set({borderStyle:"",borderWidth:"",borderColor:"",backgroundColor:"",width:"",height:"",alignment:""});this.options=e;const{borderStyleDropdown:n,borderWidthInput:i,borderColorInput:o,borderRowLabel:r}=this._createBorderFields();const{backgroundRowLabel:s,backgroundInput:a}=this._createBackgroundFields();const{widthInput:c,operatorLabel:l,heightInput:d,dimensionsLabel:u}=this._createDimensionFields();const{alignmentToolbar:h,alignmentLabel:g}=this._createAlignmentFields();this.focusTracker=new ul;this.keystrokes=new hl;this.children=this.createCollection();this.borderStyleDropdown=n;this.borderWidthInput=i;this.borderColorInput=o;this.backgroundInput=a;this.widthInput=c;this.heightInput=d;this.alignmentToolbar=h;const{saveButtonView:m,cancelButtonView:f}=this._createActionButtons();this.saveButtonView=m;this.cancelButtonView=f;this._focusables=new xl;this._focusCycler=new Yd({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});this.children.add(new wy(t,{label:this.t("Table properties")}));this.children.add(new zK(t,{labelView:r,children:[r,n,o,i],class:"ck-table-form__border-row"}));this.children.add(new zK(t,{labelView:s,children:[s,a],class:"ck-table-form__background-row"}));this.children.add(new zK(t,{children:[new zK(t,{labelView:u,children:[u,c,l,d],class:"ck-table-form__dimensions-row"}),new zK(t,{labelView:g,children:[g,h],class:"ck-table-properties-form__alignment-row"})]}));this.children.add(new zK(t,{children:[this.saveButtonView,this.cancelButtonView],class:"ck-table-form__action-row"}));this.setTemplate({tag:"form",attributes:{class:["ck","ck-form","ck-table-form","ck-table-properties-form"],tabindex:"-1"},children:this.children})}render(){super.render();o({view:this});[this.borderStyleDropdown,this.borderColorInput,this.borderColorInput.fieldView.dropdownView.buttonView,this.borderWidthInput,this.backgroundInput,this.backgroundInput.fieldView.dropdownView.buttonView,this.widthInput,this.heightInput,this.alignmentToolbar,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()}_createBorderFields(){const t=this.options.defaultTableProperties;const e={style:t.borderStyle,width:t.borderWidth,color:t.borderColor};const n=TK({colorConfig:this.options.borderColors,columns:5,defaultColorValue:e.color});const i=this.locale;const o=this.t;const r=new uy(i);r.text=o("Border");const s=wK(this.t);const a=new Ly(i,Py);a.set({label:o("Style"),class:"ck-table-form__border-style"});a.fieldView.buttonView.set({isOn:false,withText:true,tooltip:o("Style")});a.fieldView.buttonView.bind("label").to(this,"borderStyle",(t=>s[t?t:"none"]));a.fieldView.on("execute",(t=>{this.borderStyle=t.source._borderStyleValue}));a.bind("isEmpty").to(this,"borderStyle",(t=>!t));Dv(a.fieldView,xK(this,e.style));const c=new Ly(i,Ny);c.set({label:o("Width"),class:"ck-table-form__border-width"});c.fieldView.bind("value").to(this,"borderWidth");c.bind("isEnabled").to(this,"borderStyle",DZ);c.fieldView.on("input",(()=>{this.borderWidth=c.fieldView.element.value}));const l=new Ly(i,n);l.set({label:o("Color"),class:"ck-table-form__border-color"});l.fieldView.bind("value").to(this,"borderColor");l.bind("isEnabled").to(this,"borderStyle",DZ);l.fieldView.on("input",(()=>{this.borderColor=l.fieldView.value}));this.on("change:borderStyle",((t,n,i,o)=>{if(!DZ(i)){this.borderColor="";this.borderWidth=""}if(!DZ(o)){this.borderColor=e.color;this.borderWidth=e.width}}));return{borderRowLabel:r,borderStyleDropdown:a,borderColorInput:l,borderWidthInput:c}}_createBackgroundFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Background");const i=TK({colorConfig:this.options.backgroundColors,columns:5,defaultColorValue:this.options.defaultTableProperties.backgroundColor});const o=new Ly(t,i);o.set({label:e("Color"),class:"ck-table-properties-form__background"});o.fieldView.bind("value").to(this,"backgroundColor");o.fieldView.on("input",(()=>{this.backgroundColor=o.fieldView.value}));return{backgroundRowLabel:n,backgroundInput:o}}_createDimensionFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Dimensions");const i=new Ly(t,Ny);i.set({label:e("Width"),class:"ck-table-form__dimensions-row__width"});i.fieldView.bind("value").to(this,"width");i.fieldView.on("input",(()=>{this.width=i.fieldView.element.value}));const o=new Ll(t);o.setTemplate({tag:"span",attributes:{class:["ck-table-form__dimension-operator"]},children:[{text:"×"}]});const r=new Ly(t,Ny);r.set({label:e("Height"),class:"ck-table-form__dimensions-row__height"});r.fieldView.bind("value").to(this,"height");r.fieldView.on("input",(()=>{this.height=r.fieldView.element.value}));return{dimensionsLabel:n,widthInput:i,operatorLabel:o,heightInput:r}}_createAlignmentFields(){const t=this.locale;const e=this.t;const n=new uy(t);n.text=e("Alignment");const i=new rv(t);i.set({isCompact:true,ariaLabel:e("Table alignment toolbar")});EK({view:this,icons:xZ,toolbar:i,labels:this._alignmentLabels,propertyName:"alignment",defaultValue:this.options.defaultTableProperties.alignment});return{alignmentLabel:n,alignmentToolbar:i}}_createActionButtons(){const t=this.locale;const e=this.t;const n=new kd(t);const i=new kd(t);const o=[this.borderWidthInput,this.borderColorInput,this.backgroundInput,this.widthInput,this.heightInput];n.set({label:e("Save"),icon:J_.check,class:"ck-button-save",type:"submit",withText:true});n.bind("isEnabled").toMany(o,"errorText",((...t)=>t.every((t=>!t))));i.set({label:e("Cancel"),icon:J_.cancel,class:"ck-button-cancel",withText:true});i.delegate("execute").to(this,"cancel");return{saveButtonView:n,cancelButtonView:i}}get _alignmentLabels(){const t=this.locale;const e=this.t;const n=e("Align table to the left");const i=e("Center table");const o=e("Align table to the right");if(t.uiLanguageDirection==="rtl"){return{right:o,center:i,left:n}}else{return{left:n,center:i,right:o}}}}function DZ(t){return t!=="none"}const TZ='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M8 2v5h4V2h1v5h5v1h-5v4h.021l-.172.351-1.916.28-.151.027c-.287.063-.54.182-.755.341L8 13v5H7v-5H2v-1h5V8H2V7h5V2h1zm4 6H8v4h4V8z" opacity=".6"/><path d="m15.5 11.5 1.323 2.68 2.957.43-2.14 2.085.505 2.946L15.5 18.25l-2.645 1.39.505-2.945-2.14-2.086 2.957-.43L15.5 11.5zM17 1a2 2 0 0 1 2 2v9.475l-.85-.124-.857-1.736a2.048 2.048 0 0 0-.292-.44L17 3H3v14h7.808l.402.392L10.935 19H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h14z"/></svg>';const SZ=500;const IZ={borderStyle:"tableBorderStyle",borderColor:"tableBorderColor",borderWidth:"tableBorderWidth",backgroundColor:"tableBackgroundColor",width:"tableWidth",height:"tableHeight",alignment:"tableAlignment"};class BZ extends eu{static get requires(){return[Zy]}static get pluginName(){return"TablePropertiesUI"}constructor(t){super(t);t.config.define("table.tableProperties",{borderColors:DK,backgroundColors:DK})}init(){const t=this.editor;const e=t.t;this._defaultTableProperties=dY(t.config.get("table.tableProperties.defaultProperties"),{includeAlignmentProperty:true});this._balloon=t.plugins.get(Zy);this.view=null;this._undoStepBatch=null;this._isReady=false;t.ui.componentFactory.add("tableProperties",(n=>{const i=new kd(n);i.set({label:e("Table properties"),icon:TZ,tooltip:true});this.listenTo(i,"execute",(()=>this._showView()));const o=Object.values(IZ).map((e=>t.commands.get(e)));i.bind("isEnabled").toMany(o,"isEnabled",((...t)=>t.some((t=>t))));return i}))}destroy(){super.destroy();if(this.view){this.view.destroy()}}_createPropertiesView(){const e=this.editor;const n=e.config.get("table.tableProperties");const i=xd(n.borderColors);const o=yd(e.locale,i);const r=xd(n.backgroundColors);const s=yd(e.locale,r);const a=new EZ(e.locale,{borderColors:o,backgroundColors:s,defaultTableProperties:this._defaultTableProperties});const c=e.t;a.render();this.listenTo(a,"submit",(()=>{this._hideView()}));this.listenTo(a,"cancel",(()=>{if(this._undoStepBatch.operations.length){e.execute("undo",this._undoStepBatch)}this._hideView()}));a.keystrokes.set("Esc",((t,e)=>{this._hideView();e()}));t({emitter:a,activator:()=>this._isViewInBalloon,contextElements:[this._balloon.view.element],callback:()=>this._hideView()});const l=AK(c);const d=CK(c);a.on("change:borderStyle",this._getPropertyChangeCallback("tableBorderStyle",this._defaultTableProperties.borderStyle));a.on("change:borderColor",this._getValidatedPropertyChangeCallback({viewField:a.borderColorInput,commandName:"tableBorderColor",errorText:l,validator:_K,defaultValue:this._defaultTableProperties.borderColor}));a.on("change:borderWidth",this._getValidatedPropertyChangeCallback({viewField:a.borderWidthInput,commandName:"tableBorderWidth",errorText:d,validator:yK,defaultValue:this._defaultTableProperties.borderWidth}));a.on("change:backgroundColor",this._getValidatedPropertyChangeCallback({viewField:a.backgroundInput,commandName:"tableBackgroundColor",errorText:l,validator:_K,defaultValue:this._defaultTableProperties.backgroundColor}));a.on("change:width",this._getValidatedPropertyChangeCallback({viewField:a.widthInput,commandName:"tableWidth",errorText:d,validator:vK,defaultValue:this._defaultTableProperties.width}));a.on("change:height",this._getValidatedPropertyChangeCallback({viewField:a.heightInput,commandName:"tableHeight",errorText:d,validator:vK,defaultValue:this._defaultTableProperties.height}));a.on("change:alignment",this._getPropertyChangeCallback("tableAlignment",this._defaultTableProperties.alignment));return a}_fillViewFormFromCommandValues(){const t=this.editor.commands;const e=t.get("tableBorderStyle");Object.entries(IZ).map((([e,n])=>{const i=this._defaultTableProperties[e]||"";return[e,t.get(n).value||i]})).forEach((([t,n])=>{if((t==="borderColor"||t==="borderWidth")&&e.value==="none"){return}this.view.set(t,n)}));this._isReady=true}_showView(){const t=this.editor;if(!this.view){this.view=this._createPropertiesView()}this.listenTo(t.ui,"update",(()=>{this._updateView()}));this._fillViewFormFromCommandValues();this._balloon.add({view:this.view,position:iY(t)});this._undoStepBatch=t.model.createBatch();this.view.focus()}_hideView(){const t=this.editor;this.stopListening(t.ui,"update");this._isReady=false;this.view.saveButtonView.focus();this._balloon.remove(this.view);this.editor.editing.view.focus()}_updateView(){const t=this.editor;const e=t.editing.view.document;if(!JK(e.selection)){this._hideView()}else if(this._isViewVisible){nY(t,"table")}}get _isViewVisible(){return!!this.view&&this._balloon.visibleView===this.view}get _isViewInBalloon(){return!!this.view&&this._balloon.hasView(this.view)}_getPropertyChangeCallback(t){return(e,n,i)=>{if(!this._isReady){return}this.editor.execute(t,{value:i,batch:this._undoStepBatch})}}_getValidatedPropertyChangeCallback(t){const{commandName:e,viewField:n,validator:i,errorText:o}=t;const r=If((()=>{n.errorText=o}),SZ);return(t,o,s)=>{r.cancel();if(!this._isReady){return}if(i(s)){this.editor.execute(e,{value:s,batch:this._undoStepBatch});n.errorText=null}else{r()}}}}class MZ extends eu{static get pluginName(){return"TableProperties"}static get requires(){return[pZ,BZ]}}class LZ extends eu{static get requires(){return[XD]}static get pluginName(){return"TableToolbar"}afterInit(){const t=this.editor;const e=t.t;const n=t.plugins.get(XD);const i=t.config.get("table.contentToolbar");const o=t.config.get("table.tableToolbar");if(i){n.register("tableContent",{ariaLabel:e("Table toolbar"),items:i,getRelatedElement:JK})}if(o){n.register("table",{ariaLabel:e("Table toolbar"),items:o,getRelatedElement:QK})}}}const NZ="underline";class zZ extends eu{static get pluginName(){return"UnderlineEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:NZ});t.model.schema.setAttributeProperties(NZ,{isFormatting:true,copyOnEnter:true});t.conversion.attributeToElement({model:NZ,view:"u",upcastAlso:{styles:{"text-decoration":"underline"}}});t.commands.add(NZ,new NI(t,NZ));t.keystrokes.set("CTRL+U","underline")}}const PZ='<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3 18v-1.5h14V18zm2.2-8V3.6c0-.4.4-.6.8-.6.3 0 .7.2.7.6v6.2c0 2 1.3 2.8 3.2 2.8 1.9 0 3.4-.9 3.4-2.9V3.6c0-.3.4-.5.8-.5.3 0 .7.2.7.5V10c0 2.7-2.2 4-4.9 4-2.6 0-4.7-1.2-4.7-4z"/></svg>';const RZ="underline";class OZ extends eu{static get pluginName(){return"UnderlineUI"}init(){const t=this.editor;const e=t.t;t.ui.componentFactory.add(RZ,(n=>{const i=t.commands.get(RZ);const o=new kd(n);o.set({label:e("Underline"),icon:PZ,keystroke:"CTRL+U",tooltip:true,isToggleable:true});o.bind("isOn","isEnabled").to(i,"value","isEnabled");this.listenTo(o,"execute",(()=>{t.execute(RZ);t.editing.view.focus()}));return o}))}}class VZ extends eu{static get requires(){return[zZ,OZ]}static get pluginName(){return"Underline"}}function FZ(t){if(t.is("$text")||t.is("$textProxy")){return t.data}const e=t;let n="";let i=null;for(const t of e.getChildren()){const e=FZ(t);if(i&&i.is("element")){n+="\n"}n+=e;i=t}return n}class jZ extends eu{constructor(t){super(t);this.set("characters",0);this.set("words",0);Object.defineProperties(this,{characters:{get(){return this.characters=this._getCharacters()}},words:{get(){return this.words=this._getWords()}}});this.set("_wordsLabel",undefined);this.set("_charactersLabel",undefined);this._config=t.config.get("wordCount")||{};this._outputView=undefined;this._wordsMatchRegExp=l.features.isRegExpUnicodePropertySupported?new RegExp("([\\p{L}\\p{N}]+\\S?)+","gu"):/([a-zA-Z0-9À-ž]+\S?)+/gu}static get pluginName(){return"WordCount"}init(){const t=this.editor;t.model.document.on("change:data",pT(this._refreshStats.bind(this),250));if(typeof this._config.onUpdate=="function"){this.on("update",((t,e)=>{this._config.onUpdate(e)}))}if(qa(this._config.container)){this._config.container.appendChild(this.wordCountContainer)}}destroy(){if(this._outputView){this._outputView.element.remove();this._outputView.destroy()}super.destroy()}get wordCountContainer(){const t=this.editor;const e=t.t;const n=t.config.get("wordCount.displayWords");const i=t.config.get("wordCount.displayCharacters");const o=zl.bind(this,this);const r=[];if(!this._outputView){this._outputView=new Ll;if(n||n===undefined){this.bind("_wordsLabel").to(this,"words",(t=>e("Words: %0",t)));r.push({tag:"div",children:[{text:[o.to("_wordsLabel")]}],attributes:{class:"ck-word-count__words"}})}if(i||i===undefined){this.bind("_charactersLabel").to(this,"characters",(t=>e("Characters: %0",t)));r.push({tag:"div",children:[{text:[o.to("_charactersLabel")]}],attributes:{class:"ck-word-count__characters"}})}this._outputView.setTemplate({tag:"div",attributes:{class:["ck","ck-word-count"]},children:r});this._outputView.render()}return this._outputView.element}_getCharacters(){const t=FZ(this.editor.model.document.getRoot());return t.replace(/\n/g,"").length}_getWords(){const t=FZ(this.editor.model.document.getRoot());const e=t.match(this._wordsMatchRegExp)||[];return e.length}_refreshStats(){const t=this.words=this._getWords();const e=this.characters=this._getCharacters();this.fire("update",{words:t,characters:e})}}function HZ(t,e=new Set){const n=[t];const i=new Set;let o=0;while(n.length>o){const t=n[o++];if(i.has(t)||UZ(t)||e.has(t)){continue}i.add(t);if(t[Symbol.iterator]){try{for(const e of t){n.push(e)}}catch(t){}}else{for(const e in t){if(e==="defaultValue"){continue}n.push(t[e])}}}return i}function UZ(t){const e=Object.prototype.toString.call(t);const n=typeof t;return n==="number"||n==="boolean"||n==="string"||n==="symbol"||n==="function"||e==="[object Date]"||e==="[object RegExp]"||e==="[object Module]"||t===undefined||t===null||t._watchdogExcluded===true||t instanceof EventTarget||t instanceof Event}function WZ(t,e,n=new Set){if(t===e&&$Z(t)){return true}const i=HZ(t,n);const o=HZ(e,n);for(const t of i){if(o.has(t)){return true}}return false}function qZ(t,e,n){const{subNodes:i,prevNodeMap:o}=getSubNodes(t,n.subNodes);const{subNodes:r,prevNodeMap:s}=getSubNodes(e,n.subNodes);for(const n of i){if(r.has(n)){const i=[];i.push(n);let r=o.get(n);while(r&&r!==t){i.push(r);r=o.get(r)}r=s.get(n);while(r&&r!==e){i.unshift(r);r=s.get(r)}console.log("--------");console.log({target1:t});console.log({sharedNode:n});console.log({target2:e});console.log({connection:i});return true}}return false}function $Z(t){return typeof t==="object"&&t!==null}class GZ{constructor(t){this.crashes=[];this.state="initializing";this._crashNumberLimit=typeof t.crashNumberLimit==="number"?t.crashNumberLimit:3;this._now=Date.now;this._minimumNonErrorTimePeriod=typeof t.minimumNonErrorTimePeriod==="number"?t.minimumNonErrorTimePeriod:5e3;this._boundErrorHandler=t=>{const e=t.error||t.reason;if(e instanceof Error){this._handleError(e,t)}};this._listeners={};if(!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.")}}setCreator(t){this._creator=t}setDestructor(t){this._destructor=t}destroy(){this._stopErrorHandling();this._listeners={}}on(t,e){if(!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.filename,lineno:e.lineno,colno:e.colno,date:this._now()});const n=this._shouldRestart();this.state="crashed";this._fire("stateChange");this._fire("error",{error:t,causesRestart:n});if(n){this._restart()}else{this.state="crashedPermanently";this._fire("stateChange")}}}_shouldReactToError(t){return t.is&&t.is("CKEditorError")&&t.context!==undefined&&t.context!==null&&this.state==="ready"&&this._isErrorComingFromThisItem(t)}_shouldRestart(){if(this.crashes.length<=this._crashNumberLimit){return true}const t=this.crashes[this.crashes.length-1].date;const e=this.crashes[this.crashes.length-1-this._crashNumberLimit].date;const n=(t-e)/this._crashNumberLimit;return n>this._minimumNonErrorTimePeriod}}class KZ extends GZ{constructor(t,e={}){super(e);this._editor=null;this._throttledSave=pT(this._save.bind(this),typeof e.saveInterval==="number"?e.saveInterval:5e3);this._creator=(e,n)=>t.create(e,n);this._destructor=t=>t.destroy()}get editor(){return this._editor}get _item(){return this._editor}_restart(){return Promise.resolve().then((()=>{this.state="initializing";this._fire("stateChange");return this._destroy()})).catch((t=>{console.error("An error happened during the editor destroying.",t)})).then((()=>{if(typeof this._elementOrData==="string"){return this.create(this._data,this._config,this._config.context)}else{const t=Object.assign({},this._config,{initialData:this._data});return this.create(this._elementOrData,t,t.context)}})).then((()=>{this._fire("restart")}))}create(t=this._elementOrData,e=this._config,n){return Promise.resolve().then((()=>{super._startErrorHandling();this._elementOrData=t;this._config=this._cloneEditorConfiguration(e)||{};this._config.context=n;return 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.state="ready";this._fire("stateChange")}))}destroy(){return Promise.resolve().then((()=>{this.state="destroyed";this._fire("stateChange");super.destroy();return this._destroy()}))}_destroy(){return Promise.resolve().then((()=>{this._stopErrorHandling();this._throttledSave.flush();const t=this._editor;this._editor=null;t.model.document.off("change:data",this._throttledSave);return this._destructor(t)}))}_save(){const t=this._editor.model.document.version;try{this._data=this._getData();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={};for(const e of this._editor.model.document.getRootNames()){t[e]=this._editor.data.get({rootName:e})}return t}_isErrorComingFromThisItem(t){return WZ(this._editor,t.context,this._excludedProps)}_cloneEditorConfiguration(t){return Ua(t,((t,e)=>{if(qa(t)){return t}if(e==="context"){return t}}))}}class YZ extends vx{}YZ.builtinPlugins=[jx,zE,rS,gI,CI,LI,VI,ZI,TB,gM,GL,RN,qN,wz,$z,hP,xP,RP,OP,QP,DR,PR,OO,JO,IV,BV,vO,RV,UV,YV,TF,VF,HH,_U,vU,zU,Xz,_W,TW,VW,aq,cq,lq,gq,uq,dq,hq,wq,xq,Bq,ZG,uK,BY,sZ,MZ,LZ,CE,VZ,jZ];YZ.defaultConfig={toolbar:{items:["undo","redo","findAndReplace","|","heading","|","bold","italic","superscript","subscript","strikethrough","code","underline","removeFormat","|","alignment","bulletedList","numberedList","|","link","blockQuote","imageInsert","insertTable","mediaEmbed","|","specialCharacters"]},language:"en",image:{toolbar:["imageTextAlternative","toggleImageCaption","imageStyle:inline","imageStyle:block","imageStyle:side","linkImage"]},table:{contentToolbar:["tableColumn","tableRow","mergeTableCells","tableCellProperties","tableProperties"]}};const ZZ={Editor:YZ,EditorWatchdog:KZ}})();i=i["default"];return i})()));
+//# sourceMappingURL=editor.js.map \ No newline at end of file
diff --git a/ckeditor/editor.js.map b/ckeditor/editor.js.map
new file mode 100644
index 0000000..88d534d
--- /dev/null
+++ b/ckeditor/editor.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"ckeditor.js","mappings":";;;;AAAA","sources":["webpack://CKSource/webpack/universalModuleDefinition"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"CKSource\"] = factory();\n\telse\n\t\troot[\"CKSource\"] = factory();\n})(self, () => {\nreturn "],"names":[],"sourceRoot":""} \ No newline at end of file
diff --git a/ckeditor/editor.php b/ckeditor/editor.php
new file mode 100644
index 0000000..658000a
--- /dev/null
+++ b/ckeditor/editor.php
@@ -0,0 +1,27 @@
+<?php
+
+header("Content-Type: application/javascript");
+$base = file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/ckeditor/ckeditor-build.js");
+$iconAmount = 87;
+
+$icons = [];
+$index = 0;
+
+while (true) {
+ if (file_exists($_SERVER['DOCUMENT_ROOT'] . "/ckeditor/icons/delta/" . $index . ".svg")) {
+ $icons[] = file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/ckeditor/icons/delta/" . $index . ".svg");
+ } elseif (file_exists($_SERVER['DOCUMENT_ROOT'] . "/ckeditor/icons/original/" . $index . ".svg")) {
+ $icons[] = file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/ckeditor/icons/original/" . $index . ".svg");
+ } else {
+ $icons[] = "";
+ }
+
+ $iconAmount--; $index++;
+ if ($iconAmount === 0) break;
+}
+
+foreach ($icons as $index => $icon) {
+ $base = str_replace("$\${Delta.CKEditor.Icon[$index]}$$", $icon, $base);
+}
+
+die($base); \ No newline at end of file
diff --git a/ckeditor/icons.js b/ckeditor/icons.js
new file mode 100644
index 0000000..06daf21
--- /dev/null
+++ b/ckeditor/icons.js
@@ -0,0 +1,27 @@
+const fs = require('fs');
+
+let source = fs.readFileSync("./ckeditor.js").toString();
+let out = source;
+let regex = /<svg([^']*)<\/svg>/m;
+
+let icons = [];
+let index = 0;
+
+while (out.replace(regex, "") !== out) {
+ let matches = out.match(regex);
+
+ if (matches && matches.length >= 2) {
+ let icon = matches[0];
+ icons.push(icon);
+ out = out.replace(regex, "$$${Delta.CKEditor.Icon[" + index + "]}$$$");
+ index++;
+ }
+}
+
+console.log(icons);
+
+icons.forEach((icon, index) => {
+ fs.writeFileSync("./icons/original/" + index + ".svg", icon);
+})
+
+fs.writeFileSync("./ckeditor-build.js", out); \ No newline at end of file
diff --git a/ckeditor/icons/delta/0.svg b/ckeditor/icons/delta/0.svg
new file mode 100644
index 0000000..79414e8
--- /dev/null
+++ b/ckeditor/icons/delta/0.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19.77 4.93l1.4 1.4L8.43 19.07l-5.6-5.6 1.4-1.4 4.2 4.2L19.77 4.93m0-2.83L8.43 13.44l-4.2-4.2L0 13.47l8.43 8.43L24 6.33 19.77 2.1z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/1.svg b/ckeditor/icons/delta/1.svg
new file mode 100644
index 0000000..b615405
--- /dev/null
+++ b/ckeditor/icons/delta/1.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M24 24H0V0h24v24z" fill="none" opacity=".87"/><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6-1.41-1.41z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/10.svg b/ckeditor/icons/delta/10.svg
new file mode 100644
index 0000000..188d757
--- /dev/null
+++ b/ckeditor/icons/delta/10.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M8 19h3v4h2v-4h3l-4-4-4 4zm8-14h-3V1h-2v4H8l4 4 4-4zM4 11v2h16v-2H4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/11.svg b/ckeditor/icons/delta/11.svg
new file mode 100644
index 0000000..3aeaa03
--- /dev/null
+++ b/ckeditor/icons/delta/11.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M8 11h3v10h2V11h3l-4-4-4 4zM4 3v2h16V3H4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/12.svg b/ckeditor/icons/delta/12.svg
new file mode 100644
index 0000000..c205f1a
--- /dev/null
+++ b/ckeditor/icons/delta/12.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M15 15H3v2h12v-2zm0-8H3v2h12V7zM3 13h18v-2H3v2zm0 8h18v-2H3v2zM3 3v2h18V3H3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/13.svg b/ckeditor/icons/delta/13.svg
new file mode 100644
index 0000000..01fdffd
--- /dev/null
+++ b/ckeditor/icons/delta/13.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M7 15v2h10v-2H7zm-4 6h18v-2H3v2zm0-8h18v-2H3v2zm4-6v2h10V7H7zM3 3v2h18V3H3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/14.svg b/ckeditor/icons/delta/14.svg
new file mode 100644
index 0000000..0d45c78
--- /dev/null
+++ b/ckeditor/icons/delta/14.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M3 21h18v-2H3v2zm6-4h12v-2H9v2zm-6-4h18v-2H3v2zm6-4h12V7H9v2zM3 3v2h18V3H3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/15.svg b/ckeditor/icons/delta/15.svg
new file mode 100644
index 0000000..4700fe9
--- /dev/null
+++ b/ckeditor/icons/delta/15.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M3 21h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18v-2H3v2zm0-4h18V7H3v2zm0-6v2h18V3H3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/16.svg b/ckeditor/icons/delta/16.svg
new file mode 100644
index 0000000..7af919e
--- /dev/null
+++ b/ckeditor/icons/delta/16.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M4,22H2V2h2V22z M22,7H6v3h16V7z M16,14H6v3h10V14z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/17.svg b/ckeditor/icons/delta/17.svg
new file mode 100644
index 0000000..2c7edcc
--- /dev/null
+++ b/ckeditor/icons/delta/17.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><polygon points="11,2 13,2 13,7 21,7 21,10 13,10 13,14 18,14 18,17 13,17 13,22 11,22 11,17 6,17 6,14 11,14 11,10 3,10 3,7 11,7"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/18.svg b/ckeditor/icons/delta/18.svg
new file mode 100644
index 0000000..d29326e
--- /dev/null
+++ b/ckeditor/icons/delta/18.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M20,2h2v20h-2V2z M2,10h16V7H2V10z M8,17h10v-3H8V17z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/19.svg b/ckeditor/icons/delta/19.svg
new file mode 100644
index 0000000..432a25a
--- /dev/null
+++ b/ckeditor/icons/delta/19.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M3 17h18v2H3zm16-5v1H5v-1h14m2-2H3v5h18v-5zM3 6h18v2H3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/2.svg b/ckeditor/icons/delta/2.svg
new file mode 100644
index 0000000..5f1267d
--- /dev/null
+++ b/ckeditor/icons/delta/2.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/20.svg b/ckeditor/icons/delta/20.svg
new file mode 100644
index 0000000..7af919e
--- /dev/null
+++ b/ckeditor/icons/delta/20.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M4,22H2V2h2V22z M22,7H6v3h16V7z M16,14H6v3h10V14z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/21.svg b/ckeditor/icons/delta/21.svg
new file mode 100644
index 0000000..7af919e
--- /dev/null
+++ b/ckeditor/icons/delta/21.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M4,22H2V2h2V22z M22,7H6v3h16V7z M16,14H6v3h10V14z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/22.svg b/ckeditor/icons/delta/22.svg
new file mode 100644
index 0000000..d29326e
--- /dev/null
+++ b/ckeditor/icons/delta/22.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M20,2h2v20h-2V2z M2,10h16V7H2V10z M8,17h10v-3H8V17z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/23.svg b/ckeditor/icons/delta/23.svg
new file mode 100644
index 0000000..33f0eac
--- /dev/null
+++ b/ckeditor/icons/delta/23.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 14H6V6h12v12z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/24.svg b/ckeditor/icons/delta/24.svg
new file mode 100644
index 0000000..afbe64d
--- /dev/null
+++ b/ckeditor/icons/delta/24.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 12h-2v3h-3v2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/25.svg b/ckeditor/icons/delta/25.svg
new file mode 100644
index 0000000..afbe64d
--- /dev/null
+++ b/ckeditor/icons/delta/25.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 12h-2v3h-3v2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/26.svg b/ckeditor/icons/delta/26.svg
new file mode 100644
index 0000000..afbe64d
--- /dev/null
+++ b/ckeditor/icons/delta/26.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 12h-2v3h-3v2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/27.svg b/ckeditor/icons/delta/27.svg
new file mode 100644
index 0000000..c95c5b3
--- /dev/null
+++ b/ckeditor/icons/delta/27.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><g><polygon points="15,16 11,20 21,20 21,16"/><path d="M12.06,7.19L3,16.25V20h3.75l9.06-9.06L12.06,7.19z M5.92,18H5v-0.92l7.06-7.06l0.92,0.92L5.92,18z"/><path d="M18.71,8.04c0.39-0.39,0.39-1.02,0-1.41l-2.34-2.34C16.17,4.09,15.92,4,15.66,4c-0.25,0-0.51,0.1-0.7,0.29l-1.83,1.83 l3.75,3.75L18.71,8.04z"/></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/28.svg b/ckeditor/icons/delta/28.svg
new file mode 100644
index 0000000..c8e3890
--- /dev/null
+++ b/ckeditor/icons/delta/28.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24" viewBox="0 96 960 960" width="24"><path d="M360 896V656q-83 0-141.5-58.5T160 456q0-83 58.5-141.5T360 256h360v80h-80v560h-80V336H440v560h-80Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/29.svg b/ckeditor/icons/delta/29.svg
new file mode 100644
index 0000000..cdcb180
--- /dev/null
+++ b/ckeditor/icons/delta/29.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M18.62 18h-5.24l2-4H13V6h8v7.24L18.62 18zm-2-2h.76L19 12.76V8h-4v4h3.62l-2 4zm-8 2H3.38l2-4H3V6h8v7.24L8.62 18zm-2-2h.76L9 12.76V8H5v4h3.62l-2 4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/3.svg b/ckeditor/icons/delta/3.svg
new file mode 100644
index 0000000..b4c0bc5
--- /dev/null
+++ b/ckeditor/icons/delta/3.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M12 14h4v-4h-4V7l-5 5 5 5zm7-11h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-.14 0-.27.01-.4.04-.39.08-.74.28-1.01.55-.18.18-.33.4-.43.64-.1.23-.16.49-.16.77v14c0 .27.06.54.16.78s.25.45.43.64c.27.27.62.47 1.01.55.13.02.26.03.4.03h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7-.25c.41 0 .75.34.75.75s-.34.75-.75.75-.75-.34-.75-.75.34-.75.75-.75zM19 19H5V5h14v14z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/30.svg b/ckeditor/icons/delta/30.svg
new file mode 100644
index 0000000..2145ccd
--- /dev/null
+++ b/ckeditor/icons/delta/30.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/31.svg b/ckeditor/icons/delta/31.svg
new file mode 100644
index 0000000..9739d31
--- /dev/null
+++ b/ckeditor/icons/delta/31.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M15.6 10.79c.97-.67 1.65-1.77 1.65-2.79 0-2.26-1.75-4-4-4H7v14h7.04c2.09 0 3.71-1.7 3.71-3.79 0-1.52-.86-2.82-2.15-3.42zM10 6.5h3c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5h-3v-3zm3.5 9H10v-3h3.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/32.svg b/ckeditor/icons/delta/32.svg
new file mode 100644
index 0000000..e6e0a14
--- /dev/null
+++ b/ckeditor/icons/delta/32.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M13 3H6v18h4v-6h3c3.31 0 6-2.69 6-6s-2.69-6-6-6zm.2 8H10V7h3.2c1.1 0 2 .9 2 2s-.9 2-2 2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/33.svg b/ckeditor/icons/delta/33.svg
new file mode 100644
index 0000000..93b8cea
--- /dev/null
+++ b/ckeditor/icons/delta/33.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/34.svg b/ckeditor/icons/delta/34.svg
new file mode 100644
index 0000000..f9c44e6
--- /dev/null
+++ b/ckeditor/icons/delta/34.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0z" fill="none"/><path d="M2.5 4v3h5v12h3V7h5V4h-13zm19 5h-9v3h3v7h3v-7h3V9z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/35.svg b/ckeditor/icons/delta/35.svg
new file mode 100644
index 0000000..c46a8bf
--- /dev/null
+++ b/ckeditor/icons/delta/35.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><path d="M0,0h24v24H0V0z" fill="none"/></g><g><path d="M14,2H6C4.9,2,4.01,2.9,4.01,4L4,20c0,1.1,0.89,2,1.99,2H18c1.1,0,2-0.9,2-2V8L14,2z M18,20H6V4h7v5h5V20z M8.82,13.05 L7.4,14.46L10.94,18l5.66-5.66l-1.41-1.41l-4.24,4.24L8.82,13.05z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/36.svg b/ckeditor/icons/delta/36.svg
new file mode 100644
index 0000000..f49ea29
--- /dev/null
+++ b/ckeditor/icons/delta/36.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12l4.58-4.59z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/37.svg b/ckeditor/icons/delta/37.svg
new file mode 100644
index 0000000..b0428e2
--- /dev/null
+++ b/ckeditor/icons/delta/37.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6-6-6z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/38.svg b/ckeditor/icons/delta/38.svg
new file mode 100644
index 0000000..27c15d0
--- /dev/null
+++ b/ckeditor/icons/delta/38.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M3 5v4h2V5h4V3H5c-1.1 0-2 .9-2 2zm2 10H3v4c0 1.1.9 2 2 2h4v-2H5v-4zm14 4h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4zm0-16h-4v2h4v4h2V5c0-1.1-.9-2-2-2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/39.svg b/ckeditor/icons/delta/39.svg
new file mode 100644
index 0000000..4ac2969
--- /dev/null
+++ b/ckeditor/icons/delta/39.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M12,3L2,21h20L12,3z M13,8.92L18.6,19H13V8.92z M11,8.92V19H5.4L11,8.92z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/4.svg b/ckeditor/icons/delta/4.svg
new file mode 100644
index 0000000..b7e19d3
--- /dev/null
+++ b/ckeditor/icons/delta/4.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/40.svg b/ckeditor/icons/delta/40.svg
new file mode 100644
index 0000000..5375947
--- /dev/null
+++ b/ckeditor/icons/delta/40.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/41.svg b/ckeditor/icons/delta/41.svg
new file mode 100644
index 0000000..c5bf4fd
--- /dev/null
+++ b/ckeditor/icons/delta/41.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16c1.05-3.19 4.05-5.5 7.6-5.5 1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/42.svg b/ckeditor/icons/delta/42.svg
new file mode 100644
index 0000000..5728238
--- /dev/null
+++ b/ckeditor/icons/delta/42.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/43.svg b/ckeditor/icons/delta/43.svg
new file mode 100644
index 0000000..fd05976
--- /dev/null
+++ b/ckeditor/icons/delta/43.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/><circle cx="12" cy="3.5" fill="none" r=".75"/><circle cx="12" cy="3.5" fill="none" r=".75"/><polygon fill="none" points="5,15 5,16 5,19 19,19 19,16 19,15 19,5 5,5"/><g><polygon points="11,14.17 8.83,12 11,9.83 9.59,8.41 6,12 9.59,15.59"/><polygon points="14.41,15.59 18,12 14.41,8.41 13,9.83 15.17,12 13,14.17"/><path d="M19,3h-4.18C14.4,1.84,13.3,1,12,1S9.6,1.84,9.18,3H5C4.86,3,4.73,3.01,4.6,3.04C4.21,3.12,3.86,3.32,3.59,3.59 c-0.18,0.18-0.33,0.4-0.43,0.64C3.06,4.46,3,4.72,3,5v10v1v3c0,0.27,0.06,0.54,0.16,0.78c0.1,0.24,0.25,0.45,0.43,0.64 c0.27,0.27,0.62,0.47,1.01,0.55C4.73,20.99,4.86,21,5,21h14c1.1,0,2-0.9,2-2v-3v-1V5C21,3.9,20.1,3,19,3z M12,2.75 c0.41,0,0.75,0.34,0.75,0.75S12.41,4.25,12,4.25s-0.75-0.34-0.75-0.75S11.59,2.75,12,2.75z M19,15v1v3H5v-3v-1V5h14V15z"/></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/44.svg b/ckeditor/icons/delta/44.svg
new file mode 100644
index 0000000..a773d5b
--- /dev/null
+++ b/ckeditor/icons/delta/44.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/><path d="M14.17,5L19,9.83V19H5V5L14.17,5L14.17,5 M14.17,3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h14c1.1,0,2-0.9,2-2V9.83 c0-0.53-0.21-1.04-0.59-1.41l-4.83-4.83C15.21,3.21,14.7,3,14.17,3L14.17,3z M7,15h10v2H7V15z M7,11h10v2H7V11z M7,7h7v2H7V7z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/45.svg b/ckeditor/icons/delta/45.svg
new file mode 100644
index 0000000..82d013e
--- /dev/null
+++ b/ckeditor/icons/delta/45.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M11 6c1.38 0 2.63.56 3.54 1.46L12 10h6V4l-2.05 2.05C14.68 4.78 12.93 4 11 4c-3.53 0-6.43 2.61-6.92 6H6.1c.46-2.28 2.48-4 4.9-4zm5.64 9.14c.66-.9 1.12-1.97 1.28-3.14H15.9c-.46 2.28-2.48 4-4.9 4-1.38 0-2.63-.56-3.54-1.46L10 12H4v6l2.05-2.05C7.32 17.22 9.07 18 11 18c1.55 0 2.98-.51 4.14-1.36L20 21.49 21.49 20l-4.85-4.86z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/46.svg b/ckeditor/icons/delta/46.svg
new file mode 100644
index 0000000..7d95d75
--- /dev/null
+++ b/ckeditor/icons/delta/46.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/><path d="M17,5h-2V3h2V5z M15,15v6l2.29-2.29L19.59,21L21,19.59l-2.29-2.29L21,15H15z M19,9h2V7h-2V9z M19,13h2v-2h-2V13z M11,21h2 v-2h-2V21z M7,5h2V3H7V5z M3,17h2v-2H3V17z M5,21v-2H3C3,20.1,3.9,21,5,21z M19,3v2h2C21,3.9,20.1,3,19,3z M11,5h2V3h-2V5z M3,9h2 V7H3V9z M7,21h2v-2H7V21z M3,13h2v-2H3V13z M3,5h2V3C3.9,3,3,3.9,3,5z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/47.svg b/ckeditor/icons/delta/47.svg
new file mode 100644
index 0000000..ca6106c
--- /dev/null
+++ b/ckeditor/icons/delta/47.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M12 17c3.31 0 6-2.69 6-6V3h-2.5v8c0 1.93-1.57 3.5-3.5 3.5S8.5 12.93 8.5 11V3H6v8c0 3.31 2.69 6 6 6zm-7 2v2h14v-2H5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/48.svg b/ckeditor/icons/delta/48.svg
new file mode 100644
index 0000000..d9cfd7a
--- /dev/null
+++ b/ckeditor/icons/delta/48.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><g><g><g><path d="M12,22C6.49,22,2,17.51,2,12S6.49,2,12,2s10,4.04,10,9c0,3.31-2.69,6-6,6h-1.77c-0.28,0-0.5,0.22-0.5,0.5 c0,0.12,0.05,0.23,0.13,0.33c0.41,0.47,0.64,1.06,0.64,1.67C14.5,20.88,13.38,22,12,22z M12,4c-4.41,0-8,3.59-8,8s3.59,8,8,8 c0.28,0,0.5-0.22,0.5-0.5c0-0.16-0.08-0.28-0.14-0.35c-0.41-0.46-0.63-1.05-0.63-1.65c0-1.38,1.12-2.5,2.5-2.5H16 c2.21,0,4-1.79,4-4C20,7.14,16.41,4,12,4z"/><circle cx="6.5" cy="11.5" r="1.5"/><circle cx="9.5" cy="7.5" r="1.5"/><circle cx="14.5" cy="7.5" r="1.5"/><circle cx="17.5" cy="11.5" r="1.5"/></g></g></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/49.svg b/ckeditor/icons/delta/49.svg
new file mode 100644
index 0000000..67b769d
--- /dev/null
+++ b/ckeditor/icons/delta/49.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M9 4v3h5v12h3V7h5V4H9zm-6 8h3v7h3v-7h3V9H3v3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/5.svg b/ckeditor/icons/delta/5.svg
new file mode 100644
index 0000000..4165162
--- /dev/null
+++ b/ckeditor/icons/delta/5.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19.43 12.98c.04-.32.07-.64.07-.98 0-.34-.03-.66-.07-.98l2.11-1.65c.19-.15.24-.42.12-.64l-2-3.46c-.09-.16-.26-.25-.44-.25-.06 0-.12.01-.17.03l-2.49 1c-.52-.4-1.08-.73-1.69-.98l-.38-2.65C14.46 2.18 14.25 2 14 2h-4c-.25 0-.46.18-.49.42l-.38 2.65c-.61.25-1.17.59-1.69.98l-2.49-1c-.06-.02-.12-.03-.18-.03-.17 0-.34.09-.43.25l-2 3.46c-.13.22-.07.49.12.64l2.11 1.65c-.04.32-.07.65-.07.98 0 .33.03.66.07.98l-2.11 1.65c-.19.15-.24.42-.12.64l2 3.46c.09.16.26.25.44.25.06 0 .12-.01.17-.03l2.49-1c.52.4 1.08.73 1.69.98l.38 2.65c.03.24.24.42.49.42h4c.25 0 .46-.18.49-.42l.38-2.65c.61-.25 1.17-.59 1.69-.98l2.49 1c.06.02.12.03.18.03.17 0 .34-.09.43-.25l2-3.46c.12-.22.07-.49-.12-.64l-2.11-1.65zm-1.98-1.71c.04.31.05.52.05.73 0 .21-.02.43-.05.73l-.14 1.13.89.7 1.08.84-.7 1.21-1.27-.51-1.04-.42-.9.68c-.43.32-.84.56-1.25.73l-1.06.43-.16 1.13-.2 1.35h-1.4l-.19-1.35-.16-1.13-1.06-.43c-.43-.18-.83-.41-1.23-.71l-.91-.7-1.06.43-1.27.51-.7-1.21 1.08-.84.89-.7-.14-1.13c-.03-.31-.05-.54-.05-.74s.02-.43.05-.73l.14-1.13-.89-.7-1.08-.84.7-1.21 1.27.51 1.04.42.9-.68c.43-.32.84-.56 1.25-.73l1.06-.43.16-1.13.2-1.35h1.39l.19 1.35.16 1.13 1.06.43c.43.18.83.41 1.23.71l.91.7 1.06-.43 1.27-.51.7 1.21-1.07.85-.89.7.14 1.13zM12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 6c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/50.svg b/ckeditor/icons/delta/50.svg
new file mode 100644
index 0000000..c95c5b3
--- /dev/null
+++ b/ckeditor/icons/delta/50.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><g><polygon points="15,16 11,20 21,20 21,16"/><path d="M12.06,7.19L3,16.25V20h3.75l9.06-9.06L12.06,7.19z M5.92,18H5v-0.92l7.06-7.06l0.92,0.92L5.92,18z"/><path d="M18.71,8.04c0.39-0.39,0.39-1.02,0-1.41l-2.34-2.34C16.17,4.09,15.92,4,15.66,4c-0.25,0-0.51,0.1-0.7,0.29l-1.83,1.83 l3.75,3.75L18.71,8.04z"/></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/51.svg b/ckeditor/icons/delta/51.svg
new file mode 100644
index 0000000..c95c5b3
--- /dev/null
+++ b/ckeditor/icons/delta/51.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><g><polygon points="15,16 11,20 21,20 21,16"/><path d="M12.06,7.19L3,16.25V20h3.75l9.06-9.06L12.06,7.19z M5.92,18H5v-0.92l7.06-7.06l0.92,0.92L5.92,18z"/><path d="M18.71,8.04c0.39-0.39,0.39-1.02,0-1.41l-2.34-2.34C16.17,4.09,15.92,4,15.66,4c-0.25,0-0.51,0.1-0.7,0.29l-1.83,1.83 l3.75,3.75L18.71,8.04z"/></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/52.svg b/ckeditor/icons/delta/52.svg
new file mode 100644
index 0000000..0eb0389
--- /dev/null
+++ b/ckeditor/icons/delta/52.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" fill-rule="evenodd" height="24" width="24"/><g><rect fill-rule="evenodd" height="2" width="16" x="4" y="11"/></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/53.svg b/ckeditor/icons/delta/53.svg
new file mode 100644
index 0000000..4c1eb5e
--- /dev/null
+++ b/ckeditor/icons/delta/53.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><path d="M3.5,9H5v6H3.5v-2.5h-2V15H0V9h1.5v2h2V9z M17.5,9H13c-0.55,0-1,0.45-1,1v5h1.5v-4.5h1V14H16v-3.51h1V15h1.5v-5 C18.5,9.45,18.05,9,17.5,9z M11,9H6v1.5h1.75V15h1.5v-4.5H11V9z M24,15v-1.5h-2.5V9H20v6H24z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/54.svg b/ckeditor/icons/delta/54.svg
new file mode 100644
index 0000000..0a78e6c
--- /dev/null
+++ b/ckeditor/icons/delta/54.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M3 21h18v-2H3v2zM3 8v8l4-4-4-4zm8 9h10v-2H11v2zM3 3v2h18V3H3zm8 6h10V7H11v2zm0 4h10v-2H11v2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/55.svg b/ckeditor/icons/delta/55.svg
new file mode 100644
index 0000000..4b80b1c
--- /dev/null
+++ b/ckeditor/icons/delta/55.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M11 17h10v-2H11v2zm-8-5l4 4V8l-4 4zm0 9h18v-2H3v2zM3 3v2h18V3H3zm8 6h10V7H11v2zm0 4h10v-2H11v2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/56.svg b/ckeditor/icons/delta/56.svg
new file mode 100644
index 0000000..44267e9
--- /dev/null
+++ b/ckeditor/icons/delta/56.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M10 4v3h2.21l-3.42 8H6v3h8v-3h-2.21l3.42-8H18V4h-8z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/57.svg b/ckeditor/icons/delta/57.svg
new file mode 100644
index 0000000..0bf7b1b
--- /dev/null
+++ b/ckeditor/icons/delta/57.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M14.39 11L16 12.61V11zM17 7h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.27-.77 2.37-1.87 2.84l1.4 1.4C21.05 15.36 22 13.79 22 12c0-2.76-2.24-5-5-5zM2 4.27l3.11 3.11C3.29 8.12 2 9.91 2 12c0 2.76 2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1 0-1.59 1.21-2.9 2.76-3.07L8.73 11H8v2h2.73L13 15.27V17h1.73l4.01 4.01 1.41-1.41L3.41 2.86 2 4.27z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/58.svg b/ckeditor/icons/delta/58.svg
new file mode 100644
index 0000000..482f1fa
--- /dev/null
+++ b/ckeditor/icons/delta/58.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M17 7h-4v2h4c1.65 0 3 1.35 3 3s-1.35 3-3 3h-4v2h4c2.76 0 5-2.24 5-5s-2.24-5-5-5zm-6 8H7c-1.65 0-3-1.35-3-3s1.35-3 3-3h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-2zm-3-4h8v2H8z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/59.svg b/ckeditor/icons/delta/59.svg
new file mode 100644
index 0000000..349c148
--- /dev/null
+++ b/ckeditor/icons/delta/59.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M2 17h2v.5H3v1h1v.5H2v1h3v-4H2v1zm1-9h1V4H2v1h1v3zm-1 3h1.8L2 13.1v.9h3v-1H3.2L5 10.9V10H2v1zm5-6v2h14V5H7zm0 14h14v-2H7v2zm0-6h14v-2H7v2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/6.svg b/ckeditor/icons/delta/6.svg
new file mode 100644
index 0000000..46ecfcd
--- /dev/null
+++ b/ckeditor/icons/delta/6.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M22 3H7c-.69 0-1.23.35-1.59.88L0 12l5.41 8.11c.36.53.9.89 1.59.89h15c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H7.07L2.4 12l4.66-7H22v14zm-11.59-2L14 13.41 17.59 17 19 15.59 15.41 12 19 8.41 17.59 7 14 10.59 10.41 7 9 8.41 12.59 12 9 15.59z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/60.svg b/ckeditor/icons/delta/60.svg
new file mode 100644
index 0000000..21821a1
--- /dev/null
+++ b/ckeditor/icons/delta/60.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M4 10.5c-.83 0-1.5.67-1.5 1.5s.67 1.5 1.5 1.5 1.5-.67 1.5-1.5-.67-1.5-1.5-1.5zm0-6c-.83 0-1.5.67-1.5 1.5S3.17 7.5 4 7.5 5.5 6.83 5.5 6 4.83 4.5 4 4.5zm0 12c-.83 0-1.5.68-1.5 1.5s.68 1.5 1.5 1.5 1.5-.68 1.5-1.5-.67-1.5-1.5-1.5zM7 19h14v-2H7v2zm0-6h14v-2H7v2zm0-8v2h14V5H7z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/7.svg b/ckeditor/icons/delta/7.svg
new file mode 100644
index 0000000..396cb2a
--- /dev/null
+++ b/ckeditor/icons/delta/7.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0z" fill="none"/><path d="M12 6c3.79 0 7.17 2.13 8.82 5.5-.59 1.22-1.42 2.27-2.41 3.12l1.41 1.41c1.39-1.23 2.49-2.77 3.18-4.53C21.27 7.11 17 4 12 4c-1.27 0-2.49.2-3.64.57l1.65 1.65C10.66 6.09 11.32 6 12 6zm-1.07 1.14L13 9.21c.57.25 1.03.71 1.28 1.28l2.07 2.07c.08-.34.14-.7.14-1.07C16.5 9.01 14.48 7 12 7c-.37 0-.72.05-1.07.14zM2.01 3.87l2.68 2.68C3.06 7.83 1.77 9.53 1 11.5 2.73 15.89 7 19 12 19c1.52 0 2.98-.29 4.32-.82l3.42 3.42 1.41-1.41L3.42 2.45 2.01 3.87zm7.5 7.5l2.61 2.61c-.04.01-.08.02-.12.02-1.38 0-2.5-1.12-2.5-2.5 0-.05.01-.08.01-.13zm-3.4-3.4l1.75 1.75c-.23.55-.36 1.15-.36 1.78 0 2.48 2.02 4.5 4.5 4.5.63 0 1.23-.13 1.77-.36l.98.98c-.88.24-1.8.38-2.75.38-3.79 0-7.17-2.13-8.82-5.5.7-1.43 1.72-2.61 2.93-3.53z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/70.svg b/ckeditor/icons/delta/70.svg
new file mode 100644
index 0000000..0452166
--- /dev/null
+++ b/ckeditor/icons/delta/70.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M2 6H0v5h.01L0 20c0 1.1.9 2 2 2h18v-2H2V6zm5 9h14l-3.5-4.5-2.5 3.01L11.5 9zM22 4h-8l-2-2H6c-1.1 0-1.99.9-1.99 2L4 16c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 12H6V4h5.17l1.41 1.41.59.59H22v10z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/71.svg b/ckeditor/icons/delta/71.svg
new file mode 100644
index 0000000..df8d3d3
--- /dev/null
+++ b/ckeditor/icons/delta/71.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M15 8v8H5V8h10m1-2H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4V7c0-.55-.45-1-1-1z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/72.svg b/ckeditor/icons/delta/72.svg
new file mode 100644
index 0000000..f1cd967
--- /dev/null
+++ b/ckeditor/icons/delta/72.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><g><path d="M18,20H6v-3H4v3c0,1.1,0.9,2,2,2h12c1.1,0,2-0.9,2-2v-3h-2V20z"/><path d="M6,4h7v5h5v2h2V8l-6-6H6C4.9,2,4,2.9,4,4v7h2V4z"/><rect height="2" width="6" x="9" y="13"/><rect height="2" width="6" x="17" y="13"/><rect height="2" width="6" x="1" y="13"/></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/73.svg b/ckeditor/icons/delta/73.svg
new file mode 100644
index 0000000..bde3f9f
--- /dev/null
+++ b/ckeditor/icons/delta/73.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M20 8V5H6.39l3 3h1.83l-.55 1.28 2.09 2.1L14.21 8zM3.41 4.86L2 6.27l6.97 6.97L6.5 19h3l1.57-3.66L16.73 21l1.41-1.41z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/74.svg b/ckeditor/icons/delta/74.svg
new file mode 100644
index 0000000..fe46d70
--- /dev/null
+++ b/ckeditor/icons/delta/74.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M3,10h11v2H3V10z M3,8h11V6H3V8z M3,16h7v-2H3V16z M18.01,12.87l0.71-0.71c0.39-0.39,1.02-0.39,1.41,0l0.71,0.71 c0.39,0.39,0.39,1.02,0,1.41l-0.71,0.71L18.01,12.87z M17.3,13.58l-5.3,5.3V21h2.12l5.3-5.3L17.3,13.58z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/75.svg b/ckeditor/icons/delta/75.svg
new file mode 100644
index 0000000..e9a6269
--- /dev/null
+++ b/ckeditor/icons/delta/75.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><g/><g><rect height="2" width="8" x="3" y="2"/><polygon points="6,11 8,11 8,7 11,7 11,5 3,5 3,7 6,7"/><rect height="2" transform="matrix(0.7071 -0.7071 0.7071 0.7071 -7.0416 16.9999)" width="11" x="11.5" y="16"/><circle cx="14.5" cy="14.5" r="1.5"/><circle cx="19.5" cy="19.5" r="1.5"/><path d="M15.5,11c1.38,0,2.5-1.12,2.5-2.5V4h3V2h-4v4.51C16.58,6.19,16.07,6,15.5,6C14.12,6,13,7.12,13,8.5 C13,9.88,14.12,11,15.5,11z"/><path d="M9.74,15.96l-1.41,1.41l-0.71-0.71l0.35-0.35c0.98-0.98,0.98-2.56,0-3.54c-0.49-0.49-1.13-0.73-1.77-0.73 c-0.64,0-1.28,0.24-1.77,0.73c-0.98,0.98-0.98,2.56,0,3.54l0.35,0.35l-1.06,1.06c-0.98,0.98-0.98,2.56,0,3.54 C4.22,21.76,4.86,22,5.5,22s1.28-0.24,1.77-0.73l1.06-1.06l1.41,1.41l1.41-1.41l-1.41-1.41l1.41-1.41L9.74,15.96z M5.85,14.2 c0.12-0.12,0.26-0.15,0.35-0.15s0.23,0.03,0.35,0.15c0.19,0.2,0.19,0.51,0,0.71l-0.35,0.35L5.85,14.9 C5.66,14.71,5.66,14.39,5.85,14.2z M5.85,19.85C5.73,19.97,5.59,20,5.5,20s-0.23-0.03-0.35-0.15c-0.19-0.19-0.19-0.51,0-0.71 l1.06-1.06l0.71,0.71L5.85,19.85z"/></g></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/76.svg b/ckeditor/icons/delta/76.svg
new file mode 100644
index 0000000..a3d02e6
--- /dev/null
+++ b/ckeditor/icons/delta/76.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0z" fill="none"/><path d="M7.24 8.75c-.26-.48-.39-1.03-.39-1.67 0-.61.13-1.16.4-1.67.26-.5.63-.93 1.11-1.29.48-.35 1.05-.63 1.7-.83.66-.19 1.39-.29 2.18-.29.81 0 1.54.11 2.21.34.66.22 1.23.54 1.69.94.47.4.83.88 1.08 1.43s.38 1.15.38 1.81h-3.01c0-.31-.05-.59-.15-.85-.09-.27-.24-.49-.44-.68-.2-.19-.45-.33-.75-.44-.3-.1-.66-.16-1.06-.16-.39 0-.74.04-1.03.13s-.53.21-.72.36c-.19.16-.34.34-.44.55-.1.21-.15.43-.15.66 0 .48.25.88.74 1.21.38.25.77.48 1.41.7H7.39c-.05-.08-.11-.17-.15-.25zM21 12v-2H3v2h9.62c.18.07.4.14.55.2.37.17.66.34.87.51s.35.36.43.57c.07.2.11.43.11.69 0 .23-.05.45-.14.66-.09.2-.23.38-.42.53-.19.15-.42.26-.71.35-.29.08-.63.13-1.01.13-.43 0-.83-.04-1.18-.13s-.66-.23-.91-.42c-.25-.19-.45-.44-.59-.75s-.25-.76-.25-1.21H6.4c0 .55.08 1.13.24 1.58s.37.85.65 1.21c.28.35.6.66.98.92.37.26.78.48 1.22.65.44.17.9.3 1.38.39.48.08.96.13 1.44.13.8 0 1.53-.09 2.18-.28s1.21-.45 1.67-.79c.46-.34.82-.77 1.07-1.27s.38-1.07.38-1.71c0-.6-.1-1.14-.31-1.61-.05-.11-.11-.23-.17-.33H21V12z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/77.svg b/ckeditor/icons/delta/77.svg
new file mode 100644
index 0000000..d7679ec
--- /dev/null
+++ b/ckeditor/icons/delta/77.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/><path d="M22,18h-2v1h3v1h-4v-2c0-0.55,0.45-1,1-1h2v-1h-3v-1h3c0.55,0,1,0.45,1,1v1C23,17.55,22.55,18,22,18z M5.88,18h2.66 l3.4-5.42h0.12l3.4,5.42h2.66l-4.65-7.27L17.81,4h-2.68l-3.07,4.99h-0.12L8.85,4H6.19l4.32,6.73L5.88,18z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/78.svg b/ckeditor/icons/delta/78.svg
new file mode 100644
index 0000000..5cbf5cb
--- /dev/null
+++ b/ckeditor/icons/delta/78.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24" x="0" y="0"/><path d="M22,7h-2v1h3v1h-4V7c0-0.55,0.45-1,1-1h2V5h-3V4h3c0.55,0,1,0.45,1,1v1C23,6.55,22.55,7,22,7z M5.88,20h2.66l3.4-5.42h0.12 l3.4,5.42h2.66l-4.65-7.27L17.81,6h-2.68l-3.07,4.99h-0.12L8.85,6H6.19l4.32,6.73L5.88,20z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/79.svg b/ckeditor/icons/delta/79.svg
new file mode 100644
index 0000000..1e0ae83
--- /dev/null
+++ b/ckeditor/icons/delta/79.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M20 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h15c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 2v3H5V5h15zm-5 14h-5v-9h5v9zM5 10h3v9H5v-9zm12 9v-9h3v9h-3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/8.svg b/ckeditor/icons/delta/8.svg
new file mode 100644
index 0000000..4d5f44c
--- /dev/null
+++ b/ckeditor/icons/delta/8.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4.86 8.86l-3 3.87L9 13.14 6 17h12l-3.86-5.14z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/80.svg b/ckeditor/icons/delta/80.svg
new file mode 100644
index 0000000..17a5007
--- /dev/null
+++ b/ckeditor/icons/delta/80.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M3,5v14h18V5H3z M8.33,17H5V7h3.33V17z M13.67,17h-3.33V7h3.33V17z M19,17h-3.33V7H19V17z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/81.svg b/ckeditor/icons/delta/81.svg
new file mode 100644
index 0000000..82ce0b6
--- /dev/null
+++ b/ckeditor/icons/delta/81.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M19,3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h14c1.1,0,2-0.9,2-2V5C21,3.9,20.1,3,19,3z M19,5v3H5V5H19z M19,10v4H5v-4H19z M5,19v-3h14v3H5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/82.svg b/ckeditor/icons/delta/82.svg
new file mode 100644
index 0000000..6792d95
--- /dev/null
+++ b/ckeditor/icons/delta/82.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><path d="M6.41,21L5,19.59l4.83-4.83c0.75-0.75,1.17-1.77,1.17-2.83v-5.1L9.41,8.41L8,7l4-4l4,4l-1.41,1.41L13,6.83v5.1 c0,1.06,0.42,2.08,1.17,2.83L19,19.59L17.59,21L12,15.41L6.41,21z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/83.svg b/ckeditor/icons/delta/83.svg
new file mode 100644
index 0000000..483bd64
--- /dev/null
+++ b/ckeditor/icons/delta/83.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M22 9.24l-7.19-.62L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4l-3.76 2.27 1-4.28-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28L12 15.4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/84.svg b/ckeditor/icons/delta/84.svg
new file mode 100644
index 0000000..c81d1e9
--- /dev/null
+++ b/ckeditor/icons/delta/84.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><path d="M0 0h24v24H0V0z" fill="none"/><path d="M0 0h24v24H0V0z" fill="none"/></g><g><path d="M12 17.27 18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21 12 17.27z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/85.svg b/ckeditor/icons/delta/85.svg
new file mode 100644
index 0000000..e21445b
--- /dev/null
+++ b/ckeditor/icons/delta/85.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M22,7h-9v2h9V7z M22,15h-9v2h9V15z M5.54,11L2,7.46l1.41-1.41l2.12,2.12l4.24-4.24l1.41,1.41L5.54,11z M5.54,19L2,15.46 l1.41-1.41l2.12,2.12l4.24-4.24l1.41,1.41L5.54,19z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/86.svg b/ckeditor/icons/delta/86.svg
new file mode 100644
index 0000000..ca6106c
--- /dev/null
+++ b/ckeditor/icons/delta/86.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M12 17c3.31 0 6-2.69 6-6V3h-2.5v8c0 1.93-1.57 3.5-3.5 3.5S8.5 12.93 8.5 11V3H6v8c0 3.31 2.69 6 6 6zm-7 2v2h14v-2H5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/delta/9.svg b/ckeditor/icons/delta/9.svg
new file mode 100644
index 0000000..efc0c46
--- /dev/null
+++ b/ckeditor/icons/delta/9.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/></g><g><path d="M18,15v3H6v-3H4v3c0,1.1,0.9,2,2,2h12c1.1,0,2-0.9,2-2v-3H18z M17,11l-1.41-1.41L13,12.17V4h-2v8.17L8.41,9.59L7,11l5,5 L17,11z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/0.svg b/ckeditor/icons/desktop/0.svg
new file mode 100644
index 0000000..c9748ba
--- /dev/null
+++ b/ckeditor/icons/desktop/0.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M381 789 180 588l25-24 176 176 375-376 25 25-400 400Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/1.svg b/ckeditor/icons/desktop/1.svg
new file mode 100644
index 0000000..b2a993a
--- /dev/null
+++ b/ckeditor/icons/desktop/1.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M480 686 266 472l26-26 188 189 189-189 25 26-214 214Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/10.svg b/ckeditor/icons/desktop/10.svg
new file mode 100644
index 0000000..d708e61
--- /dev/null
+++ b/ckeditor/icons/desktop/10.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M463 962V787l-89 89-25-25 131-131 131 131-25 25-88-91v177h-35ZM177 627v-35h607v35H177Zm0-112v-35h607v35H177Zm303-128L349 256l25-25 88 89V145h35v175l89-89 25 25-131 131Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/11.svg b/ckeditor/icons/desktop/11.svg
new file mode 100644
index 0000000..3da2d66
--- /dev/null
+++ b/ckeditor/icons/desktop/11.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M463 919V470L334 599l-25-24 172-172 171 171-25 25-129-129v449h-35ZM177 267v-35h607v35H177Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/12.svg b/ckeditor/icons/desktop/12.svg
new file mode 100644
index 0000000..c0c678b
--- /dev/null
+++ b/ckeditor/icons/desktop/12.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M136 920v-35h688v35H136Zm0-164v-35h444v35H136Zm0-163v-35h688v35H136Zm0-163v-35h444v35H136Zm0-163v-35h688v35H136Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/13.svg b/ckeditor/icons/desktop/13.svg
new file mode 100644
index 0000000..43b8be4
--- /dev/null
+++ b/ckeditor/icons/desktop/13.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M136 920v-35h688v35H136Zm162-164v-35h364v35H298ZM136 593v-35h688v35H136Zm162-163v-35h364v35H298ZM136 267v-35h688v35H136Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/14.svg b/ckeditor/icons/desktop/14.svg
new file mode 100644
index 0000000..f479b25
--- /dev/null
+++ b/ckeditor/icons/desktop/14.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M136 920v-35h688v35H136Zm245-164v-35h443v35H381ZM136 593v-35h688v35H136Zm245-163v-35h443v35H381ZM136 267v-35h688v35H136Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/15.svg b/ckeditor/icons/desktop/15.svg
new file mode 100644
index 0000000..4a8824f
--- /dev/null
+++ b/ckeditor/icons/desktop/15.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M136 920v-35h688v35H136Zm0-164v-35h688v35H136Zm0-163v-35h688v35H136Zm0-163v-35h688v35H136Zm0-163v-35h688v35H136Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/16.svg b/ckeditor/icons/desktop/16.svg
new file mode 100644
index 0000000..ac90c5b
--- /dev/null
+++ b/ckeditor/icons/desktop/16.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M140 916v-35h681v35H140Zm0-159V393h364v364H140Zm0-487v-35h681v35H140Zm35 452h294V428H175v294Zm451 32v-35h195v35H626Zm0-161v-35h195v35H626Zm0-162v-35h195v35H626Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/17.svg b/ckeditor/icons/desktop/17.svg
new file mode 100644
index 0000000..d9a9fad
--- /dev/null
+++ b/ckeditor/icons/desktop/17.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M140 916v-35h681v35H140Zm0-162v-35h195v35H140Zm0-161v-35h195v35H140Zm0-162v-35h195v35H140Zm0-161v-35h681v35H140Zm317 487V393h364v364H457Zm35-35h294V428H492v294Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/18.svg b/ckeditor/icons/desktop/18.svg
new file mode 100644
index 0000000..d9a9fad
--- /dev/null
+++ b/ckeditor/icons/desktop/18.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M140 916v-35h681v35H140Zm0-162v-35h195v35H140Zm0-161v-35h195v35H140Zm0-162v-35h195v35H140Zm0-161v-35h681v35H140Zm317 487V393h364v364H457Zm35-35h294V428H492v294Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/19.svg b/ckeditor/icons/desktop/19.svg
new file mode 100644
index 0000000..bf91dfe
--- /dev/null
+++ b/ckeditor/icons/desktop/19.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M223 737q-27.5 0-47.25-19.75T156 670V482q0-27.5 19.75-47.25T223 415h514q27.5 0 47.25 19.75T804 482v188q0 27.5-19.75 47.25T737 737H223Zm0-35h514q12 0 22-10t10-22V482q0-12-10-22t-22-10H223q-12 0-22 10t-10 22v188q0 12 10 22t22 10Zm-67-390v-35h648v35H156Zm0 563v-35h648v35H156Zm35-425v252-252Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/2.svg b/ckeditor/icons/desktop/2.svg
new file mode 100644
index 0000000..b7f896d
--- /dev/null
+++ b/ckeditor/icons/desktop/2.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m252 830-25-26 228-228-228-229 25-26 229 229 227-229 25 26-227 229 227 228-25 26-227-229-229 229Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/20.svg b/ckeditor/icons/desktop/20.svg
new file mode 100644
index 0000000..ac90c5b
--- /dev/null
+++ b/ckeditor/icons/desktop/20.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M140 916v-35h681v35H140Zm0-159V393h364v364H140Zm0-487v-35h681v35H140Zm35 452h294V428H175v294Zm451 32v-35h195v35H626Zm0-161v-35h195v35H626Zm0-162v-35h195v35H626Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/21.svg b/ckeditor/icons/desktop/21.svg
new file mode 100644
index 0000000..ac90c5b
--- /dev/null
+++ b/ckeditor/icons/desktop/21.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M140 916v-35h681v35H140Zm0-159V393h364v364H140Zm0-487v-35h681v35H140Zm35 452h294V428H175v294Zm451 32v-35h195v35H626Zm0-161v-35h195v35H626Zm0-162v-35h195v35H626Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/22.svg b/ckeditor/icons/desktop/22.svg
new file mode 100644
index 0000000..d9a9fad
--- /dev/null
+++ b/ckeditor/icons/desktop/22.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M140 916v-35h681v35H140Zm0-162v-35h195v35H140Zm0-161v-35h195v35H140Zm0-162v-35h195v35H140Zm0-161v-35h681v35H140Zm317 487V393h364v364H457Zm35-35h294V428H492v294Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/23.svg b/ckeditor/icons/desktop/23.svg
new file mode 100644
index 0000000..cd1b8ff
--- /dev/null
+++ b/ckeditor/icons/desktop/23.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M183 859q-27.5 0-47.25-19.75T116 792V360q0-27.5 19.75-47.25T183 293h594q27.5 0 47.25 19.75T844 360v432q0 27.5-19.75 47.25T777 859H183Zm0-35h594q12 0 22-10t10-22V360q0-12-10-22t-22-10H183q-12 0-22 10t-10 22v432q0 12 10 22t22 10Zm-32 0V328v496Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/24.svg b/ckeditor/icons/desktop/24.svg
new file mode 100644
index 0000000..9375e45
--- /dev/null
+++ b/ckeditor/icons/desktop/24.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M810 451v-92q0-12-10-22t-22-10h-93v-35h93q27.5 0 47.25 19.75T845 359v92h-35Zm-694 0v-92q0-27.5 19.75-47.25T183 292h92v35h-92q-12 0-22 10t-10 22v92h-35Zm569 408v-35h93q12 0 22-10t10-22v-92h35v92q0 27.5-19.75 47.25T778 859h-93Zm-502 0q-27.5 0-47.25-19.75T116 792v-92h35v92q0 12 10 22t22 10h92v35h-92Zm99-166V458h397v235H282Zm35-35h327V493H317v165Zm0 0V493v165Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/25.svg b/ckeditor/icons/desktop/25.svg
new file mode 100644
index 0000000..9375e45
--- /dev/null
+++ b/ckeditor/icons/desktop/25.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M810 451v-92q0-12-10-22t-22-10h-93v-35h93q27.5 0 47.25 19.75T845 359v92h-35Zm-694 0v-92q0-27.5 19.75-47.25T183 292h92v35h-92q-12 0-22 10t-10 22v92h-35Zm569 408v-35h93q12 0 22-10t10-22v-92h35v92q0 27.5-19.75 47.25T778 859h-93Zm-502 0q-27.5 0-47.25-19.75T116 792v-92h35v92q0 12 10 22t22 10h92v35h-92Zm99-166V458h397v235H282Zm35-35h327V493H317v165Zm0 0V493v165Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/26.svg b/ckeditor/icons/desktop/26.svg
new file mode 100644
index 0000000..9375e45
--- /dev/null
+++ b/ckeditor/icons/desktop/26.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M810 451v-92q0-12-10-22t-22-10h-93v-35h93q27.5 0 47.25 19.75T845 359v92h-35Zm-694 0v-92q0-27.5 19.75-47.25T183 292h92v35h-92q-12 0-22 10t-10 22v92h-35Zm569 408v-35h93q12 0 22-10t10-22v-92h35v92q0 27.5-19.75 47.25T778 859h-93Zm-502 0q-27.5 0-47.25-19.75T116 792v-92h35v92q0 12 10 22t22 10h92v35h-92Zm99-166V458h397v235H282Zm35-35h327V493H317v165Zm0 0V493v165Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/27.svg b/ckeditor/icons/desktop/27.svg
new file mode 100644
index 0000000..e6b8a39
--- /dev/null
+++ b/ckeditor/icons/desktop/27.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m311 905 64-63h460v63H311Zm-150-35h44l438-438-45-45-437 439v44Zm547-454-94-95 42-42q10-10 25-10t26 11l44 45q10 10 9.5 24.5T749 375l-41 41Zm-15 14L219 905h-93v-94l474-474 93 93Zm-72-21-23-22 45 45-22-23Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/28.svg b/ckeditor/icons/desktop/28.svg
new file mode 100644
index 0000000..7ea2030
--- /dev/null
+++ b/ckeditor/icons/desktop/28.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M430 846V604h-16q-61.755-2-103.378-45.673Q269 514.654 269 452.827 269 389 312.867 345 356.735 301 421 301h228v35h-83v510h-35V336h-66v510h-35Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/29.svg b/ckeditor/icons/desktop/29.svg
new file mode 100644
index 0000000..237f26d
--- /dev/null
+++ b/ckeditor/icons/desktop/29.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M575 561h171V390H575v171Zm-360 0h171V390H215v171Zm456 195 71-160H540V355h241v238l-72 163h-38Zm-360 0 71-160H180V355h241v238l-72 163h-38Zm-11-280Zm360 0Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/30.svg b/ckeditor/icons/desktop/30.svg
new file mode 100644
index 0000000..0aad51e
--- /dev/null
+++ b/ckeditor/icons/desktop/30.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M479.832 845q-10.382 0-17.607-7.393T455 819.832q0-10.382 7.393-18.107T480.168 794q10.382 0 17.607 7.703Q505 809.405 505 820.221q0 10.404-7.393 17.591Q490.214 845 479.832 845Zm0-244q-10.382 0-17.607-7.393T455 575.832q0-10.382 7.393-17.607T480.168 551q10.382 0 17.607 7.393T505 576.168q0 10.382-7.393 17.607T479.832 601Zm0-243q-10.382 0-17.607-7.703Q455 342.595 455 331.779q0-10.404 7.393-17.591Q469.786 307 480.168 307q10.382 0 17.607 7.393T505 332.168q0 10.382-7.393 18.107T479.832 358Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/31.svg b/ckeditor/icons/desktop/31.svg
new file mode 100644
index 0000000..24064de
--- /dev/null
+++ b/ckeditor/icons/desktop/31.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M325 821V331h161q57 0 95 37.5t38 86.5q0 27-16.5 59.5T541 564v5q55 12 74.5 50.5T635 689q0 42-35.5 87T493 821H325Zm17-13h146q35 0 81.5-27.5T616 690q0-62-46-89t-80-27H342v234Zm0-246h141q42 0 80-30t38-79q0-46-36.5-78T482 343H342v219Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/32.svg b/ckeditor/icons/desktop/32.svg
new file mode 100644
index 0000000..7ea2030
--- /dev/null
+++ b/ckeditor/icons/desktop/32.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M430 846V604h-16q-61.755-2-103.378-45.673Q269 514.654 269 452.827 269 389 312.867 345 356.735 301 421 301h228v35h-83v510h-35V336h-66v510h-35Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/33.svg b/ckeditor/icons/desktop/33.svg
new file mode 100644
index 0000000..0de6e9b
--- /dev/null
+++ b/ckeditor/icons/desktop/33.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M463 837V593H219v-35h244V314h35v244h244v35H498v244h-35Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/34.svg b/ckeditor/icons/desktop/34.svg
new file mode 100644
index 0000000..0f58a9f
--- /dev/null
+++ b/ckeditor/icons/desktop/34.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M326 853V324H123v-25h431v25H351v529h-25Zm363 0V527H566v-25h271v25H714v326h-25Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/35.svg b/ckeditor/icons/desktop/35.svg
new file mode 100644
index 0000000..a3d872f
--- /dev/null
+++ b/ckeditor/icons/desktop/35.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m437 769 202-201-23-23-178 179-94-94-23 23 116 116ZM264 940q-27.5 0-47.25-19.75T197 873V279q0-27.5 19.75-47.25T264 212h322l177 176v485q0 27.5-19.75 47.25T696 940H264Zm305-535V247H264q-12 0-22 10t-10 22v594q0 12 10 22t22 10h432q12 0 22-10t10-22V405H569ZM232 247v158-158 658-658Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/36.svg b/ckeditor/icons/desktop/36.svg
new file mode 100644
index 0000000..bde4753
--- /dev/null
+++ b/ckeditor/icons/desktop/36.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M561 789 347 575l214-215 25 25-189 190 189 189-25 25Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/37.svg b/ckeditor/icons/desktop/37.svg
new file mode 100644
index 0000000..6076d93
--- /dev/null
+++ b/ckeditor/icons/desktop/37.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m376 789-25-25 189-189-189-190 25-25 214 215-214 214Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/38.svg b/ckeditor/icons/desktop/38.svg
new file mode 100644
index 0000000..bfb4ea1
--- /dev/null
+++ b/ckeditor/icons/desktop/38.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M191 901q-13.05 0-24.025-10.975Q156 879.05 156 866h35v35Zm-35-118v-82h35v82h-35Zm0-166v-82h35v82h-35Zm0-165v-82h35v82h-35Zm0-165q0-13.05 10.975-24.025Q177.95 252 191 252v35h-35Zm170 444V422h309v309H326Zm-52 170v-35h82v35h-82Zm0-614v-35h82v35h-82Zm87 409h239V457H361v239Zm79 205v-35h82v35h-82Zm0-614v-35h82v35h-82Zm165 614v-35h82v35h-82Zm0-614v-35h82v35h-82Zm165 614v-35h35q0 14-10.975 24.5T770 901Zm0-108v-82h35v82h-35Zm0-176v-82h35v82h-35Zm0-175v-82h35v82h-35Zm0-155v-35q13.05 0 24.025 10.975Q805 273.95 805 287h-35Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/39.svg b/ckeditor/icons/desktop/39.svg
new file mode 100644
index 0000000..a4d3dbc
--- /dev/null
+++ b/ckeditor/icons/desktop/39.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m153 892 327-588 327 588H153Zm60-35h250V407L213 857Zm285 0h249L498 407v450Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/4.svg b/ckeditor/icons/desktop/4.svg
new file mode 100644
index 0000000..c9748ba
--- /dev/null
+++ b/ckeditor/icons/desktop/4.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M381 789 180 588l25-24 176 176 375-376 25 25-400 400Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/40.svg b/ckeditor/icons/desktop/40.svg
new file mode 100644
index 0000000..28a20eb
--- /dev/null
+++ b/ckeditor/icons/desktop/40.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M294 839v-35h269q74.019 0 127.51-47.5Q744 709 744 636q0-72-53.49-119.5Q637.019 469 563 469H248l128 128-25 24-170-170 170-170 25 25-128 128h314q87.712 0 152.356 58.709Q779 551.418 779 636q0 85.582-64.728 144.291T561.715 839H294Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/41.svg b/ckeditor/icons/desktop/41.svg
new file mode 100644
index 0000000..cc4e25c
--- /dev/null
+++ b/ckeditor/icons/desktop/41.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M398.285 839q-87.829 0-152.557-58.709T181 636q0-84.582 64.644-143.291T398 434h314L584 306l25-25 170 170-170 170-25-24 128-128H398q-75.019 0-128.51 47.5Q216 564 216 636q0 73 53.49 120.5Q322.981 804 398 804h268v35H398.285Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/42.svg b/ckeditor/icons/desktop/42.svg
new file mode 100644
index 0000000..34f1882
--- /dev/null
+++ b/ckeditor/icons/desktop/42.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M318 789 104 574l216-215 24 26-189 189 189 189-26 26Zm323 1-24-26 190-190-189-190 24-24 215 214-216 216Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/43.svg b/ckeditor/icons/desktop/43.svg
new file mode 100644
index 0000000..ef6d384
--- /dev/null
+++ b/ckeditor/icons/desktop/43.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m382 692 24-23-93-93 91-92-24-23-114 115 116 116Zm197 0 115-116-115-116-24 23 93 93-93 93 24 23ZM226 897q-27.775 0-47.387-19.612Q159 857.775 159 830V322q0-27.775 19.613-47.388Q198.225 255 226 255h508q27.775 0 47.388 19.612Q801 294.225 801 322v508q0 27.775-19.612 47.388Q761.775 897 734 897H226Zm0-35h508q12 0 22-10t10-22V322q0-12-10-22t-22-10H226q-12 0-22 10t-10 22v508q0 12 10 22t22 10Zm-32-572v572-572Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/44.svg b/ckeditor/icons/desktop/44.svg
new file mode 100644
index 0000000..85051de
--- /dev/null
+++ b/ckeditor/icons/desktop/44.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M100 316V155h161v35H135v126h-35Zm726 0V190H700v-35h161v161h-35ZM100 996V835h35v126h126v35H100Zm600 0v-35h126V835h35v161H700ZM255 809q0 12 10 22t22 10h387q12 0 22-10t10-22V342q0-12-10-22t-22-10H287q-12 0-22 10t-10 22v467Zm32 67q-28.138 0-47.569-19.431T220 809V342q0-27.5 19.431-47.25T287 275h387q27.5 0 47.25 19.75T741 342v467q0 28.138-19.75 47.569T674 876H287Zm98-405h190v-30H385v30Zm0 120h190v-30H385v30Zm0 120h190v-30H385v30Zm-130 98V310v531-32Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/45.svg b/ckeditor/icons/desktop/45.svg
new file mode 100644
index 0000000..1416700
--- /dev/null
+++ b/ckeditor/icons/desktop/45.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M204 501q13-86 83-142.5T443 302q88 0 136.5 43.5T651 424V288h35v213H474v-35h156q-18-45-65-87t-122-42q-75 0-132 46.5T239 501h-35Zm591 422L601 729q-35 29-75 44t-83 15q-62 0-120-32t-88-90v122h-35V589h199v35H255q21 58 73 93.5T443 753q74 0 130.5-46.5T646 589h36q-6 36-20 62t-36 52l194 195-25 25Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/46.svg b/ckeditor/icons/desktop/46.svg
new file mode 100644
index 0000000..e41ca5f
--- /dev/null
+++ b/ckeditor/icons/desktop/46.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M215 635h325V392H215v243Zm-29 221q-27.5 0-47.25-19.75T119 789V363q0-27.5 19.75-47.25T186 296h588q27.5 0 47.25 19.75T841 363v426q0 27.5-19.75 47.25T774 856H186Zm0-35h588q12 0 22-10t10-22V363q0-12-10-22t-22-10H186q-12 0-22 10t-10 22v426q0 12 10 22t22 10Zm-32 0V331v490Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/47.svg b/ckeditor/icons/desktop/47.svg
new file mode 100644
index 0000000..9f11cf4
--- /dev/null
+++ b/ckeditor/icons/desktop/47.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M225 866v-45h511v45H225Zm254.726-135q-85.146 0-134.936-49Q295 633 295 549V270h45v277q0 66 37.695 102.5T480.122 686q64.732 0 102.805-36.5Q621 613 621 547V270h45v279q0 84-50.564 133-50.563 49-135.71 49Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/48.svg b/ckeditor/icons/desktop/48.svg
new file mode 100644
index 0000000..f970228
--- /dev/null
+++ b/ckeditor/icons/desktop/48.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M476 940q-75 0-140.5-29t-115-78q-49.5-49-78-115.5T114 576q0-76 29-142.5T223 318q51-49 119-77.5T488 212q71 0 135.5 23.5t114 66Q787 344 817 402.5T847 529q0 93-54.5 149T643 734h-58q-31 0-54 22t-23 54q0 31 12.5 42t12.5 32q0 21-16.5 38.5T476 940Zm4-364Zm-228 16q14 0 25.5-11t11.5-26q0-15-11.5-26T252 518q-15 0-26 11t-11 26q0 15 11 26t26 11Zm123-165q14 0 25.5-11t11.5-26q0-15-11.5-26T375 353q-15 0-26 11t-11 26q0 15 11 26t26 11Zm206 0q14 0 25.5-11t11.5-26q0-15-11.5-26T581 353q-15 0-26 11t-11 26q0 15 11 26t26 11Zm125 165q14 0 25.5-11t11.5-26q0-15-11.5-26T706 518q-15 0-26 11t-11 26q0 15 11 26t26 11ZM474 905q11 0 17.5-4t6.5-14q0-14-15-26t-15-49q0-47 29.5-80t73.5-33h72q78 0 123.5-45.5T812 529q0-128-98.5-205T488 247q-144 0-241.5 95.5T149 576q0 137 94.5 233T474 905Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/49.svg b/ckeditor/icons/desktop/49.svg
new file mode 100644
index 0000000..438be86
--- /dev/null
+++ b/ckeditor/icons/desktop/49.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M609 853V324H406v-25h431v25H634v529h-25Zm-363 0V527H123v-25h271v25H271v326h-25Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/5.svg b/ckeditor/icons/desktop/5.svg
new file mode 100644
index 0000000..81a3e9c
--- /dev/null
+++ b/ckeditor/icons/desktop/5.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m410 940-16-115q-20-6-46.309-20.227Q321.382 790.545 304 774l-106 47-70-127 91-69.165q-1-10.761-2.5-24.135-1.5-13.374-1.5-25.7 0-10.457 1.5-23.025Q218 539.407 219 524l-91-69 70-123 103 45q20-16 45-30.5t47-21.5l17-114h141l15 115q25 9 47 22t42 29l109-45 69 123-97 72q3 14 4.5 26.5T742 576q0 9-2 21.5t-3 27.5l94 69-70 127-108-48q-21 18-43 31.5T567 824l-16 116H410Zm66-266q41.8 0 70.4-28.559 28.6-28.558 28.6-70.3 0-41.741-28.6-70.441Q517.8 476 476 476q-41 0-70 28.559-29 28.558-29 70.3 0 41.741 29 70.441 29 28.7 70 28.7Zm-.618-35Q449 639 430.5 620.174 412 601.348 412 574.882q0-26.465 18.706-45.174 18.706-18.708 45-18.708Q503 511 521.5 529.826q18.5 18.826 18.5 45.292 0 26.465-18.618 45.174-18.617 18.708-46 18.708ZM480 575Zm-41 330h81.212l15.038-112q30.75-8 55.663-22.085Q615.827 756.83 644.182 731L745 775l40-69-89-67q4-18.636 6.5-33.964t2.5-30.182q0-16.854-2.5-30.354T697 513l90-68-39-69-105 43q-18-20-50.073-39.795Q560.853 359.41 533.598 356L522 246h-84l-11 109q-34 7-60.5 22T314 418l-100.717-42L172 445l89 66q-5 15-7 31t-2 33.485q0 15.515 2 31.015t6 32.5l-88 67 41 69 101-43q26 27 52.5 41t59.5 22l13 110Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/50.svg b/ckeditor/icons/desktop/50.svg
new file mode 100644
index 0000000..e6b8a39
--- /dev/null
+++ b/ckeditor/icons/desktop/50.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m311 905 64-63h460v63H311Zm-150-35h44l438-438-45-45-437 439v44Zm547-454-94-95 42-42q10-10 25-10t26 11l44 45q10 10 9.5 24.5T749 375l-41 41Zm-15 14L219 905h-93v-94l474-474 93 93Zm-72-21-23-22 45 45-22-23Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/51.svg b/ckeditor/icons/desktop/51.svg
new file mode 100644
index 0000000..e6b8a39
--- /dev/null
+++ b/ckeditor/icons/desktop/51.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m311 905 64-63h460v63H311Zm-150-35h44l438-438-45-45-437 439v44Zm547-454-94-95 42-42q10-10 25-10t26 11l44 45q10 10 9.5 24.5T749 375l-41 41Zm-15 14L219 905h-93v-94l474-474 93 93Zm-72-21-23-22 45 45-22-23Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/52.svg b/ckeditor/icons/desktop/52.svg
new file mode 100644
index 0000000..6b291d3
--- /dev/null
+++ b/ckeditor/icons/desktop/52.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M197 593v-35h566v35H197Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/53.svg b/ckeditor/icons/desktop/53.svg
new file mode 100644
index 0000000..681c61e
--- /dev/null
+++ b/ckeditor/icons/desktop/53.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M-1 685V467h32v84h115v-84h32v218h-32V583H31v102H-1Zm316 0V500h-81v-33h194v33h-81v185h-32Zm166 0V496.373q0-12.823 8-21.098Q497 467 510.888 467h190.224Q715 467 723 475.412q8 8.413 8 20.588v189h-33V500h-81v144h-22V500h-81v185h-33Zm331 0V467h33v185h116v33H812Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/54.svg b/ckeditor/icons/desktop/54.svg
new file mode 100644
index 0000000..bf1e3db
--- /dev/null
+++ b/ckeditor/icons/desktop/54.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M136 920v-35h688v35H136Zm0-237V468l108 107-108 108Zm0-416v-35h688v35H136Zm328 489v-35h360v35H464Zm0-163v-35h360v35H464Zm0-163v-35h360v35H464Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/55.svg b/ckeditor/icons/desktop/55.svg
new file mode 100644
index 0000000..3974743
--- /dev/null
+++ b/ckeditor/icons/desktop/55.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M138 920v-35h686v35H138Zm327-164v-35h359v35H465Zm-209-73L147 575l109-107v215Zm209-90v-35h359v35H465Zm0-163v-35h359v35H465ZM138 267v-35h686v35H138Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/56.svg b/ckeditor/icons/desktop/56.svg
new file mode 100644
index 0000000..85d004c
--- /dev/null
+++ b/ckeditor/icons/desktop/56.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M242 821v-35h135l145-422H384v-35h319v35H562L418 786h143v35H242Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/57.svg b/ckeditor/icons/desktop/57.svg
new file mode 100644
index 0000000..c7bb900
--- /dev/null
+++ b/ckeditor/icons/desktop/57.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m739 730-29-27q44-11 72-46t28-80q0-54-38-92t-92-38H535v-35h145q68.395 0 116.698 48.302Q845 508.605 845 577q0 50.608-30.5 91.304Q784 709 739 730ZM599 594l-35-35h55v35h-20Zm230 383L81 228l25-24 748 748-25 25ZM429 741H280q-68.395 0-116.697-48.302Q115 644.395 115 576q0-64 43.5-111T266 414h26l32 32h-44q-54 0-92 38t-38 92q0 54 38 92t92 38h149v35Zm-87-148v-35h93l34 35H342Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/58.svg b/ckeditor/icons/desktop/58.svg
new file mode 100644
index 0000000..3728313
--- /dev/null
+++ b/ckeditor/icons/desktop/58.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M427 741H278q-68.475 0-116.737-48.289Q113 644.421 113 575.908t48.262-116.71Q209.525 411 278 411h149v35H278q-54.333 0-92.167 37.765-37.833 37.764-37.833 92Q148 630 185.833 668q37.834 38 92.167 38h149v35Zm-87-148v-35h281v35H340Zm193 148v-35h149q54.333 0 92.167-37.765 37.833-37.764 37.833-92Q812 522 774.167 484 736.333 446 682 446H533v-35h149q68.475 0 116.737 48.289Q847 507.579 847 576.092t-48.263 116.71Q750.475 741 682 741H533Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/59.svg b/ckeditor/icons/desktop/59.svg
new file mode 100644
index 0000000..058e38b
--- /dev/null
+++ b/ckeditor/icons/desktop/59.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M177 940v-33h100v-60h-60v-28h60v-59H177v-33h106.838q10.487 0 18.325 7.838Q310 742.675 310 753v58q0 11.05-7.837 18.525Q294.325 837 284 837q10.325 0 18.163 7.763Q310 852.525 310 864v49q0 11.475-7.837 19.237Q294.325 940 283.838 940H177Zm0-258v-94q0-10.325 7.763-18.162Q192.525 562 204 562h73v-60H177v-33h106.838q10.487 0 18.325 7.762Q310 484.525 310 496v67q0 11.475-7.837 19.237Q294.325 590 284 590h-74v59h100v33H177Zm60-258V239h-60v-28h93v213h-33Zm168 411v-35h399v35H405Zm0-243v-35h399v35H405Zm0-243v-35h399v35H405Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/6.svg b/ckeditor/icons/desktop/6.svg
new file mode 100644
index 0000000..195c34e
--- /dev/null
+++ b/ckeditor/icons/desktop/6.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m437 708 107-107 107 107 26-25-108-107 107-107-25-25-107 107-107-107-25 25 107 107-107 107 25 25ZM161 576l144-204q12-19 31.385-29 19.384-10 42.681-10H733q26.75 0 46.875 19.625T800 400v352q0 27.75-20.125 47.375T733 819H379q-23.121 0-42.227-10.971Q317.667 797.059 305 778L161 576Zm43 0 130.568 182q8 11 21.5 18.5t28.5 7.5H733q12 0 22-10t10-22V400q0-12-10-22t-22-10H384q-15 0-28.5 7.5T334 394L204 576Zm561 0V368v416-208Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/60.svg b/ckeditor/icons/desktop/60.svg
new file mode 100644
index 0000000..851d2d9
--- /dev/null
+++ b/ckeditor/icons/desktop/60.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M400 840v-35h404v35H400Zm0-247v-35h404v35H400Zm0-246v-35h404v35H400ZM207.473 873q-21.086 0-36.279-15.19Q156 842.62 156 821.385q0-19.947 15.19-35.166Q186.38 771 207.615 771q19.947 0 35.166 15.809Q258 802.618 258 823.115q0 19.672-15.133 34.779Q227.734 873 207.473 873Zm0-247q-21.086 0-36.279-15.371Q156 595.257 156 574.885q0-19.085 15.369-34.485 15.368-15.4 36.95-15.4 19.469 0 34.575 15.515Q258 556.03 258 575.615T242.867 610.6Q227.734 626 207.473 626Zm-1.088-246q-19.585 0-34.985-15.371-15.4-15.372-15.4-35.744 0-19.085 15.371-34.485 15.372-15.4 36.244-15.4 19.585 0 34.985 15.515 15.4 15.515 15.4 35.1T242.547 364.6Q227.095 380 206.385 380Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/7.svg b/ckeditor/icons/desktop/7.svg
new file mode 100644
index 0000000..763c6d4
--- /dev/null
+++ b/ckeditor/icons/desktop/7.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m616 606-28-29q12-64-33.663-102.5T459 448l-29-28q8-3 21.5-6t28.816-3Q541 411 583 453t42 102.684q0 15.316-2.5 28.96T616 606Zm128 125-26-24q41-31 73.5-69.016 32.5-38.017 52.5-82.4Q793 451 696.129 389.5 599.258 328 482.647 328q-32.649 0-66.311 5.5Q382.674 339 357 347l-27-28q32-12 72.5-19t79.889-7Q609 293 719.5 364.5 830 436 882 556q-22 51-56.5 94T744 731Zm55 213L641 786q-24 13-66.651 23-42.652 10-94.349 10-130 0-239.5-71.5T78 556q23-54 63-101.5t87-82.77L110 255l25-25 688 688-24 26ZM253 398q-36 26-76.5 69T116 556q50.578 105.082 148.289 166.541Q362 784 482 784q40 0 80-8t53-16l-72-73q-9 5-28 9.5t-35 4.5q-61 0-103-42t-42-103q0-14.065 4.5-32.532Q344 505 349 493l-96-95Zm285 132Zm-103 52Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/70.svg b/ckeditor/icons/desktop/70.svg
new file mode 100644
index 0000000..57a8b6a
--- /dev/null
+++ b/ckeditor/icons/desktop/70.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M317 833V666l135 83-135 84Zm205-370q-40 0-68-27.865t-28-67.841q0-39.059 28-67.676Q482 271 522 271h31v22h-31q-31.917 0-52.958 21.194Q448 335.387 448 367.235 448 400 469.125 420.5T522 441h31v22h-31Zm129 0v-22h31q31.917 0 52.958-20.735 21.042-20.736 21.042-53Q756 335 734.875 314T682 293h-31v-22h31q40 0 68 28.323 28 28.324 28 67.883t-28 67.676Q722 463 682 463h-31Zm-110-85v-22h122v22H541Zm75 234v-41h192q14 0 23-9t9-23V253q0-14-9-23t-23-9H393q-14 0-23 9t-9 23v288h-35V253q0-26.5 19.75-46.75T393 186h415q26.5 0 46.75 20.25T875 253v292q0 27.5-20.25 47.25T808 612H616ZM153 965q-27.5 0-47.25-19.75T86 898V600q0-26.5 19.75-46.75T153 533h415q26.5 0 46.75 20.25T635 600v298q0 27.5-20.25 47.25T568 965H153Zm0-35h415q14 0 23-9t9-23V600q0-14-9-23t-23-9H153q-14 0-23 9t-9 23v298q0 14 9 23t23 9Zm447-534ZM360 749Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/71.svg b/ckeditor/icons/desktop/71.svg
new file mode 100644
index 0000000..5ecb955
--- /dev/null
+++ b/ckeditor/icons/desktop/71.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m176 293 58 120h125l-59-120h84l58 120h125l-59-120h83l59 120h125l-60-120h62q27.5 0 47.25 19.75T844 360v432q0 27.5-19.75 47.25T777 859H183q-27.5 0-47.25-19.75T116 792V360q0-27.775 16.613-45.388Q149.225 297 176 293Zm-25 155v344q0 14 9 23t23 9h594q14 0 23-9t9-23V448H151Zm0 0v376-376Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/72.svg b/ckeditor/icons/desktop/72.svg
new file mode 100644
index 0000000..c1fc7d7
--- /dev/null
+++ b/ckeditor/icons/desktop/72.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M264 940q-27.5 0-47.25-19.75T197 873V747h35v126q0 14 9 23t23 9h432q14 0 23-9t9-23V747h35v126q0 27.5-19.75 47.25T696 940H264Zm-67-376V279q0-27.5 19.75-47.25T264 212h323l176 176v176h-35V405H569V247H264q-14 0-23 9t-9 23v285h-35Zm168 109v-35h231v35H365Zm305 0v-35h227v35H670Zm-606 0v-35h227v35H64Zm416-109Zm0 183Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/73.svg b/ckeditor/icons/desktop/73.svg
new file mode 100644
index 0000000..bf08b02
--- /dev/null
+++ b/ckeditor/icons/desktop/73.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m740 731-28-30q8-16.069 11-37.229T726 622q0-48-18.5-92.5T654 452L480 280l-97 95-25-25 122-121 200 197q36 36 58.5 89.5T761 622q0 23-5 51.5T740 731Zm63 222L671 820q-34 36-86 56.5T480 897q-115.597 0-198.298-80Q199 737 199 622q0-57 23-108t58-85L109 259l25-25 694 694-25 25Zm-323-91q54.634 0 97.817-19.5Q621 823 646 795L306 454q-28 25-50 69.092T234 622q0 101 72 170.5T480 862Zm-5-241Zm75-78Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/74.svg b/ckeditor/icons/desktop/74.svg
new file mode 100644
index 0000000..727fd1b
--- /dev/null
+++ b/ckeditor/icons/desktop/74.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M223 900q-27.5 0-47.25-19.75T156 833V699h35v134q0 12 10 22t22 10h134v35H223Zm380 0v-35h134q12 0 22-10t10-22V699h35v134q0 27.5-19.75 47.25T737 900H603ZM344 688 232 576l112-112 24 25-87 87 87 87-24 25Zm272 0-24-25 87-87-87-87 24-25 112 112-112 112ZM156 453V319q0-27.5 19.75-47.25T223 252h134v35H223q-12 0-22 10t-10 22v134h-35Zm613 0V319q0-12-10-22t-22-10H603v-35h134q27.5 0 47.25 19.75T804 319v134h-35Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/75.svg b/ckeditor/icons/desktop/75.svg
new file mode 100644
index 0000000..51f705f
--- /dev/null
+++ b/ckeditor/icons/desktop/75.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M136 243v-35h281v35H136Zm123 269V320H136v-35h281v35H294v192h-35Zm289 425-25-25 287-287 25 25-287 287Zm33.349-216Q564 721 551 708.849t-13-30.5Q538 661 550.651 648t30-13Q599 635 611.5 647.651t12.5 30Q624 696 611.849 708.5t-30.5 12.5Zm203 205Q766 926 753.5 913.349t-12.5-31Q741 865 753.151 852t30.5-13Q801 839 814 851.651t13 30Q827 900 814.349 913t-30 13ZM625.801 518q-32.361 0-53.581-22.22Q551 473.56 551 442.5q0-32.5 21.36-52.5T626 370q13 0 23.5 3.25T669 384V210q0-8.4 4.3-12.7 4.3-4.3 12.7-4.3h137v35H701v215q0 32.28-20.919 53.64Q659.163 518 625.801 518ZM210.77 962q-31.687 0-55.728-23.02Q131 915.961 131 883q0-16.073 8-31.536Q147 836 159 824l59-57-31-32q-11-11-16.5-25t-5.5-30.754q0-33.116 22.868-55.181Q210.736 602 242.908 602 278 602 300 622.935t22 55.655q0 17.41-5 31.41t-16 25l-32 32 63 63 57-57 26 23-59 59 55 55-24 24-57-56-59 58q-12.962 14-28.624 20-15.662 6-31.606 6ZM244 747l32-32q7.5-7.333 10.25-14.567 2.75-7.233 2.75-18.59Q289 662 275.7 649.5 262.4 637 244 637q-16 0-30 12.9t-14 31.85q0 12.25 3.5 19.795 3.5 7.546 10.382 13.514L244 747Zm-31 179q7.688 0 17.5-4 9.812-4 16.5-11l58-59-62-60-56.766 56.667Q178 857 173 865q-5 8-5 15.278 0 17.244 13.833 31.483Q195.667 926 213 926Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/76.svg b/ckeditor/icons/desktop/76.svg
new file mode 100644
index 0000000..0f6c294
--- /dev/null
+++ b/ckeditor/icons/desktop/76.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M491 874q-68 0-120-32t-76-96l36-15q21 52 61 78t99 26q58 0 100.5-29t42.5-88q0-29-7.5-50.5T606 628h41q12 15 19 38t7 52q0 73-52.5 114.5T491 874ZM96 553v-35h768v35H96Zm383-279q55 0 94 24t66 66l-36 15q-17-29-51-47.5T478 313q-67 0-100.5 38T350 434v4.5q0 2.5 1 4.5h-38q-1-2-1.5-4.5t-.5-5.5q-7-62 40-110.5T479 274Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/77.svg b/ckeditor/icons/desktop/77.svg
new file mode 100644
index 0000000..8a137cb
--- /dev/null
+++ b/ckeditor/icons/desktop/77.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M729 900v-87q0-14.9 10.05-24.95Q749.1 778 764 778h85v-51H729v-35h120q15 0 25 10.05T884 727v51q0 15.9-10.05 25.45Q863.9 813 849 813h-85v52h120v35H729ZM283 781l164-256-150-234h43l134 207h-3l137-207h44L500 525l165 256h-44L471 550h3L325 781h-42Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/78.svg b/ckeditor/icons/desktop/78.svg
new file mode 100644
index 0000000..9b56313
--- /dev/null
+++ b/ckeditor/icons/desktop/78.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M729 460v-87q0-13.9 10.05-24.45Q749.1 338 764 338h85v-51H729v-35h120q15 0 25 10.05T884 287v51q0 15.9-10.05 25.45Q863.9 373 849 373h-85v52h120v35H729ZM283 861l164-256-150-234h43l134 207h-3l137-207h44L500 605l165 256h-44L471 630h3L325 861h-42Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/79.svg b/ckeditor/icons/desktop/79.svg
new file mode 100644
index 0000000..85a90c5
--- /dev/null
+++ b/ckeditor/icons/desktop/79.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M159 897V255h642v642H159Zm35-461h572V290H194v146Zm203 213h167V471H397v178Zm0 213h167V684H397v178ZM194 649h168V471H194v178Zm405 0h167V471H599v178ZM194 862h168V684H194v178Zm405 0h167V684H599v178Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/8.svg b/ckeditor/icons/desktop/8.svg
new file mode 100644
index 0000000..58a296e
--- /dev/null
+++ b/ckeditor/icons/desktop/8.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M226 897q-27.5 0-47.25-19.75T159 830V322q0-27.5 19.75-47.25T226 255h508q27.5 0 47.25 19.75T801 322v508q0 27.5-19.75 47.25T734 897H226Zm0-35h508q12 0 22-10t10-22V322q0-12-10-22t-22-10H226q-12 0-22 10t-10 22v508q0 12 10 22t22 10Zm82-103h353L551 613 447 742l-66-77-73 94ZM194 862V290v572Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/80.svg b/ckeditor/icons/desktop/80.svg
new file mode 100644
index 0000000..79adfea
--- /dev/null
+++ b/ckeditor/icons/desktop/80.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M156 819V333h649v486H156Zm35-35h170V368H191v416Zm205 0h169V368H396v416Zm204 0h170V368H600v416Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/81.svg b/ckeditor/icons/desktop/81.svg
new file mode 100644
index 0000000..d089f9e
--- /dev/null
+++ b/ckeditor/icons/desktop/81.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M769 714V587H191v127h578Zm0-149V436H191v129h578Zm0-151v-95q0-14-9-23t-23-9H223q-14 0-23 9t-9 23v95h578ZM223 900q-27.5 0-47.25-19.75T156 833V319q0-27.5 19.75-47.25T223 252h514q27.5 0 47.25 19.75T804 319v514q0 27.5-19.75 47.25T737 900H223Zm546-67v-97H191v97q0 14 9 23t23 9h514q14 0 23-9t9-23Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/82.svg b/ckeditor/icons/desktop/82.svg
new file mode 100644
index 0000000..808c926
--- /dev/null
+++ b/ckeditor/icons/desktop/82.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M130 926V731h35v160h160v35H130Zm506 0v-35h160V731h35v195H636ZM287 697l-25-24 79-80H90v-35h251l-79-79 25-25 121 122-121 121Zm386 0L552 576l121-122 25 25-79 79h252v35H619l79 80-25 24ZM130 420V225h195v35H165v160h-35Zm666 0V260H636v-35h195v195h-35Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/83.svg b/ckeditor/icons/desktop/83.svg
new file mode 100644
index 0000000..1d7d9e5
--- /dev/null
+++ b/ckeditor/icons/desktop/83.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m355 808 125-76 126 77-33-143 111-96-146-13-58-135-57 134-146 13 111 96-33 143Zm-54 73 48-203-158-137 208-17 81-192 82 192 207 17-158 137 48 203-179-108-179 108Zm179-256Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/84.svg b/ckeditor/icons/desktop/84.svg
new file mode 100644
index 0000000..4849b65
--- /dev/null
+++ b/ckeditor/icons/desktop/84.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="m480 732 126 77-33-143 111-96-146-13-58-135v310ZM301 881l48-203-158-137 208-17 81-192 82 192 207 17-158 137 48 203-179-108-179 108Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/85.svg b/ckeditor/icons/desktop/85.svg
new file mode 100644
index 0000000..f31c923
--- /dev/null
+++ b/ckeditor/icons/desktop/85.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M239 804 125 690l24-24 89 89 173-173 24 25-196 197Zm0-280L125 410l24-24 89 89 173-173 24 25-196 197Zm277 209v-35h321v35H516Zm0-280v-35h321v35H516Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/86.svg b/ckeditor/icons/desktop/86.svg
new file mode 100644
index 0000000..9f11cf4
--- /dev/null
+++ b/ckeditor/icons/desktop/86.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M225 866v-45h511v45H225Zm254.726-135q-85.146 0-134.936-49Q295 633 295 549V270h45v277q0 66 37.695 102.5T480.122 686q64.732 0 102.805-36.5Q621 613 621 547V270h45v279q0 84-50.564 133-50.563 49-135.71 49Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/desktop/9.svg b/ckeditor/icons/desktop/9.svg
new file mode 100644
index 0000000..df1f251
--- /dev/null
+++ b/ckeditor/icons/desktop/9.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" height="48" viewBox="0 96 960 960" width="48"><path d="M264 859q-27.5 0-47.25-19.431T197 792v-96h35v96q0 12 10 22t22 10h432q12 0 22-10t10-22v-96h35v96q0 28.138-19.75 47.569T696 859H264Zm217-158L339 559l25-23 99 98V271h35v363l99-98 26 23-142 142Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/0.svg b/ckeditor/icons/original/0.svg
new file mode 100644
index 0000000..67e27d4
--- /dev/null
+++ b/ckeditor/icons/original/0.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path class="ck-icon__fill" d="M16.935 5.328a2 2 0 0 1 0 2.829l-7.778 7.778a2 2 0 0 1-2.829 0L3.5 13.107a1.999 1.999 0 1 1 2.828-2.829l.707.707a1 1 0 0 0 1.414 0l5.658-5.657a2 2 0 0 1 2.828 0z"/><path d="M14.814 6.035 8.448 12.4a1 1 0 0 1-1.414 0l-1.413-1.415A1 1 0 1 0 4.207 12.4l2.829 2.829a1 1 0 0 0 1.414 0l7.778-7.778a1 1 0 1 0-1.414-1.415z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/1.svg b/ckeditor/icons/original/1.svg
new file mode 100644
index 0000000..84ffa9f
--- /dev/null
+++ b/ckeditor/icons/original/1.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 10 10" xmlns="http://www.w3.org/2000/svg"><path d="M.941 4.523a.75.75 0 1 1 1.06-1.06l3.006 3.005 3.005-3.005a.75.75 0 1 1 1.06 1.06l-3.549 3.55a.75.75 0 0 1-1.168-.136L.941 4.523z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/10.svg b/ckeditor/icons/original/10.svg
new file mode 100644
index 0000000..0a0fead
--- /dev/null
+++ b/ckeditor/icons/original/10.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M9.75 11.875a.752.752 0 0 1 .508.184l2.883 1.666a.75.75 0 0 1-.659 1.344l-.091-.044-1.892-1.093.001 4.318a.75.75 0 1 1-1.5 0v-4.317l-1.89 1.092a.75.75 0 0 1-.75-1.3l2.879-1.663a.752.752 0 0 1 .51-.187zM15.25 9a.75.75 0 1 1 0 1.5H4.75a.75.75 0 1 1 0-1.5h10.5zM9.75.375a.75.75 0 0 1 .75.75v4.318l1.89-1.093.092-.045a.75.75 0 0 1 .659 1.344l-2.883 1.667a.752.752 0 0 1-.508.184.752.752 0 0 1-.511-.187L6.359 5.65a.75.75 0 0 1 .75-1.299L9 5.442V1.125a.75.75 0 0 1 .75-.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/11.svg b/ckeditor/icons/original/11.svg
new file mode 100644
index 0000000..7302ca0
--- /dev/null
+++ b/ckeditor/icons/original/11.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m10.261 7.062 2.88 1.663a.75.75 0 0 1-.75 1.3L10.5 8.933v7.317a.75.75 0 1 1-1.5 0V8.932l-1.89 1.093a.75.75 0 0 1-.75-1.3l2.879-1.663a.752.752 0 0 1 .511-.187.752.752 0 0 1 .511.187zM15.25 4a.75.75 0 1 1 0 1.5H4.75a.75.75 0 0 1 0-1.5h10.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/12.svg b/ckeditor/icons/original/12.svg
new file mode 100644
index 0000000..bf1a932
--- /dev/null
+++ b/ckeditor/icons/original/12.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 4c0 .414.336.75.75.75h9.929a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0-8c0 .414.336.75.75.75h9.929a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/13.svg b/ckeditor/icons/original/13.svg
new file mode 100644
index 0000000..4d5a61d
--- /dev/null
+++ b/ckeditor/icons/original/13.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm2.286 4c0 .414.336.75.75.75h9.928a.75.75 0 1 0 0-1.5H5.036a.75.75 0 0 0-.75.75zm0-8c0 .414.336.75.75.75h9.928a.75.75 0 1 0 0-1.5H5.036a.75.75 0 0 0-.75.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/14.svg b/ckeditor/icons/original/14.svg
new file mode 100644
index 0000000..4d51b5b
--- /dev/null
+++ b/ckeditor/icons/original/14.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M18 3.75a.75.75 0 0 1-.75.75H2.75a.75.75 0 1 1 0-1.5h14.5a.75.75 0 0 1 .75.75zm0 8a.75.75 0 0 1-.75.75H2.75a.75.75 0 1 1 0-1.5h14.5a.75.75 0 0 1 .75.75zm0 4a.75.75 0 0 1-.75.75H7.321a.75.75 0 1 1 0-1.5h9.929a.75.75 0 0 1 .75.75zm0-8a.75.75 0 0 1-.75.75H7.321a.75.75 0 1 1 0-1.5h9.929a.75.75 0 0 1 .75.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/15.svg b/ckeditor/icons/original/15.svg
new file mode 100644
index 0000000..277c3de
--- /dev/null
+++ b/ckeditor/icons/original/15.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0 4c0 .414.336.75.75.75h9.929a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm0-8c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/16.svg b/ckeditor/icons/original/16.svg
new file mode 100644
index 0000000..a25ba4f
--- /dev/null
+++ b/ckeditor/icons/original/16.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M12.003 7v5.5a1 1 0 0 1-1 1H2.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H3.5V12h6.997V7.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/17.svg b/ckeditor/icons/original/17.svg
new file mode 100644
index 0000000..45445a4
--- /dev/null
+++ b/ckeditor/icons/original/17.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M15.003 7v5.5a1 1 0 0 1-1 1H5.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H6.5V12h6.997V7.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/18.svg b/ckeditor/icons/original/18.svg
new file mode 100644
index 0000000..aef13f8
--- /dev/null
+++ b/ckeditor/icons/original/18.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M18.003 7v5.5a1 1 0 0 1-1 1H8.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H9.5V12h6.997V7.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/19.svg b/ckeditor/icons/original/19.svg
new file mode 100644
index 0000000..a3dbfb6
--- /dev/null
+++ b/ckeditor/icons/original/19.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2z"/><path d="M18 7v5.5a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1zm-1.505.5H3.504V12h12.991V7.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/2.svg b/ckeditor/icons/original/2.svg
new file mode 100644
index 0000000..8ce47b4
--- /dev/null
+++ b/ckeditor/icons/original/2.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.591 10.177 4.243 4.242a1 1 0 0 1-1.415 1.415l-4.242-4.243-4.243 4.243a1 1 0 0 1-1.414-1.415l4.243-4.242L4.52 5.934A1 1 0 0 1 5.934 4.52l4.243 4.243 4.242-4.243a1 1 0 1 1 1.415 1.414l-4.243 4.243z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/20.svg b/ckeditor/icons/original/20.svg
new file mode 100644
index 0000000..550a10a
--- /dev/null
+++ b/ckeditor/icons/original/20.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm11.5 9H18v1.5h-4.5zM2 15h16v1.5H2z"/><path d="M12.003 7v5.5a1 1 0 0 1-1 1H2.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H3.5V12h6.997V7.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/21.svg b/ckeditor/icons/original/21.svg
new file mode 100644
index 0000000..59f1864
--- /dev/null
+++ b/ckeditor/icons/original/21.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm11.5 9H18v1.5h-4.5zm0-3H18v1.5h-4.5zm0-3H18v1.5h-4.5zM2 15h16v1.5H2z"/><path d="M12.003 7v5.5a1 1 0 0 1-1 1H2.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H3.5V12h6.997V7.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/22.svg b/ckeditor/icons/original/22.svg
new file mode 100644
index 0000000..f58ee12
--- /dev/null
+++ b/ckeditor/icons/original/22.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path opacity=".5" d="M2 3h16v1.5H2zm0 12h16v1.5H2zm0-9h5v1.5H2zm0 3h5v1.5H2zm0 3h5v1.5H2z"/><path d="M18.003 7v5.5a1 1 0 0 1-1 1H8.996a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h8.007a1 1 0 0 1 1 1zm-1.506.5H9.5V12h6.997V7.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/23.svg b/ckeditor/icons/original/23.svg
new file mode 100644
index 0000000..4490edc
--- /dev/null
+++ b/ckeditor/icons/original/23.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M18.095 2H1.905C.853 2 0 2.895 0 4v12c0 1.105.853 2 1.905 2h16.19C19.147 18 20 17.105 20 16V4c0-1.105-.853-2-1.905-2zm0 1.5c.263 0 .476.224.476.5v12c0 .276-.213.5-.476.5H1.905a.489.489 0 0 1-.476-.5V4c0-.276.213-.5.476-.5h16.19z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/24.svg b/ckeditor/icons/original/24.svg
new file mode 100644
index 0000000..bcaa5b8
--- /dev/null
+++ b/ckeditor/icons/original/24.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M13 6H2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h11a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2zm0 1.5a.5.5 0 0 1 .5.5v8a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5V8a.5.5 0 0 1 .5-.5h11z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/25.svg b/ckeditor/icons/original/25.svg
new file mode 100644
index 0000000..4a32bad
--- /dev/null
+++ b/ckeditor/icons/original/25.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M7 10H2a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h5a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2zm0 1.5a.5.5 0 0 1 .5.5v4a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5v-4a.5.5 0 0 1 .5-.5h5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/26.svg b/ckeditor/icons/original/26.svg
new file mode 100644
index 0000000..f0b5621
--- /dev/null
+++ b/ckeditor/icons/original/26.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.5 17v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zm2 0v1h-1v-1h1zM1 15.5v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm-19-2v1H0v-1h1zm19 0v1h-1v-1h1zm0-2v1h-1v-1h1zm-19 0v1H0v-1h1zM14.5 2v1h-1V2h1zm2 0v1h-1V2h1zm2 0v1h-1V2h1zm-8 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm-2 0v1h-1V2h1zm8 0v1h-1V2h1zm-10 0v1h-1V2h1z"/><path d="M10 8H2a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2zm0 1.5a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5v-6a.5.5 0 0 1 .5-.5h8z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/27.svg b/ckeditor/icons/original/27.svg
new file mode 100644
index 0000000..db2bd80
--- /dev/null
+++ b/ckeditor/icons/original/27.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m7.3 17.37-.061.088a1.518 1.518 0 0 1-.934.535l-4.178.663-.806-4.153a1.495 1.495 0 0 1 .187-1.058l.056-.086L8.77 2.639c.958-1.351 2.803-1.076 4.296-.03 1.497 1.047 2.387 2.693 1.433 4.055L7.3 17.37zM9.14 4.728l-5.545 8.346 3.277 2.294 5.544-8.346L9.14 4.728zM6.07 16.512l-3.276-2.295.53 2.73 2.746-.435zM9.994 3.506 13.271 5.8c.316-.452-.16-1.333-1.065-1.966-.905-.634-1.895-.78-2.212-.328zM8 18.5 9.375 17H19v1.5H8z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/28.svg b/ckeditor/icons/original/28.svg
new file mode 100644
index 0000000..dc793e9
--- /dev/null
+++ b/ckeditor/icons/original/28.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M6.999 2H15a1 1 0 0 1 0 2h-1.004v13a1 1 0 1 1-2 0V4H8.999v13a1 1 0 1 1-2 0v-7A4 4 0 0 1 3 6a4 4 0 0 1 3.999-4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/29.svg b/ckeditor/icons/original/29.svg
new file mode 100644
index 0000000..a3da8f0
--- /dev/null
+++ b/ckeditor/icons/original/29.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3 10.423a6.5 6.5 0 0 1 6.056-6.408l.038.67C6.448 5.423 5.354 7.663 5.22 10H9c.552 0 .5.432.5.986v4.511c0 .554-.448.503-1 .503h-5c-.552 0-.5-.449-.5-1.003v-4.574zm8 0a6.5 6.5 0 0 1 6.056-6.408l.038.67c-2.646.739-3.74 2.979-3.873 5.315H17c.552 0 .5.432.5.986v4.511c0 .554-.448.503-1 .503h-5c-.552 0-.5-.449-.5-1.003v-4.574z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/3.svg b/ckeditor/icons/original/3.svg
new file mode 100644
index 0000000..b0ac841
--- /dev/null
+++ b/ckeditor/icons/original/3.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 16h9a1 1 0 0 1 0 2H2a1 1 0 0 1 0-2z"/><path d="M17 1a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h14zm0 1.5H3a.5.5 0 0 0-.492.41L2.5 3v9a.5.5 0 0 0 .41.492L3 12.5h14a.5.5 0 0 0 .492-.41L17.5 12V3a.5.5 0 0 0-.41-.492L17 2.5z" fill-opacity=".6"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/30.svg b/ckeditor/icons/original/30.svg
new file mode 100644
index 0000000..d32f9fe
--- /dev/null
+++ b/ckeditor/icons/original/30.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><circle cx="9.5" cy="4.5" r="1.5"/><circle cx="9.5" cy="10.5" r="1.5"/><circle cx="9.5" cy="16.5" r="1.5"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/31.svg b/ckeditor/icons/original/31.svg
new file mode 100644
index 0000000..4cf547d
--- /dev/null
+++ b/ckeditor/icons/original/31.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10.187 17H5.773c-.637 0-1.092-.138-1.364-.415-.273-.277-.409-.718-.409-1.323V4.738c0-.617.14-1.062.419-1.332.279-.27.73-.406 1.354-.406h4.68c.69 0 1.288.041 1.793.124.506.083.96.242 1.36.478.341.197.644.447.906.75a3.262 3.262 0 0 1 .808 2.162c0 1.401-.722 2.426-2.167 3.075C15.05 10.175 16 11.315 16 13.01a3.756 3.756 0 0 1-2.296 3.504 6.1 6.1 0 0 1-1.517.377c-.571.073-1.238.11-2 .11zm-.217-6.217H7v4.087h3.069c1.977 0 2.965-.69 2.965-2.072 0-.707-.256-1.22-.768-1.537-.512-.319-1.277-.478-2.296-.478zM7 5.13v3.619h2.606c.729 0 1.292-.067 1.69-.2a1.6 1.6 0 0 0 .91-.765c.165-.267.247-.566.247-.897 0-.707-.26-1.176-.778-1.409-.519-.232-1.31-.348-2.375-.348H7z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/32.svg b/ckeditor/icons/original/32.svg
new file mode 100644
index 0000000..452bff5
--- /dev/null
+++ b/ckeditor/icons/original/32.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 5.5H7v5h3.5a2.5 2.5 0 1 0 0-5zM5 3h6.5v.025a5 5 0 0 1 0 9.95V13H7v4a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/33.svg b/ckeditor/icons/original/33.svg
new file mode 100644
index 0000000..384c0a1
--- /dev/null
+++ b/ckeditor/icons/original/33.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10 2a1 1 0 0 0-1 1v6H3a1 1 0 1 0 0 2h6v6a1 1 0 1 0 2 0v-6h6a1 1 0 1 0 0-2h-6V3a1 1 0 0 0-1-1Z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/34.svg b/ckeditor/icons/original/34.svg
new file mode 100644
index 0000000..73ba777
--- /dev/null
+++ b/ckeditor/icons/original/34.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#a)"><path d="M9.816 11.5 7.038 4.785 4.261 11.5h5.555Zm.62 1.5H3.641l-1.666 4.028H.312l5.789-14h1.875l5.789 14h-1.663L10.436 13Z"/><path clip-rule="evenodd" d="m12.09 17-.534-1.292.848-1.971.545 1.319L12.113 17h-.023Zm1.142-5.187.545 1.319L15.5 9.13l1.858 4.316h-3.45l.398.965h3.467L18.887 17H20l-3.873-9h-1.254l-1.641 3.813Z"/></g><defs><clipPath id="a"><path d="M0 0h20v20H0z"/></clipPath></defs></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/35.svg b/ckeditor/icons/original/35.svg
new file mode 100644
index 0000000..72c9e0e
--- /dev/null
+++ b/ckeditor/icons/original/35.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#a)"><path clip-rule="evenodd" d="M19 4.5 14 0H3v12.673l.868-1.041c.185-.222.4-.402.632-.54V1.5h8v5h5v7.626a2.24 2.24 0 0 1 1.5.822V4.5ZM14 5V2l3.3 3H14Zm-3.692 12.5c.062.105.133.206.213.303L11.52 19H8v-.876a2.243 2.243 0 0 0 1.82-.624h.488Zm7.518-.657a.75.75 0 0 0-1.152-.96L15.5 17.29V12H14v5.29l-1.174-1.408a.75.75 0 0 0-1.152.96l2.346 2.816a.95.95 0 0 0 1.46 0l2.346-2.815Zm-15.056-.38a.75.75 0 0 1-.096-1.056l2.346-2.815a.95.95 0 0 1 1.46 0l2.346 2.815a.75.75 0 1 1-1.152.96L6.5 14.96V20H5v-5.04l-1.174 1.408a.75.75 0 0 1-1.056.096Z"/></g><defs><clipPath id="a"><path d="M0 0h20v20H0z"/></clipPath></defs></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/36.svg b/ckeditor/icons/original/36.svg
new file mode 100644
index 0000000..f7c14d9
--- /dev/null
+++ b/ckeditor/icons/original/36.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M11.463 5.187a.888.888 0 1 1 1.254 1.255L9.16 10l3.557 3.557a.888.888 0 1 1-1.254 1.255L7.26 10.61a.888.888 0 0 1 .16-1.382l4.043-4.042z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/37.svg b/ckeditor/icons/original/37.svg
new file mode 100644
index 0000000..7cdf80e
--- /dev/null
+++ b/ckeditor/icons/original/37.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M8.537 14.813a.888.888 0 1 1-1.254-1.255L10.84 10 7.283 6.442a.888.888 0 1 1 1.254-1.255L12.74 9.39a.888.888 0 0 1-.16 1.382l-4.043 4.042z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/38.svg b/ckeditor/icons/original/38.svg
new file mode 100644
index 0000000..b61ba9c
--- /dev/null
+++ b/ckeditor/icons/original/38.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M4 0v1H1v3H0V.5A.5.5 0 0 1 .5 0H4zm8 0h3.5a.5.5 0 0 1 .5.5V4h-1V1h-3V0zM4 16H.5a.5.5 0 0 1-.5-.5V12h1v3h3v1zm8 0v-1h3v-3h1v3.5a.5.5 0 0 1-.5.5H12z"/><path fill-opacity=".256" d="M1 1h14v14H1z"/><g class="ck-icon__selected-indicator"><path d="M7 0h2v1H7V0zM0 7h1v2H0V7zm15 0h1v2h-1V7zm-8 8h2v1H7v-1z"/><path fill-opacity=".254" d="M1 1h14v14H1z"/></g></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/39.svg b/ckeditor/icons/original/39.svg
new file mode 100644
index 0000000..ac57e07
--- /dev/null
+++ b/ckeditor/icons/original/39.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 10 8" xmlns="http://www.w3.org/2000/svg"><path d="M9.055.263v3.972h-6.77M1 4.216l2-2.038m-2 2 2 2.038"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/4.svg b/ckeditor/icons/original/4.svg
new file mode 100644
index 0000000..4b9b547
--- /dev/null
+++ b/ckeditor/icons/original/4.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M6.972 16.615a.997.997 0 0 1-.744-.292l-4.596-4.596a1 1 0 1 1 1.414-1.414l3.926 3.926 9.937-9.937a1 1 0 0 1 1.414 1.415L7.717 16.323a.997.997 0 0 1-.745.292z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/40.svg b/ckeditor/icons/original/40.svg
new file mode 100644
index 0000000..af99ba4
--- /dev/null
+++ b/ckeditor/icons/original/40.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m5.042 9.367 2.189 1.837a.75.75 0 0 1-.965 1.149l-3.788-3.18a.747.747 0 0 1-.21-.284.75.75 0 0 1 .17-.945L6.23 4.762a.75.75 0 1 1 .964 1.15L4.863 7.866h8.917A.75.75 0 0 1 14 7.9a4 4 0 1 1-1.477 7.718l.344-1.489a2.5 2.5 0 1 0 1.094-4.73l.008-.032H5.042z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/41.svg b/ckeditor/icons/original/41.svg
new file mode 100644
index 0000000..360eb9c
--- /dev/null
+++ b/ckeditor/icons/original/41.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m14.958 9.367-2.189 1.837a.75.75 0 0 0 .965 1.149l3.788-3.18a.747.747 0 0 0 .21-.284.75.75 0 0 0-.17-.945L13.77 4.762a.75.75 0 1 0-.964 1.15l2.331 1.955H6.22A.75.75 0 0 0 6 7.9a4 4 0 1 0 1.477 7.718l-.344-1.489A2.5 2.5 0 1 1 6.039 9.4l-.008-.032h8.927z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/42.svg b/ckeditor/icons/original/42.svg
new file mode 100644
index 0000000..0cd08e1
--- /dev/null
+++ b/ckeditor/icons/original/42.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.5 5.7 5.2 3.9v1.3l-5.6 4c-.1.2-.3.2-.5.2-.3-.1-.6-.7-.6-1l.3-.4 4.7-3.5L11.5 7l-.2-.2c-.1-.3-.1-.6 0-.8.2-.2.5-.4.8-.4a.8.8 0 0 1 .4.1zm-5.2 0L2 9.6v1.3l5.6 4c.1.2.3.2.5.2.3-.1.7-.7.6-1 0-.1 0-.3-.2-.4l-5-3.5L8.2 7l.2-.2c.1-.3.1-.6 0-.8-.2-.2-.5-.4-.8-.4a.8.8 0 0 0-.3.1z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/43.svg b/ckeditor/icons/original/43.svg
new file mode 100644
index 0000000..b2d657a
--- /dev/null
+++ b/ckeditor/icons/original/43.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M12.87 12.61a.75.75 0 0 1-.089.976l-.085.07-3.154 2.254 3.412 2.414a.75.75 0 0 1 .237.95l-.057.095a.75.75 0 0 1-.95.237l-.096-.058-4.272-3.022-.003-1.223 4.01-2.867a.75.75 0 0 1 1.047.174zm2.795-.231.095.057 4.011 2.867-.003 1.223-4.272 3.022-.095.058a.75.75 0 0 1-.88-.151l-.07-.086-.058-.095a.75.75 0 0 1 .15-.88l.087-.07 3.412-2.414-3.154-2.253-.085-.071a.75.75 0 0 1 .862-1.207zM16 0a2 2 0 0 1 2 2v9.354l-.663-.492-.837-.001V2a.5.5 0 0 0-.5-.5H2a.5.5 0 0 0-.5.5v15a.5.5 0 0 0 .5.5h3.118L7.156 19H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h14zM5.009 15l.003 1H3v-1h2.009zm2.188-2-1.471 1H5v-1h2.197zM10 11v.095L8.668 12H7v-1h3zm4-2v1H7V9h7zm0-2v1H7V7h7zm-4-2v1H5V5h5zM6 3v1H3V3h3z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/44.svg b/ckeditor/icons/original/44.svg
new file mode 100644
index 0000000..7850d92
--- /dev/null
+++ b/ckeditor/icons/original/44.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M.75 15.5a.75.75 0 0 1 .75.75V18l.008.09A.5.5 0 0 0 2 18.5h1.75a.75.75 0 1 1 0 1.5H1.5l-.144-.007a1.5 1.5 0 0 1-1.35-1.349L0 18.5v-2.25a.75.75 0 0 1 .75-.75zm18.5 0a.75.75 0 0 1 .75.75v2.25l-.007.144a1.5 1.5 0 0 1-1.349 1.35L18.5 20h-2.25a.75.75 0 1 1 0-1.5H18a.5.5 0 0 0 .492-.41L18.5 18v-1.75a.75.75 0 0 1 .75-.75zm-10.45 3c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2H7.2a.2.2 0 0 1-.2-.2v-1.1c0-.11.09-.2.2-.2h1.6zm4 0c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2h-1.6a.2.2 0 0 1-.2-.2v-1.1c0-.11.09-.2.2-.2h1.6zm.45-5.5a.75.75 0 1 1 0 1.5h-8.5a.75.75 0 1 1 0-1.5h8.5zM1.3 11c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2H.2a.2.2 0 0 1-.2-.2v-1.6c0-.11.09-.2.2-.2h1.1zm18.5 0c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2h-1.1a.2.2 0 0 1-.2-.2v-1.6c0-.11.09-.2.2-.2h1.1zm-4.55-2a.75.75 0 1 1 0 1.5H4.75a.75.75 0 1 1 0-1.5h10.5zM1.3 7c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2H.2a.2.2 0 0 1-.2-.2V7.2c0-.11.09-.2.2-.2h1.1zm18.5 0c.11 0 .2.09.2.2v1.6a.2.2 0 0 1-.2.2h-1.1a.2.2 0 0 1-.2-.2V7.2c0-.11.09-.2.2-.2h1.1zm-4.55-2a.75.75 0 1 1 0 1.5h-2.5a.75.75 0 1 1 0-1.5h2.5zm-5 0a.75.75 0 1 1 0 1.5h-5.5a.75.75 0 0 1 0-1.5h5.5zm-6.5-5a.75.75 0 0 1 0 1.5H2a.5.5 0 0 0-.492.41L1.5 2v1.75a.75.75 0 0 1-1.5 0V1.5l.007-.144A1.5 1.5 0 0 1 1.356.006L1.5 0h2.25zM18.5 0l.144.007a1.5 1.5 0 0 1 1.35 1.349L20 1.5v2.25a.75.75 0 1 1-1.5 0V2l-.008-.09A.5.5 0 0 0 18 1.5h-1.75a.75.75 0 1 1 0-1.5h2.25zM8.8 0c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2H7.2a.2.2 0 0 1-.2-.2V.2c0-.11.09-.2.2-.2h1.6zm4 0c.11 0 .2.09.2.2v1.1a.2.2 0 0 1-.2.2h-1.6a.2.2 0 0 1-.2-.2V.2c0-.11.09-.2.2-.2h1.6z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/45.svg b/ckeditor/icons/original/45.svg
new file mode 100644
index 0000000..ca0bddb
--- /dev/null
+++ b/ckeditor/icons/original/45.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.87 13.786 1.532-1.286 3.857 4.596a1 1 0 1 1-1.532 1.286l-3.857-4.596z"/><path d="M16.004 8.5a6.5 6.5 0 0 1-9.216 5.905c-1.154-.53-.863-1.415-.663-1.615.194-.194.564-.592 1.635-.141a4.5 4.5 0 0 0 5.89-5.904l-.104-.227 1.332-1.331c.045-.046.196-.041.224.007a6.47 6.47 0 0 1 .902 3.306zm-3.4-5.715c.562.305.742 1.106.354 1.494-.388.388-.995.414-1.476.178a4.5 4.5 0 0 0-6.086 5.882l.114.236-1.348 1.349c-.038.037-.17.022-.198-.023a6.5 6.5 0 0 1 5.54-9.9 6.469 6.469 0 0 1 3.1.784z"/><path d="M4.001 11.93.948 8.877a.2.2 0 0 1 .141-.341h6.106a.2.2 0 0 1 .141.341L4.283 11.93a.2.2 0 0 1-.282 0zm11.083-6.789 3.053 3.053a.2.2 0 0 1-.14.342H11.89a.2.2 0 0 1-.14-.342l3.052-3.053a.2.2 0 0 1 .282 0z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/46.svg b/ckeditor/icons/original/46.svg
new file mode 100644
index 0000000..acc57d2
--- /dev/null
+++ b/ckeditor/icons/original/46.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M4 2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2zm8.38 9.262H7.62L10 5.506l2.38 5.756zm.532 1.285L14.34 16h1.426L10.804 4H9.196L4.234 16H5.66l1.428-3.453h5.824z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/47.svg b/ckeditor/icons/original/47.svg
new file mode 100644
index 0000000..199d5f9
--- /dev/null
+++ b/ckeditor/icons/original/47.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M12.4 10.3 10 4.5l-2.4 5.8h4.8zm.5 1.2H7.1L5.7 15H4.2l5-12h1.6l5 12h-1.5L13 11.5zm3.1 7H4a1 1 0 0 1 0-2h12a1 1 0 0 1 0 2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/48.svg b/ckeditor/icons/original/48.svg
new file mode 100644
index 0000000..d3fc98d
--- /dev/null
+++ b/ckeditor/icons/original/48.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M11.03 3h6.149a.75.75 0 1 1 0 1.5h-5.514L11.03 3zm1.27 3h4.879a.75.75 0 1 1 0 1.5h-4.244L12.3 6zm1.27 3h3.609a.75.75 0 1 1 0 1.5h-2.973L13.57 9zm-2.754 2.5L8.038 4.785 5.261 11.5h5.555zm.62 1.5H4.641l-1.666 4.028H1.312l5.789-14h1.875l5.789 14h-1.663L11.436 13z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/49.svg b/ckeditor/icons/original/49.svg
new file mode 100644
index 0000000..3526f12
--- /dev/null
+++ b/ckeditor/icons/original/49.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M9.816 11.5 7.038 4.785 4.261 11.5h5.555zm.62 1.5H3.641l-1.666 4.028H.312l5.789-14h1.875l5.789 14h-1.663L10.436 13zm7.55 2.279.779-.779.707.707-2.265 2.265-2.193-2.265.707-.707.765.765V4.825c0-.042 0-.083.002-.123l-.77.77-.707-.707L17.207 2.5l2.265 2.265-.707.707-.782-.782c.002.043.003.089.003.135v10.454z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/5.svg b/ckeditor/icons/original/5.svg
new file mode 100644
index 0000000..588fb84
--- /dev/null
+++ b/ckeditor/icons/original/5.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.333 2 .19 2.263a5.899 5.899 0 0 1 1.458.604L14.714 3.4 16.6 5.286l-1.467 1.733c.263.452.468.942.605 1.46L18 8.666v2.666l-2.263.19a5.899 5.899 0 0 1-.604 1.458l1.467 1.733-1.886 1.886-1.733-1.467a5.899 5.899 0 0 1-1.46.605L11.334 18H8.667l-.19-2.263a5.899 5.899 0 0 1-1.458-.604L5.286 16.6 3.4 14.714l1.467-1.733a5.899 5.899 0 0 1-.604-1.458L2 11.333V8.667l2.262-.189a5.899 5.899 0 0 1 .605-1.459L3.4 5.286 5.286 3.4l1.733 1.467a5.899 5.899 0 0 1 1.46-.605L8.666 2h2.666zM10 6.267a3.733 3.733 0 1 0 0 7.466 3.733 3.733 0 0 0 0-7.466z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/50.svg b/ckeditor/icons/original/50.svg
new file mode 100644
index 0000000..72b5b23
--- /dev/null
+++ b/ckeditor/icons/original/50.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path class="ck-icon__fill" d="M10.798 1.59 3.002 12.875l1.895 1.852 2.521 1.402 6.997-12.194z"/><path d="m2.556 16.727.234-.348c-.297-.151-.462-.293-.498-.426-.036-.137.002-.416.115-.837.094-.25.15-.449.169-.595a4.495 4.495 0 0 0 0-.725c-.209-.621-.303-1.041-.284-1.26.02-.218.178-.506.475-.862l6.77-9.414c.539-.91 1.605-.85 3.199.18 1.594 1.032 2.188 1.928 1.784 2.686l-5.877 10.36c-.158.412-.333.673-.526.782-.193.108-.604.179-1.232.21-.362.131-.608.237-.738.318-.13.081-.305.238-.526.47-.293.265-.504.397-.632.397-.096 0-.27-.075-.524-.226l-.31.41-1.6-1.12zm-.279.415 1.575 1.103-.392.515H1.19l1.087-1.618zm8.1-13.656-4.953 6.9L8.75 12.57l4.247-7.574c.175-.25-.188-.647-1.092-1.192-.903-.546-1.412-.652-1.528-.32zM8.244 18.5 9.59 17h9.406v1.5H8.245z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/51.svg b/ckeditor/icons/original/51.svg
new file mode 100644
index 0000000..524de1e
--- /dev/null
+++ b/ckeditor/icons/original/51.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path class="ck-icon__fill" d="M10.126 2.268 2.002 13.874l1.895 1.852 2.521 1.402L14.47 5.481l-1.543-2.568-2.801-.645z"/><path d="m4.5 18.088-2.645-1.852-.04-2.95-.006-.005.006-.008v-.025l.011.008L8.73 2.97c.165-.233.356-.417.567-.557l-1.212.308L4.604 7.9l-.83-.558 3.694-5.495 2.708-.69 1.65 1.145.046.018.85-1.216 2.16 1.512-.856 1.222c.828.967 1.144 2.141.432 3.158L7.55 17.286l.006.005-3.055.797H4.5zm-.634.166-1.976.516-.026-1.918 2.002 1.402zM9.968 3.817l-.006-.004-6.123 9.184 3.277 2.294 6.108-9.162.005.003c.317-.452-.16-1.332-1.064-1.966-.891-.624-1.865-.776-2.197-.349zM8.245 18.5 9.59 17h9.406v1.5H8.245z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/52.svg b/ckeditor/icons/original/52.svg
new file mode 100644
index 0000000..a6757f2
--- /dev/null
+++ b/ckeditor/icons/original/52.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 9h16v2H2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/53.svg b/ckeditor/icons/original/53.svg
new file mode 100644
index 0000000..f699d93
--- /dev/null
+++ b/ckeditor/icons/original/53.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M17 0a2 2 0 0 1 2 2v7a1 1 0 0 1 1 1v5a1 1 0 0 1-.883.993l-.118.006L19 17a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2l-.001-1.001-.116-.006A1 1 0 0 1 0 15v-5a1 1 0 0 1 .999-1L1 2a2 2 0 0 1 2-2h14zm.499 15.999h-15L2.5 17a.5.5 0 0 0 .5.5h14a.5.5 0 0 0 .5-.5l-.001-1.001zm-3.478-6.013-.014.014H14v.007l-1.525 1.525-1.46-1.46-.015.013V10h-1v5h1v-3.53l1.428 1.43.048.043.131-.129L14 11.421V15h1v-5h-.965l-.014-.014zM2 10H1v5h1v-2h2v2h1v-5H4v2H2v-2zm7 0H6v1h1v4h1v-4h1v-1zm8 0h-1v5h3v-1h-2v-4zm0-8.5H3a.5.5 0 0 0-.5.5l-.001 6.999h15L17.5 2a.5.5 0 0 0-.5-.5zM10 7v1H4V7h6zm3-2v1H4V5h9zm-3-2v1H4V3h6z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/54.svg b/ckeditor/icons/original/54.svg
new file mode 100644
index 0000000..7b2ffd5
--- /dev/null
+++ b/ckeditor/icons/original/54.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm5 6c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zM2.75 16.5h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 1 0 0 1.5zM1.632 6.95 5.02 9.358a.4.4 0 0 1-.013.661l-3.39 2.207A.4.4 0 0 1 1 11.892V7.275a.4.4 0 0 1 .632-.326z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/55.svg b/ckeditor/icons/original/55.svg
new file mode 100644
index 0000000..62fa9e9
--- /dev/null
+++ b/ckeditor/icons/original/55.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.75c0 .414.336.75.75.75h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 0 0-.75.75zm5 6c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zM2.75 16.5h14.5a.75.75 0 1 0 0-1.5H2.75a.75.75 0 1 0 0 1.5zm1.618-9.55L.98 9.358a.4.4 0 0 0 .013.661l3.39 2.207A.4.4 0 0 0 5 11.892V7.275a.4.4 0 0 0-.632-.326z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/56.svg b/ckeditor/icons/original/56.svg
new file mode 100644
index 0000000..efd83d1
--- /dev/null
+++ b/ckeditor/icons/original/56.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m9.586 14.633.021.004c-.036.335.095.655.393.962.082.083.173.15.274.201h1.474a.6.6 0 1 1 0 1.2H5.304a.6.6 0 0 1 0-1.2h1.15c.474-.07.809-.182 1.005-.334.157-.122.291-.32.404-.597l2.416-9.55a1.053 1.053 0 0 0-.281-.823 1.12 1.12 0 0 0-.442-.296H8.15a.6.6 0 0 1 0-1.2h6.443a.6.6 0 1 1 0 1.2h-1.195c-.376.056-.65.155-.823.296-.215.175-.423.439-.623.79l-2.366 9.347z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/57.svg b/ckeditor/icons/original/57.svg
new file mode 100644
index 0000000..dc28733
--- /dev/null
+++ b/ckeditor/icons/original/57.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.077 15 .991-1.416a.75.75 0 1 1 1.229.86l-1.148 1.64a.748.748 0 0 1-.217.206 5.251 5.251 0 0 1-8.503-5.955.741.741 0 0 1 .12-.274l1.147-1.639a.75.75 0 1 1 1.228.86L4.933 10.7l.006.003a3.75 3.75 0 0 0 6.132 4.294l.006.004zm5.494-5.335a.748.748 0 0 1-.12.274l-1.147 1.639a.75.75 0 1 1-1.228-.86l.86-1.23a3.75 3.75 0 0 0-6.144-4.301l-.86 1.229a.75.75 0 0 1-1.229-.86l1.148-1.64a.748.748 0 0 1 .217-.206 5.251 5.251 0 0 1 8.503 5.955zm-4.563-2.532a.75.75 0 0 1 .184 1.045l-3.155 4.505a.75.75 0 1 1-1.229-.86l3.155-4.506a.75.75 0 0 1 1.045-.184zm4.919 10.562-1.414 1.414a.75.75 0 1 1-1.06-1.06l1.414-1.415-1.415-1.414a.75.75 0 0 1 1.061-1.06l1.414 1.414 1.414-1.415a.75.75 0 0 1 1.061 1.061l-1.414 1.414 1.414 1.415a.75.75 0 0 1-1.06 1.06l-1.415-1.414z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/58.svg b/ckeditor/icons/original/58.svg
new file mode 100644
index 0000000..a3a0899
--- /dev/null
+++ b/ckeditor/icons/original/58.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.077 15 .991-1.416a.75.75 0 1 1 1.229.86l-1.148 1.64a.748.748 0 0 1-.217.206 5.251 5.251 0 0 1-8.503-5.955.741.741 0 0 1 .12-.274l1.147-1.639a.75.75 0 1 1 1.228.86L4.933 10.7l.006.003a3.75 3.75 0 0 0 6.132 4.294l.006.004zm5.494-5.335a.748.748 0 0 1-.12.274l-1.147 1.639a.75.75 0 1 1-1.228-.86l.86-1.23a3.75 3.75 0 0 0-6.144-4.301l-.86 1.229a.75.75 0 0 1-1.229-.86l1.148-1.64a.748.748 0 0 1 .217-.206 5.251 5.251 0 0 1 8.503 5.955zm-4.563-2.532a.75.75 0 0 1 .184 1.045l-3.155 4.505a.75.75 0 1 1-1.229-.86l3.155-4.506a.75.75 0 0 1 1.045-.184z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/59.svg b/ckeditor/icons/original/59.svg
new file mode 100644
index 0000000..55240a5
--- /dev/null
+++ b/ckeditor/icons/original/59.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M7 5.75c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zM3.5 3v5H2V3.7H1v-1h2.5V3zM.343 17.857l2.59-3.257H2.92a.6.6 0 1 0-1.04 0H.302a2 2 0 1 1 3.995 0h-.001c-.048.405-.16.734-.333.988-.175.254-.59.692-1.244 1.312H4.3v1h-4l.043-.043zM7 14.75a.75.75 0 0 1 .75-.75h9.5a.75.75 0 1 1 0 1.5h-9.5a.75.75 0 0 1-.75-.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/6.svg b/ckeditor/icons/original/6.svg
new file mode 100644
index 0000000..4dc55a4
--- /dev/null
+++ b/ckeditor/icons/original/6.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m8.636 9.531-2.758 3.94a.5.5 0 0 0 .122.696l3.224 2.284h1.314l2.636-3.736L8.636 9.53zm.288 8.451L5.14 15.396a2 2 0 0 1-.491-2.786l6.673-9.53a2 2 0 0 1 2.785-.49l3.742 2.62a2 2 0 0 1 .491 2.785l-7.269 10.053-2.147-.066z"/><path d="M4 18h5.523v-1H4zm-2 0h1v-1H2z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/60.svg b/ckeditor/icons/original/60.svg
new file mode 100644
index 0000000..3ec86bf
--- /dev/null
+++ b/ckeditor/icons/original/60.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M7 5.75c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zm-6 0C1 4.784 1.777 4 2.75 4c.966 0 1.75.777 1.75 1.75 0 .966-.777 1.75-1.75 1.75C1.784 7.5 1 6.723 1 5.75zm6 9c0 .414.336.75.75.75h9.5a.75.75 0 1 0 0-1.5h-9.5a.75.75 0 0 0-.75.75zm-6 0c0-.966.777-1.75 1.75-1.75.966 0 1.75.777 1.75 1.75 0 .966-.777 1.75-1.75 1.75-.966 0-1.75-.777-1.75-1.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/61.svg b/ckeditor/icons/original/61.svg
new file mode 100644
index 0000000..f7e902e
--- /dev/null
+++ b/ckeditor/icons/original/61.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11 27a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0-9a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0-9a3 3 0 1 1 0 6 3 3 0 0 1 0-6z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/62.svg b/ckeditor/icons/original/62.svg
new file mode 100644
index 0000000..dc8859e
--- /dev/null
+++ b/ckeditor/icons/original/62.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11 27a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 1a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm0-10a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 1a2 2 0 1 0 0 4 2 2 0 0 0 0-4zm0-10a3 3 0 1 1 0 6 3 3 0 0 1 0-6zm0 1a2 2 0 1 0 0 4 2 2 0 0 0 0-4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/63.svg b/ckeditor/icons/original/63.svg
new file mode 100644
index 0000000..8a02107
--- /dev/null
+++ b/ckeditor/icons/original/63.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M14 27v6H8v-6h6zm0-9v6H8v-6h6zm0-9v6H8V9h6z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/64.svg b/ckeditor/icons/original/64.svg
new file mode 100644
index 0000000..ca9bd48
--- /dev/null
+++ b/ckeditor/icons/original/64.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M10.29 15V8.531H9.286c-.14.393-.4.736-.778 1.03-.378.295-.728.495-1.05.6v1.121a4.257 4.257 0 0 0 1.595-.936V15h1.235zm3.343 0v-1.235h-1.235V15h1.235zM11.3 24v-1.147H8.848c.064-.111.148-.226.252-.343.104-.117.351-.354.74-.712.39-.357.66-.631.81-.821.225-.288.39-.562.494-.824.104-.263.156-.539.156-.829 0-.51-.182-.936-.545-1.279-.363-.342-.863-.514-1.499-.514-.58 0-1.063.148-1.45.444-.387.296-.617.784-.69 1.463l1.23.124c.024-.36.112-.619.264-.774.153-.155.358-.233.616-.233.26 0 .465.074.613.222.148.148.222.36.222.635 0 .25-.085.501-.255.756-.126.185-.468.536-1.024 1.055-.692.641-1.155 1.156-1.389 1.544-.234.389-.375.8-.422 1.233H11.3zm2.333 0v-1.235h-1.235V24h1.235zM9.204 34.11c.615 0 1.129-.2 1.542-.598.413-.398.62-.88.62-1.446 0-.39-.11-.722-.332-.997a1.5 1.5 0 0 0-.886-.532c.619-.337.928-.788.928-1.353 0-.399-.151-.756-.453-1.073-.366-.386-.852-.58-1.459-.58a2.25 2.25 0 0 0-.96.2 1.617 1.617 0 0 0-.668.55c-.16.232-.28.544-.358.933l1.138.194c.032-.282.123-.495.272-.642.15-.146.33-.22.54-.22.215 0 .386.065.515.194s.193.302.193.518c0 .255-.087.46-.263.613-.176.154-.43.227-.765.218l-.136 1.006c.22-.061.409-.092.567-.092.24 0 .444.09.61.272.168.182.251.428.251.739 0 .328-.087.589-.261.782a.833.833 0 0 1-.644.29.841.841 0 0 1-.607-.242c-.167-.16-.27-.394-.307-.698l-1.196.145c.062.542.285.98.668 1.316.384.335.868.503 1.45.503zm4.43-.11v-1.235h-1.236V34h1.235z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/65.svg b/ckeditor/icons/original/65.svg
new file mode 100644
index 0000000..e9f1d41
--- /dev/null
+++ b/ckeditor/icons/original/65.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M5.714 15.11c.624 0 1.11-.22 1.46-.66.421-.533.632-1.408.632-2.627 0-1.222-.21-2.096-.629-2.624-.351-.445-.839-.668-1.463-.668-.624 0-1.11.22-1.459.66-.422.533-.633 1.406-.633 2.619 0 1.236.192 2.095.576 2.577.384.482.89.723 1.516.723zm0-1.024a.614.614 0 0 1-.398-.14c-.115-.094-.211-.283-.287-.565-.077-.283-.115-.802-.115-1.558s.043-1.294.128-1.613c.064-.246.155-.417.272-.512a.617.617 0 0 1 .4-.143.61.61 0 0 1 .398.143c.116.095.211.284.288.567.076.283.114.802.114 1.558s-.043 1.292-.128 1.608c-.064.246-.155.417-.272.512a.617.617 0 0 1-.4.143zm6.078.914V8.531H10.79c-.14.393-.4.736-.778 1.03-.378.295-.728.495-1.05.6v1.121a4.257 4.257 0 0 0 1.595-.936V15h1.235zm3.344 0v-1.235h-1.235V15h1.235zm-9.422 9.11c.624 0 1.11-.22 1.46-.66.421-.533.632-1.408.632-2.627 0-1.222-.21-2.096-.629-2.624-.351-.445-.839-.668-1.463-.668-.624 0-1.11.22-1.459.66-.422.533-.633 1.406-.633 2.619 0 1.236.192 2.095.576 2.577.384.482.89.723 1.516.723zm0-1.024a.614.614 0 0 1-.398-.14c-.115-.094-.211-.283-.287-.565-.077-.283-.115-.802-.115-1.558s.043-1.294.128-1.613c.064-.246.155-.417.272-.512a.617.617 0 0 1 .4-.143.61.61 0 0 1 .398.143c.116.095.211.284.288.567.076.283.114.802.114 1.558s-.043 1.292-.128 1.608c-.064.246-.155.417-.272.512a.617.617 0 0 1-.4.143zm7.088.914v-1.147H10.35c.065-.111.149-.226.253-.343.104-.117.35-.354.74-.712.39-.357.66-.631.81-.821.225-.288.39-.562.493-.824.104-.263.156-.539.156-.829 0-.51-.181-.936-.544-1.279-.364-.342-.863-.514-1.499-.514-.58 0-1.063.148-1.45.444-.387.296-.617.784-.69 1.463l1.23.124c.024-.36.112-.619.264-.774.152-.155.357-.233.615-.233.261 0 .465.074.613.222.148.148.222.36.222.635 0 .25-.085.501-.255.756-.126.185-.467.536-1.024 1.055-.691.641-1.154 1.156-1.388 1.544-.235.389-.375.8-.422 1.233h4.328zm2.334 0v-1.235h-1.235V24h1.235zM5.714 34.11c.624 0 1.11-.22 1.46-.66.421-.533.632-1.408.632-2.627 0-1.222-.21-2.096-.629-2.624-.351-.445-.839-.668-1.463-.668-.624 0-1.11.22-1.459.66-.422.533-.633 1.406-.633 2.619 0 1.236.192 2.095.576 2.577.384.482.89.723 1.516.723zm0-1.024a.614.614 0 0 1-.398-.14c-.115-.094-.211-.283-.287-.565-.077-.283-.115-.802-.115-1.558s.043-1.294.128-1.613c.064-.246.155-.417.272-.512a.617.617 0 0 1 .4-.143.61.61 0 0 1 .398.143c.116.095.211.284.288.567.076.283.114.802.114 1.558s-.043 1.292-.128 1.608c-.064.246-.155.417-.272.512a.617.617 0 0 1-.4.143zm4.992 1.024c.616 0 1.13-.2 1.543-.598.413-.398.62-.88.62-1.446 0-.39-.111-.722-.332-.997a1.5 1.5 0 0 0-.886-.532c.618-.337.927-.788.927-1.353 0-.399-.15-.756-.452-1.073-.366-.386-.853-.58-1.46-.58a2.25 2.25 0 0 0-.96.2 1.617 1.617 0 0 0-.667.55c-.16.232-.28.544-.359.933l1.139.194c.032-.282.123-.495.272-.642.15-.146.33-.22.54-.22.214 0 .386.065.515.194s.193.302.193.518c0 .255-.088.46-.264.613-.175.154-.43.227-.764.218l-.136 1.006c.22-.061.408-.092.566-.092.24 0 .444.09.611.272.167.182.25.428.25.739 0 .328-.086.589-.26.782a.833.833 0 0 1-.644.29.841.841 0 0 1-.607-.242c-.167-.16-.27-.394-.308-.698l-1.195.145c.062.542.284.98.668 1.316.384.335.867.503 1.45.503zm4.43-.11v-1.235h-1.235V34h1.235z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/66.svg b/ckeditor/icons/original/66.svg
new file mode 100644
index 0000000..315b4a9
--- /dev/null
+++ b/ckeditor/icons/original/66.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11.88 8.7V7.558h-1.234V8.7h1.234zm0 5.3V9.333h-1.234V14h1.234zm2.5 0v-1.235h-1.234V14h1.235zm-4.75 4.7v-1.142H8.395V18.7H9.63zm0 5.3v-4.667H8.395V24H9.63zm2.5-5.3v-1.142h-1.234V18.7h1.235zm0 5.3v-4.667h-1.234V24h1.235zm2.501 0v-1.235h-1.235V24h1.235zM7.38 28.7v-1.142H6.145V28.7H7.38zm0 5.3v-4.667H6.145V34H7.38zm2.5-5.3v-1.142H8.646V28.7H9.88zm0 5.3v-4.667H8.646V34H9.88zm2.5-5.3v-1.142h-1.234V28.7h1.235zm0 5.3v-4.667h-1.234V34h1.235zm2.501 0v-1.235h-1.235V34h1.235z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/67.svg b/ckeditor/icons/original/67.svg
new file mode 100644
index 0000000..bd98834
--- /dev/null
+++ b/ckeditor/icons/original/67.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M11.916 15V8.558h-1.301V15h1.3zm2.465 0v-1.235h-1.235V15h1.235zM9.665 25v-6.442h-1.3V25h1.3zm2.5 0v-6.442h-1.3V25h1.3zm2.466 0v-1.235h-1.235V25h1.235zm-7.216 9v-6.442h-1.3V34h1.3zm2.5 0v-6.442h-1.3V34h1.3zm2.501 0v-6.442h-1.3V34h1.3zm2.465 0v-1.235h-1.235V34h1.235z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/68.svg b/ckeditor/icons/original/68.svg
new file mode 100644
index 0000000..f25007c
--- /dev/null
+++ b/ckeditor/icons/original/68.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="M9.62 14.105c.272 0 .528-.05.768-.153s.466-.257.677-.462c.009.024.023.072.044.145.047.161.086.283.119.365h1.221a2.649 2.649 0 0 1-.222-.626c-.04-.195-.059-.498-.059-.908l.013-1.441c0-.536-.055-.905-.165-1.105-.11-.201-.3-.367-.569-.497-.27-.13-.68-.195-1.23-.195-.607 0-1.064.108-1.371.325-.308.217-.525.55-.65 1.002l1.12.202c.076-.217.176-.369.299-.455.123-.086.294-.13.514-.13.325 0 .546.05.663.152.118.101.176.27.176.508v.123c-.222.093-.622.194-1.2.303-.427.082-.755.178-.982.288-.227.11-.403.268-.53.474a1.327 1.327 0 0 0-.188.706c0 .398.138.728.415.988.277.261.656.391 1.136.391zm.368-.87a.675.675 0 0 1-.492-.189.606.606 0 0 1-.193-.448c0-.176.08-.32.241-.435.106-.07.33-.142.673-.215a7.19 7.19 0 0 0 .751-.19v.247c0 .296-.016.496-.048.602a.773.773 0 0 1-.295.409 1.07 1.07 0 0 1-.637.22zm4.645.765v-1.235h-1.235V14h1.235zM10.2 25.105c.542 0 1.003-.215 1.382-.646.38-.43.57-1.044.57-1.84 0-.771-.187-1.362-.559-1.774a1.82 1.82 0 0 0-1.41-.617c-.522 0-.973.216-1.354.65v-2.32H7.594V25h1.147v-.686a1.9 1.9 0 0 0 .67.592c.26.133.523.2.79.2zm-.299-.975c-.354 0-.638-.164-.852-.492-.153-.232-.229-.59-.229-1.073 0-.468.098-.818.295-1.048a.93.93 0 0 1 .738-.345c.302 0 .55.118.743.354.193.236.29.62.29 1.154 0 .5-.096.868-.288 1.1-.192.233-.424.35-.697.35zm4.478.87v-1.235h-1.234V25h1.234zm-4.017 9.105c.6 0 1.08-.142 1.437-.426.357-.284.599-.704.725-1.261l-1.213-.207c-.061.326-.167.555-.316.688a.832.832 0 0 1-.576.2.916.916 0 0 1-.75-.343c-.185-.228-.278-.62-.278-1.173 0-.498.091-.853.274-1.066.183-.212.429-.318.736-.318.232 0 .42.061.565.184.145.123.238.306.28.55l1.216-.22c-.146-.501-.387-.874-.722-1.119-.336-.244-.788-.366-1.356-.366-.695 0-1.245.214-1.653.643-.407.43-.61 1.03-.61 1.8 0 .762.202 1.358.608 1.788.406.431.95.646 1.633.646zM14.633 34v-1.235h-1.235V34h1.235z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/69.svg b/ckeditor/icons/original/69.svg
new file mode 100644
index 0000000..06257b1
--- /dev/null
+++ b/ckeditor/icons/original/69.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 44 44" xmlns="http://www.w3.org/2000/svg"><path d="M35 29a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17zm0-9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H18a1 1 0 0 1-1-1v-1a1 1 0 0 1 1-1h17z" fill-opacity=".163"/><path d="m7.88 15 .532-1.463h2.575L11.549 15h1.415l-2.58-6.442H9.01L6.5 15h1.38zm2.69-2.549H8.811l.87-2.39.887 2.39zM14.88 15v-1.235h-1.234V15h1.234zM9.352 25c.83-.006 1.352-.02 1.569-.044.346-.038.636-.14.872-.305.236-.166.422-.387.558-.664.137-.277.205-.562.205-.855 0-.372-.106-.695-.317-.97-.21-.276-.512-.471-.905-.585a1.51 1.51 0 0 0 .661-.567 1.5 1.5 0 0 0 .244-.83c0-.28-.066-.53-.197-.754a1.654 1.654 0 0 0-.495-.539 1.676 1.676 0 0 0-.672-.266c-.25-.042-.63-.063-1.14-.063H7.158V25h2.193zm.142-3.88H8.46v-1.49h.747c.612 0 .983.007 1.112.022.217.026.38.102.49.226.11.125.165.287.165.486a.68.68 0 0 1-.192.503.86.86 0 0 1-.525.23 11.47 11.47 0 0 1-.944.023h.18zm.17 2.795H8.46v-1.723h1.05c.592 0 .977.03 1.154.092.177.062.313.16.406.295a.84.84 0 0 1 .14.492c0 .228-.06.41-.181.547a.806.806 0 0 1-.473.257c-.126.026-.423.04-.892.04zM14.88 25v-1.235h-1.234V25h1.234zm-5.018 9.11c.691 0 1.262-.17 1.711-.512.45-.341.772-.864.965-1.567l-1.261-.4c-.109.472-.287.818-.536 1.037-.25.22-.547.33-.892.33-.47 0-.85-.173-1.143-.519-.293-.345-.44-.925-.44-1.74 0-.767.15-1.322.447-1.665.297-.343.684-.514 1.162-.514.346 0 .64.096.881.29.242.193.4.457.477.79l1.288-.307c-.147-.516-.367-.911-.66-1.187-.492-.465-1.132-.698-1.92-.698-.902 0-1.63.296-2.184.89-.554.593-.83 1.426-.83 2.498 0 1.014.275 1.813.825 2.397.551.585 1.254.877 2.11.877zM14.88 34v-1.235h-1.234V34h1.234z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/7.svg b/ckeditor/icons/original/7.svg
new file mode 100644
index 0000000..628b3dd
--- /dev/null
+++ b/ckeditor/icons/original/7.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M5.085 6.22 2.943 4.078a.75.75 0 1 1 1.06-1.06l2.592 2.59A11.094 11.094 0 0 1 10 5.068c4.738 0 8.578 3.101 8.578 5.083 0 1.197-1.401 2.803-3.555 3.887l1.714 1.713a.75.75 0 0 1-.09 1.138.488.488 0 0 1-.15.084.75.75 0 0 1-.821-.16L6.17 7.304c-.258.11-.51.233-.757.365l6.239 6.24-.006.005.78.78c-.388.094-.78.166-1.174.215l-1.11-1.11h.011L4.55 8.197a7.2 7.2 0 0 0-.665.514l-.112.098 4.897 4.897-.005.006 1.276 1.276a10.164 10.164 0 0 1-1.477-.117l-.479-.479-.009.009-4.863-4.863-.022.031a2.563 2.563 0 0 0-.124.2c-.043.077-.08.158-.108.241a.534.534 0 0 0-.028.133.29.29 0 0 0 .008.072.927.927 0 0 0 .082.226c.067.133.145.26.234.379l3.242 3.365.025.01.59.623c-3.265-.918-5.59-3.155-5.59-4.668 0-1.194 1.448-2.838 3.663-3.93zm7.07.531a4.632 4.632 0 0 1 1.108 5.992l.345.344.046-.018a9.313 9.313 0 0 0 2-1.112c.256-.187.5-.392.727-.613.137-.134.27-.277.392-.431.072-.091.141-.185.203-.286.057-.093.107-.19.148-.292a.72.72 0 0 0 .036-.12.29.29 0 0 0 .008-.072.492.492 0 0 0-.028-.133.999.999 0 0 0-.036-.096 2.165 2.165 0 0 0-.071-.145 2.917 2.917 0 0 0-.125-.2 3.592 3.592 0 0 0-.263-.335 5.444 5.444 0 0 0-.53-.523 7.955 7.955 0 0 0-1.054-.768 9.766 9.766 0 0 0-1.879-.891c-.337-.118-.68-.219-1.027-.301zm-2.85.21-.069.002a.508.508 0 0 0-.254.097.496.496 0 0 0-.104.679.498.498 0 0 0 .326.199l.045.005c.091.003.181.003.272.012a2.45 2.45 0 0 1 2.017 1.513c.024.061.043.125.069.185a.494.494 0 0 0 .45.287h.008a.496.496 0 0 0 .35-.158.482.482 0 0 0 .13-.335.638.638 0 0 0-.048-.219 3.379 3.379 0 0 0-.36-.723 3.438 3.438 0 0 0-2.791-1.543l-.028-.001h-.013z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/70.svg b/ckeditor/icons/original/70.svg
new file mode 100644
index 0000000..f140b5f
--- /dev/null
+++ b/ckeditor/icons/original/70.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 64 42" xmlns="http://www.w3.org/2000/svg"><path d="M47.426 17V3.713L63.102 0v19.389h-.001l.001.272c0 1.595-2.032 3.43-4.538 4.098-2.506.668-4.538-.083-4.538-1.678 0-1.594 2.032-3.43 4.538-4.098.914-.244 2.032-.565 2.888-.603V4.516L49.076 7.447v9.556A1.014 1.014 0 0 0 49 17h-1.574zM29.5 17h-8.343a7.073 7.073 0 1 0-4.657 4.06v3.781H3.3a2.803 2.803 0 0 1-2.8-2.804V8.63a2.803 2.803 0 0 1 2.8-2.805h4.082L8.58 2.768A1.994 1.994 0 0 1 10.435 1.5h8.985c.773 0 1.477.448 1.805 1.149l1.488 3.177H26.7c1.546 0 2.8 1.256 2.8 2.805V17zm-11.637 0H17.5a1 1 0 0 0-1 1v.05A4.244 4.244 0 1 1 17.863 17zm29.684 2c.97 0 .953-.048.953.889v20.743c0 .953.016.905-.953.905H19.453c-.97 0-.953.048-.953-.905V19.89c0-.937-.016-.889.97-.889h28.077zm-4.701 19.338V22.183H24.154v16.155h18.692zM20.6 21.375v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616v-1.616H20.6zm0 3.231v1.616h1.616V37.53H20.6zm24.233-16.155v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615v-1.616h-1.615zm0 3.231v1.616h1.615V37.53h-1.615zM29.485 25.283a.4.4 0 0 1 .593-.35l9.05 4.977a.4.4 0 0 1 0 .701l-9.05 4.978a.4.4 0 0 1-.593-.35v-9.956z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/71.svg b/ckeditor/icons/original/71.svg
new file mode 100644
index 0000000..1bdb82a
--- /dev/null
+++ b/ckeditor/icons/original/71.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M18.68 3.03c.6 0 .59-.03.59.55v12.84c0 .59.01.56-.59.56H1.29c-.6 0-.59.03-.59-.56V3.58c0-.58-.01-.55.6-.55h17.38zM15.77 15V5H4.2v10h11.57zM2 4v1h1V4H2zm0 2v1h1V6H2zm0 2v1h1V8H2zm0 2v1h1v-1H2zm0 2v1h1v-1H2zm0 2v1h1v-1H2zM17 4v1h1V4h-1zm0 2v1h1V6h-1zm0 2v1h1V8h-1zm0 2v1h1v-1h-1zm0 2v1h1v-1h-1zm0 2v1h1v-1h-1zM7.5 7.177a.4.4 0 0 1 .593-.351l5.133 2.824a.4.4 0 0 1 0 .7l-5.133 2.824a.4.4 0 0 1-.593-.35V7.176v.001z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/72.svg b/ckeditor/icons/original/72.svg
new file mode 100644
index 0000000..de00048
--- /dev/null
+++ b/ckeditor/icons/original/72.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3.598.687h1.5v5h-1.5zm14.5 0h1.5v5h-1.5z"/><path d="M19.598 4.187v1.5h-16v-1.5zm-16 14.569h1.5v-5h-1.5zm14.5 0h1.5v-5h-1.5z"/><path d="M19.598 15.256v-1.5h-16v1.5zM5.081 9h6v2h-6zm8 0h6v2h-6zm-9.483 1L0 12.5v-5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/73.svg b/ckeditor/icons/original/73.svg
new file mode 100644
index 0000000..0df1d64
--- /dev/null
+++ b/ckeditor/icons/original/73.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M8.69 14.915c.053.052.173.083.36.093a.366.366 0 0 1 .345.485l-.003.01a.738.738 0 0 1-.697.497h-2.67a.374.374 0 0 1-.353-.496l.013-.038a.681.681 0 0 1 .644-.458c.197-.012.325-.043.386-.093a.28.28 0 0 0 .072-.11L9.592 4.5H6.269c-.359-.017-.609.013-.75.09-.142.078-.289.265-.442.563-.192.29-.516.464-.864.464H4.17a.43.43 0 0 1-.407-.569L4.46 3h13.08l-.62 2.043a.81.81 0 0 1-.775.574h-.114a.486.486 0 0 1-.486-.486c.001-.284-.054-.464-.167-.54-.112-.076-.367-.106-.766-.091h-3.28l-2.68 10.257c-.006.074.007.127.038.158zM3 17h8a.5.5 0 1 1 0 1H3a.5.5 0 1 1 0-1zm11.299 1.17a.75.75 0 1 1-1.06-1.06l1.414-1.415-1.415-1.414a.75.75 0 0 1 1.06-1.06l1.415 1.414 1.414-1.415a.75.75 0 1 1 1.06 1.06l-1.413 1.415 1.414 1.415a.75.75 0 0 1-1.06 1.06l-1.415-1.414-1.414 1.414z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/74.svg b/ckeditor/icons/original/74.svg
new file mode 100644
index 0000000..0bf9e95
--- /dev/null
+++ b/ckeditor/icons/original/74.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m12.5 0 5 4.5v15.003h-16V0h11zM3 1.5v3.25l-1.497 1-.003 8 1.5 1v3.254L7.685 18l-.001 1.504H17.5V8.002L16 9.428l-.004-4.22-4.222-3.692L3 1.5z"/><path d="M4.06 6.64a.75.75 0 0 1 .958 1.15l-.085.07L2.29 9.75l2.646 1.89c.302.216.4.62.232.951l-.058.095a.75.75 0 0 1-.951.232l-.095-.058-3.5-2.5V9.14l3.496-2.5zm4.194 6.22a.75.75 0 0 1-.958-1.149l.085-.07 2.643-1.89-2.646-1.89a.75.75 0 0 1-.232-.952l.058-.095a.75.75 0 0 1 .95-.232l.096.058 3.5 2.5v1.22l-3.496 2.5zm7.644-.836 2.122 2.122-5.825 5.809-2.125-.005.003-2.116zm2.539-1.847 1.414 1.414a.5.5 0 0 1 0 .707l-1.06 1.06-2.122-2.12 1.061-1.061a.5.5 0 0 1 .707 0z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/75.svg b/ckeditor/icons/original/75.svg
new file mode 100644
index 0000000..8e0251b
--- /dev/null
+++ b/ckeditor/icons/original/75.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M10 2.5a7.47 7.47 0 0 1 4.231 1.31 7.268 7.268 0 0 1 2.703 3.454 7.128 7.128 0 0 1 .199 4.353c-.39 1.436-1.475 2.72-2.633 3.677h2.013c0-.226.092-.443.254-.603a.876.876 0 0 1 1.229 0c.163.16.254.377.254.603v.853c0 .209-.078.41-.22.567a.873.873 0 0 1-.547.28l-.101.006h-4.695a.517.517 0 0 1-.516-.518v-1.265c0-.21.128-.398.317-.489a5.601 5.601 0 0 0 2.492-2.371 5.459 5.459 0 0 0 .552-3.693 5.53 5.53 0 0 0-1.955-3.2A5.71 5.71 0 0 0 10 4.206 5.708 5.708 0 0 0 6.419 5.46 5.527 5.527 0 0 0 4.46 8.663a5.457 5.457 0 0 0 .554 3.695 5.6 5.6 0 0 0 2.497 2.37.55.55 0 0 1 .317.49v1.264c0 .286-.23.518-.516.518H2.618a.877.877 0 0 1-.614-.25.845.845 0 0 1-.254-.603v-.853c0-.226.091-.443.254-.603a.876.876 0 0 1 1.228 0c.163.16.255.377.255.603h1.925c-1.158-.958-2.155-2.241-2.545-3.678a7.128 7.128 0 0 1 .199-4.352 7.268 7.268 0 0 1 2.703-3.455A7.475 7.475 0 0 1 10 2.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/76.svg b/ckeditor/icons/original/76.svg
new file mode 100644
index 0000000..9b307bc
--- /dev/null
+++ b/ckeditor/icons/original/76.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M7 16.4c-.8-.4-1.5-.9-2.2-1.5a.6.6 0 0 1-.2-.5l.3-.6h1c1 1.2 2.1 1.7 3.7 1.7 1 0 1.8-.3 2.3-.6.6-.4.6-1.2.6-1.3.2-1.2-.9-2.1-.9-2.1h2.1c.3.7.4 1.2.4 1.7v.8l-.6 1.2c-.6.8-1.1 1-1.6 1.2a6 6 0 0 1-2.4.6c-1 0-1.8-.3-2.5-.6zM6.8 9 6 8.3c-.4-.5-.5-.8-.5-1.6 0-.7.1-1.3.5-1.8.4-.6 1-1 1.6-1.3a6.3 6.3 0 0 1 4.7 0 4 4 0 0 1 1.7 1l.3.7c0 .1.2.4-.2.7-.4.2-.9.1-1 0a3 3 0 0 0-1.2-1c-.4-.2-1-.3-2-.4-.7 0-1.4.2-2 .6-.8.6-1 .8-1 1.5 0 .8.5 1 1.2 1.5.6.4 1.1.7 1.9 1H6.8z"/><path d="M3 10.5V9h14v1.5z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/77.svg b/ckeditor/icons/original/77.svg
new file mode 100644
index 0000000..0cb413e
--- /dev/null
+++ b/ckeditor/icons/original/77.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m7.03 10.349 3.818-3.819a.8.8 0 1 1 1.132 1.132L8.16 11.48l3.819 3.818a.8.8 0 1 1-1.132 1.132L7.03 12.61l-3.818 3.82a.8.8 0 1 1-1.132-1.132L5.9 11.48 2.08 7.662A.8.8 0 1 1 3.212 6.53l3.818 3.82zm8.147 7.829h2.549c.254 0 .447.05.58.152a.49.49 0 0 1 .201.413.54.54 0 0 1-.159.393c-.105.108-.266.162-.48.162h-3.594c-.245 0-.435-.066-.572-.197a.621.621 0 0 1-.205-.463c0-.114.044-.265.132-.453a1.62 1.62 0 0 1 .288-.444c.433-.436.824-.81 1.172-1.122.348-.312.597-.517.747-.615.267-.183.49-.368.667-.553.177-.185.312-.375.405-.57.093-.194.139-.384.139-.57a1.008 1.008 0 0 0-.554-.917 1.197 1.197 0 0 0-.56-.133c-.426 0-.761.182-1.005.546a2.332 2.332 0 0 0-.164.39 1.609 1.609 0 0 1-.258.488c-.096.114-.237.17-.423.17a.558.558 0 0 1-.405-.156.568.568 0 0 1-.161-.427c0-.218.05-.446.151-.683.101-.238.252-.453.452-.646s.454-.349.762-.467a2.998 2.998 0 0 1 1.081-.178c.498 0 .923.076 1.274.228a1.916 1.916 0 0 1 1.004 1.032 1.984 1.984 0 0 1-.156 1.794c-.2.32-.405.572-.613.754-.208.182-.558.468-1.048.857-.49.39-.826.691-1.008.906a2.703 2.703 0 0 0-.24.309z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/78.svg b/ckeditor/icons/original/78.svg
new file mode 100644
index 0000000..92b5eb1
--- /dev/null
+++ b/ckeditor/icons/original/78.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M15.677 8.678h2.549c.254 0 .447.05.58.152a.49.49 0 0 1 .201.413.54.54 0 0 1-.159.393c-.105.108-.266.162-.48.162h-3.594c-.245 0-.435-.066-.572-.197a.621.621 0 0 1-.205-.463c0-.114.044-.265.132-.453a1.62 1.62 0 0 1 .288-.444c.433-.436.824-.81 1.172-1.122.348-.312.597-.517.747-.615.267-.183.49-.368.667-.553.177-.185.312-.375.405-.57.093-.194.139-.384.139-.57a1.008 1.008 0 0 0-.554-.917 1.197 1.197 0 0 0-.56-.133c-.426 0-.761.182-1.005.546a2.332 2.332 0 0 0-.164.39 1.609 1.609 0 0 1-.258.488c-.096.114-.237.17-.423.17a.558.558 0 0 1-.405-.156.568.568 0 0 1-.161-.427c0-.218.05-.446.151-.683.101-.238.252-.453.452-.646s.454-.349.762-.467a2.998 2.998 0 0 1 1.081-.178c.498 0 .923.076 1.274.228a1.916 1.916 0 0 1 1.004 1.032 1.984 1.984 0 0 1-.156 1.794c-.2.32-.405.572-.613.754-.208.182-.558.468-1.048.857-.49.39-.826.691-1.008.906a2.703 2.703 0 0 0-.24.309zM7.03 10.349l3.818-3.819a.8.8 0 1 1 1.132 1.132L8.16 11.48l3.819 3.818a.8.8 0 1 1-1.132 1.132L7.03 12.61l-3.818 3.82a.8.8 0 1 1-1.132-1.132L5.9 11.48 2.08 7.662A.8.8 0 1 1 3.212 6.53l3.818 3.82z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/79.svg b/ckeditor/icons/original/79.svg
new file mode 100644
index 0000000..374ef88
--- /dev/null
+++ b/ckeditor/icons/original/79.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3 6v3h4V6H3zm0 4v3h4v-3H3zm0 4v3h4v-3H3zm5 3h4v-3H8v3zm5 0h4v-3h-4v3zm4-4v-3h-4v3h4zm0-4V6h-4v3h4zm1.5 8a1.5 1.5 0 0 1-1.5 1.5H3A1.5 1.5 0 0 1 1.5 17V4c.222-.863 1.068-1.5 2-1.5h13c.932 0 1.778.637 2 1.5v13zM12 13v-3H8v3h4zm0-4V6H8v3h4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/8.svg b/ckeditor/icons/original/8.svg
new file mode 100644
index 0000000..1449860
--- /dev/null
+++ b/ckeditor/icons/original/8.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M6.91 10.54c.26-.23.64-.21.88.03l3.36 3.14 2.23-2.06a.64.64 0 0 1 .87 0l2.52 2.97V4.5H3.2v10.12l3.71-4.08zm10.27-7.51c.6 0 1.09.47 1.09 1.05v11.84c0 .59-.49 1.06-1.09 1.06H2.79c-.6 0-1.09-.47-1.09-1.06V4.08c0-.58.49-1.05 1.1-1.05h14.38zm-5.22 5.56a1.96 1.96 0 1 1 3.4-1.96 1.96 1.96 0 0 1-3.4 1.96z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/80.svg b/ckeditor/icons/original/80.svg
new file mode 100644
index 0000000..5df1bb7
--- /dev/null
+++ b/ckeditor/icons/original/80.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1h15A1.5 1.5 0 0 1 19 2.5v15a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1zM2 2v16h16V2H2z" opacity=".6"/><path d="M18 7v1H2V7h16zm0 5v1H2v-1h16z" opacity=".6"/><path d="M14 1v18a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V1a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1zm-2 1H8v4h4V2zm0 6H8v4h4V8zm0 6H8v4h4v-4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/81.svg b/ckeditor/icons/original/81.svg
new file mode 100644
index 0000000..95da77d
--- /dev/null
+++ b/ckeditor/icons/original/81.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1h15A1.5 1.5 0 0 1 19 2.5v15a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1zM2 2v16h16V2H2z" opacity=".6"/><path d="M7 2h1v16H7V2zm5 0h1v16h-1V2z" opacity=".6"/><path d="M1 6h18a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1zm1 2v4h4V8H2zm6 0v4h4V8H8zm6 0v4h4V8h-4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/82.svg b/ckeditor/icons/original/82.svg
new file mode 100644
index 0000000..8ac1e13
--- /dev/null
+++ b/ckeditor/icons/original/82.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1h15A1.5 1.5 0 0 1 19 2.5v15a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1zM2 2v16h16V2H2z" opacity=".6"/><path d="M7 2h1v16H7V2zm5 0h1v7h-1V2zm6 5v1H2V7h16zM8 12v1H2v-1h6z" opacity=".6"/><path d="M7 7h12a1 1 0 0 1 1 1v11a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1zm1 2v9h10V9H8z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/83.svg b/ckeditor/icons/original/83.svg
new file mode 100644
index 0000000..11a9754
--- /dev/null
+++ b/ckeditor/icons/original/83.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m11.105 18-.17 1H2.5A1.5 1.5 0 0 1 1 17.5v-15A1.5 1.5 0 0 1 2.5 1h15A1.5 1.5 0 0 1 19 2.5v9.975l-.85-.124-.15-.302V8h-5v4h.021l-.172.351-1.916.28-.151.027c-.287.063-.54.182-.755.341L8 13v5h3.105zM2 12h5V8H2v4zm10-4H8v4h4V8zM2 2v5h5V2H2zm0 16h5v-5H2v5zM13 7h5V2h-5v5zM8 2v5h4V2H8z" opacity=".6"/><path d="m15.5 11.5 1.323 2.68 2.957.43-2.14 2.085.505 2.946L15.5 18.25l-2.645 1.39.505-2.945-2.14-2.086 2.957-.43L15.5 11.5zM13 6a1 1 0 0 1 1 1v3.172a2.047 2.047 0 0 0-.293.443l-.858 1.736-1.916.28-.151.027A1.976 1.976 0 0 0 9.315 14H7a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h6zm-1 2H8v4h4V8z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/84.svg b/ckeditor/icons/original/84.svg
new file mode 100644
index 0000000..e80de82
--- /dev/null
+++ b/ckeditor/icons/original/84.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M8 2v5h4V2h1v5h5v1h-5v4h.021l-.172.351-1.916.28-.151.027c-.287.063-.54.182-.755.341L8 13v5H7v-5H2v-1h5V8H2V7h5V2h1zm4 6H8v4h4V8z" opacity=".6"/><path d="m15.5 11.5 1.323 2.68 2.957.43-2.14 2.085.505 2.946L15.5 18.25l-2.645 1.39.505-2.945-2.14-2.086 2.957-.43L15.5 11.5zM17 1a2 2 0 0 1 2 2v9.475l-.85-.124-.857-1.736a2.048 2.048 0 0 0-.292-.44L17 3H3v14h7.808l.402.392L10.935 19H3a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h14z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/85.svg b/ckeditor/icons/original/85.svg
new file mode 100644
index 0000000..99ddba1
--- /dev/null
+++ b/ckeditor/icons/original/85.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m2.315 14.705 2.224-2.24a.689.689 0 0 1 .963 0 .664.664 0 0 1 0 .949L2.865 16.07a.682.682 0 0 1-.112.089.647.647 0 0 1-.852-.051L.688 14.886a.635.635 0 0 1 0-.903.647.647 0 0 1 .91 0l.717.722zm5.185.045a.75.75 0 0 1 .75-.75h9.5a.75.75 0 1 1 0 1.5h-9.5a.75.75 0 0 1-.75-.75zM2.329 5.745l2.21-2.226a.689.689 0 0 1 .963 0 .664.664 0 0 1 0 .95L2.865 7.125a.685.685 0 0 1-.496.196.644.644 0 0 1-.468-.187L.688 5.912a.635.635 0 0 1 0-.903.647.647 0 0 1 .91 0l.73.736zM7.5 5.75A.75.75 0 0 1 8.25 5h9.5a.75.75 0 1 1 0 1.5h-9.5a.75.75 0 0 1-.75-.75z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/86.svg b/ckeditor/icons/original/86.svg
new file mode 100644
index 0000000..149b64f
--- /dev/null
+++ b/ckeditor/icons/original/86.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="M3 18v-1.5h14V18zm2.2-8V3.6c0-.4.4-.6.8-.6.3 0 .7.2.7.6v6.2c0 2 1.3 2.8 3.2 2.8 1.9 0 3.4-.9 3.4-2.9V3.6c0-.3.4-.5.8-.5.3 0 .7.2.7.5V10c0 2.7-2.2 4-4.9 4-2.6 0-4.7-1.2-4.7-4z"/></svg> \ No newline at end of file
diff --git a/ckeditor/icons/original/9.svg b/ckeditor/icons/original/9.svg
new file mode 100644
index 0000000..2c462d1
--- /dev/null
+++ b/ckeditor/icons/original/9.svg
@@ -0,0 +1 @@
+<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m9.239 13.938-2.88-1.663a.75.75 0 0 1 .75-1.3L9 12.067V4.75a.75.75 0 1 1 1.5 0v7.318l1.89-1.093a.75.75 0 0 1 .75 1.3l-2.879 1.663a.752.752 0 0 1-.511.187.752.752 0 0 1-.511-.187zM4.25 17a.75.75 0 1 1 0-1.5h10.5a.75.75 0 0 1 0 1.5H4.25z"/></svg> \ No newline at end of file
diff --git a/coinprice b/coinprice
deleted file mode 100644
index 2a64fae..0000000
--- a/coinprice
+++ /dev/null
@@ -1 +0,0 @@
-0.25 \ No newline at end of file
diff --git a/equestriadev.svg b/equestriadev.svg
deleted file mode 100644
index f3cd498..0000000
--- a/equestriadev.svg
+++ /dev/null
@@ -1,223 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 27.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 268 136" style="enable-background:new 0 0 268 136;" xml:space="preserve">
-<style type="text/css">
- .st0{opacity:0;fill:#FFFFFF;}
- .st1{fill:#618CC7;}
- .st2{opacity:0;}
- .st3{fill:#FFFFFF;}
- .st4{fill:url(#path4837_00000166650153113165948570000009148538672395535259_);}
- .st5{fill:#8F65D0;}
-</style>
- <rect class="st0" width="268" height="136"/>
- <g>
- <path class="st1" d="M139.1,90c-1.4,0-2.5-0.4-3.3-1.2c-0.8-0.8-1.2-1.9-1.2-3.2c0-1.4,0.4-2.5,1.2-3.3c0.8-0.8,1.9-1.2,3.3-1.2
- c1.4,0,2.5,0.4,3.3,1.2c0.8,0.8,1.2,1.9,1.2,3.3c0,1.3-0.4,2.4-1.2,3.2C141.6,89.6,140.5,90,139.1,90z"/>
- <path class="st1" d="M169.8,90c-3,0-5.3-1-7.2-3c-1.8-2-2.7-4.7-2.7-8v-8.7c0-3.4,0.9-6.1,2.7-8.1c1.8-2,4.2-3,7.2-3
- c2.4,0,4.4,0.7,5.9,2c1.5,1.3,2.2,3.1,2.2,5.3l-1-1.1h1.1l-0.1-6.8v-8.6h4.9v39.4h-4.9v-5.7h-1l1-1.1c0,2.3-0.7,4.1-2.2,5.4
- C174.2,89.4,172.3,90,169.8,90z M171.4,85.8c2,0,3.6-0.6,4.8-1.9c1.2-1.3,1.7-3,1.7-5.2v-8.1c0-2.2-0.6-4-1.7-5.2
- c-1.2-1.3-2.7-1.9-4.8-1.9c-2.1,0-3.7,0.6-4.9,1.8c-1.2,1.2-1.8,3-1.8,5.3v8.1c0,2.3,0.6,4.1,1.8,5.3
- C167.8,85.2,169.4,85.8,171.4,85.8z"/>
- <path class="st1" d="M204,90c-2.3,0-4.4-0.5-6.1-1.4c-1.7-0.9-3.1-2.3-4.1-4c-1-1.7-1.4-3.7-1.4-6v-8.1c0-2.3,0.5-4.3,1.4-6
- c1-1.7,2.3-3,4.1-3.9c1.7-0.9,3.8-1.4,6.1-1.4c2.3,0,4.4,0.5,6.1,1.4c1.7,0.9,3.1,2.3,4.1,3.9c1,1.7,1.4,3.7,1.4,6v5.2h-18.5v2.9
- c0,2.3,0.6,4.1,1.8,5.4c1.2,1.2,2.9,1.9,5.1,1.9c1.9,0,3.4-0.3,4.5-1c1.2-0.7,1.9-1.7,2.1-3h4.9c-0.3,2.5-1.5,4.5-3.6,5.9
- C209.7,89.3,207.1,90,204,90z M210.8,72.6v-2c0-2.3-0.6-4.1-1.8-5.4c-1.2-1.3-2.9-1.9-5.1-1.9c-2.2,0-3.9,0.6-5.1,1.9
- c-1.2,1.3-1.8,3.1-1.8,5.4v1.6h14.1L210.8,72.6z"/>
- <path class="st1" d="M233.1,89.5l-9.9-29.7h5l6.6,20c0.4,1.2,0.8,2.3,1.1,3.4c0.3,1.1,0.6,2,0.7,2.6c0.2-0.6,0.4-1.5,0.8-2.6
- c0.3-1.1,0.7-2.2,1-3.4l6.4-20h4.9l-9.9,29.7H233.1z"/>
-</g>
- <g>
- <g class="st2">
- <rect x="13" y="3.1" class="st3" width="127.9" height="127.9"/>
- <path d="M140.9,3.1v127.9H13.1V3.1H140.9 M141,3H13v128h128V3L141,3z"/>
- </g>
- <g>
-
- <linearGradient id="path4837_00000052073709690196091730000014251582116659255426_" gradientUnits="userSpaceOnUse" x1="-1256.2603" y1="-2776.9675" x2="-1178.5172" y2="-2703.2024" gradientTransform="matrix(0.75 0 0 0.75 994.4073 2142.3418)">
- <stop offset="0" style="stop-color:#D6ACF9"/>
- <stop offset="1" style="stop-color:#9FE3F0"/>
- </linearGradient>
-
- <path id="path4837_00000110442023762890412830000002005018766219440575_" style="fill:url(#path4837_00000052073709690196091730000014251582116659255426_);" d="
- M29.4,6.5c-1,0-0.6,2.6,2.1,9.6c6.1,15.5,16.9,29.2,31.2,35.7c-12.7-4-18.4-9.2-25.6-13.6c-5.2-3.1-12.8-9.1-17.6-13.8
- c-7.3-7.2-7.1-1.9-4.6,4.2c4,9.7,14.5,16.6,22.3,21.2C25.9,46.3,13,32.7,13.5,37.4c0.3,2.9,4.5,9,11.1,14.5
- c4.4,3.7,9.8,7,15.4,8.8C28.4,58,21,51.7,19.8,52c-2,0.5-1.8,2.7,1.9,7.5c5.9,7.8,13,11.7,22.4,13c-4.9-0.1-8.9-0.9-11.7-1.5
- c-10.7-2.5-2.8,3.3,0.4,5.6c3.3,2.4,7.4,4.2,11.6,5.3c5,1.4,9.7,2.4,14.3,2.7c-8.3,0.6-18.2-0.3-19.1,1.2c-1.2,2,4.1,4.4,11.2,5.7
- c3.9,0.7,6,0.9,11.1,0.5c-5.7,1-8.4,2-8.9,2.8c-1.7,2.4,11.4,4.7,20.9,1.4C70,97.9,68.9,99,70,99.2c0.9,0.2,2.8-0.8,7.2-1.7
- c-11.6,4.6-3,5.7,3.4,4.1c-6.5,3.4,2,3.9,5.5,3.9c-4.2,1-7,1.6-8.3,2.5c-3.5,2.5,3.8,4.3,11.9,2.3c-9.4,3.8-8.8,4.8-2.1,6.6
- c3.6,1,7,0.3,10.2-0.1c-6.1,1.6,2.5,2.1,4.6,1.3c-3.4,1.9-8.4,1.1-8.9,2c-0.6,1.4,3.5,3.1,9,3.1c-4.7,1.7,3.7,2.3,5.5,2.1
- c-6,2.9,2.5,3.1,9.3,1.6c4.1-0.9,8.1-2.3,9.5-3.6c10.3-0.4,13.9-15.9,14.1-16.3c0.1-0.5-5.8-2.6-11.2-5.1
- c-4.5-2.1-9.1-5.4-12.5-8.4l-14.1-17.4c-3.1-4.8-6-9.8-8.9-14.7c-2.8-4.7-4.9-4.3-5.2-3.1c-4-3.8-11.1-6-19.6-11
- c-6.3-3.8-13.1-9.5-20.7-18C43.1,22.5,31.9,6.5,29.4,6.5z"/>
- <path id="path4797_00000153665292169574654090000009610625505638070163_" class="st5" d="M137.4,104.4c-2.1-0.9-4.8-1.7-7.5-3
- c-5.4-2.5-11-6.8-14.4-10.2C107,82.4,101,71.7,94.7,61c-1.7-2.9-3.1-3.9-4.3-4.1c-0.6-0.1-1.1,0.2-1.3,0.6
- c-0.1,0.1-0.1,0.3-0.2,0.4c-1.2-1-3-2.2-5-3.2c-2.4-1.2-4.9-2.2-6.6-1.9c-0.1,0-0.2,0.1-0.2,0.1c-0.1,0.1-0.1,0.2-0.1,0.2
- c0,0.1,0,0.2,0.1,0.2c0.1,0.1,0.1,0.2,0.2,0.3c0.2,0.2,0.5,0.6,0.9,0.9c0.4,0.4,1,0.8,1.7,1.3c-3.2-0.8-5.9-1.1-8.1-1.1
- c-2.7,0-4.6,0.4-5.6,1.2c-0.1,0.1-0.2,0.2-0.2,0.4c0,0.2,0,0.3,0.1,0.4c0.1,0.2,0.3,0.4,0.6,0.5c0.5,0.3,1.4,0.7,2.5,1.1
- c1.4,0.5,3.2,1.1,5.4,1.7c-0.3,0-0.6,0-0.9,0c-1.2,0.1-2,0.3-2.4,0.7c-0.2,0.2-0.4,0.5-0.3,0.8c0,0.3,0.2,0.6,0.3,0.8
- c0.4,0.5,1,0.9,1.9,1.3c2.3,1,5.8,1.9,8.3,2.5c-1.4,0.2-2.3,0.5-2.9,0.7c-0.5,0.2-0.8,0.4-0.9,0.8c0,0.2,0,0.4,0.1,0.6
- c0.1,0.2,0.2,0.3,0.4,0.4c0.6,0.5,1.7,0.9,3,1.3c1.7,0.5,3.7,0.9,5.6,1.1c-0.9,0.2-1.6,0.4-2.1,0.6c-0.5,0.2-0.8,0.4-1,0.7
- c-0.2,0.3-0.1,0.8,0.1,1.1c0.4,0.6,1.1,1,1.9,1.1c0.8,0.1,1.6,0.1,2.4,0c1.7-0.3,3.4-0.9,4.3-1.6c0.6-0.4,1.1-1,1.4-1.6
- c-0.6,0.3-1.2,0.6-1.8,1c-1.7,1.2-2.5,2.4-2.6,3.5c0,0.4,0,0.8,0.3,1.1s0.6,0.5,1,0.5c0.5,0.1,1.1-0.1,1.8-0.4
- c-0.2,0.4-0.3,0.8-0.3,1.1c0,0.3,0,0.6,0.2,0.9c0.2,0.2,0.4,0.4,0.7,0.5c0.5,0.1,1.2,0,1.9-0.4c0.5-0.2,1-0.5,1.5-0.9
- c-0.1,0.5,0,1.1,0,1.7c0.1,1,0.2,2.1,0.5,2.9c0.1,0.4,0.3,0.7,0.5,0.9c0.1,0.1,0.2,0.2,0.4,0.3c0.2,0,0.4,0,0.5-0.1
- c0.3-0.2,0.4-0.5,0.6-0.9c0.4,2.5,1.5,5.1,2.4,6.9c0.3,0.6,0.6,1.1,0.9,1.5c0.3,0.4,0.5,0.6,0.9,0.8c0.2,0,0.4,0,0.6-0.1
- c0,0,0.1-0.1,0.1-0.1c0.2,0.6,0.5,1.2,0.9,1.7c0.4,0.5,0.8,0.9,1.4,1.1c0.2,0.1,0.5,0.1,0.8,0.1c-0.3,0.3-0.5,0.5-0.7,0.8
- c-0.2,0.2-0.3,0.4-0.5,0.7c-0.1,0.2-0.2,0.5-0.1,0.7c0.1,0.2,0.3,0.4,0.6,0.5c0.3,0.1,0.6,0.1,1,0.1c0.5,0,1.1-0.1,1.9-0.2
- c-0.1,0.1-0.2,0.2-0.3,0.3c-0.4,0.3-0.6,0.6-0.7,0.9c0,0.2,0,0.3,0,0.5c0.1,0.1,0.2,0.2,0.3,0.3c0.2,0.1,0.5,0.2,0.8,0.3
- c0.5,0.2,1.2,0.2,1.9,0.3c-0.1,0.2-0.2,0.5-0.2,0.7c0,0.4,0.2,0.9,0.4,1.2c0.6,0.7,1.6,1.3,2.8,1.8c1.2,0.5,2.5,0.9,3.7,1.1
- c1.2,0.2,2.2,0.3,2.9,0.1c0.4-0.1,0.8-0.4,1-0.8c-0.4,0-0.8,0.1-1.2,0.1c-1.3,0.2-2.1,0.5-2.7,0.9c-0.3,0.2-0.4,0.5-0.5,0.8
- c0,0.3,0,0.6,0.2,0.8c0.3,0.5,0.9,0.8,1.6,1.1c0.6,0.2,1.4,0.4,2.2,0.4c-0.1,0.3-0.1,0.5-0.1,0.8c0,0.4,0.2,0.7,0.5,0.9
- c0.5,0.4,1.2,0.4,2,0.4c0.8-0.1,1.6-0.2,2.4-0.4c0.1,0,0.2,0,0.4-0.1c-0.4,0.3-0.7,0.6-0.8,0.9c-0.2,0.3-0.2,0.5-0.1,0.8
- c0.1,0.3,0.3,0.4,0.6,0.5c0.5,0.2,1.2,0.2,2,0c0.4-0.1,0.9-0.2,1.3-0.3c-0.1,0.1-0.1,0.2-0.1,0.3c-0.2,0.5-0.1,1,0.2,1.3
- c0.6,0.7,1.7,0.9,2.9,0.8l-0.4-0.3l0,0c0.1,0.5,0.2,1,0.5,1.4c0.2,0.3,0.6,0.6,0.9,0.7c0.7,0.2,1.5,0.2,1.9,0.1
- c0.5-0.1,0.7-0.1,0.7-0.1s-0.3,0-0.7-0.1c-0.4,0-1.1-0.1-1.7-0.4c-0.2-0.1-0.4-0.3-0.6-0.6c-0.2-0.3-0.3-0.7-0.3-1.2
- c0,0,0,0,0-0.3c-0.1,0-0.2,0-0.3,0c-1.1,0.1-2.1-0.2-2.4-0.6c-0.2-0.2-0.2-0.3-0.1-0.6c0.1-0.3,0.4-0.6,1-1.1l2.2-1.6l-2.5,1
- c-0.9,0.4-1.8,0.6-2.6,0.7c-0.7,0.1-1.3,0.1-1.6,0c-0.1,0-0.1-0.1-0.1-0.1c0,0,0-0.1,0.1-0.2c0.2-0.3,0.8-0.9,1.8-1.5
- c0.3-0.2,0.5-0.3,0.8-0.5c-0.3-0.1-0.6-0.2-1-0.2c-0.5,0-1.2,0.1-1.9,0.3c-0.8,0.2-1.6,0.3-2.3,0.4c-0.7,0.1-1.3,0-1.5-0.2
- c-0.1-0.1-0.2-0.2-0.2-0.4c0-0.2,0-0.5,0.2-0.9c0.1-0.2,0.1-0.3,0.2-0.5c-0.2,0-0.4,0-0.6,0c-0.9,0-1.8-0.2-2.4-0.4
- c-0.7-0.2-1.1-0.6-1.3-0.8c-0.1-0.1-0.1-0.2-0.1-0.3c0-0.1,0.1-0.2,0.2-0.3c0.3-0.3,1.1-0.6,2.3-0.7l-0.2-0.7
- c-0.4,0.1-1.4,0.1-2.5-0.1c-1.1-0.2-2.4-0.6-3.5-1c-1.1-0.5-2-1.1-2.5-1.6c-0.2-0.3-0.3-0.5-0.3-0.8c0-0.2,0.1-0.5,0.5-0.8
- c0.2-0.2,0.4-0.4,0.7-0.5c-0.3,0-0.6-0.1-0.9-0.1c-0.8-0.1-1.8-0.2-2.4-0.3c-0.3-0.1-0.5-0.2-0.6-0.2c0,0-0.1,0,0,0c0,0,0,0.1,0,0
- c0,0,0.1-0.2,0.5-0.5s0.9-0.7,1.6-1.2c0.6-0.4,1.1-0.8,1.7-1.1c-0.7,0.2-1.3,0.3-2,0.5c-1.6,0.3-2.7,0.5-3.4,0.5
- c-0.4,0-0.6,0-0.7,0s-0.1-0.1-0.1,0c0,0,0,0,0-0.1c0.1-0.1,0.2-0.3,0.4-0.5c0.3-0.4,0.9-0.9,1.5-1.5l1.3-1.2l-1.7,0.6
- c-0.6,0.2-1.1,0.2-1.5,0.1c-0.4-0.1-0.8-0.4-1.1-0.8c-0.6-0.8-1.1-2.1-1.4-3.4l-1.6-6l0.9,6.1c0.1,0.7,0.1,1.2,0.1,1.5
- c0,0.1-0.1,0.1,0,0.1c0,0,0.1,0,0.1,0c0,0-0.3-0.2-0.5-0.5c-0.3-0.3-0.6-0.8-0.9-1.4c-1.2-2.2-2.6-6-2.6-8.8l0-4.8l-0.7,4.8
- c-0.1,0.9-0.3,1.5-0.4,2c-0.1,0.4-0.3,0.6-0.3,0.6c0,0,0,0,0.1,0c0,0,0,0,0,0c-0.1-0.1-0.2-0.4-0.3-0.7c-0.2-0.7-0.4-1.7-0.5-2.7
- c-0.1-1,0-2,0.2-2.5l0.5-1.4l-1.1,1c-0.7,0.7-1.4,1.2-2.1,1.5c-0.6,0.3-1.2,0.4-1.4,0.3c-0.1,0-0.2-0.1-0.2-0.1
- c0-0.1-0.1-0.2-0.1-0.4c0-0.4,0.3-1.2,1-2.1l1.3-1.9L93,75.8c-1.1,0.9-2.1,1.2-2.6,1.1c-0.3,0-0.4-0.1-0.5-0.3
- c-0.1-0.1-0.2-0.3-0.1-0.6c0.1-0.7,0.7-1.9,2.3-3l-0.4-0.6c-0.8,0.6-2.4,1.2-4,1.5c-0.8,0.1-1.6,0.1-2.2,0
- c-0.6-0.1-1.1-0.4-1.4-0.8c-0.2-0.2-0.1-0.3-0.1-0.3c0-0.1,0.3-0.3,0.7-0.4c0.9-0.3,2.4-0.7,4.7-1.2l4.7-1l-4.8,0.3
- c-2,0.1-5.6-0.4-8.1-1.2c-1.3-0.4-2.3-0.8-2.8-1.2c-0.1-0.1-0.2-0.2-0.2-0.2c0,0,0,0,0,0c0,0,0.1-0.2,0.5-0.3
- c0.7-0.3,2.2-0.6,4.7-1c1.2-0.2,2.4-0.3,3.6-0.4c-1.2,0-2.4-0.1-3.6-0.3c-2-0.4-7.1-1.6-10.1-2.9c-0.8-0.3-1.3-0.7-1.6-1.1
- c-0.1-0.2-0.2-0.3-0.2-0.4s0-0.1,0.1-0.2c0.2-0.2,0.9-0.4,2-0.5c1.1-0.1,2.8,0,4.9,0.3l7.2,1l-7-1.7c-3.9-1-7.2-2-9.3-2.8
- c-1.1-0.4-1.9-0.8-2.3-1.1c-0.2-0.1-0.4-0.3-0.4-0.3c0,0,0,0,0,0.1c0,0,0,0.1,0,0.1c0.7-0.6,2.5-1,5.2-1c2.6,0,6.1,0.5,10.3,1.7
- l3.1,0.9l-2.8-1.6c-1.6-0.9-2.8-1.8-3.6-2.5c-0.4-0.4-0.7-0.7-0.9-0.8c-0.1-0.1-0.1-0.2-0.1-0.2c0,0,0,0,0,0.1c0,0,0,0.1-0.1,0.2
- c-0.1,0.1-0.2,0.1-0.2,0.1l0,0l0,0c1.4-0.2,3.9,0.6,6.2,1.8c2.3,1.2,4.5,2.7,5.5,3.7l1.2,1.2l-0.6-1.6c-0.1-0.3-0.1-0.5,0-0.7
- c0.1-0.2,0.3-0.3,0.7-0.3c0.7,0.1,2.1,0.9,3.7,3.7c6.3,10.7,12.4,21.5,21,30.3c3.4,3.5,9.1,7.8,14.6,10.4c2.7,1.3,5.4,2.2,7.5,3
- c1.1,0.5,2.9,1.6,3.7,1.8C141.6,107,138.8,105,137.4,104.4z"/>
- <path id="path4807_00000100341264234404668750000007897268705833958553_" class="st5" d="M88.4,58.8c1,1.1,1.8,2,2.5,2.9
- c0.6,0.8,0.9,1.5,0.9,1.5s-0.2-0.7-0.6-1.7c-0.5-1-1.2-2.1-2.3-3.2c-2.4-2.5-5.7-4.6-9.6-6.6c-2.9-1.4-6.1-3-9.5-5
- c-6.3-3.8-13-9.5-20.6-17.9C45.1,24.2,38.4,15,33.8,9.9c-1.1-1.3-2.1-2.3-2.9-2.9c-0.4-0.3-0.8-0.5-1.1-0.7
- c-0.2-0.1-0.3-0.1-0.5-0.1c-0.2,0-0.4,0.1-0.5,0.3c-0.2,0.3-0.3,0.7-0.3,1.1c0,0.5,0.1,1.1,0.3,1.9c0.4,1.6,1.1,3.8,2.3,6.8
- c5.5,14,14.8,26.5,27.1,33.7C50,46.6,43.6,41.7,37.4,38c-5.1-3.1-12.8-9.1-17.5-13.8c-1.8-1.8-3.2-2.9-4.3-3.3
- c-0.5-0.2-1-0.3-1.4-0.2s-0.7,0.4-0.9,0.8c-0.3,0.7-0.3,1.8,0,3.1s0.8,2.8,1.4,4.3c3.5,8.4,11.6,14.6,18.8,19.1
- c-4.4-2.1-8.8-5.2-12.3-7.7c-2.3-1.6-4.2-3-5.6-3.7c-0.7-0.3-1.2-0.6-1.7-0.4c-0.3,0.1-0.5,0.2-0.6,0.5c-0.1,0.2-0.1,0.5-0.1,0.9
- c0.1,1.6,1.3,3.8,3.2,6.5c1.9,2.6,4.6,5.5,7.9,8.3c2.7,2.2,5.7,4.3,8.9,6.1c-2.7-1.1-5.1-2.3-7-3.3c-1.7-0.9-3.1-1.8-4.1-2.4
- c-0.5-0.3-1-0.5-1.3-0.7c-0.4-0.2-0.6-0.3-1-0.2c-0.6,0.1-1,0.4-1.3,0.9c-0.3,0.4-0.3,1-0.1,1.7c0.3,1.3,1.3,3.1,3.2,5.5
- c4.8,6.3,10.4,10.1,17.3,12c-2.4-0.3-4.5-0.7-6.1-1.1c-2.7-0.6-4.2-0.8-5.1-0.5c-0.2,0.1-0.4,0.2-0.5,0.3
- c-0.1,0.2-0.2,0.4-0.2,0.6c0,0.4,0.2,0.8,0.5,1.1c1.1,1.5,3.9,3.5,5.5,4.7c3.3,2.4,7.5,4.2,11.7,5.3c3.4,0.9,6.7,1.7,9.9,2.2
- c-2.7,0.1-5.4,0-7.8,0.1c-1.8,0-3.4,0.1-4.6,0.2c-0.6,0.1-1.1,0.2-1.5,0.3c-0.4,0.1-0.7,0.3-0.9,0.6c-0.2,0.3-0.3,0.7-0.2,1
- c0.1,0.3,0.2,0.7,0.5,1c0.5,0.6,1.3,1.1,2.4,1.7c2.1,1,5.2,2,8.8,2.6c2.5,0.5,4.3,0.7,6.7,0.7c-0.8,0.2-1.4,0.4-2,0.6
- c-1.5,0.5-2.3,0.9-2.7,1.5l0,0l0,0c-0.1,0.2-0.2,0.5-0.2,0.7c0,0.2,0.1,0.5,0.3,0.7c0.3,0.4,0.8,0.7,1.5,1c1.4,0.5,3.4,1,5.8,1.2
- c4.8,0.4,11-0.1,15.9-2.3c1.2-0.5,2.3-1.2,3.3-1.9c-1.2,0.4-2.4,0.8-3.6,1.3c-2.9,1.1-4.8,2-5.8,2.7c-0.5,0.3-0.8,0.6-1,1
- c-0.1,0.2,0,0.5,0.1,0.6s0.3,0.2,0.5,0.2l0,0l0,0c0.6,0.1,1.3-0.1,2.5-0.5c0.4-0.1,0.8-0.2,1.2-0.4c-0.9,0.5-1.6,0.9-2,1.4
- c-0.4,0.4-0.6,0.8-0.6,1.2c0.1,0.4,0.4,0.7,0.9,0.9c0.9,0.4,2.2,0.5,3.8,0.4c1,0,2-0.1,3-0.3c-0.1,0-0.1,0.1-0.2,0.1
- c-0.4,0.4-0.7,0.7-0.7,1.1c0,0.4,0.2,0.8,0.5,1s0.7,0.4,1.2,0.6c1.1,0.3,2.5,0.5,3.9,0.6c-2.7,0.6-4.6,1.1-5.7,1.9
- c-0.5,0.3-0.8,0.7-1,1c-0.2,0.4-0.1,0.8,0.1,1.1c0.4,0.7,1.3,1,2.6,1.3c1.8,0.4,4.3,0.5,7.1,0.1c-0.9,0.4-1.6,0.7-2.2,1.1
- c-1.2,0.7-1.9,1.2-2,1.9c-0.1,0.4,0.1,0.7,0.3,1c0.2,0.3,0.6,0.5,1,0.7c0.9,0.4,2.2,0.8,3.8,1.3c2.8,0.7,5.4,0.6,7.9,0.2
- c0,0.1-0.1,0.2-0.1,0.3c0,0.2,0.1,0.4,0.2,0.5c0.1,0.1,0.2,0.2,0.4,0.2c0.3,0.1,0.7,0.2,1.1,0.2c0.6,0.1,1.3,0.1,2.1,0.1
- c-0.8,0.1-1.5,0.2-2.2,0.3c-0.9,0.1-1.6,0.1-2.2,0.2c-0.3,0-0.6,0.1-0.8,0.2c-0.2,0.1-0.4,0.2-0.6,0.5c-0.1,0.3-0.1,0.5,0,0.8
- c0.1,0.3,0.3,0.5,0.5,0.7c0.4,0.4,1.1,0.8,2,1.1c1.4,0.5,3.3,0.9,5.5,1c0,0,0,0,0,0c-0.1,0.1-0.3,0.2-0.3,0.4
- c-0.1,0.2,0,0.4,0,0.5c0.2,0.3,0.4,0.4,0.8,0.6c0.3,0.1,0.7,0.2,1.2,0.3c1.2,0.2,2.6,0.3,3.8,0.4c-0.3,0.2-0.5,0.4-0.6,0.6
- c-0.2,0.2-0.3,0.4-0.3,0.7c0,0.3,0.2,0.5,0.4,0.6c0.4,0.3,0.9,0.4,1.7,0.5c0.7,0.1,1.6,0.1,2.6,0.1c2.5-0.1,4.9-0.4,7.2-1l0,0
- c2.3-0.5,4.1-1.1,5.8-1.8l0,0c2.5-1,3.6-2.1,3.6-2.1s-1.2,1-3.7,1.9l0,0c-1.7,0.6-3.5,1-5.8,1.5l0,0c-2.2,0.4-4.6,0.8-7.1,0.8
- c-1,0-1.8,0-2.5-0.1c-0.7-0.1-1.1-0.2-1.3-0.4c-0.1-0.1-0.1-0.1-0.1-0.1c0,0,0-0.1,0.1-0.2c0.2-0.2,0.8-0.6,1.7-1.1l2-0.9
- l-2.2,0.3c-0.8,0.1-3.4,0-5.1-0.3c-0.4-0.1-0.8-0.2-1-0.3c-0.3-0.1-0.4-0.2-0.4-0.2c0,0,0,0.1,0,0.1c0,0,0,0,0.1-0.1
- c0.2-0.1,0.5-0.3,1.1-0.5l1.8-0.7l-2,0c-2.7,0-5.1-0.4-6.7-1c-0.8-0.3-1.4-0.6-1.7-0.9c-0.2-0.1-0.3-0.3-0.3-0.4s0-0.2,0-0.3
- c0,0,0,0,0.2-0.1c0.1-0.1,0.4-0.1,0.6-0.1c0.6-0.1,1.3-0.1,2.2-0.2c1.8-0.1,3.9-0.4,5.7-1.4l3.9-2.2l-4.2,1.6
- c-0.5,0.2-1.4,0.3-2.4,0.4c-1,0-2.1,0-2.9-0.1c-0.4,0-0.7-0.1-0.9-0.2c-0.1,0-0.2-0.1-0.2-0.1c0,0,0,0,0,0.1c0,0.1,0,0.1,0,0
- s0.1-0.1,0.3-0.2c0.3-0.1,0.8-0.3,1.6-0.5l5.7-1.5l-5.9,0.8c-3.2,0.5-6.6,1.1-10.1,0.1c-1.6-0.4-2.9-0.8-3.7-1.2
- c-0.4-0.2-0.7-0.4-0.8-0.5s-0.2-0.2-0.1-0.4c0-0.2,0.5-0.8,1.7-1.4c1.1-0.6,2.9-1.4,5.2-2.3l4.8-1.9l-5,1.2c-4,1-7.8,1-10.2,0.5
- c-1.2-0.2-1.9-0.7-2.1-1c-0.1-0.2-0.1-0.3,0-0.5c0.1-0.2,0.3-0.5,0.7-0.8c1.1-0.8,3.9-1.4,8.1-2.4c1.4-0.3,2.9-0.7,4.3-1
- c-1.4,0.2-2.9,0.3-4.4,0.3c-1.7,0-4.8-0.1-6.4-0.7c-0.4-0.1-0.7-0.3-0.9-0.4c-0.2-0.1-0.2-0.2-0.2-0.4c0-0.1,0.1-0.4,0.5-0.7
- c0.4-0.3,0.9-0.7,1.7-1.1l2.7-1.4l-2.9,0.7c-1.6,0.4-3.3,0.6-4.8,0.7s-2.8-0.1-3.4-0.4c-0.3-0.1-0.4-0.3-0.4-0.4
- c0-0.1,0-0.3,0.4-0.6c0.6-0.6,2.3-1.6,5.2-2.7c1.2-0.5,2.3-0.9,3.5-1.2c-1.2,0.1-2.5,0.3-3.7,0.6c-2.2,0.4-3.8,0.9-4.9,1.2
- c-1.1,0.3-1.8,0.5-2.1,0.4c-0.1,0-0.2-0.1-0.2-0.1s0,0.1,0,0.1c0,0,0.2-0.3,0.7-0.6c0.9-0.6,2.8-1.5,5.6-2.6L76,95.1
- c-4.7,2.1-10.8,2.6-15.5,2.3c-2.3-0.2-4.3-0.6-5.6-1.1c-0.6-0.3-1.1-0.5-1.3-0.8c-0.1-0.1-0.1-0.2-0.1-0.3c0-0.1,0-0.1,0.1-0.2
- c0.2-0.3,0.9-0.7,2.3-1.2c1.4-0.5,3.5-1,6.4-1.5l7.4-1.3l-7.5,0.6c-5.1,0.4-7.2,0.2-11-0.5c-3.5-0.6-6.6-1.6-8.6-2.5
- c-1-0.5-1.8-1-2.1-1.5c-0.2-0.2-0.3-0.4-0.3-0.6c0-0.2,0-0.3,0.1-0.5c0,0,0.2-0.2,0.5-0.3c0.3-0.1,0.8-0.2,1.4-0.3
- c1.1-0.1,2.7-0.2,4.5-0.2c3.6,0,8.2,0,12.3-0.3c2.1-0.1,4.1-0.4,6.2-0.7c-2.1,0.2-4.1,0.2-6.2,0c-4.6-0.3-9.3-1.3-14.3-2.7
- c-4.2-1.1-8.3-2.9-11.5-5.2c-1.6-1.2-4.4-3.2-5.3-4.5c-0.2-0.3-0.3-0.6-0.3-0.7c0-0.1,0-0.1,0-0.1c0,0,0.1-0.1,0.2-0.1
- c0.5-0.2,2.1-0.1,4.7,0.5c2.8,0.7,6.7,1.4,11.7,1.5c2.5,0.1,5,0,7.4-0.3c-2.5,0-4.9-0.1-7.4-0.4c-9.3-1.3-16.3-5.2-22.2-12.8
- c-1.8-2.4-2.8-4.1-3.1-5.3c-0.1-0.6-0.1-0.9,0.1-1.2c0.1-0.2,0.4-0.4,0.9-0.5c0,0,0.2,0,0.5,0.2c0.3,0.1,0.7,0.4,1.3,0.7
- c1,0.6,2.4,1.4,4.2,2.4c3.5,1.9,8.2,4.2,14,5.6l9,2.2L40,60.4c-5.5-1.8-10.8-5.1-15.2-8.8c-3.3-2.7-5.9-5.6-7.8-8.2
- c-1.9-2.6-3-4.8-3.1-6.1c0-0.3,0-0.4,0-0.5c0-0.1,0-0.1,0.1-0.1c0.1,0,0.6,0.1,1.3,0.4c1.3,0.6,3.2,2,5.5,3.6
- c4.6,3.3,10.7,7.6,16.5,9.4c0.8,0.2,1.7,0.5,2.5,0.6c-0.7-0.4-1.5-0.8-2.2-1.3c-7.8-4.5-18.2-11.4-22.1-21c-0.6-1.5-1.1-3-1.4-4.2
- c-0.3-1.2-0.3-2.2-0.1-2.6c0.1-0.2,0.2-0.3,0.4-0.4c0.2,0,0.5,0,0.9,0.2c0.9,0.4,2.2,1.4,4,3.2c4.8,4.7,12.5,10.7,17.7,13.9
- C44.2,42.9,52,49,62.7,52.2c1.7,0.5,3.4,0.9,5.1,1.2c-1.6-0.5-3.3-1.2-4.8-1.9C48.7,45,38,31.4,31.9,16c-1.2-3-1.9-5.2-2.3-6.7
- c-0.2-0.8-0.3-1.3-0.3-1.7s0.1-0.6,0.1-0.7c0,0,0,0,0,0c0,0,0.1,0,0.2,0c0.2,0.1,0.5,0.3,0.9,0.5c0.7,0.6,1.7,1.6,2.8,2.9
- c4.5,5.1,11.2,14.3,15.3,18.9c7.6,8.5,14.4,14.3,20.7,18.1c3.5,2.1,6.7,3.7,9.5,5.1C82.8,54.3,86,56.4,88.4,58.8L88.4,58.8z"/>
- <path id="path4814_00000008846658947637959000000002656766840971361432_" class="st5" d="M59.9,54.7c0.2,0,0.4,0,0.6,0
- c1.2,0.1,2.4,0.2,3.3,0.2s1.5,0.1,1.5,0.1s-0.6-0.2-1.4-0.4c-0.9-0.2-2.1-0.5-3.3-0.6c-0.2,0-0.4,0-0.7,0c-0.4,0-0.8,0-1,0.3
- c-0.1,0.1-0.1,0.4-0.1,0.5s0.1,0.3,0.3,0.5c0.2,0.2,0.4,0.4,0.7,0.7c-1.4-0.5-2.5-0.9-3.3-1c-0.7-0.1-1.3-0.2-1.7-0.1
- c-0.4,0.1-0.8,0.2-1,0.6c-0.1,0.3-0.1,0.8,0.1,1.2c0.2,0.4,0.5,0.9,1.1,1.4c0.7,0.7,1.8,1.5,3.3,2.4c-1-0.2-1.9-0.5-2.7-0.9
- c-2.4-1.1-4.1-1.6-5.1-1.5c-0.5,0-1,0.2-1.3,0.5c-0.3,0.3-0.3,0.8-0.3,1.2c0.1,0.9,0.7,1.9,1.5,3c0.8,1.1,1.9,2.3,3,3.3
- c3,2.8,6.7,4.6,10.2,5.9c-2.4-0.5-4.9-1.1-7.7-1.2c-0.7,0-1.2,0-1.7,0.2c-0.4,0.2-0.8,0.4-1,0.8c-0.4,0.7-0.1,1.5,0.5,2.4
- c1.2,1.7,3.7,3.6,6.9,4.8c5.6,2.1,9.1,2.5,12.9,2.6c-1.9,0.2-3.4,0.3-4.7,0.4c-1.1,0.1-2,0.1-2.7,0.3c-0.7,0.1-1.2,0.3-1.5,0.7
- c-0.2,0.3-0.3,0.8-0.1,1.1c0.1,0.4,0.4,0.7,0.8,1c0.7,0.6,1.8,1.1,3.2,1.6c2.3,0.7,5.2,1.2,7.9,1.1c-0.4,0.2-0.7,0.5-0.9,0.7
- c-0.5,0.5-0.7,1-0.5,1.5c0.2,0.5,0.7,0.8,1.2,1c0.6,0.2,1.3,0.3,2.1,0.4c3.3,0.2,8.3-0.7,10.7-3.4c0.5-0.5,0.8-1.1,1.1-1.7
- c-0.5,0.4-1.1,0.8-1.6,1.2c-1.1,0.9-1.7,1.6-2,2.2c-0.1,0.3-0.2,0.6-0.2,0.9c0.1,0.3,0.3,0.5,0.5,0.6c0.5,0.2,1.1,0.2,1.8,0.1
- c-0.5,0.4-1,0.8-1.4,1.1c-0.9,0.8-1.4,1.4-1.5,2.1c0,0.3,0.1,0.7,0.4,0.9c0.3,0.2,0.7,0.3,1.2,0.4c0.5,0.1,1.2,0.1,2,0.1
- c-1.3,0.6-2.1,1.1-2.6,1.6c-0.4,0.4-0.5,0.8-0.4,1.3c0.1,0.4,0.5,0.7,0.9,0.9c0.9,0.4,2.2,0.7,3.8,0.7c1,0,2,0,3.1-0.1
- c-0.2,0.1-0.5,0.3-0.7,0.4c-0.3,0.2-0.6,0.4-0.8,0.7c-0.2,0.2-0.3,0.4-0.3,0.7c0,0.3,0.2,0.5,0.4,0.7c0.2,0.1,0.5,0.2,0.9,0.2
- c0.1,0,0.3,0,0.4,0c-0.5,0.3-1,0.5-1.3,0.8c-0.4,0.3-0.7,0.6-0.9,0.9c-0.2,0.3-0.2,0.7,0,1c0.2,0.3,0.5,0.5,0.8,0.7
- c0.4,0.2,0.9,0.3,1.5,0.5c0.9,0.2,2,0.4,3.5,0.5c-0.2,0.1-0.4,0.2-0.5,0.3c-0.5,0.3-0.8,0.6-0.9,1c-0.1,0.4,0.1,0.8,0.4,1.1
- c0.3,0.3,0.7,0.6,1.2,0.8c2.6,1.3,4.1,1.9,8.3,1.9c-0.1,0.1-0.2,0.1-0.3,0.2c-0.6,0.3-0.9,0.7-1,1.1c-0.1,0.4,0.2,0.9,0.5,1.1
- c0.4,0.3,0.8,0.5,1.4,0.8c1.8,0.7,4.5,1.2,6.4,1.4c-0.2,0.1-0.5,0.3-0.6,0.4c-0.4,0.4-0.7,0.8-0.7,1.2c0,0.4,0.3,0.8,0.6,1.1
- s0.8,0.5,1.4,0.8c1.8,0.7,4.4,1,6.6,0.8c0,0.1-0.1,0.1-0.1,0.2c-0.1,0.2,0,0.4,0.1,0.5c0.2,0.3,0.5,0.4,0.9,0.5
- c0.4,0.1,0.8,0.1,1.4,0.1c2.1,0,4.1-0.3,5.7-0.7c1.1-0.3,1.9-0.5,2.6-0.9c1.1-0.5,1.6-1.1,1.6-1.1s-0.5,0.5-1.6,0.9
- c-0.8,0.2-1.6,0.4-2.6,0.6c-1.7,0.3-3.6,0.5-5.6,0.5c-0.5,0-1,0-1.3-0.1c-0.3-0.1-0.5-0.2-0.4-0.2c0,0,0,0.1,0,0.1s0-0.1,0.1-0.1
- c0.2-0.2,0.6-0.4,1.2-0.7l4.4-2l-4.7,1.4c-2.3,0.7-5.9,0.4-8-0.4c-0.5-0.2-0.9-0.4-1.2-0.6s-0.4-0.4-0.4-0.6
- c0-0.2,0.1-0.4,0.4-0.7c0.3-0.3,0.9-0.6,1.8-0.9l1.8-0.7h-1.9c-1.7,0-5.5-0.6-7.6-1.4c-0.5-0.2-1-0.4-1.2-0.7
- c-0.3-0.2-0.3-0.3-0.3-0.4c0-0.1,0.2-0.3,0.7-0.6c0.5-0.3,1.3-0.6,2.4-0.9l3.1-0.8l-3.2,0.1c-5.9,0.3-7.3-0.2-10.3-1.8
- c-0.4-0.2-0.8-0.5-1-0.7c-0.2-0.2-0.2-0.3-0.2-0.5c0-0.1,0.2-0.3,0.6-0.6c0.4-0.2,1-0.5,1.8-0.7c0.8-0.2,1.6-0.4,2.4-0.5
- c-0.8,0-1.7-0.1-2.5-0.2c-2.1-0.2-3.8-0.4-4.9-0.7c-0.6-0.1-1-0.3-1.3-0.4c-0.3-0.1-0.5-0.3-0.5-0.4c0-0.1-0.1-0.1,0-0.3
- c0.1-0.2,0.3-0.4,0.7-0.6c0.7-0.5,2-1.1,3.7-1.9l4.4-1.9l-4.6,1.2c-1.4,0.4-2.4,0.5-3,0.5c-0.3,0-0.5-0.1-0.6-0.1s0,0,0,0
- c0,0,0-0.1,0.2-0.3c0.1-0.2,0.4-0.3,0.6-0.6c0.6-0.4,1.4-0.9,2.6-1.4l3.1-1.3l-3.3,0.7c-1.8,0.4-3.6,0.5-5.1,0.5
- c-1.6,0-2.9-0.3-3.5-0.6c-0.3-0.2-0.5-0.4-0.5-0.5s0-0.3,0.3-0.6c0.5-0.6,2-1.4,4.6-2.4l3.1-1.1L91.6,95c-2,0.3-3.5,0.3-4.3,0.2
- c-0.4-0.1-0.7-0.2-0.9-0.3c-0.1-0.1-0.2-0.1-0.1-0.3c0-0.3,0.4-0.9,1.2-1.6s2-1.6,3.5-2.6l5.5-3.7l-5.9,3.1
- c-0.8,0.4-1.6,0.7-2.3,0.9c-0.7,0.1-1.2,0.1-1.4,0c-0.1,0-0.1-0.1-0.1-0.1c0-0.1,0-0.2,0.1-0.4c0.2-0.4,0.8-1.1,1.9-2l-0.5-0.5
- c-2.1,2.4-7,3.4-10.1,3.1c-0.8-0.1-1.5-0.2-2-0.4c-0.5-0.2-0.8-0.4-0.8-0.6c-0.1-0.2,0-0.4,0.3-0.8s1.1-0.9,2.1-1.4l2-1l-2.2,0.3
- c-3.1,0.5-6.7,0-9.3-0.9c-1.3-0.4-2.4-1-3-1.5c-0.3-0.3-0.5-0.5-0.6-0.7s-0.1-0.3,0.1-0.5c0.1-0.1,0.4-0.3,1-0.4
- c0.6-0.1,1.5-0.2,2.6-0.2c2.2-0.1,5.3-0.3,9.2-1.1c1-0.2,2-0.4,3-0.7c-1,0-2,0-3.1,0c-5.9,0-9.5,0.3-17.1-2.6
- c-3-1.1-5.5-3-6.5-4.5c-0.5-0.7-0.6-1.3-0.4-1.7c0.1-0.2,0.2-0.3,0.6-0.4c0.3-0.1,0.8-0.2,1.4-0.1c4.4,0.2,7.8,1.5,11.9,1.8
- c0.9,0.1,1.9,0.1,2.8,0.1c-0.9-0.3-1.8-0.5-2.7-0.8c-4.3-1.3-9.8-3.3-13.9-7.1c-1.1-1-2.1-2.2-2.9-3.2c-0.8-1.1-1.3-2.1-1.4-2.7
- c0-0.3,0-0.5,0.1-0.6c0.1-0.1,0.3-0.2,0.7-0.2c0.8,0,2.4,0.4,4.8,1.5c1.6,0.7,3.5,1,5.4,1.5l3.1,0.8l-2.9-1.4
- c-2.7-1.4-4.5-2.6-5.4-3.5c-0.5-0.5-0.8-0.9-0.9-1.2c-0.1-0.3-0.1-0.5-0.1-0.6l0,0l0,0c0-0.1,0.1-0.1,0.4-0.2c0.3,0,0.8,0,1.5,0.1
- c1.3,0.3,3.3,1,6.1,2.2l3.9,1.8l-3.6-2.4c-1.7-1.1-2.7-1.9-3-2.3c-0.1-0.1-0.1-0.2-0.1-0.2c0,0,0,0.1,0,0.1
- C59.4,54.8,59.5,54.7,59.9,54.7L59.9,54.7z"/>
- </g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
- <g>
-</g>
-</svg>
diff --git a/includes/email.php b/includes/email.php
index 7357812..71ba4e1 100644
--- a/includes/email.php
+++ b/includes/email.php
@@ -141,58 +141,6 @@ function sendRegistrationRejection($email, $name, $id, $reason) {
$mail->send();
}
-function sendPlanUpdate($email, $plan) {
- global $emailConfig;
-
- $price = (float)trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/plusprice"));
-
- switch ($plan) {
- case 0:
- default:
- $monthFee = 0;
- $name = "Delta Free";
- break;
-
- case 1:
- $monthFee = $price;
- $name = "Delta Plus";
- break;
-
- case 2:
- $monthFee = $price + 2;
- $name = "Delta Ultra";
- break;
- }
-
- $mail = new PHPMailer(true);
- $mail->isSMTP();
- $mail->Host = 'in-v3.mailjet.com';
- $mail->SMTPAuth = true;
- $mail->Username = $emailConfig["username"];
- $mail->Password = $emailConfig["password"];
- $mail->SMTPSecure = "none";
- $mail->Port = 587;
-
- $mail->setFrom('delta@equestria.dev', 'Delta');
- $mail->addAddress($email);
- $mail->addReplyTo(trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/email")), 'Equestria.dev');
-
- $mail->isHTML();
- $mail->Subject = l("lang_email_plan_title");
- $mail->addEmbeddedImage($_SERVER['DOCUMENT_ROOT'] . "/logo.png", "logo", "logo.png");
-
- $body = file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/email.html");
- $body = str_replace("%3", date('Y'), $body);
- $body = str_replace("%2", l("lang_email_reasons_update"), $body);
- $body = str_replace("%1", "<p>" . l("lang_email_plan_message_0") . "</p><p>" . str_replace("%2", $monthFee, str_replace("%1", "<b>" . $name . "</b>", l("lang_email_plan_message_1"))) . "</p><p>" . l("lang_email_plan_message_2") . "</p><p>" . l("lang_email_plan_message_3") . "</p>", $body);
-
- $mail->CharSet = 'UTF-8';
- $mail->Body = $body;
- $mail->AltBody = strip_tags($body);
-
- $mail->send();
-}
-
function sendAlerts($email, $alerts) {
global $emailConfig;
diff --git a/includes/header.php b/includes/header.php
index 60e298e..b936301 100644
--- a/includes/header.php
+++ b/includes/header.php
@@ -60,6 +60,12 @@ if (isset($_PROFILE) && $_PROFILE["ultra"]) {
saveProfile();
}
+if (isset($_PROFILE) && $_PROFILE["plus"]) {
+ $_PROFILE["plus"] = false;
+ $_PROFILE["hadPlus"] = true;
+ saveProfile();
+}
+
?>
<!doctype html>
<html lang="en">
@@ -798,6 +804,3 @@ if (isset($_PROFILE) && $_PROFILE["ultra"]) {
<?php endif; ?>
<div class="bg-white">
- <?php if (isset($_PROFILE)): ?>
- <?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/oobe.php"; ?>
- <?php endif; ?>
diff --git a/includes/jobs-handler.php b/includes/jobs-handler.php
index 9daa5a9..d4e554c 100644
--- a/includes/jobs-handler.php
+++ b/includes/jobs-handler.php
@@ -12,7 +12,6 @@ $users = [];
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/email.php";
-$price = (float)trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/plusprice"));
$list = array_filter(scandir($_SERVER['DOCUMENT_ROOT'] . "/includes/data/profiles"), function ($i) { return !str_starts_with($i, "."); });
foreach ($list as $file) {
diff --git a/includes/langcheck/index.js b/includes/langcheck/index.js
deleted file mode 100644
index 1e485a1..0000000
--- a/includes/langcheck/index.js
+++ /dev/null
@@ -1,142 +0,0 @@
-const chalk = require('chalk');
-const prompts = require('prompts');
-const fs = require('fs');
-const crypto = require("crypto");
-
-let data;
-let items;
-let reviewed;
-let langs;
-let current;
-let total;
-
-function recurse(list, path, name) {
- for (let key of Object.keys(list)) {
- let localPath;
- let localName = name + "/" + key;
-
- if (list instanceof Array) {
- localPath = path + "[" + key + "]";
- } else {
- localPath = path + '["' + key + '"]';
- }
-
- if (typeof list[key] === "string") {
- items[localName] = {
- path: localPath,
- content: list[key],
- uniqueId: localName + "(" + crypto.createHash("sha256").update(list[key]).digest("hex") + ")"
- };
- } else {
- recurse(list[key], localPath, localName);
- }
- }
-}
-
-function save() {
- fs.writeFileSync("./reviewed.txt", reviewed.join("\n"));
-
- for (let lang of Object.keys(data)) {
- fs.writeFileSync("../../lang/" + lang, JSON.stringify(data[lang], null, 2));
- }
-}
-
-function load() {
- data = {};
- items = {};
- reviewed = fs.readFileSync("./reviewed.txt").toString().trim().split("\n");
- langs = fs.readdirSync("../../lang");
-
- for (let lang of langs) {
- data[lang] = JSON.parse(fs.readFileSync("../../lang/" + lang).toString());
-
- recurse(data[lang], 'data["' + lang + '"]', lang + ":");
- }
-
- current = reviewed.map(i => i.split(":").splice(0, 2).join(":")).filter(i => Object.values(items).map(i => i.uniqueId).includes(i)).length;
- total = Object.values(items).length;
-}
-
-function msToTime(ms) {
- if (ms > 1000) {
- if (ms > 60000) {
- if (ms > 3600000) {
- let t = Math.round(ms / 3600000);
- return t + " hour" + (t > 1 ? "s" : "");
- }
-
- let t = Math.round(ms / 60000);
- return t + " minute" + (t > 1 ? "s" : "");
- }
-
- let t = Math.round(ms / 1000);
- return t + " second" + (t > 1 ? "s" : "");
- }
-
- return ms + " millisecond" + (ms > 1 ? "s" : "");
-}
-
-load();
-
-(async () => {
- for (let key of Object.keys(items)) {
- let item = items[key];
- if (reviewed.map(i => i.split(":").splice(0, 2).join(":")).includes(item.uniqueId)) continue;
- let times = reviewed.map(i => parseInt(i.split(":")[2]));
- let eta = (total - current) * (times.reduce((a, b) => a + b) / times.length);
- let start = new Date().getTime();
-
- async function loop() {
- save();
- load();
-
- console.clear();
- console.log(chalk.bold.underline(key));
- console.log(current + "/" + total + ", " + ((current / total) * 100).toFixed(2) + "%, approximately " + msToTime(eta) + " left");
- console.log("");
- console.log(chalk.cyan("=> ") + '"' + eval(item.path).replace(/(%\d+)/gm, chalk.magenta("$1")) + '"');
- console.log("");
-
- const response1 = await prompts([
- {
- type: 'confirm',
- name: 'correct',
- message: 'Is this message correct?',
- initial: false
- }
- ]);
-
- if (typeof response1['correct'] === "undefined") process.exit(0);
- if (response1['correct']) {
- let time = new Date().getTime() - start;
- reviewed.push(item.uniqueId + ":" + time);
- save();
- load();
- return true;
- }
-
- const response2 = await prompts([
- {
- type: 'text',
- name: 'replace',
- message: 'Enter the new message:',
- initial: eval(item.path)
- }
- ]);
-
- if (!response2['replace']) return false;
- if (response2['replace']) {
- if (response2['replace'].trim() === "") {
- return false;
- }
-
- eval(item.path + " = `" + response2['replace'].replaceAll("`", "\\`") + "`");
- save();
- load();
- return false;
- }
- }
-
- while (!(await loop())) {}
- }
-})(); \ No newline at end of file
diff --git a/includes/langcheck/node_modules/.package-lock.json b/includes/langcheck/node_modules/.package-lock.json
deleted file mode 100644
index 17b2610..0000000
--- a/includes/langcheck/node_modules/.package-lock.json
+++ /dev/null
@@ -1,96 +0,0 @@
-{
- "name": "langcheck",
- "lockfileVersion": 3,
- "requires": true,
- "packages": {
- "node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/kleur": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
- "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/prompts": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
- "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
- "dependencies": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/sisteransi": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
- "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="
- },
- "node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- }
- }
-}
diff --git a/includes/langcheck/node_modules/ansi-styles/index.d.ts b/includes/langcheck/node_modules/ansi-styles/index.d.ts
deleted file mode 100644
index 44a907e..0000000
--- a/includes/langcheck/node_modules/ansi-styles/index.d.ts
+++ /dev/null
@@ -1,345 +0,0 @@
-declare type CSSColor =
- | 'aliceblue'
- | 'antiquewhite'
- | 'aqua'
- | 'aquamarine'
- | 'azure'
- | 'beige'
- | 'bisque'
- | 'black'
- | 'blanchedalmond'
- | 'blue'
- | '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'
- | 'fuchsia'
- | 'gainsboro'
- | 'ghostwhite'
- | 'gold'
- | 'goldenrod'
- | 'gray'
- | 'green'
- | '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'
- | 'lime'
- | 'limegreen'
- | 'linen'
- | 'magenta'
- | 'maroon'
- | 'mediumaquamarine'
- | 'mediumblue'
- | 'mediumorchid'
- | 'mediumpurple'
- | 'mediumseagreen'
- | 'mediumslateblue'
- | 'mediumspringgreen'
- | 'mediumturquoise'
- | 'mediumvioletred'
- | 'midnightblue'
- | 'mintcream'
- | 'mistyrose'
- | 'moccasin'
- | 'navajowhite'
- | 'navy'
- | 'oldlace'
- | 'olive'
- | 'olivedrab'
- | 'orange'
- | 'orangered'
- | 'orchid'
- | 'palegoldenrod'
- | 'palegreen'
- | 'paleturquoise'
- | 'palevioletred'
- | 'papayawhip'
- | 'peachpuff'
- | 'peru'
- | 'pink'
- | 'plum'
- | 'powderblue'
- | 'purple'
- | 'rebeccapurple'
- | 'red'
- | 'rosybrown'
- | 'royalblue'
- | 'saddlebrown'
- | 'salmon'
- | 'sandybrown'
- | 'seagreen'
- | 'seashell'
- | 'sienna'
- | 'silver'
- | 'skyblue'
- | 'slateblue'
- | 'slategray'
- | 'slategrey'
- | 'snow'
- | 'springgreen'
- | 'steelblue'
- | 'tan'
- | 'teal'
- | 'thistle'
- | 'tomato'
- | 'turquoise'
- | 'violet'
- | 'wheat'
- | 'white'
- | 'whitesmoke'
- | 'yellow'
- | 'yellowgreen';
-
-declare namespace ansiStyles {
- interface ColorConvert {
- /**
- The RGB color space.
-
- @param red - (`0`-`255`)
- @param green - (`0`-`255`)
- @param blue - (`0`-`255`)
- */
- rgb(red: number, green: number, blue: number): string;
-
- /**
- The RGB HEX color space.
-
- @param hex - A hexadecimal string containing RGB data.
- */
- hex(hex: string): string;
-
- /**
- @param keyword - A CSS color name.
- */
- keyword(keyword: CSSColor): string;
-
- /**
- The HSL color space.
-
- @param hue - (`0`-`360`)
- @param saturation - (`0`-`100`)
- @param lightness - (`0`-`100`)
- */
- hsl(hue: number, saturation: number, lightness: number): string;
-
- /**
- The HSV color space.
-
- @param hue - (`0`-`360`)
- @param saturation - (`0`-`100`)
- @param value - (`0`-`100`)
- */
- hsv(hue: number, saturation: number, value: number): string;
-
- /**
- The HSV color space.
-
- @param hue - (`0`-`360`)
- @param whiteness - (`0`-`100`)
- @param blackness - (`0`-`100`)
- */
- hwb(hue: number, whiteness: number, blackness: number): string;
-
- /**
- Use a [4-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#3/4-bit) to set text color.
- */
- ansi(ansi: number): string;
-
- /**
- Use an [8-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) to set text color.
- */
- ansi256(ansi: number): string;
- }
-
- interface CSPair {
- /**
- The ANSI terminal control sequence for starting this style.
- */
- readonly open: string;
-
- /**
- The ANSI terminal control sequence for ending this style.
- */
- readonly close: string;
- }
-
- interface ColorBase {
- readonly ansi: ColorConvert;
- readonly ansi256: ColorConvert;
- readonly ansi16m: ColorConvert;
-
- /**
- The ANSI terminal control sequence for ending this color.
- */
- readonly close: string;
- }
-
- interface Modifier {
- /**
- Resets the current color chain.
- */
- readonly reset: CSPair;
-
- /**
- Make text bold.
- */
- readonly bold: CSPair;
-
- /**
- Emitting only a small amount of light.
- */
- readonly dim: CSPair;
-
- /**
- Make text italic. (Not widely supported)
- */
- readonly italic: CSPair;
-
- /**
- Make text underline. (Not widely supported)
- */
- readonly underline: CSPair;
-
- /**
- Inverse background and foreground colors.
- */
- readonly inverse: CSPair;
-
- /**
- Prints the text, but makes it invisible.
- */
- readonly hidden: CSPair;
-
- /**
- Puts a horizontal line through the center of the text. (Not widely supported)
- */
- readonly strikethrough: CSPair;
- }
-
- interface ForegroundColor {
- readonly black: CSPair;
- readonly red: CSPair;
- readonly green: CSPair;
- readonly yellow: CSPair;
- readonly blue: CSPair;
- readonly cyan: CSPair;
- readonly magenta: CSPair;
- readonly white: CSPair;
-
- /**
- Alias for `blackBright`.
- */
- readonly gray: CSPair;
-
- /**
- Alias for `blackBright`.
- */
- readonly grey: CSPair;
-
- readonly blackBright: CSPair;
- readonly redBright: CSPair;
- readonly greenBright: CSPair;
- readonly yellowBright: CSPair;
- readonly blueBright: CSPair;
- readonly cyanBright: CSPair;
- readonly magentaBright: CSPair;
- readonly whiteBright: CSPair;
- }
-
- interface BackgroundColor {
- readonly bgBlack: CSPair;
- readonly bgRed: CSPair;
- readonly bgGreen: CSPair;
- readonly bgYellow: CSPair;
- readonly bgBlue: CSPair;
- readonly bgCyan: CSPair;
- readonly bgMagenta: CSPair;
- readonly bgWhite: CSPair;
-
- /**
- Alias for `bgBlackBright`.
- */
- readonly bgGray: CSPair;
-
- /**
- Alias for `bgBlackBright`.
- */
- readonly bgGrey: CSPair;
-
- readonly bgBlackBright: CSPair;
- readonly bgRedBright: CSPair;
- readonly bgGreenBright: CSPair;
- readonly bgYellowBright: CSPair;
- readonly bgBlueBright: CSPair;
- readonly bgCyanBright: CSPair;
- readonly bgMagentaBright: CSPair;
- readonly bgWhiteBright: CSPair;
- }
-}
-
-declare const ansiStyles: {
- readonly modifier: ansiStyles.Modifier;
- readonly color: ansiStyles.ForegroundColor & ansiStyles.ColorBase;
- readonly bgColor: ansiStyles.BackgroundColor & ansiStyles.ColorBase;
- readonly codes: ReadonlyMap<number, number>;
-} & ansiStyles.BackgroundColor & ansiStyles.ForegroundColor & ansiStyles.Modifier;
-
-export = ansiStyles;
diff --git a/includes/langcheck/node_modules/ansi-styles/index.js b/includes/langcheck/node_modules/ansi-styles/index.js
deleted file mode 100644
index 5d82581..0000000
--- a/includes/langcheck/node_modules/ansi-styles/index.js
+++ /dev/null
@@ -1,163 +0,0 @@
-'use strict';
-
-const wrapAnsi16 = (fn, offset) => (...args) => {
- const code = fn(...args);
- return `\u001B[${code + offset}m`;
-};
-
-const wrapAnsi256 = (fn, offset) => (...args) => {
- const code = fn(...args);
- return `\u001B[${38 + offset};5;${code}m`;
-};
-
-const wrapAnsi16m = (fn, offset) => (...args) => {
- const rgb = fn(...args);
- return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;
-};
-
-const ansi2ansi = n => n;
-const rgb2rgb = (r, g, b) => [r, g, b];
-
-const setLazyProperty = (object, property, get) => {
- Object.defineProperty(object, property, {
- get: () => {
- const value = get();
-
- Object.defineProperty(object, property, {
- value,
- enumerable: true,
- configurable: true
- });
-
- return value;
- },
- enumerable: true,
- configurable: true
- });
-};
-
-/** @type {typeof import('color-convert')} */
-let colorConvert;
-const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => {
- if (colorConvert === undefined) {
- colorConvert = require('color-convert');
- }
-
- const offset = isBackground ? 10 : 0;
- const styles = {};
-
- for (const [sourceSpace, suite] of Object.entries(colorConvert)) {
- const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace;
- if (sourceSpace === targetSpace) {
- styles[name] = wrap(identity, offset);
- } else if (typeof suite === 'object') {
- styles[name] = wrap(suite[targetSpace], offset);
- }
- }
-
- return styles;
-};
-
-function assembleStyles() {
- const codes = new Map();
- const styles = {
- modifier: {
- reset: [0, 0],
- // 21 isn't widely supported and 22 does the same thing
- bold: [1, 22],
- dim: [2, 22],
- italic: [3, 23],
- underline: [4, 24],
- inverse: [7, 27],
- hidden: [8, 28],
- strikethrough: [9, 29]
- },
- color: {
- black: [30, 39],
- red: [31, 39],
- green: [32, 39],
- yellow: [33, 39],
- blue: [34, 39],
- magenta: [35, 39],
- cyan: [36, 39],
- white: [37, 39],
-
- // Bright color
- blackBright: [90, 39],
- redBright: [91, 39],
- greenBright: [92, 39],
- yellowBright: [93, 39],
- blueBright: [94, 39],
- magentaBright: [95, 39],
- cyanBright: [96, 39],
- whiteBright: [97, 39]
- },
- bgColor: {
- bgBlack: [40, 49],
- bgRed: [41, 49],
- bgGreen: [42, 49],
- bgYellow: [43, 49],
- bgBlue: [44, 49],
- bgMagenta: [45, 49],
- bgCyan: [46, 49],
- bgWhite: [47, 49],
-
- // Bright color
- bgBlackBright: [100, 49],
- bgRedBright: [101, 49],
- bgGreenBright: [102, 49],
- bgYellowBright: [103, 49],
- bgBlueBright: [104, 49],
- bgMagentaBright: [105, 49],
- bgCyanBright: [106, 49],
- bgWhiteBright: [107, 49]
- }
- };
-
- // Alias bright black as gray (and grey)
- styles.color.gray = styles.color.blackBright;
- styles.bgColor.bgGray = styles.bgColor.bgBlackBright;
- styles.color.grey = styles.color.blackBright;
- styles.bgColor.bgGrey = styles.bgColor.bgBlackBright;
-
- for (const [groupName, group] of Object.entries(styles)) {
- for (const [styleName, style] of Object.entries(group)) {
- styles[styleName] = {
- open: `\u001B[${style[0]}m`,
- close: `\u001B[${style[1]}m`
- };
-
- group[styleName] = styles[styleName];
-
- codes.set(style[0], style[1]);
- }
-
- Object.defineProperty(styles, groupName, {
- value: group,
- enumerable: false
- });
- }
-
- Object.defineProperty(styles, 'codes', {
- value: codes,
- enumerable: false
- });
-
- styles.color.close = '\u001B[39m';
- styles.bgColor.close = '\u001B[49m';
-
- setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false));
- setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false));
- setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false));
- setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true));
- setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true));
- setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true));
-
- return styles;
-}
-
-// Make the export immutable
-Object.defineProperty(module, 'exports', {
- enumerable: true,
- get: assembleStyles
-});
diff --git a/includes/langcheck/node_modules/ansi-styles/license b/includes/langcheck/node_modules/ansi-styles/license
deleted file mode 100644
index e7af2f7..0000000
--- a/includes/langcheck/node_modules/ansi-styles/license
+++ /dev/null
@@ -1,9 +0,0 @@
-MIT License
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/includes/langcheck/node_modules/ansi-styles/package.json b/includes/langcheck/node_modules/ansi-styles/package.json
deleted file mode 100644
index 7539328..0000000
--- a/includes/langcheck/node_modules/ansi-styles/package.json
+++ /dev/null
@@ -1,56 +0,0 @@
-{
- "name": "ansi-styles",
- "version": "4.3.0",
- "description": "ANSI escape codes for styling strings in the terminal",
- "license": "MIT",
- "repository": "chalk/ansi-styles",
- "funding": "https://github.com/chalk/ansi-styles?sponsor=1",
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- "engines": {
- "node": ">=8"
- },
- "scripts": {
- "test": "xo && ava && tsd",
- "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor"
- },
- "files": [
- "index.js",
- "index.d.ts"
- ],
- "keywords": [
- "ansi",
- "styles",
- "color",
- "colour",
- "colors",
- "terminal",
- "console",
- "cli",
- "string",
- "tty",
- "escape",
- "formatting",
- "rgb",
- "256",
- "shell",
- "xterm",
- "log",
- "logging",
- "command-line",
- "text"
- ],
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "devDependencies": {
- "@types/color-convert": "^1.9.0",
- "ava": "^2.3.0",
- "svg-term-cli": "^2.1.1",
- "tsd": "^0.11.0",
- "xo": "^0.25.3"
- }
-}
diff --git a/includes/langcheck/node_modules/ansi-styles/readme.md b/includes/langcheck/node_modules/ansi-styles/readme.md
deleted file mode 100644
index 24883de..0000000
--- a/includes/langcheck/node_modules/ansi-styles/readme.md
+++ /dev/null
@@ -1,152 +0,0 @@
-# ansi-styles [![Build Status](https://travis-ci.org/chalk/ansi-styles.svg?branch=master)](https://travis-ci.org/chalk/ansi-styles)
-
-> [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal
-
-You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings.
-
-<img src="screenshot.svg" width="900">
-
-## Install
-
-```
-$ npm install ansi-styles
-```
-
-## Usage
-
-```js
-const style = require('ansi-styles');
-
-console.log(`${style.green.open}Hello world!${style.green.close}`);
-
-
-// Color conversion between 16/256/truecolor
-// NOTE: If conversion goes to 16 colors or 256 colors, the original color
-// may be degraded to fit that color palette. This means terminals
-// that do not support 16 million colors will best-match the
-// original color.
-console.log(style.bgColor.ansi.hsl(120, 80, 72) + 'Hello world!' + style.bgColor.close);
-console.log(style.color.ansi256.rgb(199, 20, 250) + 'Hello world!' + style.color.close);
-console.log(style.color.ansi16m.hex('#abcdef') + 'Hello world!' + style.color.close);
-```
-
-## API
-
-Each style has an `open` and `close` property.
-
-## Styles
-
-### Modifiers
-
-- `reset`
-- `bold`
-- `dim`
-- `italic` *(Not widely supported)*
-- `underline`
-- `inverse`
-- `hidden`
-- `strikethrough` *(Not widely supported)*
-
-### Colors
-
-- `black`
-- `red`
-- `green`
-- `yellow`
-- `blue`
-- `magenta`
-- `cyan`
-- `white`
-- `blackBright` (alias: `gray`, `grey`)
-- `redBright`
-- `greenBright`
-- `yellowBright`
-- `blueBright`
-- `magentaBright`
-- `cyanBright`
-- `whiteBright`
-
-### Background colors
-
-- `bgBlack`
-- `bgRed`
-- `bgGreen`
-- `bgYellow`
-- `bgBlue`
-- `bgMagenta`
-- `bgCyan`
-- `bgWhite`
-- `bgBlackBright` (alias: `bgGray`, `bgGrey`)
-- `bgRedBright`
-- `bgGreenBright`
-- `bgYellowBright`
-- `bgBlueBright`
-- `bgMagentaBright`
-- `bgCyanBright`
-- `bgWhiteBright`
-
-## Advanced usage
-
-By default, you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module.
-
-- `style.modifier`
-- `style.color`
-- `style.bgColor`
-
-###### Example
-
-```js
-console.log(style.color.green.open);
-```
-
-Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `style.codes`, which returns a `Map` with the open codes as keys and close codes as values.
-
-###### Example
-
-```js
-console.log(style.codes.get(36));
-//=> 39
-```
-
-## [256 / 16 million (TrueColor) support](https://gist.github.com/XVilka/8346728)
-
-`ansi-styles` uses the [`color-convert`](https://github.com/Qix-/color-convert) package to allow for converting between various colors and ANSI escapes, with support for 256 and 16 million colors.
-
-The following color spaces from `color-convert` are supported:
-
-- `rgb`
-- `hex`
-- `keyword`
-- `hsl`
-- `hsv`
-- `hwb`
-- `ansi`
-- `ansi256`
-
-To use these, call the associated conversion function with the intended output, for example:
-
-```js
-style.color.ansi.rgb(100, 200, 15); // RGB to 16 color ansi foreground code
-style.bgColor.ansi.rgb(100, 200, 15); // RGB to 16 color ansi background code
-
-style.color.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code
-style.bgColor.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code
-
-style.color.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color foreground code
-style.bgColor.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color background code
-```
-
-## Related
-
-- [ansi-escapes](https://github.com/sindresorhus/ansi-escapes) - ANSI escape codes for manipulating the terminal
-
-## Maintainers
-
-- [Sindre Sorhus](https://github.com/sindresorhus)
-- [Josh Junon](https://github.com/qix-)
-
-## For enterprise
-
-Available as part of the Tidelift Subscription.
-
-The maintainers of `ansi-styles` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-ansi-styles?utm_source=npm-ansi-styles&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)
diff --git a/includes/langcheck/node_modules/chalk/index.d.ts b/includes/langcheck/node_modules/chalk/index.d.ts
deleted file mode 100644
index 9cd88f3..0000000
--- a/includes/langcheck/node_modules/chalk/index.d.ts
+++ /dev/null
@@ -1,415 +0,0 @@
-/**
-Basic foreground colors.
-
-[More colors here.](https://github.com/chalk/chalk/blob/master/readme.md#256-and-truecolor-color-support)
-*/
-declare type ForegroundColor =
- | 'black'
- | 'red'
- | 'green'
- | 'yellow'
- | 'blue'
- | 'magenta'
- | 'cyan'
- | 'white'
- | 'gray'
- | 'grey'
- | 'blackBright'
- | 'redBright'
- | 'greenBright'
- | 'yellowBright'
- | 'blueBright'
- | 'magentaBright'
- | 'cyanBright'
- | 'whiteBright';
-
-/**
-Basic background colors.
-
-[More colors here.](https://github.com/chalk/chalk/blob/master/readme.md#256-and-truecolor-color-support)
-*/
-declare type BackgroundColor =
- | 'bgBlack'
- | 'bgRed'
- | 'bgGreen'
- | 'bgYellow'
- | 'bgBlue'
- | 'bgMagenta'
- | 'bgCyan'
- | 'bgWhite'
- | 'bgGray'
- | 'bgGrey'
- | 'bgBlackBright'
- | 'bgRedBright'
- | 'bgGreenBright'
- | 'bgYellowBright'
- | 'bgBlueBright'
- | 'bgMagentaBright'
- | 'bgCyanBright'
- | 'bgWhiteBright';
-
-/**
-Basic colors.
-
-[More colors here.](https://github.com/chalk/chalk/blob/master/readme.md#256-and-truecolor-color-support)
-*/
-declare type Color = ForegroundColor | BackgroundColor;
-
-declare type Modifiers =
- | 'reset'
- | 'bold'
- | 'dim'
- | 'italic'
- | 'underline'
- | 'inverse'
- | 'hidden'
- | 'strikethrough'
- | 'visible';
-
-declare namespace chalk {
- /**
- Levels:
- - `0` - All colors disabled.
- - `1` - Basic 16 colors support.
- - `2` - ANSI 256 colors support.
- - `3` - Truecolor 16 million colors support.
- */
- type Level = 0 | 1 | 2 | 3;
-
- interface Options {
- /**
- Specify the color support for Chalk.
-
- By default, color support is automatically detected based on the environment.
-
- Levels:
- - `0` - All colors disabled.
- - `1` - Basic 16 colors support.
- - `2` - ANSI 256 colors support.
- - `3` - Truecolor 16 million colors support.
- */
- level?: Level;
- }
-
- /**
- Return a new Chalk instance.
- */
- type Instance = new (options?: Options) => Chalk;
-
- /**
- Detect whether the terminal supports color.
- */
- interface ColorSupport {
- /**
- The color level used by Chalk.
- */
- level: Level;
-
- /**
- Return whether Chalk supports basic 16 colors.
- */
- hasBasic: boolean;
-
- /**
- Return whether Chalk supports ANSI 256 colors.
- */
- has256: boolean;
-
- /**
- Return whether Chalk supports Truecolor 16 million colors.
- */
- has16m: boolean;
- }
-
- interface ChalkFunction {
- /**
- Use a template string.
-
- @remarks Template literals are unsupported for nested calls (see [issue #341](https://github.com/chalk/chalk/issues/341))
-
- @example
- ```
- import chalk = require('chalk');
-
- log(chalk`
- CPU: {red ${cpu.totalPercent}%}
- RAM: {green ${ram.used / ram.total * 100}%}
- DISK: {rgb(255,131,0) ${disk.used / disk.total * 100}%}
- `);
- ```
-
- @example
- ```
- import chalk = require('chalk');
-
- log(chalk.red.bgBlack`2 + 3 = {bold ${2 + 3}}`)
- ```
- */
- (text: TemplateStringsArray, ...placeholders: unknown[]): string;
-
- (...text: unknown[]): string;
- }
-
- interface Chalk extends ChalkFunction {
- /**
- Return a new Chalk instance.
- */
- Instance: Instance;
-
- /**
- The color support for Chalk.
-
- By default, color support is automatically detected based on the environment.
-
- Levels:
- - `0` - All colors disabled.
- - `1` - Basic 16 colors support.
- - `2` - ANSI 256 colors support.
- - `3` - Truecolor 16 million colors support.
- */
- level: Level;
-
- /**
- Use HEX value to set text color.
-
- @param color - Hexadecimal value representing the desired color.
-
- @example
- ```
- import chalk = require('chalk');
-
- chalk.hex('#DEADED');
- ```
- */
- hex(color: string): Chalk;
-
- /**
- Use keyword color value to set text color.
-
- @param color - Keyword value representing the desired color.
-
- @example
- ```
- import chalk = require('chalk');
-
- chalk.keyword('orange');
- ```
- */
- keyword(color: string): Chalk;
-
- /**
- Use RGB values to set text color.
- */
- rgb(red: number, green: number, blue: number): Chalk;
-
- /**
- Use HSL values to set text color.
- */
- hsl(hue: number, saturation: number, lightness: number): Chalk;
-
- /**
- Use HSV values to set text color.
- */
- hsv(hue: number, saturation: number, value: number): Chalk;
-
- /**
- Use HWB values to set text color.
- */
- hwb(hue: number, whiteness: number, blackness: number): Chalk;
-
- /**
- Use a [Select/Set Graphic Rendition](https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_parameters) (SGR) [color code number](https://en.wikipedia.org/wiki/ANSI_escape_code#3/4_bit) to set text color.
-
- 30 <= code && code < 38 || 90 <= code && code < 98
- For example, 31 for red, 91 for redBright.
- */
- ansi(code: number): Chalk;
-
- /**
- Use a [8-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) to set text color.
- */
- ansi256(index: number): Chalk;
-
- /**
- Use HEX value to set background color.
-
- @param color - Hexadecimal value representing the desired color.
-
- @example
- ```
- import chalk = require('chalk');
-
- chalk.bgHex('#DEADED');
- ```
- */
- bgHex(color: string): Chalk;
-
- /**
- Use keyword color value to set background color.
-
- @param color - Keyword value representing the desired color.
-
- @example
- ```
- import chalk = require('chalk');
-
- chalk.bgKeyword('orange');
- ```
- */
- bgKeyword(color: string): Chalk;
-
- /**
- Use RGB values to set background color.
- */
- bgRgb(red: number, green: number, blue: number): Chalk;
-
- /**
- Use HSL values to set background color.
- */
- bgHsl(hue: number, saturation: number, lightness: number): Chalk;
-
- /**
- Use HSV values to set background color.
- */
- bgHsv(hue: number, saturation: number, value: number): Chalk;
-
- /**
- Use HWB values to set background color.
- */
- bgHwb(hue: number, whiteness: number, blackness: number): Chalk;
-
- /**
- Use a [Select/Set Graphic Rendition](https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_parameters) (SGR) [color code number](https://en.wikipedia.org/wiki/ANSI_escape_code#3/4_bit) to set background color.
-
- 30 <= code && code < 38 || 90 <= code && code < 98
- For example, 31 for red, 91 for redBright.
- Use the foreground code, not the background code (for example, not 41, nor 101).
- */
- bgAnsi(code: number): Chalk;
-
- /**
- Use a [8-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) to set background color.
- */
- bgAnsi256(index: number): Chalk;
-
- /**
- Modifier: Resets the current color chain.
- */
- readonly reset: Chalk;
-
- /**
- Modifier: Make text bold.
- */
- readonly bold: Chalk;
-
- /**
- Modifier: Emitting only a small amount of light.
- */
- readonly dim: Chalk;
-
- /**
- Modifier: Make text italic. (Not widely supported)
- */
- readonly italic: Chalk;
-
- /**
- Modifier: Make text underline. (Not widely supported)
- */
- readonly underline: Chalk;
-
- /**
- Modifier: Inverse background and foreground colors.
- */
- readonly inverse: Chalk;
-
- /**
- Modifier: Prints the text, but makes it invisible.
- */
- readonly hidden: Chalk;
-
- /**
- Modifier: Puts a horizontal line through the center of the text. (Not widely supported)
- */
- readonly strikethrough: Chalk;
-
- /**
- Modifier: Prints the text only when Chalk has a color support level > 0.
- Can be useful for things that are purely cosmetic.
- */
- readonly visible: Chalk;
-
- readonly black: Chalk;
- readonly red: Chalk;
- readonly green: Chalk;
- readonly yellow: Chalk;
- readonly blue: Chalk;
- readonly magenta: Chalk;
- readonly cyan: Chalk;
- readonly white: Chalk;
-
- /*
- Alias for `blackBright`.
- */
- readonly gray: Chalk;
-
- /*
- Alias for `blackBright`.
- */
- readonly grey: Chalk;
-
- readonly blackBright: Chalk;
- readonly redBright: Chalk;
- readonly greenBright: Chalk;
- readonly yellowBright: Chalk;
- readonly blueBright: Chalk;
- readonly magentaBright: Chalk;
- readonly cyanBright: Chalk;
- readonly whiteBright: Chalk;
-
- readonly bgBlack: Chalk;
- readonly bgRed: Chalk;
- readonly bgGreen: Chalk;
- readonly bgYellow: Chalk;
- readonly bgBlue: Chalk;
- readonly bgMagenta: Chalk;
- readonly bgCyan: Chalk;
- readonly bgWhite: Chalk;
-
- /*
- Alias for `bgBlackBright`.
- */
- readonly bgGray: Chalk;
-
- /*
- Alias for `bgBlackBright`.
- */
- readonly bgGrey: Chalk;
-
- readonly bgBlackBright: Chalk;
- readonly bgRedBright: Chalk;
- readonly bgGreenBright: Chalk;
- readonly bgYellowBright: Chalk;
- readonly bgBlueBright: Chalk;
- readonly bgMagentaBright: Chalk;
- readonly bgCyanBright: Chalk;
- readonly bgWhiteBright: Chalk;
- }
-}
-
-/**
-Main Chalk object that allows to chain styles together.
-Call the last one as a method with a string argument.
-Order doesn't matter, and later styles take precedent in case of a conflict.
-This simply means that `chalk.red.yellow.green` is equivalent to `chalk.green`.
-*/
-declare const chalk: chalk.Chalk & chalk.ChalkFunction & {
- supportsColor: chalk.ColorSupport | false;
- Level: chalk.Level;
- Color: Color;
- ForegroundColor: ForegroundColor;
- BackgroundColor: BackgroundColor;
- Modifiers: Modifiers;
- stderr: chalk.Chalk & {supportsColor: chalk.ColorSupport | false};
-};
-
-export = chalk;
diff --git a/includes/langcheck/node_modules/chalk/license b/includes/langcheck/node_modules/chalk/license
deleted file mode 100644
index e7af2f7..0000000
--- a/includes/langcheck/node_modules/chalk/license
+++ /dev/null
@@ -1,9 +0,0 @@
-MIT License
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/includes/langcheck/node_modules/chalk/package.json b/includes/langcheck/node_modules/chalk/package.json
deleted file mode 100644
index 47c23f2..0000000
--- a/includes/langcheck/node_modules/chalk/package.json
+++ /dev/null
@@ -1,68 +0,0 @@
-{
- "name": "chalk",
- "version": "4.1.2",
- "description": "Terminal string styling done right",
- "license": "MIT",
- "repository": "chalk/chalk",
- "funding": "https://github.com/chalk/chalk?sponsor=1",
- "main": "source",
- "engines": {
- "node": ">=10"
- },
- "scripts": {
- "test": "xo && nyc ava && tsd",
- "bench": "matcha benchmark.js"
- },
- "files": [
- "source",
- "index.d.ts"
- ],
- "keywords": [
- "color",
- "colour",
- "colors",
- "terminal",
- "console",
- "cli",
- "string",
- "str",
- "ansi",
- "style",
- "styles",
- "tty",
- "formatting",
- "rgb",
- "256",
- "shell",
- "xterm",
- "log",
- "logging",
- "command-line",
- "text"
- ],
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "devDependencies": {
- "ava": "^2.4.0",
- "coveralls": "^3.0.7",
- "execa": "^4.0.0",
- "import-fresh": "^3.1.0",
- "matcha": "^0.7.0",
- "nyc": "^15.0.0",
- "resolve-from": "^5.0.0",
- "tsd": "^0.7.4",
- "xo": "^0.28.2"
- },
- "xo": {
- "rules": {
- "unicorn/prefer-string-slice": "off",
- "unicorn/prefer-includes": "off",
- "@typescript-eslint/member-ordering": "off",
- "no-redeclare": "off",
- "unicorn/string-content": "off",
- "unicorn/better-regex": "off"
- }
- }
-}
diff --git a/includes/langcheck/node_modules/chalk/readme.md b/includes/langcheck/node_modules/chalk/readme.md
deleted file mode 100644
index a055d21..0000000
--- a/includes/langcheck/node_modules/chalk/readme.md
+++ /dev/null
@@ -1,341 +0,0 @@
-<h1 align="center">
- <br>
- <br>
- <img width="320" src="media/logo.svg" alt="Chalk">
- <br>
- <br>
- <br>
-</h1>
-
-> Terminal string styling done right
-
-[![Build Status](https://travis-ci.org/chalk/chalk.svg?branch=master)](https://travis-ci.org/chalk/chalk) [![Coverage Status](https://coveralls.io/repos/github/chalk/chalk/badge.svg?branch=master)](https://coveralls.io/github/chalk/chalk?branch=master) [![npm dependents](https://badgen.net/npm/dependents/chalk)](https://www.npmjs.com/package/chalk?activeTab=dependents) [![Downloads](https://badgen.net/npm/dt/chalk)](https://www.npmjs.com/package/chalk) [![](https://img.shields.io/badge/unicorn-approved-ff69b4.svg)](https://www.youtube.com/watch?v=9auOCbH5Ns4) [![XO code style](https://img.shields.io/badge/code_style-XO-5ed9c7.svg)](https://github.com/xojs/xo) ![TypeScript-ready](https://img.shields.io/npm/types/chalk.svg) [![run on repl.it](https://repl.it/badge/github/chalk/chalk)](https://repl.it/github/chalk/chalk)
-
-<img src="https://cdn.jsdelivr.net/gh/chalk/ansi-styles@8261697c95bf34b6c7767e2cbe9941a851d59385/screenshot.svg" width="900">
-
-<br>
-
----
-
-<div align="center">
- <p>
- <p>
- <sup>
- Sindre Sorhus' open source work is supported by the community on <a href="https://github.com/sponsors/sindresorhus">GitHub Sponsors</a> and <a href="https://stakes.social/0x44d871aebF0126Bf646753E2C976Aa7e68A66c15">Dev</a>
- </sup>
- </p>
- <sup>Special thanks to:</sup>
- <br>
- <br>
- <a href="https://standardresume.co/tech">
- <img src="https://sindresorhus.com/assets/thanks/standard-resume-logo.svg" width="160"/>
- </a>
- <br>
- <br>
- <a href="https://retool.com/?utm_campaign=sindresorhus">
- <img src="https://sindresorhus.com/assets/thanks/retool-logo.svg" width="230"/>
- </a>
- <br>
- <br>
- <a href="https://doppler.com/?utm_campaign=github_repo&utm_medium=referral&utm_content=chalk&utm_source=github">
- <div>
- <img src="https://dashboard.doppler.com/imgs/logo-long.svg" width="240" alt="Doppler">
- </div>
- <b>All your environment variables, in one place</b>
- <div>
- <span>Stop struggling with scattered API keys, hacking together home-brewed tools,</span>
- <br>
- <span>and avoiding access controls. Keep your team and servers in sync with Doppler.</span>
- </div>
- </a>
- <br>
- <a href="https://uibakery.io/?utm_source=chalk&utm_medium=sponsor&utm_campaign=github">
- <div>
- <img src="https://sindresorhus.com/assets/thanks/uibakery-logo.jpg" width="270" alt="UI Bakery">
- </div>
- </a>
- </p>
-</div>
-
----
-
-<br>
-
-## Highlights
-
-- Expressive API
-- Highly performant
-- Ability to nest styles
-- [256/Truecolor color support](#256-and-truecolor-color-support)
-- Auto-detects color support
-- Doesn't extend `String.prototype`
-- Clean and focused
-- Actively maintained
-- [Used by ~50,000 packages](https://www.npmjs.com/browse/depended/chalk) as of January 1, 2020
-
-## Install
-
-```console
-$ npm install chalk
-```
-
-## Usage
-
-```js
-const chalk = require('chalk');
-
-console.log(chalk.blue('Hello world!'));
-```
-
-Chalk comes with an easy to use composable API where you just chain and nest the styles you want.
-
-```js
-const chalk = require('chalk');
-const log = console.log;
-
-// Combine styled and normal strings
-log(chalk.blue('Hello') + ' World' + chalk.red('!'));
-
-// Compose multiple styles using the chainable API
-log(chalk.blue.bgRed.bold('Hello world!'));
-
-// Pass in multiple arguments
-log(chalk.blue('Hello', 'World!', 'Foo', 'bar', 'biz', 'baz'));
-
-// Nest styles
-log(chalk.red('Hello', chalk.underline.bgBlue('world') + '!'));
-
-// Nest styles of the same type even (color, underline, background)
-log(chalk.green(
- 'I am a green line ' +
- chalk.blue.underline.bold('with a blue substring') +
- ' that becomes green again!'
-));
-
-// ES2015 template literal
-log(`
-CPU: ${chalk.red('90%')}
-RAM: ${chalk.green('40%')}
-DISK: ${chalk.yellow('70%')}
-`);
-
-// ES2015 tagged template literal
-log(chalk`
-CPU: {red ${cpu.totalPercent}%}
-RAM: {green ${ram.used / ram.total * 100}%}
-DISK: {rgb(255,131,0) ${disk.used / disk.total * 100}%}
-`);
-
-// Use RGB colors in terminal emulators that support it.
-log(chalk.keyword('orange')('Yay for orange colored text!'));
-log(chalk.rgb(123, 45, 67).underline('Underlined reddish color'));
-log(chalk.hex('#DEADED').bold('Bold gray!'));
-```
-
-Easily define your own themes:
-
-```js
-const chalk = require('chalk');
-
-const error = chalk.bold.red;
-const warning = chalk.keyword('orange');
-
-console.log(error('Error!'));
-console.log(warning('Warning!'));
-```
-
-Take advantage of console.log [string substitution](https://nodejs.org/docs/latest/api/console.html#console_console_log_data_args):
-
-```js
-const name = 'Sindre';
-console.log(chalk.green('Hello %s'), name);
-//=> 'Hello Sindre'
-```
-
-## API
-
-### chalk.`<style>[.<style>...](string, [string...])`
-
-Example: `chalk.red.bold.underline('Hello', 'world');`
-
-Chain [styles](#styles) and call the last one as a method with a string argument. Order doesn't matter, and later styles take precedent in case of a conflict. This simply means that `chalk.red.yellow.green` is equivalent to `chalk.green`.
-
-Multiple arguments will be separated by space.
-
-### chalk.level
-
-Specifies the level of color support.
-
-Color support is automatically detected, but you can override it by setting the `level` property. You should however only do this in your own code as it applies globally to all Chalk consumers.
-
-If you need to change this in a reusable module, create a new instance:
-
-```js
-const ctx = new chalk.Instance({level: 0});
-```
-
-| Level | Description |
-| :---: | :--- |
-| `0` | All colors disabled |
-| `1` | Basic color support (16 colors) |
-| `2` | 256 color support |
-| `3` | Truecolor support (16 million colors) |
-
-### chalk.supportsColor
-
-Detect whether the terminal [supports color](https://github.com/chalk/supports-color). Used internally and handled for you, but exposed for convenience.
-
-Can be overridden by the user with the flags `--color` and `--no-color`. For situations where using `--color` is not possible, use the environment variable `FORCE_COLOR=1` (level 1), `FORCE_COLOR=2` (level 2), or `FORCE_COLOR=3` (level 3) to forcefully enable color, or `FORCE_COLOR=0` to forcefully disable. The use of `FORCE_COLOR` overrides all other color support checks.
-
-Explicit 256/Truecolor mode can be enabled using the `--color=256` and `--color=16m` flags, respectively.
-
-### chalk.stderr and chalk.stderr.supportsColor
-
-`chalk.stderr` contains a separate instance configured with color support detected for `stderr` stream instead of `stdout`. Override rules from `chalk.supportsColor` apply to this too. `chalk.stderr.supportsColor` is exposed for convenience.
-
-## Styles
-
-### Modifiers
-
-- `reset` - Resets the current color chain.
-- `bold` - Make text bold.
-- `dim` - Emitting only a small amount of light.
-- `italic` - Make text italic. *(Not widely supported)*
-- `underline` - Make text underline. *(Not widely supported)*
-- `inverse`- Inverse background and foreground colors.
-- `hidden` - Prints the text, but makes it invisible.
-- `strikethrough` - Puts a horizontal line through the center of the text. *(Not widely supported)*
-- `visible`- Prints the text only when Chalk has a color level > 0. Can be useful for things that are purely cosmetic.
-
-### Colors
-
-- `black`
-- `red`
-- `green`
-- `yellow`
-- `blue`
-- `magenta`
-- `cyan`
-- `white`
-- `blackBright` (alias: `gray`, `grey`)
-- `redBright`
-- `greenBright`
-- `yellowBright`
-- `blueBright`
-- `magentaBright`
-- `cyanBright`
-- `whiteBright`
-
-### Background colors
-
-- `bgBlack`
-- `bgRed`
-- `bgGreen`
-- `bgYellow`
-- `bgBlue`
-- `bgMagenta`
-- `bgCyan`
-- `bgWhite`
-- `bgBlackBright` (alias: `bgGray`, `bgGrey`)
-- `bgRedBright`
-- `bgGreenBright`
-- `bgYellowBright`
-- `bgBlueBright`
-- `bgMagentaBright`
-- `bgCyanBright`
-- `bgWhiteBright`
-
-## Tagged template literal
-
-Chalk can be used as a [tagged template literal](https://exploringjs.com/es6/ch_template-literals.html#_tagged-template-literals).
-
-```js
-const chalk = require('chalk');
-
-const miles = 18;
-const calculateFeet = miles => miles * 5280;
-
-console.log(chalk`
- There are {bold 5280 feet} in a mile.
- In {bold ${miles} miles}, there are {green.bold ${calculateFeet(miles)} feet}.
-`);
-```
-
-Blocks are delimited by an opening curly brace (`{`), a style, some content, and a closing curly brace (`}`).
-
-Template styles are chained exactly like normal Chalk styles. The following three statements are equivalent:
-
-```js
-console.log(chalk.bold.rgb(10, 100, 200)('Hello!'));
-console.log(chalk.bold.rgb(10, 100, 200)`Hello!`);
-console.log(chalk`{bold.rgb(10,100,200) Hello!}`);
-```
-
-Note that function styles (`rgb()`, `hsl()`, `keyword()`, etc.) may not contain spaces between parameters.
-
-All interpolated values (`` chalk`${foo}` ``) are converted to strings via the `.toString()` method. All curly braces (`{` and `}`) in interpolated value strings are escaped.
-
-## 256 and Truecolor color support
-
-Chalk supports 256 colors and [Truecolor](https://gist.github.com/XVilka/8346728) (16 million colors) on supported terminal apps.
-
-Colors are downsampled from 16 million RGB values to an ANSI color format that is supported by the terminal emulator (or by specifying `{level: n}` as a Chalk option). For example, Chalk configured to run at level 1 (basic color support) will downsample an RGB value of #FF0000 (red) to 31 (ANSI escape for red).
-
-Examples:
-
-- `chalk.hex('#DEADED').underline('Hello, world!')`
-- `chalk.keyword('orange')('Some orange text')`
-- `chalk.rgb(15, 100, 204).inverse('Hello!')`
-
-Background versions of these models are prefixed with `bg` and the first level of the module capitalized (e.g. `keyword` for foreground colors and `bgKeyword` for background colors).
-
-- `chalk.bgHex('#DEADED').underline('Hello, world!')`
-- `chalk.bgKeyword('orange')('Some orange text')`
-- `chalk.bgRgb(15, 100, 204).inverse('Hello!')`
-
-The following color models can be used:
-
-- [`rgb`](https://en.wikipedia.org/wiki/RGB_color_model) - Example: `chalk.rgb(255, 136, 0).bold('Orange!')`
-- [`hex`](https://en.wikipedia.org/wiki/Web_colors#Hex_triplet) - Example: `chalk.hex('#FF8800').bold('Orange!')`
-- [`keyword`](https://www.w3.org/wiki/CSS/Properties/color/keywords) (CSS keywords) - Example: `chalk.keyword('orange').bold('Orange!')`
-- [`hsl`](https://en.wikipedia.org/wiki/HSL_and_HSV) - Example: `chalk.hsl(32, 100, 50).bold('Orange!')`
-- [`hsv`](https://en.wikipedia.org/wiki/HSL_and_HSV) - Example: `chalk.hsv(32, 100, 100).bold('Orange!')`
-- [`hwb`](https://en.wikipedia.org/wiki/HWB_color_model) - Example: `chalk.hwb(32, 0, 50).bold('Orange!')`
-- [`ansi`](https://en.wikipedia.org/wiki/ANSI_escape_code#3/4_bit) - Example: `chalk.ansi(31).bgAnsi(93)('red on yellowBright')`
-- [`ansi256`](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) - Example: `chalk.bgAnsi256(194)('Honeydew, more or less')`
-
-## Windows
-
-If you're on Windows, do yourself a favor and use [Windows Terminal](https://github.com/microsoft/terminal) instead of `cmd.exe`.
-
-## Origin story
-
-[colors.js](https://github.com/Marak/colors.js) used to be the most popular string styling module, but it has serious deficiencies like extending `String.prototype` which causes all kinds of [problems](https://github.com/yeoman/yo/issues/68) and the package is unmaintained. Although there are other packages, they either do too much or not enough. Chalk is a clean and focused alternative.
-
-## chalk for enterprise
-
-Available as part of the Tidelift Subscription.
-
-The maintainers of chalk and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-chalk?utm_source=npm-chalk&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)
-
-## Related
-
-- [chalk-cli](https://github.com/chalk/chalk-cli) - CLI for this module
-- [ansi-styles](https://github.com/chalk/ansi-styles) - ANSI escape codes for styling strings in the terminal
-- [supports-color](https://github.com/chalk/supports-color) - Detect whether a terminal supports color
-- [strip-ansi](https://github.com/chalk/strip-ansi) - Strip ANSI escape codes
-- [strip-ansi-stream](https://github.com/chalk/strip-ansi-stream) - Strip ANSI escape codes from a stream
-- [has-ansi](https://github.com/chalk/has-ansi) - Check if a string has ANSI escape codes
-- [ansi-regex](https://github.com/chalk/ansi-regex) - Regular expression for matching ANSI escape codes
-- [wrap-ansi](https://github.com/chalk/wrap-ansi) - Wordwrap a string with ANSI escape codes
-- [slice-ansi](https://github.com/chalk/slice-ansi) - Slice a string with ANSI escape codes
-- [color-convert](https://github.com/qix-/color-convert) - Converts colors between different models
-- [chalk-animation](https://github.com/bokub/chalk-animation) - Animate strings in the terminal
-- [gradient-string](https://github.com/bokub/gradient-string) - Apply color gradients to strings
-- [chalk-pipe](https://github.com/LitoMore/chalk-pipe) - Create chalk style schemes with simpler style strings
-- [terminal-link](https://github.com/sindresorhus/terminal-link) - Create clickable links in the terminal
-
-## Maintainers
-
-- [Sindre Sorhus](https://github.com/sindresorhus)
-- [Josh Junon](https://github.com/qix-)
diff --git a/includes/langcheck/node_modules/chalk/source/index.js b/includes/langcheck/node_modules/chalk/source/index.js
deleted file mode 100644
index 75ec663..0000000
--- a/includes/langcheck/node_modules/chalk/source/index.js
+++ /dev/null
@@ -1,229 +0,0 @@
-'use strict';
-const ansiStyles = require('ansi-styles');
-const {stdout: stdoutColor, stderr: stderrColor} = require('supports-color');
-const {
- stringReplaceAll,
- stringEncaseCRLFWithFirstIndex
-} = require('./util');
-
-const {isArray} = Array;
-
-// `supportsColor.level` → `ansiStyles.color[name]` mapping
-const levelMapping = [
- 'ansi',
- 'ansi',
- 'ansi256',
- 'ansi16m'
-];
-
-const styles = Object.create(null);
-
-const applyOptions = (object, options = {}) => {
- if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
- throw new Error('The `level` option should be an integer from 0 to 3');
- }
-
- // Detect level if not set manually
- const colorLevel = stdoutColor ? stdoutColor.level : 0;
- object.level = options.level === undefined ? colorLevel : options.level;
-};
-
-class ChalkClass {
- constructor(options) {
- // eslint-disable-next-line no-constructor-return
- return chalkFactory(options);
- }
-}
-
-const chalkFactory = options => {
- const chalk = {};
- applyOptions(chalk, options);
-
- chalk.template = (...arguments_) => chalkTag(chalk.template, ...arguments_);
-
- Object.setPrototypeOf(chalk, Chalk.prototype);
- Object.setPrototypeOf(chalk.template, chalk);
-
- chalk.template.constructor = () => {
- throw new Error('`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.');
- };
-
- chalk.template.Instance = ChalkClass;
-
- return chalk.template;
-};
-
-function Chalk(options) {
- return chalkFactory(options);
-}
-
-for (const [styleName, style] of Object.entries(ansiStyles)) {
- styles[styleName] = {
- get() {
- const builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty);
- Object.defineProperty(this, styleName, {value: builder});
- return builder;
- }
- };
-}
-
-styles.visible = {
- get() {
- const builder = createBuilder(this, this._styler, true);
- Object.defineProperty(this, 'visible', {value: builder});
- return builder;
- }
-};
-
-const usedModels = ['rgb', 'hex', 'keyword', 'hsl', 'hsv', 'hwb', 'ansi', 'ansi256'];
-
-for (const model of usedModels) {
- styles[model] = {
- get() {
- const {level} = this;
- return function (...arguments_) {
- const styler = createStyler(ansiStyles.color[levelMapping[level]][model](...arguments_), ansiStyles.color.close, this._styler);
- return createBuilder(this, styler, this._isEmpty);
- };
- }
- };
-}
-
-for (const model of usedModels) {
- const bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);
- styles[bgModel] = {
- get() {
- const {level} = this;
- return function (...arguments_) {
- const styler = createStyler(ansiStyles.bgColor[levelMapping[level]][model](...arguments_), ansiStyles.bgColor.close, this._styler);
- return createBuilder(this, styler, this._isEmpty);
- };
- }
- };
-}
-
-const proto = Object.defineProperties(() => {}, {
- ...styles,
- level: {
- enumerable: true,
- get() {
- return this._generator.level;
- },
- set(level) {
- this._generator.level = level;
- }
- }
-});
-
-const createStyler = (open, close, parent) => {
- let openAll;
- let closeAll;
- if (parent === undefined) {
- openAll = open;
- closeAll = close;
- } else {
- openAll = parent.openAll + open;
- closeAll = close + parent.closeAll;
- }
-
- return {
- open,
- close,
- openAll,
- closeAll,
- parent
- };
-};
-
-const createBuilder = (self, _styler, _isEmpty) => {
- const builder = (...arguments_) => {
- if (isArray(arguments_[0]) && isArray(arguments_[0].raw)) {
- // Called as a template literal, for example: chalk.red`2 + 3 = {bold ${2+3}}`
- return applyStyle(builder, chalkTag(builder, ...arguments_));
- }
-
- // Single argument is hot path, implicit coercion is faster than anything
- // eslint-disable-next-line no-implicit-coercion
- return applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));
- };
-
- // We alter the prototype because we must return a function, but there is
- // no way to create a function with a different prototype
- Object.setPrototypeOf(builder, proto);
-
- builder._generator = self;
- builder._styler = _styler;
- builder._isEmpty = _isEmpty;
-
- return builder;
-};
-
-const applyStyle = (self, string) => {
- if (self.level <= 0 || !string) {
- return self._isEmpty ? '' : string;
- }
-
- let styler = self._styler;
-
- if (styler === undefined) {
- return string;
- }
-
- const {openAll, closeAll} = styler;
- if (string.indexOf('\u001B') !== -1) {
- while (styler !== undefined) {
- // Replace any instances already present with a re-opening code
- // otherwise only the part of the string until said closing code
- // will be colored, and the rest will simply be 'plain'.
- string = stringReplaceAll(string, styler.close, styler.open);
-
- styler = styler.parent;
- }
- }
-
- // We can move both next actions out of loop, because remaining actions in loop won't have
- // any/visible effect on parts we add here. Close the styling before a linebreak and reopen
- // after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92
- const lfIndex = string.indexOf('\n');
- if (lfIndex !== -1) {
- string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
- }
-
- return openAll + string + closeAll;
-};
-
-let template;
-const chalkTag = (chalk, ...strings) => {
- const [firstString] = strings;
-
- if (!isArray(firstString) || !isArray(firstString.raw)) {
- // If chalk() was called by itself or with a string,
- // return the string itself as a string.
- return strings.join(' ');
- }
-
- const arguments_ = strings.slice(1);
- const parts = [firstString.raw[0]];
-
- for (let i = 1; i < firstString.length; i++) {
- parts.push(
- String(arguments_[i - 1]).replace(/[{}\\]/g, '\\$&'),
- String(firstString.raw[i])
- );
- }
-
- if (template === undefined) {
- template = require('./templates');
- }
-
- return template(chalk, parts.join(''));
-};
-
-Object.defineProperties(Chalk.prototype, styles);
-
-const chalk = Chalk(); // eslint-disable-line new-cap
-chalk.supportsColor = stdoutColor;
-chalk.stderr = Chalk({level: stderrColor ? stderrColor.level : 0}); // eslint-disable-line new-cap
-chalk.stderr.supportsColor = stderrColor;
-
-module.exports = chalk;
diff --git a/includes/langcheck/node_modules/chalk/source/templates.js b/includes/langcheck/node_modules/chalk/source/templates.js
deleted file mode 100644
index b130949..0000000
--- a/includes/langcheck/node_modules/chalk/source/templates.js
+++ /dev/null
@@ -1,134 +0,0 @@
-'use strict';
-const TEMPLATE_REGEX = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi;
-const STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g;
-const STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/;
-const ESCAPE_REGEX = /\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi;
-
-const ESCAPES = new Map([
- ['n', '\n'],
- ['r', '\r'],
- ['t', '\t'],
- ['b', '\b'],
- ['f', '\f'],
- ['v', '\v'],
- ['0', '\0'],
- ['\\', '\\'],
- ['e', '\u001B'],
- ['a', '\u0007']
-]);
-
-function unescape(c) {
- const u = c[0] === 'u';
- const bracket = c[1] === '{';
-
- if ((u && !bracket && c.length === 5) || (c[0] === 'x' && c.length === 3)) {
- return String.fromCharCode(parseInt(c.slice(1), 16));
- }
-
- if (u && bracket) {
- return String.fromCodePoint(parseInt(c.slice(2, -1), 16));
- }
-
- return ESCAPES.get(c) || c;
-}
-
-function parseArguments(name, arguments_) {
- const results = [];
- const chunks = arguments_.trim().split(/\s*,\s*/g);
- let matches;
-
- for (const chunk of chunks) {
- const number = Number(chunk);
- if (!Number.isNaN(number)) {
- results.push(number);
- } else if ((matches = chunk.match(STRING_REGEX))) {
- results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape(escape) : character));
- } else {
- throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`);
- }
- }
-
- return results;
-}
-
-function parseStyle(style) {
- STYLE_REGEX.lastIndex = 0;
-
- const results = [];
- let matches;
-
- while ((matches = STYLE_REGEX.exec(style)) !== null) {
- const name = matches[1];
-
- if (matches[2]) {
- const args = parseArguments(name, matches[2]);
- results.push([name].concat(args));
- } else {
- results.push([name]);
- }
- }
-
- return results;
-}
-
-function buildStyle(chalk, styles) {
- const enabled = {};
-
- for (const layer of styles) {
- for (const style of layer.styles) {
- enabled[style[0]] = layer.inverse ? null : style.slice(1);
- }
- }
-
- let current = chalk;
- for (const [styleName, styles] of Object.entries(enabled)) {
- if (!Array.isArray(styles)) {
- continue;
- }
-
- if (!(styleName in current)) {
- throw new Error(`Unknown Chalk style: ${styleName}`);
- }
-
- current = styles.length > 0 ? current[styleName](...styles) : current[styleName];
- }
-
- return current;
-}
-
-module.exports = (chalk, temporary) => {
- const styles = [];
- const chunks = [];
- let chunk = [];
-
- // eslint-disable-next-line max-params
- temporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => {
- if (escapeCharacter) {
- chunk.push(unescape(escapeCharacter));
- } else if (style) {
- const string = chunk.join('');
- chunk = [];
- chunks.push(styles.length === 0 ? string : buildStyle(chalk, styles)(string));
- styles.push({inverse, styles: parseStyle(style)});
- } else if (close) {
- if (styles.length === 0) {
- throw new Error('Found extraneous } in Chalk template literal');
- }
-
- chunks.push(buildStyle(chalk, styles)(chunk.join('')));
- chunk = [];
- styles.pop();
- } else {
- chunk.push(character);
- }
- });
-
- chunks.push(chunk.join(''));
-
- if (styles.length > 0) {
- const errMessage = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? '' : 's'} (\`}\`)`;
- throw new Error(errMessage);
- }
-
- return chunks.join('');
-};
diff --git a/includes/langcheck/node_modules/chalk/source/util.js b/includes/langcheck/node_modules/chalk/source/util.js
deleted file mode 100644
index ca466fd..0000000
--- a/includes/langcheck/node_modules/chalk/source/util.js
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-
-const stringReplaceAll = (string, substring, replacer) => {
- let index = string.indexOf(substring);
- if (index === -1) {
- return string;
- }
-
- const substringLength = substring.length;
- let endIndex = 0;
- let returnValue = '';
- do {
- returnValue += string.substr(endIndex, index - endIndex) + substring + replacer;
- endIndex = index + substringLength;
- index = string.indexOf(substring, endIndex);
- } while (index !== -1);
-
- returnValue += string.substr(endIndex);
- return returnValue;
-};
-
-const stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => {
- let endIndex = 0;
- let returnValue = '';
- do {
- const gotCR = string[index - 1] === '\r';
- returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? '\r\n' : '\n') + postfix;
- endIndex = index + 1;
- index = string.indexOf('\n', endIndex);
- } while (index !== -1);
-
- returnValue += string.substr(endIndex);
- return returnValue;
-};
-
-module.exports = {
- stringReplaceAll,
- stringEncaseCRLFWithFirstIndex
-};
diff --git a/includes/langcheck/node_modules/color-convert/CHANGELOG.md b/includes/langcheck/node_modules/color-convert/CHANGELOG.md
deleted file mode 100644
index 0a7bce4..0000000
--- a/includes/langcheck/node_modules/color-convert/CHANGELOG.md
+++ /dev/null
@@ -1,54 +0,0 @@
-# 1.0.0 - 2016-01-07
-
-- Removed: unused speed test
-- Added: Automatic routing between previously unsupported conversions
-([#27](https://github.com/Qix-/color-convert/pull/27))
-- Removed: `xxx2xxx()` and `xxx2xxxRaw()` functions
-([#27](https://github.com/Qix-/color-convert/pull/27))
-- Removed: `convert()` class
-([#27](https://github.com/Qix-/color-convert/pull/27))
-- Changed: all functions to lookup dictionary
-([#27](https://github.com/Qix-/color-convert/pull/27))
-- Changed: `ansi` to `ansi256`
-([#27](https://github.com/Qix-/color-convert/pull/27))
-- Fixed: argument grouping for functions requiring only one argument
-([#27](https://github.com/Qix-/color-convert/pull/27))
-
-# 0.6.0 - 2015-07-23
-
-- Added: methods to handle
-[ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) 16/256 colors:
- - rgb2ansi16
- - rgb2ansi
- - hsl2ansi16
- - hsl2ansi
- - hsv2ansi16
- - hsv2ansi
- - hwb2ansi16
- - hwb2ansi
- - cmyk2ansi16
- - cmyk2ansi
- - keyword2ansi16
- - keyword2ansi
- - ansi162rgb
- - ansi162hsl
- - ansi162hsv
- - ansi162hwb
- - ansi162cmyk
- - ansi162keyword
- - ansi2rgb
- - ansi2hsl
- - ansi2hsv
- - ansi2hwb
- - ansi2cmyk
- - ansi2keyword
-([#18](https://github.com/harthur/color-convert/pull/18))
-
-# 0.5.3 - 2015-06-02
-
-- Fixed: hsl2hsv does not return `NaN` anymore when using `[0,0,0]`
-([#15](https://github.com/harthur/color-convert/issues/15))
-
----
-
-Check out commit logs for older releases
diff --git a/includes/langcheck/node_modules/color-convert/LICENSE b/includes/langcheck/node_modules/color-convert/LICENSE
deleted file mode 100644
index 5b4c386..0000000
--- a/includes/langcheck/node_modules/color-convert/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-Copyright (c) 2011-2016 Heather Arthur <fayearthur@gmail.com>
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
diff --git a/includes/langcheck/node_modules/color-convert/README.md b/includes/langcheck/node_modules/color-convert/README.md
deleted file mode 100644
index d4b08fc..0000000
--- a/includes/langcheck/node_modules/color-convert/README.md
+++ /dev/null
@@ -1,68 +0,0 @@
-# color-convert
-
-[![Build Status](https://travis-ci.org/Qix-/color-convert.svg?branch=master)](https://travis-ci.org/Qix-/color-convert)
-
-Color-convert is a color conversion library for JavaScript and node.
-It converts all ways between `rgb`, `hsl`, `hsv`, `hwb`, `cmyk`, `ansi`, `ansi16`, `hex` strings, and CSS `keyword`s (will round to closest):
-
-```js
-var convert = require('color-convert');
-
-convert.rgb.hsl(140, 200, 100); // [96, 48, 59]
-convert.keyword.rgb('blue'); // [0, 0, 255]
-
-var rgbChannels = convert.rgb.channels; // 3
-var cmykChannels = convert.cmyk.channels; // 4
-var ansiChannels = convert.ansi16.channels; // 1
-```
-
-# Install
-
-```console
-$ npm install color-convert
-```
-
-# API
-
-Simply get the property of the _from_ and _to_ conversion that you're looking for.
-
-All functions have a rounded and unrounded variant. By default, return values are rounded. To get the unrounded (raw) results, simply tack on `.raw` to the function.
-
-All 'from' functions have a hidden property called `.channels` that indicates the number of channels the function expects (not including alpha).
-
-```js
-var convert = require('color-convert');
-
-// Hex to LAB
-convert.hex.lab('DEADBF'); // [ 76, 21, -2 ]
-convert.hex.lab.raw('DEADBF'); // [ 75.56213190997677, 20.653827952644754, -2.290532499330533 ]
-
-// RGB to CMYK
-convert.rgb.cmyk(167, 255, 4); // [ 35, 0, 98, 0 ]
-convert.rgb.cmyk.raw(167, 255, 4); // [ 34.509803921568626, 0, 98.43137254901961, 0 ]
-```
-
-### Arrays
-All functions that accept multiple arguments also support passing an array.
-
-Note that this does **not** apply to functions that convert from a color that only requires one value (e.g. `keyword`, `ansi256`, `hex`, etc.)
-
-```js
-var convert = require('color-convert');
-
-convert.rgb.hex(123, 45, 67); // '7B2D43'
-convert.rgb.hex([123, 45, 67]); // '7B2D43'
-```
-
-## Routing
-
-Conversions that don't have an _explicitly_ defined conversion (in [conversions.js](conversions.js)), but can be converted by means of sub-conversions (e.g. XYZ -> **RGB** -> CMYK), are automatically routed together. This allows just about any color model supported by `color-convert` to be converted to any other model, so long as a sub-conversion path exists. This is also true for conversions requiring more than one step in between (e.g. LCH -> **LAB** -> **XYZ** -> **RGB** -> Hex).
-
-Keep in mind that extensive conversions _may_ result in a loss of precision, and exist only to be complete. For a list of "direct" (single-step) conversions, see [conversions.js](conversions.js).
-
-# Contribute
-
-If there is a new model you would like to support, or want to add a direct conversion between two existing models, please send us a pull request.
-
-# License
-Copyright &copy; 2011-2016, Heather Arthur and Josh Junon. Licensed under the [MIT License](LICENSE).
diff --git a/includes/langcheck/node_modules/color-convert/conversions.js b/includes/langcheck/node_modules/color-convert/conversions.js
deleted file mode 100644
index 2657f26..0000000
--- a/includes/langcheck/node_modules/color-convert/conversions.js
+++ /dev/null
@@ -1,839 +0,0 @@
-/* MIT license */
-/* eslint-disable no-mixed-operators */
-const cssKeywords = require('color-name');
-
-// NOTE: conversions should only return primitive values (i.e. arrays, or
-// values that give correct `typeof` results).
-// do not use box values types (i.e. Number(), String(), etc.)
-
-const reverseKeywords = {};
-for (const key of Object.keys(cssKeywords)) {
- reverseKeywords[cssKeywords[key]] = key;
-}
-
-const convert = {
- 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']}
-};
-
-module.exports = convert;
-
-// Hide .channels and .labels properties
-for (const model of Object.keys(convert)) {
- if (!('channels' in convert[model])) {
- throw new Error('missing channels property: ' + model);
- }
-
- if (!('labels' in convert[model])) {
- throw new Error('missing channel labels property: ' + model);
- }
-
- if (convert[model].labels.length !== convert[model].channels) {
- throw new Error('channel and label counts mismatch: ' + model);
- }
-
- const {channels, labels} = convert[model];
- delete convert[model].channels;
- delete convert[model].labels;
- Object.defineProperty(convert[model], 'channels', {value: channels});
- Object.defineProperty(convert[model], 'labels', {value: labels});
-}
-
-convert.rgb.hsl = function (rgb) {
- const r = rgb[0] / 255;
- const g = rgb[1] / 255;
- const b = rgb[2] / 255;
- const min = Math.min(r, g, b);
- const max = Math.max(r, g, b);
- const delta = max - min;
- let h;
- let s;
-
- if (max === min) {
- h = 0;
- } else if (r === max) {
- h = (g - b) / delta;
- } else if (g === max) {
- h = 2 + (b - r) / delta;
- } else if (b === max) {
- h = 4 + (r - g) / delta;
- }
-
- h = Math.min(h * 60, 360);
-
- if (h < 0) {
- h += 360;
- }
-
- const l = (min + max) / 2;
-
- if (max === min) {
- s = 0;
- } else if (l <= 0.5) {
- s = delta / (max + min);
- } else {
- s = delta / (2 - max - min);
- }
-
- return [h, s * 100, l * 100];
-};
-
-convert.rgb.hsv = function (rgb) {
- let rdif;
- let gdif;
- let bdif;
- let h;
- let s;
-
- const r = rgb[0] / 255;
- const g = rgb[1] / 255;
- const b = rgb[2] / 255;
- const v = Math.max(r, g, b);
- const diff = v - Math.min(r, g, b);
- const diffc = function (c) {
- return (v - c) / 6 / diff + 1 / 2;
- };
-
- if (diff === 0) {
- h = 0;
- s = 0;
- } else {
- s = diff / v;
- rdif = diffc(r);
- gdif = diffc(g);
- bdif = diffc(b);
-
- if (r === v) {
- h = bdif - gdif;
- } else if (g === v) {
- h = (1 / 3) + rdif - bdif;
- } else if (b === v) {
- h = (2 / 3) + gdif - rdif;
- }
-
- if (h < 0) {
- h += 1;
- } else if (h > 1) {
- h -= 1;
- }
- }
-
- return [
- h * 360,
- s * 100,
- v * 100
- ];
-};
-
-convert.rgb.hwb = function (rgb) {
- const r = rgb[0];
- const g = rgb[1];
- let b = rgb[2];
- const h = convert.rgb.hsl(rgb)[0];
- const w = 1 / 255 * Math.min(r, Math.min(g, b));
-
- b = 1 - 1 / 255 * Math.max(r, Math.max(g, b));
-
- return [h, w * 100, b * 100];
-};
-
-convert.rgb.cmyk = function (rgb) {
- const r = rgb[0] / 255;
- const g = rgb[1] / 255;
- const b = rgb[2] / 255;
-
- const k = Math.min(1 - r, 1 - g, 1 - b);
- const c = (1 - r - k) / (1 - k) || 0;
- const m = (1 - g - k) / (1 - k) || 0;
- const y = (1 - b - k) / (1 - k) || 0;
-
- return [c * 100, m * 100, y * 100, k * 100];
-};
-
-function comparativeDistance(x, y) {
- /*
- See https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance
- */
- return (
- ((x[0] - y[0]) ** 2) +
- ((x[1] - y[1]) ** 2) +
- ((x[2] - y[2]) ** 2)
- );
-}
-
-convert.rgb.keyword = function (rgb) {
- const reversed = reverseKeywords[rgb];
- if (reversed) {
- return reversed;
- }
-
- let currentClosestDistance = Infinity;
- let currentClosestKeyword;
-
- for (const keyword of Object.keys(cssKeywords)) {
- const value = cssKeywords[keyword];
-
- // Compute comparative distance
- const distance = comparativeDistance(rgb, value);
-
- // Check if its less, if so set as closest
- if (distance < currentClosestDistance) {
- currentClosestDistance = distance;
- currentClosestKeyword = keyword;
- }
- }
-
- return currentClosestKeyword;
-};
-
-convert.keyword.rgb = function (keyword) {
- return cssKeywords[keyword];
-};
-
-convert.rgb.xyz = function (rgb) {
- let r = rgb[0] / 255;
- let g = rgb[1] / 255;
- let b = rgb[2] / 255;
-
- // Assume sRGB
- r = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);
- g = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);
- b = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);
-
- const x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);
- const y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);
- const z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);
-
- return [x * 100, y * 100, z * 100];
-};
-
-convert.rgb.lab = function (rgb) {
- const xyz = convert.rgb.xyz(rgb);
- let x = xyz[0];
- let y = xyz[1];
- let z = xyz[2];
-
- x /= 95.047;
- y /= 100;
- z /= 108.883;
-
- x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);
- y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);
- z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);
-
- const l = (116 * y) - 16;
- const a = 500 * (x - y);
- const b = 200 * (y - z);
-
- return [l, a, b];
-};
-
-convert.hsl.rgb = function (hsl) {
- const h = hsl[0] / 360;
- const s = hsl[1] / 100;
- const l = hsl[2] / 100;
- let t2;
- let t3;
- let val;
-
- if (s === 0) {
- val = l * 255;
- return [val, val, val];
- }
-
- if (l < 0.5) {
- t2 = l * (1 + s);
- } else {
- t2 = l + s - l * s;
- }
-
- const t1 = 2 * l - t2;
-
- const rgb = [0, 0, 0];
- for (let i = 0; i < 3; i++) {
- t3 = h + 1 / 3 * -(i - 1);
- if (t3 < 0) {
- t3++;
- }
-
- if (t3 > 1) {
- t3--;
- }
-
- if (6 * t3 < 1) {
- val = t1 + (t2 - t1) * 6 * t3;
- } else if (2 * t3 < 1) {
- val = t2;
- } else if (3 * t3 < 2) {
- val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;
- } else {
- val = t1;
- }
-
- rgb[i] = val * 255;
- }
-
- return rgb;
-};
-
-convert.hsl.hsv = function (hsl) {
- const h = hsl[0];
- let s = hsl[1] / 100;
- let l = hsl[2] / 100;
- let smin = s;
- const lmin = Math.max(l, 0.01);
-
- l *= 2;
- s *= (l <= 1) ? l : 2 - l;
- smin *= lmin <= 1 ? lmin : 2 - lmin;
- const v = (l + s) / 2;
- const sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);
-
- return [h, sv * 100, v * 100];
-};
-
-convert.hsv.rgb = function (hsv) {
- const h = hsv[0] / 60;
- const s = hsv[1] / 100;
- let v = hsv[2] / 100;
- const hi = Math.floor(h) % 6;
-
- const f = h - Math.floor(h);
- const p = 255 * v * (1 - s);
- const q = 255 * v * (1 - (s * f));
- const t = 255 * v * (1 - (s * (1 - f)));
- v *= 255;
-
- switch (hi) {
- case 0:
- return [v, t, p];
- case 1:
- return [q, v, p];
- case 2:
- return [p, v, t];
- case 3:
- return [p, q, v];
- case 4:
- return [t, p, v];
- case 5:
- return [v, p, q];
- }
-};
-
-convert.hsv.hsl = function (hsv) {
- const h = hsv[0];
- const s = hsv[1] / 100;
- const v = hsv[2] / 100;
- const vmin = Math.max(v, 0.01);
- let sl;
- let l;
-
- l = (2 - s) * v;
- const lmin = (2 - s) * vmin;
- sl = s * vmin;
- sl /= (lmin <= 1) ? lmin : 2 - lmin;
- sl = sl || 0;
- l /= 2;
-
- return [h, sl * 100, l * 100];
-};
-
-// http://dev.w3.org/csswg/css-color/#hwb-to-rgb
-convert.hwb.rgb = function (hwb) {
- const h = hwb[0] / 360;
- let wh = hwb[1] / 100;
- let bl = hwb[2] / 100;
- const ratio = wh + bl;
- let f;
-
- // Wh + bl cant be > 1
- if (ratio > 1) {
- wh /= ratio;
- bl /= ratio;
- }
-
- const i = Math.floor(6 * h);
- const v = 1 - bl;
- f = 6 * h - i;
-
- if ((i & 0x01) !== 0) {
- f = 1 - f;
- }
-
- const n = wh + f * (v - wh); // Linear interpolation
-
- let r;
- let g;
- let b;
- /* eslint-disable max-statements-per-line,no-multi-spaces */
- switch (i) {
- default:
- case 6:
- case 0: r = v; g = n; b = wh; break;
- case 1: r = n; g = v; b = wh; break;
- case 2: r = wh; g = v; b = n; break;
- case 3: r = wh; g = n; b = v; break;
- case 4: r = n; g = wh; b = v; break;
- case 5: r = v; g = wh; b = n; break;
- }
- /* eslint-enable max-statements-per-line,no-multi-spaces */
-
- return [r * 255, g * 255, b * 255];
-};
-
-convert.cmyk.rgb = function (cmyk) {
- const c = cmyk[0] / 100;
- const m = cmyk[1] / 100;
- const y = cmyk[2] / 100;
- const k = cmyk[3] / 100;
-
- const r = 1 - Math.min(1, c * (1 - k) + k);
- const g = 1 - Math.min(1, m * (1 - k) + k);
- const b = 1 - Math.min(1, y * (1 - k) + k);
-
- return [r * 255, g * 255, b * 255];
-};
-
-convert.xyz.rgb = function (xyz) {
- const x = xyz[0] / 100;
- const y = xyz[1] / 100;
- const z = xyz[2] / 100;
- let r;
- let g;
- let b;
-
- r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);
- g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);
- b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);
-
- // Assume sRGB
- r = r > 0.0031308
- ? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)
- : r * 12.92;
-
- g = g > 0.0031308
- ? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)
- : g * 12.92;
-
- b = b > 0.0031308
- ? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)
- : b * 12.92;
-
- r = Math.min(Math.max(0, r), 1);
- g = Math.min(Math.max(0, g), 1);
- b = Math.min(Math.max(0, b), 1);
-
- return [r * 255, g * 255, b * 255];
-};
-
-convert.xyz.lab = function (xyz) {
- let x = xyz[0];
- let y = xyz[1];
- let z = xyz[2];
-
- x /= 95.047;
- y /= 100;
- z /= 108.883;
-
- x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);
- y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);
- z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);
-
- const l = (116 * y) - 16;
- const a = 500 * (x - y);
- const b = 200 * (y - z);
-
- return [l, a, b];
-};
-
-convert.lab.xyz = function (lab) {
- const l = lab[0];
- const a = lab[1];
- const b = lab[2];
- let x;
- let y;
- let z;
-
- y = (l + 16) / 116;
- x = a / 500 + y;
- z = y - b / 200;
-
- const y2 = y ** 3;
- const x2 = x ** 3;
- const z2 = z ** 3;
- y = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;
- x = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;
- z = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;
-
- x *= 95.047;
- y *= 100;
- z *= 108.883;
-
- return [x, y, z];
-};
-
-convert.lab.lch = function (lab) {
- const l = lab[0];
- const a = lab[1];
- const b = lab[2];
- let h;
-
- const hr = Math.atan2(b, a);
- h = hr * 360 / 2 / Math.PI;
-
- if (h < 0) {
- h += 360;
- }
-
- const c = Math.sqrt(a * a + b * b);
-
- return [l, c, h];
-};
-
-convert.lch.lab = function (lch) {
- const l = lch[0];
- const c = lch[1];
- const h = lch[2];
-
- const hr = h / 360 * 2 * Math.PI;
- const a = c * Math.cos(hr);
- const b = c * Math.sin(hr);
-
- return [l, a, b];
-};
-
-convert.rgb.ansi16 = function (args, saturation = null) {
- const [r, g, b] = args;
- let value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization
-
- value = Math.round(value / 50);
-
- if (value === 0) {
- return 30;
- }
-
- let ansi = 30
- + ((Math.round(b / 255) << 2)
- | (Math.round(g / 255) << 1)
- | Math.round(r / 255));
-
- if (value === 2) {
- ansi += 60;
- }
-
- return ansi;
-};
-
-convert.hsv.ansi16 = function (args) {
- // Optimization here; we already know the value and don't need to get
- // it converted for us.
- return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);
-};
-
-convert.rgb.ansi256 = function (args) {
- const r = args[0];
- const g = args[1];
- const b = args[2];
-
- // We use the extended greyscale palette here, with the exception of
- // black and white. normal palette only has 4 greyscale shades.
- if (r === g && g === b) {
- if (r < 8) {
- return 16;
- }
-
- if (r > 248) {
- return 231;
- }
-
- return Math.round(((r - 8) / 247) * 24) + 232;
- }
-
- const ansi = 16
- + (36 * Math.round(r / 255 * 5))
- + (6 * Math.round(g / 255 * 5))
- + Math.round(b / 255 * 5);
-
- return ansi;
-};
-
-convert.ansi16.rgb = function (args) {
- let color = args % 10;
-
- // Handle greyscale
- if (color === 0 || color === 7) {
- if (args > 50) {
- color += 3.5;
- }
-
- color = color / 10.5 * 255;
-
- return [color, color, color];
- }
-
- const mult = (~~(args > 50) + 1) * 0.5;
- const r = ((color & 1) * mult) * 255;
- const g = (((color >> 1) & 1) * mult) * 255;
- const b = (((color >> 2) & 1) * mult) * 255;
-
- return [r, g, b];
-};
-
-convert.ansi256.rgb = function (args) {
- // Handle greyscale
- if (args >= 232) {
- const c = (args - 232) * 10 + 8;
- return [c, c, c];
- }
-
- args -= 16;
-
- let rem;
- const r = Math.floor(args / 36) / 5 * 255;
- const g = Math.floor((rem = args % 36) / 6) / 5 * 255;
- const b = (rem % 6) / 5 * 255;
-
- return [r, g, b];
-};
-
-convert.rgb.hex = function (args) {
- const integer = ((Math.round(args[0]) & 0xFF) << 16)
- + ((Math.round(args[1]) & 0xFF) << 8)
- + (Math.round(args[2]) & 0xFF);
-
- const string = integer.toString(16).toUpperCase();
- return '000000'.substring(string.length) + string;
-};
-
-convert.hex.rgb = function (args) {
- const match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
- if (!match) {
- return [0, 0, 0];
- }
-
- let colorString = match[0];
-
- if (match[0].length === 3) {
- colorString = colorString.split('').map(char => {
- return char + char;
- }).join('');
- }
-
- const integer = parseInt(colorString, 16);
- const r = (integer >> 16) & 0xFF;
- const g = (integer >> 8) & 0xFF;
- const b = integer & 0xFF;
-
- return [r, g, b];
-};
-
-convert.rgb.hcg = function (rgb) {
- const r = rgb[0] / 255;
- const g = rgb[1] / 255;
- const b = rgb[2] / 255;
- const max = Math.max(Math.max(r, g), b);
- const min = Math.min(Math.min(r, g), b);
- const chroma = (max - min);
- let grayscale;
- let hue;
-
- if (chroma < 1) {
- grayscale = min / (1 - chroma);
- } else {
- grayscale = 0;
- }
-
- if (chroma <= 0) {
- hue = 0;
- } else
- if (max === r) {
- hue = ((g - b) / chroma) % 6;
- } else
- if (max === g) {
- hue = 2 + (b - r) / chroma;
- } else {
- hue = 4 + (r - g) / chroma;
- }
-
- hue /= 6;
- hue %= 1;
-
- return [hue * 360, chroma * 100, grayscale * 100];
-};
-
-convert.hsl.hcg = function (hsl) {
- const s = hsl[1] / 100;
- const l = hsl[2] / 100;
-
- const c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));
-
- let f = 0;
- if (c < 1.0) {
- f = (l - 0.5 * c) / (1.0 - c);
- }
-
- return [hsl[0], c * 100, f * 100];
-};
-
-convert.hsv.hcg = function (hsv) {
- const s = hsv[1] / 100;
- const v = hsv[2] / 100;
-
- const c = s * v;
- let f = 0;
-
- if (c < 1.0) {
- f = (v - c) / (1 - c);
- }
-
- return [hsv[0], c * 100, f * 100];
-};
-
-convert.hcg.rgb = function (hcg) {
- const h = hcg[0] / 360;
- const c = hcg[1] / 100;
- const g = hcg[2] / 100;
-
- if (c === 0.0) {
- return [g * 255, g * 255, g * 255];
- }
-
- const pure = [0, 0, 0];
- const hi = (h % 1) * 6;
- const v = hi % 1;
- const w = 1 - v;
- let mg = 0;
-
- /* eslint-disable max-statements-per-line */
- switch (Math.floor(hi)) {
- case 0:
- pure[0] = 1; pure[1] = v; pure[2] = 0; break;
- case 1:
- pure[0] = w; pure[1] = 1; pure[2] = 0; break;
- case 2:
- pure[0] = 0; pure[1] = 1; pure[2] = v; break;
- case 3:
- pure[0] = 0; pure[1] = w; pure[2] = 1; break;
- case 4:
- pure[0] = v; pure[1] = 0; pure[2] = 1; break;
- default:
- pure[0] = 1; pure[1] = 0; pure[2] = w;
- }
- /* eslint-enable max-statements-per-line */
-
- mg = (1.0 - c) * g;
-
- return [
- (c * pure[0] + mg) * 255,
- (c * pure[1] + mg) * 255,
- (c * pure[2] + mg) * 255
- ];
-};
-
-convert.hcg.hsv = function (hcg) {
- const c = hcg[1] / 100;
- const g = hcg[2] / 100;
-
- const v = c + g * (1.0 - c);
- let f = 0;
-
- if (v > 0.0) {
- f = c / v;
- }
-
- return [hcg[0], f * 100, v * 100];
-};
-
-convert.hcg.hsl = function (hcg) {
- const c = hcg[1] / 100;
- const g = hcg[2] / 100;
-
- const l = g * (1.0 - c) + 0.5 * c;
- let s = 0;
-
- if (l > 0.0 && l < 0.5) {
- s = c / (2 * l);
- } else
- if (l >= 0.5 && l < 1.0) {
- s = c / (2 * (1 - l));
- }
-
- return [hcg[0], s * 100, l * 100];
-};
-
-convert.hcg.hwb = function (hcg) {
- const c = hcg[1] / 100;
- const g = hcg[2] / 100;
- const v = c + g * (1.0 - c);
- return [hcg[0], (v - c) * 100, (1 - v) * 100];
-};
-
-convert.hwb.hcg = function (hwb) {
- const w = hwb[1] / 100;
- const b = hwb[2] / 100;
- const v = 1 - b;
- const c = v - w;
- let g = 0;
-
- if (c < 1) {
- g = (v - c) / (1 - c);
- }
-
- return [hwb[0], c * 100, g * 100];
-};
-
-convert.apple.rgb = function (apple) {
- return [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];
-};
-
-convert.rgb.apple = function (rgb) {
- return [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];
-};
-
-convert.gray.rgb = function (args) {
- return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];
-};
-
-convert.gray.hsl = function (args) {
- return [0, 0, args[0]];
-};
-
-convert.gray.hsv = convert.gray.hsl;
-
-convert.gray.hwb = function (gray) {
- return [0, 100, gray[0]];
-};
-
-convert.gray.cmyk = function (gray) {
- return [0, 0, 0, gray[0]];
-};
-
-convert.gray.lab = function (gray) {
- return [gray[0], 0, 0];
-};
-
-convert.gray.hex = function (gray) {
- const val = Math.round(gray[0] / 100 * 255) & 0xFF;
- const integer = (val << 16) + (val << 8) + val;
-
- const string = integer.toString(16).toUpperCase();
- return '000000'.substring(string.length) + string;
-};
-
-convert.rgb.gray = function (rgb) {
- const val = (rgb[0] + rgb[1] + rgb[2]) / 3;
- return [val / 255 * 100];
-};
diff --git a/includes/langcheck/node_modules/color-convert/index.js b/includes/langcheck/node_modules/color-convert/index.js
deleted file mode 100644
index b648e57..0000000
--- a/includes/langcheck/node_modules/color-convert/index.js
+++ /dev/null
@@ -1,81 +0,0 @@
-const conversions = require('./conversions');
-const route = require('./route');
-
-const convert = {};
-
-const models = Object.keys(conversions);
-
-function wrapRaw(fn) {
- const wrappedFn = function (...args) {
- const arg0 = args[0];
- if (arg0 === undefined || arg0 === null) {
- return arg0;
- }
-
- if (arg0.length > 1) {
- args = arg0;
- }
-
- return fn(args);
- };
-
- // Preserve .conversion property if there is one
- if ('conversion' in fn) {
- wrappedFn.conversion = fn.conversion;
- }
-
- return wrappedFn;
-}
-
-function wrapRounded(fn) {
- const wrappedFn = function (...args) {
- const arg0 = args[0];
-
- if (arg0 === undefined || arg0 === null) {
- return arg0;
- }
-
- if (arg0.length > 1) {
- args = arg0;
- }
-
- const result = fn(args);
-
- // We're assuming the result is an array here.
- // see notice in conversions.js; don't use box types
- // in conversion functions.
- if (typeof result === 'object') {
- for (let len = result.length, i = 0; i < len; i++) {
- result[i] = Math.round(result[i]);
- }
- }
-
- return result;
- };
-
- // Preserve .conversion property if there is one
- if ('conversion' in fn) {
- wrappedFn.conversion = fn.conversion;
- }
-
- return wrappedFn;
-}
-
-models.forEach(fromModel => {
- convert[fromModel] = {};
-
- Object.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});
- Object.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});
-
- const routes = route(fromModel);
- const routeModels = Object.keys(routes);
-
- routeModels.forEach(toModel => {
- const fn = routes[toModel];
-
- convert[fromModel][toModel] = wrapRounded(fn);
- convert[fromModel][toModel].raw = wrapRaw(fn);
- });
-});
-
-module.exports = convert;
diff --git a/includes/langcheck/node_modules/color-convert/package.json b/includes/langcheck/node_modules/color-convert/package.json
deleted file mode 100644
index 6e48000..0000000
--- a/includes/langcheck/node_modules/color-convert/package.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "name": "color-convert",
- "description": "Plain color conversion functions",
- "version": "2.0.1",
- "author": "Heather Arthur <fayearthur@gmail.com>",
- "license": "MIT",
- "repository": "Qix-/color-convert",
- "scripts": {
- "pretest": "xo",
- "test": "node test/basic.js"
- },
- "engines": {
- "node": ">=7.0.0"
- },
- "keywords": [
- "color",
- "colour",
- "convert",
- "converter",
- "conversion",
- "rgb",
- "hsl",
- "hsv",
- "hwb",
- "cmyk",
- "ansi",
- "ansi16"
- ],
- "files": [
- "index.js",
- "conversions.js",
- "route.js"
- ],
- "xo": {
- "rules": {
- "default-case": 0,
- "no-inline-comments": 0,
- "operator-linebreak": 0
- }
- },
- "devDependencies": {
- "chalk": "^2.4.2",
- "xo": "^0.24.0"
- },
- "dependencies": {
- "color-name": "~1.1.4"
- }
-}
diff --git a/includes/langcheck/node_modules/color-convert/route.js b/includes/langcheck/node_modules/color-convert/route.js
deleted file mode 100644
index 1a08521..0000000
--- a/includes/langcheck/node_modules/color-convert/route.js
+++ /dev/null
@@ -1,97 +0,0 @@
-const conversions = require('./conversions');
-
-/*
- This function routes a model to all other models.
-
- all functions that are routed have a property `.conversion` attached
- to the returned synthetic function. This property is an array
- of strings, each with the steps in between the 'from' and 'to'
- color models (inclusive).
-
- conversions that are not possible simply are not included.
-*/
-
-function buildGraph() {
- const graph = {};
- // https://jsperf.com/object-keys-vs-for-in-with-closure/3
- const models = Object.keys(conversions);
-
- for (let len = models.length, i = 0; i < len; i++) {
- graph[models[i]] = {
- // http://jsperf.com/1-vs-infinity
- // micro-opt, but this is simple.
- distance: -1,
- parent: null
- };
- }
-
- return graph;
-}
-
-// https://en.wikipedia.org/wiki/Breadth-first_search
-function deriveBFS(fromModel) {
- const graph = buildGraph();
- const queue = [fromModel]; // Unshift -> queue -> pop
-
- graph[fromModel].distance = 0;
-
- while (queue.length) {
- const current = queue.pop();
- const adjacents = Object.keys(conversions[current]);
-
- for (let len = adjacents.length, i = 0; i < len; i++) {
- const adjacent = adjacents[i];
- const node = graph[adjacent];
-
- if (node.distance === -1) {
- node.distance = graph[current].distance + 1;
- node.parent = current;
- queue.unshift(adjacent);
- }
- }
- }
-
- return graph;
-}
-
-function link(from, to) {
- return function (args) {
- return to(from(args));
- };
-}
-
-function wrapConversion(toModel, graph) {
- const path = [graph[toModel].parent, toModel];
- let fn = conversions[graph[toModel].parent][toModel];
-
- let cur = graph[toModel].parent;
- while (graph[cur].parent) {
- path.unshift(graph[cur].parent);
- fn = link(conversions[graph[cur].parent][cur], fn);
- cur = graph[cur].parent;
- }
-
- fn.conversion = path;
- return fn;
-}
-
-module.exports = function (fromModel) {
- const graph = deriveBFS(fromModel);
- const conversion = {};
-
- const models = Object.keys(graph);
- for (let len = models.length, i = 0; i < len; i++) {
- const toModel = models[i];
- const node = graph[toModel];
-
- if (node.parent === null) {
- // No possible conversion, or this node is the source model.
- continue;
- }
-
- conversion[toModel] = wrapConversion(toModel, graph);
- }
-
- return conversion;
-};
-
diff --git a/includes/langcheck/node_modules/color-name/LICENSE b/includes/langcheck/node_modules/color-name/LICENSE
deleted file mode 100644
index c6b1001..0000000
--- a/includes/langcheck/node_modules/color-name/LICENSE
+++ /dev/null
@@ -1,8 +0,0 @@
-The MIT License (MIT)
-Copyright (c) 2015 Dmitry Ivanov
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file
diff --git a/includes/langcheck/node_modules/color-name/README.md b/includes/langcheck/node_modules/color-name/README.md
deleted file mode 100644
index 932b979..0000000
--- a/includes/langcheck/node_modules/color-name/README.md
+++ /dev/null
@@ -1,11 +0,0 @@
-A JSON with color names and its values. Based on http://dev.w3.org/csswg/css-color/#named-colors.
-
-[![NPM](https://nodei.co/npm/color-name.png?mini=true)](https://nodei.co/npm/color-name/)
-
-
-```js
-var colors = require('color-name');
-colors.red //[255,0,0]
-```
-
-<a href="LICENSE"><img src="https://upload.wikimedia.org/wikipedia/commons/0/0c/MIT_logo.svg" width="120"/></a>
diff --git a/includes/langcheck/node_modules/color-name/index.js b/includes/langcheck/node_modules/color-name/index.js
deleted file mode 100644
index b7c198a..0000000
--- a/includes/langcheck/node_modules/color-name/index.js
+++ /dev/null
@@ -1,152 +0,0 @@
-'use strict'
-
-module.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]
-};
diff --git a/includes/langcheck/node_modules/color-name/package.json b/includes/langcheck/node_modules/color-name/package.json
deleted file mode 100644
index 782dd82..0000000
--- a/includes/langcheck/node_modules/color-name/package.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "name": "color-name",
- "version": "1.1.4",
- "description": "A list of color names and its values",
- "main": "index.js",
- "files": [
- "index.js"
- ],
- "scripts": {
- "test": "node test.js"
- },
- "repository": {
- "type": "git",
- "url": "git@github.com:colorjs/color-name.git"
- },
- "keywords": [
- "color-name",
- "color",
- "color-keyword",
- "keyword"
- ],
- "author": "DY <dfcreative@gmail.com>",
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/colorjs/color-name/issues"
- },
- "homepage": "https://github.com/colorjs/color-name"
-}
diff --git a/includes/langcheck/node_modules/has-flag/index.d.ts b/includes/langcheck/node_modules/has-flag/index.d.ts
deleted file mode 100644
index a0a48c8..0000000
--- a/includes/langcheck/node_modules/has-flag/index.d.ts
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
-Check if [`argv`](https://nodejs.org/docs/latest/api/process.html#process_process_argv) has a specific flag.
-
-@param flag - CLI flag to look for. The `--` prefix is optional.
-@param argv - CLI arguments. Default: `process.argv`.
-@returns Whether the flag exists.
-
-@example
-```
-// $ ts-node foo.ts -f --unicorn --foo=bar -- --rainbow
-
-// foo.ts
-import hasFlag = require('has-flag');
-
-hasFlag('unicorn');
-//=> true
-
-hasFlag('--unicorn');
-//=> true
-
-hasFlag('f');
-//=> true
-
-hasFlag('-f');
-//=> true
-
-hasFlag('foo=bar');
-//=> true
-
-hasFlag('foo');
-//=> false
-
-hasFlag('rainbow');
-//=> false
-```
-*/
-declare function hasFlag(flag: string, argv?: string[]): boolean;
-
-export = hasFlag;
diff --git a/includes/langcheck/node_modules/has-flag/index.js b/includes/langcheck/node_modules/has-flag/index.js
deleted file mode 100644
index b6f80b1..0000000
--- a/includes/langcheck/node_modules/has-flag/index.js
+++ /dev/null
@@ -1,8 +0,0 @@
-'use strict';
-
-module.exports = (flag, argv = process.argv) => {
- const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
- const position = argv.indexOf(prefix + flag);
- const terminatorPosition = argv.indexOf('--');
- return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
-};
diff --git a/includes/langcheck/node_modules/has-flag/license b/includes/langcheck/node_modules/has-flag/license
deleted file mode 100644
index e7af2f7..0000000
--- a/includes/langcheck/node_modules/has-flag/license
+++ /dev/null
@@ -1,9 +0,0 @@
-MIT License
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/includes/langcheck/node_modules/has-flag/package.json b/includes/langcheck/node_modules/has-flag/package.json
deleted file mode 100644
index a9cba4b..0000000
--- a/includes/langcheck/node_modules/has-flag/package.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "name": "has-flag",
- "version": "4.0.0",
- "description": "Check if argv has a specific flag",
- "license": "MIT",
- "repository": "sindresorhus/has-flag",
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- "engines": {
- "node": ">=8"
- },
- "scripts": {
- "test": "xo && ava && tsd"
- },
- "files": [
- "index.js",
- "index.d.ts"
- ],
- "keywords": [
- "has",
- "check",
- "detect",
- "contains",
- "find",
- "flag",
- "cli",
- "command-line",
- "argv",
- "process",
- "arg",
- "args",
- "argument",
- "arguments",
- "getopt",
- "minimist",
- "optimist"
- ],
- "devDependencies": {
- "ava": "^1.4.1",
- "tsd": "^0.7.2",
- "xo": "^0.24.0"
- }
-}
diff --git a/includes/langcheck/node_modules/has-flag/readme.md b/includes/langcheck/node_modules/has-flag/readme.md
deleted file mode 100644
index 3f72dff..0000000
--- a/includes/langcheck/node_modules/has-flag/readme.md
+++ /dev/null
@@ -1,89 +0,0 @@
-# has-flag [![Build Status](https://travis-ci.org/sindresorhus/has-flag.svg?branch=master)](https://travis-ci.org/sindresorhus/has-flag)
-
-> Check if [`argv`](https://nodejs.org/docs/latest/api/process.html#process_process_argv) has a specific flag
-
-Correctly stops looking after an `--` argument terminator.
-
----
-
-<div align="center">
- <b>
- <a href="https://tidelift.com/subscription/pkg/npm-has-flag?utm_source=npm-has-flag&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
- </b>
- <br>
- <sub>
- Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
- </sub>
-</div>
-
----
-
-
-## Install
-
-```
-$ npm install has-flag
-```
-
-
-## Usage
-
-```js
-// foo.js
-const hasFlag = require('has-flag');
-
-hasFlag('unicorn');
-//=> true
-
-hasFlag('--unicorn');
-//=> true
-
-hasFlag('f');
-//=> true
-
-hasFlag('-f');
-//=> true
-
-hasFlag('foo=bar');
-//=> true
-
-hasFlag('foo');
-//=> false
-
-hasFlag('rainbow');
-//=> false
-```
-
-```
-$ node foo.js -f --unicorn --foo=bar -- --rainbow
-```
-
-
-## API
-
-### hasFlag(flag, [argv])
-
-Returns a boolean for whether the flag exists.
-
-#### flag
-
-Type: `string`
-
-CLI flag to look for. The `--` prefix is optional.
-
-#### argv
-
-Type: `string[]`<br>
-Default: `process.argv`
-
-CLI arguments.
-
-
-## Security
-
-To report a security vulnerability, please use the [Tidelift security contact](https://tidelift.com/security). Tidelift will coordinate the fix and disclosure.
-
-
-## License
-
-MIT © [Sindre Sorhus](https://sindresorhus.com)
diff --git a/includes/langcheck/node_modules/kleur/index.js b/includes/langcheck/node_modules/kleur/index.js
deleted file mode 100644
index 0bc6ec9..0000000
--- a/includes/langcheck/node_modules/kleur/index.js
+++ /dev/null
@@ -1,104 +0,0 @@
-'use strict';
-
-const { FORCE_COLOR, NODE_DISABLE_COLORS, TERM } = process.env;
-
-const $ = {
- enabled: !NODE_DISABLE_COLORS && TERM !== 'dumb' && FORCE_COLOR !== '0',
-
- // modifiers
- reset: init(0, 0),
- bold: init(1, 22),
- dim: init(2, 22),
- italic: init(3, 23),
- underline: init(4, 24),
- inverse: init(7, 27),
- hidden: init(8, 28),
- strikethrough: init(9, 29),
-
- // colors
- black: init(30, 39),
- red: init(31, 39),
- green: init(32, 39),
- yellow: init(33, 39),
- blue: init(34, 39),
- magenta: init(35, 39),
- cyan: init(36, 39),
- white: init(37, 39),
- gray: init(90, 39),
- grey: init(90, 39),
-
- // background colors
- bgBlack: init(40, 49),
- bgRed: init(41, 49),
- bgGreen: init(42, 49),
- bgYellow: init(43, 49),
- bgBlue: init(44, 49),
- bgMagenta: init(45, 49),
- bgCyan: init(46, 49),
- bgWhite: init(47, 49)
-};
-
-function run(arr, str) {
- let i=0, tmp, beg='', end='';
- for (; i < arr.length; i++) {
- tmp = arr[i];
- beg += tmp.open;
- end += tmp.close;
- if (str.includes(tmp.close)) {
- str = str.replace(tmp.rgx, tmp.close + tmp.open);
- }
- }
- return beg + str + end;
-}
-
-function chain(has, keys) {
- let ctx = { has, keys };
-
- ctx.reset = $.reset.bind(ctx);
- ctx.bold = $.bold.bind(ctx);
- ctx.dim = $.dim.bind(ctx);
- ctx.italic = $.italic.bind(ctx);
- ctx.underline = $.underline.bind(ctx);
- ctx.inverse = $.inverse.bind(ctx);
- ctx.hidden = $.hidden.bind(ctx);
- ctx.strikethrough = $.strikethrough.bind(ctx);
-
- ctx.black = $.black.bind(ctx);
- ctx.red = $.red.bind(ctx);
- ctx.green = $.green.bind(ctx);
- ctx.yellow = $.yellow.bind(ctx);
- ctx.blue = $.blue.bind(ctx);
- ctx.magenta = $.magenta.bind(ctx);
- ctx.cyan = $.cyan.bind(ctx);
- ctx.white = $.white.bind(ctx);
- ctx.gray = $.gray.bind(ctx);
- ctx.grey = $.grey.bind(ctx);
-
- ctx.bgBlack = $.bgBlack.bind(ctx);
- ctx.bgRed = $.bgRed.bind(ctx);
- ctx.bgGreen = $.bgGreen.bind(ctx);
- ctx.bgYellow = $.bgYellow.bind(ctx);
- ctx.bgBlue = $.bgBlue.bind(ctx);
- ctx.bgMagenta = $.bgMagenta.bind(ctx);
- ctx.bgCyan = $.bgCyan.bind(ctx);
- ctx.bgWhite = $.bgWhite.bind(ctx);
-
- return ctx;
-}
-
-function init(open, close) {
- let blk = {
- open: `\x1b[${open}m`,
- close: `\x1b[${close}m`,
- rgx: new RegExp(`\\x1b\\[${close}m`, 'g')
- };
- return function (txt) {
- if (this !== void 0 && this.has !== void 0) {
- this.has.includes(open) || (this.has.push(open),this.keys.push(blk));
- return txt === void 0 ? this : $.enabled ? run(this.keys, txt+'') : txt+'';
- }
- return txt === void 0 ? chain([open], [blk]) : $.enabled ? run([blk], txt+'') : txt+'';
- };
-}
-
-module.exports = $;
diff --git a/includes/langcheck/node_modules/kleur/kleur.d.ts b/includes/langcheck/node_modules/kleur/kleur.d.ts
deleted file mode 100644
index fdc26ca..0000000
--- a/includes/langcheck/node_modules/kleur/kleur.d.ts
+++ /dev/null
@@ -1,45 +0,0 @@
-// Originally by: Rogier Schouten <https://github.com/rogierschouten>
-// Adapted by: Madhav Varshney <https://github.com/madhavarshney>
-declare namespace kleur {
- interface Color {
- (x: string | number): string;
- (): Kleur;
- }
-
- interface Kleur {
- // Colors
- black: Color;
- red: Color;
- green: Color;
- yellow: Color;
- blue: Color;
- magenta: Color;
- cyan: Color;
- white: Color;
- gray: Color;
- grey: Color;
-
- // Backgrounds
- bgBlack: Color;
- bgRed: Color;
- bgGreen: Color;
- bgYellow: Color;
- bgBlue: Color;
- bgMagenta: Color;
- bgCyan: Color;
- bgWhite: Color;
-
- // Modifiers
- reset: Color;
- bold: Color;
- dim: Color;
- italic: Color;
- underline: Color;
- inverse: Color;
- hidden: Color;
- strikethrough: Color;
- }
-}
-
-declare let kleur: kleur.Kleur & { enabled: boolean };
-export = kleur;
diff --git a/includes/langcheck/node_modules/kleur/license b/includes/langcheck/node_modules/kleur/license
deleted file mode 100644
index a3f96f8..0000000
--- a/includes/langcheck/node_modules/kleur/license
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) Luke Edwards <luke.edwards05@gmail.com> (lukeed.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
diff --git a/includes/langcheck/node_modules/kleur/package.json b/includes/langcheck/node_modules/kleur/package.json
deleted file mode 100644
index a81931e..0000000
--- a/includes/langcheck/node_modules/kleur/package.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "name": "kleur",
- "version": "3.0.3",
- "repository": "lukeed/kleur",
- "description": "The fastest Node.js library for formatting terminal text with ANSI colors~!",
- "license": "MIT",
- "files": [
- "*.js",
- "*.d.ts"
- ],
- "author": {
- "name": "Luke Edwards",
- "email": "luke.edwards05@gmail.com",
- "url": "lukeed.com"
- },
- "scripts": {
- "test": "tape test/*.js | tap-spec"
- },
- "engines": {
- "node": ">=6"
- },
- "keywords": [
- "ansi",
- "cli",
- "color",
- "colors",
- "console",
- "terminal"
- ],
- "types": "kleur.d.ts",
- "devDependencies": {
- "tap-spec": "^5.0.0",
- "tape": "^4.9.1"
- }
-}
diff --git a/includes/langcheck/node_modules/kleur/readme.md b/includes/langcheck/node_modules/kleur/readme.md
deleted file mode 100644
index 6926f1e..0000000
--- a/includes/langcheck/node_modules/kleur/readme.md
+++ /dev/null
@@ -1,172 +0,0 @@
-<div align="center">
- <img src="shots/logo.png" alt="kleur" height="120" />
-</div>
-
-<div align="center">
- <a href="https://npmjs.org/package/kleur">
- <img src="https://badgen.now.sh/npm/v/kleur" alt="version" />
- </a>
- <a href="https://travis-ci.org/lukeed/kleur">
- <img src="https://badgen.now.sh/travis/lukeed/kleur" alt="travis" />
- </a>
- <a href="https://npmjs.org/package/kleur">
- <img src="https://badgen.now.sh/npm/dm/kleur" alt="downloads" />
- </a>
- <a href="https://packagephobia.now.sh/result?p=kleur">
- <img src="https://packagephobia.now.sh/badge?p=kleur" alt="install size" />
- </a>
-</div>
-
-<div align="center">The fastest Node.js library for formatting terminal text with ANSI colors~!</div>
-
-## Features
-
-* No dependencies
-* Super [lightweight](#load-time) & [performant](#performance)
-* Supports [nested](#nested-methods) & [chained](#chained-methods) colors
-* No `String.prototype` modifications
-* Conditional [color support](#conditional-support)
-* Familiar [API](#api)
-
----
-
-As of `v3.0` the Chalk-style syntax (magical getter) is no longer used.<br>If you need or require that syntax, consider using [`ansi-colors`](https://github.com/doowb/ansi-colors), which maintains `chalk` parity.
-
----
-
-
-## Install
-
-```
-$ npm install --save kleur
-```
-
-
-## Usage
-
-```js
-const { red, white, blue, bold } = require('kleur');
-
-// basic usage
-red('red text');
-
-// chained methods
-blue().bold().underline('howdy partner');
-
-// nested methods
-bold(`${ white().bgRed('[ERROR]') } ${ red().italic('Something happened')}`);
-```
-
-### Chained Methods
-
-```js
-console.log(bold().red('this is a bold red message'));
-console.log(bold().italic('this is a bold italicized message'));
-console.log(bold().yellow().bgRed().italic('this is a bold yellow italicized message'));
-console.log(green().bold().underline('this is a bold green underlined message'));
-```
-
-<img src="shots/1.png" width="300" />
-
-### Nested Methods
-
-```js
-const { yellow, red, cyan } = require('kleur');
-
-console.log(yellow(`foo ${red().bold('red')} bar ${cyan('cyan')} baz`));
-console.log(yellow('foo ' + red().bold('red') + ' bar ' + cyan('cyan') + ' baz'));
-```
-
-<img src="shots/2.png" width="300" />
-
-
-### Conditional Support
-
-Toggle color support as needed; `kleur` includes simple auto-detection which may not cover all cases.
-
-```js
-const kleur = require('kleur');
-
-// manually disable
-kleur.enabled = false;
-
-// or use another library to detect support
-kleur.enabled = require('color-support').level;
-
-console.log(kleur.red('I will only be colored red if the terminal supports colors'));
-```
-
-
-## API
-
-Any `kleur` method returns a `String` when invoked with input; otherwise chaining is expected.
-
-> It's up to the developer to pass the output to destinations like `console.log`, `process.stdout.write`, etc.
-
-The methods below are grouped by type for legibility purposes only. They each can be [chained](#chained-methods) or [nested](#nested-methods) with one another.
-
-***Colors:***
-> black &mdash; red &mdash; green &mdash; yellow &mdash; blue &mdash; magenta &mdash; cyan &mdash; white &mdash; gray &mdash; grey
-
-***Backgrounds:***
-> bgBlack &mdash; bgRed &mdash; bgGreen &mdash; bgYellow &mdash; bgBlue &mdash; bgMagenta &mdash; bgCyan &mdash; bgWhite
-
-***Modifiers:***
-> reset &mdash; bold &mdash; dim &mdash; italic* &mdash; underline &mdash; inverse &mdash; hidden &mdash; strikethrough*
-
-<sup>* <em>Not widely supported</em></sup>
-
-
-## Benchmarks
-
-> Using Node v10.13.0
-
-### Load time
-
-```
-chalk :: 14.543ms
-kleur :: 0.474ms
-ansi-colors :: 1.923ms
-```
-
-### Performance
-
-```
-# All Colors
- ansi-colors x 199,381 ops/sec ±1.04% (96 runs sampled)
- chalk x 12,107 ops/sec ±2.07% (87 runs sampled)
- kleur x 715,334 ops/sec ±0.30% (93 runs sampled)
-
-# Stacked colors
- ansi-colors x 24,494 ops/sec ±1.03% (93 runs sampled)
- chalk x 2,650 ops/sec ±2.06% (85 runs sampled)
- kleur x 75,798 ops/sec ±0.19% (97 runs sampled)
-
-# Nested colors
- ansi-colors x 77,766 ops/sec ±0.32% (94 runs sampled)
- chalk x 5,596 ops/sec ±1.85% (86 runs sampled)
- kleur x 137,660 ops/sec ±0.31% (93 runs sampled)
-```
-
-
-## Credits
-
-This project originally forked [Brian Woodward](https://github.com/doowb)'s awesome [`ansi-colors`](https://github.com/doowb/ansi-colors) library.
-
-Beginning with `kleur@3.0`, the Chalk-style syntax (magical getter) has been replaced with function calls per key:
-
-```js
-// Old:
-c.red.bold.underline('old');
-
-// New:
-c.red().bold().underline('new');
-```
-> <sup><em>As I work more with Rust, the newer syntax feels so much better & more natural!</em></sup>
-
-If you prefer the old syntax, you may migrate to `ansi-colors`. Versions below `kleur@3.0` have been deprecated.
-
-
-## License
-
-MIT © [Luke Edwards](https://lukeed.com)
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/datepart.js b/includes/langcheck/node_modules/prompts/dist/dateparts/datepart.js
deleted file mode 100644
index b954c5e..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/datepart.js
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-
-class DatePart {
- constructor({
- token,
- date,
- parts,
- locales
- }) {
- this.token = token;
- this.date = date || new Date();
- this.parts = parts || [this];
- this.locales = locales || {};
- }
-
- up() {}
-
- down() {}
-
- next() {
- const currentIdx = this.parts.indexOf(this);
- return this.parts.find((part, idx) => idx > currentIdx && part instanceof DatePart);
- }
-
- setTo(val) {}
-
- prev() {
- let parts = [].concat(this.parts).reverse();
- const currentIdx = parts.indexOf(this);
- return parts.find((part, idx) => idx > currentIdx && part instanceof DatePart);
- }
-
- toString() {
- return String(this.date);
- }
-
-}
-
-module.exports = DatePart; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/day.js b/includes/langcheck/node_modules/prompts/dist/dateparts/day.js
deleted file mode 100644
index a525e92..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/day.js
+++ /dev/null
@@ -1,35 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-const pos = n => {
- n = n % 10;
- return n === 1 ? 'st' : n === 2 ? 'nd' : n === 3 ? 'rd' : 'th';
-};
-
-class Day extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setDate(this.date.getDate() + 1);
- }
-
- down() {
- this.date.setDate(this.date.getDate() - 1);
- }
-
- setTo(val) {
- this.date.setDate(parseInt(val.substr(-2)));
- }
-
- toString() {
- let date = this.date.getDate();
- let day = this.date.getDay();
- return this.token === 'DD' ? String(date).padStart(2, '0') : this.token === 'Do' ? date + pos(date) : this.token === 'd' ? day + 1 : this.token === 'ddd' ? this.locales.weekdaysShort[day] : this.token === 'dddd' ? this.locales.weekdays[day] : date;
- }
-
-}
-
-module.exports = Day; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/hours.js b/includes/langcheck/node_modules/prompts/dist/dateparts/hours.js
deleted file mode 100644
index 7743632..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/hours.js
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Hours extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setHours(this.date.getHours() + 1);
- }
-
- down() {
- this.date.setHours(this.date.getHours() - 1);
- }
-
- setTo(val) {
- this.date.setHours(parseInt(val.substr(-2)));
- }
-
- toString() {
- let hours = this.date.getHours();
- if (/h/.test(this.token)) hours = hours % 12 || 12;
- return this.token.length > 1 ? String(hours).padStart(2, '0') : hours;
- }
-
-}
-
-module.exports = Hours; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/index.js b/includes/langcheck/node_modules/prompts/dist/dateparts/index.js
deleted file mode 100644
index 754516e..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/index.js
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = {
- DatePart: require('./datepart'),
- Meridiem: require('./meridiem'),
- Day: require('./day'),
- Hours: require('./hours'),
- Milliseconds: require('./milliseconds'),
- Minutes: require('./minutes'),
- Month: require('./month'),
- Seconds: require('./seconds'),
- Year: require('./year')
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/meridiem.js b/includes/langcheck/node_modules/prompts/dist/dateparts/meridiem.js
deleted file mode 100644
index 5bc8dd7..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/meridiem.js
+++ /dev/null
@@ -1,25 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Meridiem extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setHours((this.date.getHours() + 12) % 24);
- }
-
- down() {
- this.up();
- }
-
- toString() {
- let meridiem = this.date.getHours() > 12 ? 'pm' : 'am';
- return /\A/.test(this.token) ? meridiem.toUpperCase() : meridiem;
- }
-
-}
-
-module.exports = Meridiem; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/milliseconds.js b/includes/langcheck/node_modules/prompts/dist/dateparts/milliseconds.js
deleted file mode 100644
index 3440e3a..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/milliseconds.js
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Milliseconds extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setMilliseconds(this.date.getMilliseconds() + 1);
- }
-
- down() {
- this.date.setMilliseconds(this.date.getMilliseconds() - 1);
- }
-
- setTo(val) {
- this.date.setMilliseconds(parseInt(val.substr(-this.token.length)));
- }
-
- toString() {
- return String(this.date.getMilliseconds()).padStart(4, '0').substr(0, this.token.length);
- }
-
-}
-
-module.exports = Milliseconds; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/minutes.js b/includes/langcheck/node_modules/prompts/dist/dateparts/minutes.js
deleted file mode 100644
index 2b8ef1f..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/minutes.js
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Minutes extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setMinutes(this.date.getMinutes() + 1);
- }
-
- down() {
- this.date.setMinutes(this.date.getMinutes() - 1);
- }
-
- setTo(val) {
- this.date.setMinutes(parseInt(val.substr(-2)));
- }
-
- toString() {
- let m = this.date.getMinutes();
- return this.token.length > 1 ? String(m).padStart(2, '0') : m;
- }
-
-}
-
-module.exports = Minutes; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/month.js b/includes/langcheck/node_modules/prompts/dist/dateparts/month.js
deleted file mode 100644
index f9d4e13..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/month.js
+++ /dev/null
@@ -1,31 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Month extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setMonth(this.date.getMonth() + 1);
- }
-
- down() {
- this.date.setMonth(this.date.getMonth() - 1);
- }
-
- setTo(val) {
- val = parseInt(val.substr(-2)) - 1;
- this.date.setMonth(val < 0 ? 0 : val);
- }
-
- toString() {
- let month = this.date.getMonth();
- let tl = this.token.length;
- return tl === 2 ? String(month + 1).padStart(2, '0') : tl === 3 ? this.locales.monthsShort[month] : tl === 4 ? this.locales.months[month] : String(month + 1);
- }
-
-}
-
-module.exports = Month; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/seconds.js b/includes/langcheck/node_modules/prompts/dist/dateparts/seconds.js
deleted file mode 100644
index e16f030..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/seconds.js
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Seconds extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setSeconds(this.date.getSeconds() + 1);
- }
-
- down() {
- this.date.setSeconds(this.date.getSeconds() - 1);
- }
-
- setTo(val) {
- this.date.setSeconds(parseInt(val.substr(-2)));
- }
-
- toString() {
- let s = this.date.getSeconds();
- return this.token.length > 1 ? String(s).padStart(2, '0') : s;
- }
-
-}
-
-module.exports = Seconds; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/dateparts/year.js b/includes/langcheck/node_modules/prompts/dist/dateparts/year.js
deleted file mode 100644
index cd62677..0000000
--- a/includes/langcheck/node_modules/prompts/dist/dateparts/year.js
+++ /dev/null
@@ -1,29 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Year extends DatePart {
- constructor(opts = {}) {
- super(opts);
- }
-
- up() {
- this.date.setFullYear(this.date.getFullYear() + 1);
- }
-
- down() {
- this.date.setFullYear(this.date.getFullYear() - 1);
- }
-
- setTo(val) {
- this.date.setFullYear(val.substr(-4));
- }
-
- toString() {
- let year = String(this.date.getFullYear()).padStart(4, '0');
- return this.token.length === 2 ? year.substr(-2) : year;
- }
-
-}
-
-module.exports = Year; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/autocomplete.js b/includes/langcheck/node_modules/prompts/dist/elements/autocomplete.js
deleted file mode 100644
index 60e41bc..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/autocomplete.js
+++ /dev/null
@@ -1,285 +0,0 @@
-'use strict';
-
-function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
-
-function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
-
-const color = require('kleur');
-
-const Prompt = require('./prompt');
-
-const _require = require('sisteransi'),
- erase = _require.erase,
- cursor = _require.cursor;
-
-const _require2 = require('../util'),
- style = _require2.style,
- clear = _require2.clear,
- figures = _require2.figures,
- wrap = _require2.wrap,
- entriesToDisplay = _require2.entriesToDisplay;
-
-const getVal = (arr, i) => arr[i] && (arr[i].value || arr[i].title || arr[i]);
-
-const getTitle = (arr, i) => arr[i] && (arr[i].title || arr[i].value || arr[i]);
-
-const getIndex = (arr, valOrTitle) => {
- const index = arr.findIndex(el => el.value === valOrTitle || el.title === valOrTitle);
- return index > -1 ? index : undefined;
-};
-/**
- * TextPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of auto-complete choices objects
- * @param {Function} [opts.suggest] Filter function. Defaults to sort by title
- * @param {Number} [opts.limit=10] Max number of results to show
- * @param {Number} [opts.cursor=0] Cursor start position
- * @param {String} [opts.style='default'] Render style
- * @param {String} [opts.fallback] Fallback message - initial to default value
- * @param {String} [opts.initial] Index of the default value
- * @param {Boolean} [opts.clearFirst] The first ESCAPE keypress will clear the input
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.noMatches] The no matches found label
- */
-
-
-class AutocompletePrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.msg = opts.message;
- this.suggest = opts.suggest;
- this.choices = opts.choices;
- this.initial = typeof opts.initial === 'number' ? opts.initial : getIndex(opts.choices, opts.initial);
- this.select = this.initial || opts.cursor || 0;
- this.i18n = {
- noMatches: opts.noMatches || 'no matches found'
- };
- this.fallback = opts.fallback || this.initial;
- this.clearFirst = opts.clearFirst || false;
- this.suggestions = [];
- this.input = '';
- this.limit = opts.limit || 10;
- this.cursor = 0;
- this.transform = style.render(opts.style);
- this.scale = this.transform.scale;
- this.render = this.render.bind(this);
- this.complete = this.complete.bind(this);
- this.clear = clear('', this.out.columns);
- this.complete(this.render);
- this.render();
- }
-
- set fallback(fb) {
- this._fb = Number.isSafeInteger(parseInt(fb)) ? parseInt(fb) : fb;
- }
-
- get fallback() {
- let choice;
- if (typeof this._fb === 'number') choice = this.choices[this._fb];else if (typeof this._fb === 'string') choice = {
- title: this._fb
- };
- return choice || this._fb || {
- title: this.i18n.noMatches
- };
- }
-
- moveSelect(i) {
- this.select = i;
- if (this.suggestions.length > 0) this.value = getVal(this.suggestions, i);else this.value = this.fallback.value;
- this.fire();
- }
-
- complete(cb) {
- var _this = this;
-
- return _asyncToGenerator(function* () {
- const p = _this.completing = _this.suggest(_this.input, _this.choices);
-
- const suggestions = yield p;
- if (_this.completing !== p) return;
- _this.suggestions = suggestions.map((s, i, arr) => ({
- title: getTitle(arr, i),
- value: getVal(arr, i),
- description: s.description
- }));
- _this.completing = false;
- const l = Math.max(suggestions.length - 1, 0);
-
- _this.moveSelect(Math.min(l, _this.select));
-
- cb && cb();
- })();
- }
-
- reset() {
- this.input = '';
- this.complete(() => {
- this.moveSelect(this.initial !== void 0 ? this.initial : 0);
- this.render();
- });
- this.render();
- }
-
- exit() {
- if (this.clearFirst && this.input.length > 0) {
- this.reset();
- } else {
- this.done = this.exited = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
- }
-
- abort() {
- this.done = this.aborted = true;
- this.exited = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- this.done = true;
- this.aborted = this.exited = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- _(c, key) {
- let s1 = this.input.slice(0, this.cursor);
- let s2 = this.input.slice(this.cursor);
- this.input = `${s1}${c}${s2}`;
- this.cursor = s1.length + 1;
- this.complete(this.render);
- this.render();
- }
-
- delete() {
- if (this.cursor === 0) return this.bell();
- let s1 = this.input.slice(0, this.cursor - 1);
- let s2 = this.input.slice(this.cursor);
- this.input = `${s1}${s2}`;
- this.complete(this.render);
- this.cursor = this.cursor - 1;
- this.render();
- }
-
- deleteForward() {
- if (this.cursor * this.scale >= this.rendered.length) return this.bell();
- let s1 = this.input.slice(0, this.cursor);
- let s2 = this.input.slice(this.cursor + 1);
- this.input = `${s1}${s2}`;
- this.complete(this.render);
- this.render();
- }
-
- first() {
- this.moveSelect(0);
- this.render();
- }
-
- last() {
- this.moveSelect(this.suggestions.length - 1);
- this.render();
- }
-
- up() {
- if (this.select === 0) {
- this.moveSelect(this.suggestions.length - 1);
- } else {
- this.moveSelect(this.select - 1);
- }
-
- this.render();
- }
-
- down() {
- if (this.select === this.suggestions.length - 1) {
- this.moveSelect(0);
- } else {
- this.moveSelect(this.select + 1);
- }
-
- this.render();
- }
-
- next() {
- if (this.select === this.suggestions.length - 1) {
- this.moveSelect(0);
- } else this.moveSelect(this.select + 1);
-
- this.render();
- }
-
- nextPage() {
- this.moveSelect(Math.min(this.select + this.limit, this.suggestions.length - 1));
- this.render();
- }
-
- prevPage() {
- this.moveSelect(Math.max(this.select - this.limit, 0));
- this.render();
- }
-
- left() {
- if (this.cursor <= 0) return this.bell();
- this.cursor = this.cursor - 1;
- this.render();
- }
-
- right() {
- if (this.cursor * this.scale >= this.rendered.length) return this.bell();
- this.cursor = this.cursor + 1;
- this.render();
- }
-
- renderOption(v, hovered, isStart, isEnd) {
- let desc;
- let prefix = isStart ? figures.arrowUp : isEnd ? figures.arrowDown : ' ';
- let title = hovered ? color.cyan().underline(v.title) : v.title;
- prefix = (hovered ? color.cyan(figures.pointer) + ' ' : ' ') + prefix;
-
- if (v.description) {
- desc = ` - ${v.description}`;
-
- if (prefix.length + title.length + desc.length >= this.out.columns || v.description.split(/\r?\n/).length > 1) {
- desc = '\n' + wrap(v.description, {
- margin: 3,
- width: this.out.columns
- });
- }
- }
-
- return prefix + ' ' + title + color.gray(desc || '');
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
-
- let _entriesToDisplay = entriesToDisplay(this.select, this.choices.length, this.limit),
- startIndex = _entriesToDisplay.startIndex,
- endIndex = _entriesToDisplay.endIndex;
-
- this.outputText = [style.symbol(this.done, this.aborted, this.exited), color.bold(this.msg), style.delimiter(this.completing), this.done && this.suggestions[this.select] ? this.suggestions[this.select].title : this.rendered = this.transform.render(this.input)].join(' ');
-
- if (!this.done) {
- const suggestions = this.suggestions.slice(startIndex, endIndex).map((item, i) => this.renderOption(item, this.select === i + startIndex, i === 0 && startIndex > 0, i + startIndex === endIndex - 1 && endIndex < this.choices.length)).join('\n');
- this.outputText += `\n` + (suggestions || color.gray(this.fallback.title));
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-
-}
-
-module.exports = AutocompletePrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/autocompleteMultiselect.js b/includes/langcheck/node_modules/prompts/dist/elements/autocompleteMultiselect.js
deleted file mode 100644
index ac4af0d..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/autocompleteMultiselect.js
+++ /dev/null
@@ -1,201 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-
-const _require = require('sisteransi'),
- cursor = _require.cursor;
-
-const MultiselectPrompt = require('./multiselect');
-
-const _require2 = require('../util'),
- clear = _require2.clear,
- style = _require2.style,
- figures = _require2.figures;
-/**
- * MultiselectPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of choice objects
- * @param {String} [opts.hint] Hint to display
- * @param {String} [opts.warn] Hint shown for disabled choices
- * @param {Number} [opts.max] Max choices
- * @param {Number} [opts.cursor=0] Cursor start position
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-
-
-class AutocompleteMultiselectPrompt extends MultiselectPrompt {
- constructor(opts = {}) {
- opts.overrideRender = true;
- super(opts);
- this.inputValue = '';
- this.clear = clear('', this.out.columns);
- this.filteredOptions = this.value;
- this.render();
- }
-
- last() {
- this.cursor = this.filteredOptions.length - 1;
- this.render();
- }
-
- next() {
- this.cursor = (this.cursor + 1) % this.filteredOptions.length;
- this.render();
- }
-
- up() {
- if (this.cursor === 0) {
- this.cursor = this.filteredOptions.length - 1;
- } else {
- this.cursor--;
- }
-
- this.render();
- }
-
- down() {
- if (this.cursor === this.filteredOptions.length - 1) {
- this.cursor = 0;
- } else {
- this.cursor++;
- }
-
- this.render();
- }
-
- left() {
- this.filteredOptions[this.cursor].selected = false;
- this.render();
- }
-
- right() {
- if (this.value.filter(e => e.selected).length >= this.maxChoices) return this.bell();
- this.filteredOptions[this.cursor].selected = true;
- this.render();
- }
-
- delete() {
- if (this.inputValue.length) {
- this.inputValue = this.inputValue.substr(0, this.inputValue.length - 1);
- this.updateFilteredOptions();
- }
- }
-
- updateFilteredOptions() {
- const currentHighlight = this.filteredOptions[this.cursor];
- this.filteredOptions = this.value.filter(v => {
- if (this.inputValue) {
- if (typeof v.title === 'string') {
- if (v.title.toLowerCase().includes(this.inputValue.toLowerCase())) {
- return true;
- }
- }
-
- if (typeof v.value === 'string') {
- if (v.value.toLowerCase().includes(this.inputValue.toLowerCase())) {
- return true;
- }
- }
-
- return false;
- }
-
- return true;
- });
- const newHighlightIndex = this.filteredOptions.findIndex(v => v === currentHighlight);
- this.cursor = newHighlightIndex < 0 ? 0 : newHighlightIndex;
- this.render();
- }
-
- handleSpaceToggle() {
- const v = this.filteredOptions[this.cursor];
-
- if (v.selected) {
- v.selected = false;
- this.render();
- } else if (v.disabled || this.value.filter(e => e.selected).length >= this.maxChoices) {
- return this.bell();
- } else {
- v.selected = true;
- this.render();
- }
- }
-
- handleInputChange(c) {
- this.inputValue = this.inputValue + c;
- this.updateFilteredOptions();
- }
-
- _(c, key) {
- if (c === ' ') {
- this.handleSpaceToggle();
- } else {
- this.handleInputChange(c);
- }
- }
-
- renderInstructions() {
- if (this.instructions === undefined || this.instructions) {
- if (typeof this.instructions === 'string') {
- return this.instructions;
- }
-
- return `
-Instructions:
- ${figures.arrowUp}/${figures.arrowDown}: Highlight option
- ${figures.arrowLeft}/${figures.arrowRight}/[space]: Toggle selection
- [a,b,c]/delete: Filter choices
- enter/return: Complete answer
-`;
- }
-
- return '';
- }
-
- renderCurrentInput() {
- return `
-Filtered results for: ${this.inputValue ? this.inputValue : color.gray('Enter something to filter')}\n`;
- }
-
- renderOption(cursor, v, i) {
- let title;
- if (v.disabled) title = cursor === i ? color.gray().underline(v.title) : color.strikethrough().gray(v.title);else title = cursor === i ? color.cyan().underline(v.title) : v.title;
- return (v.selected ? color.green(figures.radioOn) : figures.radioOff) + ' ' + title;
- }
-
- renderDoneOrInstructions() {
- if (this.done) {
- return this.value.filter(e => e.selected).map(v => v.title).join(', ');
- }
-
- const output = [color.gray(this.hint), this.renderInstructions(), this.renderCurrentInput()];
-
- if (this.filteredOptions.length && this.filteredOptions[this.cursor].disabled) {
- output.push(color.yellow(this.warn));
- }
-
- return output.join(' ');
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- super.render(); // print prompt
-
- let prompt = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(false), this.renderDoneOrInstructions()].join(' ');
-
- if (this.showMinError) {
- prompt += color.red(`You must select a minimum of ${this.minSelected} choices.`);
- this.showMinError = false;
- }
-
- prompt += this.renderOptions(this.filteredOptions);
- this.out.write(this.clear + prompt);
- this.clear = clear(prompt, this.out.columns);
- }
-
-}
-
-module.exports = AutocompleteMultiselectPrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/confirm.js b/includes/langcheck/node_modules/prompts/dist/elements/confirm.js
deleted file mode 100644
index 6c342d2..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/confirm.js
+++ /dev/null
@@ -1,93 +0,0 @@
-"use strict";
-
-const color = require('kleur');
-
-const Prompt = require('./prompt');
-
-const _require = require('../util'),
- style = _require.style,
- clear = _require.clear;
-
-const _require2 = require('sisteransi'),
- erase = _require2.erase,
- cursor = _require2.cursor;
-/**
- * ConfirmPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Boolean} [opts.initial] Default value (true/false)
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.yes] The "Yes" label
- * @param {String} [opts.yesOption] The "Yes" option when choosing between yes/no
- * @param {String} [opts.no] The "No" label
- * @param {String} [opts.noOption] The "No" option when choosing between yes/no
- */
-
-
-class ConfirmPrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.msg = opts.message;
- this.value = opts.initial;
- this.initialValue = !!opts.initial;
- this.yesMsg = opts.yes || 'yes';
- this.yesOption = opts.yesOption || '(Y/n)';
- this.noMsg = opts.no || 'no';
- this.noOption = opts.noOption || '(y/N)';
- this.render();
- }
-
- reset() {
- this.value = this.initialValue;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- this.value = this.value || false;
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- _(c, key) {
- if (c.toLowerCase() === 'y') {
- this.value = true;
- return this.submit();
- }
-
- if (c.toLowerCase() === 'n') {
- this.value = false;
- return this.submit();
- }
-
- return this.bell();
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
- this.outputText = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(this.done), this.done ? this.value ? this.yesMsg : this.noMsg : color.gray(this.initialValue ? this.yesOption : this.noOption)].join(' ');
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-
-}
-
-module.exports = ConfirmPrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/date.js b/includes/langcheck/node_modules/prompts/dist/elements/date.js
deleted file mode 100644
index 0b254f8..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/date.js
+++ /dev/null
@@ -1,250 +0,0 @@
-'use strict';
-
-function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
-
-function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
-
-const color = require('kleur');
-
-const Prompt = require('./prompt');
-
-const _require = require('../util'),
- style = _require.style,
- clear = _require.clear,
- figures = _require.figures;
-
-const _require2 = require('sisteransi'),
- erase = _require2.erase,
- cursor = _require2.cursor;
-
-const _require3 = require('../dateparts'),
- DatePart = _require3.DatePart,
- Meridiem = _require3.Meridiem,
- Day = _require3.Day,
- Hours = _require3.Hours,
- Milliseconds = _require3.Milliseconds,
- Minutes = _require3.Minutes,
- Month = _require3.Month,
- Seconds = _require3.Seconds,
- Year = _require3.Year;
-
-const regex = /\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g;
-const regexGroups = {
- 1: ({
- token
- }) => token.replace(/\\(.)/g, '$1'),
- 2: opts => new Day(opts),
- // Day // TODO
- 3: opts => new Month(opts),
- // Month
- 4: opts => new Year(opts),
- // Year
- 5: opts => new Meridiem(opts),
- // AM/PM // TODO (special)
- 6: opts => new Hours(opts),
- // Hours
- 7: opts => new Minutes(opts),
- // Minutes
- 8: opts => new Seconds(opts),
- // Seconds
- 9: opts => new Milliseconds(opts) // Fractional seconds
-
-};
-const dfltLocales = {
- months: 'January,February,March,April,May,June,July,August,September,October,November,December'.split(','),
- monthsShort: 'Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec'.split(','),
- weekdays: 'Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday'.split(','),
- weekdaysShort: 'Sun,Mon,Tue,Wed,Thu,Fri,Sat'.split(',')
-};
-/**
- * DatePrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Number} [opts.initial] Index of default value
- * @param {String} [opts.mask] The format mask
- * @param {object} [opts.locales] The date locales
- * @param {String} [opts.error] The error message shown on invalid value
- * @param {Function} [opts.validate] Function to validate the submitted value
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-
-class DatePrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.msg = opts.message;
- this.cursor = 0;
- this.typed = '';
- this.locales = Object.assign(dfltLocales, opts.locales);
- this._date = opts.initial || new Date();
- this.errorMsg = opts.error || 'Please Enter A Valid Value';
-
- this.validator = opts.validate || (() => true);
-
- this.mask = opts.mask || 'YYYY-MM-DD HH:mm:ss';
- this.clear = clear('', this.out.columns);
- this.render();
- }
-
- get value() {
- return this.date;
- }
-
- get date() {
- return this._date;
- }
-
- set date(date) {
- if (date) this._date.setTime(date.getTime());
- }
-
- set mask(mask) {
- let result;
- this.parts = [];
-
- while (result = regex.exec(mask)) {
- let match = result.shift();
- let idx = result.findIndex(gr => gr != null);
- this.parts.push(idx in regexGroups ? regexGroups[idx]({
- token: result[idx] || match,
- date: this.date,
- parts: this.parts,
- locales: this.locales
- }) : result[idx] || match);
- }
-
- let parts = this.parts.reduce((arr, i) => {
- if (typeof i === 'string' && typeof arr[arr.length - 1] === 'string') arr[arr.length - 1] += i;else arr.push(i);
- return arr;
- }, []);
- this.parts.splice(0);
- this.parts.push(...parts);
- this.reset();
- }
-
- moveCursor(n) {
- this.typed = '';
- this.cursor = n;
- this.fire();
- }
-
- reset() {
- this.moveCursor(this.parts.findIndex(p => p instanceof DatePart));
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.error = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- validate() {
- var _this = this;
-
- return _asyncToGenerator(function* () {
- let valid = yield _this.validator(_this.value);
-
- if (typeof valid === 'string') {
- _this.errorMsg = valid;
- valid = false;
- }
-
- _this.error = !valid;
- })();
- }
-
- submit() {
- var _this2 = this;
-
- return _asyncToGenerator(function* () {
- yield _this2.validate();
-
- if (_this2.error) {
- _this2.color = 'red';
-
- _this2.fire();
-
- _this2.render();
-
- return;
- }
-
- _this2.done = true;
- _this2.aborted = false;
-
- _this2.fire();
-
- _this2.render();
-
- _this2.out.write('\n');
-
- _this2.close();
- })();
- }
-
- up() {
- this.typed = '';
- this.parts[this.cursor].up();
- this.render();
- }
-
- down() {
- this.typed = '';
- this.parts[this.cursor].down();
- this.render();
- }
-
- left() {
- let prev = this.parts[this.cursor].prev();
- if (prev == null) return this.bell();
- this.moveCursor(this.parts.indexOf(prev));
- this.render();
- }
-
- right() {
- let next = this.parts[this.cursor].next();
- if (next == null) return this.bell();
- this.moveCursor(this.parts.indexOf(next));
- this.render();
- }
-
- next() {
- let next = this.parts[this.cursor].next();
- this.moveCursor(next ? this.parts.indexOf(next) : this.parts.findIndex(part => part instanceof DatePart));
- this.render();
- }
-
- _(c) {
- if (/\d/.test(c)) {
- this.typed += c;
- this.parts[this.cursor].setTo(this.typed);
- this.render();
- }
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);else this.out.write(clear(this.outputText, this.out.columns));
- super.render(); // Print prompt
-
- this.outputText = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(false), this.parts.reduce((arr, p, idx) => arr.concat(idx === this.cursor && !this.done ? color.cyan().underline(p.toString()) : p), []).join('')].join(' '); // Print error
-
- if (this.error) {
- this.outputText += this.errorMsg.split('\n').reduce((a, l, i) => a + `\n${i ? ` ` : figures.pointerSmall} ${color.red().italic(l)}`, ``);
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-
-}
-
-module.exports = DatePrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/index.js b/includes/langcheck/node_modules/prompts/dist/elements/index.js
deleted file mode 100644
index cf0ccc1..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/index.js
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = {
- TextPrompt: require('./text'),
- SelectPrompt: require('./select'),
- TogglePrompt: require('./toggle'),
- DatePrompt: require('./date'),
- NumberPrompt: require('./number'),
- MultiselectPrompt: require('./multiselect'),
- AutocompletePrompt: require('./autocomplete'),
- AutocompleteMultiselectPrompt: require('./autocompleteMultiselect'),
- ConfirmPrompt: require('./confirm')
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/multiselect.js b/includes/langcheck/node_modules/prompts/dist/elements/multiselect.js
deleted file mode 100644
index 2d129ea..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/multiselect.js
+++ /dev/null
@@ -1,289 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-
-const _require = require('sisteransi'),
- cursor = _require.cursor;
-
-const Prompt = require('./prompt');
-
-const _require2 = require('../util'),
- clear = _require2.clear,
- figures = _require2.figures,
- style = _require2.style,
- wrap = _require2.wrap,
- entriesToDisplay = _require2.entriesToDisplay;
-/**
- * MultiselectPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of choice objects
- * @param {String} [opts.hint] Hint to display
- * @param {String} [opts.warn] Hint shown for disabled choices
- * @param {Number} [opts.max] Max choices
- * @param {Number} [opts.cursor=0] Cursor start position
- * @param {Number} [opts.optionsPerPage=10] Max options to display at once
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-
-
-class MultiselectPrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.msg = opts.message;
- this.cursor = opts.cursor || 0;
- this.scrollIndex = opts.cursor || 0;
- this.hint = opts.hint || '';
- this.warn = opts.warn || '- This option is disabled -';
- this.minSelected = opts.min;
- this.showMinError = false;
- this.maxChoices = opts.max;
- this.instructions = opts.instructions;
- this.optionsPerPage = opts.optionsPerPage || 10;
- this.value = opts.choices.map((ch, idx) => {
- if (typeof ch === 'string') ch = {
- title: ch,
- value: idx
- };
- return {
- title: ch && (ch.title || ch.value || ch),
- description: ch && ch.description,
- value: ch && (ch.value === undefined ? idx : ch.value),
- selected: ch && ch.selected,
- disabled: ch && ch.disabled
- };
- });
- this.clear = clear('', this.out.columns);
-
- if (!opts.overrideRender) {
- this.render();
- }
- }
-
- reset() {
- this.value.map(v => !v.selected);
- this.cursor = 0;
- this.fire();
- this.render();
- }
-
- selected() {
- return this.value.filter(v => v.selected);
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- const selected = this.value.filter(e => e.selected);
-
- if (this.minSelected && selected.length < this.minSelected) {
- this.showMinError = true;
- this.render();
- } else {
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
- }
-
- first() {
- this.cursor = 0;
- this.render();
- }
-
- last() {
- this.cursor = this.value.length - 1;
- this.render();
- }
-
- next() {
- this.cursor = (this.cursor + 1) % this.value.length;
- this.render();
- }
-
- up() {
- if (this.cursor === 0) {
- this.cursor = this.value.length - 1;
- } else {
- this.cursor--;
- }
-
- this.render();
- }
-
- down() {
- if (this.cursor === this.value.length - 1) {
- this.cursor = 0;
- } else {
- this.cursor++;
- }
-
- this.render();
- }
-
- left() {
- this.value[this.cursor].selected = false;
- this.render();
- }
-
- right() {
- if (this.value.filter(e => e.selected).length >= this.maxChoices) return this.bell();
- this.value[this.cursor].selected = true;
- this.render();
- }
-
- handleSpaceToggle() {
- const v = this.value[this.cursor];
-
- if (v.selected) {
- v.selected = false;
- this.render();
- } else if (v.disabled || this.value.filter(e => e.selected).length >= this.maxChoices) {
- return this.bell();
- } else {
- v.selected = true;
- this.render();
- }
- }
-
- toggleAll() {
- if (this.maxChoices !== undefined || this.value[this.cursor].disabled) {
- return this.bell();
- }
-
- const newSelected = !this.value[this.cursor].selected;
- this.value.filter(v => !v.disabled).forEach(v => v.selected = newSelected);
- this.render();
- }
-
- _(c, key) {
- if (c === ' ') {
- this.handleSpaceToggle();
- } else if (c === 'a') {
- this.toggleAll();
- } else {
- return this.bell();
- }
- }
-
- renderInstructions() {
- if (this.instructions === undefined || this.instructions) {
- if (typeof this.instructions === 'string') {
- return this.instructions;
- }
-
- return '\nInstructions:\n' + ` ${figures.arrowUp}/${figures.arrowDown}: Highlight option\n` + ` ${figures.arrowLeft}/${figures.arrowRight}/[space]: Toggle selection\n` + (this.maxChoices === undefined ? ` a: Toggle all\n` : '') + ` enter/return: Complete answer`;
- }
-
- return '';
- }
-
- renderOption(cursor, v, i, arrowIndicator) {
- const prefix = (v.selected ? color.green(figures.radioOn) : figures.radioOff) + ' ' + arrowIndicator + ' ';
- let title, desc;
-
- if (v.disabled) {
- title = cursor === i ? color.gray().underline(v.title) : color.strikethrough().gray(v.title);
- } else {
- title = cursor === i ? color.cyan().underline(v.title) : v.title;
-
- if (cursor === i && v.description) {
- desc = ` - ${v.description}`;
-
- if (prefix.length + title.length + desc.length >= this.out.columns || v.description.split(/\r?\n/).length > 1) {
- desc = '\n' + wrap(v.description, {
- margin: prefix.length,
- width: this.out.columns
- });
- }
- }
- }
-
- return prefix + title + color.gray(desc || '');
- } // shared with autocompleteMultiselect
-
-
- paginateOptions(options) {
- if (options.length === 0) {
- return color.red('No matches for this query.');
- }
-
- let _entriesToDisplay = entriesToDisplay(this.cursor, options.length, this.optionsPerPage),
- startIndex = _entriesToDisplay.startIndex,
- endIndex = _entriesToDisplay.endIndex;
-
- let prefix,
- styledOptions = [];
-
- for (let i = startIndex; i < endIndex; i++) {
- if (i === startIndex && startIndex > 0) {
- prefix = figures.arrowUp;
- } else if (i === endIndex - 1 && endIndex < options.length) {
- prefix = figures.arrowDown;
- } else {
- prefix = ' ';
- }
-
- styledOptions.push(this.renderOption(this.cursor, options[i], i, prefix));
- }
-
- return '\n' + styledOptions.join('\n');
- } // shared with autocomleteMultiselect
-
-
- renderOptions(options) {
- if (!this.done) {
- return this.paginateOptions(options);
- }
-
- return '';
- }
-
- renderDoneOrInstructions() {
- if (this.done) {
- return this.value.filter(e => e.selected).map(v => v.title).join(', ');
- }
-
- const output = [color.gray(this.hint), this.renderInstructions()];
-
- if (this.value[this.cursor].disabled) {
- output.push(color.yellow(this.warn));
- }
-
- return output.join(' ');
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- super.render(); // print prompt
-
- let prompt = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(false), this.renderDoneOrInstructions()].join(' ');
-
- if (this.showMinError) {
- prompt += color.red(`You must select a minimum of ${this.minSelected} choices.`);
- this.showMinError = false;
- }
-
- prompt += this.renderOptions(this.value);
- this.out.write(this.clear + prompt);
- this.clear = clear(prompt, this.out.columns);
- }
-
-}
-
-module.exports = MultiselectPrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/number.js b/includes/langcheck/node_modules/prompts/dist/elements/number.js
deleted file mode 100644
index fd144af..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/number.js
+++ /dev/null
@@ -1,250 +0,0 @@
-"use strict";
-
-function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
-
-function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
-
-const color = require('kleur');
-
-const Prompt = require('./prompt');
-
-const _require = require('sisteransi'),
- cursor = _require.cursor,
- erase = _require.erase;
-
-const _require2 = require('../util'),
- style = _require2.style,
- figures = _require2.figures,
- clear = _require2.clear,
- lines = _require2.lines;
-
-const isNumber = /[0-9]/;
-
-const isDef = any => any !== undefined;
-
-const round = (number, precision) => {
- let factor = Math.pow(10, precision);
- return Math.round(number * factor) / factor;
-};
-/**
- * NumberPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {String} [opts.style='default'] Render style
- * @param {Number} [opts.initial] Default value
- * @param {Number} [opts.max=+Infinity] Max value
- * @param {Number} [opts.min=-Infinity] Min value
- * @param {Boolean} [opts.float=false] Parse input as floats
- * @param {Number} [opts.round=2] Round floats to x decimals
- * @param {Number} [opts.increment=1] Number to increment by when using arrow-keys
- * @param {Function} [opts.validate] Validate function
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.error] The invalid error label
- */
-
-
-class NumberPrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.transform = style.render(opts.style);
- this.msg = opts.message;
- this.initial = isDef(opts.initial) ? opts.initial : '';
- this.float = !!opts.float;
- this.round = opts.round || 2;
- this.inc = opts.increment || 1;
- this.min = isDef(opts.min) ? opts.min : -Infinity;
- this.max = isDef(opts.max) ? opts.max : Infinity;
- this.errorMsg = opts.error || `Please Enter A Valid Value`;
-
- this.validator = opts.validate || (() => true);
-
- this.color = `cyan`;
- this.value = ``;
- this.typed = ``;
- this.lastHit = 0;
- this.render();
- }
-
- set value(v) {
- if (!v && v !== 0) {
- this.placeholder = true;
- this.rendered = color.gray(this.transform.render(`${this.initial}`));
- this._value = ``;
- } else {
- this.placeholder = false;
- this.rendered = this.transform.render(`${round(v, this.round)}`);
- this._value = round(v, this.round);
- }
-
- this.fire();
- }
-
- get value() {
- return this._value;
- }
-
- parse(x) {
- return this.float ? parseFloat(x) : parseInt(x);
- }
-
- valid(c) {
- return c === `-` || c === `.` && this.float || isNumber.test(c);
- }
-
- reset() {
- this.typed = ``;
- this.value = ``;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- let x = this.value;
- this.value = x !== `` ? x : this.initial;
- this.done = this.aborted = true;
- this.error = false;
- this.fire();
- this.render();
- this.out.write(`\n`);
- this.close();
- }
-
- validate() {
- var _this = this;
-
- return _asyncToGenerator(function* () {
- let valid = yield _this.validator(_this.value);
-
- if (typeof valid === `string`) {
- _this.errorMsg = valid;
- valid = false;
- }
-
- _this.error = !valid;
- })();
- }
-
- submit() {
- var _this2 = this;
-
- return _asyncToGenerator(function* () {
- yield _this2.validate();
-
- if (_this2.error) {
- _this2.color = `red`;
-
- _this2.fire();
-
- _this2.render();
-
- return;
- }
-
- let x = _this2.value;
- _this2.value = x !== `` ? x : _this2.initial;
- _this2.done = true;
- _this2.aborted = false;
- _this2.error = false;
-
- _this2.fire();
-
- _this2.render();
-
- _this2.out.write(`\n`);
-
- _this2.close();
- })();
- }
-
- up() {
- this.typed = ``;
-
- if (this.value === '') {
- this.value = this.min - this.inc;
- }
-
- if (this.value >= this.max) return this.bell();
- this.value += this.inc;
- this.color = `cyan`;
- this.fire();
- this.render();
- }
-
- down() {
- this.typed = ``;
-
- if (this.value === '') {
- this.value = this.min + this.inc;
- }
-
- if (this.value <= this.min) return this.bell();
- this.value -= this.inc;
- this.color = `cyan`;
- this.fire();
- this.render();
- }
-
- delete() {
- let val = this.value.toString();
- if (val.length === 0) return this.bell();
- this.value = this.parse(val = val.slice(0, -1)) || ``;
-
- if (this.value !== '' && this.value < this.min) {
- this.value = this.min;
- }
-
- this.color = `cyan`;
- this.fire();
- this.render();
- }
-
- next() {
- this.value = this.initial;
- this.fire();
- this.render();
- }
-
- _(c, key) {
- if (!this.valid(c)) return this.bell();
- const now = Date.now();
- if (now - this.lastHit > 1000) this.typed = ``; // 1s elapsed
-
- this.typed += c;
- this.lastHit = now;
- this.color = `cyan`;
- if (c === `.`) return this.fire();
- this.value = Math.min(this.parse(this.typed), this.max);
- if (this.value > this.max) this.value = this.max;
- if (this.value < this.min) this.value = this.min;
- this.fire();
- this.render();
- }
-
- render() {
- if (this.closed) return;
-
- if (!this.firstRender) {
- if (this.outputError) this.out.write(cursor.down(lines(this.outputError, this.out.columns) - 1) + clear(this.outputError, this.out.columns));
- this.out.write(clear(this.outputText, this.out.columns));
- }
-
- super.render();
- this.outputError = ''; // Print prompt
-
- this.outputText = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(this.done), !this.done || !this.done && !this.placeholder ? color[this.color]().underline(this.rendered) : this.rendered].join(` `); // Print error
-
- if (this.error) {
- this.outputError += this.errorMsg.split(`\n`).reduce((a, l, i) => a + `\n${i ? ` ` : figures.pointerSmall} ${color.red().italic(l)}`, ``);
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText + cursor.save + this.outputError + cursor.restore);
- }
-
-}
-
-module.exports = NumberPrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/prompt.js b/includes/langcheck/node_modules/prompts/dist/elements/prompt.js
deleted file mode 100644
index 7deef04..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/prompt.js
+++ /dev/null
@@ -1,82 +0,0 @@
-'use strict';
-
-const readline = require('readline');
-
-const _require = require('../util'),
- action = _require.action;
-
-const EventEmitter = require('events');
-
-const _require2 = require('sisteransi'),
- beep = _require2.beep,
- cursor = _require2.cursor;
-
-const color = require('kleur');
-/**
- * Base prompt skeleton
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-
-
-class Prompt extends EventEmitter {
- constructor(opts = {}) {
- super();
- this.firstRender = true;
- this.in = opts.stdin || process.stdin;
- this.out = opts.stdout || process.stdout;
-
- this.onRender = (opts.onRender || (() => void 0)).bind(this);
-
- const rl = readline.createInterface({
- input: this.in,
- escapeCodeTimeout: 50
- });
- readline.emitKeypressEvents(this.in, rl);
- if (this.in.isTTY) this.in.setRawMode(true);
- const isSelect = ['SelectPrompt', 'MultiselectPrompt'].indexOf(this.constructor.name) > -1;
-
- const keypress = (str, key) => {
- let a = action(key, isSelect);
-
- if (a === false) {
- this._ && this._(str, key);
- } else if (typeof this[a] === 'function') {
- this[a](key);
- } else {
- this.bell();
- }
- };
-
- this.close = () => {
- this.out.write(cursor.show);
- this.in.removeListener('keypress', keypress);
- if (this.in.isTTY) this.in.setRawMode(false);
- rl.close();
- this.emit(this.aborted ? 'abort' : this.exited ? 'exit' : 'submit', this.value);
- this.closed = true;
- };
-
- this.in.on('keypress', keypress);
- }
-
- fire() {
- this.emit('state', {
- value: this.value,
- aborted: !!this.aborted,
- exited: !!this.exited
- });
- }
-
- bell() {
- this.out.write(beep);
- }
-
- render() {
- this.onRender(color);
- if (this.firstRender) this.firstRender = false;
- }
-
-}
-
-module.exports = Prompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/select.js b/includes/langcheck/node_modules/prompts/dist/elements/select.js
deleted file mode 100644
index 5e27c69..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/select.js
+++ /dev/null
@@ -1,190 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-
-const Prompt = require('./prompt');
-
-const _require = require('../util'),
- style = _require.style,
- clear = _require.clear,
- figures = _require.figures,
- wrap = _require.wrap,
- entriesToDisplay = _require.entriesToDisplay;
-
-const _require2 = require('sisteransi'),
- cursor = _require2.cursor;
-/**
- * SelectPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of choice objects
- * @param {String} [opts.hint] Hint to display
- * @param {Number} [opts.initial] Index of default value
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {Number} [opts.optionsPerPage=10] Max options to display at once
- */
-
-
-class SelectPrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.msg = opts.message;
- this.hint = opts.hint || '- Use arrow-keys. Return to submit.';
- this.warn = opts.warn || '- This option is disabled';
- this.cursor = opts.initial || 0;
- this.choices = opts.choices.map((ch, idx) => {
- if (typeof ch === 'string') ch = {
- title: ch,
- value: idx
- };
- return {
- title: ch && (ch.title || ch.value || ch),
- value: ch && (ch.value === undefined ? idx : ch.value),
- description: ch && ch.description,
- selected: ch && ch.selected,
- disabled: ch && ch.disabled
- };
- });
- this.optionsPerPage = opts.optionsPerPage || 10;
- this.value = (this.choices[this.cursor] || {}).value;
- this.clear = clear('', this.out.columns);
- this.render();
- }
-
- moveCursor(n) {
- this.cursor = n;
- this.value = this.choices[n].value;
- this.fire();
- }
-
- reset() {
- this.moveCursor(0);
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- if (!this.selection.disabled) {
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- } else this.bell();
- }
-
- first() {
- this.moveCursor(0);
- this.render();
- }
-
- last() {
- this.moveCursor(this.choices.length - 1);
- this.render();
- }
-
- up() {
- if (this.cursor === 0) {
- this.moveCursor(this.choices.length - 1);
- } else {
- this.moveCursor(this.cursor - 1);
- }
-
- this.render();
- }
-
- down() {
- if (this.cursor === this.choices.length - 1) {
- this.moveCursor(0);
- } else {
- this.moveCursor(this.cursor + 1);
- }
-
- this.render();
- }
-
- next() {
- this.moveCursor((this.cursor + 1) % this.choices.length);
- this.render();
- }
-
- _(c, key) {
- if (c === ' ') return this.submit();
- }
-
- get selection() {
- return this.choices[this.cursor];
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
-
- let _entriesToDisplay = entriesToDisplay(this.cursor, this.choices.length, this.optionsPerPage),
- startIndex = _entriesToDisplay.startIndex,
- endIndex = _entriesToDisplay.endIndex; // Print prompt
-
-
- this.outputText = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(false), this.done ? this.selection.title : this.selection.disabled ? color.yellow(this.warn) : color.gray(this.hint)].join(' '); // Print choices
-
- if (!this.done) {
- this.outputText += '\n';
-
- for (let i = startIndex; i < endIndex; i++) {
- let title,
- prefix,
- desc = '',
- v = this.choices[i]; // Determine whether to display "more choices" indicators
-
- if (i === startIndex && startIndex > 0) {
- prefix = figures.arrowUp;
- } else if (i === endIndex - 1 && endIndex < this.choices.length) {
- prefix = figures.arrowDown;
- } else {
- prefix = ' ';
- }
-
- if (v.disabled) {
- title = this.cursor === i ? color.gray().underline(v.title) : color.strikethrough().gray(v.title);
- prefix = (this.cursor === i ? color.bold().gray(figures.pointer) + ' ' : ' ') + prefix;
- } else {
- title = this.cursor === i ? color.cyan().underline(v.title) : v.title;
- prefix = (this.cursor === i ? color.cyan(figures.pointer) + ' ' : ' ') + prefix;
-
- if (v.description && this.cursor === i) {
- desc = ` - ${v.description}`;
-
- if (prefix.length + title.length + desc.length >= this.out.columns || v.description.split(/\r?\n/).length > 1) {
- desc = '\n' + wrap(v.description, {
- margin: 3,
- width: this.out.columns
- });
- }
- }
- }
-
- this.outputText += `${prefix} ${title}${color.gray(desc)}\n`;
- }
- }
-
- this.out.write(this.outputText);
- }
-
-}
-
-module.exports = SelectPrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/text.js b/includes/langcheck/node_modules/prompts/dist/elements/text.js
deleted file mode 100644
index c38a070..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/text.js
+++ /dev/null
@@ -1,245 +0,0 @@
-"use strict";
-
-function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
-
-function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
-
-const color = require('kleur');
-
-const Prompt = require('./prompt');
-
-const _require = require('sisteransi'),
- erase = _require.erase,
- cursor = _require.cursor;
-
-const _require2 = require('../util'),
- style = _require2.style,
- clear = _require2.clear,
- lines = _require2.lines,
- figures = _require2.figures;
-/**
- * TextPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {String} [opts.style='default'] Render style
- * @param {String} [opts.initial] Default value
- * @param {Function} [opts.validate] Validate function
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.error] The invalid error label
- */
-
-
-class TextPrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.transform = style.render(opts.style);
- this.scale = this.transform.scale;
- this.msg = opts.message;
- this.initial = opts.initial || ``;
-
- this.validator = opts.validate || (() => true);
-
- this.value = ``;
- this.errorMsg = opts.error || `Please Enter A Valid Value`;
- this.cursor = Number(!!this.initial);
- this.cursorOffset = 0;
- this.clear = clear(``, this.out.columns);
- this.render();
- }
-
- set value(v) {
- if (!v && this.initial) {
- this.placeholder = true;
- this.rendered = color.gray(this.transform.render(this.initial));
- } else {
- this.placeholder = false;
- this.rendered = this.transform.render(v);
- }
-
- this._value = v;
- this.fire();
- }
-
- get value() {
- return this._value;
- }
-
- reset() {
- this.value = ``;
- this.cursor = Number(!!this.initial);
- this.cursorOffset = 0;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.value = this.value || this.initial;
- this.done = this.aborted = true;
- this.error = false;
- this.red = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- validate() {
- var _this = this;
-
- return _asyncToGenerator(function* () {
- let valid = yield _this.validator(_this.value);
-
- if (typeof valid === `string`) {
- _this.errorMsg = valid;
- valid = false;
- }
-
- _this.error = !valid;
- })();
- }
-
- submit() {
- var _this2 = this;
-
- return _asyncToGenerator(function* () {
- _this2.value = _this2.value || _this2.initial;
- _this2.cursorOffset = 0;
- _this2.cursor = _this2.rendered.length;
- yield _this2.validate();
-
- if (_this2.error) {
- _this2.red = true;
-
- _this2.fire();
-
- _this2.render();
-
- return;
- }
-
- _this2.done = true;
- _this2.aborted = false;
-
- _this2.fire();
-
- _this2.render();
-
- _this2.out.write('\n');
-
- _this2.close();
- })();
- }
-
- next() {
- if (!this.placeholder) return this.bell();
- this.value = this.initial;
- this.cursor = this.rendered.length;
- this.fire();
- this.render();
- }
-
- moveCursor(n) {
- if (this.placeholder) return;
- this.cursor = this.cursor + n;
- this.cursorOffset += n;
- }
-
- _(c, key) {
- let s1 = this.value.slice(0, this.cursor);
- let s2 = this.value.slice(this.cursor);
- this.value = `${s1}${c}${s2}`;
- this.red = false;
- this.cursor = this.placeholder ? 0 : s1.length + 1;
- this.render();
- }
-
- delete() {
- if (this.isCursorAtStart()) return this.bell();
- let s1 = this.value.slice(0, this.cursor - 1);
- let s2 = this.value.slice(this.cursor);
- this.value = `${s1}${s2}`;
- this.red = false;
-
- if (this.isCursorAtStart()) {
- this.cursorOffset = 0;
- } else {
- this.cursorOffset++;
- this.moveCursor(-1);
- }
-
- this.render();
- }
-
- deleteForward() {
- if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
- let s1 = this.value.slice(0, this.cursor);
- let s2 = this.value.slice(this.cursor + 1);
- this.value = `${s1}${s2}`;
- this.red = false;
-
- if (this.isCursorAtEnd()) {
- this.cursorOffset = 0;
- } else {
- this.cursorOffset++;
- }
-
- this.render();
- }
-
- first() {
- this.cursor = 0;
- this.render();
- }
-
- last() {
- this.cursor = this.value.length;
- this.render();
- }
-
- left() {
- if (this.cursor <= 0 || this.placeholder) return this.bell();
- this.moveCursor(-1);
- this.render();
- }
-
- right() {
- if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
- this.moveCursor(1);
- this.render();
- }
-
- isCursorAtStart() {
- return this.cursor === 0 || this.placeholder && this.cursor === 1;
- }
-
- isCursorAtEnd() {
- return this.cursor === this.rendered.length || this.placeholder && this.cursor === this.rendered.length + 1;
- }
-
- render() {
- if (this.closed) return;
-
- if (!this.firstRender) {
- if (this.outputError) this.out.write(cursor.down(lines(this.outputError, this.out.columns) - 1) + clear(this.outputError, this.out.columns));
- this.out.write(clear(this.outputText, this.out.columns));
- }
-
- super.render();
- this.outputError = '';
- this.outputText = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(this.done), this.red ? color.red(this.rendered) : this.rendered].join(` `);
-
- if (this.error) {
- this.outputError += this.errorMsg.split(`\n`).reduce((a, l, i) => a + `\n${i ? ' ' : figures.pointerSmall} ${color.red().italic(l)}`, ``);
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText + cursor.save + this.outputError + cursor.restore + cursor.move(this.cursorOffset, 0));
- }
-
-}
-
-module.exports = TextPrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/elements/toggle.js b/includes/langcheck/node_modules/prompts/dist/elements/toggle.js
deleted file mode 100644
index d942f60..0000000
--- a/includes/langcheck/node_modules/prompts/dist/elements/toggle.js
+++ /dev/null
@@ -1,124 +0,0 @@
-"use strict";
-
-const color = require('kleur');
-
-const Prompt = require('./prompt');
-
-const _require = require('../util'),
- style = _require.style,
- clear = _require.clear;
-
-const _require2 = require('sisteransi'),
- cursor = _require2.cursor,
- erase = _require2.erase;
-/**
- * TogglePrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Boolean} [opts.initial=false] Default value
- * @param {String} [opts.active='no'] Active label
- * @param {String} [opts.inactive='off'] Inactive label
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-
-
-class TogglePrompt extends Prompt {
- constructor(opts = {}) {
- super(opts);
- this.msg = opts.message;
- this.value = !!opts.initial;
- this.active = opts.active || 'on';
- this.inactive = opts.inactive || 'off';
- this.initialValue = this.value;
- this.render();
- }
-
- reset() {
- this.value = this.initialValue;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- deactivate() {
- if (this.value === false) return this.bell();
- this.value = false;
- this.render();
- }
-
- activate() {
- if (this.value === true) return this.bell();
- this.value = true;
- this.render();
- }
-
- delete() {
- this.deactivate();
- }
-
- left() {
- this.deactivate();
- }
-
- right() {
- this.activate();
- }
-
- down() {
- this.deactivate();
- }
-
- up() {
- this.activate();
- }
-
- next() {
- this.value = !this.value;
- this.fire();
- this.render();
- }
-
- _(c, key) {
- if (c === ' ') {
- this.value = !this.value;
- } else if (c === '1') {
- this.value = true;
- } else if (c === '0') {
- this.value = false;
- } else return this.bell();
-
- this.render();
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
- this.outputText = [style.symbol(this.done, this.aborted), color.bold(this.msg), style.delimiter(this.done), this.value ? this.inactive : color.cyan().underline(this.inactive), color.gray('/'), this.value ? color.cyan().underline(this.active) : this.active].join(' ');
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-
-}
-
-module.exports = TogglePrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/index.js b/includes/langcheck/node_modules/prompts/dist/index.js
deleted file mode 100644
index f30e9e7..0000000
--- a/includes/langcheck/node_modules/prompts/dist/index.js
+++ /dev/null
@@ -1,154 +0,0 @@
-'use strict';
-
-function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
-
-function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
-
-function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
-
-function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
-
-function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
-
-function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
-
-function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
-
-function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
-
-const prompts = require('./prompts');
-
-const passOn = ['suggest', 'format', 'onState', 'validate', 'onRender', 'type'];
-
-const noop = () => {};
-/**
- * Prompt for a series of questions
- * @param {Array|Object} questions Single question object or Array of question objects
- * @param {Function} [onSubmit] Callback function called on prompt submit
- * @param {Function} [onCancel] Callback function called on cancel/abort
- * @returns {Object} Object with values from user input
- */
-
-
-function prompt() {
- return _prompt.apply(this, arguments);
-}
-
-function _prompt() {
- _prompt = _asyncToGenerator(function* (questions = [], {
- onSubmit = noop,
- onCancel = noop
- } = {}) {
- const answers = {};
- const override = prompt._override || {};
- questions = [].concat(questions);
- let answer, question, quit, name, type, lastPrompt;
-
- const getFormattedAnswer = /*#__PURE__*/function () {
- var _ref = _asyncToGenerator(function* (question, answer, skipValidation = false) {
- if (!skipValidation && question.validate && question.validate(answer) !== true) {
- return;
- }
-
- return question.format ? yield question.format(answer, answers) : answer;
- });
-
- return function getFormattedAnswer(_x, _x2) {
- return _ref.apply(this, arguments);
- };
- }();
-
- var _iterator = _createForOfIteratorHelper(questions),
- _step;
-
- try {
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
- question = _step.value;
- var _question = question;
- name = _question.name;
- type = _question.type;
-
- // evaluate type first and skip if type is a falsy value
- if (typeof type === 'function') {
- type = yield type(answer, _objectSpread({}, answers), question);
- question['type'] = type;
- }
-
- if (!type) continue; // if property is a function, invoke it unless it's a special function
-
- for (let key in question) {
- if (passOn.includes(key)) continue;
- let value = question[key];
- question[key] = typeof value === 'function' ? yield value(answer, _objectSpread({}, answers), lastPrompt) : value;
- }
-
- lastPrompt = question;
-
- if (typeof question.message !== 'string') {
- throw new Error('prompt message is required');
- } // update vars in case they changed
-
-
- var _question2 = question;
- name = _question2.name;
- type = _question2.type;
-
- if (prompts[type] === void 0) {
- throw new Error(`prompt type (${type}) is not defined`);
- }
-
- if (override[question.name] !== undefined) {
- answer = yield getFormattedAnswer(question, override[question.name]);
-
- if (answer !== undefined) {
- answers[name] = answer;
- continue;
- }
- }
-
- try {
- // Get the injected answer if there is one or prompt the user
- answer = prompt._injected ? getInjectedAnswer(prompt._injected, question.initial) : yield prompts[type](question);
- answers[name] = answer = yield getFormattedAnswer(question, answer, true);
- quit = yield onSubmit(question, answer, answers);
- } catch (err) {
- quit = !(yield onCancel(question, answers));
- }
-
- if (quit) return answers;
- }
- } catch (err) {
- _iterator.e(err);
- } finally {
- _iterator.f();
- }
-
- return answers;
- });
- return _prompt.apply(this, arguments);
-}
-
-function getInjectedAnswer(injected, deafultValue) {
- const answer = injected.shift();
-
- if (answer instanceof Error) {
- throw answer;
- }
-
- return answer === undefined ? deafultValue : answer;
-}
-
-function inject(answers) {
- prompt._injected = (prompt._injected || []).concat(answers);
-}
-
-function override(answers) {
- prompt._override = Object.assign({}, answers);
-}
-
-module.exports = Object.assign(prompt, {
- prompt,
- prompts,
- inject,
- override
-}); \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/prompts.js b/includes/langcheck/node_modules/prompts/dist/prompts.js
deleted file mode 100644
index 31f2648..0000000
--- a/includes/langcheck/node_modules/prompts/dist/prompts.js
+++ /dev/null
@@ -1,222 +0,0 @@
-'use strict';
-
-const $ = exports;
-
-const el = require('./elements');
-
-const noop = v => v;
-
-function toPrompt(type, args, opts = {}) {
- return new Promise((res, rej) => {
- const p = new el[type](args);
- const onAbort = opts.onAbort || noop;
- const onSubmit = opts.onSubmit || noop;
- const onExit = opts.onExit || noop;
- p.on('state', args.onState || noop);
- p.on('submit', x => res(onSubmit(x)));
- p.on('exit', x => res(onExit(x)));
- p.on('abort', x => rej(onAbort(x)));
- });
-}
-/**
- * Text prompt
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {function} [args.onState] On state change callback
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.text = args => toPrompt('TextPrompt', args);
-/**
- * Password prompt with masked input
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {function} [args.onState] On state change callback
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.password = args => {
- args.style = 'password';
- return $.text(args);
-};
-/**
- * Prompt where input is invisible, like sudo
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {function} [args.onState] On state change callback
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.invisible = args => {
- args.style = 'invisible';
- return $.text(args);
-};
-/**
- * Number prompt
- * @param {string} args.message Prompt message to display
- * @param {number} args.initial Default number value
- * @param {function} [args.onState] On state change callback
- * @param {number} [args.max] Max value
- * @param {number} [args.min] Min value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {Boolean} [opts.float=false] Parse input as floats
- * @param {Number} [opts.round=2] Round floats to x decimals
- * @param {Number} [opts.increment=1] Number to increment by when using arrow-keys
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.number = args => toPrompt('NumberPrompt', args);
-/**
- * Date prompt
- * @param {string} args.message Prompt message to display
- * @param {number} args.initial Default number value
- * @param {function} [args.onState] On state change callback
- * @param {number} [args.max] Max value
- * @param {number} [args.min] Min value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {Boolean} [opts.float=false] Parse input as floats
- * @param {Number} [opts.round=2] Round floats to x decimals
- * @param {Number} [opts.increment=1] Number to increment by when using arrow-keys
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.date = args => toPrompt('DatePrompt', args);
-/**
- * Classic yes/no prompt
- * @param {string} args.message Prompt message to display
- * @param {boolean} [args.initial=false] Default value
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.confirm = args => toPrompt('ConfirmPrompt', args);
-/**
- * List prompt, split intput string by `seperator`
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {string} [args.separator] String separator
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input, in form of an `Array`
- */
-
-
-$.list = args => {
- const sep = args.separator || ',';
- return toPrompt('TextPrompt', args, {
- onSubmit: str => str.split(sep).map(s => s.trim())
- });
-};
-/**
- * Toggle/switch prompt
- * @param {string} args.message Prompt message to display
- * @param {boolean} [args.initial=false] Default value
- * @param {string} [args.active="on"] Text for `active` state
- * @param {string} [args.inactive="off"] Text for `inactive` state
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.toggle = args => toPrompt('TogglePrompt', args);
-/**
- * Interactive select prompt
- * @param {string} args.message Prompt message to display
- * @param {Array} args.choices Array of choices objects `[{ title, value }, ...]`
- * @param {number} [args.initial] Index of default value
- * @param {String} [args.hint] Hint to display
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.select = args => toPrompt('SelectPrompt', args);
-/**
- * Interactive multi-select / autocompleteMultiselect prompt
- * @param {string} args.message Prompt message to display
- * @param {Array} args.choices Array of choices objects `[{ title, value, [selected] }, ...]`
- * @param {number} [args.max] Max select
- * @param {string} [args.hint] Hint to display user
- * @param {Number} [args.cursor=0] Cursor start position
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.multiselect = args => {
- args.choices = [].concat(args.choices || []);
-
- const toSelected = items => items.filter(item => item.selected).map(item => item.value);
-
- return toPrompt('MultiselectPrompt', args, {
- onAbort: toSelected,
- onSubmit: toSelected
- });
-};
-
-$.autocompleteMultiselect = args => {
- args.choices = [].concat(args.choices || []);
-
- const toSelected = items => items.filter(item => item.selected).map(item => item.value);
-
- return toPrompt('AutocompleteMultiselectPrompt', args, {
- onAbort: toSelected,
- onSubmit: toSelected
- });
-};
-
-const byTitle = (input, choices) => Promise.resolve(choices.filter(item => item.title.slice(0, input.length).toLowerCase() === input.toLowerCase()));
-/**
- * Interactive auto-complete prompt
- * @param {string} args.message Prompt message to display
- * @param {Array} args.choices Array of auto-complete choices objects `[{ title, value }, ...]`
- * @param {Function} [args.suggest] Function to filter results based on user input. Defaults to sort by `title`
- * @param {number} [args.limit=10] Max number of results to show
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {String} [args.initial] Index of the default value
- * @param {boolean} [opts.clearFirst] The first ESCAPE keypress will clear the input
- * @param {String} [args.fallback] Fallback message - defaults to initial value
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-
-
-$.autocomplete = args => {
- args.suggest = args.suggest || byTitle;
- args.choices = [].concat(args.choices || []);
- return toPrompt('AutocompletePrompt', args);
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/action.js b/includes/langcheck/node_modules/prompts/dist/util/action.js
deleted file mode 100644
index c36b7db..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/action.js
+++ /dev/null
@@ -1,38 +0,0 @@
-'use strict';
-
-module.exports = (key, isSelect) => {
- if (key.meta && key.name !== 'escape') return;
-
- if (key.ctrl) {
- if (key.name === 'a') return 'first';
- if (key.name === 'c') return 'abort';
- if (key.name === 'd') return 'abort';
- if (key.name === 'e') return 'last';
- if (key.name === 'g') return 'reset';
- }
-
- if (isSelect) {
- if (key.name === 'j') return 'down';
- if (key.name === 'k') return 'up';
- }
-
- if (key.name === 'return') return 'submit';
- if (key.name === 'enter') return 'submit'; // ctrl + J
-
- if (key.name === 'backspace') return 'delete';
- if (key.name === 'delete') return 'deleteForward';
- if (key.name === 'abort') return 'abort';
- if (key.name === 'escape') return 'exit';
- if (key.name === 'tab') return 'next';
- if (key.name === 'pagedown') return 'nextPage';
- if (key.name === 'pageup') return 'prevPage'; // TODO create home() in prompt types (e.g. TextPrompt)
-
- if (key.name === 'home') return 'home'; // TODO create end() in prompt types (e.g. TextPrompt)
-
- if (key.name === 'end') return 'end';
- if (key.name === 'up') return 'up';
- if (key.name === 'down') return 'down';
- if (key.name === 'right') return 'right';
- if (key.name === 'left') return 'left';
- return false;
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/clear.js b/includes/langcheck/node_modules/prompts/dist/util/clear.js
deleted file mode 100644
index 5a313be..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/clear.js
+++ /dev/null
@@ -1,42 +0,0 @@
-'use strict';
-
-function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
-
-function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
-
-function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
-
-const strip = require('./strip');
-
-const _require = require('sisteransi'),
- erase = _require.erase,
- cursor = _require.cursor;
-
-const width = str => [...strip(str)].length;
-/**
- * @param {string} prompt
- * @param {number} perLine
- */
-
-
-module.exports = function (prompt, perLine) {
- if (!perLine) return erase.line + cursor.to(0);
- let rows = 0;
- const lines = prompt.split(/\r?\n/);
-
- var _iterator = _createForOfIteratorHelper(lines),
- _step;
-
- try {
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
- let line = _step.value;
- rows += 1 + Math.floor(Math.max(width(line) - 1, 0) / perLine);
- }
- } catch (err) {
- _iterator.e(err);
- } finally {
- _iterator.f();
- }
-
- return erase.lines(rows);
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/entriesToDisplay.js b/includes/langcheck/node_modules/prompts/dist/util/entriesToDisplay.js
deleted file mode 100644
index fbb963a..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/entriesToDisplay.js
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-/**
- * Determine what entries should be displayed on the screen, based on the
- * currently selected index and the maximum visible. Used in list-based
- * prompts like `select` and `multiselect`.
- *
- * @param {number} cursor the currently selected entry
- * @param {number} total the total entries available to display
- * @param {number} [maxVisible] the number of entries that can be displayed
- */
-
-module.exports = (cursor, total, maxVisible) => {
- maxVisible = maxVisible || total;
- let startIndex = Math.min(total - maxVisible, cursor - Math.floor(maxVisible / 2));
- if (startIndex < 0) startIndex = 0;
- let endIndex = Math.min(startIndex + maxVisible, total);
- return {
- startIndex,
- endIndex
- };
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/figures.js b/includes/langcheck/node_modules/prompts/dist/util/figures.js
deleted file mode 100644
index 036ec50..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/figures.js
+++ /dev/null
@@ -1,32 +0,0 @@
-'use strict';
-
-const main = {
- arrowUp: '↑',
- arrowDown: '↓',
- arrowLeft: '←',
- arrowRight: '→',
- radioOn: '◉',
- radioOff: '◯',
- tick: '✔',
- cross: '✖',
- ellipsis: '…',
- pointerSmall: '›',
- line: '─',
- pointer: '❯'
-};
-const win = {
- arrowUp: main.arrowUp,
- arrowDown: main.arrowDown,
- arrowLeft: main.arrowLeft,
- arrowRight: main.arrowRight,
- radioOn: '(*)',
- radioOff: '( )',
- tick: '√',
- cross: '×',
- ellipsis: '...',
- pointerSmall: '»',
- line: '─',
- pointer: '>'
-};
-const figures = process.platform === 'win32' ? win : main;
-module.exports = figures; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/index.js b/includes/langcheck/node_modules/prompts/dist/util/index.js
deleted file mode 100644
index dbfe75e..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/index.js
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = {
- action: require('./action'),
- clear: require('./clear'),
- style: require('./style'),
- strip: require('./strip'),
- figures: require('./figures'),
- lines: require('./lines'),
- wrap: require('./wrap'),
- entriesToDisplay: require('./entriesToDisplay')
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/lines.js b/includes/langcheck/node_modules/prompts/dist/util/lines.js
deleted file mode 100644
index 54a939a..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/lines.js
+++ /dev/null
@@ -1,14 +0,0 @@
-'use strict';
-
-const strip = require('./strip');
-/**
- * @param {string} msg
- * @param {number} perLine
- */
-
-
-module.exports = function (msg, perLine) {
- let lines = String(strip(msg) || '').split(/\r?\n/);
- if (!perLine) return lines.length;
- return lines.map(l => Math.ceil(l.length / perLine)).reduce((a, b) => a + b);
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/strip.js b/includes/langcheck/node_modules/prompts/dist/util/strip.js
deleted file mode 100644
index dd289a0..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/strip.js
+++ /dev/null
@@ -1,7 +0,0 @@
-'use strict';
-
-module.exports = str => {
- const pattern = ['[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))'].join('|');
- const RGX = new RegExp(pattern, 'g');
- return typeof str === 'string' ? str.replace(RGX, '') : str;
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/style.js b/includes/langcheck/node_modules/prompts/dist/util/style.js
deleted file mode 100644
index ed1a49b..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/style.js
+++ /dev/null
@@ -1,51 +0,0 @@
-'use strict';
-
-const c = require('kleur');
-
-const figures = require('./figures'); // rendering user input.
-
-
-const styles = Object.freeze({
- password: {
- scale: 1,
- render: input => '*'.repeat(input.length)
- },
- emoji: {
- scale: 2,
- render: input => '😃'.repeat(input.length)
- },
- invisible: {
- scale: 0,
- render: input => ''
- },
- default: {
- scale: 1,
- render: input => `${input}`
- }
-});
-
-const render = type => styles[type] || styles.default; // icon to signalize a prompt.
-
-
-const symbols = Object.freeze({
- aborted: c.red(figures.cross),
- done: c.green(figures.tick),
- exited: c.yellow(figures.cross),
- default: c.cyan('?')
-});
-
-const symbol = (done, aborted, exited) => aborted ? symbols.aborted : exited ? symbols.exited : done ? symbols.done : symbols.default; // between the question and the user's input.
-
-
-const delimiter = completing => c.gray(completing ? figures.ellipsis : figures.pointerSmall);
-
-const item = (expandable, expanded) => c.gray(expandable ? expanded ? figures.pointerSmall : '+' : figures.line);
-
-module.exports = {
- styles,
- render,
- symbols,
- symbol,
- delimiter,
- item
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/dist/util/wrap.js b/includes/langcheck/node_modules/prompts/dist/util/wrap.js
deleted file mode 100644
index da5e67c..0000000
--- a/includes/langcheck/node_modules/prompts/dist/util/wrap.js
+++ /dev/null
@@ -1,16 +0,0 @@
-'use strict';
-/**
- * @param {string} msg The message to wrap
- * @param {object} opts
- * @param {number|string} [opts.margin] Left margin
- * @param {number} opts.width Maximum characters per line including the margin
- */
-
-module.exports = (msg, opts = {}) => {
- const tab = Number.isSafeInteger(parseInt(opts.margin)) ? new Array(parseInt(opts.margin)).fill(' ').join('') : opts.margin || '';
- const width = opts.width;
- return (msg || '').split(/\r?\n/g).map(line => line.split(/\s+/g).reduce((arr, w) => {
- if (w.length + tab.length >= width || arr[arr.length - 1].length + w.length + 1 < width) arr[arr.length - 1] += ` ${w}`;else arr.push(`${tab}${w}`);
- return arr;
- }, [tab]).join('\n')).join('\n');
-}; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/index.js b/includes/langcheck/node_modules/prompts/index.js
deleted file mode 100644
index 3479956..0000000
--- a/includes/langcheck/node_modules/prompts/index.js
+++ /dev/null
@@ -1,14 +0,0 @@
-function isNodeLT(tar) {
- tar = (Array.isArray(tar) ? tar : tar.split('.')).map(Number);
- let i=0, src=process.versions.node.split('.').map(Number);
- for (; i < tar.length; i++) {
- if (src[i] > tar[i]) return false;
- if (tar[i] > src[i]) return true;
- }
- return false;
-}
-
-module.exports =
- isNodeLT('8.6.0')
- ? require('./dist/index.js')
- : require('./lib/index.js');
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/datepart.js b/includes/langcheck/node_modules/prompts/lib/dateparts/datepart.js
deleted file mode 100644
index 62b893b..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/datepart.js
+++ /dev/null
@@ -1,35 +0,0 @@
-'use strict';
-
-class DatePart {
- constructor({token, date, parts, locales}) {
- this.token = token;
- this.date = date || new Date();
- this.parts = parts || [this];
- this.locales = locales || {};
- }
-
- up() {}
-
- down() {}
-
- next() {
- const currentIdx = this.parts.indexOf(this);
- return this.parts.find((part, idx) => idx > currentIdx && part instanceof DatePart);
- }
-
- setTo(val) {}
-
- prev() {
- let parts = [].concat(this.parts).reverse();
- const currentIdx = parts.indexOf(this);
- return parts.find((part, idx) => idx > currentIdx && part instanceof DatePart);
- }
-
- toString() {
- return String(this.date);
- }
-}
-
-module.exports = DatePart;
-
-
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/day.js b/includes/langcheck/node_modules/prompts/lib/dateparts/day.js
deleted file mode 100644
index 5db84fe..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/day.js
+++ /dev/null
@@ -1,42 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-const pos = n => {
- n = n % 10;
- return n === 1 ? 'st'
- : n === 2 ? 'nd'
- : n === 3 ? 'rd'
- : 'th';
-}
-
-class Day extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setDate(this.date.getDate() + 1);
- }
-
- down() {
- this.date.setDate(this.date.getDate() - 1);
- }
-
- setTo(val) {
- this.date.setDate(parseInt(val.substr(-2)));
- }
-
- toString() {
- let date = this.date.getDate();
- let day = this.date.getDay();
- return this.token === 'DD' ? String(date).padStart(2, '0')
- : this.token === 'Do' ? date + pos(date)
- : this.token === 'd' ? day + 1
- : this.token === 'ddd' ? this.locales.weekdaysShort[day]
- : this.token === 'dddd' ? this.locales.weekdays[day]
- : date;
- }
-}
-
-module.exports = Day;
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/hours.js b/includes/langcheck/node_modules/prompts/lib/dateparts/hours.js
deleted file mode 100644
index 171b3d2..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/hours.js
+++ /dev/null
@@ -1,30 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Hours extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setHours(this.date.getHours() + 1);
- }
-
- down() {
- this.date.setHours(this.date.getHours() - 1);
- }
-
- setTo(val) {
- this.date.setHours(parseInt(val.substr(-2)));
- }
-
- toString() {
- let hours = this.date.getHours();
- if (/h/.test(this.token))
- hours = (hours % 12) || 12;
- return this.token.length > 1 ? String(hours).padStart(2, '0') : hours;
- }
-}
-
-module.exports = Hours;
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/index.js b/includes/langcheck/node_modules/prompts/lib/dateparts/index.js
deleted file mode 100644
index dc0cc95..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/index.js
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = {
- DatePart: require('./datepart'),
- Meridiem: require('./meridiem'),
- Day: require('./day'),
- Hours: require('./hours'),
- Milliseconds: require('./milliseconds'),
- Minutes: require('./minutes'),
- Month: require('./month'),
- Seconds: require('./seconds'),
- Year: require('./year'),
-}
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/meridiem.js b/includes/langcheck/node_modules/prompts/lib/dateparts/meridiem.js
deleted file mode 100644
index 8488677..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/meridiem.js
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Meridiem extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setHours((this.date.getHours() + 12) % 24);
- }
-
- down() {
- this.up();
- }
-
- toString() {
- let meridiem = this.date.getHours() > 12 ? 'pm' : 'am';
- return /\A/.test(this.token) ? meridiem.toUpperCase() : meridiem;
- }
-}
-
-module.exports = Meridiem;
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/milliseconds.js b/includes/langcheck/node_modules/prompts/lib/dateparts/milliseconds.js
deleted file mode 100644
index 8984270..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/milliseconds.js
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Milliseconds extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setMilliseconds(this.date.getMilliseconds() + 1);
- }
-
- down() {
- this.date.setMilliseconds(this.date.getMilliseconds() - 1);
- }
-
- setTo(val) {
- this.date.setMilliseconds(parseInt(val.substr(-(this.token.length))));
- }
-
- toString() {
- return String(this.date.getMilliseconds()).padStart(4, '0')
- .substr(0, this.token.length);
- }
-}
-
-module.exports = Milliseconds;
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/minutes.js b/includes/langcheck/node_modules/prompts/lib/dateparts/minutes.js
deleted file mode 100644
index aa1d8f7..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/minutes.js
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Minutes extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setMinutes(this.date.getMinutes() + 1);
- }
-
- down() {
- this.date.setMinutes(this.date.getMinutes() - 1);
- }
-
- setTo(val) {
- this.date.setMinutes(parseInt(val.substr(-2)));
- }
-
- toString() {
- let m = this.date.getMinutes();
- return this.token.length > 1 ? String(m).padStart(2, '0') : m;
- }
-}
-
-module.exports = Minutes;
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/month.js b/includes/langcheck/node_modules/prompts/lib/dateparts/month.js
deleted file mode 100644
index f656455..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/month.js
+++ /dev/null
@@ -1,33 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Month extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setMonth(this.date.getMonth() + 1);
- }
-
- down() {
- this.date.setMonth(this.date.getMonth() - 1);
- }
-
- setTo(val) {
- val = parseInt(val.substr(-2)) - 1;
- this.date.setMonth(val < 0 ? 0 : val);
- }
-
- toString() {
- let month = this.date.getMonth();
- let tl = this.token.length;
- return tl === 2 ? String(month + 1).padStart(2, '0')
- : tl === 3 ? this.locales.monthsShort[month]
- : tl === 4 ? this.locales.months[month]
- : String(month + 1);
- }
-}
-
-module.exports = Month;
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/seconds.js b/includes/langcheck/node_modules/prompts/lib/dateparts/seconds.js
deleted file mode 100644
index 0c1a1a4..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/seconds.js
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Seconds extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setSeconds(this.date.getSeconds() + 1);
- }
-
- down() {
- this.date.setSeconds(this.date.getSeconds() - 1);
- }
-
- setTo(val) {
- this.date.setSeconds(parseInt(val.substr(-2)));
- }
-
- toString() {
- let s = this.date.getSeconds();
- return this.token.length > 1 ? String(s).padStart(2, '0') : s;
- }
-}
-
-module.exports = Seconds;
diff --git a/includes/langcheck/node_modules/prompts/lib/dateparts/year.js b/includes/langcheck/node_modules/prompts/lib/dateparts/year.js
deleted file mode 100644
index f068e43..0000000
--- a/includes/langcheck/node_modules/prompts/lib/dateparts/year.js
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-const DatePart = require('./datepart');
-
-class Year extends DatePart {
- constructor(opts={}) {
- super(opts);
- }
-
- up() {
- this.date.setFullYear(this.date.getFullYear() + 1);
- }
-
- down() {
- this.date.setFullYear(this.date.getFullYear() - 1);
- }
-
- setTo(val) {
- this.date.setFullYear(val.substr(-4));
- }
-
- toString() {
- let year = String(this.date.getFullYear()).padStart(4, '0');
- return this.token.length === 2 ? year.substr(-2) : year;
- }
-}
-
-module.exports = Year;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/autocomplete.js b/includes/langcheck/node_modules/prompts/lib/elements/autocomplete.js
deleted file mode 100644
index 8e06da2..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/autocomplete.js
+++ /dev/null
@@ -1,264 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-const Prompt = require('./prompt');
-const { erase, cursor } = require('sisteransi');
-const { style, clear, figures, wrap, entriesToDisplay } = require('../util');
-
-const getVal = (arr, i) => arr[i] && (arr[i].value || arr[i].title || arr[i]);
-const getTitle = (arr, i) => arr[i] && (arr[i].title || arr[i].value || arr[i]);
-const getIndex = (arr, valOrTitle) => {
- const index = arr.findIndex(el => el.value === valOrTitle || el.title === valOrTitle);
- return index > -1 ? index : undefined;
-};
-
-/**
- * TextPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of auto-complete choices objects
- * @param {Function} [opts.suggest] Filter function. Defaults to sort by title
- * @param {Number} [opts.limit=10] Max number of results to show
- * @param {Number} [opts.cursor=0] Cursor start position
- * @param {String} [opts.style='default'] Render style
- * @param {String} [opts.fallback] Fallback message - initial to default value
- * @param {String} [opts.initial] Index of the default value
- * @param {Boolean} [opts.clearFirst] The first ESCAPE keypress will clear the input
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.noMatches] The no matches found label
- */
-class AutocompletePrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.msg = opts.message;
- this.suggest = opts.suggest;
- this.choices = opts.choices;
- this.initial = typeof opts.initial === 'number'
- ? opts.initial
- : getIndex(opts.choices, opts.initial);
- this.select = this.initial || opts.cursor || 0;
- this.i18n = { noMatches: opts.noMatches || 'no matches found' };
- this.fallback = opts.fallback || this.initial;
- this.clearFirst = opts.clearFirst || false;
- this.suggestions = [];
- this.input = '';
- this.limit = opts.limit || 10;
- this.cursor = 0;
- this.transform = style.render(opts.style);
- this.scale = this.transform.scale;
- this.render = this.render.bind(this);
- this.complete = this.complete.bind(this);
- this.clear = clear('', this.out.columns);
- this.complete(this.render);
- this.render();
- }
-
- set fallback(fb) {
- this._fb = Number.isSafeInteger(parseInt(fb)) ? parseInt(fb) : fb;
- }
-
- get fallback() {
- let choice;
- if (typeof this._fb === 'number')
- choice = this.choices[this._fb];
- else if (typeof this._fb === 'string')
- choice = { title: this._fb };
- return choice || this._fb || { title: this.i18n.noMatches };
- }
-
- moveSelect(i) {
- this.select = i;
- if (this.suggestions.length > 0)
- this.value = getVal(this.suggestions, i);
- else this.value = this.fallback.value;
- this.fire();
- }
-
- async complete(cb) {
- const p = (this.completing = this.suggest(this.input, this.choices));
- const suggestions = await p;
-
- if (this.completing !== p) return;
- this.suggestions = suggestions
- .map((s, i, arr) => ({ title: getTitle(arr, i), value: getVal(arr, i), description: s.description }));
- this.completing = false;
- const l = Math.max(suggestions.length - 1, 0);
- this.moveSelect(Math.min(l, this.select));
-
- cb && cb();
- }
-
- reset() {
- this.input = '';
- this.complete(() => {
- this.moveSelect(this.initial !== void 0 ? this.initial : 0);
- this.render();
- });
- this.render();
- }
-
- exit() {
- if (this.clearFirst && this.input.length > 0) {
- this.reset();
- } else {
- this.done = this.exited = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
- }
-
- abort() {
- this.done = this.aborted = true;
- this.exited = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- this.done = true;
- this.aborted = this.exited = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- _(c, key) {
- let s1 = this.input.slice(0, this.cursor);
- let s2 = this.input.slice(this.cursor);
- this.input = `${s1}${c}${s2}`;
- this.cursor = s1.length+1;
- this.complete(this.render);
- this.render();
- }
-
- delete() {
- if (this.cursor === 0) return this.bell();
- let s1 = this.input.slice(0, this.cursor-1);
- let s2 = this.input.slice(this.cursor);
- this.input = `${s1}${s2}`;
- this.complete(this.render);
- this.cursor = this.cursor-1;
- this.render();
- }
-
- deleteForward() {
- if(this.cursor*this.scale >= this.rendered.length) return this.bell();
- let s1 = this.input.slice(0, this.cursor);
- let s2 = this.input.slice(this.cursor+1);
- this.input = `${s1}${s2}`;
- this.complete(this.render);
- this.render();
- }
-
- first() {
- this.moveSelect(0);
- this.render();
- }
-
- last() {
- this.moveSelect(this.suggestions.length - 1);
- this.render();
- }
-
- up() {
- if (this.select === 0) {
- this.moveSelect(this.suggestions.length - 1);
- } else {
- this.moveSelect(this.select - 1);
- }
- this.render();
- }
-
- down() {
- if (this.select === this.suggestions.length - 1) {
- this.moveSelect(0);
- } else {
- this.moveSelect(this.select + 1);
- }
- this.render();
- }
-
- next() {
- if (this.select === this.suggestions.length - 1) {
- this.moveSelect(0);
- } else this.moveSelect(this.select + 1);
- this.render();
- }
-
- nextPage() {
- this.moveSelect(Math.min(this.select + this.limit, this.suggestions.length - 1));
- this.render();
- }
-
- prevPage() {
- this.moveSelect(Math.max(this.select - this.limit, 0));
- this.render();
- }
-
- left() {
- if (this.cursor <= 0) return this.bell();
- this.cursor = this.cursor-1;
- this.render();
- }
-
- right() {
- if (this.cursor*this.scale >= this.rendered.length) return this.bell();
- this.cursor = this.cursor+1;
- this.render();
- }
-
- renderOption(v, hovered, isStart, isEnd) {
- let desc;
- let prefix = isStart ? figures.arrowUp : isEnd ? figures.arrowDown : ' ';
- let title = hovered ? color.cyan().underline(v.title) : v.title;
- prefix = (hovered ? color.cyan(figures.pointer) + ' ' : ' ') + prefix;
- if (v.description) {
- desc = ` - ${v.description}`;
- if (prefix.length + title.length + desc.length >= this.out.columns
- || v.description.split(/\r?\n/).length > 1) {
- desc = '\n' + wrap(v.description, { margin: 3, width: this.out.columns })
- }
- }
- return prefix + ' ' + title + color.gray(desc || '');
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
-
- let { startIndex, endIndex } = entriesToDisplay(this.select, this.choices.length, this.limit);
-
- this.outputText = [
- style.symbol(this.done, this.aborted, this.exited),
- color.bold(this.msg),
- style.delimiter(this.completing),
- this.done && this.suggestions[this.select]
- ? this.suggestions[this.select].title
- : this.rendered = this.transform.render(this.input)
- ].join(' ');
-
- if (!this.done) {
- const suggestions = this.suggestions
- .slice(startIndex, endIndex)
- .map((item, i) => this.renderOption(item,
- this.select === i + startIndex,
- i === 0 && startIndex > 0,
- i + startIndex === endIndex - 1 && endIndex < this.choices.length))
- .join('\n');
- this.outputText += `\n` + (suggestions || color.gray(this.fallback.title));
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-}
-
-module.exports = AutocompletePrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/autocompleteMultiselect.js b/includes/langcheck/node_modules/prompts/lib/elements/autocompleteMultiselect.js
deleted file mode 100644
index b64510f..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/autocompleteMultiselect.js
+++ /dev/null
@@ -1,194 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-const { cursor } = require('sisteransi');
-const MultiselectPrompt = require('./multiselect');
-const { clear, style, figures } = require('../util');
-/**
- * MultiselectPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of choice objects
- * @param {String} [opts.hint] Hint to display
- * @param {String} [opts.warn] Hint shown for disabled choices
- * @param {Number} [opts.max] Max choices
- * @param {Number} [opts.cursor=0] Cursor start position
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-class AutocompleteMultiselectPrompt extends MultiselectPrompt {
- constructor(opts={}) {
- opts.overrideRender = true;
- super(opts);
- this.inputValue = '';
- this.clear = clear('', this.out.columns);
- this.filteredOptions = this.value;
- this.render();
- }
-
- last() {
- this.cursor = this.filteredOptions.length - 1;
- this.render();
- }
- next() {
- this.cursor = (this.cursor + 1) % this.filteredOptions.length;
- this.render();
- }
-
- up() {
- if (this.cursor === 0) {
- this.cursor = this.filteredOptions.length - 1;
- } else {
- this.cursor--;
- }
- this.render();
- }
-
- down() {
- if (this.cursor === this.filteredOptions.length - 1) {
- this.cursor = 0;
- } else {
- this.cursor++;
- }
- this.render();
- }
-
- left() {
- this.filteredOptions[this.cursor].selected = false;
- this.render();
- }
-
- right() {
- if (this.value.filter(e => e.selected).length >= this.maxChoices) return this.bell();
- this.filteredOptions[this.cursor].selected = true;
- this.render();
- }
-
- delete() {
- if (this.inputValue.length) {
- this.inputValue = this.inputValue.substr(0, this.inputValue.length - 1);
- this.updateFilteredOptions();
- }
- }
-
- updateFilteredOptions() {
- const currentHighlight = this.filteredOptions[this.cursor];
- this.filteredOptions = this.value
- .filter(v => {
- if (this.inputValue) {
- if (typeof v.title === 'string') {
- if (v.title.toLowerCase().includes(this.inputValue.toLowerCase())) {
- return true;
- }
- }
- if (typeof v.value === 'string') {
- if (v.value.toLowerCase().includes(this.inputValue.toLowerCase())) {
- return true;
- }
- }
- return false;
- }
- return true;
- });
- const newHighlightIndex = this.filteredOptions.findIndex(v => v === currentHighlight)
- this.cursor = newHighlightIndex < 0 ? 0 : newHighlightIndex;
- this.render();
- }
-
- handleSpaceToggle() {
- const v = this.filteredOptions[this.cursor];
-
- if (v.selected) {
- v.selected = false;
- this.render();
- } else if (v.disabled || this.value.filter(e => e.selected).length >= this.maxChoices) {
- return this.bell();
- } else {
- v.selected = true;
- this.render();
- }
- }
-
- handleInputChange(c) {
- this.inputValue = this.inputValue + c;
- this.updateFilteredOptions();
- }
-
- _(c, key) {
- if (c === ' ') {
- this.handleSpaceToggle();
- } else {
- this.handleInputChange(c);
- }
- }
-
- renderInstructions() {
- if (this.instructions === undefined || this.instructions) {
- if (typeof this.instructions === 'string') {
- return this.instructions;
- }
- return `
-Instructions:
- ${figures.arrowUp}/${figures.arrowDown}: Highlight option
- ${figures.arrowLeft}/${figures.arrowRight}/[space]: Toggle selection
- [a,b,c]/delete: Filter choices
- enter/return: Complete answer
-`;
- }
- return '';
- }
-
- renderCurrentInput() {
- return `
-Filtered results for: ${this.inputValue ? this.inputValue : color.gray('Enter something to filter')}\n`;
- }
-
- renderOption(cursor, v, i) {
- let title;
- if (v.disabled) title = cursor === i ? color.gray().underline(v.title) : color.strikethrough().gray(v.title);
- else title = cursor === i ? color.cyan().underline(v.title) : v.title;
- return (v.selected ? color.green(figures.radioOn) : figures.radioOff) + ' ' + title
- }
-
- renderDoneOrInstructions() {
- if (this.done) {
- return this.value
- .filter(e => e.selected)
- .map(v => v.title)
- .join(', ');
- }
-
- const output = [color.gray(this.hint), this.renderInstructions(), this.renderCurrentInput()];
-
- if (this.filteredOptions.length && this.filteredOptions[this.cursor].disabled) {
- output.push(color.yellow(this.warn));
- }
- return output.join(' ');
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- super.render();
-
- // print prompt
-
- let prompt = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(false),
- this.renderDoneOrInstructions()
- ].join(' ');
-
- if (this.showMinError) {
- prompt += color.red(`You must select a minimum of ${this.minSelected} choices.`);
- this.showMinError = false;
- }
- prompt += this.renderOptions(this.filteredOptions);
-
- this.out.write(this.clear + prompt);
- this.clear = clear(prompt, this.out.columns);
- }
-}
-
-module.exports = AutocompleteMultiselectPrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/confirm.js b/includes/langcheck/node_modules/prompts/lib/elements/confirm.js
deleted file mode 100644
index 7a9173f..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/confirm.js
+++ /dev/null
@@ -1,89 +0,0 @@
-const color = require('kleur');
-const Prompt = require('./prompt');
-const { style, clear } = require('../util');
-const { erase, cursor } = require('sisteransi');
-
-/**
- * ConfirmPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Boolean} [opts.initial] Default value (true/false)
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.yes] The "Yes" label
- * @param {String} [opts.yesOption] The "Yes" option when choosing between yes/no
- * @param {String} [opts.no] The "No" label
- * @param {String} [opts.noOption] The "No" option when choosing between yes/no
- */
-class ConfirmPrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.msg = opts.message;
- this.value = opts.initial;
- this.initialValue = !!opts.initial;
- this.yesMsg = opts.yes || 'yes';
- this.yesOption = opts.yesOption || '(Y/n)';
- this.noMsg = opts.no || 'no';
- this.noOption = opts.noOption || '(y/N)';
- this.render();
- }
-
- reset() {
- this.value = this.initialValue;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- this.value = this.value || false;
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- _(c, key) {
- if (c.toLowerCase() === 'y') {
- this.value = true;
- return this.submit();
- }
- if (c.toLowerCase() === 'n') {
- this.value = false;
- return this.submit();
- }
- return this.bell();
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
-
- this.outputText = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(this.done),
- this.done ? (this.value ? this.yesMsg : this.noMsg)
- : color.gray(this.initialValue ? this.yesOption : this.noOption)
- ].join(' ');
-
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-}
-
-module.exports = ConfirmPrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/date.js b/includes/langcheck/node_modules/prompts/lib/elements/date.js
deleted file mode 100644
index 71ff608..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/date.js
+++ /dev/null
@@ -1,209 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-const Prompt = require('./prompt');
-const { style, clear, figures } = require('../util');
-const { erase, cursor } = require('sisteransi');
-const { DatePart, Meridiem, Day, Hours, Milliseconds, Minutes, Month, Seconds, Year } = require('../dateparts');
-
-const regex = /\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g;
-const regexGroups = {
- 1: ({token}) => token.replace(/\\(.)/g, '$1'),
- 2: (opts) => new Day(opts), // Day // TODO
- 3: (opts) => new Month(opts), // Month
- 4: (opts) => new Year(opts), // Year
- 5: (opts) => new Meridiem(opts), // AM/PM // TODO (special)
- 6: (opts) => new Hours(opts), // Hours
- 7: (opts) => new Minutes(opts), // Minutes
- 8: (opts) => new Seconds(opts), // Seconds
- 9: (opts) => new Milliseconds(opts), // Fractional seconds
-}
-
-const dfltLocales = {
- months: 'January,February,March,April,May,June,July,August,September,October,November,December'.split(','),
- monthsShort: 'Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec'.split(','),
- weekdays: 'Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday'.split(','),
- weekdaysShort: 'Sun,Mon,Tue,Wed,Thu,Fri,Sat'.split(',')
-}
-
-
-/**
- * DatePrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Number} [opts.initial] Index of default value
- * @param {String} [opts.mask] The format mask
- * @param {object} [opts.locales] The date locales
- * @param {String} [opts.error] The error message shown on invalid value
- * @param {Function} [opts.validate] Function to validate the submitted value
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-class DatePrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.msg = opts.message;
- this.cursor = 0;
- this.typed = '';
- this.locales = Object.assign(dfltLocales, opts.locales);
- this._date = opts.initial || new Date();
- this.errorMsg = opts.error || 'Please Enter A Valid Value';
- this.validator = opts.validate || (() => true);
- this.mask = opts.mask || 'YYYY-MM-DD HH:mm:ss';
- this.clear = clear('', this.out.columns);
- this.render();
- }
-
- get value() {
- return this.date
- }
-
- get date() {
- return this._date;
- }
-
- set date(date) {
- if (date) this._date.setTime(date.getTime());
- }
-
- set mask(mask) {
- let result;
- this.parts = [];
- while(result = regex.exec(mask)) {
- let match = result.shift();
- let idx = result.findIndex(gr => gr != null);
- this.parts.push(idx in regexGroups
- ? regexGroups[idx]({ token: result[idx] || match, date: this.date, parts: this.parts, locales: this.locales })
- : result[idx] || match);
- }
-
- let parts = this.parts.reduce((arr, i) => {
- if (typeof i === 'string' && typeof arr[arr.length - 1] === 'string')
- arr[arr.length - 1] += i;
- else arr.push(i);
- return arr;
- }, []);
-
- this.parts.splice(0);
- this.parts.push(...parts);
- this.reset();
- }
-
- moveCursor(n) {
- this.typed = '';
- this.cursor = n;
- this.fire();
- }
-
- reset() {
- this.moveCursor(this.parts.findIndex(p => p instanceof DatePart));
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.error = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- async validate() {
- let valid = await this.validator(this.value);
- if (typeof valid === 'string') {
- this.errorMsg = valid;
- valid = false;
- }
- this.error = !valid;
- }
-
- async submit() {
- await this.validate();
- if (this.error) {
- this.color = 'red';
- this.fire();
- this.render();
- return;
- }
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- up() {
- this.typed = '';
- this.parts[this.cursor].up();
- this.render();
- }
-
- down() {
- this.typed = '';
- this.parts[this.cursor].down();
- this.render();
- }
-
- left() {
- let prev = this.parts[this.cursor].prev();
- if (prev == null) return this.bell();
- this.moveCursor(this.parts.indexOf(prev));
- this.render();
- }
-
- right() {
- let next = this.parts[this.cursor].next();
- if (next == null) return this.bell();
- this.moveCursor(this.parts.indexOf(next));
- this.render();
- }
-
- next() {
- let next = this.parts[this.cursor].next();
- this.moveCursor(next
- ? this.parts.indexOf(next)
- : this.parts.findIndex((part) => part instanceof DatePart));
- this.render();
- }
-
- _(c) {
- if (/\d/.test(c)) {
- this.typed += c;
- this.parts[this.cursor].setTo(this.typed);
- this.render();
- }
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
-
- // Print prompt
- this.outputText = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(false),
- this.parts.reduce((arr, p, idx) => arr.concat(idx === this.cursor && !this.done ? color.cyan().underline(p.toString()) : p), [])
- .join('')
- ].join(' ');
-
- // Print error
- if (this.error) {
- this.outputText += this.errorMsg.split('\n').reduce(
- (a, l, i) => a + `\n${i ? ` ` : figures.pointerSmall} ${color.red().italic(l)}`, ``);
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-}
-
-module.exports = DatePrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/index.js b/includes/langcheck/node_modules/prompts/lib/elements/index.js
deleted file mode 100644
index 2556dd0..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/index.js
+++ /dev/null
@@ -1,13 +0,0 @@
-'use strict';
-
-module.exports = {
- TextPrompt: require('./text'),
- SelectPrompt: require('./select'),
- TogglePrompt: require('./toggle'),
- DatePrompt: require('./date'),
- NumberPrompt: require('./number'),
- MultiselectPrompt: require('./multiselect'),
- AutocompletePrompt: require('./autocomplete'),
- AutocompleteMultiselectPrompt: require('./autocompleteMultiselect'),
- ConfirmPrompt: require('./confirm')
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/multiselect.js b/includes/langcheck/node_modules/prompts/lib/elements/multiselect.js
deleted file mode 100644
index 99b393f..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/multiselect.js
+++ /dev/null
@@ -1,271 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-const { cursor } = require('sisteransi');
-const Prompt = require('./prompt');
-const { clear, figures, style, wrap, entriesToDisplay } = require('../util');
-
-/**
- * MultiselectPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of choice objects
- * @param {String} [opts.hint] Hint to display
- * @param {String} [opts.warn] Hint shown for disabled choices
- * @param {Number} [opts.max] Max choices
- * @param {Number} [opts.cursor=0] Cursor start position
- * @param {Number} [opts.optionsPerPage=10] Max options to display at once
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-class MultiselectPrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.msg = opts.message;
- this.cursor = opts.cursor || 0;
- this.scrollIndex = opts.cursor || 0;
- this.hint = opts.hint || '';
- this.warn = opts.warn || '- This option is disabled -';
- this.minSelected = opts.min;
- this.showMinError = false;
- this.maxChoices = opts.max;
- this.instructions = opts.instructions;
- this.optionsPerPage = opts.optionsPerPage || 10;
- this.value = opts.choices.map((ch, idx) => {
- if (typeof ch === 'string')
- ch = {title: ch, value: idx};
- return {
- title: ch && (ch.title || ch.value || ch),
- description: ch && ch.description,
- value: ch && (ch.value === undefined ? idx : ch.value),
- selected: ch && ch.selected,
- disabled: ch && ch.disabled
- };
- });
- this.clear = clear('', this.out.columns);
- if (!opts.overrideRender) {
- this.render();
- }
- }
-
- reset() {
- this.value.map(v => !v.selected);
- this.cursor = 0;
- this.fire();
- this.render();
- }
-
- selected() {
- return this.value.filter(v => v.selected);
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- const selected = this.value
- .filter(e => e.selected);
- if (this.minSelected && selected.length < this.minSelected) {
- this.showMinError = true;
- this.render();
- } else {
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
- }
-
- first() {
- this.cursor = 0;
- this.render();
- }
-
- last() {
- this.cursor = this.value.length - 1;
- this.render();
- }
- next() {
- this.cursor = (this.cursor + 1) % this.value.length;
- this.render();
- }
-
- up() {
- if (this.cursor === 0) {
- this.cursor = this.value.length - 1;
- } else {
- this.cursor--;
- }
- this.render();
- }
-
- down() {
- if (this.cursor === this.value.length - 1) {
- this.cursor = 0;
- } else {
- this.cursor++;
- }
- this.render();
- }
-
- left() {
- this.value[this.cursor].selected = false;
- this.render();
- }
-
- right() {
- if (this.value.filter(e => e.selected).length >= this.maxChoices) return this.bell();
- this.value[this.cursor].selected = true;
- this.render();
- }
-
- handleSpaceToggle() {
- const v = this.value[this.cursor];
-
- if (v.selected) {
- v.selected = false;
- this.render();
- } else if (v.disabled || this.value.filter(e => e.selected).length >= this.maxChoices) {
- return this.bell();
- } else {
- v.selected = true;
- this.render();
- }
- }
-
- toggleAll() {
- if (this.maxChoices !== undefined || this.value[this.cursor].disabled) {
- return this.bell();
- }
-
- const newSelected = !this.value[this.cursor].selected;
- this.value.filter(v => !v.disabled).forEach(v => v.selected = newSelected);
- this.render();
- }
-
- _(c, key) {
- if (c === ' ') {
- this.handleSpaceToggle();
- } else if (c === 'a') {
- this.toggleAll();
- } else {
- return this.bell();
- }
- }
-
- renderInstructions() {
- if (this.instructions === undefined || this.instructions) {
- if (typeof this.instructions === 'string') {
- return this.instructions;
- }
- return '\nInstructions:\n'
- + ` ${figures.arrowUp}/${figures.arrowDown}: Highlight option\n`
- + ` ${figures.arrowLeft}/${figures.arrowRight}/[space]: Toggle selection\n`
- + (this.maxChoices === undefined ? ` a: Toggle all\n` : '')
- + ` enter/return: Complete answer`;
- }
- return '';
- }
-
- renderOption(cursor, v, i, arrowIndicator) {
- const prefix = (v.selected ? color.green(figures.radioOn) : figures.radioOff) + ' ' + arrowIndicator + ' ';
- let title, desc;
-
- if (v.disabled) {
- title = cursor === i ? color.gray().underline(v.title) : color.strikethrough().gray(v.title);
- } else {
- title = cursor === i ? color.cyan().underline(v.title) : v.title;
- if (cursor === i && v.description) {
- desc = ` - ${v.description}`;
- if (prefix.length + title.length + desc.length >= this.out.columns
- || v.description.split(/\r?\n/).length > 1) {
- desc = '\n' + wrap(v.description, { margin: prefix.length, width: this.out.columns });
- }
- }
- }
-
- return prefix + title + color.gray(desc || '');
- }
-
- // shared with autocompleteMultiselect
- paginateOptions(options) {
- if (options.length === 0) {
- return color.red('No matches for this query.');
- }
-
- let { startIndex, endIndex } = entriesToDisplay(this.cursor, options.length, this.optionsPerPage);
- let prefix, styledOptions = [];
-
- for (let i = startIndex; i < endIndex; i++) {
- if (i === startIndex && startIndex > 0) {
- prefix = figures.arrowUp;
- } else if (i === endIndex - 1 && endIndex < options.length) {
- prefix = figures.arrowDown;
- } else {
- prefix = ' ';
- }
- styledOptions.push(this.renderOption(this.cursor, options[i], i, prefix));
- }
-
- return '\n' + styledOptions.join('\n');
- }
-
- // shared with autocomleteMultiselect
- renderOptions(options) {
- if (!this.done) {
- return this.paginateOptions(options);
- }
- return '';
- }
-
- renderDoneOrInstructions() {
- if (this.done) {
- return this.value
- .filter(e => e.selected)
- .map(v => v.title)
- .join(', ');
- }
-
- const output = [color.gray(this.hint), this.renderInstructions()];
-
- if (this.value[this.cursor].disabled) {
- output.push(color.yellow(this.warn));
- }
- return output.join(' ');
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- super.render();
-
- // print prompt
- let prompt = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(false),
- this.renderDoneOrInstructions()
- ].join(' ');
- if (this.showMinError) {
- prompt += color.red(`You must select a minimum of ${this.minSelected} choices.`);
- this.showMinError = false;
- }
- prompt += this.renderOptions(this.value);
-
- this.out.write(this.clear + prompt);
- this.clear = clear(prompt, this.out.columns);
- }
-}
-
-module.exports = MultiselectPrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/number.js b/includes/langcheck/node_modules/prompts/lib/elements/number.js
deleted file mode 100644
index dc3efe9..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/number.js
+++ /dev/null
@@ -1,213 +0,0 @@
-const color = require('kleur');
-const Prompt = require('./prompt');
-const { cursor, erase } = require('sisteransi');
-const { style, figures, clear, lines } = require('../util');
-
-const isNumber = /[0-9]/;
-const isDef = any => any !== undefined;
-const round = (number, precision) => {
- let factor = Math.pow(10, precision);
- return Math.round(number * factor) / factor;
-}
-
-/**
- * NumberPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {String} [opts.style='default'] Render style
- * @param {Number} [opts.initial] Default value
- * @param {Number} [opts.max=+Infinity] Max value
- * @param {Number} [opts.min=-Infinity] Min value
- * @param {Boolean} [opts.float=false] Parse input as floats
- * @param {Number} [opts.round=2] Round floats to x decimals
- * @param {Number} [opts.increment=1] Number to increment by when using arrow-keys
- * @param {Function} [opts.validate] Validate function
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.error] The invalid error label
- */
-class NumberPrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.transform = style.render(opts.style);
- this.msg = opts.message;
- this.initial = isDef(opts.initial) ? opts.initial : '';
- this.float = !!opts.float;
- this.round = opts.round || 2;
- this.inc = opts.increment || 1;
- this.min = isDef(opts.min) ? opts.min : -Infinity;
- this.max = isDef(opts.max) ? opts.max : Infinity;
- this.errorMsg = opts.error || `Please Enter A Valid Value`;
- this.validator = opts.validate || (() => true);
- this.color = `cyan`;
- this.value = ``;
- this.typed = ``;
- this.lastHit = 0;
- this.render();
- }
-
- set value(v) {
- if (!v && v !== 0) {
- this.placeholder = true;
- this.rendered = color.gray(this.transform.render(`${this.initial}`));
- this._value = ``;
- } else {
- this.placeholder = false;
- this.rendered = this.transform.render(`${round(v, this.round)}`);
- this._value = round(v, this.round);
- }
- this.fire();
- }
-
- get value() {
- return this._value;
- }
-
- parse(x) {
- return this.float ? parseFloat(x) : parseInt(x);
- }
-
- valid(c) {
- return c === `-` || c === `.` && this.float || isNumber.test(c)
- }
-
- reset() {
- this.typed = ``;
- this.value = ``;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- let x = this.value;
- this.value = x !== `` ? x : this.initial;
- this.done = this.aborted = true;
- this.error = false;
- this.fire();
- this.render();
- this.out.write(`\n`);
- this.close();
- }
-
- async validate() {
- let valid = await this.validator(this.value);
- if (typeof valid === `string`) {
- this.errorMsg = valid;
- valid = false;
- }
- this.error = !valid;
- }
-
- async submit() {
- await this.validate();
- if (this.error) {
- this.color = `red`;
- this.fire();
- this.render();
- return;
- }
- let x = this.value;
- this.value = x !== `` ? x : this.initial;
- this.done = true;
- this.aborted = false;
- this.error = false;
- this.fire();
- this.render();
- this.out.write(`\n`);
- this.close();
- }
-
- up() {
- this.typed = ``;
- if(this.value === '') {
- this.value = this.min - this.inc;
- }
- if (this.value >= this.max) return this.bell();
- this.value += this.inc;
- this.color = `cyan`;
- this.fire();
- this.render();
- }
-
- down() {
- this.typed = ``;
- if(this.value === '') {
- this.value = this.min + this.inc;
- }
- if (this.value <= this.min) return this.bell();
- this.value -= this.inc;
- this.color = `cyan`;
- this.fire();
- this.render();
- }
-
- delete() {
- let val = this.value.toString();
- if (val.length === 0) return this.bell();
- this.value = this.parse((val = val.slice(0, -1))) || ``;
- if (this.value !== '' && this.value < this.min) {
- this.value = this.min;
- }
- this.color = `cyan`;
- this.fire();
- this.render();
- }
-
- next() {
- this.value = this.initial;
- this.fire();
- this.render();
- }
-
- _(c, key) {
- if (!this.valid(c)) return this.bell();
-
- const now = Date.now();
- if (now - this.lastHit > 1000) this.typed = ``; // 1s elapsed
- this.typed += c;
- this.lastHit = now;
- this.color = `cyan`;
-
- if (c === `.`) return this.fire();
-
- this.value = Math.min(this.parse(this.typed), this.max);
- if (this.value > this.max) this.value = this.max;
- if (this.value < this.min) this.value = this.min;
- this.fire();
- this.render();
- }
-
- render() {
- if (this.closed) return;
- if (!this.firstRender) {
- if (this.outputError)
- this.out.write(cursor.down(lines(this.outputError, this.out.columns) - 1) + clear(this.outputError, this.out.columns));
- this.out.write(clear(this.outputText, this.out.columns));
- }
- super.render();
- this.outputError = '';
-
- // Print prompt
- this.outputText = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(this.done),
- !this.done || (!this.done && !this.placeholder)
- ? color[this.color]().underline(this.rendered) : this.rendered
- ].join(` `);
-
- // Print error
- if (this.error) {
- this.outputError += this.errorMsg.split(`\n`)
- .reduce((a, l, i) => a + `\n${i ? ` ` : figures.pointerSmall} ${color.red().italic(l)}`, ``);
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText + cursor.save + this.outputError + cursor.restore);
- }
-}
-
-module.exports = NumberPrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/prompt.js b/includes/langcheck/node_modules/prompts/lib/elements/prompt.js
deleted file mode 100644
index b793330..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/prompt.js
+++ /dev/null
@@ -1,68 +0,0 @@
-'use strict';
-
-const readline = require('readline');
-const { action } = require('../util');
-const EventEmitter = require('events');
-const { beep, cursor } = require('sisteransi');
-const color = require('kleur');
-
-/**
- * Base prompt skeleton
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-class Prompt extends EventEmitter {
- constructor(opts={}) {
- super();
-
- this.firstRender = true;
- this.in = opts.stdin || process.stdin;
- this.out = opts.stdout || process.stdout;
- this.onRender = (opts.onRender || (() => void 0)).bind(this);
- const rl = readline.createInterface({ input:this.in, escapeCodeTimeout:50 });
- readline.emitKeypressEvents(this.in, rl);
-
- if (this.in.isTTY) this.in.setRawMode(true);
- const isSelect = [ 'SelectPrompt', 'MultiselectPrompt' ].indexOf(this.constructor.name) > -1;
- const keypress = (str, key) => {
- let a = action(key, isSelect);
- if (a === false) {
- this._ && this._(str, key);
- } else if (typeof this[a] === 'function') {
- this[a](key);
- } else {
- this.bell();
- }
- };
-
- this.close = () => {
- this.out.write(cursor.show);
- this.in.removeListener('keypress', keypress);
- if (this.in.isTTY) this.in.setRawMode(false);
- rl.close();
- this.emit(this.aborted ? 'abort' : this.exited ? 'exit' : 'submit', this.value);
- this.closed = true;
- };
-
- this.in.on('keypress', keypress);
- }
-
- fire() {
- this.emit('state', {
- value: this.value,
- aborted: !!this.aborted,
- exited: !!this.exited
- });
- }
-
- bell() {
- this.out.write(beep);
- }
-
- render() {
- this.onRender(color);
- if (this.firstRender) this.firstRender = false;
- }
-}
-
-module.exports = Prompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/select.js b/includes/langcheck/node_modules/prompts/lib/elements/select.js
deleted file mode 100644
index 6d6727f..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/select.js
+++ /dev/null
@@ -1,175 +0,0 @@
-'use strict';
-
-const color = require('kleur');
-const Prompt = require('./prompt');
-const { style, clear, figures, wrap, entriesToDisplay } = require('../util');
-const { cursor } = require('sisteransi');
-
-/**
- * SelectPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Array} opts.choices Array of choice objects
- * @param {String} [opts.hint] Hint to display
- * @param {Number} [opts.initial] Index of default value
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {Number} [opts.optionsPerPage=10] Max options to display at once
- */
-class SelectPrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.msg = opts.message;
- this.hint = opts.hint || '- Use arrow-keys. Return to submit.';
- this.warn = opts.warn || '- This option is disabled';
- this.cursor = opts.initial || 0;
- this.choices = opts.choices.map((ch, idx) => {
- if (typeof ch === 'string')
- ch = {title: ch, value: idx};
- return {
- title: ch && (ch.title || ch.value || ch),
- value: ch && (ch.value === undefined ? idx : ch.value),
- description: ch && ch.description,
- selected: ch && ch.selected,
- disabled: ch && ch.disabled
- };
- });
- this.optionsPerPage = opts.optionsPerPage || 10;
- this.value = (this.choices[this.cursor] || {}).value;
- this.clear = clear('', this.out.columns);
- this.render();
- }
-
- moveCursor(n) {
- this.cursor = n;
- this.value = this.choices[n].value;
- this.fire();
- }
-
- reset() {
- this.moveCursor(0);
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- if (!this.selection.disabled) {
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- } else
- this.bell();
- }
-
- first() {
- this.moveCursor(0);
- this.render();
- }
-
- last() {
- this.moveCursor(this.choices.length - 1);
- this.render();
- }
-
- up() {
- if (this.cursor === 0) {
- this.moveCursor(this.choices.length - 1);
- } else {
- this.moveCursor(this.cursor - 1);
- }
- this.render();
- }
-
- down() {
- if (this.cursor === this.choices.length - 1) {
- this.moveCursor(0);
- } else {
- this.moveCursor(this.cursor + 1);
- }
- this.render();
- }
-
- next() {
- this.moveCursor((this.cursor + 1) % this.choices.length);
- this.render();
- }
-
- _(c, key) {
- if (c === ' ') return this.submit();
- }
-
- get selection() {
- return this.choices[this.cursor];
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
-
- let { startIndex, endIndex } = entriesToDisplay(this.cursor, this.choices.length, this.optionsPerPage);
-
- // Print prompt
- this.outputText = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(false),
- this.done ? this.selection.title : this.selection.disabled
- ? color.yellow(this.warn) : color.gray(this.hint)
- ].join(' ');
-
- // Print choices
- if (!this.done) {
- this.outputText += '\n';
- for (let i = startIndex; i < endIndex; i++) {
- let title, prefix, desc = '', v = this.choices[i];
-
- // Determine whether to display "more choices" indicators
- if (i === startIndex && startIndex > 0) {
- prefix = figures.arrowUp;
- } else if (i === endIndex - 1 && endIndex < this.choices.length) {
- prefix = figures.arrowDown;
- } else {
- prefix = ' ';
- }
-
- if (v.disabled) {
- title = this.cursor === i ? color.gray().underline(v.title) : color.strikethrough().gray(v.title);
- prefix = (this.cursor === i ? color.bold().gray(figures.pointer) + ' ' : ' ') + prefix;
- } else {
- title = this.cursor === i ? color.cyan().underline(v.title) : v.title;
- prefix = (this.cursor === i ? color.cyan(figures.pointer) + ' ' : ' ') + prefix;
- if (v.description && this.cursor === i) {
- desc = ` - ${v.description}`;
- if (prefix.length + title.length + desc.length >= this.out.columns
- || v.description.split(/\r?\n/).length > 1) {
- desc = '\n' + wrap(v.description, { margin: 3, width: this.out.columns });
- }
- }
- }
-
- this.outputText += `${prefix} ${title}${color.gray(desc)}\n`;
- }
- }
-
- this.out.write(this.outputText);
- }
-}
-
-module.exports = SelectPrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/text.js b/includes/langcheck/node_modules/prompts/lib/elements/text.js
deleted file mode 100644
index ee78181..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/text.js
+++ /dev/null
@@ -1,208 +0,0 @@
-const color = require('kleur');
-const Prompt = require('./prompt');
-const { erase, cursor } = require('sisteransi');
-const { style, clear, lines, figures } = require('../util');
-
-/**
- * TextPrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {String} [opts.style='default'] Render style
- * @param {String} [opts.initial] Default value
- * @param {Function} [opts.validate] Validate function
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- * @param {String} [opts.error] The invalid error label
- */
-class TextPrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.transform = style.render(opts.style);
- this.scale = this.transform.scale;
- this.msg = opts.message;
- this.initial = opts.initial || ``;
- this.validator = opts.validate || (() => true);
- this.value = ``;
- this.errorMsg = opts.error || `Please Enter A Valid Value`;
- this.cursor = Number(!!this.initial);
- this.cursorOffset = 0;
- this.clear = clear(``, this.out.columns);
- this.render();
- }
-
- set value(v) {
- if (!v && this.initial) {
- this.placeholder = true;
- this.rendered = color.gray(this.transform.render(this.initial));
- } else {
- this.placeholder = false;
- this.rendered = this.transform.render(v);
- }
- this._value = v;
- this.fire();
- }
-
- get value() {
- return this._value;
- }
-
- reset() {
- this.value = ``;
- this.cursor = Number(!!this.initial);
- this.cursorOffset = 0;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.value = this.value || this.initial;
- this.done = this.aborted = true;
- this.error = false;
- this.red = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- async validate() {
- let valid = await this.validator(this.value);
- if (typeof valid === `string`) {
- this.errorMsg = valid;
- valid = false;
- }
- this.error = !valid;
- }
-
- async submit() {
- this.value = this.value || this.initial;
- this.cursorOffset = 0;
- this.cursor = this.rendered.length;
- await this.validate();
- if (this.error) {
- this.red = true;
- this.fire();
- this.render();
- return;
- }
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- next() {
- if (!this.placeholder) return this.bell();
- this.value = this.initial;
- this.cursor = this.rendered.length;
- this.fire();
- this.render();
- }
-
- moveCursor(n) {
- if (this.placeholder) return;
- this.cursor = this.cursor+n;
- this.cursorOffset += n;
- }
-
- _(c, key) {
- let s1 = this.value.slice(0, this.cursor);
- let s2 = this.value.slice(this.cursor);
- this.value = `${s1}${c}${s2}`;
- this.red = false;
- this.cursor = this.placeholder ? 0 : s1.length+1;
- this.render();
- }
-
- delete() {
- if (this.isCursorAtStart()) return this.bell();
- let s1 = this.value.slice(0, this.cursor-1);
- let s2 = this.value.slice(this.cursor);
- this.value = `${s1}${s2}`;
- this.red = false;
- if (this.isCursorAtStart()) {
- this.cursorOffset = 0
- } else {
- this.cursorOffset++;
- this.moveCursor(-1);
- }
- this.render();
- }
-
- deleteForward() {
- if(this.cursor*this.scale >= this.rendered.length || this.placeholder) return this.bell();
- let s1 = this.value.slice(0, this.cursor);
- let s2 = this.value.slice(this.cursor+1);
- this.value = `${s1}${s2}`;
- this.red = false;
- if (this.isCursorAtEnd()) {
- this.cursorOffset = 0;
- } else {
- this.cursorOffset++;
- }
- this.render();
- }
-
- first() {
- this.cursor = 0;
- this.render();
- }
-
- last() {
- this.cursor = this.value.length;
- this.render();
- }
-
- left() {
- if (this.cursor <= 0 || this.placeholder) return this.bell();
- this.moveCursor(-1);
- this.render();
- }
-
- right() {
- if (this.cursor*this.scale >= this.rendered.length || this.placeholder) return this.bell();
- this.moveCursor(1);
- this.render();
- }
-
- isCursorAtStart() {
- return this.cursor === 0 || (this.placeholder && this.cursor === 1);
- }
-
- isCursorAtEnd() {
- return this.cursor === this.rendered.length || (this.placeholder && this.cursor === this.rendered.length + 1)
- }
-
- render() {
- if (this.closed) return;
- if (!this.firstRender) {
- if (this.outputError)
- this.out.write(cursor.down(lines(this.outputError, this.out.columns) - 1) + clear(this.outputError, this.out.columns));
- this.out.write(clear(this.outputText, this.out.columns));
- }
- super.render();
- this.outputError = '';
-
- this.outputText = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(this.done),
- this.red ? color.red(this.rendered) : this.rendered
- ].join(` `);
-
- if (this.error) {
- this.outputError += this.errorMsg.split(`\n`)
- .reduce((a, l, i) => a + `\n${i ? ' ' : figures.pointerSmall} ${color.red().italic(l)}`, ``);
- }
-
- this.out.write(erase.line + cursor.to(0) + this.outputText + cursor.save + this.outputError + cursor.restore + cursor.move(this.cursorOffset, 0));
- }
-}
-
-module.exports = TextPrompt; \ No newline at end of file
diff --git a/includes/langcheck/node_modules/prompts/lib/elements/toggle.js b/includes/langcheck/node_modules/prompts/lib/elements/toggle.js
deleted file mode 100644
index bad612c..0000000
--- a/includes/langcheck/node_modules/prompts/lib/elements/toggle.js
+++ /dev/null
@@ -1,118 +0,0 @@
-const color = require('kleur');
-const Prompt = require('./prompt');
-const { style, clear } = require('../util');
-const { cursor, erase } = require('sisteransi');
-
-/**
- * TogglePrompt Base Element
- * @param {Object} opts Options
- * @param {String} opts.message Message
- * @param {Boolean} [opts.initial=false] Default value
- * @param {String} [opts.active='no'] Active label
- * @param {String} [opts.inactive='off'] Inactive label
- * @param {Stream} [opts.stdin] The Readable stream to listen to
- * @param {Stream} [opts.stdout] The Writable stream to write readline data to
- */
-class TogglePrompt extends Prompt {
- constructor(opts={}) {
- super(opts);
- this.msg = opts.message;
- this.value = !!opts.initial;
- this.active = opts.active || 'on';
- this.inactive = opts.inactive || 'off';
- this.initialValue = this.value;
- this.render();
- }
-
- reset() {
- this.value = this.initialValue;
- this.fire();
- this.render();
- }
-
- exit() {
- this.abort();
- }
-
- abort() {
- this.done = this.aborted = true;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- submit() {
- this.done = true;
- this.aborted = false;
- this.fire();
- this.render();
- this.out.write('\n');
- this.close();
- }
-
- deactivate() {
- if (this.value === false) return this.bell();
- this.value = false;
- this.render();
- }
-
- activate() {
- if (this.value === true) return this.bell();
- this.value = true;
- this.render();
- }
-
- delete() {
- this.deactivate();
- }
- left() {
- this.deactivate();
- }
- right() {
- this.activate();
- }
- down() {
- this.deactivate();
- }
- up() {
- this.activate();
- }
-
- next() {
- this.value = !this.value;
- this.fire();
- this.render();
- }
-
- _(c, key) {
- if (c === ' ') {
- this.value = !this.value;
- } else if (c === '1') {
- this.value = true;
- } else if (c === '0') {
- this.value = false;
- } else return this.bell();
- this.render();
- }
-
- render() {
- if (this.closed) return;
- if (this.firstRender) this.out.write(cursor.hide);
- else this.out.write(clear(this.outputText, this.out.columns));
- super.render();
-
- this.outputText = [
- style.symbol(this.done, this.aborted),
- color.bold(this.msg),
- style.delimiter(this.done),
- this.value ? this.inactive : color.cyan().underline(this.inactive),
- color.gray('/'),
- this.value ? color.cyan().underline(this.active) : this.active
- ].join(' ');
-
- this.out.write(erase.line + cursor.to(0) + this.outputText);
- }
-}
-
-module.exports = TogglePrompt;
diff --git a/includes/langcheck/node_modules/prompts/lib/index.js b/includes/langcheck/node_modules/prompts/lib/index.js
deleted file mode 100644
index a5374d5..0000000
--- a/includes/langcheck/node_modules/prompts/lib/index.js
+++ /dev/null
@@ -1,98 +0,0 @@
-'use strict';
-
-const prompts = require('./prompts');
-
-const passOn = ['suggest', 'format', 'onState', 'validate', 'onRender', 'type'];
-const noop = () => {};
-
-/**
- * Prompt for a series of questions
- * @param {Array|Object} questions Single question object or Array of question objects
- * @param {Function} [onSubmit] Callback function called on prompt submit
- * @param {Function} [onCancel] Callback function called on cancel/abort
- * @returns {Object} Object with values from user input
- */
-async function prompt(questions=[], { onSubmit=noop, onCancel=noop }={}) {
- const answers = {};
- const override = prompt._override || {};
- questions = [].concat(questions);
- let answer, question, quit, name, type, lastPrompt;
-
- const getFormattedAnswer = async (question, answer, skipValidation = false) => {
- if (!skipValidation && question.validate && question.validate(answer) !== true) {
- return;
- }
- return question.format ? await question.format(answer, answers) : answer
- };
-
- for (question of questions) {
- ({ name, type } = question);
-
- // evaluate type first and skip if type is a falsy value
- if (typeof type === 'function') {
- type = await type(answer, { ...answers }, question)
- question['type'] = type
- }
- if (!type) continue;
-
- // if property is a function, invoke it unless it's a special function
- for (let key in question) {
- if (passOn.includes(key)) continue;
- let value = question[key];
- question[key] = typeof value === 'function' ? await value(answer, { ...answers }, lastPrompt) : value;
- }
-
- lastPrompt = question;
-
- if (typeof question.message !== 'string') {
- throw new Error('prompt message is required');
- }
-
- // update vars in case they changed
- ({ name, type } = question);
-
- if (prompts[type] === void 0) {
- throw new Error(`prompt type (${type}) is not defined`);
- }
-
- if (override[question.name] !== undefined) {
- answer = await getFormattedAnswer(question, override[question.name]);
- if (answer !== undefined) {
- answers[name] = answer;
- continue;
- }
- }
-
- try {
- // Get the injected answer if there is one or prompt the user
- answer = prompt._injected ? getInjectedAnswer(prompt._injected, question.initial) : await prompts[type](question);
- answers[name] = answer = await getFormattedAnswer(question, answer, true);
- quit = await onSubmit(question, answer, answers);
- } catch (err) {
- quit = !(await onCancel(question, answers));
- }
-
- if (quit) return answers;
- }
-
- return answers;
-}
-
-function getInjectedAnswer(injected, deafultValue) {
- const answer = injected.shift();
- if (answer instanceof Error) {
- throw answer;
- }
-
- return (answer === undefined) ? deafultValue : answer;
-}
-
-function inject(answers) {
- prompt._injected = (prompt._injected || []).concat(answers);
-}
-
-function override(answers) {
- prompt._override = Object.assign({}, answers);
-}
-
-module.exports = Object.assign(prompt, { prompt, prompts, inject, override });
diff --git a/includes/langcheck/node_modules/prompts/lib/prompts.js b/includes/langcheck/node_modules/prompts/lib/prompts.js
deleted file mode 100644
index 9f62556..0000000
--- a/includes/langcheck/node_modules/prompts/lib/prompts.js
+++ /dev/null
@@ -1,206 +0,0 @@
-'use strict';
-const $ = exports;
-const el = require('./elements');
-const noop = v => v;
-
-function toPrompt(type, args, opts={}) {
- return new Promise((res, rej) => {
- const p = new el[type](args);
- const onAbort = opts.onAbort || noop;
- const onSubmit = opts.onSubmit || noop;
- const onExit = opts.onExit || noop;
- p.on('state', args.onState || noop);
- p.on('submit', x => res(onSubmit(x)));
- p.on('exit', x => res(onExit(x)));
- p.on('abort', x => rej(onAbort(x)));
- });
-}
-
-/**
- * Text prompt
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {function} [args.onState] On state change callback
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.text = args => toPrompt('TextPrompt', args);
-
-/**
- * Password prompt with masked input
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {function} [args.onState] On state change callback
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.password = args => {
- args.style = 'password';
- return $.text(args);
-};
-
-/**
- * Prompt where input is invisible, like sudo
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {function} [args.onState] On state change callback
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.invisible = args => {
- args.style = 'invisible';
- return $.text(args);
-};
-
-/**
- * Number prompt
- * @param {string} args.message Prompt message to display
- * @param {number} args.initial Default number value
- * @param {function} [args.onState] On state change callback
- * @param {number} [args.max] Max value
- * @param {number} [args.min] Min value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {Boolean} [opts.float=false] Parse input as floats
- * @param {Number} [opts.round=2] Round floats to x decimals
- * @param {Number} [opts.increment=1] Number to increment by when using arrow-keys
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.number = args => toPrompt('NumberPrompt', args);
-
-/**
- * Date prompt
- * @param {string} args.message Prompt message to display
- * @param {number} args.initial Default number value
- * @param {function} [args.onState] On state change callback
- * @param {number} [args.max] Max value
- * @param {number} [args.min] Min value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {Boolean} [opts.float=false] Parse input as floats
- * @param {Number} [opts.round=2] Round floats to x decimals
- * @param {Number} [opts.increment=1] Number to increment by when using arrow-keys
- * @param {function} [args.validate] Function to validate user input
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.date = args => toPrompt('DatePrompt', args);
-
-/**
- * Classic yes/no prompt
- * @param {string} args.message Prompt message to display
- * @param {boolean} [args.initial=false] Default value
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.confirm = args => toPrompt('ConfirmPrompt', args);
-
-/**
- * List prompt, split intput string by `seperator`
- * @param {string} args.message Prompt message to display
- * @param {string} [args.initial] Default string value
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {string} [args.separator] String separator
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input, in form of an `Array`
- */
-$.list = args => {
- const sep = args.separator || ',';
- return toPrompt('TextPrompt', args, {
- onSubmit: str => str.split(sep).map(s => s.trim())
- });
-};
-
-/**
- * Toggle/switch prompt
- * @param {string} args.message Prompt message to display
- * @param {boolean} [args.initial=false] Default value
- * @param {string} [args.active="on"] Text for `active` state
- * @param {string} [args.inactive="off"] Text for `inactive` state
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.toggle = args => toPrompt('TogglePrompt', args);
-
-/**
- * Interactive select prompt
- * @param {string} args.message Prompt message to display
- * @param {Array} args.choices Array of choices objects `[{ title, value }, ...]`
- * @param {number} [args.initial] Index of default value
- * @param {String} [args.hint] Hint to display
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.select = args => toPrompt('SelectPrompt', args);
-
-/**
- * Interactive multi-select / autocompleteMultiselect prompt
- * @param {string} args.message Prompt message to display
- * @param {Array} args.choices Array of choices objects `[{ title, value, [selected] }, ...]`
- * @param {number} [args.max] Max select
- * @param {string} [args.hint] Hint to display user
- * @param {Number} [args.cursor=0] Cursor start position
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.multiselect = args => {
- args.choices = [].concat(args.choices || []);
- const toSelected = items => items.filter(item => item.selected).map(item => item.value);
- return toPrompt('MultiselectPrompt', args, {
- onAbort: toSelected,
- onSubmit: toSelected
- });
-};
-
-$.autocompleteMultiselect = args => {
- args.choices = [].concat(args.choices || []);
- const toSelected = items => items.filter(item => item.selected).map(item => item.value);
- return toPrompt('AutocompleteMultiselectPrompt', args, {
- onAbort: toSelected,
- onSubmit: toSelected
- });
-};
-
-const byTitle = (input, choices) => Promise.resolve(
- choices.filter(item => item.title.slice(0, input.length).toLowerCase() === input.toLowerCase())
-);
-
-/**
- * Interactive auto-complete prompt
- * @param {string} args.message Prompt message to display
- * @param {Array} args.choices Array of auto-complete choices objects `[{ title, value }, ...]`
- * @param {Function} [args.suggest] Function to filter results based on user input. Defaults to sort by `title`
- * @param {number} [args.limit=10] Max number of results to show
- * @param {string} [args.style="default"] Render style ('default', 'password', 'invisible')
- * @param {String} [args.initial] Index of the default value
- * @param {boolean} [opts.clearFirst] The first ESCAPE keypress will clear the input
- * @param {String} [args.fallback] Fallback message - defaults to initial value
- * @param {function} [args.onState] On state change callback
- * @param {Stream} [args.stdin] The Readable stream to listen to
- * @param {Stream} [args.stdout] The Writable stream to write readline data to
- * @returns {Promise} Promise with user input
- */
-$.autocomplete = args => {
- args.suggest = args.suggest || byTitle;
- args.choices = [].concat(args.choices || []);
- return toPrompt('AutocompletePrompt', args);
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/action.js b/includes/langcheck/node_modules/prompts/lib/util/action.js
deleted file mode 100644
index fefbd94..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/action.js
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-
-module.exports = (key, isSelect) => {
- if (key.meta && key.name !== 'escape') return;
-
- if (key.ctrl) {
- if (key.name === 'a') return 'first';
- if (key.name === 'c') return 'abort';
- if (key.name === 'd') return 'abort';
- if (key.name === 'e') return 'last';
- if (key.name === 'g') return 'reset';
- }
-
- if (isSelect) {
- if (key.name === 'j') return 'down';
- if (key.name === 'k') return 'up';
- }
-
- if (key.name === 'return') return 'submit';
- if (key.name === 'enter') return 'submit'; // ctrl + J
- if (key.name === 'backspace') return 'delete';
- if (key.name === 'delete') return 'deleteForward';
- if (key.name === 'abort') return 'abort';
- if (key.name === 'escape') return 'exit';
- if (key.name === 'tab') return 'next';
- if (key.name === 'pagedown') return 'nextPage';
- if (key.name === 'pageup') return 'prevPage';
- // TODO create home() in prompt types (e.g. TextPrompt)
- if (key.name === 'home') return 'home';
- // TODO create end() in prompt types (e.g. TextPrompt)
- if (key.name === 'end') return 'end';
-
- if (key.name === 'up') return 'up';
- if (key.name === 'down') return 'down';
- if (key.name === 'right') return 'right';
- if (key.name === 'left') return 'left';
-
- return false;
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/clear.js b/includes/langcheck/node_modules/prompts/lib/util/clear.js
deleted file mode 100644
index e4772d5..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/clear.js
+++ /dev/null
@@ -1,22 +0,0 @@
-'use strict';
-
-const strip = require('./strip');
-const { erase, cursor } = require('sisteransi');
-
-const width = str => [...strip(str)].length;
-
-/**
- * @param {string} prompt
- * @param {number} perLine
- */
-module.exports = function(prompt, perLine) {
- if (!perLine) return erase.line + cursor.to(0);
-
- let rows = 0;
- const lines = prompt.split(/\r?\n/);
- for (let line of lines) {
- rows += 1 + Math.floor(Math.max(width(line) - 1, 0) / perLine);
- }
-
- return erase.lines(rows);
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/entriesToDisplay.js b/includes/langcheck/node_modules/prompts/lib/util/entriesToDisplay.js
deleted file mode 100644
index 5f6efbb..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/entriesToDisplay.js
+++ /dev/null
@@ -1,21 +0,0 @@
-'use strict';
-
-/**
- * Determine what entries should be displayed on the screen, based on the
- * currently selected index and the maximum visible. Used in list-based
- * prompts like `select` and `multiselect`.
- *
- * @param {number} cursor the currently selected entry
- * @param {number} total the total entries available to display
- * @param {number} [maxVisible] the number of entries that can be displayed
- */
-module.exports = (cursor, total, maxVisible) => {
- maxVisible = maxVisible || total;
-
- let startIndex = Math.min(total- maxVisible, cursor - Math.floor(maxVisible / 2));
- if (startIndex < 0) startIndex = 0;
-
- let endIndex = Math.min(startIndex + maxVisible, total);
-
- return { startIndex, endIndex };
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/figures.js b/includes/langcheck/node_modules/prompts/lib/util/figures.js
deleted file mode 100644
index cd31b88..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/figures.js
+++ /dev/null
@@ -1,33 +0,0 @@
-'use strict';
-
- const main = {
- arrowUp: '↑',
- arrowDown: '↓',
- arrowLeft: '←',
- arrowRight: '→',
- radioOn: '◉',
- radioOff: '◯',
- tick: '✔',
- cross: '✖',
- ellipsis: '…',
- pointerSmall: '›',
- line: '─',
- pointer: '❯'
-};
-const win = {
- arrowUp: main.arrowUp,
- arrowDown: main.arrowDown,
- arrowLeft: main.arrowLeft,
- arrowRight: main.arrowRight,
- radioOn: '(*)',
- radioOff: '( )',
- tick: '√',
- cross: '×',
- ellipsis: '...',
- pointerSmall: '»',
- line: '─',
- pointer: '>'
-};
-const figures = process.platform === 'win32' ? win : main;
-
- module.exports = figures;
diff --git a/includes/langcheck/node_modules/prompts/lib/util/index.js b/includes/langcheck/node_modules/prompts/lib/util/index.js
deleted file mode 100644
index f815986..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/index.js
+++ /dev/null
@@ -1,12 +0,0 @@
-'use strict';
-
-module.exports = {
- action: require('./action'),
- clear: require('./clear'),
- style: require('./style'),
- strip: require('./strip'),
- figures: require('./figures'),
- lines: require('./lines'),
- wrap: require('./wrap'),
- entriesToDisplay: require('./entriesToDisplay')
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/lines.js b/includes/langcheck/node_modules/prompts/lib/util/lines.js
deleted file mode 100644
index de30419..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/lines.js
+++ /dev/null
@@ -1,15 +0,0 @@
-'use strict';
-
-const strip = require('./strip');
-
-/**
- * @param {string} msg
- * @param {number} perLine
- */
-module.exports = function (msg, perLine) {
- let lines = String(strip(msg) || '').split(/\r?\n/);
-
- if (!perLine) return lines.length;
- return lines.map(l => Math.ceil(l.length / perLine))
- .reduce((a, b) => a + b);
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/strip.js b/includes/langcheck/node_modules/prompts/lib/util/strip.js
deleted file mode 100644
index 8ebf4cb..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/strip.js
+++ /dev/null
@@ -1,11 +0,0 @@
-'use strict';
-
-module.exports = str => {
- const pattern = [
- '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
- '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))'
- ].join('|');
-
- const RGX = new RegExp(pattern, 'g');
- return typeof str === 'string' ? str.replace(RGX, '') : str;
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/style.js b/includes/langcheck/node_modules/prompts/lib/util/style.js
deleted file mode 100644
index 1851cc7..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/style.js
+++ /dev/null
@@ -1,40 +0,0 @@
-'use strict';
-
-const c = require('kleur');
-const figures = require('./figures');
-
-// rendering user input.
-const styles = Object.freeze({
- password: { scale: 1, render: input => '*'.repeat(input.length) },
- emoji: { scale: 2, render: input => '😃'.repeat(input.length) },
- invisible: { scale: 0, render: input => '' },
- default: { scale: 1, render: input => `${input}` }
-});
-const render = type => styles[type] || styles.default;
-
-// icon to signalize a prompt.
-const symbols = Object.freeze({
- aborted: c.red(figures.cross),
- done: c.green(figures.tick),
- exited: c.yellow(figures.cross),
- default: c.cyan('?')
-});
-
-const symbol = (done, aborted, exited) =>
- aborted ? symbols.aborted : exited ? symbols.exited : done ? symbols.done : symbols.default;
-
-// between the question and the user's input.
-const delimiter = completing =>
- c.gray(completing ? figures.ellipsis : figures.pointerSmall);
-
-const item = (expandable, expanded) =>
- c.gray(expandable ? (expanded ? figures.pointerSmall : '+') : figures.line);
-
-module.exports = {
- styles,
- render,
- symbols,
- symbol,
- delimiter,
- item
-};
diff --git a/includes/langcheck/node_modules/prompts/lib/util/wrap.js b/includes/langcheck/node_modules/prompts/lib/util/wrap.js
deleted file mode 100644
index 43b5399..0000000
--- a/includes/langcheck/node_modules/prompts/lib/util/wrap.js
+++ /dev/null
@@ -1,27 +0,0 @@
-'use strict';
-
-/**
- * @param {string} msg The message to wrap
- * @param {object} opts
- * @param {number|string} [opts.margin] Left margin
- * @param {number} opts.width Maximum characters per line including the margin
- */
-module.exports = (msg, opts = {}) => {
- const tab = Number.isSafeInteger(parseInt(opts.margin))
- ? new Array(parseInt(opts.margin)).fill(' ').join('')
- : (opts.margin || '');
-
- const width = opts.width;
-
- return (msg || '').split(/\r?\n/g)
- .map(line => line
- .split(/\s+/g)
- .reduce((arr, w) => {
- if (w.length + tab.length >= width || arr[arr.length - 1].length + w.length + 1 < width)
- arr[arr.length - 1] += ` ${w}`;
- else arr.push(`${tab}${w}`);
- return arr;
- }, [ tab ])
- .join('\n'))
- .join('\n');
-};
diff --git a/includes/langcheck/node_modules/prompts/license b/includes/langcheck/node_modules/prompts/license
deleted file mode 100644
index 13dc83c..0000000
--- a/includes/langcheck/node_modules/prompts/license
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2018 Terkel Gjervig Nielsen
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/includes/langcheck/node_modules/prompts/package.json b/includes/langcheck/node_modules/prompts/package.json
deleted file mode 100644
index f7ba84b..0000000
--- a/includes/langcheck/node_modules/prompts/package.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "name": "prompts",
- "version": "2.4.2",
- "description": "Lightweight, beautiful and user-friendly prompts",
- "license": "MIT",
- "repository": "terkelg/prompts",
- "main": "index.js",
- "author": {
- "name": "Terkel Gjervig",
- "email": "terkel@terkel.com",
- "url": "https://terkel.com"
- },
- "files": [
- "lib",
- "dist",
- "index.js"
- ],
- "scripts": {
- "start": "node lib/index.js",
- "build": "babel lib -d dist",
- "prepublishOnly": "npm run build",
- "test": "tape test/*.js | tap-spec"
- },
- "keywords": [
- "ui",
- "prompts",
- "cli",
- "prompt",
- "interface",
- "command-line",
- "input",
- "command",
- "stdin",
- "menu",
- "ask",
- "interact"
- ],
- "dependencies": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- },
- "devDependencies": {
- "@babel/cli": "^7.12.1",
- "@babel/core": "^7.12.3",
- "@babel/plugin-proposal-object-rest-spread": "^7.12.1",
- "@babel/preset-env": "^7.12.1",
- "tap-spec": "^2.2.2",
- "tape": "^4.13.3"
- },
- "engines": {
- "node": ">= 6"
- }
-}
diff --git a/includes/langcheck/node_modules/prompts/readme.md b/includes/langcheck/node_modules/prompts/readme.md
deleted file mode 100755
index 4a8b065..0000000
--- a/includes/langcheck/node_modules/prompts/readme.md
+++ /dev/null
@@ -1,882 +0,0 @@
-<p align="center">
- <img src="https://github.com/terkelg/prompts/raw/master/prompts.png" alt="Prompts" width="500" />
-</p>
-
-<h1 align="center">❯ Prompts</h1>
-
-<p align="center">
- <a href="https://npmjs.org/package/prompts">
- <img src="https://img.shields.io/npm/v/prompts.svg" alt="version" />
- </a>
- <a href="https://travis-ci.org/terkelg/prompts">
- <img src="https://img.shields.io/travis/terkelg/prompts.svg" alt="travis" />
- </a>
- <a href="https://npmjs.org/package/prompts">
- <img src="https://img.shields.io/npm/dm/prompts.svg" alt="downloads" />
- </a>
- <!---
- <a href="https://packagephobia.now.sh/result?p=prompts">
- <img src="https://packagephobia.now.sh/badge?p=prompts" alt="install size" />
- </a>
- --->
-</p>
-
-<p align="center">
- <b>Lightweight, beautiful and user-friendly interactive prompts</b><br />
- <sub>>_ Easy to use CLI prompts to enquire users for information▌</sub>
-</p>
-
-<br />
-
-* **Simple**: prompts has [no big dependencies](http://npm.anvaka.com/#/view/2d/prompts) nor is it broken into a [dozen](http://npm.anvaka.com/#/view/2d/inquirer) tiny modules that only work well together.
-* **User friendly**: prompt uses layout and colors to create beautiful cli interfaces.
-* **Promised**: uses promises and `async`/`await`. No callback hell.
-* **Flexible**: all prompts are independent and can be used on their own.
-* **Testable**: provides a way to submit answers programmatically.
-* **Unified**: consistent experience across all [prompts](#-types).
-
-
-![split](https://github.com/terkelg/prompts/raw/master/media/split.png)
-
-
-## ❯ Install
-
-```
-$ npm install --save prompts
-```
-
-> This package supports Node 6 and above
-
-![split](https://github.com/terkelg/prompts/raw/master/media/split.png)
-
-## ❯ Usage
-
-<img src="https://github.com/terkelg/prompts/raw/master/media/example.gif" alt="example prompt" width="499" height="103" />
-
-```js
-const prompts = require('prompts');
-
-(async () => {
- const response = await prompts({
- type: 'number',
- name: 'value',
- message: 'How old are you?',
- validate: value => value < 18 ? `Nightclub is 18+ only` : true
- });
-
- console.log(response); // => { value: 24 }
-})();
-```
-
-> See [`example.js`](https://github.com/terkelg/prompts/blob/master/example.js) for more options.
-
-
-![split](https://github.com/terkelg/prompts/raw/master/media/split.png)
-
-
-## ❯ Examples
-
-### Single Prompt
-
-Prompt with a single prompt object. Returns an object with the response.
-
-```js
-const prompts = require('prompts');
-
-(async () => {
- const response = await prompts({
- type: 'text',
- name: 'meaning',
- message: 'What is the meaning of life?'
- });
-
- console.log(response.meaning);
-})();
-```
-
-### Prompt Chain
-
-Prompt with a list of prompt objects. Returns an object with the responses.
-Make sure to give each prompt a unique `name` property to prevent overwriting values.
-
-```js
-const prompts = require('prompts');
-
-const questions = [
- {
- type: 'text',
- name: 'username',
- message: 'What is your GitHub username?'
- },
- {
- type: 'number',
- name: 'age',
- message: 'How old are you?'
- },
- {
- type: 'text',
- name: 'about',
- message: 'Tell something about yourself',
- initial: 'Why should I?'
- }
-];
-
-(async () => {
- const response = await prompts(questions);
-
- // => response => { username, age, about }
-})();
-```
-
-### Dynamic Prompts
-
-Prompt properties can be functions too.
-Prompt Objects with `type` set to `falsy` values are skipped.
-
-```js
-const prompts = require('prompts');
-
-const questions = [
- {
- type: 'text',
- name: 'dish',
- message: 'Do you like pizza?'
- },
- {
- type: prev => prev == 'pizza' ? 'text' : null,
- name: 'topping',
- message: 'Name a topping'
- }
-];
-
-(async () => {
- const response = await prompts(questions);
-})();
-```
-
-
-![split](https://github.com/terkelg/prompts/raw/master/media/split.png)
-
-
-## ❯ API
-
-### prompts(prompts, options)
-
-Type: `Function`<br>
-Returns: `Object`
-
-Prompter function which takes your [prompt objects](#-prompt-objects) and returns an object with responses.
-
-
-#### prompts
-
-Type: `Array|Object`<br>
-
-Array of [prompt objects](#-prompt-objects).
- These are the questions the user will be prompted. You can see the list of supported [prompt types here](#-types).
-
-Prompts can be submitted (<kbd>return</kbd>, <kbd>enter</kbd>) or canceled (<kbd>esc</kbd>, <kbd>abort</kbd>, <kbd>ctrl</kbd>+<kbd>c</kbd>, <kbd>ctrl</kbd>+<kbd>d</kbd>). No property is being defined on the returned response object when a prompt is canceled.
-
-#### options.onSubmit
-
-Type: `Function`<br>
-Default: `() => {}`
-
-Callback that's invoked after each prompt submission.
-Its signature is `(prompt, answer, answers)` where `prompt` is the current prompt object, `answer` the user answer to the current question and `answers` the user answers so far. Async functions are supported.
-
-Return `true` to quit the prompt chain and return all collected responses so far, otherwise continue to iterate prompt objects.
-
-**Example:**
-```js
-(async () => {
- const questions = [{ ... }];
- const onSubmit = (prompt, answer) => console.log(`Thanks I got ${answer} from ${prompt.name}`);
- const response = await prompts(questions, { onSubmit });
-})();
-```
-
-#### options.onCancel
-
-Type: `Function`<br>
-Default: `() => {}`
-
-Callback that's invoked when the user cancels/exits the prompt.
-Its signature is `(prompt, answers)` where `prompt` is the current prompt object and `answers` the user answers so far. Async functions are supported.
-
-Return `true` to continue and prevent the prompt loop from aborting.
-On cancel responses collected so far are returned.
-
-**Example:**
-```js
-(async () => {
- const questions = [{ ... }];
- const onCancel = prompt => {
- console.log('Never stop prompting!');
- return true;
- }
- const response = await prompts(questions, { onCancel });
-})();
-```
-
-### override
-
-Type: `Function`
-
-Preanswer questions by passing an object with answers to `prompts.override`.
-Powerful when combined with arguments of process.
-
-**Example**
-```js
-const prompts = require('prompts');
-prompts.override(require('yargs').argv);
-
-(async () => {
- const response = await prompts([
- {
- type: 'text',
- name: 'twitter',
- message: `What's your twitter handle?`
- },
- {
- type: 'multiselect',
- name: 'color',
- message: 'Pick colors',
- choices: [
- { title: 'Red', value: '#ff0000' },
- { title: 'Green', value: '#00ff00' },
- { title: 'Blue', value: '#0000ff' }
- ],
- }
- ]);
-
- console.log(response);
-})();
-```
-
-### inject(values)
-
-Type: `Function`<br>
-
-Programmatically inject responses. This enables you to prepare the responses ahead of time.
-If any injected value is found the prompt is immediately resolved with the injected value.
-This feature is intended for testing only.
-
-#### values
-
-Type: `Array`
-
-Array with values to inject. Resolved values are removed from the internal inject array.
-Each value can be an array of values in order to provide answers for a question asked multiple times.
-If a value is an instance of `Error` it will simulate the user cancelling/exiting the prompt.
-
-**Example:**
-```js
-const prompts = require('prompts');
-
-prompts.inject([ '@terkelg', ['#ff0000', '#0000ff'] ]);
-
-(async () => {
- const response = await prompts([
- {
- type: 'text',
- name: 'twitter',
- message: `What's your twitter handle?`
- },
- {
- type: 'multiselect',
- name: 'color',
- message: 'Pick colors',
- choices: [
- { title: 'Red', value: '#ff0000' },
- { title: 'Green', value: '#00ff00' },
- { title: 'Blue', value: '#0000ff' }
- ],
- }
- ]);
-
- // => { twitter: 'terkelg', color: [ '#ff0000', '#0000ff' ] }
-})();
-```
-
-![split](https://github.com/terkelg/prompts/raw/master/media/split.png)
-
-
-## ❯ Prompt Objects
-
-Prompts Objects are JavaScript objects that define the "questions" and the [type of prompt](#-types).
-Almost all prompt objects have the following properties:
-
-```js
-{
- type: String | Function,
- name: String | Function,
- message: String | Function,
- initial: String | Function | Async Function
- format: Function | Async Function,
- onRender: Function
- onState: Function
- stdin: Readable
- stdout: Writeable
-}
-```
-
-Each property be of type `function` and will be invoked right before prompting the user.
-
-The function signature is `(prev, values, prompt)`, where `prev` is the value from the previous prompt,
-`values` is the response object with all values collected so far and `prompt` is the previous prompt object.
-
-**Function example:**
-```js
-{
- type: prev => prev > 3 ? 'confirm' : null,
- name: 'confirm',
- message: (prev, values) => `Please confirm that you eat ${values.dish} times ${prev} a day?`
-}
-```
-
-The above prompt will be skipped if the value of the previous prompt is less than 3.
-
-### type
-
-Type: `String|Function`
-
-Defines the type of prompt to display. See the list of [prompt types](#-types) for valid values.
-
-If `type` is a falsy value the prompter will skip that question.
-```js
-{
- type: null,
- name: 'forgetme',
- message: `I'll never be shown anyway`,
-}
-```
-
-### name
-
-Type: `String|Function`
-
-The response will be saved under this key/property in the returned response object.
-In case you have multiple prompts with the same name only the latest response will be stored.
-
-> Make sure to give prompts unique names if you don't want to overwrite previous values.
-
-### message
-
-Type: `String|Function`
-
-The message to be displayed to the user.
-
-### initial
-
-Type: `String|Function`
-
-Optional default prompt value. Async functions are supported too.
-
-### format
-
-Type: `Function`
-
-Receive the user input and return the formatted value to be used inside the program.
-The value returned will be added to the response object.
-
-The function signature is `(val, values)`, where `val` is the value from the current prompt and
-`values` is the current response object in case you need to format based on previous responses.
-
-**Example:**
-```js
-{
- type: 'number',
- name: 'price',
- message: 'Enter price',
- format: val => Intl.NumberFormat(undefined, { style: 'currency', currency: 'USD' }).format(val);
-}
-```
-
-### onRender
-
-Type: `Function`
-
-Callback for when the prompt is rendered.
-The function receives [kleur](https://github.com/lukeed/kleur) as its first argument and `this` refers to the current prompt.
-
-**Example:**
-```js
-{
- type: 'number',
- message: 'This message will be overridden',
- onRender(kleur) {
- this.msg = kleur.cyan('Enter a number');
- }
-}
-```
-
-### onState
-
-Type: `Function`
-
-Callback for when the state of the current prompt changes.
-The function signature is `(state)` where `state` is an object with a snapshot of the current state.
-The state object has two properties `value` and `aborted`. E.g `{ value: 'This is ', aborted: false }`
-
-### stdin and stdout
-
-Type: `Stream`
-
-By default, prompts uses `process.stdin` for receiving input and `process.stdout` for writing output.
-If you need to use different streams, for instance `process.stderr`, you can set these with the `stdin` and `stdout` properties.
-
-
-![split](https://github.com/terkelg/prompts/raw/master/media/split.png)
-
-
-## ❯ Types
-
-* [text](#textmessage-initial-style)
-* [password](#passwordmessage-initial)
-* [invisible](#invisiblemessage-initial)
-* [number](#numbermessage-initial-max-min-style)
-* [confirm](#confirmmessage-initial)
-* [list](#listmessage-initial)
-* [toggle](#togglemessage-initial-active-inactive)
-* [select](#selectmessage-choices-initial-hint-warn)
-* [multiselect](#multiselectmessage-choices-initial-max-hint-warn)
-* [autocompleteMultiselect](#multiselectmessage-choices-initial-max-hint-warn)
-* [autocomplete](#autocompletemessage-choices-initial-suggest-limit-style)
-* [date](#datemessage-initial-warn)
-
-***
-
-### text(message, [initial], [style])
-> Text prompt for free text input.
-
-Hit <kbd>tab</kbd> to autocomplete to `initial` value when provided.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/text.gif" alt="text prompt" width="499" height="103" />
-
-```js
-{
- type: 'text',
- name: 'value',
- message: `What's your twitter handle?`
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `string` | Default string value |
-| style | `string` | Render style (`default`, `password`, `invisible`, `emoji`). Defaults to `default` |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| validate | `function` | Receive user input. Should return `true` if the value is valid, and an error message `String` otherwise. If `false` is returned, a default error message is shown |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### password(message, [initial])
-> Password prompt with masked input.
-
-This prompt is a similar to a prompt of type `'text'` with `style` set to `'password'`.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/password.gif" alt="password prompt" width="499" height="103" />
-
-```js
-{
- type: 'password',
- name: 'value',
- message: 'Tell me a secret'
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `string` | Default string value |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| validate | `function` | Receive user input. Should return `true` if the value is valid, and an error message `String` otherwise. If `false` is returned, a default error message is shown |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### invisible(message, [initial])
-> Prompts user for invisible text input.
-
-This prompt is working like `sudo` where the input is invisible.
-This prompt is a similar to a prompt of type `'text'` with style set to `'invisible'`.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/invisible.gif" alt="invisible prompt" width="499" height="103" />
-
-```js
-{
- type: 'invisible',
- name: 'value',
- message: 'Enter password'
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `string` | Default string value |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| validate | `function` | Receive user input. Should return `true` if the value is valid, and an error message `String` otherwise. If `false` is returned, a default error message is shown |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### number(message, initial, [max], [min], [style])
-> Prompts user for number input.
-
-You can type in numbers and use <kbd>up</kbd>/<kbd>down</kbd> to increase/decrease the value. Only numbers are allowed as input. Hit <kbd>tab</kbd> to autocomplete to `initial` value when provided.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/number.gif" alt="number prompt" width="499" height="103" />
-
-```js
-{
- type: 'number',
- name: 'value',
- message: 'How old are you?',
- initial: 0,
- style: 'default',
- min: 2,
- max: 10
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `number` | Default number value |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| validate | `function` | Receive user input. Should return `true` if the value is valid, and an error message `String` otherwise. If `false` is returned, a default error message is shown |
-| max | `number` | Max value. Defaults to `Infinity` |
-| min | `number` | Min value. Defaults to `-infinity` |
-| float | `boolean` | Allow floating point inputs. Defaults to `false` |
-| round | `number` | Round `float` values to x decimals. Defaults to `2` |
-| increment | `number` | Increment step when using <kbd>arrow</kbd> keys. Defaults to `1` |
-| style | `string` | Render style (`default`, `password`, `invisible`, `emoji`). Defaults to `default` |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### confirm(message, [initial])
-> Classic yes/no prompt.
-
-Hit <kbd>y</kbd> or <kbd>n</kbd> to confirm/reject.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/confirm.gif" alt="confirm prompt" width="499" height="103" />
-
-```js
-{
- type: 'confirm',
- name: 'value',
- message: 'Can you confirm?',
- initial: true
-}
-```
-
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `boolean` | Default value. Default is `false` |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### list(message, [initial])
-> List prompt that return an array.
-
-Similar to the `text` prompt, but the output is an `Array` containing the
-string separated by `separator`.
-
-```js
-{
- type: 'list',
- name: 'value',
- message: 'Enter keywords',
- initial: '',
- separator: ','
-}
-```
-
-<img src="https://github.com/terkelg/prompts/raw/master/media/list.gif" alt="list prompt" width="499" height="103" />
-
-
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `boolean` | Default value |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| separator | `string` | String separator. Will trim all white-spaces from start and end of string. Defaults to `','` |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### toggle(message, [initial], [active], [inactive])
-> Interactive toggle/switch prompt.
-
-Use tab or <kbd>arrow keys</kbd>/<kbd>tab</kbd>/<kbd>space</kbd> to switch between options.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/toggle.gif" alt="toggle prompt" width="499" height="103" />
-
-```js
-{
- type: 'toggle',
- name: 'value',
- message: 'Can you confirm?',
- initial: true,
- active: 'yes',
- inactive: 'no'
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `boolean` | Default value. Defaults to `false` |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| active | `string` | Text for `active` state. Defaults to `'on'` |
-| inactive | `string` | Text for `inactive` state. Defaults to `'off'` |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### select(message, choices, [initial], [hint], [warn])
-> Interactive select prompt.
-
-Use <kbd>up</kbd>/<kbd>down</kbd> to navigate. Use <kbd>tab</kbd> to cycle the list.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/select.gif" alt="select prompt" width="499" height="130" />
-
-```js
-{
- type: 'select',
- name: 'value',
- message: 'Pick a color',
- choices: [
- { title: 'Red', description: 'This option has a description', value: '#ff0000' },
- { title: 'Green', value: '#00ff00', disabled: true },
- { title: 'Blue', value: '#0000ff' }
- ],
- initial: 1
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `number` | Index of default value |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| hint | `string` | Hint to display to the user |
-| warn | `string` | Message to display when selecting a disabled option |
-| choices | `Array` | Array of strings or choices objects `[{ title, description, value, disabled }, ...]`. The choice's index in the array will be used as its value if it is not specified. |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### multiselect(message, choices, [initial], [max], [hint], [warn])
-### autocompleteMultiselect(same)
-> Interactive multi-select prompt.
-> Autocomplete is a searchable multiselect prompt with the same options. Useful for long lists.
-
-Use <kbd>space</kbd> to toggle select/unselect and <kbd>up</kbd>/<kbd>down</kbd> to navigate. Use <kbd>tab</kbd> to cycle the list. You can also use <kbd>right</kbd> to select and <kbd>left</kbd> to deselect.
-By default this prompt returns an `array` containing the **values** of the selected items - not their display title.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/multiselect.gif" alt="multiselect prompt" width="499" height="130" />
-
-```js
-{
- type: 'multiselect',
- name: 'value',
- message: 'Pick colors',
- choices: [
- { title: 'Red', value: '#ff0000' },
- { title: 'Green', value: '#00ff00', disabled: true },
- { title: 'Blue', value: '#0000ff', selected: true }
- ],
- max: 2,
- hint: '- Space to select. Return to submit'
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| instructions | `string` or `boolean` | Prompt instructions to display |
-| choices | `Array` | Array of strings or choices objects `[{ title, value, disabled }, ...]`. The choice's index in the array will be used as its value if it is not specified. |
-| optionsPerPage | `number` | Number of options displayed per page (default: 10) |
-| min | `number` | Min select - will display error |
-| max | `number` | Max select |
-| hint | `string` | Hint to display to the user |
-| warn | `string` | Message to display when selecting a disabled option |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-This is one of the few prompts that don't take a initial value.
-If you want to predefine selected values, give the choice object an `selected` property of `true`.
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### autocomplete(message, choices, [initial], [suggest], [limit], [style])
-> Interactive auto complete prompt.
-
-The prompt will list options based on user input. Type to filter the list.
-Use <kbd>⇧</kbd>/<kbd>⇩</kbd> to navigate. Use <kbd>tab</kbd> to cycle the result. Use <kbd>Page Up</kbd>/<kbd>Page Down</kbd> (on Mac: <kbd>fn</kbd> + <kbd>⇧</kbd> / <kbd>⇩</kbd>) to change page. Hit <kbd>enter</kbd> to select the highlighted item below the prompt.
-
-The default suggests function is sorting based on the `title` property of the choices.
-You can overwrite how choices are being filtered by passing your own suggest function.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/autocomplete.gif" alt="auto complete prompt" width="499" height="163" />
-
-```js
-{
- type: 'autocomplete',
- name: 'value',
- message: 'Pick your favorite actor',
- choices: [
- { title: 'Cage' },
- { title: 'Clooney', value: 'silver-fox' },
- { title: 'Gyllenhaal' },
- { title: 'Gibson' },
- { title: 'Grant' }
- ]
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| format | `function` | Receive user input. The returned value will be added to the response object |
-| choices | `Array` | Array of auto-complete choices objects `[{ title, value }, ...]` |
-| suggest | `function` | Filter function. Defaults to sort by `title` property. `suggest` should always return a promise. Filters using `title` by default |
-| limit | `number` | Max number of results to show. Defaults to `10` |
-| style | `string` | Render style (`default`, `password`, `invisible`, `emoji`). Defaults to `'default'` |
-| initial | `string \| number` | Default initial value |
-| clearFirst | `boolean` | The first ESCAPE keypress will clear the input |
-| fallback | `string` | Fallback message when no match is found. Defaults to `initial` value if provided |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with three properties: `value`, `aborted` and `exited` |
-
-Example on what a `suggest` function might look like:
-```js
-const suggestByTitle = (input, choices) =>
- Promise.resolve(choices.filter(i => i.title.slice(0, input.length) === input))
-```
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-### date(message, [initial], [warn])
-> Interactive date prompt.
-
-Use <kbd>left</kbd>/<kbd>right</kbd>/<kbd>tab</kbd> to navigate. Use <kbd>up</kbd>/<kbd>down</kbd> to change date.
-
-#### Example
-<img src="https://github.com/terkelg/prompts/raw/master/media/date.gif" alt="date prompt" width="499" height="103" />
-
-```js
-{
- type: 'date',
- name: 'value',
- message: 'Pick a date',
- initial: new Date(1997, 09, 12),
- validate: date => date > Date.now() ? 'Not in the future' : true
-}
-```
-
-#### Options
-| Param | Type | Description |
-| ----- | :--: | ----------- |
-| message | `string` | Prompt message to display |
-| initial | `date` | Default date |
-| locales | `object` | Use to define custom locales. See below for an example. |
-| mask | `string` | The format mask of the date. See below for more information.<br />Default: `YYYY-MM-DD HH:mm:ss` |
-| validate | `function` | Receive user input. Should return `true` if the value is valid, and an error message `String` otherwise. If `false` is returned, a default error message is shown |
-| onRender | `function` | On render callback. Keyword `this` refers to the current prompt |
-| onState | `function` | On state change callback. Function signature is an `object` with two properties: `value` and `aborted` |
-
-Default locales:
-
-```javascript
-{
- months: [
- 'January', 'February', 'March', 'April',
- 'May', 'June', 'July', 'August',
- 'September', 'October', 'November', 'December'
- ],
- monthsShort: [
- 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
- 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
- ],
- weekdays: [
- 'Sunday', 'Monday', 'Tuesday', 'Wednesday',
- 'Thursday', 'Friday', 'Saturday'
- ],
- weekdaysShort: [
- 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'
- ]
-}
-```
->**Formatting**: See full list of formatting options in the [wiki](https://github.com/terkelg/prompts/wiki/Date-Time-Formatting)
-
-![split](https://github.com/terkelg/prompts/raw/master/media/split.png)
-
-**↑ back to:** [Prompt types](#-types)
-
-***
-
-## ❯ Credit
-Many of the prompts are based on the work of [derhuerst](https://github.com/derhuerst).
-
-
-## ❯ License
-
-MIT © [Terkel Gjervig](https://terkel.com)
diff --git a/includes/langcheck/node_modules/sisteransi/license b/includes/langcheck/node_modules/sisteransi/license
deleted file mode 100644
index 13dc83c..0000000
--- a/includes/langcheck/node_modules/sisteransi/license
+++ /dev/null
@@ -1,21 +0,0 @@
-MIT License
-
-Copyright (c) 2018 Terkel Gjervig Nielsen
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/includes/langcheck/node_modules/sisteransi/package.json b/includes/langcheck/node_modules/sisteransi/package.json
deleted file mode 100755
index 55a6476..0000000
--- a/includes/langcheck/node_modules/sisteransi/package.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "name": "sisteransi",
- "version": "1.0.5",
- "description": "ANSI escape codes for some terminal swag",
- "main": "src/index.js",
- "license": "MIT",
- "author": {
- "name": "Terkel Gjervig",
- "email": "terkel@terkel.com",
- "url": "https://terkel.com"
- },
- "scripts": {
- "test": "tape test/*.js | tap-spec"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/terkelg/sisteransi"
- },
- "files": [
- "src"
- ],
- "types": "./src/sisteransi.d.ts",
- "keywords": [
- "ansi",
- "escape codes",
- "escape",
- "terminal",
- "style"
- ],
- "devDependencies": {
- "tap-spec": "^5.0.0",
- "tape": "^4.13.2"
- }
-}
diff --git a/includes/langcheck/node_modules/sisteransi/readme.md b/includes/langcheck/node_modules/sisteransi/readme.md
deleted file mode 100755
index 632f0d7..0000000
--- a/includes/langcheck/node_modules/sisteransi/readme.md
+++ /dev/null
@@ -1,113 +0,0 @@
-# sister ANSI [![Version](https://img.shields.io/npm/v/sisteransi.svg)](https://www.npmjs.com/package/sisteransi) [![Build Status](https://travis-ci.org/terkelg/sisteransi.svg?branch=master)](https://travis-ci.org/terkelg/sisteransi) [![Downloads](https://img.shields.io/npm/dm/sisteransi.svg)](https://www.npmjs.com/package/sisteransi)
-
-> Ansi escape codes faster than you can say "[Bam bam](https://www.youtube.com/watch?v=OcaPu9JPenU)".
-
-## Installation
-
-```
-npm install sisteransi
-```
-
-
-## Usage
-
-```js
-const ansi = require('sisteransi');
-// or const { cursor } = require('sisteransi');
-
-const p = str => process.stdout.write(str);
-
-// move cursor to 2, 1
-p(ansi.cursor.to(2, 1));
-
-// to up, one down
-p(ansi.cursor.up(2)+ansi.cursor.down(1));
-```
-
-## API
-
-### cursor
-
-#### to(x, y)
-Set the absolute position of the cursor. `x0` `y0` is the top left of the screen.
-
-#### move(x, y)
-Set the position of the cursor relative to its current position.
-
-#### up(count = 1)
-Move cursor up a specific amount of rows. Default is `1`.
-
-#### down(count = 1)
-Move cursor down a specific amount of rows. Default is `1`.
-
-#### forward(count = 1)
-Move cursor forward a specific amount of rows. Default is `1`.
-
-#### backward(count = 1)
-Move cursor backward a specific amount of rows. Default is `1`.
-
-#### nextLine(count = 1)
-Move cursor to the next line a specific amount of lines. Default is `1`.
-
-#### prevLine(count = 1)
-Move cursor to the previous a specific amount of lines. Default is `1`.
-
-#### left
-Move cursor to the left side.
-
-#### hide
-Hide cursor.
-
-#### show
-Show cursor.
-
-#### save
-
-Save cursor position.
-
-#### restore
-
-Restore cursor position.
-
-
-### scroll
-
-#### up(count = 1)
-Scroll display up a specific amount of lines. Default to `1`.
-
-#### down(count = 1)
-Scroll display down a specific amount of lines. Default to `1`.
-
-
-### erase
-
-#### screen
-Erase the screen and move the cursor the top left position.
-
-#### up(count = 1)
-Erase the screen from the current line up to the top of the screen. Default to `1`.
-
-#### down(count = 2)
-Erase the screen from the current line down to the bottom of the screen. Default to `1`.
-
-#### line
-Erase the entire current line.
-
-#### lineEnd
-Erase from the current cursor position to the end of the current line.
-
-#### lineStart
-Erase from the current cursor position to the start of the current line.
-
-#### lines(count)
-Erase from the current cursor position up the specified amount of rows.
-
-
-## Credit
-
-This is a fork of [ansi-escapes](https://github.com/sindresorhus/ansi-escapes).
-
-
-## License
-
-MIT © [Terkel Gjervig](https://terkel.com)
diff --git a/includes/langcheck/node_modules/sisteransi/src/index.js b/includes/langcheck/node_modules/sisteransi/src/index.js
deleted file mode 100644
index 7034e2e..0000000
--- a/includes/langcheck/node_modules/sisteransi/src/index.js
+++ /dev/null
@@ -1,58 +0,0 @@
-'use strict';
-
-const ESC = '\x1B';
-const CSI = `${ESC}[`;
-const beep = '\u0007';
-
-const cursor = {
- to(x, y) {
- if (!y) return `${CSI}${x + 1}G`;
- return `${CSI}${y + 1};${x + 1}H`;
- },
- move(x, y) {
- let ret = '';
-
- if (x < 0) ret += `${CSI}${-x}D`;
- else if (x > 0) ret += `${CSI}${x}C`;
-
- if (y < 0) ret += `${CSI}${-y}A`;
- else if (y > 0) ret += `${CSI}${y}B`;
-
- return ret;
- },
- up: (count = 1) => `${CSI}${count}A`,
- down: (count = 1) => `${CSI}${count}B`,
- forward: (count = 1) => `${CSI}${count}C`,
- backward: (count = 1) => `${CSI}${count}D`,
- nextLine: (count = 1) => `${CSI}E`.repeat(count),
- prevLine: (count = 1) => `${CSI}F`.repeat(count),
- left: `${CSI}G`,
- hide: `${CSI}?25l`,
- show: `${CSI}?25h`,
- save: `${ESC}7`,
- restore: `${ESC}8`
-}
-
-const scroll = {
- up: (count = 1) => `${CSI}S`.repeat(count),
- down: (count = 1) => `${CSI}T`.repeat(count)
-}
-
-const erase = {
- screen: `${CSI}2J`,
- up: (count = 1) => `${CSI}1J`.repeat(count),
- down: (count = 1) => `${CSI}J`.repeat(count),
- line: `${CSI}2K`,
- lineEnd: `${CSI}K`,
- lineStart: `${CSI}1K`,
- lines(count) {
- let clear = '';
- for (let i = 0; i < count; i++)
- clear += this.line + (i < count - 1 ? cursor.up() : '');
- if (count)
- clear += cursor.left;
- return clear;
- }
-}
-
-module.exports = { cursor, scroll, erase, beep };
diff --git a/includes/langcheck/node_modules/sisteransi/src/sisteransi.d.ts b/includes/langcheck/node_modules/sisteransi/src/sisteransi.d.ts
deleted file mode 100644
index 113da2f..0000000
--- a/includes/langcheck/node_modules/sisteransi/src/sisteransi.d.ts
+++ /dev/null
@@ -1,35 +0,0 @@
-export const beep: string;
-export const clear: string;
-
-export namespace cursor {
- export const left: string;
- export const hide: string;
- export const show: string;
- export const save: string;
- export const restore: string;
-
- export function to(x: number, y?: number): string;
- export function move(x: number, y: number): string;
- export function up(count?: number): string;
- export function down(count?: number): string;
- export function forward(count?: number): string;
- export function backward(count?: number): string;
- export function nextLine(count?: number): string;
- export function prevLine(count?: number): string;
-}
-
-export namespace scroll {
- export function up(count?: number): string;
- export function down(count?: number): string;
-}
-
-export namespace erase {
- export const screen: string;
- export const line: string;
- export const lineEnd: string;
- export const lineStart: string;
-
- export function up(count?: number): string;
- export function down(count?: number): string;
- export function lines(count: number): string;
-}
diff --git a/includes/langcheck/node_modules/supports-color/browser.js b/includes/langcheck/node_modules/supports-color/browser.js
deleted file mode 100644
index 62afa3a..0000000
--- a/includes/langcheck/node_modules/supports-color/browser.js
+++ /dev/null
@@ -1,5 +0,0 @@
-'use strict';
-module.exports = {
- stdout: false,
- stderr: false
-};
diff --git a/includes/langcheck/node_modules/supports-color/index.js b/includes/langcheck/node_modules/supports-color/index.js
deleted file mode 100644
index 6fada39..0000000
--- a/includes/langcheck/node_modules/supports-color/index.js
+++ /dev/null
@@ -1,135 +0,0 @@
-'use strict';
-const os = require('os');
-const tty = require('tty');
-const hasFlag = require('has-flag');
-
-const {env} = process;
-
-let forceColor;
-if (hasFlag('no-color') ||
- hasFlag('no-colors') ||
- hasFlag('color=false') ||
- hasFlag('color=never')) {
- forceColor = 0;
-} else if (hasFlag('color') ||
- hasFlag('colors') ||
- hasFlag('color=true') ||
- hasFlag('color=always')) {
- forceColor = 1;
-}
-
-if ('FORCE_COLOR' in env) {
- if (env.FORCE_COLOR === 'true') {
- forceColor = 1;
- } else if (env.FORCE_COLOR === 'false') {
- forceColor = 0;
- } else {
- forceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);
- }
-}
-
-function translateLevel(level) {
- if (level === 0) {
- return false;
- }
-
- return {
- level,
- hasBasic: true,
- has256: level >= 2,
- has16m: level >= 3
- };
-}
-
-function supportsColor(haveStream, streamIsTTY) {
- if (forceColor === 0) {
- return 0;
- }
-
- if (hasFlag('color=16m') ||
- hasFlag('color=full') ||
- hasFlag('color=truecolor')) {
- return 3;
- }
-
- if (hasFlag('color=256')) {
- return 2;
- }
-
- if (haveStream && !streamIsTTY && forceColor === undefined) {
- return 0;
- }
-
- const min = forceColor || 0;
-
- if (env.TERM === 'dumb') {
- return min;
- }
-
- if (process.platform === 'win32') {
- // Windows 10 build 10586 is the first Windows release that supports 256 colors.
- // Windows 10 build 14931 is the first release that supports 16m/TrueColor.
- const osRelease = os.release().split('.');
- if (
- Number(osRelease[0]) >= 10 &&
- Number(osRelease[2]) >= 10586
- ) {
- return Number(osRelease[2]) >= 14931 ? 3 : 2;
- }
-
- return 1;
- }
-
- if ('CI' in env) {
- if (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {
- return 1;
- }
-
- return min;
- }
-
- if ('TEAMCITY_VERSION' in env) {
- return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
- }
-
- if (env.COLORTERM === 'truecolor') {
- return 3;
- }
-
- if ('TERM_PROGRAM' in env) {
- const version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);
-
- switch (env.TERM_PROGRAM) {
- case 'iTerm.app':
- return version >= 3 ? 3 : 2;
- case 'Apple_Terminal':
- return 2;
- // No default
- }
- }
-
- if (/-256(color)?$/i.test(env.TERM)) {
- return 2;
- }
-
- if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
- return 1;
- }
-
- if ('COLORTERM' in env) {
- return 1;
- }
-
- return min;
-}
-
-function getSupportLevel(stream) {
- const level = supportsColor(stream, stream && stream.isTTY);
- return translateLevel(level);
-}
-
-module.exports = {
- supportsColor: getSupportLevel,
- stdout: translateLevel(supportsColor(true, tty.isatty(1))),
- stderr: translateLevel(supportsColor(true, tty.isatty(2)))
-};
diff --git a/includes/langcheck/node_modules/supports-color/license b/includes/langcheck/node_modules/supports-color/license
deleted file mode 100644
index e7af2f7..0000000
--- a/includes/langcheck/node_modules/supports-color/license
+++ /dev/null
@@ -1,9 +0,0 @@
-MIT License
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/includes/langcheck/node_modules/supports-color/package.json b/includes/langcheck/node_modules/supports-color/package.json
deleted file mode 100644
index f7182ed..0000000
--- a/includes/langcheck/node_modules/supports-color/package.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "name": "supports-color",
- "version": "7.2.0",
- "description": "Detect whether a terminal supports color",
- "license": "MIT",
- "repository": "chalk/supports-color",
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- "engines": {
- "node": ">=8"
- },
- "scripts": {
- "test": "xo && ava"
- },
- "files": [
- "index.js",
- "browser.js"
- ],
- "keywords": [
- "color",
- "colour",
- "colors",
- "terminal",
- "console",
- "cli",
- "ansi",
- "styles",
- "tty",
- "rgb",
- "256",
- "shell",
- "xterm",
- "command-line",
- "support",
- "supports",
- "capability",
- "detect",
- "truecolor",
- "16m"
- ],
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "devDependencies": {
- "ava": "^1.4.1",
- "import-fresh": "^3.0.0",
- "xo": "^0.24.0"
- },
- "browser": "browser.js"
-}
diff --git a/includes/langcheck/node_modules/supports-color/readme.md b/includes/langcheck/node_modules/supports-color/readme.md
deleted file mode 100644
index 3654228..0000000
--- a/includes/langcheck/node_modules/supports-color/readme.md
+++ /dev/null
@@ -1,76 +0,0 @@
-# supports-color [![Build Status](https://travis-ci.org/chalk/supports-color.svg?branch=master)](https://travis-ci.org/chalk/supports-color)
-
-> Detect whether a terminal supports color
-
-
-## Install
-
-```
-$ npm install supports-color
-```
-
-
-## Usage
-
-```js
-const supportsColor = require('supports-color');
-
-if (supportsColor.stdout) {
- console.log('Terminal stdout supports color');
-}
-
-if (supportsColor.stdout.has256) {
- console.log('Terminal stdout supports 256 colors');
-}
-
-if (supportsColor.stderr.has16m) {
- console.log('Terminal stderr supports 16 million colors (truecolor)');
-}
-```
-
-
-## API
-
-Returns an `Object` with a `stdout` and `stderr` property for testing either streams. Each property is an `Object`, or `false` if color is not supported.
-
-The `stdout`/`stderr` objects specifies a level of support for color through a `.level` property and a corresponding flag:
-
-- `.level = 1` and `.hasBasic = true`: Basic color support (16 colors)
-- `.level = 2` and `.has256 = true`: 256 color support
-- `.level = 3` and `.has16m = true`: Truecolor support (16 million colors)
-
-
-## Info
-
-It obeys the `--color` and `--no-color` CLI flags.
-
-For situations where using `--color` is not possible, use the environment variable `FORCE_COLOR=1` (level 1), `FORCE_COLOR=2` (level 2), or `FORCE_COLOR=3` (level 3) to forcefully enable color, or `FORCE_COLOR=0` to forcefully disable. The use of `FORCE_COLOR` overrides all other color support checks.
-
-Explicit 256/Truecolor mode can be enabled using the `--color=256` and `--color=16m` flags, respectively.
-
-
-## Related
-
-- [supports-color-cli](https://github.com/chalk/supports-color-cli) - CLI for this module
-- [chalk](https://github.com/chalk/chalk) - Terminal string styling done right
-
-
-## Maintainers
-
-- [Sindre Sorhus](https://github.com/sindresorhus)
-- [Josh Junon](https://github.com/qix-)
-
-
----
-
-<div align="center">
- <b>
- <a href="https://tidelift.com/subscription/pkg/npm-supports-color?utm_source=npm-supports-color&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
- </b>
- <br>
- <sub>
- Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
- </sub>
-</div>
-
----
diff --git a/includes/langcheck/package-lock.json b/includes/langcheck/package-lock.json
deleted file mode 100644
index 79c978c..0000000
--- a/includes/langcheck/package-lock.json
+++ /dev/null
@@ -1,102 +0,0 @@
-{
- "name": "langcheck",
- "lockfileVersion": 3,
- "requires": true,
- "packages": {
- "": {
- "dependencies": {
- "chalk": "^4.1.2",
- "prompts": "^2.4.2"
- }
- },
- "node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
- },
- "node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/kleur": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz",
- "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/prompts": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz",
- "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==",
- "dependencies": {
- "kleur": "^3.0.3",
- "sisteransi": "^1.0.5"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/sisteransi": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
- "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="
- },
- "node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- }
- }
-}
diff --git a/includes/langcheck/package.json b/includes/langcheck/package.json
deleted file mode 100644
index 893682a..0000000
--- a/includes/langcheck/package.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "dependencies": {
- "chalk": "^4.1.2",
- "prompts": "^2.4.2"
- }
-}
diff --git a/includes/langcheck/reviewed.txt b/includes/langcheck/reviewed.txt
deleted file mode 100644
index 683fd56..0000000
--- a/includes/langcheck/reviewed.txt
+++ /dev/null
@@ -1,667 +0,0 @@
-en.json:/login/title(9d6322c1f4d9d3f38aed8bfbe0b2bcadf66ad82c008476fa62541fa069138e94):1526
-en.json:/login/title2(360597056a4cb6569bed6473695738f2d43ddb3cf6edfd987ace840ac624b713):938
-en.json:/login/notfound(0557d824ba7294beb48617092c3a3e120c983c7bb73a3d3b9e1b78845ea9b65a):4738
-en.json:/login/intro(3422e263369ac1209fae65c86192b5265ccb771511b4d09074d233715d0d0b78):7319
-en.json:/login/email(f2488fd4ef4adbc6ac61300083f2c33980e48bb4bbf3c540ad760d61fc36f420):977
-en.json:/login/continue(31fbef162594de01bab0cd525c51f74de7bcb15063029fa1a54b2cf5944c80d8):2385
-en.json:/login/code(b80a06b04040c587af91b50cc70d9aa0844391663ec07d7981fd0eeecc90e2de):7129
-en.json:/login/code2(340f463033e0fd5ddeabb922df4d4f1b5747494d0f5ed9894f13b6e13ca831f5):884
-en.json:/login/invalid(fe5aac41420afdd5461c59524c440cc8018d789fb59e04e44f83adcbd484474d):4246
-en.json:/login/back(eecd801752f5bb950bb26ddd43a1df7f15407583aabe47507fc10d8c5e814420):904
-en.json:/login/done(7d8a3a9d6b7375f75629c9d4a8fca315dd90f3a93b324e855c03f06f55bf1dea):20267
-en.json:/login/oobe(4ee5d56e60ad5db075a0f25902023579a9a6a1d73f3c5b3c6abefd38ce9f8049):1579
-en.json:/login/oobe2(570aaf3ba59201c94c1059611fa41a7e0400023458de099401f6ebb3f9de1242):6968
-en.json:/login/start(61e8d44ad423a4a0951b21b9d11440a1c23a881fe79335c367f63be251c64800):823
-en.json:/login/email2(cf3d315a7ce8320d00091fcf8ffc9295b8c90440d67462397870a6d10e976516):756
-en.json:/login/code3(fa4c4ca9c6d1037d183152f8b0ad56de6ce34b13f1b0078a1cc33288aa3eb7ac):874
-en.json:/login/finish(143b270a32602d412babf2724ec0640dda0d5a43485e5a7520b05b53fa94b303):699
-en.json:/login/auth/email(559a288b3ad93358baf68ad6b92dd69999e3810b80b5a1e01edb1ab48c60d5f7):1207
-en.json:/login/auth/hub(a8183079c2ac676d9bb9d9771ccaedb2ea4e92ffb1a662504ab88ff0043c19cb):1585
-en.json:/login/auth/apply(a5200fe17d7083f748ba967154386cd07c04386719e1f60bb6149a3068c65a08):1798
-en.json:/login/oauth2/notfound(6809d1b1f35e89dd5127f7575489b6ecc1cf12fa30c4eb241122101eb6b5183c):14667
-en.json:/login/eqd(11aaa14268df51b7aca21aedc98555fff705c70ad77081be885175382695049e):1219
-en.json:/login/captcha(2062528a4cd4ffb32105b1a330b41c57965804db3c8767698b10bb4646ab2fb2):2943
-en.json:/home/title(67b696468610b879ed7f224dbf6b0861f27e39d20454cb9d7af1ec52d3e5eeaa):927
-en.json:/home/greeting(185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969):768
-en.json:/home/date(d8e3cfde0fbd2968060aee2ae7cc14f89b8872b22bcbc23d586ec2b6c22ae4d9):1273
-en.json:/home/birthday(c8c3904e89a6ea0b4a0b9fba81b8a8b1debbdcf98883260aeeebb8b5c0614d76):2828
-en.json:/home/and(6201111b83a0cb5b0922cb37cc442b9a40e24e3b1ce100a4bb204f4c63fd2ac0):1352
-en.json:/home/name(2c79bfa12408c181c1baf2704aa54204104df0bfa830582bc141a72d1b022be1):1448
-en.json:/home/update(f027f188159b523e416d34b5ae0649a74ac567f90a93fec12f3ee451b55aaa10):821
-en.json:/home/family(42623b3dedae18de7c934dc21c7cdf0d9fef4e9f6dd2ad8d737412915e627dba):794
-en.json:/home/because(7d87a7182ee44adb548fc5acb5aff3bc4e1b8eac2cb110d223399e750c368848):1426
-en.json:/home/recent(474b2a869ac1477d2c174d764815230c13edb7a9d194d5aa8ea349c6d0c9dee2):892
-en.json:/home/editor(936a161c39314b0540fe7415d2ad16cadb631568c4ebc57d6cff60f14edc099d):859
-en.json:/time/display(43672cc90c8dbf2b6bd344a1ea7ae3dff0027aa990ba38e235251e31083a2956):2855
-en.json:/time/later(1d9283d848ea941ace1fe0d2378ef8b70056a0d4d1648b95a322d90163e78285):866
-en.json:/time/ago(1d8e08fd632682840b4159dd52d36b0d1c55cf6cac21097076474e5b43608cb4):486
-en.json:/time/now(ed5eb9a37e2d8231af3388319b941995f6dc8755c56043d0cc52b5fe405a87de):478
-en.json:/time/sec(16367aacb67a4a017c8da8ab95682ccb390863780f7114dda0a0e0c55644c7c4):765
-en.json:/time/less(2a21a708184b24bc9eee1f8107da89110dac4b21250c86b2d0d2958ffd27a724):762
-en.json:/time/mn(28cdd20eaf134a05f18369414cb2df5e36c6a4e4f551b8c9cff8548029c41d6c):781
-en.json:/time/hr(9ac0add475dd38e6ab3a3fb5ab4579c886eb654f57764210a352fd62e9dd9706):777
-en.json:/time/d(944c27e5b97ab7793e4b6e9ff29384890ece0c7c04d2e2bf81c5f763469cc66b):920
-en.json:/time/wk(6df37daaa46ce714fa410768b63f415dfad094df33eb34ac1af332074fd15a1c):828
-en.json:/time/mo(a5c7d1719e284f2c9485405d44f62d152cde9e6ede83e1a79a2442b65f6a8735):448
-en.json:/time/y(4cb4ea25583c25647247ae96fc90225d99ad7a6fabc3e2c2fd13c502e323cd9e):859
-en.json:/time/age(013f54400c82da08037759ada907a8b864e97de81c088a182062c4b5622fd2ab):729
-en.json:/time/today(e0f4f767ac88a9303e7317843ac20be980665a36f52397e5b26d4cc2bf54011d):601
-en.json:/time/yesterday(9523d9fbe79bcf3ee5f9f664a8041fa3cdba4b6b8bb902cb5ec335a5bf1ca769):843
-en.json:/time/update(60fc9aaf8202206b91aa952bde5befa270e507b62ea81835a1149ce21bb5f8ae):2231
-en.json:/time/update_user(cd335fad5102e348c67b37ade66a2d73f065cef26baa1933818873059aa981f6):2279
-en.json:/months/jan(37082e68df858e0ba76442174128811135890ae4c2c5df8b6f31aef5885d0be7):786
-en.json:/months/feb(c877c6ff405ec29ca3d090237af972c34926ffde7088da4839394b48931da888):500
-en.json:/months/mar(9d95a2cf0d7180b5089691163b188a7203b0cde179346b8cfaa8ab6c2c3e6414):815
-en.json:/months/apr(4afe6ea150d532c17693519cac32da104f47073d500d2507272d294d8590d3f8):562
-en.json:/months/may(8c78fe5b9936488c111733d36f3da4b246a4d206159efe5cd64cdb229c38f069):686
-en.json:/months/jun(d5808c0e0a479813fafc659ded78dcd18372dd71f3d0d5d52efdc940e6a384e8):494
-en.json:/months/jul(e9cf7a1ca4a760843ff30e1fbb125e6a066c63e883c58523bdbe04c9daf5dbae):652
-en.json:/months/aug(a66d8970e569a944234cbee8c414357fa6092c1ab779fbd637433f23e2a8abb8):670
-en.json:/months/sep(cd559ea0abca085ef144273caaf7266183bba222f39d894e74966fc04b8fff18):1055
-en.json:/months/oct(fdd791787b64d22386b9e4fe2fa037792bb86d9b2905f245626eda8e7450c4d4):822
-en.json:/months/nov(9de6fe1d72659daec67e919b0c473a24da5f03d3d096dc44ead1687240975f7c):506
-en.json:/months/dec(8fb204ca460968479407fe3f09b85a7500b2f4a20ca644e5f7822f53161f331a):1089
-en.json:/navigation/show(99af6606ff9d6cd5154d4d4e9c21e325086d3e904677cdb41d363c8a3480f862):1181
-en.json:/navigation/hide(7d9eb7acb13e24625c404401d8e88b2350e32162455885f18276cf802f7701ed):1321
-en.json:/navigation/people(7db20897053bb2780b9b706e5505227b005de80c236e4a4836aab37a3a7bb298):3178
-en.json:/navigation/articles(b14ac78a46e90b7137f90518d51ce3677cf078db540d60d17097b6c40e25abf2):1741
-en.json:/navigation/gallery(352cfc749e55222e135ee48e67631ba33f834d936c137560fd39063d2e57e5cb):936
-en.json:/login/done(15686c494fe96436f7c7c848dcc584152eba5cd2156be69092cdc95737c21651):468
-en.json:/navigation/events(8d14f6e72de8f18ab1ee5c5330f00653c0c3ce099e63024454f80af97e72d333):2651
-en.json:/navigation/search(49c266baaaa70981ea188fa714d5c40cf13830d786a861c9943ae0d26a7f3fe9):717
-en.json:/navigation/profile(d696a35bdd1883da07a8d6c41bb7a3153381b23aa197629ee273479a6eaa5a9c):534
-en.json:/navigation/messages(f62e9267d196c761f503dbffb17b9a52c4134de48b9959754c4bd78a9ad053b8):422
-en.json:/navigation/upgrade(7ec0261b8e8aa3e0b1affde5f18ca1930ae73d81a5303d667aae9ffd2803cbc7):409
-en.json:/navigation/beta(952146e9bbe63daeb79f0fb0e0f418f8882a42f86d9613756799e3e635c402e6):482
-en.json:/navigation/user/studio(e13cfc58cc090f36e934419dad168ac96e06f106d5c374a25b8b8ce7c5578ecf):657
-en.json:/navigation/user/dashboard(67b696468610b879ed7f224dbf6b0861f27e39d20454cb9d7af1ec52d3e5eeaa):498
-en.json:/navigation/user/profile(528d89ad72cba22e2d9d116befd3bb96a519f06b5f1147a2348d29fa6d1a2cbd):561
-en.json:/navigation/user/edit(5d2c6743b87ce9d80ddcf114c094d3d0570310ae7774ca5117633803ed96b1a9):502
-en.json:/navigation/user/subscriptions(a151f2e912fe8d5b31e07dae6315f861d39160480d78848a0cdadfb51f09d327):1807
-en.json:/navigation/user/requests(9979b415083238f7074ec3036cce9f5f362d1e125f265cf90fbe93f2240bfc6b):569
-en.json:/navigation/user/help(b79cac926e0b2e347e72cc91d5174037c9e17ae7733fd7bdb570f71b10cd7bfc):791
-en.json:/navigation/user/logout(49616145514e9abf1fc47d631fccccff2ed974cc260d38848181a07e0fa9972f):479
-en.json:/footer/legal(6980a89485b935520aafb78dcd39445b2bd2daafb43ece4ef858994f9b15f781):467
-en.json:/footer/privacy(ba445cff3898a3f24f415f90fbef1c8169ea21949a40680c5e1c5975843d1b5e):697
-en.json:/footer/terms(e69e06144877d81c91e6e3ebf9c53619eaa9a5e52b28e2b987fbe6c69e1ff1ae):602
-en.json:/footer/sales(e68f4fc24e711a5d9e25e5699319c785889c20ef8fb31f53a85f1521db3d723b):745
-en.json:/people/title(7db20897053bb2780b9b706e5505227b005de80c236e4a4836aab37a3a7bb298):1488
-en.json:/people/empty(7a0bb6c8e20fa44ab18e0a547214beb5ac2fc6ee9a3e0d0e714d6eef4eef0200):2326
-en.json:/people/state(a3b50c476732c7409d297c3d7d0e23569fee5e08318553ae76041ab5fe60582e):705
-en.json:/people/gender(a04630ef8bc3da8c864af0161fde9d42cc9c801a27228b3cf7c07237dec5a612):598
-en.json:/people/relations(ba39aabe5da59950f2613ffbe227e06b619cb600ad7e3ec2f7fd296f8edc5026):524
-en.json:/people/home(3a78695388b38b5cceefaf6796b0137877514593543b91af2752d5a17e3d736c):447
-en.json:/people/civil(98d0d2f1f00d99058c1a23d5b0cdde73bed4fac431523e629682780d90894aba):1026
-en.json:/people/birth(32eaeb6f806a08d0a7f22951666a2666ce63a42b7eb27cae196eac8a6e72a5fe):646
-en.json:/people/death(fcd6fea72de7e6c09ca2567674befdef61c04e783bd2e0f092aeb99c57e587e3):482
-en.json:/people/marriage(826a4390846316301d2e02487f1040015b14f207d0673fb080b3e698cec9560f):1652
-en.json:/people/studies(c0acecedfcc4b189b8b11ba5804b9fac0775bab0a8b2dc7017f0bc52e76d90e3):757
-en.json:/people/schools(af2e91296939b127fa0fec451894ce13292397008f69712a8437d87d42947fdf):532
-en.json:/people/diplomas(9ce4e9689c826e407c8d4d00b757824fa6518e08b7b11f5fc908d38d44f3cd38):815
-en.json:/people/level(34179b678fcc7e8d880b888e821ee00f679b6c42bdccb3ca56e16bcdc0338bc1):899
-en.json:/people/jobs(2f17a0f8d518e491c5a0c490b2c1991828dd87d173994ba40996e1da59d4e368):594
-en.json:/people/previousjobs(e10cc088d104ddae33b41f31607c3c4f95ba3f56bc3389a2b250173276c73f5c):601
-en.json:/people/currentjob(e30271c23670448248eb869f65dcd18810773c16caf48bd1f1574f27f40bb1d4):845
-en.json:/people/position(6d031af10da7a25e554bb21247f28f0e6cef77f1471175199e7fcc571964dc3d):646
-en.json:/people/workplace(7ff7869c79f5a6895e4032ef9b9568648e9733d1cd7a7853244097204d025e51):696
-en.json:/people/nextjob(b233c8fd1ed0d7e6588b970656e4b04d5a4ed7c541963107a7a63d0ecf0e58aa):814
-en.json:/people/culture(faf2dbb39ba34e5a5667b32841aa04abc1822032563a9017ba3e31368804ef37):982
-en.json:/people/religion(f8a52d21e659b0e9b473f4e23263def011931bad06bad2146f42b1f5d09c8132):649
-en.json:/people/languages(213758640906646b412a3fac140fe2a4caacb368f34bb5abda6a34a01bfd4d8d):1523
-en.json:/people/permits(aa2b49f799529321a088d4b1db9d56d46b37576fe4dee728e69987750a5cdbac):950
-en.json:/people/countries(aa456f29bbce9d06364907f63bdee91aed9b10194cd77641b4b36a02a4aed493):1092
-en.json:/people/dead(2cb272887fc048b8bb7a1deb3d2dd1f8df30816bcedab2518a7b7653ef2ef0a5):1051
-en.json:/people/notborn(5f13885bd2c8d02bd4172240b98a7c142cc9f89818cefaebfb477cb48e929347):424
-en.json:/people/alive(3032763b0e678458e373c225c5319c2b7f6a6abd4fac0b7add3d82394abd3705):488
-en.json:/people/invalid(d3c7d623b5b175387d9401ebfc0c38c634c66cc1c33305b4b4842ee4e4dcfc4f):519
-en.json:/people/female(e8cca808ae5aaa03a7fc3060856e6d4ad776fb1cb8cfe441a9bd240988cde151):700
-en.json:/people/male(03f8c1273e3da99bb315fe7b71c8e45159c826e6d3f42eecd4612078248f73a1):505
-en.json:/people/other(f97e9da0e3b879f0a9df979ae260a5f7e1371edb127c1862d4f861981166cdc1):587
-en.json:/people/transfemale(b1d426b0689da00dc077769ffaf3ea4628f4630d28d535dbe0145e823fed3269):714
-en.json:/people/transmale(4d14ec59264dc794d4d9b4d6a3bcb53838bcb7c98ff2b6b76e443ab4493214e3):467
-en.json:/people/delta(1ce912843cb5b7fe308421b26eef571daa258adad64034dbbf4cbaad8aefa124):624
-en.json:/people/update(b6a9eceb382062dc302b560ff21440206ef9c0398b157fb0f8c3dc6157b26bbb):512
-en.json:/people/notfound(e3ebaa16dd9d9b9fc107c42183fb6cf9d22927e1af03dbbdfa0ccc38e4e4ac31):720
-en.json:/people/parent(e47125968b3b71049fbc4802d1e40a71ea1359decfabacf70b34588037d4ff0c):736
-en.json:/people/sibling(7d10de8554ed5ca40f9d0f0e0f4375b5b338af3fb96d33c9b2f53b5289b8f4fe):684
-en.json:/people/child(ddc9e669194254cef019a29d3619a2c16592e5d52e1a81e98b01bd52319149a3):672
-en.json:/people/grandchild(713b4f18f0e1371cf3f9cef65ef1843b836a9f83305912faa18f122836816130):772
-en.json:/people/partner(7f3fa48ca885678134842fa7456f3ece53a97f843b610185d900ac4e467c7490):619
-en.json:/people/greatparent(68b8f014518125a10f354f6f075da86a0810eea1edbca05896e37ef8ed2aa08e):577
-en.json:/people/advanced/alive/female(3032763b0e678458e373c225c5319c2b7f6a6abd4fac0b7add3d82394abd3705):752
-en.json:/people/advanced/alive/male(3032763b0e678458e373c225c5319c2b7f6a6abd4fac0b7add3d82394abd3705):1068
-en.json:/people/advanced/notborn/female(5f13885bd2c8d02bd4172240b98a7c142cc9f89818cefaebfb477cb48e929347):754
-en.json:/people/advanced/notborn/male(5f13885bd2c8d02bd4172240b98a7c142cc9f89818cefaebfb477cb48e929347):673
-en.json:/people/advanced/dead/female(2cb272887fc048b8bb7a1deb3d2dd1f8df30816bcedab2518a7b7653ef2ef0a5):703
-en.json:/people/advanced/dead/male(2cb272887fc048b8bb7a1deb3d2dd1f8df30816bcedab2518a7b7653ef2ef0a5):520
-en.json:/people/advanced/partner/married-female(3908536141146c393575ab5189d67c6278aa5431eca473da1ac06bc90819c9d4):808
-en.json:/people/advanced/partner/married-male(0b02488a99bd12c9974ea4470674b61476b5efe29bb9339fdad47a9e711676b8):10134
-en.json:/people/advanced/partner/married-neutral(f9ce3beb80492facbec3586308e6590ef4b543c570a119d1e9b575f3b12ce197):818
-en.json:/people/advanced/partner/unmarried-female(ea92a6127bf34763b8fb83c9a0c1acc1c05885b049074a7ad2fa2d4bdfa3685d):1632
-en.json:/people/advanced/partner/unmarried-male(fa31ab947a903102a5c9ee3775b5059bbff94fd2dfbbc8d18305ca1c4014ea1e):502
-en.json:/people/advanced/parent/female(cf0622ef2a661cd2f11b0b644e40e4e00eb962918424a8c8ba53842fdf290235):730
-en.json:/people/advanced/parent/male(88a1881f0025cf7117501d07aefc5d4be6696656790d765678df8bc48ca52687):618
-en.json:/people/advanced/child/female(4ed28f82ca96c3342a5c591668270f78c26dae22fd953772a6c14e52f46e1b22):687
-en.json:/people/advanced/child/male(98aa6675482552881925fe70d82559692d811b3bcd33f53b9a702c24d5322696):554
-en.json:/people/advanced/grandchild/female(285a615116ddc631454086f35789f7ca66e16e74a6cc518b3808b52da2c0bf07):792
-en.json:/people/advanced/grandchild/male(8644c8af89f1a425dbde70e422cf0d84ea48be78a1de290509c492c151e287e4):558
-en.json:/people/advanced/greatparent/female(c04d87aa70a7d16530de692e0263668adc4847076051156d9ee6f08f441b008e):861
-en.json:/people/advanced/greatparent/male(7ab7049973595a7f356878ff9eff94df2435a05a2eb7be4b2522c0339aff5bd5):462
-en.json:/people/advanced/sibling/female(1980d3927f07fec9c8d727f187ddde727da7e45247dbb71c7555e5ae0eca66d5):535
-en.json:/people/advanced/sibling/male(0b4bd77cec705cf5df016344c0fc673fb3c2240078e6af572b2c5c6fa76114af):481
-en.json:/people/unknown(b764cdc0eab7137467211272fa539f1260d1bf2e71bcf6ff3bdc960f5c16aa14):577
-en.json:/people/lhs(e3683de55b71802ab21beff6cf9f4ca8ca9654deae436f99f32077aacc45b72a):865
-en.json:/people/uhs(610a86498c58c1d46730f6f7dbc8cae7c532a001fb9f0ca2317add6ddfcbb269):650
-en.json:/people/ps(de2954536887a013068fc29975535ddc6b4ccd80f06af6dede0511a96c37fea6):690
-en.json:/people/uni(aba1eecaad2256490a3b81cf5fae82627e5151ec9a4be1f3de1c0bd8311f7b69):1322
-en.json:/people/freestudy(f97e9da0e3b879f0a9df979ae260a5f7e1371edb127c1862d4f861981166cdc1):1014
-en.json:/people/edit(464c4ffd019e1e9691dcf0537c797353ef2b1c1d4833d3d463e5b74ae4547344):1000
-en.json:/people/create(ac12a57aaeee152f1a939b0528f8c76d468747d87f667a17baec52a984354043):1352
-en.json:/edit/title(936a161c39314b0540fe7415d2ad16cadb631568c4ebc57d6cff60f14edc099d):693
-en.json:/edit/cancel(19766ed6ccb2f4a32778eed80d1928d2c87a18d7c275ccb163ec6709d3eb2e27):592
-en.json:/edit/save(91600883995057429d5f61d924d9ca8fdfbb1116bab4415691a2bba256fa1169):1033
-en.json:/edit/confirm/title(d3c7803ca2152f0b1b18138b0c120db7d90d2ab9cc0f8f6cccbb5e0f06bdeb26):4679
-en.json:/edit/confirm/description(635f4f3dc55314358570875ff13033a08182d1b685c4e33eed33e7c93e9011f5):6122
-en.json:/edit/confirm/summary(0b580c8eeb16aa7ff52cd3db9227b3ad2020b942aaaa344ce39a0027ff3de8ac):2058
-en.json:/edit/confirm/followup(70710900d20e22475366fe5dad61704b178c85e99b4abb2919059e3f418a8789):2544
-en.json:/edit/confirm/button(859390eb495b2ead7f05f0f799546c71435b2db31dbe082adecc3426fffc3391):806
-en.json:/edit/alert/title(af6439e3888f1271ae948e2ba34e893bf2f4823ce9e3484360b09070686e5ee3):2531
-en.json:/edit/alert/message(1ff11f28f9a31ad4265734f4f1aefe64b3b7deb060594ee0894f530e9b1b6001):5610
-en.json:/edit/alert/message2(cffd72902c396fd8b8f42e1a06271b0b7e79d7bf11499d82320b2f40b20733bd):6097
-en.json:/edit/preview(65d902f54e6aae23c149b282341759793d40f228073d5a0ca242a11070d6266c):1201
-en.json:/request/title(0c199bb97e1bfae64242d7c9cb5e812752c31af1dba5c2abd021b8b2a03dd5f7):1166
-en.json:/request/type(3e3b1d8675ee9156086385c0e80d0351310d5d3d8d3f92b78afba69320154bac):851
-en.json:/request/types/metaupdate(679771e0bb865abab7f4651b8ca2678eca56a1d986bad0c52c8dfe43a9b31274):1969
-en.json:/request/types/add(a93d346c05cc73590e8144648778c6e63cf1caae7273080c90e458e678e96513):745
-en.json:/request/types/addevent(5651faee9626295e72e71d2f2c7a8ccdfcdd14d82fbd472337e4d9cb34d37285):885
-en.json:/request/types/profile(c77ac5fe52a4022d65b31a1a2b2df4edce1e33348198a689a6444db865c6a338):1356
-en.json:/request/types/addalbum(741bf07f049f00cd708499ead464af76f350dfb09dc492a2d9eeb28e0a166f4c):1258
-en.json:/request/types/rename(2790f76793f74b3ee9626b317ee257d457a80ac72ad173dfa7402fdd3a5d6d77):2156
-en.json:/request/types/profileother(faef8cdb44257593f0c552472db41ddb9de23ed6f7cb3363963d8f00104e5de9):3285
-en.json:/request/types/userreport(bd377a49b4c5d4e72910d0349ea93215a7aca23871a07570a6e5aae3de2b0e73):1528
-en.json:/request/types/userpage(8e615ff1f6f4e60607d990a3a1df2bcfc1fa128b1cbd5fd97fcb02545542e0eb):2926
-en.json:/request/types/article(ced3137877389c75d18cf3a46a24cc9c77e84d1acbf2fe9af86791f0ffe6b705):1578
-en.json:/request/types/galleryupload(3247e0733492683436ee553a336deeda8c42950727dee9fedd31fac2f8584669):1971
-en.json:/request/types/gallerymeta(eac4ceda028c1d8111bc4a468cb5911b94fcbd3addea717a1c895fdcecf7cf48):1410
-en.json:/request/id(bb515ac5b59574b7ab7fbd4591650eae89de6c21e6dc4c0f3e9ebc765070f9a2):1619
-en.json:/request/description(27115a2e1ed4504ab3ebf521ee13582ae15c1946de219e0123e4b999ee6824ce):4401
-en.json:/request/submit(18e29113b40ef775688b9c925fe1bdd189b15af626c2d8c98fc341ad1bc3d957):1639
-en.json:/articles/title(b14ac78a46e90b7137f90518d51ce3677cf078db540d60d17097b6c40e25abf2):520
-en.json:/articles/empty(d9a45ba7b6b279b36f74ad94667bf058b951a6c728ee2336ab143e10f7328943):1966
-en.json:/articles/rename(7d5fd95f775f2ce72a707b5ee1671b83dc26d4c237a142e5c47f84baccf89602):2555
-en.json:/articles/create(59649e5460593f0a8d9ec7c61754090e6e4cd8db18d1e366cd2bf178a58b04c2):2631
-en.json:/alerts/title(f62e9267d196c761f503dbffb17b9a52c4134de48b9959754c4bd78a9ad053b8):722
-en.json:/alerts/unread1(c3c6219259e8ad0328cf912ddc804e58f0b6ea5e30509e77a886edf66c3d219b):805
-en.json:/alerts/unread2(c3c6219259e8ad0328cf912ddc804e58f0b6ea5e30509e77a886edf66c3d219b):1374
-en.json:/profile/title(d696a35bdd1883da07a8d6c41bb7a3153381b23aa197629ee273479a6eaa5a9c):2740
-en.json:/profile/options(d0db8b5e364b6989e4b8f38a2b3846b87d99a51c1592ebf35d21cc66405a8e39):528
-en.json:/profile/report(82016f1f318751d17cf2012c8eb1ca986c533fc6d9c95f84455309a91c8c2198):496
-en.json:/profile/report_male(82016f1f318751d17cf2012c8eb1ca986c533fc6d9c95f84455309a91c8c2198):832
-en.json:/profile/report_female(82016f1f318751d17cf2012c8eb1ca986c533fc6d9c95f84455309a91c8c2198):709
-en.json:/profile/request(cb5d9f9878037cd9b3e044179289cab8dbe1b81945991910540939c4779879f3):989
-en.json:/profile/since(e57eb6e2d43cf83e99479c4e0dc0ec4bd148b3d951273cf55cade8c27d762561):889
-en.json:/profile/since_male(e57eb6e2d43cf83e99479c4e0dc0ec4bd148b3d951273cf55cade8c27d762561):863
-en.json:/profile/since_female(e57eb6e2d43cf83e99479c4e0dc0ec4bd148b3d951273cf55cade8c27d762561):632
-en.json:/profile/last(21fd79c7de52e1cf63f8cf11f8a0eac6965506e09ba6e406e1f6bf40a3b5ed52):912
-en.json:/profile/last_male(21fd79c7de52e1cf63f8cf11f8a0eac6965506e09ba6e406e1f6bf40a3b5ed52):364
-en.json:/profile/last_female(21fd79c7de52e1cf63f8cf11f8a0eac6965506e09ba6e406e1f6bf40a3b5ed52):468
-en.json:/profile/pending1(d77eb73aa225532256a4d8e8e5928f4195fba9a996cfa7cceed96f189d566b43):1152
-en.json:/profile/pending2(b2a00d8c0f9e838af79dc3fb1e2f25b5f2a18e6982d4f4b49e76c2dffe9e82c4):912
-en.json:/profile/pending3(1ea442a134b2a184bd5d40104401f2a37fbc09ccf3f4bc9da161c6099be3691d):797
-en.json:/profile/old(cba06b5736faf67e54b07b561eae94395e774c517a7d910a54369e1263ccfbd4):2643
-en.json:/profile/empty(562d5f81f93372ab5f3eb007bc37e060936015d3aa26bd63383dc70a021c26fc):1746
-en.json:/profile/empty_female(562d5f81f93372ab5f3eb007bc37e060936015d3aa26bd63383dc70a021c26fc):1504
-en.json:/profile/empty_male(562d5f81f93372ab5f3eb007bc37e060936015d3aa26bd63383dc70a021c26fc):510
-en.json:/profile/editor(528d89ad72cba22e2d9d116befd3bb96a519f06b5f1147a2348d29fa6d1a2cbd):786
-en.json:/profile/save(defa65f6991a1c549ded69a6e5f5507d588be54dc4cf4cabf02248beb9586b0d):502
-en.json:/profile/confirm/title(00091087e7f9afed2d74861751e4ac28cb7dc6c195065abb4f9894f5f5fac7ee):699
-en.json:/profile/confirm/description(2cb0f92c6b854b74a2a4e748b237a77e2d84e6374b264170ab9db42845e789ec):11660
-en.json:/profile/confirm/followup(e1886815bcd8f409ba060bfd287b34b4f5d5f0fc1765ed0dfbd80b73780fde80):6053
-en.json:/profile/birth(0822963756ce70ec17b89df33f24e1199bb7199a2e41819fc35b475a3509762e):618
-en.json:/profile/birth_female(0822963756ce70ec17b89df33f24e1199bb7199a2e41819fc35b475a3509762e):520
-en.json:/profile/birth_male(0822963756ce70ec17b89df33f24e1199bb7199a2e41819fc35b475a3509762e):402
-en.json:/profile/never(17de5b9a9e66dbc903c8a27637b619796ec1952f63ddd90618eab3aff849862f):795
-en.json:/plus/kiosk(7212624de193aea91e3bb5280f9b7476eb66e864eb7faf57ab0f58884ec99ddd):6233
-en.json:/plus/coins(62f014cb316258f89133bb263f1fa74f85b308430765a403fbc87e20b367c959):679
-en.json:/plus/intro(a121d964af1ef67d9300056c519af65517c50cce0cc08ee26d6bb41f98081e3f):4035
-en.json:/plus/buy(ea7ac76b71ae6187fc4c5818e401cca33a2305b0cd9280b2cca509d8163597d3):2441
-en.json:/plus/terms(f3a0c6736a03a84a3adab6497102e42927ef7520bb72449bbc63295f73aa9097):1867
-en.json:/plus/change(b006ced07610f73ef4acf98deacb381731c829c7bddfb5c40804e6679121b369):778
-en.json:/plus/notice(118211e936cb411532dd5373213c2a922939951ad87d6f6282530f687277ac75):2732
-en.json:/plus/perks(cef43d73d403a58ee51e1c3c3020a0c5102fc5eb2110077f8a8902d646ffd43a):2776
-en.json:/plus/perks2(7efed721a7ad84f0beca13f01180da8e3eee5dbe9b54880bc6f2b69d1eb8304e):2649
-en.json:/plus/list/0/title(43382b76c87695f406262c949aeb3114bd52657c7f7743f2749302fcc035a69f):733
-en.json:/plus/list/0/description(81847114b01b9496d2423f65ca296ce539fb02ed4bab87d4b2cfa0bdf5ecf600):8689
-en.json:/plus/list/0/pretty(10d8be2c10527d5d18c4ba2ff9e6ccf13b60649579b1cbc77aa7d44fa89152cf):1361
-en.json:/plus/list/1/title(970de994a0f9f2d19079ff8903ca756bb2f0ffa5b0f56a6a7c0fe056290da39d):968
-en.json:/plus/list/1/description(b6d0302533e06b366d8f05c170a26722ea484a70c68ec75575c0764574501b9d):8170
-en.json:/plus/list/1/pretty(25dddcf862a3f469dc80c2f16a5419e05f9729ccc683317f0b0551f03f5559a1):1419
-en.json:/plus/list/2/title(d30cbf042cbf654bf82b532fbb0121ad6c82cefee5f2fa0a9f2e0b21f7ce474d):765
-en.json:/plus/list/2/description(b3aca2dfc9cebade17d459d10f7ec3748122e2fff0e8cae7f1b9f0bd47c91bb0):8098
-en.json:/plus/list/2/pretty(f8a406a0f3ccd2df5ac98acba7d0ac878d8ff1803c620ffc19eb7a2fbd7325a1):1867
-en.json:/plus/list/3/title(d324603fd2c6f9075a6902a45f6ad1812e6532838c2bc715a5b0480a45fdc43d):798
-en.json:/plus/list/3/description(9ece8cfb4a5b5170ca55a9aad6577847f032823392d0507fed5b9ff2d33a1bf8):6546
-en.json:/plus/list/3/pretty(26e0a4082e783e838c8f79a151cad72951f521085a48486e21d62d4c1b910de6):552
-en.json:/plus/list/4/title(e9e155265a113bcefc4b3c707b1f1312808cffc41a7ba7ea9d4280a850062d81):686
-en.json:/plus/list/4/description(5c187e37dbb8f37561f4ac9fbb13dab088c798d9b144bbd5258d7af997e2db2e):4950
-en.json:/plus/list/4/pretty(35d6df18b4c7ce0c47c9c02d9eb6b919ec85a1b8ae666c78520ce5e7bc7987db):1894
-en.json:/plus/list/5/title(d3b2caf68359974842fe33b45fce385990b7f983cdb551edf58d73c904e4f66a):2202
-en.json:/plus/list/5/description(b4261d74ff50dab58ee5352720c03f4f1c733c5ba250eb3cb6e373a0488391c2):5428
-en.json:/plus/list/5/pretty(6bccfc8358c88496eb5d712d761b361199a7217b0567a69217f6860fc0966c75):972
-en.json:/plus/list/6/title(e13cfc58cc090f36e934419dad168ac96e06f106d5c374a25b8b8ce7c5578ecf):760
-en.json:/plus/list/6/description(93fa68487b0704434626cf0f2f2413e2df59a0a00da086bd1ee4d85a7acf4a44):4939
-en.json:/plus/list/6/pretty(e2ebfac24bb9751cfea78539d001492e7599f6b403d684b4e054098c32dedce0):1032
-en.json:/plus/list/7/title(85b8160d7bb9924ddfef92f027bf13c293d2721497654672430d9904eb6ba67a):775
-en.json:/plus/list/7/description(78ca1214fb4e30f6b96c1e35fb6172b4deb3e1109b5cd7f1b0b24e56a98bbcd5):5782
-en.json:/plus/list/7/pretty(94e691e9a540c9e89d1da42ae68f9c6e76822eb592be125d51de35d56f9a11f9):675
-en.json:/plus/list/8/title(f5b04bcb34da95ce631f1f36dfefdd859a4c11f426aa20bfbc57cf5c0b6320b0):592
-en.json:/plus/list/8/description(722ef755160e0d0ff4c221a920f80bea44f93dff9d999490b9e6de1f504f7bf5):6876
-en.json:/plus/list/8/pretty(e20b3036633d74290ff6ae0456736cfef7baa036a03df83d131962129ac1a1bd):1096
-en.json:/plus/how(4f5e4eb19d650931530d7d44395889fa43be7b39abf476e5c1e48a1f0657c8df):837
-en.json:/plus/action(31fbef162594de01bab0cd525c51f74de7bcb15063029fa1a54b2cf5944c80d8):480
-en.json:/plus/online/title(d19efe9e622f42b09f8c51079b77065d61d31f836aace356a289adbe7f8c5ea7):571
-en.json:/plus/online/description(5627ae1917b7e204097e62867822f96913711ef0169e9a80b2773ced3914ab38):4474
-en.json:/plus/code/title(aceff562b45880106c544f36698cb653189977a18067df1b3794fb029876da3b):775
-en.json:/plus/code/description(1b1fd4d9e23cd099be24417f74b8ed647dacb49b89438f4687a76ca4cc599590):6217
-en.json:/plus/trial/title(af3c6f381bbcb1d5509a745dcd4034fee553e0f1af2db891ec60c5fc0ce91086):969
-en.json:/plus/trial/description(c9e08c6ef7fb15cdeb75d4b199317113df72d450bf2383a7c52ccd581bdd6148):5508
-en.json:/plus/notes/0(89aea7d12059322a35dbcd1404d57b1a7c1597b8834c4c2885637c60f2137a25):5495
-en.json:/plus/notes/1(17a334e9556277a14e94733c628073f536e9b8defa0991dfe1912ffe862f1686):3974
-en.json:/plus/notes/2(07a739a0b6beb1723e0eb1a43feec16acea492ef1d3ea666409801c8968cbf9c):4943
-en.json:/plus/notes/3(13cce98e06f3b7eb44a461ffe55b1e4dc00336cbf40e45b474350cd21e879fcd):6701
-en.json:/plus/notes/4(199be03da703858d93fb3beccd1d66212ec4f8206b1fd71322a64d7f5311c88d):4722
-en.json:/plus/notes/5(5f781c6fe02305a1f94ef0305750f7de9322ca50e68b93e13c33674824940f8a):4104
-en.json:/plus/notes/6(9f5781b82a8e32efd59104e62efd6bcfd6787595cfec1eefdde69a3e11ffba24):18350
-en.json:/plus/notes/7(779d057a31b092111a64b948f96fca2d260dfbe7f2f2be76addd7da28156967c):6036
-en.json:/plus/notes/8(29ef924a5c2d50a8b728f59ecef8140c4d7e2246631ff6d42a0dd79a1795dd12):5509
-en.json:/plus/notes/9(7e3602824f4bbc8874c210c63757fa53a0ae5e38a6a15cef456db4c2898b17f0):6149
-en.json:/plus/notes/10(27d3a42c2f2b164c53a4ac0831c0ed58a638f22937599da34dc38c46a7a683ab):10638
-en.json:/plus/notes/11(72432a7e40133f689eaeda71053fb0cd1992c4576130200f2602f3bf707a29d7):3901
-en.json:/plus/notes/6(ac68ff8edc4a6fb2bbc1fc2411046f3cf770ef1b5cbf0169a075d7328a050cb5):1467
-en.json:/plus/notes/12(3e314a08facd0dd8e428e0c7637bff2d0ca67b8255ac5901323d7c18d6365fa3):5641
-en.json:/plus/notes/13(57ff15ce4f901e72819e3ec95d8bed0d9e13dd3f83876a6ca2eecc0fd4bfdd6f):5341
-en.json:/plus/subscribe/title(de42764862bef66639c751406bb893fa9b0dbc6ba4438ee3b4ce42deab1e18db):915
-en.json:/plus/subscribe/title2(9fac028c3329a29b8abbd2cb62e477780afdd827096b8024fbfcb29fc8d3a0a3):648
-en.json:/plus/subscribe/base(5eaec43f3c8b5a914d3611b3268ae0a6bbc5bbfc36b1bfac46102cb634c729ad):2743
-en.json:/plus/subscribe/down(d955b7e8fdb14a071c0eebd39f710dd252254d0966eee5ce6addcde4b294063d):8952
-en.json:/plus/subscribe/up(7ec0261b8e8aa3e0b1affde5f18ca1930ae73d81a5303d667aae9ffd2803cbc7):596
-en.json:/plus/subscribe/free(f411a1fb62758b4c54690d0a702b4955b54dd22115416fa7b1ce51b4a084818d):572
-en.json:/plus/subscribe/help(583cdccb83ad43dfada76c621f2318eed845932d409e3e7ea40cea1f45119daa):2238
-en.json:/plus/subscribe/current(4e761d178e1ab585436ad24096bafa1aaf1b0598228cc615ff878835b9ee8273):794
-en.json:/plus/subscribe/coin(772ecadafc7fc7b87bac8eb8f6acd7f6fc428a328a4c87e2d405409701d186a8):743
-en.json:/plus/subscribe/monthly(5fddb6c521bfd3243da62bcc82024baac3ae930d37600fbbe3423ba617ca6159):1617
-en.json:/plus/confirm/title(bca057f73c46cd74bed50027d9da77e4fdc8f71c4db4118aac7c104fdfbb8c84):1550
-en.json:/plus/confirm/up(a23c67e56306bc3a9a8cfd601a42b80379b985a3d2b43328c55679ac5d984430):1822
-en.json:/plus/confirm/down(4671a974553a9b03dcacf6c70863705441fdd9020cb7c13d77880122ee6863bc):1424
-en.json:/plus/confirm/cost(4234b6c60d0e5d680e499e8101c143c749597bd33aca2ca59af0f5c099dfe605):2045
-en.json:/plus/confirm/balance(ad19a7c398eaa38309f776ea145a56856eaa468c6e5968a89bc1b4bb6e001352):20066
-en.json:/plus/confirm/missing(c9d35f3a012a6ef817e84cf0d7447f340e8f89c585644334e5ee4f84bbf7eeab):6063
-en.json:/plus/confirm/renewal(d449e05979de60cb11d1f5d270bc5da7e701ffe9fabebca3c2745e65b6bd65d2):2241
-en.json:/plus/confirm/norenewal(145eb0039bb9701c476583584c484ed3251c444d837084729862b795fd8bad02):9375
-en.json:/plus/confirm/proceed(dbc37c68f44f6ba0e1236a7cca7cc1fa8b74f14c8914ea3ac7f5ae16aabd0ba6):727
-en.json:/plus/confirm/up2(7fef9479c8bc5a3c86891cb82969cbf2ffc73c7350366c82286345d8292eebf5):872
-en.json:/plus/confirm/down2(f76e03f51e04c44c14462ee21cd3a18560d9a66a445599e6a695b3d4ed9b6ce3):324
-en.json:/plus/confirm/email(a136ae76e0f512bb8bc9bcbff69349d832091658e1df8858f605109814193a20):2670
-en.json:/plus/confirm/refund/0(63ea82367063caf1767b78a3be624ff423cc8cd9bede0b68d3a06e7ce6774a05):710
-en.json:/plus/confirm/refund/1(a76e2fce575d1f437b45bd4329f3adf585d138cafbe7a7959ad33f654088011f):5321
-en.json:/plus/trial1/title(d5b21bc17736aaf012dabde74b822b4f270d3b2866b291f57283d7ba4f466274):721
-en.json:/plus/trial1/unavailable(992ad3572a186bfbb2c3655b3b2081324fb5a9d32de56ad2249abb6a6bbd15f2):5659
-en.json:/plus/trial1/intro(6682560644abb7540473f6d4f1dac9ecf9572dd81181e3e9864474f9ea1c993d):14821
-en.json:/plus/trial1/message(5a9ac48e3181002e841e8d19f84543efbfee105aae973e7e03df2236e4eacc2c):10205
-en.json:/plus/trial1/success(cb3abc72b9ee3509dc3b4771836c3c6fdc2aed69b64c90dc3e7f9cfae9c26c17):6447
-en.json:/plus/usecode/title(d0159a44bed14c2a5c9e966c731b0ae0a6f16d31543f87f683a3df2a37ee0b5d):982
-en.json:/plus/usecode/intro(b41a606913eeedf1af6940e1baaff5a1e44183dca78f355d01980210bbc7191a):1145
-en.json:/plus/usecode/placeholder(0884e62b21a65d0c9551b5c5a6a607be9e97dac32b9b47b782509773f73e2fc4):1197
-en.json:/plus/usecode/continue(31fbef162594de01bab0cd525c51f74de7bcb15063029fa1a54b2cf5944c80d8):869
-en.json:/plus/usecode/used(ec026dab729cd27c7501fbf4dfa3df466ccdd4b341e991380e3c5dde8c46d0d6):3719
-en.json:/plus/usecode/use(371111bf402bc397a6a1ea4d2b86dfd87f8a064aa7fa8fc008c39787287a9b8f):639
-en.json:/plus/usecode/usable(01b3b53ec24f9fbcaaa95999e35079bea1ef4ecaca727b96555af3ff8502be3a):5543
-en.json:/plus/usecode/success(a111e8fc7cfeaaf399e3ed8a13708277e50c10e3fafce436d4ac02e7c67eb114):1758
-en.json:/plus/usecode/me(e1dcb0da07825cd4c88b1d80e3d7cb529c982164d779f8b9e1a0aca6cdbaee53):1807
-en.json:/gallery/title(352cfc749e55222e135ee48e67631ba33f834d936c137560fd39063d2e57e5cb):755
-en.json:/gallery/empty(b9e96ef224135803a62cdff231c5d57f357136a1f71306abfb28b6ed3e4871e3):945
-en.json:/gallery/upload(ffe4df6c7ca600c4761b70965d53b6217a83e5d01337d9a384734662a54103a5):675
-en.json:/gallery/uploader(1e5f4e9b5c455b2bb26be38ea42702eb4995dd16726c0138d2edea218b4242da):735
-en.json:/gallery/create(04d36b66f1eafb1211e51d88149ac1b67bf7a2b24413ba4784edbcd29ab0b9a2):1082
-en.json:/upload/title(261697736a7853484d030eea50d906925c5d2fd15436ac8fcf25c06e39a61b46):662
-en.json:/upload/select(8937bab530c8f0be3748eedaef32686464e136695b4572cf2e1aaf46a243282d):2410
-en.json:/upload/confirm(c8a2b02f0fd2a0d0ea46823e3b816fcbd08ab9b54f8e0efa212fe90c8a7c510b):963
-en.json:/upload/notice(d440704587d6a088fb53bc10a15b3e9f988492486e6a47f46853ad6fff88034e):5650
-en.json:/upload/summary(deddbfb6f9b5d58e39741dca038a8881a5768d99290f9b46d50c175ff17a0cae):2344
-en.json:/upload/followup(c89f1ccfcc1a0d05e41b55396e809ab0231358c5cc247f937a1959298a9783c2):2646
-en.json:/upload/dialog(3fdbc5b1d941021bc09f1ec229142b47f88af102fadf15dfd36abba069fc806b):577
-en.json:/upload/error(8eecdde079a9092758e271d5a21f28eadbeedb35716353e07cfeb33f52e8005c):541
-en.json:/upload/errors/unreceived(2f64e94d1d018b9da62af5fa0080d0424515a347b6e83439f89104aae78c8eca):1118
-en.json:/upload/errors/internal(7eac3f364d45fe6029115e4b645b372647b1d30cb29e68626095a6533a113b22):1351
-en.json:/upload/errors/type(34f2fc0c090b3f5b065710649fcd652b504a26e85358e0a73a96ab8dfdac1134):1874
-en.json:/upload/success/0(ff068f9c8efcf6e54d4d91cc2fa96f358c2266ed01fc9a0cc9fd761057f7c808):637
-en.json:/upload/success/1(d00b98838c361e3e2e2921bd3cc137bace8aa3acea0fe80af51ca39d3449c9c4):1756
-en.json:/upload/success/2(a6579f45acf0cc800f690ee85369e95b74f44b1f40f5748cd1b56f90403f1121):774
-en.json:/notifications/reject/title(5eb8cbc5bd8621b250d7d98448cd2c22416797354bb11d437fdd9efe9f13c2dd):1194
-en.json:/notifications/reject/message(3c318fc8a8b8126fdf4aee67ee09efb652a546c8ea01d47cfcee186137f2553c):5708
-en.json:/notifications/approve/title(5a3872a73410a03ecbc852f4f574e7bde48d1572077ba516da7b6b4fd46b7a44):1126
-en.json:/notifications/approve/message(cdacb7bc9fb931f1a8e11916ba04ef303df79fd821e4dd2c72f9b72b203c66d5):2923
-en.json:/notifications/renewal1/title(9eef14d66b3682d7e66ec4a43f3e15dad6bbaf2bc41aed6047599dde7c63687c):1525
-en.json:/notifications/renewal1/message(a0904f01d1f04ef9cb2f0cc013e4d65ebfccc9ec25331ce2a139164e2ad8b5a4):4228
-en.json:/notifications/renewal2/title(6997bfbb7106ba5039c664c5b8804e6fc636d0d1288a083d276a04727a00dd94):1460
-en.json:/notifications/renewal2/message(d61a959e55f7a3083f80eb40a7150a16ba0c07d9bbc5082d36b282547c15393b):4371
-en.json:/notifications/expired1/title(77896e347849d8644b1a52a2dce5e954eddf7d29c38bfa5c7a8a0ad182bc6aac):2401
-en.json:/notifications/expired1/message(50956fd3c2292b69593fc8711e2a9f5f10483cf0cf4a487feb2e989417e0588b):29693
-en.json:/notifications/expired2/title(172f788bf7809dc0a416091d608b3b1a9212e1e5ee99dcb58091613edb273712):921
-en.json:/notifications/expired2/message(c988ef836fc161f54cf9945d4981acd9bb6e141374f58f32122eceea7d280edc):21449
-en.json:/notifications/birthday/title(6468360c8d1a8c8da7e8530d6b26e21e5750a8b99b551ac86ea913aa00927131):1504
-en.json:/notifications/birthday/message(d12451ce7ac3609463674415594dcb7fd5c5fbeb35828655f9c3829f36c87d68):1855
-en.json:/notifications/block0/title(f70bceb0e77f73c6a1fbd219035f5a8d158370a762c8dc3e4e609a1c04d76059):1100
-en.json:/notifications/block0/message(e485513127a462873c7aba92217587bfb4ff1ba99604731537df71888899f436):2819
-en.json:/notifications/block1/title(d4a5415ed3f8a0ade68471b7a213c88a265a19dcbeaf9ef5fdff710b7d4553e0):1534
-en.json:/notifications/block1/message(7d2295f6390b8c653d94e68d4be372bfa16e240954b331e92cc565c168552191):2638
-en.json:/notifications/block2/title(7c68d3fa8dc2c15671e97231aaf72b7322953eb366eed94b7488a41c224f3432):1359
-en.json:/notifications/block2/message(b84adaab713118d3aee4b8a0f95214a3f55c7854eee3d49f6c72225e0a399aae):2696
-en.json:/notifications/block3/title(5051d560161065578f7fe4fc3eaff4f63ad2a977366c40bc1686c7e2513ff86c):732
-en.json:/notifications/block3/message(b05693113b50cc3156f92e622bda3d2a388effb81016105177cbc5bcac9662e6):5188
-en.json:/blocked/own(1aea90b5110a202bd61a5f9eaea24a17d2b12e6c82fda1d7b1adee2aa9261fa7):10167
-en.json:/blocked/edit(b5515fdbc94f9caebd35d26a16605c85a4c840110644be7b1969269b1652e862):7051
-en.json:/blocked/request(868cf0a5992d2289b0d34c4b124e849ac50eef001c16127eadfd6c3ec03dbfeb):5144
-en.json:/blocked/error(2a893d3a5edc746bc7940a49bd720a4344f7488407d12651bd86265884c70a24):1056
-en.json:/blocked/login/title(b5fb51dd3d8ff7d87b997469d4893e53c94e39d955115c40e6d1f6a32dbd5e5d):1305
-en.json:/blocked/login/title2(43c1583a03958577cc6c26ecc8011b8bcd088deff246207ecde91b63a4ff1fb1):691
-en.json:/blocked/login/message/0(082313556ccd23d52e7c868f4a1e37464fec97a5b7198aee1356bc0e6d060607):809
-en.json:/blocked/login/message/1(6ef1ef18e3973bb446174d0c3deeac97f14d526e1defaa5e22de98105c233bed):6141
-en.json:/blocked/login/message/2(1a0ce8ea4008dc53e87c12a96fee2589fc27eb74e9326cd993bd630adc84ba56):1834
-en.json:/blocked/login/message/3(10a08822e399091ca25182d141b1125e1edf466c3d7720423247eb4e9cb944ef):1823
-en.json:/blocked/login/message/4(df9d42c319c945ff57d0552d65b03aa33d388df2136498b8393cfc6a7120c190):2294
-en.json:/blocked/login/message/5(baca4eabc7dbb1d74183217b0c4e79053137111b33eb6a0bdab54b6e5432e2e6):2001
-en.json:/blocked/login/message/6(a2c1fe18883085a65e9740d0f49a081451c094a0c7837d00eb94bbd371ed2b09):2382
-en.json:/blocked/login/message/7(adeec947aa67e356a6d70b181cfd82a36a0daca5a998756c75e20a30129f2cd0):869
-en.json:/blocked/login/message/8(fa9424e52071eea00c7993de6bf76bbb4c490b236de0968d371034aec53de7fe):1940
-en.json:/blocked/login/message/9(c01242fd6c6eb23525f1f22201200f1e8941c96cdd884552296f8dcd33b2a1de):16008
-en.json:/blocked/login/message/10(10da442e29c2141f56b8b2b693a35a078e34ad815431603f5025c64af192c9b0):7330
-en.json:/blocked/login/message/11(85da4c43ccb1b6e70dfaa043df214d42cca1cd864bb0b88bf870e29f1c6c1f5a):8711
-en.json:/blocked/login/message/12(4400dab05d36f7cad4038e7d9464844e83eed43b723eb38e161f5a95a1577399):7808
-en.json:/blocked/login/id(e069bb354029fce06716b2bb4e7a626d326c810db5c7751166ab1c831e437b76):1829
-en.json:/blocked/login/date(f63879fd691e40d3a659eee4bcd6177d09be9d8957d0e8a2cb8dd8b9798a3045):2171
-en.json:/email/reasons/login(9a02b581b9c4aea79eebe3a38b3e042aeb932aca57227e3dc3c34ab9a303a128):1992
-en.json:/email/reasons/login2(a0e4be17d8ceee31311432ef63ded1534971ba3ba7ad28bb377ce68f987cb8ed):1042
-en.json:/email/reasons/alert(f0bbf6391795ef9c9ff140a40315fdf2956ff7f624024cf10a0ec16e9459c09d):2715
-en.json:/email/reasons/update(d4b5a64df6e4bb2c0d522ec45f127a6c352a5cb784712f4befec3cb04e143ce1):3215
-en.json:/email/code/title(aa357695b826c5e91abf87ea89e8d9bce232bb0c3c54dd68469e7adf9bbea8be):1740
-en.json:/email/code/message/0(dafe7694460f4e37b708f5134f2f7f759cb997f9cb612d6ca566dd6e6a34353f):757
-en.json:/email/code/message/1(b7c84c24ad99cb4cefb4f9f368041b03167bc331926603d64cddb2b7d104b30a):3373
-en.json:/email/code/message/2(4b070a58449a6cc75d282d600434f0f8b6cc7b7b6988720930b8f71150cacd3c):3496
-en.json:/email/code/message/3(07501dac0861db3dbb9fb34d7dc05eaeb37e9e03267da5997422c67dd250372b):8344
-en.json:/email/alerts/title/0(df15e94fc4d38319a2e49ce12bc8c075b3605cf36dbb96a572ce93071c4381ed):1493
-en.json:/email/alerts/title/1(f4a44032310183cc463e2597f1a03654b1566e0939062e25f2d506dd56bb698e):3000
-en.json:/email/alerts/message/0(dafe7694460f4e37b708f5134f2f7f759cb997f9cb612d6ca566dd6e6a34353f):650
-en.json:/email/alerts/message/1(12282af741a4ba08208703da88a7d049ebc92528e9ba020d34e7d4be4e811026):1211
-en.json:/email/alerts/message/2(d62380e06293eb6eba546ebe6713777a786c863ea5081ba6f3104406dca711b8):4352
-en.json:/email/login/title(0dd1984ad0a2647e7f5fd13e7eb8c91eeaf7e7ce109ef0a76d3cb9bfa7abe52c):2525
-en.json:/email/login/message/0(dafe7694460f4e37b708f5134f2f7f759cb997f9cb612d6ca566dd6e6a34353f):695
-en.json:/email/login/message/1(9ecdb4d13cd4758ded2ab0b9048db45ed46bef35d17b682de3dd26c3f7117b65):3935
-en.json:/email/login/message/2(3ca83cd821f8f206ae80b6a15bbd4de6bb2889302e7b786ed9e8c33a515a330f):3777
-en.json:/email/login/message/3(668f6ad3c06da7e98c040f264e255abfefd22659d3b5125bd4d5c722afe2b95d):1251
-en.json:/email/plan/title(13411822caa4cbf37d470ee8734c38063c39e08e5e38ec3f96a5a6d9b9181ec9):875
-en.json:/email/plan/message/0(dafe7694460f4e37b708f5134f2f7f759cb997f9cb612d6ca566dd6e6a34353f):732
-en.json:/email/plan/message/1(36e0a80fa5500aa19b5357152a3357b66ffda852e8f5a6d95cd5fcc8b932205a):2430
-en.json:/email/plan/message/2(8a5b8afbaf8118ef3225a6f2e4197f9f353f3556ca8dfcaaa02a5b2e5c7df9b5):3863
-en.json:/email/plan/message/3(038e72da2e80e6d6c87ea9a81477938a032b797da25059918e8f59b06bead741):5084
-en.json:/search/title(49c266baaaa70981ea188fa714d5c40cf13830d786a861c9943ae0d26a7f3fe9):620
-en.json:/search/placeholder(a2615301cf522c1b7bb69533c2041ba2d3c6856e777546ba7e16b42dbe4e4bfc):1256
-en.json:/search/submit(49c266baaaa70981ea188fa714d5c40cf13830d786a861c9943ae0d26a7f3fe9):677
-en.json:/search/none(7ecdbfee6d1ce28548f6ca630810986ab070a0ff5a284374daeca97da83676cf):620
-en.json:/logout/title(74690160058fa7ca5632c5b25058b1caf04f41d348ff78ec1471c0708bc32490):575
-en.json:/logout/confirm(3a3c30156bb9afb982e93d699fce0631faefd0c59643b3e56f9aa87bb752d1ae):6976
-en.json:/logout/yes(f36df1d4cb2a96874650a6f04ba9703a915951b6506a953de4350d591891aad5):955
-en.json:/logout/no(19766ed6ccb2f4a32778eed80d1928d2c87a18d7c275ccb163ec6709d3eb2e27):894
-en.json:/requests/title(9979b415083238f7074ec3036cce9f5f362d1e125f265cf90fbe93f2240bfc6b):2101
-en.json:/requests/on(b8d31e852725afb1e26d53bab6095b2bff1749c9275be13ed1c05a56ed31ec09):497
-en.json:/requests/date(b04e5ea201bb040cae53f693f6a38a3e00b62da6039ca248fecd59b7fc842894):465
-en.json:/requests/cancel(19766ed6ccb2f4a32778eed80d1928d2c87a18d7c275ccb163ec6709d3eb2e27):419
-en.json:/requests/confirm/title(5a0551a43cb3afc414c874b1e021ed769d4cef3de5d7cce42e6311cccc33c8bc):499
-en.json:/requests/confirm/message/0(195d7a0920f8e6e814e7b111f957d35da14a673542ea7522ee5dcd44d1c4c35a):1267
-en.json:/requests/confirm/message/1(1b158e2f46186d07b5e158035ba957736b7de907696064bc072fe7248c6fac15):11165
-en.json:/requests/confirm/yes(e2d0a54968ead24efc0dffa6ac78fc606dceec34a0f586177a74a54cc2272cf8):636
-en.json:/requests/confirm/no(19766ed6ccb2f4a32778eed80d1928d2c87a18d7c275ccb163ec6709d3eb2e27):1064
-en.json:/requests/none(0d856950f4ba550cd95c55bb50f643c76191d046adba3279308a1a983c18c122):1082
-en.json:/content/title(47bd29075f8b8019f0beec6d86beda7c9bf67aaf05053dcbe0b3bcb63968517f):745
-en.json:/mobile/title(e3b8b5552e2086cf2586b0a06ce7e74aeb26a5da2f00cf1416ad04559d96ea57):1008
-en.json:/mobile/profile(528d89ad72cba22e2d9d116befd3bb96a519f06b5f1147a2348d29fa6d1a2cbd):600
-en.json:/mobile/alerts(2f11c02c4f0d085038ca83201afedb0f94d6caf6bfa56af2ec0306c0ce31cac6):1668
-en.json:/mobile/subscriptions(9adcb17c0001851a288d8da3d526af2553c1d5a80b31e7c1545cb2b423006da9):587
-en.json:/mobile/pending(b3204f93dd92159500f7a3237b14d6bbafec51e4ef0ef11cbf7fdea3caa1857b):608
-en.json:/mobile/support(1eb37185d0939fcf17374a3308605907c734f7ebab2bc19da2ecaa43f07c2f97):606
-en.json:/mobile/studio(9589ec991c558a46afa66b7e9309f0e65bdc314e6ff1772113c6e6132917a5d1):586
-en.json:/mobile/beta(20ed763a42b24e5f7b0e6e1d624f4dba623ca35b7939c73f252e77ed4a984a4f):589
-en.json:/support/title(e2f55c84f3b4841d23d20232c3a8e80b91056350cb7397e957200144f2c54c92):720
-en.json:/support/greeting(9c8908ef16693edd77196b6328ec6982f1e8576b724ad40ab3d38b788bafa99f):1116
-en.json:/support/intro(f4cfbca71e8c5669f42729e1b2c19253dbb931a57710077e37d3583b40b8b04d):836
-en.json:/support/issues/0(fb54c2de6b1b5f19aea68f5d9c93724d6836273b8e39a54ab46594394dff35d4):1340
-en.json:/support/issues/1(95642d5b26314c1242bf9d4f9e000abc14eab04fe463056933278cc01ed71b35):840
-en.json:/support/issues/2(bac31efb3cf9a2fa6bbcc337cee385516c6178120e1afa744f083707d82db967):1215
-en.json:/support/issues/3(352cfc749e55222e135ee48e67631ba33f834d936c137560fd39063d2e57e5cb):814
-en.json:/support/issues/4(7343678783fe67eddb3cb2674e111d7f8c091f2090cfdc39b59a1f1f9a3d5e33):834
-en.json:/support/issues/5(f26f75ab7261aa6c592e39d957cdafa88cc4221ef2543cef788b4f084a90f0cc):2024
-en.json:/support/issues/6(8aa5b56f614901b52db700ff1e806134f08ae20c7b6540f88817bd7a1d9fc1a9):1418
-en.json:/support/issues/7(a8d929e4cd32cb001a91d94e30e993767814313ed5aa46222d12c4e39936bffd):1922
-en.json:/support/issues/8(32eddb01507b939a0d1e62d87d2d6600dd1dd83fd80ffd9554ebf710bc10c2c6):1943
-en.json:/support/issues/9(8376b744f47535db4663c99df3880a8f69edc7a701a32f5b40298fe7c34daa73):4189
-en.json:/support/issues/10(376627e1713761096bb0636ecafc8a0c5cfb76196e55d3ec6b845c28254ae2e1):1013
-en.json:/support/titles/0(5b46ec83e082e43ca11d2ccb8680f244051bc86d9acf1637eac2287b1f06f716):1553
-en.json:/support/titles/1(ded3dbbee4a587388fca71fbb66c9c8b9236db8ab399397920ece96859a89b16):1570
-en.json:/support/titles/2(cd0d1327e0c67dc34c261c07cffe035ded33116aa02309e4fe95301756f482ef):1679
-en.json:/support/titles/3(ec8b0389002de6c5b8e30cd563c2dbe58aeb1d04876c3c2141529c1054b9cec4):594
-en.json:/support/titles/4(9e3eeb708def2397c389d00c3fa14c5e3d5019930fceec30532d97718a55a92d):805
-en.json:/support/titles/5(97d669ba6d66649decf102670a3b631d725fedc89a19b337c0a27d439356c428):868
-en.json:/support/titles/6(4293d22ab6eed8fe290fe481a088298b854861881183ab4c9fb224e810eada0d):1061
-en.json:/support/titles/7(15bd68c0f627d5aeaa3fd1000cc7d3cabcf8d7221a030368c085b020da8635ab):884
-en.json:/support/titles/8(4ac0108f3548f788fa3f92a53640901d515784cafdd1118585cf218c1b58c029):1846
-en.json:/support/titles/9(91cc3d130f82fc2177fef938f06521c1c176e92dbf0d6033ca1e2209a2343b0c):823
-en.json:/support/titles/10(fb07dca4159168dda7af3798f5335ac3e13d66dccb1b819c0e55732f0c0d1815):2181
-en.json:/support/back(13aa067175b3238f3b88a41c0d70b9411fe5b3d046a84baf1cb767fda1321217):2035
-en.json:/support/types/0/0(036e8d1eb813a5c3156acf481dc69e0fc451b4c89ab311731bd5d85eda0bee11):1034
-en.json:/support/types/0/1(7db176b183395c44bcf8cac5e83fea4207b6cd5909e334e9ef96fe222ec0b5b6):1624
-en.json:/support/types/0/2(663e378e6b5efd7578b7c6123a022de935077b4c65fd36e2cb66c78e25c0cca3):1147
-en.json:/support/types/0/3(7e3ca00dc76362fff3b3c71f3bd85576a6e1f7307377da6e403bdbd36bb27581):2745
-en.json:/support/types/0/4(7ce081ab7a51b5c3bfa320386c788304fa961efe5f56cbf390907bd3e4027732):1255
-en.json:/support/types/0/5(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):916
-en.json:/support/types/1/0(0bbd4b75f8873e693d3d397ab70098d497a4b68fa41b78a770f4d9d49516eeb1):2435
-en.json:/support/types/1/1(612407f604831ccc335d3a30f2c5372a973645b047daf8541790f5fd8d0055b4):2068
-en.json:/support/types/1/2(7653d60addf7eabc1a15b266dbb3408579d418eb6fee2eaecad5c8a116fd22ff):1299
-en.json:/support/types/1/3(de7ae3faa01e2afe231e19ceb6ab281a93680b096b92f230579314287a028a81):1700
-en.json:/support/types/1/4(d09ca22b055e42e2101ba712d049ba3237d27d3315ab42ea1c7582cd42d1ef54):2232
-en.json:/support/types/1/5(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):1127
-en.json:/support/types/2/0(f24540893e5e0f60bd0bc6c8f784c565357aa5305ed271c81bcf6d26bb1cf380):1943
-en.json:/support/types/2/1(04a76b7f9da74280878488b52cc43264afc7dd780a5a7cc3500c412ca6b1b464):5346
-en.json:/support/types/2/2(7c7b8a2987d33e3722880622f865291c76eecef90e54cd5d9ce4350a5f4b8258):4335
-en.json:/support/types/2/3(48000d9007ed4f5020de49b08bc192e1b274a9a8450c664ee138df3f118d5d9e):1582
-en.json:/support/types/2/4(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):649
-en.json:/support/types/3/0(0568b9243c0e7e00ccf6518f856c8235a670c70c610acb0412ea85dd4e4bf69f):1051
-en.json:/support/types/3/1(08b426e524949544285052c40c4f0e669f969c191750d21fbb3ba8267e74157e):1767
-en.json:/support/types/3/2(015cdba982ab59241b53444af94663ec6d9891ab75594741df18d202e2cb4971):1982
-en.json:/support/types/3/3(90ad88204afe17f63a5888cdd366e79f0098df2a41d59552142efc6d2d65bef0):1355
-en.json:/support/types/3/4(4700aaf3e5a211c8a09530ed771dd0d1a270f6a03d9de9015ec0295aeb77aa6d):3095
-en.json:/support/types/3/5(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):679
-en.json:/support/types/4/0(69e5b846c5148ca2ac96ebe1ca2afc521290a1ab373af35784255dff6430ee6f):1583
-en.json:/support/types/4/1(6e2e8cfa089d652289688e23142f1f34de2b73a0dbc1cb6b41de1ee82f179d9c):4213
-en.json:/support/types/4/2(fc0a603979d6d746c38b2e73badb5f701f4aa943d77b95dc050ea0e6fcc87c73):1006
-en.json:/support/types/4/3(feccc1d1165a466c9f740d7333d2b810f34e8abc805a0b0b273327dccdb7c622):1430
-en.json:/support/types/4/4(4c4493cc57b3914f18e2863ac3d114ed7b1028b06e9af73831402d8d594e60d5):2722
-en.json:/support/types/4/5(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):736
-en.json:/support/types/5/0(9f92c291b7ad1aa3b1ddeccdefb475b6d92d389a53a6b42b12571119a274b842):2887
-en.json:/support/types/5/1(9177a4e3c70993663f1252aa51188df3a2be79e68a5e740470c02c748015d7ec):878
-en.json:/support/types/5/2(643bfeabf3d4edad6be145fe6fa9cc42280e64c1b58669b53978fb3fa01838e9):938
-en.json:/support/types/5/3(e5f6cae4e328a0e491d25b03568a760915b5020d6f6ac32a6e8204148552c38c):949
-en.json:/support/types/5/4(3bc4b45a76fbe58976dc213e13b7660550ca746ca56ef200fc0cc643495617ff):1369
-en.json:/support/types/5/5(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):767
-en.json:/support/types/6/0(a082eb1e65b480f4e3c55a73e83fda711bd7edcfa5c78ae83cc0fd2c64cd2b10):2219
-en.json:/support/types/6/1(9e716b2f4374df6cce273925bd4c4186d0dcbefdcd0b3f7ffb4f55a60d552bf0):2071
-en.json:/support/types/6/2(7ce081ab7a51b5c3bfa320386c788304fa961efe5f56cbf390907bd3e4027732):1562
-en.json:/support/types/6/3(fe895a882bcae9bda11aced034be440587168c1524b6ebdcecf2a1f99f88da3f):9131
-en.json:/support/types/6/4(dbe87d037d5c60f426add1cf99b6273ce70b063e3b8c5df641026d8a42348f9c):955
-en.json:/support/types/6/5(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):881
-en.json:/support/types/7/0(2556d1ef13d5cd9a60798958a2f5af231f19164c4359904b1e30017e76e9d336):1409
-en.json:/support/types/7/1(b4fc705fb61d867fba468850e9fccaab07964ff672b774f9b24349aef5fb51d2):2735
-en.json:/support/types/7/2(f9ff6409765fe9da1b7b46219a6e9dd79e94b3b2e246f8fd328f79f9d014644e):2028
-en.json:/support/types/7/3(e1dd0c637e75730e19fc26236678b38254e3c80a8e17f88451c7b40f60de852e):3209
-en.json:/support/types/7/4(f887a3397c100948204d81f17e97d3d65da659baa81fff70a2046d219e98b153):1483
-en.json:/support/types/7/5(8daddca8f71d8bd615dc8d37f9a6179323e773e889a63c1fd27a29b4579b131e):1678
-en.json:/support/types/7/6(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):858
-en.json:/support/types/8/0(1101a8e9be676cc0dce2237823d20e91c87b6d334aa4472b435065c4924d7442):1822
-en.json:/support/types/8/1(f3b2dc431c6598aea0829ab5b931bc5f7d28c8075fa10cffa7a97d30cacac533):2133
-en.json:/support/types/8/2(ae8eb4f27780d8a868af3166e86a65910f3dc7319d0c0a60942235795ddab282):2318
-en.json:/support/types/8/3(4b98e9da6e440eb12cf1bd599a3fabda7d01b697dbf8df5065cda27c8148f358):1485
-en.json:/support/types/8/4(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):1032
-en.json:/support/types/9/0(954791b326ebaf4bc5d564c28a5536c08739476308d581fa06af84fba263ec73):3321
-en.json:/support/types/9/1(fe895a882bcae9bda11aced034be440587168c1524b6ebdcecf2a1f99f88da3f):2520
-en.json:/support/types/9/2(18b627ae7dd129a5d5dbf19c7de2f5518cf09f1014030b5eb43e1a50371b6ce5):1515
-en.json:/support/types/9/3(a324804db4a690f79eecb33633314d57099ae34b7fee8ec86033d552935f58ea):1516
-en.json:/support/types/9/4(35cdbdff21aac3f331a1d79b78e5f3c34b3922947767626574cfd65d854c1c77):830
-en.json:/support/types/9/5(da3a9daec302a600349bf0c68979ee2983715e591b56473ebcf11ab472e6e5b2):1179
-en.json:/support/types/9/6(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):729
-en.json:/support/types/10/0(737c31ea979ac2e3f32e73ac5a83cad56c8112923e271ce8aaf2824b9bc8bacf):1083
-en.json:/support/types/10/1(b7f15f8f77fec76b3998a005b873ae8dc7a6d78f635af81ff338b304f9b91b9e):1455
-en.json:/support/types/10/2(862f5a4154629fe01aa980dc9716fef052e10c52dabc85ff63af2da5121de9db):2637
-en.json:/support/types/10/3(02a62b08501c277852e03a5ea484c59ffc35cfb9e211f7231d2f89140f7e2481):2539
-en.json:/support/types/10/4(b4ccf9f9bc1e7cf74786e99fff7236fdfb1213e34d7d956065f66720815852d4):1498
-en.json:/support/types/10/5(cc72843144841a6f8110b7ebe7a1768101e03c4c8c152865cb7207e8e4bf8745):551
-en.json:/support/go/message(bb67364ace6403a6f20f49eafeaa17a2197da973bf30c9a895c1908ac935b60b):1345
-en.json:/support/go/ways/0(46dbcfc9d8d453df0ef137b1c47ed918d04ce1fad287eb869068b1bc68b2a946):651
-en.json:/support/go/ways/1(969ccbd3cf6300ecd5c880459d81ae9027df7517563184a1b8b15282db230621):891
-en.json:/support/go/warning(4ddd18c01062e2f195f5ce94839c57e98e33188de32288aa5ca542952241351b):4751
-en.json:/support/go/phone/0(1e826639358e2c0b93f441f9b02416653c4fda466d93e717b191544677c80e31):5893
-en.json:/support/go/phone/1(83c55560f8356a0174e872c787891046000dbbb37b1c2bac94cdad56a673ee14):6071
-en.json:/support/go/email/0(c1897626cefe46aac83a0ec93709d9d63ac67b453ba8c86e5bb1268c8f6a454b):7440
-en.json:/support/go/email/1(e25e315f3324a31d593b5125762a590d13a298acaa9dd49b9c21895b087cbecb):8267
-en.json:/support/rules(2c571ab1d814b368cfec6ab4f497a2cc74a4b4fd1a918e4fb5ce119257c17c35):1402
-en.json:/beta/title(952146e9bbe63daeb79f0fb0e0f418f8882a42f86d9613756799e3e635c402e6):859
-en.json:/beta/title2(0545261a78657968dcba53f2a572fb990334fe851540b8e631bc985a39160953):613
-en.json:/beta/message(5613c19c8b983b3065a2caa916862a81a2bafad9dc84bd7439605fa1501fc820):3169
-en.json:/beta/affected(2c3651ce628b377f2d46eb2cd4de79b4db579210a77601d7cec402e124500d2c):849
-en.json:/beta/users(6310a5ffd41a708ef2f8f626a1253b85b3d4dce13316cd916fa4f3124f3438b4):980
-en.json:/beta/public(a2eab36e43be51d427fd5dd41a686d0a6232e00f03095d8837ccc623a355084c):1080
-en.json:/beta/published(2ef42ec21d9300dd21ae3c7ca3711806cce3003fa4edafd22ee744fe86599799):638
-en.json:/beta/version(e6b2795d9c45f433be05157ad4b2740460e94371018f33a0761da7b86c692458):801
-en.json:/beta/php(30b9f368694d081f87e1c964b802e7cb42c1c688c8dc47a9aae91d0367e9f489):741
-en.json:/beta/build(0ae12b05cf0fd9ca25b2d10d4b4f31711a4e92ae36db50b1fe4cf0b7ade83ad8):639
-en.json:/beta/api(ff49a0cbf546566e7161479eb72963c4b9101ef769a46a9e876dddf555235118):768
-en.json:/beta/engine(71085db512c2d1b6390ee4d14281383af7010e1044c0af48ec4215888db7bf67):561
-en.json:/beta/latency(a18ddd6159ede6e4b2e69a990493b2ba6c024bbcb1be843370064cbcd53ba9ea):437
-en.json:/beta/os(0fcabfe6e097cd4064a08313b4b7da807f5ea3c59d056acc46289467bd2216e4):996
-en.json:/beta/process(2dc5316dc1abd2510f63ccdea13174fe3ff8c2f5efac5acc96df85421ee2920d):465
-en.json:/beta/root(384bbc23011b39e5920f50288e910e8719e76c0dca5a96b773dd0486d42d4303):622
-en.json:/beta/network(842a8073ce202412af24886b561bd5b78959e368ef929fc6dddbd36f8101ca2f):565
-en.json:/beta/new(18fdd549b2ed367ac0c74cbec1214644728515b30edbcb78e7d322757a7c8359):522
-en.json:/studio/title(e13cfc58cc090f36e934419dad168ac96e06f106d5c374a25b8b8ce7c5578ecf):561
-en.json:/studio/theme(efb52e7172b77731d996ff4f51cd7b3dcfd55fc6f07392994619418d58d170dd):590
-en.json:/studio/dark(3f11a5cc643ab5140966ef077d289165283d33669a68f0bed1efce3a9881384e):986
-en.json:/studio/light(3669a1b2770f0f397ce00265548b43387d4208de81249ee595b4dd45bb0659f5):623
-en.json:/studio/profile(d696a35bdd1883da07a8d6c41bb7a3153381b23aa197629ee273479a6eaa5a9c):651
-en.json:/studio/on(130011756125313c72f2cab730db4347e2841526d236a89cb25f38789fa49229):611
-en.json:/studio/off(ca7981b46ecf2c1787b6d76d81d9fd7fa0ca95842e2fcc2a452869891a9334d1):535
-en.json:/studio/redacted(017ad73325fcf108a972edac618f9edfc957c5b1de10f8b371b0a8bfa4f59e2d):771
-en.json:/studio/settings/badge/title(fef42f47ff3acd7395746a5585b918e6f21ed681d96270e103acbd597a03fa62):1388
-en.json:/studio/settings/badge/description(5c65c9bd0f340397ec9c484241ba9d4f68b1fadc7385aab02f20562a088ba617):2737
-en.json:/studio/settings/detailed/title(8f40ab0ffd3dba2fc231b8542ebd00fc71fc0d64fffbab08a1210e71ba12a144):1780
-en.json:/studio/settings/detailed/description(34024d53af65a2dee2543b6c04717643824cdbba72c61e74e8cf2a293abbcf16):1373
-en.json:/studio/settings/photo/title(49570890d70f9f6d79a774e618fc99e082077fc1658001308bbc9de7ea37114b):1577
-en.json:/studio/settings/photo/description(895a46fb55573f35ecc84cfc05ba4a110f8141efe5255aac5e2a5f555edbf443):2804
-en.json:/studio/settings/hide/title(38bca089887220d1a277ae567ddde42989685ac8e0ba1eb6c999df33bba8b24b):1398
-en.json:/studio/settings/hide/description(363c4667f11709b8062dce408b8eb768e67ee518004dbbaf1a27d4cea671c23e):3676
-en.json:/studio/settings/birth/title(2cb51eb4f5403f849c03d2ffe6ed1fbae6c9704e0a49a745f4ce85f6929e62dc):5718
-en.json:/studio/settings/birth/description(2b73d3d766d31771dc82ce5247d3f0a29eb1739e113f15505b4a0c306dbbba14):4153
-en.json:/studio/settings/phone/title(59dbfca02964dce0a6fb36d90df0945f3cdd2e2ffdeef863c657f3197fef20d3):1372
-en.json:/studio/settings/phone/description(aa36a25a1ca0882b8390c5885a988ab7d7f679139756040e9d907155feb02670):1099
-en.json:/studio/settings/email/title(9e419638b2da5bbc7ebdbb26a934c65d0eed997304ff8419d78efb689a2f8cdd):1255
-en.json:/studio/settings/email/description(b03b706596c49fb0d732e88f425182dccdfb81a48d5301d85c76a5c93e5a92c4):1192
-en.json:/studio/details/most(cb0ab045838866c88e6e4101c4616235f89786d7eff0a4f5a8f231b78d4ae793):791
-en.json:/studio/details/requests(290887aef4d330b38c1fceaf2da5a2fcae29a50996a4a4a1321eac582584dbdb):572
-en.json:/studio/details/none(4c963f0813a94a1c394e74bf75bd2c886ea342e70cd19bf80d4900ebeee5a75c):813
-en.json:/studio/kiosk(a32802716b504427c7c214479957aa80ff91acaf3f39a441cb3ef2aa293bc842):4124
-en.json:/badges/admin(555ffe0de83fd409d982635a9d8504f11e7d8f6eb9070888f7784ce8f66214ff):2284
-en.json:/badges/eap(d035ef6f6823ded69b1a17fae3c5981ce9b4857fef6687417809cb483c9cc061):521
-en.json:/badges/hunter(a5869ee35780a70f1c9502c5788f5d2a60296dd8189d3ea928f25f545377951e):1327
-en.json:/download/action(34087d10e12f67661b90f5ec280c388496ac39d90fe1293b544867790b1eeb2d):1485
-en.json:/download/title(69557504bb0f91538747f278531e23154408ba6bad10ab1944b78f08672b42af):571
-en.json:/download/title2(4f7cef2c4d84eab9eb5ef5ffef30d774ffbf243a020574cd7508777b67e16b76):1353
-en.json:/download/intro/0(002ecbda90348c0af9a15905e86e74ff254b83d852efadbb75b473e0f47598f0):11050
-en.json:/download/intro/1(1c0c2ce449e00b3352053fc647a621fefcf5694c431be1081fd60a1a7875d002):16238
-en.json:/download/intro/2(6ae94f50e72de6d050313a92292a3d0277997aa1d5627ea76b4a1d7dddd6c72c):2605
-en.json:/download/start(cdbc866b8af617fda9a763042c7d5fddbf3ab59c278344d4d229b3bf07bd688c):1333
-en.json:/download/files/user(f8f7993ec04697e095ab0f691668edfaa5d29db61c7635410ed4b94a34f42923):827
-en.json:/download/files/requests(91f850fa869b0086edbf5e4f2cdb8370c9f26fd9a81e3afb7ab648da5d1dd2ce):689
-en.json:/download/files/gallery(0d2aa84bed63fcfe1c749816f459c72d7a49b3b972f58a1f874284e575645883):992
-en.json:/download/files/pending(331551b0de4157c9abc7b72b61b96a2a928fd6db3cdf029c1fc44b08ad633aa6):596
-en.json:/download/files/closed(c21ead0614e7e1b70edb3759e1d19ca1e12e6036980d10bfb73052fb1a018efa):475
-en.json:/download/files/public(591935b15b1c88e2d5f6be0a054604fcf36f0585a6f51098fa3803826fff278c):497
-en.json:/download/files/deleted(b48ff39c2e0f5451b9b29b09c2a74d2760db230749ffd48a6e901cc91fef9a8d):530
-en.json:/download/files/history(0e769600933790607b2a13b33ddfade0fa17810eb62c3b28ee23e59516516491):563
-en.json:/download/files/profile(c5afdd5cd560ad62f1a10a24205361508327db7c34991dab045d783d1f3b634c):697
-en.json:/download/files/avatar(a7acc4ebae2c00142fc74577ddb733679a087770b10e29c1c57e4cf5bdf02f43):852
-en.json:/download/files/uploads(a1d4097f085724d2401a2fe6b18906fbef5ed4814cee798a4da45b018081bf77):1916
-en.json:/download/name(f9b5a61c0eea7dd14216473087e9ad73a42dbbbe311e753ac3ea3e7ef14f46af):2584
-en.json:/download/kiosk(39e90eb8316300893f3e6c1dca4986d643be683d0e3cd9b636184757e61c9a3e):6011
-en.json:/editor/items(a31cf724b01431b6f06a8f8cd06ff39850401959faf37236430f079e42a458fc):1954
-en.json:/editor/add(e1d2cc81df86cc55ead890cc1a9c7ce0ffb120e89eed480f7f4e52ce535873f0):1179
-en.json:/rules/intro(a58a94a9c8737c4085beab087f8be3d72124f72f07ba521bbfb6b82980dabb95):3143
-en.json:/rules/recaptcha(82d96759cae49f331894936a0dd5ce278833620bbcc3b8835e18bcfb6776b65e):7307
-en.json:/rules/sections/0(734c3c4947eecf380a2a4c1cba16c1a7b31584e87409a7f9aa6d7da6fde8b837):1267
-en.json:/rules/sections/1(01f619d9ccca7c5e8a22a76763ae0e7ed63a8c7fdf21d7feb132db0c2a1adff7):625
-en.json:/rules/sections/2(72061176678de92164113731c02ec7e991d7720c2dae6ad373c201a47ec4a29a):513
-en.json:/rules/sections/3(2a7646d03a0c2535ab946853acabd05d584b030d1bece117e461e8e901376472):703
-en.json:/rules/sections/4(880938d91921afe4705597c65def5c7fa3cbc0199164853dd87ba62483ecc71f):937
-en.json:/rules/sections/5(a93b429812dddc30d0e498a4b00b06c4cdaee9bfb3503ecd8c3d384ae85d89f2):812
-en.json:/notifications/expired1/message(fd98f37a5cf38fc07b7dd40eadd5bf849da9e16839f0c3c0da46c285bc1beb5c):7282
-en.json:/notifications/expired2/message(33ef4d2e50282779cab856b6cbd5d1db3486805120e5502827b7e66211765799):1997
-en.json:/rules/lines/0/0(54e3a192d55ed3eeabf96137288226c6997376ac012df151aaabda5cc1baa4b3):14198
-en.json:/rules/lines/0/1(3de6d00bb72f8dfb7ae56a3016c78920b05777f9391845ce3d1a166e3739a26c):4639
-en.json:/rules/lines/0/2(3fd6079e9f17a32217b59dcc66120ace49a6bb84259a624f3f32e58281f8fdbb):2800
-en.json:/rules/lines/0/3(54f821c1c708c3d2e3782d5de371d6c859f7bea6e6cb840b1aab4d45ba7c86e2):2897
-en.json:/rules/lines/0/4(d3cedab690c0279db12860ae809db3c8137c3b49339731c56cdd2a04f3b5f78c):2827
-en.json:/rules/lines/0/5(15bb00eb44c3845886bf93b31123a50759917d4ae1825765453dfd2d4a1ebeae):4186
-en.json:/rules/lines/0/6(96329dc6084e7baa3273aeecb789243d542479f2f43eb5eb79036b0c5a75c17c):3001
-en.json:/rules/lines/0/7(0003a11539c78ad45d41abeedd23609cf2c5cae488314060a110991b62386653):4752
-en.json:/rules/lines/0/8(b5c2e6de70a0657e51480bbb6a24d392cae92b83ad5da0f63b000fc883742442):2577
-en.json:/rules/lines/1/0(26e408a7fb63c8b7c0406fa746365b800dc59813d7207cb008fb8a3755ed476f):3008
-en.json:/rules/lines/1/1(7f9069407ef048faac972904c671225ffee131217de4ccf899a67367add5848f):1927
-en.json:/rules/lines/1/2(03dc2933bf067853a0f38e6de6998e1757c45a69e4fa92da6b36c8edc9d8d481):8113
-en.json:/rules/lines/1/3(faaff4237808217a7f6160b1225d8d99b9165c1b5aa8a7fd38cc0542548b4fd7):7539
-en.json:/rules/lines/1/4(95166224e4fe0383af40dbf95b92e2c5bcfd493675433b641d9b7421a3ee68ff):4808
-en.json:/rules/lines/1/5(b6e3fce367f5ef985aad40583f1020cbcfca0247166eae2ade648bf1e4fb83d4):12998
-en.json:/rules/lines/1/6(3a6a9bd6203bace6fa5d9de013603b995ced5e82a846ae44cfa72d7be0f23e5e):6689
-en.json:/rules/lines/1/7(d44a7d09a9535da8f7a07a6b74ff1d15110418b0cc602ad4b07a521ba2309c91):5726
-en.json:/rules/lines/1/8(aacec9d4a3f70af07250c4717761bf4679b7af4b6329e060267878d10cea8fdc):5632
-en.json:/rules/lines/2/0(7f536e185f38e432186981ee8498a5a5c7b670a1ad3b59cdd6ac5194db917133):3847
-en.json:/rules/lines/2/1(0a886f93c3bed495df8f6a2c44f1429a8de742b2a5bcbb802df73f6ff6c9e4f6):8689
-en.json:/rules/lines/2/2(dd3858177c3efe62edc001b6ceda87c93994eaa941afb2f2d2b5039cc8d577de):5851
-en.json:/rules/lines/2/3(297b113a64dca14d34ed01d45bad59717a0a237cb9ab67700ccafd9aa2d65623):6018
-en.json:/rules/lines/2/4(922b10062a5299d00765240b411fc2d7ac70ac86694b07e8e956d9ecde19d22e):7442
-en.json:/rules/lines/2/5(b28152128a3544955212a904a1aac9e16a1a4e794200e7db93326c78d6095a2b):4492
-en.json:/rules/lines/2/6(0068d51c830be38a1b142ff3f520bdc3884674b385eb3d05050c23f0ee75a37f):4954
-en.json:/rules/lines/3/0(e22c5345976aa9ac90f8ffdc7aa1433262eb127fe5be49d76857a5bb9ccf9ad4):3391
-en.json:/rules/lines/3/1(6018f30c3d634c4e3ff6014f34f640de3781d558a8ffd0a49a7cd998580494f2):9273
-en.json:/rules/lines/3/2(83b993b41bc3b4304ddb71078cfde4bef7fa1b849329c7ed630753a7280b0b4d):5136
-en.json:/rules/lines/3/3(fbaa487a26d39549c9ca23af926fc1f16dd0dcb5f6c8f216aeec1b05c4d314ff):10549
-en.json:/rules/lines/3/4(d2adedc9c694b2e519f4eaf7f90a930c286be880b2a5c4ea3a9330330b0833cc):3862
-en.json:/rules/lines/3/5(db8ad7664e3f6d843b8860fd33574beeec7879f5e9b6ca7a07ac1ee1e6bf7e92):5864
-en.json:/rules/lines/3/6(ba624653eceb5e06f90653358d4e74c23b5504fecd552b065eb5cb05b6a0a8a9):7933
-en.json:/rules/lines/3/7(fae7409e7b0b85083268eb3a47d8c42762df7531692219ef3c26ea6fe01cf87b):17103
-en.json:/rules/lines/3/8(f1fbf843a6b83cee5eec44e49341143956fc064c42d0f25136a90c9b9e2c497b):14231
-en.json:/rules/lines/3/9(881d44e7609e4475a1b9978b49b68c60b26a28d4f9e77ba7a0c9b066ed33711f):4595
-en.json:/rules/lines/4/0(b84fe5438f034b3a7fd108329fd0eb350edc23ef3ef15405dc1b2b11104ef277):7829
-en.json:/rules/lines/4/1(70cda92a67bf84626af9c006f4f25ff1a5d84dab743c944d4b62a710455b2498):5304
-en.json:/rules/lines/4/2(2bef575103944d203ad763e420edb54ab654ac73cf0e9556fca60b0fb794c51e):9018
-en.json:/rules/lines/4/3(1b3b3c371ee99ef1e48143d9b2efddf2da3829518fd9ebf044c71f67fec953cf):6042
-en.json:/rules/lines/4/4(7e82cfcfc145b64f84234a292779f6ea5b0e768d18a2b7436267900be7c97972):3924
-en.json:/rules/lines/4/5(e40a6692e6faa02e35e6c2296f0135ce9c6d858a238b0cf3b0008e8880719aec):11401
-en.json:/rules/lines/4/6(c407b0e5e304d5d1376e7e065bcab2e3800249815b7e68a1954d67668d6565a9):8087
-en.json:/rules/lines/5/0(deb1606229869a7d152a6449b2892c020e6b32d6d9017627bae5d5f3275071e2):7552
-en.json:/rules/lines/5/1(efabb712a511e33b271f6d3675635392b645bb11af630042862ad02835b18a0d):5148
-en.json:/rules/lines/5/2(c795eb918cedb513a203ce55f2801eb0e4758ee5969d364f4cefe8fa3c8b1309):16140
-en.json:/rules/lines/5/3(e507bc54f3f077f4b9dd4cdb2ca9071218ddddcd8ec0bd3ba501c29952529c4a):4785
-en.json:/rules/lines/5/4(b237a4d50cc6ad6baec6ce71cb429232a1b34a15eaadb95bc122334316c309c1):4360
-en.json:/rules/lines/5/5(a9c1f0f8fcc6d9461d6049d2f8f6c94d47ea8926ccd4831682af834b80657fda):9571
-en.json:/rules/lines/5/6(9be7e6a6a2ae338e3893932bfc53e208a13ee0dbcd438aac0848dd82349b6625):9484
-en.json:/rules/lines/3/7(ce7694a75100a999a13bd748d4373b60db520d8657df0e18c73aa205b94fbac4):1788
-en.json:/rules/lines/5/7(52b9d599f96abe0864058eeab90ad168a567dc58d236cb69766e6083371e853f):5876
-en.json:/pricing/title(0c85a3d6714bf923815011a0611a6fdc3d612b4a3e1756d1d5add1fcd99c39fe):1374
-en.json:/pricing/delta/title(c77db0ab2c5d60f6b1f748e9aa48e2b5554ce4e6c157ca1ed7f07e49e0f85486):834
-en.json:/pricing/delta/message(4c2767803f72f6e3579c8a6922843105d8b285de530278d1d6e9b1fa718cdd0d):6759 \ No newline at end of file
diff --git a/includes/navigation.php b/includes/navigation.php
index 072c3be..9a49205 100644
--- a/includes/navigation.php
+++ b/includes/navigation.php
@@ -152,14 +152,6 @@
</ul>
</div>
<div style="display: inline-flex;float: right;height: 57px;margin-top: -10px;align-items: center;margin-right:-10px;">
- <?php if (!isset($_PROFILE["plus"]) || !$_PROFILE['plus']): ?>
- <a style="margin-right: 15px; background-color: var(--bs-body-color); border-radius: 999px; width: 24px; height: 24px; display:flex; align-items: center; justify-content: center;" href="/plus" data-bs-placement="bottom" class="newnav-link" title="<?= l("lang_navigation_upgrade") ?>" data-bs-toggle="tooltip">
- <img src="/icons/upgrade.svg" style="width: 16px; height: 16px;">
- </a>
- <?php endif; ?>
- <a style="margin-right: 15px;" href="/support" data-bs-placement="bottom" class="newnav-link" title="<?= l("lang_navigation_user_help") ?>" data-bs-toggle="tooltip">
- <img class="icon" src="/icons/help.svg">
- </a>
<a style="margin-right: 15px;" href="/search" data-bs-placement="bottom" class="newnav-link" title="<?= l("lang_navigation_search") ?>" data-bs-toggle="tooltip">
<img class="icon" src="/icons/search.svg">
</a>
@@ -169,9 +161,6 @@
<a style="margin-right: 15px;" href="/pass" data-bs-placement="bottom" class="newnav-link" title="<?= l("lang_pass_title") ?>" data-bs-toggle="tooltip">
<img class="icon" src="/icons/pass.svg">
</a>
- <a style="margin-right: 15px;" href="/plus" data-bs-placement="bottom" class="newnav-link" title="<?= l("lang_navigation_user_subscriptions") ?>" data-bs-toggle="tooltip">
- <img class="icon" src="/icons/subscription.svg">
- </a>
</div>
</div>
<div style="width: 359px;">
@@ -282,7 +271,7 @@
</div>
<?php endif; ?>
</div>
- <div style="display: grid; grid-template-columns: repeat(<?= isset($_PROFILE["admin"]) && $_PROFILE["admin"] && !isset($_COOKIE["DeltaKiosk"]) ? "5" : "4" ?>, 1fr); background-color: var(--bs-light);">
+ <div style="display: grid; grid-template-columns: repeat(4, 1fr); background-color: var(--bs-light);">
<a href="/people" class="newnav-link-bottom <?= str_starts_with($_SERVER['REQUEST_URI'], "/people/") || $_SERVER['REQUEST_URI'] === "/people" ? "newnav-link-bottom-checked" : "" ?>" title="<?= l("lang_navigation_people") ?>" data-bs-placement="top" data-bs-toggle="tooltip" style="display: flex; align-items: center; justify-content: center;">
<img src="/icons/people.svg" style="width: 32px;">
</a>
@@ -299,12 +288,6 @@
<img src="/icons/messages.svg" style="width: 32px;">
<?php if ($unreadAlerts): ?><span style="width: 12px; height: 12px; border-radius: 999px; background-color: var(--bs-link-color); display: inline-block; position: absolute; margin-top: -20px; margin-left: 20px;"></span><?php endif; ?>
</a>
-
- <?php if (isset($_PROFILE["admin"]) && $_PROFILE["admin"] && !isset($_COOKIE["DeltaKiosk"])): ?>
- <a href="/admin" class="newnav-link-bottom <?= str_starts_with($_SERVER['REQUEST_URI'], "/admin/") || $_SERVER['REQUEST_URI'] === "/admin" ? "newnav-link-bottom-checked" : "" ?>" title="Admin" data-bs-placement="top" data-bs-toggle="tooltip" style="display: flex; align-items: center; justify-content: center;">
- <img src="/icons/admin.svg" style="width: 32px;">
- </a>
- <?php endif; ?>
</div>
<div></div>
</div>
diff --git a/includes/oobe.php b/includes/oobe.php
deleted file mode 100644
index 95ed574..0000000
--- a/includes/oobe.php
+++ /dev/null
@@ -1,333 +0,0 @@
-<?php $price = (float)trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/plusprice")); ?>
-<div class="modal" data-bs-backdrop="static" data-bs-keyboard="false" id="oobe">
- <div class="modal-dialog">
- <div class="modal-content">
- <div class="modal-body">
- <div id="oobe-page-1" class="oobe-page">
- <div style="text-align: center;">
- <img style="width: 64px;" src="/icons/wave.svg">
- <h3 style="margin-top: 5px;"><?= l("lang_oobe_pages_0_title") ?></h3>
-
- <div class="oobe-container" style="height: 228px;">
- <p style="margin-top: 10px;">
- <?= l("lang_oobe_pages_0_description") ?>
- </p>
- </div>
-
- <div style="display: grid; grid-template-columns: 1fr 1fr 1fr;">
- <div></div>
- <div style="display: flex; justify-content: center; align-items: center; width: 100%;">
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px;"></div>
- </div>
- <div style="display: flex; justify-content: end; width: 100%;">
- <a onclick="page(2);" class="btn btn-primary"><?= l("lang_oobe_next") ?></a>
- </div>
- </div>
- </div>
- </div>
- <div id="oobe-page-2" class="oobe-page" style="display: none;">
- <div style="text-align: center;">
- <img style="width: 64px;" src="/icons/content.svg">
- <h3 style="margin-top: 5px;"><?= l("lang_oobe_pages_1_title") ?></h3>
-
- <div class="oobe-container" style="height: 228px;">
- <p style="margin-top: 10px;">
- <img src="/icons/people.svg" style="width: 24px; vertical-align: middle;"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_oobe_pages_1_items_0") ?></span><br>
- <img src="/icons/articles.svg" style="width: 24px; vertical-align: middle;"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_oobe_pages_1_items_1") ?></span><br>
- <img src="/icons/gallery.svg" style="width: 24px; vertical-align: middle;"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_oobe_pages_1_items_2") ?></span>
- </p>
- </div>
-
- <div style="display: grid; grid-template-columns: 1fr 1fr 1fr;">
- <div style="display: flex; justify-content: start; width: 100%;">
- <a onclick="page(1, true);" class="btn btn-outline-primary"><?= l("lang_oobe_back") ?></a>
- </div>
- <div style="display: flex; justify-content: center; align-items: center; width: 100%;">
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px;"></div>
- </div>
- <div style="display: flex; justify-content: end; width: 100%;">
- <a onclick="page(3);" class="btn btn-primary"><?= l("lang_oobe_next") ?></a>
- </div>
- </div>
- </div>
- </div>
- <div id="oobe-page-3" class="oobe-page" style="display: none;">
- <div style="text-align: center;">
- <img style="width: 64px;" src="/icons/profiles.svg">
- <h3 style="margin-top: 5px;"><?= l("lang_oobe_pages_2_title") ?></h3>
-
- <div class="oobe-container" style="height: 228px;">
- <p style="margin-top: 10px;">
- <?= l("lang_oobe_pages_2_description") ?>
- </p>
-
- <div class="card" style="margin-bottom: 20px; text-align: left; background-color: var(--palette-3);">
- <div class="card-body"><?= l("lang_oobe_pages_2_tip") ?></div>
- </div>
- </div>
-
- <div style="display: grid; grid-template-columns: 1fr 1fr 1fr;">
- <div style="display: flex; justify-content: start; width: 100%;">
- <a onclick="page(2, true);" class="btn btn-outline-primary"><?= l("lang_oobe_back") ?></a>
- </div>
- <div style="display: flex; justify-content: center; align-items: center; width: 100%;">
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px;"></div>
- </div>
- <div style="display: flex; justify-content: end; width: 100%;">
- <a onclick="page(4);" class="btn btn-primary"><?= l("lang_oobe_next") ?></a>
- </div>
- </div>
- </div>
- </div>
- <div id="oobe-page-4" class="oobe-page" style="display: none;">
- <div style="text-align: center;">
- <img style="width: 64px;" src="/icons/dashboard.svg">
- <h3 style="margin-top: 5px;"><?= l("lang_oobe_pages_3_title") ?></h3>
-
- <div class="oobe-container" style="height: 228px;">
- <p style="margin-top: 10px;">
- <?= l("lang_oobe_pages_3_description") ?>
- </p>
-
- <div class="card" style="margin-bottom: 20px; text-align: left; background-color: var(--palette-3);">
- <div class="card-body"><?= l("lang_oobe_pages_3_tip") ?></div>
- </div>
- </div>
-
- <div style="display: grid; grid-template-columns: 1fr 1fr 1fr;">
- <div style="display: flex; justify-content: start; width: 100%;">
- <a onclick="page(3, true);" class="btn btn-outline-primary"><?= l("lang_oobe_back") ?></a>
- </div>
- <div style="display: flex; justify-content: center; align-items: center; width: 100%;">
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-3); border-radius: 999px;"></div>
- </div>
- <div style="display: flex; justify-content: end; width: 100%;">
- <a onclick="page(6);" class="btn btn-primary"><?= l("lang_oobe_next") ?></a>
- </div>
- </div>
- </div>
- </div>
- <div id="oobe-page-6" class="oobe-page" style="display: none;">
- <div style="text-align: center;">
- <img style="width: 64px;" src="/icons/subscription.svg">
- <h3 style="margin-top: 5px;"><?= l("lang_oobe_pages_5_title") ?></h3>
-
- <div class="oobe-container" style="height: 228px;">
- <p style="margin-top: 10px;">
- <?= l("lang_oobe_pages_5_description") ?>
- </p>
-
- <div class="promo-wrapper promo-plus" style="text-align: left;">
- <div class="card promo-item">
- <div class="card-body" style="padding: 5px 10px;">
- <img src="/logo-plus-trim.svg" style="width: 36px;vertical-align: middle;"><span style="display:inline-block;font-size:24px;font-family: 'Josefin Sans', sans-serif; font-weight: bold; vertical-align: middle;margin-left: 5px; margin-top: 5px;">Delta</span><span class="badge badge-plus rounded-pill" style="font-size: 12px; vertical-align: middle;margin-top: 5px;margin-left:5px;">PLUS</span>
- <span style="float: right; margin-top: 10px;"><?= str_replace("%1", coinsToEur($price), l("lang_plus_subscribe_monthly")) ?></span>
- </div>
- </div>
- </div>
-
- <div class="promo-wrapper promo-ultra" style="text-align: left; margin-top: 10px;">
- <div class="card promo-item">
- <div class="card-body" style="padding: 5px 10px;">
- <img src="/logo-ultra-trim.svg" style="width: 36px;vertical-align: middle;"><span style="display:inline-block;font-size:24px;font-family: 'Josefin Sans', sans-serif; font-weight: bold; vertical-align: middle;margin-left: 5px; margin-top: 5px;">Delta</span><span class="badge badge-ultra rounded-pill" style="font-size: 12px; vertical-align: middle;margin-top: 5px;margin-left:5px;">ULTRA</span>
- <span style="float: right; margin-top: 10px;"><?= str_replace("%1", coinsToEur($price * 2), l("lang_plus_subscribe_monthly")) ?></span>
- </div>
- </div>
- </div>
- </div>
-
- <div style="display: grid; grid-template-columns: 1fr 1fr 1fr;">
- <div style="display: flex; justify-content: start; width: 100%;">
- <a onclick="page(4, true);" class="btn btn-outline-primary"><?= l("lang_oobe_back") ?></a>
- </div>
- <div style="display: flex; justify-content: center; align-items: center; width: 100%;">
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px; margin-right: 5px;"></div>
- <div style="width: 12px; height: 12px; background-color: var(--palette-9); border-radius: 999px;"></div>
- </div>
- <div style="display: flex; justify-content: end; width: 100%;">
- <a onclick="page(7);" class="btn btn-primary"><?= l("lang_oobe_next") ?></a>
- </div>
- </div>
- </div>
- </div>
- <div id="oobe-page-7" class="oobe-page" style="display: none;">
- <div style="text-align: center;">
- <img style="width: 64px;" src="/icons/magic.svg">
- <h3 style="margin-top: 5px;"><?= l("lang_oobe_pages_6_title") ?></h3>
-
- <div class="oobe-container" style="height: 228px;">
- <p style="margin-top: 10px;">
- <?= l("lang_oobe_pages_6_description") ?>
- </p>
- </div>
-
- <div style="display: grid; grid-template-columns: 1fr 1fr 1fr;">
- <div style="display: flex; justify-content: start; width: 100%;"></div>
- <div style="display: flex; justify-content: center; align-items: center; width: 100%;"></div>
- <div style="display: flex; justify-content: end; width: 100%;">
- <a onclick="document.cookie = 'DeltaOOBECompleted=1; path=/; max-age=31536000';" data-bs-dismiss="modal" class="btn btn-primary"><?= l("lang_oobe_finish") ?></a>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
-</div>
-
-<style>
- @media (max-width: 500px) {
- .oobe-container {
- height: calc(100vh - 196px - 56px) !important;
- }
- }
-
- @keyframes fade-out {
- 0% {
- left: 0;
- opacity: 1;
- }
- 100% {
- left: -5%;
- opacity: 0;
- }
- }
-
- @keyframes fade-in {
- 0% {
- right: -5%;
- opacity: 0;
- }
- 100% {
- right: 0;
- opacity: 1;
- }
- }
-
- @keyframes fade-out-back {
- 0% {
- right: 0;
- opacity: 1;
- }
- 100% {
- right: -5%;
- opacity: 0;
- }
- }
-
- @keyframes fade-in-back {
- 0% {
- left: -5%;
- opacity: 0;
- }
- 100% {
- left: 0;
- opacity: 1;
- }
- }
-
- .oobe-page {
- position: relative;
- }
-
- .oobe-page.hiding {
- pointer-events: none;
- animation-name: fade-out;
- animation-direction: normal;
- animation-duration: 200ms;
- animation-fill-mode: forwards;
- animation-iteration-count: infinite;
- animation-timing-function: linear;
- }
-
- .oobe-page.showing {
- pointer-events: none;
- animation-name: fade-in;
- animation-direction: normal;
- animation-duration: 200ms;
- animation-fill-mode: forwards;
- animation-iteration-count: infinite;
- animation-timing-function: linear;
- }
-
- .oobe-page.hiding-back {
- pointer-events: none;
- animation-name: fade-out-back;
- animation-direction: normal;
- animation-duration: 200ms;
- animation-fill-mode: forwards;
- animation-iteration-count: infinite;
- animation-timing-function: linear;
- }
-
- .oobe-page.showing-back {
- pointer-events: none;
- animation-name: fade-in-back;
- animation-direction: normal;
- animation-duration: 200ms;
- animation-fill-mode: forwards;
- animation-iteration-count: infinite;
- animation-timing-function: linear;
- }
-</style>
-
-<script>
- function page(n, back) {
- let m = parseInt(Array.from(document.getElementsByClassName("oobe-page")).filter(i => i.style.display !== "none")[0].id.split("-")[2]);
-
- if (back) {
- document.getElementById("oobe-page-" + m).classList.add("hiding-back");
- setTimeout(() => {
- document.getElementById("oobe-page-" + m).classList.remove("hiding-back");
- document.getElementById("oobe-page-" + m).style.display = "none";
- document.getElementById("oobe-page-" + n).classList.add("showing-back");
- document.getElementById("oobe-page-" + n).style.display = "";
- setTimeout(() => {
- document.getElementById("oobe-page-" + n).classList.remove("showing-back");
- }, 200);
- }, 200);
- } else {
- document.getElementById("oobe-page-" + m).classList.add("hiding");
- setTimeout(() => {
- document.getElementById("oobe-page-" + m).classList.remove("hiding");
- document.getElementById("oobe-page-" + m).style.display = "none";
- document.getElementById("oobe-page-" + n).classList.add("showing");
- document.getElementById("oobe-page-" + n).style.display = "";
- setTimeout(() => {
- document.getElementById("oobe-page-" + n).classList.remove("showing");
- }, 200);
- }, 200);
- }
- }
-
- const oobe = new bootstrap.Modal(document.getElementById("oobe"));
-
- if (!document.cookie.includes("DeltaOOBECompleted=1")) {
- oobe.show();
- document.getElementById("oobe").classList.add("fade");
- }
-</script>
diff --git a/includes/translation.php b/includes/translation.php
deleted file mode 100644
index 4e005c5..0000000
--- a/includes/translation.php
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-function showTranslationBox($id): void {
- $data = json_decode(file_get_contents(getFileFromId($id)), true);
- if (!file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations")) mkdir($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations");
-
- if ($data["language"] === l("lang__name") || !isset($data["contents"]) || $data["contents"] === "") return;
-
- $hasTranslation = false;
-
- if (file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations/" . $id . ".json")) {
- $translationData = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations/" . $id . ".json"), true);
-
- if (md5(file_get_contents(getFileFromId($id))) === $translationData["md5"]) {
- if (isset($translationData["translations"][l("lang__name")])) {
- $hasTranslation = true;
- }
- }
- }
-
- if ($hasTranslation && isset($translationData)) { ?>
- <?php if (isset($_GET["t-orig"])): ?>
- <div class="alert alert-secondary">
- <?= str_replace("%2", locale_get_display_language(l("lang__name"), l("lang__name")), str_replace("%1", locale_get_display_language($data["language"], l("lang__name")), l("lang_translation_available"))) ?> · <a href="<?= explode("&", explode("?", $_SERVER['REQUEST_URI'])[0])[0] ?>"><?= l("lang_translation_translated") ?></a>
- </div>
- <?php else: ?>
- <div class="alert alert-secondary">
- <?= str_replace("%3", timeAgo($translationData["date"] / 1000), str_replace("%2", locale_get_display_language(l("lang__name"), l("lang__name")), str_replace("%1", locale_get_display_language($data["language"], l("lang__name")), l("lang_translation_notice")))) ?> · <a href="<?= $_SERVER['REQUEST_URI'] ?>?t-orig"><?= l("lang_translation_original") ?></a>
- </div>
- <?php endif; ?>
- <?php } else { ?>
- <div class="alert alert-secondary">
- <?= str_replace("%2", locale_get_display_language(l("lang__name"), l("lang__name")), str_replace("%1", locale_get_display_language($data["language"], l("lang__name")), l("lang_translation_none"))) ?>
- </div>
- <?php }
-}
-
-function getTranslation($id, $key) {
- $data = json_decode(file_get_contents(getFileFromId($id)), true);
- if (!file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations")) mkdir($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations");
-
- if ($data["language"] === l("lang__name") || !isset($data["contents"]) || $data["contents"] === "") {
- return $data[$key];
- }
-
- $hasTranslation = false;
-
- if (file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations/" . $id . ".json")) {
- $translationData = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/translations/" . $id . ".json"), true);
-
- if (md5(file_get_contents(getFileFromId($id))) === $translationData["md5"]) {
- if (isset($translationData["translations"][l("lang__name")])) {
- $hasTranslation = true;
- }
- }
- }
-
- if (isset($_GET["t-orig"])) {
- $hasTranslation = false;
- }
-
- if ($hasTranslation && isset($translationData) && isset($translationData["translations"][l("lang__name")][$key])) {
- return $translationData["translations"][l("lang__name")][$key];
- } else {
- return $data[$key];
- }
-} \ No newline at end of file
diff --git a/index.php b/index.php
index 26296e2..455e6ac 100644
--- a/index.php
+++ b/index.php
@@ -25,16 +25,16 @@ $version = file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/version");
<li style="opacity: .25;">7 avril : Désactivation de Delta Studio. Le prix de l'abonnement Delta Ultra sera abaissé à 5 pièces par mois (soit 1,25€ par mois).</li>
<li style="opacity: .25;">14 avril : Retrait de Delta Ultra (et par conséquent de l'option de surnom). Les abonnements Delta Ultra en cours de validité seront convertis en abonnements Delta Plus.</li>
<li style="opacity: .25;">21 avril : Désactivation de Delta Beta. Étant donné qu'il n'y a, à l'heure actuelle, aucune fonctionnalité expérimentale, la page correspondante est simplement retirée. Le prix de l'abonnement Delta Plus sera abaissé à 3 pièces par mois (soit 0,75€ par mois).</li>
- <li style="font-weight: bold;">28 avril : Activation de l'option d'impression des pages pour tous les utilisateurs de Delta. Le prix de l'abonnement Delta Plus sera abaissé à 2 pièces par mois (soit 0,50€ par mois).</li>
- <li>5 mai : Retrait de Delta Plus (et par conséquent du badge de profil et des relectures privilégiées). Les abonnements Delta Plus en cours de validité expireront.</li>
- <li>12 mai : Désactivation de l'option d'aide intégrée. À partir de ce jour, aucun support technique ne sera fourni aux utilisateurs de Delta.</li>
+ <li style="opacity: .25;">28 avril : Activation de l'option d'impression des pages pour tous les utilisateurs de Delta. Le prix de l'abonnement Delta Plus sera abaissé à 2 pièces par mois (soit 0,50€ par mois).</li>
+ <li style="opacity: .25;">5 mai : Retrait de Delta Plus (et par conséquent du badge de profil et des relectures privilégiées). Les abonnements Delta Plus en cours de validité expireront.</li>
+ <li style="font-weight: bold;">12 mai : Désactivation de l'option d'aide intégrée. À partir de ce jour, aucun support technique ne sera fourni aux utilisateurs de Delta.</li>
<li>19 mai : Retrait du Pass Événements. Les intégrations dans des applications tierces utilisant le Pass Événements cesseront de fonctionner.</li>
<li>26 mai : Retrait du système de recherche.</li>
<li>2 juin : Désactivation des albums de galerie. Étant donné qu'aucun album n'existe actuellement, la page est simplement retirée.</li>
<li>9 juin : Désactivation de toutes les fonctionnalités de modification de Delta. Pour modifier du contenu après cette date, contactez les administrateurs.</li>
<li>16 juin : Fermeture définitive de Delta</li>
</ul>
- <div>Si vous avez la moindre question ou le moindre renseignement à nous faire parvenir, utilisez soit <a href="/support/">l'option d'aide de Delta</a>, ou l'adresse <a href="mailto:delta@equestria.dev">delta@equestria.dev</a>.</div>
+ <div>Si vous avez la moindre question ou le moindre renseignement à nous faire parvenir, utilisez l'adresse <a href="mailto:delta@equestria.dev">delta@equestria.dev</a>.</div>
</details>
<?php if (str_contains($version, "rc") ||
diff --git a/login/index.php b/login/index.php
index 2476354..4a733a6 100644
--- a/login/index.php
+++ b/login/index.php
@@ -92,15 +92,6 @@ if (!isset($_GET["method"])) {
$_GET["method"] = "email";
}
-if ($step === 0 && $_GET["method"] === "hub") {
- setcookie("DeltaReturnPage", $_GET["return"], 0, "/");
- header("Location: https://account.equestria.dev/hub/api/rest/oauth2/auth?client_id=" . $app["oauth2_id"] . "&response_type=code&redirect_uri=https://" . ($_SERVER["HTTP_HOST"] === "192.168.1.121:81" ? "delta-staging" : "delta") . ".equestria.dev/login/oauth&scope=Hub&request_credentials=default&access_type=offline");
- die();
-} else if ($step === 0 && $_GET["method"] === "apply") {
- header("Location: /register");
- die();
-}
-
$title = "lang_login_title"; require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
?>
@@ -129,14 +120,6 @@ $title = "lang_login_title"; require_once $_SERVER['DOCUMENT_ROOT'] . "/includes
<button class="btn btn-primary g-recaptcha" data-sitekey="<?= trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/recaptcha-site")) ?>" data-callback='onSubmit' data-action='submit'><?= l("lang_login_continue") ?></button>
</form>
-
- <hr>
- <div style="margin-top: 20px;">
- <form method="post" action="/login/?method=hub&return=<?= rawurlencode($_GET["return"]) ?>" id="oauth-form">
- <button class="btn btn-outline-secondary g-recaptcha" data-sitekey="<?= trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/recaptcha-site")) ?>" data-callback='onSubmit2' data-action='submit'><span style="vertical-align: middle; margin-right: 2px;"><?= l("lang_login_eqd") ?></span><img style="height: 36px;" alt="Equestria.dev" src="/equestriadev.svg"></button>
- </form>
- <a style="display: block; margin-top: 5px;" href="/login/?method=apply&return=<?= rawurlencode($_GET["return"]) ?>"><?= l("lang_login_auth_apply") ?></a>
- </div>
<?php elseif ($step === 1): ?>
<img src="/icons/code.svg?o" style="width: 48px; margin-bottom: 10px;">
<p><b><?= l("lang_login_code3") ?></b></p>
diff --git a/login/oauth/index.php b/login/oauth/index.php
deleted file mode 100644
index feae098..0000000
--- a/login/oauth/index.php
+++ /dev/null
@@ -1,83 +0,0 @@
-<?php
-
-$server = "account.equestria.dev";
-
-header("Content-Type: text/plain");
-
-if (!isset($_GET['code'])) {
- die();
-}
-
-function encode($string) {
- return preg_replace("/[^a-zA-Z0-9.]/m", "", base64_encode($string));
-}
-
-$appdata = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/email.json"), true);
-$users = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/users.json"), true);
-
-$crl = curl_init('https://' . $server . '/hub/api/rest/oauth2/token');
-curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
-curl_setopt($crl, CURLINFO_HEADER_OUT, true);
-curl_setopt($crl, CURLOPT_POST, true);
-curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Basic " . base64_encode($appdata["oauth2_id"] . ":" . $appdata["oauth2_secret"]),
- "Content-Type: application/x-www-form-urlencoded",
- "Accept: application/json"
-]);
-curl_setopt($crl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&redirect_uri=" . urlencode("https://" . ($_SERVER["HTTP_HOST"] === "192.168.1.121:81" ? "delta-staging" : "delta") . ".equestria.dev/login/oauth") . "&code=" . $_GET['code']);
-
-$result = curl_exec($crl);
-$result = json_decode($result, true);
-
-curl_close($crl);
-
-if (isset($result["access_token"])) {
- $crl = curl_init('https://' . $server . '/hub/api/rest/users/me');
- curl_setopt($crl, CURLOPT_RETURNTRANSFER, true);
- curl_setopt($crl, CURLINFO_HEADER_OUT, true);
- curl_setopt($crl, CURLOPT_HTTPHEADER, [
- "Authorization: Bearer " . $result["access_token"],
- "Accept: application/json"
- ]);
-
- $result = curl_exec($crl);
- $result = json_decode($result, true);
- $result["email"] = isset($result["profile"]["email"]) && $result["profile"]["email"]["verified"] ? $result["profile"]["email"]["email"] : "-";
-
- if (!in_array($result["email"], array_keys($users))) {
- header("Location: /login/?return=" . rawurlencode($_COOKIE["DeltaReturnPage"] ?? "/") . "&failed_oauth2_notfound&v=" . rawurlencode($result["email"]));
- die();
- }
-
- if (!file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/tokens")) mkdir($_SERVER['DOCUMENT_ROOT'] . "/includes/tokens");
-
- if ($_SERVER["HTTP_HOST"] === "192.168.1.121:81") {
- $cont = false;
- if (json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/profiles/" . $users[$result["email"]] . ".json"), true)["admin"]) {
- $cont = true;
- }
-
- if (!$cont) {
- header("Location: https://delta.equestria.dev");
- die();
- }
- }
-
- $token = encode(openssl_random_pseudo_bytes(128));
-
- file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/tokens/" . $token, json_encode([
- "user" => $users[$result["email"]],
- "date" => date('c')
- ]));
-
- setcookie("DeltaSession", $token, time() + (86400 * 90), "/", "", false, true);
-
- if (isset($_COOKIE["DeltaReturnPage"])) {
- header("Location: " . str_replace("\n", "", str_replace("\r", "", $_COOKIE["DeltaReturnPage"])));
- } else {
- header("Location: /");
- }
-
- setcookie("DeltaReturnPage", "");
- die();
-} \ No newline at end of file
diff --git a/logo-plus-trim.svg b/logo-plus-trim.svg
deleted file mode 100644
index 81744e6..0000000
--- a/logo-plus-trim.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 26.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 39 39" style="enable-background:new 0 0 39 39;" xml:space="preserve">
-<style type="text/css">
- .st0{fill:url(#SVGID_1_);}
-</style>
-<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="5.7953" y1="16.9853" x2="33.2453" y2="44.4353" gradientTransform="matrix(1 0 0 -1 0 50)">
- <stop offset="0" style="stop-color:#C711E1"/>
- <stop offset="1" style="stop-color:#7F52FF"/>
-</linearGradient>
-<path class="st0" d="M19.5,39c-0.3,0-0.5,0-0.8-0.1s-0.5-0.2-0.7-0.3L3,30c-0.5-0.3-0.8-0.6-1.1-1.1c-0.3-0.4-0.4-0.9-0.4-1.4V11.1
- c0-0.6,0.1-1.1,0.4-1.6S2.6,8.7,3,8.4l15-8.1c0.2-0.1,0.5-0.2,0.7-0.3c0.2,0,0.5-0.1,0.8-0.1s0.5,0,0.8,0.1c0.2,0.1,0.5,0.1,0.7,0.3
- l15,8.1c0.5,0.3,0.8,0.6,1.1,1.1s0.4,1,0.4,1.6v16.4c0,0.6-0.1,1.1-0.4,1.5c-0.3,0.5-0.6,0.8-1.1,1.1l-15,8.6
- c-0.2,0.1-0.5,0.2-0.7,0.3S19.8,39,19.5,39z M13.8,14.6c0.8-0.8,1.6-1.4,2.6-1.9s2-0.7,3.1-0.7s2.1,0.2,3.1,0.7s1.9,1.1,2.6,1.9
- l7.7-4.5L19.5,3L6.1,10.1L13.8,14.6z M18,35.2v-8.4c-1.7-0.5-3.2-1.4-4.3-2.7S12,21.2,12,19.5c0-0.3,0-0.7,0-1
- c0-0.4,0.1-0.8,0.3-1.2l-7.8-4.7v14.9L18,35.2z M19.5,24c1.3,0,2.3-0.4,3.2-1.3c0.9-0.9,1.3-1.9,1.3-3.2c0-1.3-0.4-2.3-1.3-3.2
- c-0.9-0.9-1.9-1.3-3.2-1.3c-1.2,0-2.3,0.4-3.2,1.3c-0.9,0.9-1.3,1.9-1.3,3.2c0,1.2,0.4,2.3,1.3,3.2C17.2,23.6,18.3,24,19.5,24z
- M21,35.2l13.5-7.7V12.6l-7.9,4.6c0.2,0.5,0.3,0.9,0.3,1.2c0,0.3,0,0.7,0,1c0,1.7-0.6,3.3-1.7,4.6c-1.1,1.4-2.6,2.3-4.3,2.7L21,35.2
- z"/>
-</svg>
diff --git a/logo-plus.svg b/logo-plus.svg
deleted file mode 100644
index b280efb..0000000
--- a/logo-plus.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 26.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
-<style type="text/css">
- .st0{fill:url(#SVGID_1_);}
-</style>
-<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="10.2717" y1="37.4783" x2="37.7283" y2="10.0217">
- <stop offset="0" style="stop-color:#C711E1"/>
- <stop offset="1" style="stop-color:#7F52FF"/>
-</linearGradient>
-<path class="st0" d="M24,43.5c-0.3,0-0.5,0-0.8-0.1s-0.5-0.2-0.7-0.3l-15-8.6c-0.5-0.3-0.8-0.6-1.1-1.1C6.1,33,6,32.5,6,32V15.6
- C6,15,6.1,14.5,6.4,14c0.3-0.5,0.7-0.8,1.1-1.1l15-8.1c0.2-0.1,0.5-0.2,0.7-0.3c0.2,0,0.5-0.1,0.8-0.1s0.5,0,0.8,0.1
- c0.2,0.1,0.5,0.1,0.7,0.3l15,8.1c0.5,0.3,0.8,0.6,1.1,1.1c0.3,0.5,0.4,1,0.4,1.6V32c0,0.6-0.1,1.1-0.4,1.5c-0.3,0.5-0.6,0.8-1.1,1.1
- l-15,8.6c-0.2,0.1-0.5,0.2-0.7,0.3S24.3,43.5,24,43.5z M18.3,19.1c0.8-0.8,1.6-1.4,2.6-1.9s2-0.7,3.1-0.7s2.1,0.2,3.1,0.7
- s1.9,1.1,2.6,1.9l7.7-4.5L24,7.5l-13.4,7.1L18.3,19.1z M22.5,39.7v-8.4c-1.7-0.5-3.2-1.4-4.3-2.7s-1.7-2.9-1.7-4.6c0-0.3,0-0.7,0-1
- c0-0.4,0.1-0.8,0.3-1.2L9,17.1V32L22.5,39.7z M24,28.5c1.3,0,2.3-0.4,3.2-1.3c0.9-0.9,1.3-1.9,1.3-3.2c0-1.3-0.4-2.3-1.3-3.2
- c-0.9-0.9-1.9-1.3-3.2-1.3c-1.2,0-2.3,0.4-3.2,1.3s-1.3,1.9-1.3,3.2c0,1.2,0.4,2.3,1.3,3.2C21.7,28.1,22.8,28.5,24,28.5z M25.5,39.7
- L39,32V17.1l-7.9,4.6c0.2,0.5,0.3,0.9,0.3,1.2c0,0.3,0,0.7,0,1c0,1.7-0.6,3.3-1.7,4.6c-1.1,1.4-2.6,2.3-4.3,2.7L25.5,39.7z"/>
-</svg>
diff --git a/logo-ultra-trim.svg b/logo-ultra-trim.svg
deleted file mode 100644
index 6654d3c..0000000
--- a/logo-ultra-trim.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 26.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 38.9 38.9" style="enable-background:new 0 0 38.9 38.9;" xml:space="preserve">
-<style type="text/css">
- .st0{fill:url(#SVGID_1_);}
-</style>
-<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="5.7875" y1="16.7625" x2="33.1407" y2="44.1158" gradientTransform="matrix(1 0 0 -1 0 50)">
- <stop offset="6.200396e-04" style="stop-color:#D6E012;stop-opacity:0.75"/>
- <stop offset="1" style="stop-color:#BF763D"/>
-</linearGradient>
-<path class="st0" d="M13.7,14.8L3.1,8.6L18,0.4C18.5,0.1,19,0,19.5,0s1,0.1,1.5,0.4L36,8.6l-10.6,6.2c-0.8-0.8-1.6-1.4-2.6-1.9
- s-2-0.7-3.1-0.7s-2.1,0.2-3.1,0.7C15.3,13.4,14.6,13.9,13.7,14.8z M18,38.9L3,30.2c-0.5-0.3-0.8-0.6-1.1-1.1c-0.3-0.5-0.4-1-0.4-1.5
- V11l10.9,6.4c-0.2,0.4-0.3,0.8-0.3,1.2c0,0.4,0,0.7,0,1c0,1.7,0.6,3.3,1.7,4.6c1.1,1.4,2.6,2.3,4.3,2.7L18,38.9z M19.5,24.1
- c-1.2,0-2.3-0.4-3.2-1.3c-0.9-0.9-1.3-1.9-1.3-3.2c0-1.3,0.4-2.3,1.3-3.2c0.9-0.9,1.9-1.3,3.2-1.3c1.3,0,2.3,0.4,3.2,1.3
- c0.9,0.9,1.3,1.9,1.3,3.2c0,1.2-0.4,2.3-1.3,3.2C21.8,23.8,20.8,24.1,19.5,24.1z M21,38.9V27c1.7-0.5,3.2-1.4,4.3-2.7
- c1.1-1.4,1.7-2.9,1.7-4.6c0-0.3,0-0.7,0-1c0-0.4-0.1-0.8-0.3-1.2L37.5,11v16.7c0,0.6-0.1,1.1-0.4,1.5c-0.3,0.5-0.6,0.8-1.1,1.1
- L21,38.9z"/>
-</svg>
diff --git a/logo-ultra.svg b/logo-ultra.svg
deleted file mode 100644
index 87f2572..0000000
--- a/logo-ultra.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 26.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
-<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
- viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
-<style type="text/css">
- .st0{fill:url(#SVGID_1_);}
-</style>
-<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="10.3234" y1="37.5299" x2="37.6766" y2="10.1766">
- <stop offset="6.200396e-04" style="stop-color:#D6E012;stop-opacity:0.75"/>
- <stop offset="1" style="stop-color:#BF763D"/>
-</linearGradient>
-<path class="st0" d="M18.3,19.1L7.7,12.9l14.9-8.1c0.5-0.3,1-0.4,1.5-0.4s1,0.1,1.5,0.4l14.9,8.1l-10.6,6.2
- c-0.8-0.8-1.6-1.4-2.6-1.9s-2-0.7-3.1-0.7s-2.1,0.2-3.1,0.7C19.9,17.7,19.1,18.3,18.3,19.1z M22.5,43.2l-15-8.6
- c-0.5-0.3-0.8-0.6-1.1-1.1C6.1,33,6,32.5,6,32V15.3l10.9,6.4c-0.2,0.4-0.3,0.8-0.3,1.2c0,0.4,0,0.7,0,1c0,1.7,0.6,3.3,1.7,4.6
- c1.1,1.4,2.6,2.3,4.3,2.7L22.5,43.2z M24,28.5c-1.2,0-2.3-0.4-3.2-1.3c-0.9-0.9-1.3-1.9-1.3-3.2c0-1.3,0.4-2.3,1.3-3.2
- s1.9-1.3,3.2-1.3c1.3,0,2.3,0.4,3.2,1.3c0.9,0.9,1.3,1.9,1.3,3.2c0,1.2-0.4,2.3-1.3,3.2C26.3,28.1,25.3,28.5,24,28.5z M25.5,43.2
- V31.4c1.7-0.5,3.2-1.4,4.3-2.7c1.1-1.4,1.7-2.9,1.7-4.6c0-0.3,0-0.7,0-1c0-0.4-0.1-0.8-0.3-1.2L42,15.3V32c0,0.6-0.1,1.1-0.4,1.5
- c-0.3,0.5-0.6,0.8-1.1,1.1L25.5,43.2z"/>
-</svg>
diff --git a/plus/code/index.php b/plus/code/index.php
deleted file mode 100644
index 5b3f407..0000000
--- a/plus/code/index.php
+++ /dev/null
@@ -1,80 +0,0 @@
-<?php
-
-$title = "lang_plus_usecode_title";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-global $_PROFILE; global $_USER;
-
-$codes = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/coins.json"), true);
-$list = array_keys($codes);
-
-if (isset($_GET["code"])) {
- $_GET["code"] = strip_tags($_GET["code"]);
-}
-
-if (isset($_GET["code"]) && isset($_GET["confirm"])) {
- if (in_array($_GET["code"], $list) && !$codes[$_GET["code"]]["used"]) {
- if ($_PROFILE["balance"] !== -1) $_PROFILE["balance"] += $codes[$_GET["code"]]["balance"];
- $codes[$_GET["code"]]["used"] = true;
- $codes[$_GET["code"]]["date"] = date('c');
- $codes[$_GET["code"]]["user"] = $_USER;
-
- file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/coins.json", json_encode($codes, JSON_PRETTY_PRINT));
- saveProfile();
-
- header("Location: /plus/code/?code=" . urlencode($_GET["code"]) . "&confirmed");
- } else {
- header("Location: /plus/code/?code=" . urlencode($_GET["code"]));
- }
-
- die();
-}
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-
-?>
-
-<div class="container">
- <br><br>
- <h1><?= l("lang_plus_usecode_title") ?></h1>
-
- <form>
- <p><?= l("lang_plus_usecode_intro") ?></p>
- <p>
- <label>
- <input autocomplete="off" spellcheck="false" name="code" type="text" class="form-control" value="<?= $_GET["code"] ?? "" ?>" placeholder="<?= l("lang_plus_usecode_placeholder") ?>" <?= isset($_GET["code"]) ? "" : "autofocus" ?>>
- </label>
- </p>
- <button class="btn btn-primary"><?= l("lang_plus_usecode_continue") ?></button>
- </form>
-
- <?php if (isset($_GET["code"])): ?>
- <hr>
-
- <?php if (isset($_GET["confirmed"])): ?>
- <div class="alert alert-success">
- <?= str_replace("%1", $codes[$_GET["code"]]["balance"], l("lang_plus_usecode_success")) ?>
- </div>
- <?php else: ?>
- <?php if (in_array($_GET["code"], $list) && !$codes[$_GET["code"]]["used"]): ?>
- <div class="alert alert-secondary">
- <?= str_replace("%1", $codes[$_GET["code"]]["balance"], l("lang_plus_usecode_usable")) ?>
- </div>
- <?php else: ?>
- <div class="alert alert-danger">
- <?php if (in_array($_GET["code"], $list) && $codes[$_GET["code"]]["user"] === $_USER): ?>
- <?= str_replace("%1", timeAgo($codes[$_GET["code"]]["date"]), l("lang_plus_usecode_me")) ?>
- <?php else: ?>
- <?= l("lang_plus_usecode_used") ?>
- <?php endif; ?>
- </div>
- <?php endif; ?>
- <?php endif; ?>
-
- <a <?php if (in_array($_GET["code"], $list) && !$codes[$_GET["code"]]["used"]): ?>href="/plus/code/?code=<?= $_GET["code"] ?>&confirm" class="btn btn-primary"<?php else: ?>class="btn btn-primary disabled"<?php endif; ?>><?= l("lang_plus_usecode_use") ?></a>
- <?php endif; ?>
-
- <br><br><br>
-</div>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
diff --git a/plus/index.php b/plus/index.php
deleted file mode 100644
index de2108a..0000000
--- a/plus/index.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-
-$price = (float)trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/plusprice"));
-$title = "Delta Plus";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-global $_PROFILE;
-
-$age = (int)(explode(" ", timeAgo($_PROFILE["birth"] ?? "1990-01-01", false, true))[0]);
-
-?>
-
-<style>
- @keyframes gradient {
- 0% {
- background-position: 0 50%;
- }
- 50% {
- background-position: 100% 50%;
- }
- 100% {
- background-position: 0 50%;
- }
- }
-</style>
-
- <div class="text-white" id="plus-box" style="background: linear-gradient(45deg, #E44857, #C711E1, #7F52FF, #5269ff); background-size: 400% 400%; animation: gradient 10s ease infinite;">
- <div style="background-image: url('/hero.svg'); background-size: cover; background-position: center;">
- <br><br><br><br>
-
- <div>
- <div class="coins"><?= $_PROFILE["balance"] === -1 ? "∞" : $_PROFILE["balance"] ?> <?= l("lang_plus_coins") ?></div>
-
- <div style="text-align: center;">
- <img src="/logo.svg" style="width: 64px;margin-top: -5px;">
- <span style="font-family: 'Josefin Sans', sans-serif; font-weight: bold; font-size: 40px; vertical-align: middle;">Delta</span>
- <div id="plus-types" style="display: inline-grid;vertical-align: middle; grid-template-rows: 1fr; grid-gap: 10px;">
- <span class="badge badge-plus rounded-pill" style="display: inline-block !important;font-size: 24px; vertical-align: middle; margin-left: 10px;">PLUS</span>
- </div>
- </div>
- </div>
-
- <div class="container">
- <h2 style="text-align: center; margin-top: 20px; max-width: 70%; margin-left: auto; margin-right: auto;"><?= l("lang_plus_intro") ?></h2>
- </div>
-
- <div style="text-align: center; margin-top: 20px;">
- <?php if ($_PROFILE["plus"]): ?>
- <a href="/plus/subscribe" class="btn btn-outline-dark <?= $age < 16 ? "disabled" : "" ?>"><?= l("lang_plus_change") ?></a><br>
- <small class="text-muted" style="margin-top: 10px;display: block;"><?= str_replace("%1", $_PROFILE['ultra'] ? "Delta Ultra" : "Delta Plus", l("lang_plus_notice")) ?></small>
- <?php else: ?>
- <a href="/plus/subscribe" class="btn btn-outline-dark <?= $age < 16 ? "disabled" : "" ?>"><?= str_replace("%1", "<sup>1</sup>", str_replace("%2", $price, l("lang_plus_buy"))) ?></a><br>
- <small class="text-muted" style="margin-top: 10px;display: block;"><?= l("lang_plus_terms") ?></small>
- <?php endif; ?>
- </div>
-
- <br><br><br><br>
- </div>
- </div>
-
- <br>
- <div class="container" id="plus-container">
- <h2 style="margin-bottom: 20px;"><?= l("lang_plus_perks") ?></h2>
-
- <div id="plus-grid" style="display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 20px;">
- <div class="promo-wrapper promo-plus">
- <div class="card promo-item">
- <div class="card-body">
- <img src="/icons/fast.svg" style="width: 48px;"><br>
- <h4><?= l("lang_plus_list_1_title") ?></h4>
- <span><?= str_replace("%1", "<sup>2</sup>", l("lang_plus_list_1_description")) ?></span>
- </div>
- </div>
- </div>
-
- <div class="promo-wrapper promo-plus">
- <div class="card promo-item">
- <div class="card-body">
- <img src="/icons/badge.svg" style="width: 48px;"><br>
- <h4><?= l("lang_plus_list_3_title") ?></h4>
- <span><?= l("lang_plus_list_3_description") ?></span>
- </div>
- </div>
- </div>
- </div>
-
- <h2 style="margin-bottom: 20px;margin-top: 30px;"><?= l("lang_plus_how") ?></h2>
-
- <div id="plus-grid" style="display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 20px;">
- <div class="card">
- <div class="card-body">
- <h4><?= l("lang_plus_online_title") ?></h4>
- <p style="padding-bottom:30px;"><?= str_replace("%1", "<sup>12</sup>", l("lang_plus_online_description")) ?></p>
- <a class="disabled btn btn-primary" href="/plus/checkout" style="position: absolute;bottom: 16px;"><?= l("lang_plus_action") ?></a>
- </div>
- </div>
-
- <div class="card">
- <div class="card-body">
- <h4><?= l("lang_plus_code_title") ?></h4>
- <p style="padding-bottom:30px;"><?= str_replace("%1", "<sup>13</sup>", l("lang_plus_code_description")) ?></p>
- <a class="btn btn-primary" href="/plus/code" style="position: absolute;bottom: 16px;"><?= l("lang_plus_action") ?></a>
- </div>
- </div>
-
- <div class="card">
- <div class="card-body">
- <h4><?= l("lang_plus_trial_title") ?></h4>
- <p style="padding-bottom:30px;"><?= str_replace("%1", "<sup>14</sup>", l("lang_plus_trial_description")) ?></p>
- <a class="btn btn-primary<?= $_PROFILE["free_trial"] ? " disabled" : "" ?>" href="/plus/trial" style="position: absolute;bottom: 16px;"><?= l("lang_plus_action") ?></a>
- </div>
- </div>
- </div>
-
- <hr>
-
- <p class="text-muted small">
- <sup>1</sup><?= l("lang_plus_notes_0") ?><br>
- <sup>2</sup><?= l("lang_plus_notes_1") ?><br>
- <!--<sup>3</sup><?= l("lang_plus_notes_2") ?><br>
- <sup>4</sup><?= l("lang_plus_notes_3") ?><br>-->
- <sup>5</sup><?= l("lang_plus_notes_4") ?><br>
- <!--<sup>6</sup><?= l("lang_plus_notes_5") ?><br>
- <sup>7</sup><?= l("lang_plus_notes_6") ?><br>
- <sup>8</sup><?= l("lang_plus_notes_7") ?><br>
- <sup>9</sup><?= l("lang_plus_notes_8") ?><br>-->
- <sup>10</sup><?= l("lang_plus_notes_9") ?><br>
- <sup>11</sup><?= l("lang_plus_notes_10") ?><br>
- <sup>12</sup><?= l("lang_plus_notes_11") ?><br>
- <sup>13</sup><?= l("lang_plus_notes_12") ?><br>
- <sup>14</sup><?= l("lang_plus_notes_13") ?><br>
- </p>
- </div>
-
- <br><br>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
diff --git a/plus/subscribe/index.php b/plus/subscribe/index.php
deleted file mode 100644
index 4003d68..0000000
--- a/plus/subscribe/index.php
+++ /dev/null
@@ -1,264 +0,0 @@
-<?php
-
-$price = (float)trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/plusprice"));
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php"; global $_PROFILE;
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/email.php";
-
-$age = (int)(explode(" ", timeAgo($_PROFILE["birth"] ?? "1990-01-01", false, true))[0]);
-
-if (isset($_GET["plan"]) && $_GET["plan"] === "ultra") {
- header("Location: ?plan=plus");
-}
-
-if ($age < 16) {
- header("Location: /");
- die();
-}
-
-$planTarget = -1;
-$planTargetName = "Delta Free";
-$updateCost = 0;
-$planTargetCost = -1;
-
-$currentPlan = 0;
-$currentPlanName = "Delta Free";
-
-if ($_PROFILE["plus"]) {
- if ($_PROFILE["ultra"]) {
- $currentPlan = 2;
- $currentPlanName = "Delta Ultra";
- } else {
- $currentPlan = 1;
- $currentPlanName = "Delta Plus";
- }
-}
-
-if (isset($_GET["plan"])) {
- if (
- ($_GET["plan"] === "delta" && !$_PROFILE["plus"]) ||
- ($_GET["plan"] === "plus" && $_PROFILE["plus"] && !$_PROFILE["ultra"]) ||
- ($_GET["plan"] === "ultra" && $_PROFILE["ultra"]) ||
- ($_GET["plan"] !== "delta" && $_GET["plan"] !== "plus" && $_GET["plan"] !== "ultra")
- ) {
- header("Location: /plus/subscribe");
- die();
- } else {
- $title = "lang_plus_confirm_title";
-
- if ($_GET["plan"] === "delta") $planTarget = 0 and $planTargetName = "Delta Free" and $planTargetCost = 0;
- if ($_GET["plan"] === "plus") $planTarget = 1 and $planTargetName = "Delta Plus" and $planTargetCost = $price;
- if ($_GET["plan"] === "ultra") $planTarget = 2 and $planTargetName = "Delta Ultra" and $planTargetCost = $price * 1.25;
-
- if ($currentPlan === 0 && $planTarget === 1) $updateCost = $price;
- if ($currentPlan === 0 && $planTarget === 2) $updateCost = 5;
- if ($currentPlan === 1 && $planTarget === 2) $updateCost = 1;
-
- $updatePossible = $_PROFILE["balance"] === -1 || $_PROFILE["balance"] - $updateCost >= 0;
- }
-} else {
- $title = "lang_plus_subscribe_title";
-}
-
-if (isset($_GET["confirm"]) && isset($_GET["plan"])) {
- if ($updatePossible) {
- if ($_PROFILE["balance"] !== -1) $_PROFILE["balance"] -= $updateCost;
-
- switch ($planTarget) {
- case 0:
- $_PROFILE["plus"] = false;
- $_PROFILE["ultra"] = false;
- $_PROFILE["last_plan_update"] = date('c');
- $_PROFILE["free_trial"] = true;
- $_PROFILE["renewal"] = null;
- break;
-
- case 1:
- $_PROFILE["plus"] = true;
- $_PROFILE["ultra"] = false;
- $_PROFILE["last_plan_update"] = date('c');
- $_PROFILE["free_trial"] = true;
- if (!isset($_PROFILE["renewal"])) $_PROFILE["renewal"] = date('Y-m-d', time() + (86400 * (int)date('t')));
- break;
-
- case 2:
- $_PROFILE["plus"] = true;
- $_PROFILE["ultra"] = true;
- $_PROFILE["last_plan_update"] = date('c');
- $_PROFILE["free_trial"] = true;
- if (!isset($_PROFILE["renewal"])) $_PROFILE["renewal"] = date('Y-m-d', time() + (86400 * (int)date('t')));
- break;
- }
-
- sendPlanUpdate($_PROFILE["email"], $planTarget);
- saveProfile();
- }
-
- header("Location: /plus");
- die();
-}
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-
-?>
-
-<div class="container">
- <br><br>
-
- <?php if (isset($_GET["plan"])): ?>
- <h1>
- <?= l("lang_plus_confirm_title") ?>
- <div class="coins coins-inline"><?= $_PROFILE["balance"] === -1 ? "∞" : $_PROFILE["balance"] ?> <?= l("lang_plus_coins") ?></div>
- </h1>
- <?php if ($updatePossible): ?>
- <p><?= str_replace("%2", "<b>$planTargetName</b>", str_replace("%1", "<b>$currentPlanName</b>", l($planTarget > $currentPlan ? "lang_plus_confirm_up" : "lang_plus_confirm_down"))) ?></p>
- <p>
- <?= str_replace("%1", $updateCost, l("lang_plus_confirm_cost")) ?><br>
- <?php if ($_PROFILE["balance"] === -1): ?>
- <?= str_replace("%2", "∞", str_replace("%1", "∞", l("lang_plus_confirm_balance"))) ?>
- <?php else: ?>
- <?= str_replace("%2", $_PROFILE["balance"] - $updateCost, str_replace("%1", $_PROFILE["balance"], l("lang_plus_confirm_balance"))) ?>
- <?php endif; ?><br>
- <?php if ($planTargetCost > 0): ?>
- <?= str_replace("%3", formatDate($_PROFILE["renewal"] ?? time() + (86400 * (int)date('t'))), str_replace("%1", $planTargetCost, l("lang_plus_confirm_renewal"))) ?>
- <?php else: ?>
- <?= l("lang_plus_confirm_norenewal") ?>
- <?php endif; ?>
- </p>
-
- <?php if ($planTarget === 0): ?>
- <div class="alert alert-warning">
- <b><?= l("lang_plus_confirm_refund_0") ?></b> <?= l("lang_plus_confirm_refund_1") ?>
- </div>
- <?php endif; ?>
-
- <?php if (isset($_COOKIE["DeltaKiosk"])): ?>
- <div class="alert alert-secondary">
- <?= l("lang_plus_kiosk") ?>
- </div>
- <?php else: ?>
- <a class="btn btn-primary" href="/plus/subscribe/?plan=<?= $_GET["plan"] ?>&confirm"><?= str_replace("%1", l($planTarget > $currentPlan ? "lang_plus_confirm_up2" : "lang_plus_confirm_down2"), l("lang_plus_confirm_proceed")) ?></a><br>
- <small class="text-muted"><?= l("lang_plus_confirm_email") ?></small>
- <?php endif; ?>
- <?php else: ?>
- <div class="alert alert-danger">
- <?= str_replace("%3", $planTargetName, str_replace("%2", $updateCost, str_replace("%1", $_PROFILE["balance"], l("lang_plus_confirm_missing")))) ?>
- </div>
- <?php endif; ?>
- <?php else: ?>
- <h1 style="margin-bottom: 15px;">
- <?= l("lang_plus_subscribe_title2") ?>
- <div class="coins coins-inline"><?= $_PROFILE["balance"] === -1 ? "∞" : $_PROFILE["balance"] ?> <?= l("lang_plus_coins") ?></div>
- </h1>
-
- <div id="plus-grid" style="display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 20px;">
-
- <div class="promo-wrapper promo-none">
- <div class="card promo-item">
- <div class="card-body">
- <h4 class="card-title" style="text-align: center; margin-top: 10px;">
- <img src="/logo.svg" style="width: 36px;margin-top: -5px;"><br>
- <span style="margin-top:15px;display:inline-block;font-size:32px;font-family: 'Josefin Sans', sans-serif; font-weight: bold; vertical-align: middle;">Delta</span>
- </h4>
-
- <ul style="margin-bottom: 20px; margin-top: 20px;">
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_subscribe_base") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_subscribe_help") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_0_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_1_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_2_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_3_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_4_pretty") ?></li>
- <!--<li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_5_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_6_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_7_pretty") ?></li>-->
- </ul>
-
- <?php if (!$_PROFILE["plus"]): ?>
- <a class="btn btn-primary disabled"><?= l("lang_plus_subscribe_current") ?></a><br>
- <?php else: ?>
- <a href="/plus/subscribe/?plan=delta" class="btn btn-primary"><?= l("lang_plus_subscribe_down") ?></a><br>
- <?php endif; ?>
-
- <div style="margin-top: 10px;" class="small text-muted"><?= l("lang_plus_subscribe_free") ?></div>
- </div>
- </div>
- </div>
-
- <div class="promo-wrapper promo-plus">
- <div class="card promo-item">
- <div class="card-body">
- <h4 class="card-title" style="text-align: center; margin-top: 10px;">
- <img src="/logo-plus-trim.svg" style="width: 36px;margin-top: -5px;"><br>
- <span style="margin-top:15px;display:inline-block;font-size:32px;font-family: 'Josefin Sans', sans-serif; font-weight: bold; vertical-align: middle;">Delta</span>
- <span class="badge badge-plus rounded-pill" style="font-size: 12px; vertical-align: middle; margin-top: 12px;margin-left:5px;">PLUS</span>
- </h4>
-
- <ul style="margin-bottom: 20px; margin-top: 20px;">
- <li><?= l("lang_plus_subscribe_base") ?></li>
- <li><?= l("lang_plus_subscribe_help") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_list_1_pretty") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_list_3_pretty") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_list_4_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;" style="color: var(--bs-link-color);"><?= l("lang_plus_list_2_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_5_pretty") ?></li>
- <!--<li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_0_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_6_pretty") ?></li>
- <li class="plus-compare-placeholder" style="opacity:0;"><?= l("lang_plus_list_7_pretty") ?></li>-->
- </ul>
-
- <?php if ($_PROFILE["plus"] && !$_PROFILE["ultra"]): ?>
- <a class="btn btn-primary disabled"><?= l("lang_plus_subscribe_current") ?></a><br>
- <?php elseif (!$_PROFILE["ultra"]): ?>
- <a href="/plus/subscribe/?plan=plus" class="btn btn-primary"><?= l("lang_plus_subscribe_up") ?></a><br>
- <?php else: ?>
- <a href="/plus/subscribe/?plan=plus" class="btn btn-primary"><?= l("lang_plus_subscribe_down") ?></a><br>
- <?php endif; ?>
-
- <div style="margin-top: 10px;" class="small text-muted"><?= $price ?> <?= l("lang_plus_subscribe_coin") ?> · <?= str_replace("%1", coinsToEur($price), l("lang_plus_subscribe_monthly")) ?></div>
- </div>
- </div>
- </div>
-
- <!--<div class="promo-wrapper promo-ultra">
- <div class="card promo-item">
- <div class="card-body">
- <h4 class="card-title" style="text-align: center; margin-top: 10px;">
- <img src="/logo-ultra-trim.svg" style="width: 36px;margin-top: -5px;"><br>
- <span style="margin-top:15px;display:inline-block;font-size:32px;font-family: 'Josefin Sans', sans-serif; font-weight: bold; vertical-align: middle;">Delta</span>
- <span class="badge badge-ultra rounded-pill" style="font-size: 12px; vertical-align: middle; margin-top: 12px;margin-left:5px;">ULTRA</span>
- </h4>
-
- <ul style="margin-bottom: 20px; margin-top: 20px;">
- <li><?= l("lang_plus_subscribe_base") ?></li>
- <li><?= l("lang_plus_subscribe_help") ?></li>
- <li><?= l("lang_plus_list_1_pretty") ?></li>
- <li><?= l("lang_plus_list_2_pretty") ?></li>
- <li><?= l("lang_plus_list_3_pretty") ?></li>
- <li><?= l("lang_plus_list_4_pretty") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_list_5_pretty") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_list_0_pretty") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_list_6_pretty") ?></li>
- <li style="color: var(--bs-link-color);"><?= l("lang_plus_list_7_pretty") ?></li>
- </ul>
-
- <?php if ($_PROFILE["plus"] && $_PROFILE["ultra"]): ?>
- <a href="/plus/subscribe/?plan=ultra" class="btn btn-primary disabled"><?= l("lang_plus_subscribe_current") ?></a><br>
- <?php else: ?>
- <a href="/plus/subscribe/?plan=ultra" class="btn btn-primary"><?= l("lang_plus_subscribe_up") ?></a><br>
- <?php endif; ?>
-
- <div style="margin-top: 10px;" class="small text-muted"><?= $price * 1.25 ?> <?= l("lang_plus_subscribe_coin") ?> · <?= str_replace("%1", coinsToEur($price * 1.25), l("lang_plus_subscribe_monthly")) ?></div>
- </div>
- </div>
- </div>-->
- </div>
- <?php endif; ?>
-
- <br><br><br>
-</div>
-
-<br><br>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
diff --git a/plus/trial/index.php b/plus/trial/index.php
deleted file mode 100644
index 0fd403b..0000000
--- a/plus/trial/index.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php
-
-$title = "lang_plus_trial1_title";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-global $_PROFILE; global $_USER;
-
-?>
-
-<div class="container">
- <br><br>
- <h1><?= l("lang_plus_trial1_title") ?></h1>
-
- <?php if (isset($_GET["confirm"]) && !$_PROFILE["free_trial"]):
-
- $_PROFILE["balance"] += 5;
- $_PROFILE["free_trial"] = true;
- saveProfile();
-
- ?>
- <div class="alert alert-success">
- <?= l("lang_plus_trial1_success") ?>
- </div>
- <?php else: ?>
- <div>
- <?php if (!$_PROFILE["free_trial"]): ?>
- <p><?= l("lang_plus_trial1_intro") ?></p>
- <p><?= l("lang_plus_trial1_message") ?></p>
- <a href="/plus/trial/?confirm" class="btn btn-primary">Start trial</a>
- <?php else: ?>
- <div class="text-muted"><?= l("lang_plus_trial1_unavailable") ?></div>
- <?php endif; ?>
- </div>
- <?php endif; ?>
-
- <br><br><br>
-</div>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
diff --git a/plusprice b/plusprice
deleted file mode 100644
index 0cfbf08..0000000
--- a/plusprice
+++ /dev/null
@@ -1 +0,0 @@
-2
diff --git a/register/complete/index.php b/register/complete/index.php
deleted file mode 100644
index c817017..0000000
--- a/register/complete/index.php
+++ /dev/null
@@ -1,57 +0,0 @@
-<?php
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.php";
-
-$title = "lang_register_title"; require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-
-?>
-
-<style>
- html, body {
- overflow: hidden;
- scroll-behavior: smooth;
- }
-
- * {
- scroll-behavior: smooth;
- }
-
- .full-page {
- border-bottom: 1px solid var(--palette-5);
- padding-top: 50px;
- height: 100vh;
- scroll-snap-align: start;
- scroll-snap-stop: always;
- display: flex;
- align-items: center;
- justify-content: center;
- text-align: center;
- }
-
- .full-page:nth-last-child(1) {
- border-bottom: none;
- }
-</style>
-
-<div style="scroll-snap-type: y mandatory;position: fixed;inset: 0;overflow: scroll;">
- <div class="full-page" style="background-color: var(--palette-6);">
- <div class="container" style="max-width: 960px; color: var(--bs-secondary-bg);">
- <img src="/icons/magic-register.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_complete_title") ?></h1>
- <p><?= l("lang_register_complete_description") ?></p>
- <div class="alert alert-secondary" style="display: grid; grid-template-columns: max-content 1fr; grid-gap: 10px; max-width: max-content; margin-left: auto; margin-right: auto;">
- <div style="display: flex; align-items: center;">
- <img src="/icons/email.svg">
- </div>
- <div style="display: flex; align-items: center;">
- <span><?= str_replace("%1", strip_tags($_GET["email"] ?? "-"), l("lang_register_send_email2")) ?></span>
- </div>
- </div>
- <p><?= l("lang_register_complete_thanks") ?></p>
- </div>
- </div>
-</div>
-
-<br><br>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
diff --git a/register/index.php b/register/index.php
deleted file mode 100644
index db0c5ee..0000000
--- a/register/index.php
+++ /dev/null
@@ -1,347 +0,0 @@
-<?php
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.php";
-
-$title = "lang_register_title"; require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-
-?>
-
-<script src="https://www.google.com/recaptcha/api.js"></script>
-
-<style>
- html, body {
- overflow: hidden;
- scroll-behavior: smooth;
- }
-
- * {
- scroll-behavior: smooth;
- }
-
- .full-page {
- border-bottom: 1px solid var(--palette-5);
- padding-top: 50px;
- height: 100vh;
- scroll-snap-align: start;
- scroll-snap-stop: always;
- display: flex;
- align-items: center;
- justify-content: center;
- text-align: center;
- }
-
- .full-page:nth-last-child(1) {
- border-bottom: none;
- }
-
- .grecaptcha-badge { visibility: hidden; }
-</style>
-
-<form id="form" style="scroll-snap-type: y mandatory;position: fixed;inset: 0;overflow: scroll;" action="/register/submit/" method="post">
- <div class="full-page" id="/0" style="background-color: var(--palette-0);">
- <div class="container" style="max-width: 960px;">
- <?php if (isset($_GET["error"])): ?>
- <div class="alert alert-primary" style="max-width: max-content; margin-left: auto; margin-right: auto;">
- <?= l("lang_register_errors_" . $_GET["error"]) ?>
- </div>
- <?php endif; ?>
-
- <img src="/logo.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_welcome") ?></h1>
- <p><?= l("lang_register_intro") ?></p>
-
- <div class="alert alert-secondary" style="display: grid; grid-template-columns: max-content 1fr; grid-gap: 10px; max-width: max-content; margin-left: auto; margin-right: auto;">
- <div style="display: flex; align-items: center;">
- <img src="/icons/id.svg">
- </div>
- <div style="display: flex; align-items: center;">
- <span><?= l("lang_register_id") ?></span>
- </div>
- </div>
- <a href="#/1" class="btn btn-primary"><?= l("lang_register_start") ?> ↓</a>
- </div>
- </div>
-
- <div class="full-page" id="/1" style="background-color: var(--palette-1);">
- <div class="container" style="max-width: 960px;">
- <img src="/icons/name.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_name_title") ?></h1>
- <p><?= l("lang_register_name_description") ?></p>
- <div style="display: grid; grid-template-columns: max-content 1fr; grid-gap: 10px; max-width: 480px; margin: 10px auto;">
- <div style="display: flex; align-items: center;">
- <label style="margin: 0;" for="first_name" class="form-label"><?= l("lang_register_name_first1") ?></label>
- </div>
- <input onkeydown="updatePage1();" onkeyup="updatePage1();" onchange="updatePage1();" type="text" class="form-control ignore-enter" maxlength="30" minlength="0" placeholder="<?= l("lang_register_name_first2") ?>" id="first_name" name="first_name" required>
- </div>
- <div style="display: grid; grid-template-columns: max-content 1fr; grid-gap: 10px; max-width: 480px; margin: 10px auto;">
- <div style="display: flex; align-items: center;">
- <label style="margin: 0;" for="last_name" class="form-label"><?= l("lang_register_name_last1") ?></label>
- </div>
- <input onkeydown="updatePage1();" onkeyup="updatePage1();" onchange="updatePage1();" type="text" class="form-control ignore-enter" maxlength="30" minlength="0" placeholder="<?= l("lang_register_name_last2") ?>" id="last_name" name="last_name" required>
- </div>
- <div class="alert alert-primary" style="max-width: max-content; margin-left: auto; margin-right: auto;">
- <label style="margin: 0; display: inline;" for="use_name">
- <?= l("lang_register_name_use1") ?>&nbsp;
- </label>
- <input onkeydown="updatePage1();" onkeyup="updatePage1();" onchange="updatePage1();" style="display: inline; width: 20ch;" type="text" class="form-control ignore-enter" maxlength="30" minlength="0" placeholder="<?= l("lang_register_name_use2") ?>" id="use_name" name="use_name"><br>
- <small>(<?= l("lang_register_name_use3") ?>)</small>
- </div>
- <a href="#/2" class="btn btn-primary disabled" id="page1_btn"><?= l("lang_register_continue") ?> ↓</a>
- </div>
- </div>
-
- <div class="full-page" id="/2" style="background-color: var(--palette-2);">
- <div class="container" style="max-width: 960px;">
- <img src="/icons/smartphone.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_contact_title") ?></h1>
- <p><?= l("lang_register_contact_description") ?></p>
- <div style="display: grid; grid-template-columns: max-content 1fr; grid-gap: 10px; max-width: 480px; margin: 10px auto;">
- <div style="display: flex; align-items: center;">
- <label style="margin: 0;" for="email" class="form-label"><?= l("lang_register_contact_email1") ?></label>
- </div>
- <input onkeydown="updatePage2();" onkeyup="updatePage2();" onchange="updatePage2();" type="email" class="form-control ignore-enter" maxlength="60" minlength="0" placeholder="<?= l("lang_register_contact_email2") ?>" id="email" name="email" required>
- </div>
- <div style="display: grid; grid-template-columns: max-content 1fr; grid-gap: 10px; max-width: 480px; margin: 10px auto;">
- <div style="display: flex; align-items: center;">
- <label style="margin: 0;" for="phone" class="form-label"><?= l("lang_register_contact_phone1") ?></label>
- </div>
- <input onkeydown="updatePage2();" onkeyup="updatePage2();" onchange="updatePage2();" type="text" class="form-control ignore-enter" maxlength="30" minlength="0" placeholder="<?= l("lang_register_contact_phone2") ?>" id="phone" name="phone">
- </div>
- <a href="#/3" class="btn btn-primary disabled" id="page2_btn"><?= l("lang_register_continue") ?> ↓</a>
- </div>
- </div>
-
- <div class="full-page" id="/3" style="background-color: var(--palette-3);">
- <div class="container" style="max-width: 960px;">
- <img src="/icons/age.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_birthday_title") ?></h1>
- <p><?= l("lang_register_birthday_description") ?></p>
- <p>
- <select style="display: inline;width: max-content;" onchange="updatePage3();" class="form-select" id="birth_day" name="birth_day" required>
- <option value="99" selected disabled>(<?= l("lang_register_birthday_day") ?>)</option>
- <?php for ($i = 1; $i < 32; $i++): ?>
- <option><?= $i ?></option>
- <?php endfor; ?>
- </select>
- <select style="display: inline;width: max-content;" onchange="updatePage3();" class="form-select" id="birth_month" name="birth_month" required>
- <option value="99" selected disabled>(<?= l("lang_register_birthday_month") ?>)</option>
- <?php foreach ([
- [ 1, "jan" ],
- [ 2, "feb" ],
- [ 3, "mar" ],
- [ 4, "apr" ],
- [ 5, "may" ],
- [ 6, "jun" ],
- [ 7, "jul" ],
- [ 8, "aug" ],
- [ 9, "sep" ],
- [ 10, "oct" ],
- [ 11, "nov" ],
- [ 12, "dec" ],
- ] as $month): ?>
- <option value="<?= $month[0] ?>"><?= l("lang_months_" . $month[1]) ?></option>
- <?php endforeach; ?>
- </select>
- <select style="display: inline;width: max-content;" onchange="updatePage3();" class="form-select" id="birth_year" name="birth_year" required>
- <option value="999999" selected disabled>(<?= l("lang_register_birthday_year") ?>)</option>
- <?php for ($i = ((int)date('Y')) - 7; $i > ((int)date('Y')) - 107; $i--): ?>
- <option><?= $i ?></option>
- <?php endfor; ?>
- </select>
- <div class="alert alert-primary" style="max-width: max-content; margin-left: auto; margin-right: auto; display: none;" id="underage">
- <label style="margin: 0; display: inline;" for="underage_email">
- <?= l("lang_register_birthday_underage1") ?>&nbsp;
- </label>
- <input onkeydown="updatePage3();" onkeyup="updatePage3();" onchange="updatePage3();" type="email" class="form-control ignore-enter" maxlength="60" minlength="0" placeholder="<?= l("lang_register_birthday_underage2") ?>" id="underage_email" name="underage_email">
- </div>
- </p>
- <a href="#/4" class="btn btn-primary disabled" id="page3_btn"><?= l("lang_register_continue") ?> ↓</a>
- </div>
- </div>
-
- <div class="full-page" id="/4" style="background-color: var(--palette-4);">
- <div class="container" style="max-width: 960px;">
- <img src="/icons/rules.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_rules_title") ?></h1>
- <p><?= l("lang_register_rules_description") ?></p>
-
- <div id="rules" style="overflow: auto;height: 256px;background: var(--palette-5);border: 1px solid var(--palette-9);border-radius: 10px;padding: 10px;margin-bottom: 1rem;text-align: left;" onscroll="updatePage4();">
- <?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/rules.php"; ?>
- </div>
-
- <a href="#/5" class="btn btn-primary disabled" id="page4_btn"><?= l("lang_register_continue") ?> ↓</a>
- </div>
- </div>
-
- <div class="full-page" id="/5" style="background-color: var(--palette-5);">
- <div class="container" style="max-width: 960px;">
- <img src="/icons/save.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_check_title") ?></h1>
- <p><?= l("lang_register_check_description") ?></p>
-
- <ul style="text-align: left;">
- <li><?= l("lang_register_check_steps_0") ?> <b id="check-first_name">-</b> <b id="check-last_name">-</b><span id="check-with_use_name"> (<span id="check-first_name2">-</span>)</span></li>
- <li><?= l("lang_register_check_steps_1") ?> <b id="check-email">-</b></li>
- <li id="check-with_phone"><?= l("lang_register_check_steps_2") ?> <b id="check-phone">-</b></li>
- <li><?= l("lang_register_check_steps_3") ?> <b><span id="check-age">-</span> <?= l("lang_register_check_steps_4") ?></b>, <?= l("lang_register_check_steps_5") ?> <span id="check-birth">-</span></li>
- <li id="check-with_underage"><?= l("lang_register_check_steps_6") ?> <b id="check-underage">-</b></li>
- </ul>
-
- <a href="#/6" class="btn btn-primary"><?= l("lang_register_continue") ?> ↓</a>
- </div>
- </div>
-
- <div class="full-page" id="/6" style="background-color: var(--palette-6);">
- <div class="container" style="max-width: 960px; color: var(--bs-secondary-bg);">
- <img src="/icons/upload-register.svg" style="width: 96px;">
- <h1 style="margin-top: 10px; margin-bottom: 10px;"><?= l("lang_register_send_title") ?></h1>
- <p><?= l("lang_register_send_description") ?></p>
- <div class="alert alert-secondary" style="display: grid; grid-template-columns: max-content 1fr; grid-gap: 10px; max-width: max-content; margin-left: auto; margin-right: auto;">
- <div style="display: flex; align-items: center;">
- <img src="/icons/email.svg">
- </div>
- <div style="display: flex; align-items: center;">
- <span><?= l("lang_register_send_email") ?></span>
- </div>
- </div>
- <button class="btn btn-outline-light g-recaptcha disabled" id="submit_btn" data-sitekey="<?= trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/recaptcha-site")) ?>" data-callback='onSubmit' data-action='submit'><?= l("lang_register_confirm") ?></button><br>
- <small style="margin-top: 10px; display: inline-block;">
- <?= str_replace("%4", '</a>', str_replace("%3", '<a style="color: white;" href="https://policies.google.com/terms" target="_blank">', str_replace("%2", '</a>', str_replace("%1", '<a style="color: white;" href="https://policies.google.com/privacy" target="_blank">', l("lang_register_recaptcha"))))) ?>
- </small>
- </div>
- </div>
-</form>
-
-<br><br>
-
-<script>
- function onSubmit(_) {
- document.getElementById("form").submit();
- }
-
- location.hash = "";
-
- Array.from(document.getElementsByClassName("ignore-enter")).forEach((i) => {
- i.addEventListener('keypress', function (e) {
- if (e.keyCode === 13 || e.which === 13) {
- e.preventDefault();
- return false;
- }
- });
- });
-
- function validateEmail(email) {
- const re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
- return re.test(String(email).toLowerCase());
- }
-
- function validatePhone(phone) {
- const re = /^(\+|)\d{1,3}(-| |)((\(|)\d(\)|)(-| |))+$/;
- return re.test(String(phone).toLowerCase());
- }
-
- function updatePage1() {
- if (document.getElementById("first_name").value.trim().length > 0 && document.getElementById("first_name").value.trim().length < 31
- && document.getElementById("last_name").value.trim().length > 0 && document.getElementById("last_name").value.trim().length < 31
- && ((document.getElementById("use_name").value.trim().length > 0 && document.getElementById("use_name").value.trim().length < 31) || document.getElementById("use_name").value.trim().length === 0)) {
- document.getElementById("page1_btn").classList.remove("disabled");
- } else {
- document.getElementById("page1_btn").classList.add("disabled");
- }
-
- document.getElementById("check-first_name").innerText = document.getElementById("use_name").value.trim().length > 0 ? document.getElementById("use_name").value.trim() : document.getElementById("first_name").value.trim();
- document.getElementById("check-last_name").innerText = document.getElementById("last_name").value.trim();
-
- if (document.getElementById("use_name").value.trim().length > 0) {
- document.getElementById("check-with_use_name").style.display = "";
- document.getElementById("check-first_name2").innerText = document.getElementById("first_name").value.trim();
- } else {
- document.getElementById("check-with_use_name").style.display = "none";
- }
-
- updateAll();
- }
-
- function updatePage2() {
- if (document.getElementById("email").value.trim().length > 0 && document.getElementById("email").value.trim().length < 61 && validateEmail(document.getElementById("email").value.trim())
- && ((document.getElementById("phone").value.trim().length > 0 && document.getElementById("phone").value.trim().length < 31 && validatePhone(document.getElementById("phone").value)) || document.getElementById("phone").value.trim().length === 0)) {
- document.getElementById("page2_btn").classList.remove("disabled");
- } else {
- document.getElementById("page2_btn").classList.add("disabled");
- }
-
- document.getElementById("check-email").innerText = document.getElementById("email").value.trim();
- document.getElementById("check-phone").innerText = document.getElementById("phone").value.trim();
-
- if (document.getElementById("phone").value.trim().length > 0) {
- document.getElementById("check-with_phone").style.display = "";
- } else {
- document.getElementById("check-with_phone").style.display = "none";
- }
-
- updateAll();
- }
-
- function updatePage3() {
- try {
- let date = new Date(document.getElementById("birth_year").value + "-" + document.getElementById("birth_month").value + "-" + document.getElementById("birth_day").value);
- date.toISOString();
-
- if (new Date().getTime() - date.getTime() > 220903200000) {
- if (new Date().getTime() - date.getTime() < 410248800000) {
- document.getElementById("underage").style.display = "";
-
- if (document.getElementById("underage_email").value.trim().length > 0 && document.getElementById("underage_email").value.trim().length < 61 && validateEmail(document.getElementById("underage_email").value.trim())) {
- document.getElementById("page3_btn").classList.remove("disabled");
- } else {
- document.getElementById("page3_btn").classList.add("disabled");
- }
- } else {
- document.getElementById("underage").style.display = "none";
- document.getElementById("underage_email").value = "";
- document.getElementById("page3_btn").classList.remove("disabled");
- }
- } else {
- document.getElementById("underage").style.display = "none";
- document.getElementById("underage_email").value = "";
- document.getElementById("page3_btn").classList.add("disabled");
- }
-
- document.getElementById("check-birth").innerText = document.getElementById("birth_day").value + " " + document.getElementById("birth_month").options[document.getElementById("birth_month").selectedIndex].text;
- document.getElementById("check-age").innerText = Math.floor((new Date().getTime() - date.getTime()) / 31557600000).toString();
- document.getElementById("check-underage").innerText = document.getElementById("underage_email").value.trim();
-
- if (document.getElementById("underage_email").value.trim().length > 0) {
- document.getElementById("check-with_underage").style.display = "";
- } else {
- document.getElementById("check-with_underage").style.display = "none";
- }
- } catch (e) {
- document.getElementById("underage").style.display = "none";
- document.getElementById("underage_email").value = "";
- document.getElementById("page3_btn").classList.add("disabled");
- }
-
- updateAll();
- }
-
- function updatePage4() {
- if (document.getElementById("rules").scrollTop >= document.getElementById("rules").scrollHeight - 256) {
- document.getElementById("page4_btn").classList.remove("disabled");
- } else {
- document.getElementById("page4_btn").classList.add("disabled");
- }
-
- updateAll();
- }
-
- function updateAll() {
- if (document.getElementById("page4_btn").classList.contains("disabled") || document.getElementById("page3_btn").classList.contains("disabled") || document.getElementById("page2_btn").classList.contains("disabled") || document.getElementById("page1_btn").classList.contains("disabled")) {
- document.getElementById("submit_btn").classList.add("disabled");
- } else {
- document.getElementById("submit_btn").classList.remove("disabled");
- }
- }
-</script>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
diff --git a/register/submit/index.php b/register/submit/index.php
deleted file mode 100644
index d56bfd5..0000000
--- a/register/submit/index.php
+++ /dev/null
@@ -1,127 +0,0 @@
-<?php
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/recaptcha/src/autoload.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/email.php";
-
-$recaptcha = new \ReCaptcha\ReCaptcha(trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/recaptcha-secret")));
-header("Content-Type: text/plain");
-
-if (!isset($_POST["g-recaptcha-response"])) {
- header("Location: /register/?error=captcha");
- die();
-}
-
-$resp = $recaptcha->setExpectedHostname(($_SERVER["HTTP_HOST"] === "192.168.1.121:81" ? "delta-staging" : "delta") . ".equestria.dev")
- ->verify($_POST["g-recaptcha-response"], $_SERVER['HTTP_X_FORWARDED_FOR'] ?? $_SERVER['REMOTE_ADDR']);
-if (!$resp->isSuccess()) {
- header("Location: /register/?error=captcha");
- die();
-}
-
-function generateID() {
- $uuid = uuid();
- return [
- "uuid" => $uuid,
- "id" => strtoupper(substr(str_replace("/", "", str_replace("=", "", str_replace(".", "", str_replace("+", "", base64_encode(hex2bin(md5($uuid))))))), 0, 12))
- ];
-}
-
-function validateEmail($email) {
- return (bool)preg_match('/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/', $email);
-}
-
-function validatePhone($phone) {
- return (bool)preg_match('/^(\+|)\d{1,3}(-| |)((\(|)\d(\)|)(-| |))+$/', $phone);
-}
-
-function checkField($field, $profile) {
- global $data;
-
- if (isset($_POST[$field])) {
- $_POST[$field] = trim($_POST[$field]);
-
- if ($profile === "text30" && strlen($_POST[$field]) > 0 && strlen($_POST[$field]) < 31) {
- $data[$field] = strip_tags($_POST[$field]);
- } elseif ($profile === "text30o" && strlen($_POST[$field]) > 0 && strlen($_POST[$field]) < 31) {
- $data[$field] = strip_tags($_POST[$field]);
- } elseif ($profile === "text30o" && strlen($_POST[$field]) === 0) {
- $data[$field] = null;
- } elseif ($profile === "email60" && strlen($_POST[$field]) > 0 && strlen($_POST[$field]) < 61 && validateEmail($_POST[$field])) {
- $data[$field] = strip_tags($_POST[$field]);
- } elseif ($profile === "email60o" && strlen($_POST[$field]) > 0 && strlen($_POST[$field]) < 61 && validateEmail($_POST[$field])) {
- $data[$field] = strip_tags($_POST[$field]);
- } elseif ($profile === "email60o" && strlen($_POST[$field]) === 0) {
- $data[$field] = null;
- } elseif ($profile === "phone30" && strlen($_POST[$field]) > 0 && strlen($_POST[$field]) < 31 && validatePhone($_POST[$field])) {
- $data[$field] = strip_tags($_POST[$field]);
- } elseif ($profile === "phone30o" && strlen($_POST[$field]) > 0 && strlen($_POST[$field]) < 31 && validatePhone($_POST[$field])) {
- $data[$field] = strip_tags($_POST[$field]);
- } elseif ($profile === "phone30o" && strlen($_POST[$field]) === 0) {
- $data[$field] = null;
- } else {
- header("Location: /register/?error=invalid&field=" . $field);
- die();
- }
- } else {
- header("Location: /register/?error=invalid&field=" . $field);
- die();
- }
-}
-
-$data = [];
-
-checkField("first_name", "text30");
-checkField("last_name", "text30");
-checkField("use_name", "text30o");
-checkField("email", "email60");
-checkField("phone", "phone30o");
-checkField("underage_email", "email60o");
-
-$date = "0000-00-00";
-
-if (!isset($_POST["birth_year"]) || !isset($_POST["birth_month"]) || !isset($_POST["birth_day"]) || !is_numeric($_POST["birth_year"]) || !is_numeric($_POST["birth_month"]) || !is_numeric($_POST["birth_day"]) || (int)$_POST["birth_year"] < 1 || (int)$_POST["birth_month"] < 1 || (int)$_POST["birth_day"] < 1 || (int)$_POST["birth_year"] > (int)date('Y') || (int)$_POST["birth_month"] > 12 || (int)$_POST["birth_day"] > 31) {
- header("Location: /register/?error=invalid&field=birth");
- die();
-} else if (strtotime($_POST["birth_year"] . "-" . $_POST["birth_month"] . "-" . $_POST["birth_day"]) === false) {
- header("Location: /register/?error=invalid&field=birth");
- die();
-} else if (time() - strtotime($_POST["birth_year"] . "-" . $_POST["birth_month"] . "-" . $_POST["birth_day"]) <= 220903200) {
- header("Location: /register/?error=invalid&field=birth");
- die();
-} else if (time() - strtotime($_POST["birth_year"] . "-" . $_POST["birth_month"] . "-" . $_POST["birth_day"]) < 410248800 && !isset($data["underage_email"])) {
- header("Location: /register/?error=invalid&field=underage_email");
- die();
-} else {
- $date = date('Y-m-d', strtotime($_POST["birth_year"] . "-" . $_POST["birth_month"] . "-" . $_POST["birth_day"]));
-}
-
-$data["birth_date"] = $date;
-$id = generateID();
-$data["uuid"] = $id["uuid"];
-$data["id"] = $id["id"];
-$data["lang"] = l("lang__name");
-$data["date"] = date('c');
-
-if (!file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/data/registrations")) mkdir($_SERVER['DOCUMENT_ROOT'] . "/includes/data/registrations");
-file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/registrations/" . $id["uuid"] . ".json", json_encode($data, JSON_PRETTY_PRINT));
-sendRegistration($data["email"], $data["use_name"] ?? $data["first_name"], $id["id"]);
-
-$config = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/email.json"), true);
-
-file_get_contents('https://notifications.equestria.dev/delta', false, stream_context_create([
- 'http' => [
- 'method' => 'POST',
- 'header' =>
- "Content-Type: text/plain\r\n" .
- "Title: " . formatPonypush("New registration request") . "\r\n" .
- "Priority: default\r\n" .
- "Tags: requests\r\n" .
- "Actions: view, Open registrations, https://delta.equestria.dev/admin/registrations/, clear=true\r\n" .
- "Authorization: Basic " . base64_encode($config["ntfyuser"] . ":" . $config["ntfypass"]),
- 'content' => formatPonypush(($data['use_name'] ?? $data['first_name']) . " " . $data["last_name"] . " tried to register on Delta with ID #" . $id["id"])
- ]
-]));
-
-header("Location: /register/complete/?email=" . $data["email"]);
-die(); \ No newline at end of file
diff --git a/studio-done.svg b/studio-done.svg
deleted file mode 100644
index 5d721bb..0000000
--- a/studio-done.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="#FFFFFF"><path d="M0 0h24v24H0z" fill="none"/><path d="M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"/></svg> \ No newline at end of file
diff --git a/support/index.php b/support/index.php
deleted file mode 100644
index c8d6023..0000000
--- a/support/index.php
+++ /dev/null
@@ -1,136 +0,0 @@
-<?php
-
-$title = "lang_support_title";
-
-$p1 = null;
-$p2 = null;
-
-if (isset($_GET["t"]) && is_numeric($_GET["t"]) && (int)$_GET["t"] < 11) {
- $p1 = (int)$_GET["t"];
-}
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-
-if (isset($p1)) {
- $title_pre = l("lang_support_titles_" . $p1);
-}
-
-if (isset($_GET["i"]) && is_numeric($_GET["i"]) && l("lang_support_types_" . $p1 . "_" . $_GET["i"]) !== "lang_support_types_" . $p1 . "_" . $_GET["i"]) {
- $p2 = (int)$_GET["i"];
-}
-
-if (isset($p2)) {
- $title_pre = l("lang_support_types_" . $p1 . "_" . $p2);
-}
-
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-global $_PROFILE; global $_USER;
-
-$phoneSupport = file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/phone") && trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/phone")) !== "" ? trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/phone")) : "+1 123 456 7890";
-$emailSupport = file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/email") && trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/email")) !== "" ? trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/email")) : "contact@example.com";
-
-?>
-
- <div class="container">
- <br><br>
-
- <?php if (isset($p1) && isset($p2)): ?>
- <?php
-
- $code = substr(hexdec(bin2hex(random_bytes(6))), 0, 9);
- $codePretty = implode(" ", str_split($code, 3));
- $codes = json_decode(pf_utf8_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/supportcodes.json")), true);
- $codes[$code] = [
- "user" => $_USER,
- "type" => [$p1, $p2],
- "date" => date('c')
- ];
- file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/supportcodes.json", pf_utf8_encode(json_encode($codes, JSON_PRETTY_PRINT)));
-
- ?>
- <h1><?= l("lang_support_types_" . $p1 . "_" . $p2) ?></h1>
- <p><?= l("lang_support_go_message") ?></p>
- <div class="list-group">
- <details class="list-group-item-action list-group-item cool-list-group-item">
- <summary style="list-style: none;"><?= l("lang_support_go_ways_0") ?></summary>
-
- <div class="list-group-item" style="margin-top: 10px;">
- <p><?= str_replace("%1", "<a href='tel:" . $phoneSupport . "'><b>" . $phoneSupport . "</b></a>", l("lang_support_go_phone_0")) ?></p>
- <p><?= l("lang_support_go_phone_1") ?></p>
- <span class="text-muted"><?= str_replace("%1", '<br>' . $codePretty, l("lang_support_go_warning")) ?></span>
- </div>
- </details>
- <details class="list-group-item-action list-group-item cool-list-group-item">
- <summary style="list-style: none;"><?= l("lang_support_go_ways_1") ?></summary>
-
- <div class="list-group-item" style="margin-top: 10px;">
- <p><?= str_replace("%1", "<a href='mailto:" . $emailSupport . "'><b>" . $emailSupport . "</b></a>", l("lang_support_go_email_0")) ?></p>
- <p><?= l("lang_support_go_email_1") ?></p>
- <span class="text-muted"><?= str_replace("%1", '<br>' . $codePretty, l("lang_support_go_warning")) ?></span>
- </div>
- </details>
- </div>
- <?php elseif (isset($p1) && !isset($p2)): ?>
- <h1><?= l("lang_support_titles_" . $p1) ?></h1>
- <p><a href="/support"><?= l("lang_support_back") ?></a></p>
- <div class="list-group">
- <?php $i = 0; while (l("lang_support_types_" . $p1 . "_" . $i) !== "lang_support_types_" . $p1 . "_" . $i): ?>
- <a href="?t=<?= $p1 ?>&i=<?= $i ?>" class="list-group-item list-group-item-action">
- <?= l("lang_support_types_" . $p1 . "_" . $i) ?>
- </a>
- <?php $i++; endwhile; ?>
- </div>
- <?php else: ?>
- <h1><?= l("lang_support_greeting") ?></h1>
-
- <p><?= l("lang_support_intro") ?></p>
- <div class="list-group">
- <a href="?t=0" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/email.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_0") ?></span>
- </a>
- <a href="?t=1" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/edit.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_1") ?></span>
- </a>
- <a href="?t=2" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/articles.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_2") ?></span>
- </a>
- <a href="?t=3" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/gallery.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_3") ?></span>
- </a>
- <a href="?t=4" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/search.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_4") ?></span>
- </a>
- <a href="?t=5" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/profiles.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_5") ?></span>
- </a>
- <a href="?t=6" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/messages.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_6") ?></span>
- </a>
- <a href="?t=7" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/subscription.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_7") ?></span>
- </a>
- <a href="?t=8" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/requests.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_8") ?></span>
- </a>
- <a href="?t=10" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/help.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_issues_10") ?></span>
- </a>
- </div>
-
- <div class="list-group" style="margin-top: 20px;">
- <a href="/support/rules" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/rules.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_support_rules") ?></span>
- </a>
- <a href="/support/pricing" class="list-group-item list-group-item-action">
- <img class="icon" src="/icons/pricing.svg"><span style="vertical-align: middle; margin-left: 5px;"><?= l("lang_pricing_title") ?></span>
- </a>
- </div>
- <?php endif; ?>
-
- <br><br><br>
- </div>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
diff --git a/support/pricing/index.php b/support/pricing/index.php
deleted file mode 100644
index 9c90be0..0000000
--- a/support/pricing/index.php
+++ /dev/null
@@ -1,102 +0,0 @@
-<?php
-
-$price = (float)trim(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/plusprice"));
-$title = "lang_pricing_title";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-global $_PROFILE; global $_USER;
-
-?>
-
-<div class="container">
- <br><br>
- <h1><?= l("lang_pricing_title") ?></h1>
-
- <div class="alert alert-secondary">
- <b><?= l("lang_pricing_delta_title") ?></b> <?= str_replace("%2", "</a>", str_replace("%1", "<a href='/support'>", l("lang_pricing_delta_message"))) ?>
- </div>
-
- <?php if ($_PROFILE["ultra"]): ?>
- <div class="alert alert-secondary">
- <?= str_replace("%1", coinsToEur($price * 2), l("lang_pricing_ultra")) ?>
- </div>
- <?php endif; ?>
-
- <h2><?= l("lang_pricing_base") ?></h2>
-
- <p><?= l("lang_pricing_descriptions_base") ?></p>
-
- <div style="display: grid; grid-template-columns: 1fr max-content; grid-column-gap: 20px; grid-row-gap: 5px;">
- <div>
- <span title="<?= l("lang_pricing_offers_0_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_0_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_0_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_1_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_1_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_1_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_2_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_2_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_2_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_3_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_3_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_3_pricing") ?></div>
- </div>
-
- <h2 style="margin-top: 15px;"><?= l("lang_pricing_additional") ?></h2>
-
- <p><?= l("lang_pricing_descriptions_additional") ?></p>
-
-
- <div style="display: grid; grid-template-columns: 1fr max-content; grid-column-gap: 20px; grid-row-gap: 5px;">
- <div>
- <span title="<?= l("lang_pricing_offers_4_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_4_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_4_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_5_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_5_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_5_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_6_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_6_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_6_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_7_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_7_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_7_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_8_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_8_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_8_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_9_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_9_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_9_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_10_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_10_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_10_pricing") ?></div>
-
- <div>
- <span title="<?= l("lang_pricing_offers_11_description") ?>" data-bs-toggle="tooltip" style="cursor: help;"><?= l("lang_pricing_offers_11_title") ?></span>
- </div>
- <div style="font-weight: bold; text-align: right;"><?= l("lang_pricing_offers_11_pricing") ?></div>
- </div>
-
- <br><br>
-</div>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
diff --git a/support/rules/index.php b/support/rules/index.php
deleted file mode 100644
index 42dbec6..0000000
--- a/support/rules/index.php
+++ /dev/null
@@ -1,20 +0,0 @@
-<?php
-
-$title = "lang_support_rules";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php";
-require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/navigation.php";
-global $_PROFILE; global $_USER;
-
-?>
-
-<div class="container">
- <br><br>
- <h1><?= l("lang_support_rules") ?></h1>
-
- <?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/rules.php"; ?>
-
- <br><br>
-</div>
-
-<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?> \ No newline at end of file
diff --git a/version b/version
index 025c1ae..a3e9b30 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-5.3.7
+5.3.9