diff --git a/.gitattributes b/.gitattributes index 3db48397e3..01e107ec49 100644 --- a/.gitattributes +++ b/.gitattributes @@ -15,7 +15,9 @@ tests/ export-ignore panel/.env.example export-ignore panel/.eslintrc.js export-ignore panel/.prettierrc.json export-ignore +panel/dist/ui export-ignore panel/jsconfig.json export-ignore +panel/lab export-ignore panel/package-lock.json export-ignore panel/package.json export-ignore panel/public export-ignore diff --git a/composer.json b/composer.json index 22cac7ee64..b970be3faa 100644 --- a/composer.json +++ b/composer.json @@ -3,7 +3,7 @@ "description": "The Kirby core", "license": "proprietary", "type": "kirby-cms", - "version": "4.0.0-beta.3", + "version": "4.0.0-rc.1", "keywords": [ "kirby", "cms", @@ -39,7 +39,7 @@ "christian-riesen/base32": "1.6.0", "claviska/simpleimage": "4.0.6", "composer/semver": "3.4.0", - "filp/whoops": "2.15.3", + "filp/whoops": "2.15.4", "getkirby/composer-installer": "^1.2.1", "laminas/laminas-escaper": "2.13.0", "michelf/php-smartypants": "1.8.1", diff --git a/composer.lock b/composer.lock index 759b3a5da5..5b95a8fb66 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2a7a03197b9625e82cec7a7d3a8f2059", + "content-hash": "98e712fd34f395cf5adb90233cc22416", "packages": [ { "name": "christian-riesen/base32", @@ -201,16 +201,16 @@ }, { "name": "filp/whoops", - "version": "2.15.3", + "version": "2.15.4", "source": { "type": "git", "url": "https://github.com/filp/whoops.git", - "reference": "c83e88a30524f9360b11f585f71e6b17313b7187" + "reference": "a139776fa3f5985a50b509f2a02ff0f709d2a546" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/c83e88a30524f9360b11f585f71e6b17313b7187", - "reference": "c83e88a30524f9360b11f585f71e6b17313b7187", + "url": "https://api.github.com/repos/filp/whoops/zipball/a139776fa3f5985a50b509f2a02ff0f709d2a546", + "reference": "a139776fa3f5985a50b509f2a02ff0f709d2a546", "shasum": "" }, "require": { @@ -260,7 +260,7 @@ ], "support": { "issues": "https://github.com/filp/whoops/issues", - "source": "https://github.com/filp/whoops/tree/2.15.3" + "source": "https://github.com/filp/whoops/tree/2.15.4" }, "funding": [ { @@ -268,7 +268,7 @@ "type": "github" } ], - "time": "2023-07-13T12:00:00+00:00" + "time": "2023-11-03T12:00:00+00:00" }, { "name": "getkirby/composer-installer", diff --git a/config/areas/lab/drawers.php b/config/areas/lab/drawers.php index 24a80acf54..9d16d81f14 100644 --- a/config/areas/lab/drawers.php +++ b/config/areas/lab/drawers.php @@ -6,6 +6,15 @@ 'lab.docs' => [ 'pattern' => 'lab/docs/(:any)', 'load' => function (string $component) { + if (Docs::installed() === false) { + return [ + 'component' => 'k-text-drawer', + 'props' => [ + 'text' => 'The UI docs are not installed.' + ] + ]; + } + $docs = new Docs($component); return [ diff --git a/config/areas/lab/views.php b/config/areas/lab/views.php index 9753d63883..53428dda99 100644 --- a/config/areas/lab/views.php +++ b/config/areas/lab/views.php @@ -10,8 +10,9 @@ return [ 'component' => 'k-lab-index-view', 'props' => [ - 'tab' => 'examples', 'categories' => Category::all(), + 'info' => Category::installed() ? null : 'The default Lab examples are not installed.', + 'tab' => 'examples', ], ]; } @@ -19,6 +20,17 @@ 'lab.docs' => [ 'pattern' => 'lab/docs', 'action' => function () { + $props = match (Docs::installed()) { + true => [ + 'categories' => [['examples' => Docs::all()]], + 'tab' => 'docs', + ], + false => [ + 'info' => 'The UI docs are not installed.', + 'tab' => 'docs', + ] + }; + return [ 'component' => 'k-lab-index-view', 'title' => 'Docs', @@ -28,34 +40,43 @@ 'link' => 'lab/docs' ] ], - 'props' => [ - 'tab' => 'docs', - 'categories' => [ - ['examples' => Docs::all()] - ], - ], + 'props' => $props, ]; } ], 'lab.doc' => [ 'pattern' => 'lab/docs/(:any)', 'action' => function (string $component) { + $crumbs = [ + [ + 'label' => 'Docs', + 'link' => 'lab/docs' + ], + [ + 'label' => $component, + 'link' => 'lab/docs/' . $component + ] + ]; + + if (Docs::installed() === false) { + return [ + 'component' => 'k-lab-index-view', + 'title' => $component, + 'breadcrumb' => $crumbs, + 'props' => [ + 'info' => 'The UI docs are not installed.', + 'tab' => 'docs', + ], + ]; + } + $docs = new Docs($component); return [ - 'component' => 'k-lab-docs-view', - 'title' => $component, - 'breadcrumb' => [ - [ - 'label' => 'Docs', - 'link' => 'lab/docs' - ], - [ - 'label' => $component, - 'link' => 'lab/docs/' . $component - ] - ], - 'props' => [ + 'component' => 'k-lab-docs-view', + 'title' => $component, + 'breadcrumb' => $crumbs, + 'props' => [ 'component' => $component, 'docs' => $docs->toArray(), 'lab' => $docs->lab() diff --git a/config/areas/site/dialogs.php b/config/areas/site/dialogs.php index ee46c48bb1..ec22a73a26 100644 --- a/config/areas/site/dialogs.php +++ b/config/areas/site/dialogs.php @@ -2,9 +2,7 @@ use Kirby\Cms\App; use Kirby\Cms\Find; -use Kirby\Cms\Page; use Kirby\Cms\PageRules; -use Kirby\Cms\Response; use Kirby\Exception\Exception; use Kirby\Exception\InvalidArgumentException; use Kirby\Exception\PermissionException; @@ -14,6 +12,7 @@ use Kirby\Panel\Panel; use Kirby\Toolkit\I18n; use Kirby\Toolkit\Str; +use Kirby\Uuid\Uuids; $fields = require __DIR__ . '/../fields/dialogs.php'; $files = require __DIR__ . '/../files/dialogs.php'; @@ -516,14 +515,21 @@ 'page.move' => [ 'pattern' => 'pages/(:any)/move', 'load' => function (string $id) { - $page = Find::page($id); + $page = Find::page($id); + $parent = $page->parentModel(); + + if (Uuids::enabled() === false) { + $parentId = $parent?->id() ?? '/'; + } else { + $parentId = $parent?->uuid()->toString() ?? 'site://'; + } return [ 'component' => 'k-page-move-dialog', 'props' => [ 'value' => [ 'move' => $page->panel()->url(true), - 'parent' => $page->parent()?->panel()->url(true) ?? '/site' + 'parent' => $parentId ] ] ]; diff --git a/config/areas/site/requests.php b/config/areas/site/requests.php index 8d2fcbcd1a..352334a400 100644 --- a/config/areas/site/requests.php +++ b/config/areas/site/requests.php @@ -19,7 +19,7 @@ $panel = $site->panel(); $uuid = $site->uuid()?->toString(); $url = $site->url(); - $value = $uuid ?? $url; + $value = $uuid ?? '/'; return [ [ @@ -44,7 +44,7 @@ $panel = $child->panel(); $uuid = $child->uuid()?->toString(); $url = $child->url(); - $value = $uuid ?? $url; + $value = $uuid ?? $child->id(); $pages[] = [ 'children' => $panel->url(true), diff --git a/config/areas/system/dialogs.php b/config/areas/system/dialogs.php index 50ff9d4d9e..de88a5f596 100644 --- a/config/areas/system/dialogs.php +++ b/config/areas/system/dialogs.php @@ -52,24 +52,24 @@ 'props' => [ 'fields' => [ 'domain' => [ - 'label' => I18n::translate('license.unregistered'), + 'label' => I18n::translate('license.activate.label'), 'type' => 'info', 'theme' => $local ? 'warning' : 'info', - 'text' => I18n::template('license.register.' . ($local ? 'local' : 'domain'), ['host' => $system->indexUrl()]) + 'text' => I18n::template('license.activate.' . ($local ? 'local' : 'domain'), ['host' => $system->indexUrl()]) ], 'license' => [ - 'label' => I18n::translate('license.register.label'), + 'label' => I18n::translate('license.code.label'), 'type' => 'text', 'required' => true, 'counter' => false, 'placeholder' => 'K3-', - 'help' => I18n::translate('license.register.help') . ' ' . '' . I18n::translate('license.buy') . ' →' + 'help' => I18n::translate('license.code.help') . ' ' . '' . I18n::translate('license.buy') . ' →' ], 'email' => Field::email(['required' => true]) ], 'submitButton' => [ 'icon' => 'key', - 'text' => I18n::translate('license.register'), + 'text' => I18n::translate('activate'), ], 'value' => [ 'license' => null, @@ -88,7 +88,7 @@ return [ 'event' => 'system.register', - 'message' => I18n::translate('license.register.success') + 'message' => I18n::translate('license.success') ]; // @codeCoverageIgnoreEnd } diff --git a/config/areas/system/views.php b/config/areas/system/views.php index dab7de6cfd..b1b99bda83 100644 --- a/config/areas/system/views.php +++ b/config/areas/system/views.php @@ -14,28 +14,29 @@ $environment = [ [ - 'label' => $license ? I18n::translate('license') : I18n::translate('license.register.label'), + 'label' => $license ? I18n::translate('license') : I18n::translate('license.activate.label'), 'value' => $license ? 'Kirby 3' : I18n::translate('license.unregistered.label'), 'theme' => $license ? null : 'negative', + 'icon' => $license ? 'info' : 'key', 'dialog' => $license ? 'license' : 'registration' ], [ 'label' => $updateStatus?->label() ?? I18n::translate('version'), 'value' => $kirby->version(), - 'link' => ( - $updateStatus ? - $updateStatus->url() : - 'https://github.com/getkirby/kirby/releases/tag/' . $kirby->version() - ), - 'theme' => $updateStatus?->theme() + 'link' => $updateStatus?->url() ?? + 'https://github.com/getkirby/kirby/releases/tag/' . $kirby->version(), + 'theme' => $updateStatus?->theme(), + 'icon' => $updateStatus?->icon() ?? 'info' ], [ 'label' => 'PHP', - 'value' => phpversion() + 'value' => phpversion(), + 'icon' => 'code' ], [ 'label' => I18n::translate('server'), - 'value' => $system->serverSoftware() ?? '?' + 'value' => $system->serverSoftware() ?? '?', + 'icon' => 'server' ] ]; diff --git a/config/fields/date.php b/config/fields/date.php index b05a8b9d6f..1cfa41cd86 100644 --- a/config/fields/date.php +++ b/config/fields/date.php @@ -129,7 +129,7 @@ 'key' => 'validation.date.between', 'data' => [ 'min' => $min->format($format), - 'max' => $min->format($format) + 'max' => $max->format($format) ] ]); } elseif ($min && $value->isMin($min) === false) { diff --git a/i18n/translations/bg.json b/i18n/translations/bg.json index 0b3c02f222..eb93fa6f17 100644 --- a/i18n/translations/bg.json +++ b/i18n/translations/bg.json @@ -3,6 +3,7 @@ "account.delete": "Delete your account", "account.delete.confirm": "Do you really want to delete your account? You will be logged out immediately. Your account cannot be recovered.", + "activate": "Activate", "add": "\u0414\u043e\u0431\u0430\u0432\u0438", "alpha": "Alpha", "author": "Author", @@ -47,6 +48,7 @@ "dialog.users.empty": "No users to select", "dimensions": "Размери", + "disable": "Disable", "disabled": "Disabled", "discard": "\u041e\u0442\u043c\u0435\u043d\u0438", @@ -134,6 +136,9 @@ "error.license.email": "Моля въведете валиден email адрес", "error.license.verification": "The license could not be verified", + "error.login.totp.confirm.invalid": "Invalid code", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "The Panel is currently offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Все още няма второстепенни езици", "license": "\u041b\u0438\u0446\u0435\u043d\u0437 \u0437\u0430 Kirby", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Купи лиценз", - "license.register": "Регистрирай", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Please enter your license code", "license.manage": "Manage your licenses", - "license.register.help": "You received your license code after the purchase via email. Please copy and paste it to register.", - "license.register.label": "Please enter your license code", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Thank you for supporting Kirby", - "license.unregistered": "Това е нерегистрирана демо версия на Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Thank you for supporting Kirby", "license.unregistered.label": "Unregistered", "link": "\u0412\u0440\u044a\u0437\u043a\u0430", @@ -434,7 +440,9 @@ "login.code.label.login": "Login code", "login.code.label.password-reset": "Password reset code", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "If your email address is registered, the requested code was sent via email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Your login code", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Login with password", "login.toggleText.password-reset.email": "Forgot your password?", "login.toggleText.password-reset.email-password": "← Back to login", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Изход", @@ -481,6 +503,7 @@ "option": "Option", "options": "Options", "options.none": "No options", + "options.all": "Show all {count} options", "orientation": "Ориентация", "orientation.landscape": "Пейзаж", @@ -550,7 +573,7 @@ "save": "\u0417\u0430\u043f\u0438\u0448\u0438", "search": "Търси", "search.min": "Enter {min} characters to search", - "search.all": "Show all", + "search.all": "Show all {count} results", "search.results.none": "No results", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/ca.json b/i18n/translations/ca.json index 0c7ee34544..53d60c6ff9 100644 --- a/i18n/translations/ca.json +++ b/i18n/translations/ca.json @@ -3,6 +3,7 @@ "account.delete": "Delete your account", "account.delete.confirm": "Do you really want to delete your account? You will be logged out immediately. Your account cannot be recovered.", + "activate": "Activate", "add": "Afegir", "alpha": "Alpha", "author": "Author", @@ -47,6 +48,7 @@ "dialog.users.empty": "No hi ha cap usuari per seleccionar", "dimensions": "Dimensions", + "disable": "Disable", "disabled": "Desactivat", "discard": "Descartar", @@ -134,6 +136,9 @@ "error.license.email": "Si us plau, introdueix una adreça de correu electrònic vàlida", "error.license.verification": "No s’ha pogut verificar la llicència", + "error.login.totp.confirm.invalid": "Codi invàlid", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "The Panel is currently offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Encara no hi ha idiomes secundaris", "license": "Llic\u00e8ncia Kirby", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Comprar una llicència", - "license.register": "Registrar", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Si us plau, introdueixi el seu codi de llicència", "license.manage": "Manage your licenses", - "license.register.help": "Heu rebut el codi de la vostra llicència després de la compra, per correu electrònic. Copieu-lo i enganxeu-lo per registrar-vos.", - "license.register.label": "Si us plau, introdueixi el seu codi de llicència", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Gràcies per donar suport a Kirby", - "license.unregistered": "Aquesta és una demo no registrada de Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Gràcies per donar suport a Kirby", "license.unregistered.label": "Unregistered", "link": "Enlla\u00e7", @@ -434,7 +440,9 @@ "login.code.label.login": "Login code", "login.code.label.password-reset": "Password reset code", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "If your email address is registered, the requested code was sent via email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Your login code", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Login with password", "login.toggleText.password-reset.email": "Forgot your password?", "login.toggleText.password-reset.email-password": "← Back to login", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Tancar sessió", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opcions", "options.none": "Sense opcions", + "options.all": "Show all {count} options", "orientation": "Orientació", "orientation.landscape": "Horitzontal", @@ -550,7 +573,7 @@ "save": "Desar", "search": "Cercar", "search.min": "Introduïu {min} caràcters per cercar", - "search.all": "Mostrar tots", + "search.all": "Show all {count} results", "search.results.none": "Sense resultats", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/cs.json b/i18n/translations/cs.json index 459e96505f..09f2b65a28 100644 --- a/i18n/translations/cs.json +++ b/i18n/translations/cs.json @@ -3,6 +3,7 @@ "account.delete": "Smazat účet", "account.delete.confirm": "Opravdu chcete smazat svůj účet? Budete okamžitě odhlášeni. Účet nemůže být zpětně obnoven.", + "activate": "Activate", "add": "P\u0159idat", "alpha": "Alfa", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "Žádní uživatelé k výběru", "dimensions": "Rozměry", + "disable": "Disable", "disabled": "Zakázáno", "discard": "Zahodit", @@ -134,6 +136,9 @@ "error.license.email": "Zadejte prosím platnou emailovou adresu", "error.license.verification": "Licenci nelze ověřit", + "error.login.totp.confirm.invalid": "Neplatný kód", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "V poli \"{label}\" je chyba:\n{message}", "error.offline": "Panel je v současnosti off-line", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Neexistují zatím žádné další jazyky", "license": "Kirby licence", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Zakoupit licenci", - "license.register": "Registrovat", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Zadejte prosím licenční kód", "license.manage": "Spravovat licence", - "license.register.help": "Licenční kód jste po zakoupení obdrželi na email. Vložte prosím kód a zaregistrujte Vaší kopii.", - "license.register.label": "Zadejte prosím licenční kód", - "license.register.domain": "Vaše licence bude zaregistrována na {host}.", - "license.register.local": "Chystáte se registrovat licenci na Vaší lokální doméně {host}. Pokud bude tato stránka nasazena na veřejnou doménu, registrujte prosím licenci až tam. Pokud je {host} opravdu doménou, na které si přejete licenci registrovat, pokračujte prosím dále.", - "license.register.success": "Děkujeme Vám za podporu Kirby", - "license.unregistered": "Toto je neregistrovaná kopie Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Děkujeme Vám za podporu Kirby", "license.unregistered.label": "Neregistrovaný", "link": "Odkaz", @@ -434,7 +440,9 @@ "login.code.label.login": "Kód pro přihlášení", "login.code.label.password-reset": "Kód pro resetování hesla", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Vaše e-mailová adresa byla zaregistrována, kód byl odeslán do Vaší e-mailové schránky.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Ahoj {user.nameOrEmail},\n\nV nedávné době jsi zažádal(a) o kód pro přihlášení do Kirby Panelu na stránce {site}.\nNásledující kód pro přihlášení je platný {timeout} minut:\n\n{code}\n\nPokud jsi o kód pro přihlášení nežádal(a), tuto zprávu prosím ignoruj a v případě dotazů prosím kontaktuj svého administrátora.\nZ bezpečnostních důvodů prosím tuto zprávu nepřeposílej nikomu dalšímu.", "login.email.login.subject": "Váš kód pro přihlášení", "login.email.password-reset.body": "Ahoj {user.nameOrEmail},\n\nV nedávné době jsi zažádal(a) o kód pro resetování hesla do Kirby Panelu na stránce {site}.\nNásledující kód pro resetování hesla je platný {timeout} minut:\n\n{code}\n\nPokud jsi o kód pro resetování hesla nežádal(a), tuto zprávu prosím ignoruj a v případě dotazů prosím kontaktuj svého administrátora.\nZ bezpečnostních důvodů prosím tuto zprávu nepřeposílej nikomu dalšímu.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Přihlásit se pomocí hesla", "login.toggleText.password-reset.email": "Zapomenuté heslo?", "login.toggleText.password-reset.email-password": "← Zpět na přihlášení", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Odhlásit se", @@ -481,6 +503,7 @@ "option": "Možnost", "options": "Možnosti", "options.none": "Žádné možnosti", + "options.all": "Show all {count} options", "orientation": "Orientace", "orientation.landscape": "Na šířku", @@ -550,7 +573,7 @@ "save": "Ulo\u017eit", "search": "Hledat", "search.min": "Pro vyhledání zadejte alespoň {min} znaky", - "search.all": "Zobrazit vše", + "search.all": "Show all {count} results", "search.results.none": "Žádné výsledky", "section.invalid": "Sekce je neplatná", @@ -572,6 +595,7 @@ "system.issues.content": "Složka content je zřejmě přístupná zvenčí", "system.issues.eol.kirby": "Instalovaná verze Kirby dosáhla konce životnosti a nebude již dále dostávat bezpečnostní aktualizace", "system.issues.eol.plugin": "Instalovaná verze doplňku { plugin } dosáhla konce životnosti a nebude již dále dostávat bezpečnostní aktualizace", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debug mode musí být v produkci vypnutý", "system.issues.git": "Složka .git je zřejmě přístupná zvenčí", "system.issues.https": "Pro všechny stránky doporučujeme používat protokol HTTPS", diff --git a/i18n/translations/da.json b/i18n/translations/da.json index d13d8b3e87..96d0798b3f 100644 --- a/i18n/translations/da.json +++ b/i18n/translations/da.json @@ -3,6 +3,7 @@ "account.delete": "Slet din konto", "account.delete.confirm": "Ønsker du virkelig at slette din konto? Du vil blive logget ud med det samme. Din konto kan ikke gendannes.", + "activate": "Activate", "add": "Ny", "alpha": "Alpha", "author": "Forfatter", @@ -47,6 +48,7 @@ "dialog.users.empty": "Ingen brugere kan vælges", "dimensions": "Dimensioner", + "disable": "Disable", "disabled": "Deaktiveret", "discard": "Kass\u00e9r", @@ -134,6 +136,9 @@ "error.license.email": "Indtast venligst en gyldig email adresse", "error.license.verification": "Licensen kunne ikke verificeres", + "error.login.totp.confirm.invalid": "Ugyldig kode", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "Panelet er i øjeblikket offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Der er ingen sekundære sprog endnu", "license": "Kirby licens", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Køb en licens", - "license.register": "Registrer", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Indtast venligst din licenskode", "license.manage": "Manage your licenses", - "license.register.help": "Du modtog din licenskode efter købet via email. Venligst kopier og indsæt den for at registrere.", - "license.register.label": "Indtast venligst din licenskode", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Tak for din støtte af Kirby", - "license.unregistered": "Dette er en uregistreret demo af Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Tak for din støtte af Kirby", "license.unregistered.label": "Unregistered", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Log ind kode", "login.code.label.password-reset": "Sikkerhedskode", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Hvis din email adresse er registreret er en sikkerhedskode blevet sendt via email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hej {user.nameOrEmail},\n\nDu har for nyligt anmodet om en log ind kode til panelet af {site}.\nFølgende log ind kode vil være gyldig i {timeout} minutter:\n\n{code}\n\nHvis du ikke har anmodet om en log ind kode, kan du blot ignorere denne email eller kontakte din administrator hvis du har spørgsmål.\nAf sikkerhedsmæssige årsager, bør du IKKE videresende denne email.", "login.email.login.subject": "Din log ind kode", "login.email.password-reset.body": "Hej {user.nameOrEmail},\n\nDu har for nyligt anmodet om kode til nulstilling af adgangskode til panelet af {site}.\nFølgende kode til nulstilling af adgangskode vil være gyldig i {timeout} minutter:\n\n{code}\n\nHvis du ikke har anmodet om kode til nulstilling af adgangskode, kan du blot ignorere denne email eller kontakte din administrator hvis du har spørgsmål.\nAf sikkerhedsmæssige årsager, bør du IKKE videresende denne email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Log ind med adgangskode", "login.toggleText.password-reset.email": "Glemt din adgangskode?", "login.toggleText.password-reset.email-password": "← Tilbage til log ind", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Log ud", @@ -481,6 +503,7 @@ "option": "Option", "options": "Indstillinger", "options.none": "Ingen muligheder", + "options.all": "Show all {count} options", "orientation": "Orientering", "orientation.landscape": "Landskab", @@ -550,7 +573,7 @@ "save": "Gem", "search": "Søg", "search.min": "Indtast {min} tegn for at søge", - "search.all": "Vis alle", + "search.all": "Show all {count} results", "search.results.none": "Ingen resultater", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/de.json b/i18n/translations/de.json index 7f2c6525e0..7fa816c45f 100644 --- a/i18n/translations/de.json +++ b/i18n/translations/de.json @@ -3,6 +3,7 @@ "account.delete": "Deinen Account löschen", "account.delete.confirm": "Willst du deinen Account wirklich löschen? Du wirst sofort danach abgemeldet. Dein Account kann nicht wieder hergestellt werden.", + "activate": "Aktivieren", "add": "Hinzuf\u00fcgen", "alpha": "Alpha", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "Keine verfügbaren Accounts", "dimensions": "Maße", + "disable": "Deaktivieren", "disabled": "Gesperrt", "discard": "Verwerfen", @@ -134,6 +136,9 @@ "error.license.email": "Bitte gib eine gültige E-Mailadresse an", "error.license.verification": "Die Lizenz konnte nicht verifiziert werden", + "error.login.totp.confirm.invalid": "Ungültiger Code", + "error.login.totp.confirm.missing": "Bitte gib den aktuellen Code ein", + "error.object.validation": "Fehler im \"{label}\" Feld:\n{message}", "error.offline": "Das Panel ist zur Zeit offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Noch keine sekundären Sprachen", "license": "Lizenz", + "license.activate": "Aktiviere Kirby jetzt", + "license.activate.label": "Bitte aktiviere deine Lizenz", + "license.activate.domain": "Deine Lizenz wird für die Domain {host} aktiviert.", + "license.activate.local": "Du bist dabei, deine Kirby Lizenz für die lokale Domain {host} zu aktivieren. Falls diese Seite später unter einer anderen Domain veröffentlicht wird, solltest du sie erst dort aktivieren. Falls {host} die Domain ist, die du für deine Lizenz nutzen möchtest, fahre bitte fort. ", "license.buy": "Kaufe eine Lizenz", - "license.register": "Registrieren", + "license.code.help": "Du hast deinen Lizenz Code nach dem Kauf per Email bekommen. Bitte kopiere sie aus der Email und füge sie hier ein. ", + "license.code.label": "Bitte gib deinen Lizenzcode ein", "license.manage": "Verwalte deine Lizenzen", - "license.register.help": "Den Lizenzcode findest du in der Bestätigungsmail zu deinem Kauf. Bitte kopiere und füge ihn ein, um Kirby zu registrieren.", - "license.register.label": "Bitte gib deinen Lizenzcode ein", - "license.register.domain": "Deine Lizenz wird unter der Domain {host} registriert", - "license.register.local": "Du bist dabei, deine Lizenz unter der lokalen Domain {host} zu registrieren. Wenn diese Seite unter einer anderen Domain veröffentlicht werden soll, registriere die Lizenz statt dessen bitte dort. Wenn du {host} als Domain verwenden möchtest, fahre bitte fort. ", - "license.register.success": "Vielen Dank für deine Unterstützung", - "license.unregistered": "Dies ist eine unregistrierte Kirby-Demo", + "license.ready": "Bereit, deine Seite zu veröffentlichen?", + "license.success": "Vielen Dank für deine Unterstützung", "license.unregistered.label": "Unregistriert", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Anmeldecode", "login.code.label.password-reset": "Anmeldecode", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Wenn deine E-Mail-Adresse registriert ist, wurde der angeforderte Code per E-Mail versendet.", + "login.code.text.totp": "Bitte gib den Einmal-Code von deiner Authentifizierungs-App ein. ", "login.email.login.body": "Hallo {user.nameOrEmail},\n\ndu hast gerade einen Anmeldecode für das Kirby Panel von {site} angefordert.\n\nDer folgende Anmeldecode ist für die nächsten {timeout} Minuten gültig:\n\n{code}\n\nWenn du keinen Anmeldecode angefordert hast, ignoriere bitte diese E-Mail oder kontaktiere bei Fragen deinen Administrator.\nBitte leite diese E-Mail aus Sicherheitsgründen NICHT weiter.", "login.email.login.subject": "Dein Anmeldecode", "login.email.password-reset.body": "Hallo {user.nameOrEmail},\n\ndu hast gerade einen Anmeldecode für das Kirby Panel von {site} angefordert.\n\nDer folgende Anmeldecode ist für die nächsten {timeout} Minuten gültig:\n\n{code}\n\nWenn du keinen Anmeldecode angefordert hast, ignoriere bitte diese E-Mail oder kontaktiere bei Fragen deinen Administrator.\nBitte leite diese E-Mail aus Sicherheitsgründen NICHT weiter.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Anmelden mit Passwort", "login.toggleText.password-reset.email": "Passwort vergessen?", "login.toggleText.password-reset.email-password": "← Zurück zur Anmeldung", + "login.totp.enable.option": "Einmal-Codes einrichten", + "login.totp.enable.intro": "Authentifizierungs-Apps können Einmal-Codes erstellen, die als zweiter Faktor für die Anmeldung dienen. ", + "login.totp.enable.qr.label": "1. Scanne diesen QR Code", + "login.totp.enable.qr.help": "Scannen funktioniert nicht? Gib den Setup-Schlüssel {secret} manuell in deiner Authentifizierungs-App ein. ", + "login.totp.enable.confirm.headline": "2. Bestätige den erstellten Code.", + "login.totp.enable.confirm.text": "Deine App erstellt alle 30 Sekunden einen neuen Einmal-Code. Gib den aktuellen Code ein, um das Setup abzuschliessen. ", + "login.totp.enable.confirm.label": "Aktueller Code", + "login.totp.enable.confirm.help": "Nach dem Setup werden wir dich bei jeder Anmeldung nach einem Einmal-Code fragen. ", + "login.totp.enable.success": "Aktivierte Einmal-Codes", + "login.totp.disable.option": "Einmal-Codes deaktivieren", + "login.totp.disable.label": "Gib dein Passwort ein, um die Einmal-Codes zu deaktivieren. ", + "login.totp.disable.help": "In Zukunft wird bei der Anmeldung ein anderer zweiter Faktor abgefragt. Z.B. ein Login-Code der per Email zugeschickt wird. Du kannst die Einmal-Codes jeder Zeit später wieder neu einrichten. ", + "login.totp.disable.admin": "

Einmal-Codes für {user} werden hiermit deaktiviert.

In Zukunft wird für die Anmeldung ein anderer zweiter Faktor abgefragt. Z.B. ein Login-Code, der per Email zugeschickt wird. {user} kann nach der nächsten Anmeldung jeder Zeit wieder Einmal-Codes für den Account aktivieren.

", + "login.totp.disable.success": "Deaktivierte Einmal-Codes", "logout": "Abmelden", @@ -481,6 +503,7 @@ "option": "Option", "options": "Optionen", "options.none": "Keine Optionen", + "options.all": "Zeige alle {count} Optionen", "orientation": "Ausrichtung", "orientation.landscape": "Querformat", @@ -550,7 +573,7 @@ "save": "Speichern", "search": "Suchen", "search.min": "Gib mindestens {min}  Zeichen ein, um zu suchen", - "search.all": "Alles zeigen", + "search.all": "Zeige alle {count} Ergebnisse", "search.results.none": "Keine Ergebnisse", "section.invalid": "Der Bereich ist ungültig", @@ -572,6 +595,7 @@ "system.issues.content": "Der content Ordner scheint öffentlich zugänglich zu sein", "system.issues.eol.kirby": "Deine Kirby Installation ist veraltet und erhält keine weiteren Sicherheitsupdates", "system.issues.eol.plugin": "Deine Version des { plugin } Plugins ist veraltet und erhält keine weiteren Sicherheitsupdates", + "system.issues.eol.php": "Deine installierte PHP-Version { release } ist veraltet und erhält keinen Sicherheits-Updates mehr", "system.issues.debug": "Debugging muss im öffentlichen Betrieb ausgeschaltet sein", "system.issues.git": "Der .git Ordner scheint öffentlich zugänglich zu sein", "system.issues.https": "Wir empfehlen HTTPS für alle deine Seiten", diff --git a/i18n/translations/el.json b/i18n/translations/el.json index da54c382bd..f8dc2e7dc1 100644 --- a/i18n/translations/el.json +++ b/i18n/translations/el.json @@ -3,6 +3,7 @@ "account.delete": "Delete your account", "account.delete.confirm": "Do you really want to delete your account? You will be logged out immediately. Your account cannot be recovered.", + "activate": "Activate", "add": "\u03a0\u03c1\u03bf\u03c3\u03b8\u03ae\u03ba\u03b7", "alpha": "Alpha", "author": "Author", @@ -47,6 +48,7 @@ "dialog.users.empty": "No users to select", "dimensions": "Διαστάσεις", + "disable": "Disable", "disabled": "Disabled", "discard": "Απόρριψη", @@ -134,6 +136,9 @@ "error.license.email": "Παρακαλώ εισάγετε μια έγκυρη διεύθυνση ηλεκτρονικού ταχυδρομείου", "error.license.verification": "The license could not be verified", + "error.login.totp.confirm.invalid": "Mη έγκυρος κωδικός", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "The Panel is currently offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Δεν υπάρχουν ακόμα δευτερεύουσες γλώσσες", "license": "\u0386\u03b4\u03b5\u03b9\u03b1 \u03a7\u03c1\u03ae\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 Kirby", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Αγοράστε μια άδεια", - "license.register": "Εγγραφή", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Παρακαλώ εισαγάγετε τον κωδικό άδειας χρήσης", "license.manage": "Manage your licenses", - "license.register.help": "Έχετε λάβει τον κωδικό άδειας χρήσης μετά την αγορά μέσω ηλεκτρονικού ταχυδρομείου. Παρακαλώ αντιγράψτε και επικολλήστε τον για να εγγραφείτε.", - "license.register.label": "Παρακαλώ εισαγάγετε τον κωδικό άδειας χρήσης", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Σας ευχαριστούμε για την υποστήριξη του Kirby", - "license.unregistered": "Αυτό είναι ένα μη καταχωρημένο demo του Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Σας ευχαριστούμε για την υποστήριξη του Kirby", "license.unregistered.label": "Unregistered", "link": "\u03a3\u03cd\u03bd\u03b4\u03b5\u03c3\u03bc\u03bf\u03c2", @@ -434,7 +440,9 @@ "login.code.label.login": "Login code", "login.code.label.password-reset": "Password reset code", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "If your email address is registered, the requested code was sent via email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Your login code", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Login with password", "login.toggleText.password-reset.email": "Forgot your password?", "login.toggleText.password-reset.email-password": "← Back to login", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Αποσύνδεση", @@ -481,6 +503,7 @@ "option": "Option", "options": "Eπιλογές", "options.none": "No options", + "options.all": "Show all {count} options", "orientation": "Προσανατολισμός", "orientation.landscape": "Οριζόντιος", @@ -550,7 +573,7 @@ "save": "\u0391\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7", "search": "Αναζήτηση", "search.min": "Enter {min} characters to search", - "search.all": "Show all", + "search.all": "Show all {count} results", "search.results.none": "No results", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/en.json b/i18n/translations/en.json index 7a5ff44cce..d6300fc2fa 100644 --- a/i18n/translations/en.json +++ b/i18n/translations/en.json @@ -412,15 +412,16 @@ "languages.secondary.empty": "There are no secondary languages yet", "license": "License", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Buy a license", - "license.register": "Register", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Please enter your license code", "license.manage": "Manage your licenses", - "license.register.help": "You received your license code after the purchase via email. Please copy and paste it to register.", - "license.register.label": "Please enter your license code", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Thank you for supporting Kirby", - "license.unregistered": "This is an unregistered demo of Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Thank you for supporting Kirby", "license.unregistered.label": "Unregistered", "link": "Link", @@ -502,6 +503,7 @@ "option": "Option", "options": "Options", "options.none": "No options", + "options.all": "Show all {count} options", "orientation": "Orientation", "orientation.landscape": "Landscape", diff --git a/i18n/translations/eo.json b/i18n/translations/eo.json index 80993b941f..7585e65de0 100644 --- a/i18n/translations/eo.json +++ b/i18n/translations/eo.json @@ -3,6 +3,7 @@ "account.delete": "Forigi vian konton", "account.delete.confirm": "Ĉu vi certe deziras forigi vian konton? Vi estos tuj elsalutita. Ne eblos malforigi vian konton.", + "activate": "Activate", "add": "Aldoni", "alpha": "Alpha", "author": "Aŭtoro", @@ -47,6 +48,7 @@ "dialog.users.empty": "Neniu uzanto por elekti", "dimensions": "Dimensioj", + "disable": "Disable", "disabled": "Malebligita", "discard": "Forĵeti", @@ -134,6 +136,9 @@ "error.license.email": "Bonvolu entajpi validan retpoŝtadreson", "error.license.verification": "Ne eblis kontroli la permisilon", + "error.login.totp.confirm.invalid": "Nevalida kodo", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "La panelo estas ĉi-momente nekonektita", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Ankoraŭ estas neniu kromlingvoj", "license": "Permisilo", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Aĉeti permisilon", - "license.register": "Registriĝi", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Bonvolu entajpi vian kodon de permisilo", "license.manage": "Manage your licenses", - "license.register.help": "Vi ricevis vian kodon de permisilo retpoŝte, post aĉeti ĝin. Bonvolu kopii kaj alglui ĝin por registriĝi.", - "license.register.label": "Bonvolu entajpi vian kodon de permisilo", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Dankon pro subteni Kirby", - "license.unregistered": "Ĉi tiu estas neregistrita kopio de Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Dankon pro subteni Kirby", "license.unregistered.label": "Unregistered", "link": "Ligilo", @@ -434,7 +440,9 @@ "login.code.label.login": "Ensaluta kodo", "login.code.label.password-reset": "Kodo por restarigi pasvorton", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Se via retpoŝtadreso estas enregistrita, via kodo estis sendita retpoŝte", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Saluton {user.nameOrEmail},\n\nVi petis ensalutan kodon por la panelo de la retejo {site}.\nLa sekvanta kodo validos dum {timeout} minutoj:\n\n{code}\n\nSe vi ne petis ensalutan kodon, bonvolu ignori ĉi tiun mesaĝon, aŭ kontaktu vian sistem-administranton se vi havas demandojn.\nPro sekureco, bonvolu NE plusendi ĉi tiun mesaĝon.", "login.email.login.subject": "Via ensaluta kodo", "login.email.password-reset.body": "Saluton {user.nameOrEmail},\n\nVi petis kodon por restarigi vian pasvorton por la panelo de la retejo {site}.\nLa sekvanta kodo validos dum {timeout} minutoj:\n\n{code}\n\nSe vi ne petis kodon por restarigi vian pasvorton, bonvolu ignori ĉi tiun mesaĝon, aŭ kontaktu vian sistem-administranton se vi havas demandojn.\nPro sekureco, bonvolu NE plusendi ĉi tiun mesaĝon.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Ensaluti per pasvorto", "login.toggleText.password-reset.email": "Ĉu vi forgesis vian pasvorton?", "login.toggleText.password-reset.email-password": "← Reen al ensaluto", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Elsaluti", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opcioj", "options.none": "Neniu opcio", + "options.all": "Show all {count} options", "orientation": "Orientiĝo", "orientation.landscape": "Horizontala", @@ -550,7 +573,7 @@ "save": "Konservi", "search": "Serĉi", "search.min": "Entajpu {min} literojn por serĉi", - "search.all": "Montri ĉiujn", + "search.all": "Show all {count} results", "search.results.none": "Neniu rezulto", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/es_419.json b/i18n/translations/es_419.json index 61c209d772..a50ee62093 100644 --- a/i18n/translations/es_419.json +++ b/i18n/translations/es_419.json @@ -3,6 +3,7 @@ "account.delete": "Eliminar cuenta", "account.delete.confirm": "¿Realmente quieres eliminar tu cuenta? Tu sesión se cerrará inmediatamente. Tu cuenta no podrá ser recuperada. ", + "activate": "Activate", "add": "Agregar", "alpha": "Alpha", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "No has seleccionado ningún usuario", "dimensions": "Dimensiones", + "disable": "Disable", "disabled": "Deshabilitado", "discard": "Descartar", @@ -134,6 +136,9 @@ "error.license.email": "Por favor ingresa un correo electrónico valido", "error.license.verification": "La licencia no pude ser verificada", + "error.login.totp.confirm.invalid": "Código inválido", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Hay un error en el campo \"{label}\":\n{message}", "error.offline": "El Panel se encuentra fuera de linea ", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Todavía no hay idiomas secundarios", "license": "Licencia", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Comprar una licencia", - "license.register": "Registrar", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Por favor, ingresa tu código de licencia", "license.manage": "Gestiona tus licencias", - "license.register.help": "Recibió su código de licencia después de la compra por correo electrónico. Por favor copie y pegue para registrarse.", - "license.register.label": "Por favor, ingresa tu código de licencia", - "license.register.domain": "Tu licencia será registrada para {host}.", - "license.register.local": "Estás a punto de registrar tu licencia para el dominio local {host}. Si este sitio va a ser desplegado en un dominio público, por favor regístralo allí. Si {host} es el dominio en el que quiere registrar Kirby, por favor continúa.", - "license.register.success": "Gracias por apoyar a Kirby", - "license.unregistered": "Este es un demo no registrado de Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Gracias por apoyar a Kirby", "license.unregistered.label": "No registrado", "link": "Enlace", @@ -434,7 +440,9 @@ "login.code.label.login": "Código de inicio de sesión", "login.code.label.password-reset": "Código de restablecimiento de contraseña", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Si tu dirección de correo electrónico está registrada, el código solicitado fue enviado por correo electrónico.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hola {user.nameOrEmail},\n\nHas pedido, recientemente, un código de restablecimiento de contraseña para el Panel del sitio {site}.\nEl siguiente código de restablecimiento de contraseña será válido por {timeout} minutos:\n\n{code}\n\nSi no pediste un código de restablecimiento de contraseña, por favor ignora este correo o contacta a tu administrador si tienes dudas.\nPor seguridad, por favor NO reenvíes este correo.", "login.email.login.subject": "Tu código de inicio de sesión", "login.email.password-reset.body": "Hola {user.nameOrEmail},\n\nHas pedido, recientemente, un código de restablecimiento de contraseña para el Panel del sitio {site}.\nEl siguiente código de restablecimiento de contraseña será válido por {timeout} minutos:\n\n{code}\n\nSi no pediste un código de restablecimiento de contraseña, por favor ignora este correo o contacta a tu administrador si tienes dudas.\nPor seguridad, por favor NO reenvíes este correo.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Iniciar sesión con contraseña", "login.toggleText.password-reset.email": "¿Olvidaste tu contraseña?", "login.toggleText.password-reset.email-password": "← Volver al inicio de sesión", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Cerrar sesión", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opciones", "options.none": "Sin opciones", + "options.all": "Show all {count} options", "orientation": "Orientación", "orientation.landscape": "Paisaje", @@ -550,7 +573,7 @@ "save": "Guardar", "search": "Buscar", "search.min": "Introduce {min} caracteres para buscar", - "search.all": "Mostrar todo", + "search.all": "Show all {count} results", "search.results.none": "Sin resultados", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "La carpeta content parece estar expuesta", "system.issues.eol.kirby": "La versión de Kirby que tienes instalada ha llegado al final de su vida útil y no recibirá más actualizaciones de seguridad.", "system.issues.eol.plugin": "Tu versión instalada del plugin { plugin } ha llegado al final de su vida útil y no recibirá más actualizaciones de seguridad.", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "La depuración debe estar desactivada en producción", "system.issues.git": "La carpeta .git parece estar expuesta", "system.issues.https": "Recomendamos HTTPS para todos tus sitios web", diff --git a/i18n/translations/es_ES.json b/i18n/translations/es_ES.json index a8c8424e9d..395de69315 100644 --- a/i18n/translations/es_ES.json +++ b/i18n/translations/es_ES.json @@ -3,6 +3,7 @@ "account.delete": "Borrar cuenta", "account.delete.confirm": "¿Realmente quieres eliminar tu cuenta? Tu sesión se cerrará inmediatamente. La cuenta no podrá ser recuperada.", + "activate": "Activate", "add": "Añadir", "alpha": "Alpha", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "No hay usuarios para seleccionar", "dimensions": "Dimensiones", + "disable": "Disable", "disabled": "Desabilitado", "discard": "Descartar", @@ -134,6 +136,9 @@ "error.license.email": "Por favor, introduce un correo electrónico válido", "error.license.verification": "La licencia no pudo ser verificada", + "error.login.totp.confirm.invalid": "Código inválido", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Hay un error en el campo \"{label}\":\n{message}", "error.offline": "El Panel se encuentra actualmente fuera de línea ", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Aún no hay idiomas secundarios", "license": "Licencia", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Comprar una licencia", - "license.register": "Registro", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Por favor, introduce tu código de licencia", "license.manage": "Gestiona licencias", - "license.register.help": "Recibiste tu código de licencia tras la compra por correo electrónico. Por favor, copia y pega para registrarte.", - "license.register.label": "Por favor, introduce tu código de licencia", - "license.register.domain": "Tu licencia será registrada para {host}.", - "license.register.local": "Estás a punto de registrar tu licencia para el dominio local {host}. Si este sitio va a ser desplegado en un dominio público, por favor regístralo allí. Si {host} es el dominio en el que quiere registrar Kirby, por favor continúa.", - "license.register.success": "Gracias por apoyar a Kirby", - "license.unregistered": "Esta es una demo no registrada de Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Gracias por apoyar a Kirby", "license.unregistered.label": "No registrado", "link": "Enlace", @@ -434,7 +440,9 @@ "login.code.label.login": "Código de inicio de sesión", "login.code.label.password-reset": "Código de restablecimiento de contraseña", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Si tu dirección de correo electrónico está registrada, el código solicitado fue enviado por correo electrónico.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hola {user.nameOrEmail},\n\nHas pedido, recientemente, un código de restablecimiento de contraseña para el Panel del sitio {site}.\nEl siguiente código de restablecimiento de contraseña será válido por {timeout} minutos:\n\n{code}\n\nSi no pediste un código de restablecimiento de contraseña, por favor ignora este correo o contacta a tu administrador si tienes dudas.\nPor seguridad, por favor NO reenvíes este correo.", "login.email.login.subject": "Tu código de inicio de sesión", "login.email.password-reset.body": "Hola {user.nameOrEmail},\n\nHas pedido, recientemente, un código de restablecimiento de contraseña para el Panel del sitio {site}.\nEl siguiente código de restablecimiento de contraseña será válido por {timeout} minutos:\n\n{code}\n\nSi no pediste un código de restablecimiento de contraseña, por favor ignora este correo o contacta a tu administrador si tienes dudas.\nPor seguridad, por favor NO reenvíes este correo.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Iniciar sesión con contraseña", "login.toggleText.password-reset.email": "¿Olvidaste tu contraseña?", "login.toggleText.password-reset.email-password": "← Volver al inicio de sesión", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Cerrar sesión", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opciones", "options.none": "Sin opciones", + "options.all": "Show all {count} options", "orientation": "Orientación", "orientation.landscape": "Paisaje", @@ -550,7 +573,7 @@ "save": "Guardar", "search": "Buscar", "search.min": "Introduce {min} caracteres para buscar", - "search.all": "Mostrar todo", + "search.all": "Show all {count} results", "search.results.none": "Sin resultados", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "La carpeta content parece estar expuesta", "system.issues.eol.kirby": "La versión de Kirby que tienes instalada ha llegado al final de su vida útil y no recibirá más actualizaciones de seguridad.", "system.issues.eol.plugin": "La versión del plugin { plugin } que tienes instalada ha llegado al final de su vida útil y no recibirá más actualizaciones de seguridad.", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "La depuración debe estar desactivada en producción", "system.issues.git": "La carpeta .git parece estar expuesta", "system.issues.https": "Recomendamos HTTPS para todos tus sitios web", diff --git a/i18n/translations/fa.json b/i18n/translations/fa.json index affaf4234f..69f8b9776a 100644 --- a/i18n/translations/fa.json +++ b/i18n/translations/fa.json @@ -3,6 +3,7 @@ "account.delete": "Delete your account", "account.delete.confirm": "Do you really want to delete your account? You will be logged out immediately. Your account cannot be recovered.", + "activate": "Activate", "add": "\u0627\u0641\u0632\u0648\u062f\u0646", "alpha": "Alpha", "author": "Author", @@ -47,6 +48,7 @@ "dialog.users.empty": "No users to select", "dimensions": "ابعاد", + "disable": "Disable", "disabled": "Disabled", "discard": "\u0627\u0646\u0635\u0631\u0627\u0641", @@ -134,6 +136,9 @@ "error.license.email": "لطفا ایمیل صحیحی وارد کنید", "error.license.verification": "The license could not be verified", + "error.login.totp.confirm.invalid": "Invalid code", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "The Panel is currently offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "هنوز هیچ زبان ثانویه‌ای موجود نیست", "license": "\u0645\u062c\u0648\u0632", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "خرید مجوز", - "license.register": "ثبت", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "لطفا کد مجوز خود را وارد کنید", "license.manage": "Manage your licenses", - "license.register.help": "پس از خرید از طریق ایمیل، کد مجوز خود را دریافت کردید. لطفا برای ثبت‌نام آن را کپی و اینجا پیست کنید.", - "license.register.label": "لطفا کد مجوز خود را وارد کنید", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "با تشکر از شما برای حمایت از کربی", - "license.unregistered": "این یک نسخه آزمایشی ثبت نشده از کربی است", + "license.ready": "Ready to launch your site?", + "license.success": "با تشکر از شما برای حمایت از کربی", "license.unregistered.label": "Unregistered", "link": "\u067e\u06cc\u0648\u0646\u062f", @@ -434,7 +440,9 @@ "login.code.label.login": "Login code", "login.code.label.password-reset": "Password reset code", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "If your email address is registered, the requested code was sent via email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Your login code", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Login with password", "login.toggleText.password-reset.email": "Forgot your password?", "login.toggleText.password-reset.email-password": "← Back to login", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "خروج", @@ -481,6 +503,7 @@ "option": "Option", "options": "گزینه‌ها", "options.none": "No options", + "options.all": "Show all {count} options", "orientation": "جهت", "orientation.landscape": "افقی", @@ -550,7 +573,7 @@ "save": "\u0630\u062e\u06cc\u0631\u0647", "search": "جستجو", "search.min": "Enter {min} characters to search", - "search.all": "Show all", + "search.all": "Show all {count} results", "search.results.none": "No results", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/fi.json b/i18n/translations/fi.json index cdc6f7d8ae..7010b5472d 100644 --- a/i18n/translations/fi.json +++ b/i18n/translations/fi.json @@ -3,6 +3,7 @@ "account.delete": "Poista tilisi", "account.delete.confirm": "Haluatko varmasti poistaa tilisi? Sinut kirjataan ulos välittömästi, eikä tiliäsi voi palauttaa.", + "activate": "Activate", "add": "Lis\u00e4\u00e4", "alpha": "Alpha", "author": "Tekijä", @@ -47,6 +48,7 @@ "dialog.users.empty": "Ei valittavissa olevia käyttäjiä", "dimensions": "Mitat", + "disable": "Disable", "disabled": "Pois käytöstä", "discard": "Hylkää", @@ -134,6 +136,9 @@ "error.license.email": "Anna sähköpostiosoite", "error.license.verification": "Lisenssiä ei voitu vahvistaa", + "error.login.totp.confirm.invalid": "Väärä koodi", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "Paneeli on offline-tilassa", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Toissijaisia kieliä ei ole vielä määritetty", "license": "Lisenssi", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Osta lisenssi", - "license.register": "Rekisteröi", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Anna lisenssiavain", "license.manage": "Hallinnoi lisenssejäsi", - "license.register.help": "Lisenssiavain on lähetetty oston jälkeen sähköpostiisi. Kopioi ja liitä avain tähän.", - "license.register.label": "Anna lisenssiavain", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Kiitos kun tuet Kirbyä", - "license.unregistered": "Tämä on rekisteröimätön demo Kirbystä", + "license.ready": "Ready to launch your site?", + "license.success": "Kiitos kun tuet Kirbyä", "license.unregistered.label": "Rekisteröimätön", "link": "Linkki", @@ -434,7 +440,9 @@ "login.code.label.login": "Kirjautumiskoodi", "login.code.label.password-reset": "Salasanan asetuskoodi", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Jos sähköpostiosoitteesi on rekisteröity, tilaamasi koodi lähetetään tähän osoitteeseen.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Kirjautumiskoodisi", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Kirjaudu salasanalla", "login.toggleText.password-reset.email": "Unohditko salasanasi?", "login.toggleText.password-reset.email-password": "← Takaisin kirjautumiseen", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Kirjaudu ulos", @@ -481,6 +503,7 @@ "option": "Option", "options": "Asetukset", "options.none": "Ei valintoja", + "options.all": "Show all {count} options", "orientation": "Suunta", "orientation.landscape": "Vaakasuuntainen", @@ -550,7 +573,7 @@ "save": "Tallenna", "search": "Haku", "search.min": "Anna vähintään {min} merkkiä hakua varten", - "search.all": "Näytä kaikki", + "search.all": "Show all {count} results", "search.results.none": "Ei tuloksia", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "Content-kansio näyttäisi olevan julkinen", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Virheenkäsittelytila pitää poistaa käytöstä tuotantoympäristössä", "system.issues.git": ".git-kansio näyttäisi olevan julkinen", "system.issues.https": "Suosittelemme HTTPS:n käyttöä kaikilla sivustoillasi", diff --git a/i18n/translations/fr.json b/i18n/translations/fr.json index c5d298c88b..4caf615444 100644 --- a/i18n/translations/fr.json +++ b/i18n/translations/fr.json @@ -3,6 +3,7 @@ "account.delete": "Supprimer votre compte", "account.delete.confirm": "Voulez-vous vraiment supprimer votre compte ? Vous serez déconnecté immédiatement. Votre compte ne pourra pas être récupéré.", + "activate": "Activate", "add": "Ajouter", "alpha": "Alpha", "author": "Auteur", @@ -47,6 +48,7 @@ "dialog.users.empty": "Aucun utilisateur à sélectionner", "dimensions": "Dimensions", + "disable": "Disable", "disabled": "Désactivé", "discard": "Supprimer", @@ -134,6 +136,9 @@ "error.license.email": "Veuillez saisir un courriel correct", "error.license.verification": "La licence n’a pu être vérifiée", + "error.login.totp.confirm.invalid": "Code incorrect", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Il y a une erreur dans le champ « {label} » :\n{message}", "error.offline": "Le Panel est actuellement hors ligne", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Il n’y a pas encore de langues secondaires", "license": "Licence", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Acheter une licence", - "license.register": "S’enregistrer", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Veuillez saisir votre numéro de licence", "license.manage": "Gérer vos licences", - "license.register.help": "Vous avez reçu votre numéro de licence par courriel après l'achat. Veuillez le copier et le coller ici pour l'enregistrer.", - "license.register.label": "Veuillez saisir votre numéro de licence", - "license.register.domain": "Votre licence sera enregistrée pour {host}.", - "license.register.local": "Vous êtes sur le point d’enregistrer votre licence pour votre domaine local {host}. Si votre site sera déployé sur un domaine publique, veuillez plutôt l’y l’enregistrer. Si {host} est le domaine pour lequel vous voulez enregistrer Kirby, veuillez continuer.", - "license.register.success": "Merci pour votre soutien à Kirby", - "license.unregistered": "Ceci est une démo non enregistrée de Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Merci pour votre soutien à Kirby", "license.unregistered.label": "Non enregistré", "link": "Lien", @@ -434,7 +440,9 @@ "login.code.label.login": "Code de connexion", "login.code.label.password-reset": "Code de réinitialisation du mot de passe", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Si votre adresse de courriel est enregistrée, le code demandé vous sera envoyé par courriel.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Bonjour {user.nameOrEmail},\n\nVous avez récemment demandé un code de connexion pour le Panel de {site}.\nLe code de connexion suivant sera valable pendant {timeout} minutes :\n\n{code}\n\nSi vous n’avez pas demandé de code de connexion, veuillez ignorer cet email ou contacter votre administrateur si vous avez des questions.\nPar sécurité, merci de ne PAS faire suivre cet email.", "login.email.login.subject": "Votre code de connexion", "login.email.password-reset.body": "Bonjour {user.nameOrEmail},\n\nVous avez récemment demandé un code de réinitialisation de mot de passe pour le Panel de {site}.\nLe code de réinitialisation de mot de passe suivant sera valable pendant {timeout} minutes :\n\n{code}\n\nSi vous n’avez pas demandé de code de réinitialisation de mot de passe, veuillez ignorer cet email ou contacter votre administrateur si vous avez des questions.\nPar sécurité, merci de ne PAS faire suivre cet email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Se connecter avec un mot de passe", "login.toggleText.password-reset.email": "Mot de passe oublié ?", "login.toggleText.password-reset.email-password": "← Retour à la connexion", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Déconnexion", @@ -481,6 +503,7 @@ "option": "Option", "options": "Options", "options.none": "Pas d’options", + "options.all": "Show all {count} options", "orientation": "Orientation", "orientation.landscape": "Paysage", @@ -550,7 +573,7 @@ "save": "Enregistrer", "search": "Rechercher", "search.min": "Saisissez {min} caractères pour rechercher", - "search.all": "Tout afficher", + "search.all": "Show all {count} results", "search.results.none": "Pas de résultats", "section.invalid": "La section est invalide", @@ -572,6 +595,7 @@ "system.issues.content": "Le dossier content semble exposé", "system.issues.eol.kirby": "La version de Kirby installée a atteint la fin de son cycle de vie et ne recevra plus de mises à jour de sécurité", "system.issues.eol.plugin": "La version du plugin { plugin } installée a atteint la fin de son cycle de vie et ne recevra plus de mises à jour de sécurité", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Le débogage doit être désactivé en production", "system.issues.git": "Le dossier .git semble exposé", "system.issues.https": "Nous recommandons HTTPS pour tous vos sites", diff --git a/i18n/translations/hu.json b/i18n/translations/hu.json index a6888b6978..12e54fe6fc 100644 --- a/i18n/translations/hu.json +++ b/i18n/translations/hu.json @@ -3,6 +3,7 @@ "account.delete": "Fiók törlése", "account.delete.confirm": "Tényleg törölni szeretnéd a fiókodat? Azonnal kijelentkeztetünk és ez a folyamat visszavonhatatlan.", + "activate": "Activate", "add": "Hozz\u00e1ad", "alpha": "Alpha", "author": "Szerző", @@ -47,6 +48,7 @@ "dialog.users.empty": "Nincsenek felhasználók kiválasztva", "dimensions": "Méretek", + "disable": "Disable", "disabled": "Inaktív", "discard": "Visszavon\u00e1s", @@ -134,6 +136,9 @@ "error.license.email": "Kérlek adj meg egy valós email-címet", "error.license.verification": "A licensz nem ellenőrizhető", + "error.login.totp.confirm.invalid": "Érvénytelen kód", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "A Panel jelenleg nem elérhető", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Nincsnek még másodlagos nyelvek", "license": "Kirby licenc", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Licenc vásárlása", - "license.register": "Regisztráció", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Kérlek írd be a licenc-kódot", "license.manage": "Manage your licenses", - "license.register.help": "A vásárlás után emailben küldjük el a licenc-kódot. Regisztrációhoz másold ide a kapott kódot.", - "license.register.label": "Kérlek írd be a licenc-kódot", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Köszönjük, hogy támogatod a Kirby-t", - "license.unregistered": "Jelenleg a Kirby nem regisztrált próbaverzióját használod", + "license.ready": "Ready to launch your site?", + "license.success": "Köszönjük, hogy támogatod a Kirby-t", "license.unregistered.label": "Unregistered", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Bejelentkezéshez szükséges kód", "login.code.label.password-reset": "Jelszóvisszaállításhoz szükséges kód", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Amennyiben az email-címed létezik a rendszerben, a kódot oda küldjük el.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Helló {user.nameOrEmail},\n\nNemrégiben bejelentkezési kódot igényeltél a(z) {site} Paneljéhez.\nAz alábbi kód {timeout} percig lesz érvényes:\n\n{code}\n\nHa nem te igényelted a kódot, kérlek hagyd figyelmen kívül ezt az emailt, kérdések esetén pedig vedd fel a kapcsolatot az oldal Adminisztrátorával.\nBiztonsági okokból kérjük NE továbbítsd ezt az emailt.", "login.email.login.subject": "Bejelentkezési kódod", "login.email.password-reset.body": "Helló {user.nameOrEmail},\n\nNemrégiben jelszóvisszaállítási kódot igényeltél a(z) {site} Paneljéhez.\nAz alábbi jelszóvisszaállítási kód {timeout} percig lesz érvényes:\n\n{code}\n\nHa nem te igényelted a jelszóvisszaállítási kódot, kérlek hagyd figyelmen kívül ezt az emailt, kérdések esetén pedig vedd fel a kapcsolatot az oldal Adminisztrátorával.\nBiztonsági okokból kérjük NE továbbítsd ezt az emailt.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Bejelentkezés jelszóval", "login.toggleText.password-reset.email": "Elfelejtetted a jelszavad?", "login.toggleText.password-reset.email-password": "← Vissza a bejelentkezéshez", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Kijelentkezés", @@ -481,6 +503,7 @@ "option": "Option", "options": "Beállítások", "options.none": "Nincsnek beállítások", + "options.all": "Show all {count} options", "orientation": "Tájolás", "orientation.landscape": "Fekvő", @@ -550,7 +573,7 @@ "save": "Ment\u00e9s", "search": "Keresés", "search.min": "A kereséshez írj be minimum {min} karaktert", - "search.all": "Összes mutatása", + "search.all": "Show all {count} results", "search.results.none": "Nincs találat", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/id.json b/i18n/translations/id.json index 6f30513793..5bd5484bf1 100644 --- a/i18n/translations/id.json +++ b/i18n/translations/id.json @@ -3,6 +3,7 @@ "account.delete": "Hapus akun Anda", "account.delete.confirm": "Anda yakin menghapus akun? Anda akan dikeluarkan segera. Akun Anda tidak dapat dipulihkan.", + "activate": "Activate", "add": "Tambah", "alpha": "Alpha", "author": "Penulis", @@ -47,6 +48,7 @@ "dialog.users.empty": "Tidak ada pengguna untuk dipilih", "dimensions": "Dimensi", + "disable": "Disable", "disabled": "Dimatikan", "discard": "Buang", @@ -134,6 +136,9 @@ "error.license.email": "Masukkan surel yang valid", "error.license.verification": "Lisensi tidak dapat diverifikasi", + "error.login.totp.confirm.invalid": "Kode tidak valid", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Ada kesalahan di bidang \"{label}\":\n{message}", "error.offline": "Panel saat ini luring", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Belum ada bahasa sekunder", "license": "Lisensi Kirby", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Beli lisensi", - "license.register": "Daftar", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Masukkan kode lisensi Anda", "license.manage": "Manage your licenses", - "license.register.help": "Anda menerima kode lisensi via surel setelah pembelian. Salin dan tempel kode tersebut untuk mendaftarkan.", - "license.register.label": "Masukkan kode lisensi Anda", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Terima kasih atas dukungan untuk Kirby", - "license.unregistered": "Ini adalah demo tidak diregistrasi dari Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Terima kasih atas dukungan untuk Kirby", "license.unregistered.label": "Unregistered", "link": "Tautan", @@ -434,7 +440,9 @@ "login.code.label.login": "Kode masuk", "login.code.label.password-reset": "Kode atur ulang sandi", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Jika alamat surel terdaftar, kode yang diminta dikirim via surel", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Kode masuk Anda", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Masuk dengan sandi", "login.toggleText.password-reset.email": "Lupa sandi Anda?", "login.toggleText.password-reset.email-password": "← Kembali ke masuk", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Keluar", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opsi", "options.none": "Tidak ada opsi", + "options.all": "Show all {count} options", "orientation": "Orientasi", "orientation.landscape": "Rebah", @@ -550,7 +573,7 @@ "save": "Simpan", "search": "Cari", "search.min": "Masukkan {min} karakter untuk mencari", - "search.all": "Tampilkan semua", + "search.all": "Show all {count} results", "search.results.none": "Tidak ada hasil", "section.invalid": "Bagian ini tidak valid", @@ -572,6 +595,7 @@ "system.issues.content": "Folder konten nampaknya terekspos", "system.issues.eol.kirby": "Versi instalasi Kirby Anda sudah mencapai akhir dan tidak akan lagi mendapat pembaruan keamanan", "system.issues.eol.plugin": "Versi instalasi plugin { plugin } Anda sudah mencapai akhir dan tidak akan lagi mendapatkan pembaruan keamanan", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/is_IS.json b/i18n/translations/is_IS.json index 3b5ca1d38e..6a5ed352a7 100644 --- a/i18n/translations/is_IS.json +++ b/i18n/translations/is_IS.json @@ -3,6 +3,7 @@ "account.delete": "Eyða notandareikning þínum", "account.delete.confirm": "Ertu alveg viss um að þú viljir endanlega eyða reikningnum þínum? Þú munt verða útskráð/ur án tafar. Ómögulegt verður að endurheimta reikninginn þinn.", + "activate": "Activate", "add": "Bæta við", "alpha": "Gagnsæi", "author": "Höfundur", @@ -47,6 +48,7 @@ "dialog.users.empty": "Engir notendur til að velja úr", "dimensions": "Rýmd", + "disable": "Disable", "disabled": "Óvirkt", "discard": "Hunsa", @@ -134,6 +136,9 @@ "error.license.email": "Almennilegt netfang hér", "error.license.verification": "Ekki heppnaðist að staðfesta leyfið", + "error.login.totp.confirm.invalid": "Ógildur kóði", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Það er villa í \"{label}\" sviðinu:\n{message}", "error.offline": "Stjórnborðið er óvirkt eins og stendur.", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Það eru engin auka tungumál skilgreind enn", "license": "Leyfi", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Kaupa leyfi", - "license.register": "Skr\u00E1 Kirby", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Vinsamlegast settu inn leyfiskóðan", "license.manage": "Sýslaðu með leyfin þín", - "license.register.help": "Þú fékkst sendan tölvupóst með leyfiskóðanum þegar þú keyptir leyfi. Vinsamlegast afritaðu hann og settu hann hingað til að skrá þig.", - "license.register.label": "Vinsamlegast settu inn leyfiskóðan", - "license.register.domain": "Leyfið þitt verður skráð á {host}.", - "license.register.local": "Nú ertu að fara skrá leyfið þitt á staðbundna lénið (e. local domain) {host}. Ef þetta vefsvæði verður fært út á vefinn, vinsamlegast skráðu það frekar þar þegar það hefur verið gefið þar út. Ef {host] er raunverulega lénið sem þú vilt skrá leyfir þitt á, endilega haltu þínu striki.", - "license.register.success": "Þakka þér fyrir að velja Kirby", - "license.unregistered": "Þetta er óskráð prufueintak af Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Þakka þér fyrir að velja Kirby", "license.unregistered.label": "Óskráð", "link": "Tengill", @@ -434,7 +440,9 @@ "login.code.label.login": "Innskráningarkóði", "login.code.label.password-reset": "Kóði fyrir endurstillingu lykilorðs", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Ef netfangið þitt er skráð þá bíður þín nýr tölvupóstur.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Já halló {user.nameOrEmail},\n\nNýlega baðstu um innskráningarkóða fyrir bakendan á {site}.\nEftirfarandi kóði er virkur í {timeout} mínútur:\n\n{code}\n\nEf þú óskaðir ekki eftir þessu þá hunsaðu þennan tölvupóst eða talaðu við vefstjóran ef þú vilt fræðast nánar.\nAf öryggisástæðum vinsamlegast áframsendu þennan tölvupóst ALLS EKKI.", "login.email.login.subject": "Innskráningarkóðinn þinn", "login.email.password-reset.body": "Nei halló {user.nameOrEmail},\n\nNýverið baðstu um að lykilorði þínu væri endurstillt fyrir bakendan á {site}. \nEftirfarandi kóði er virkur í {timeout} mínútur:\n\n{code}\n\nEf þú óskaðir ekki eftir þessu þá hunsaðu þennan tölvupóst eða talaðu við vefstjóran ef þú vilt fræðast nánar.\nAf öryggisástæðum vinsamlegast áframsendu þennan tölvupóst ALLS EKKI.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Innskrá með lykilorði", "login.toggleText.password-reset.email": "Mannstu ekki lykilorðið?", "login.toggleText.password-reset.email-password": "← Aftur í innskráningu", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Útskrá", @@ -481,6 +503,7 @@ "option": "Kostur", "options": "Valmöguleikar", "options.none": "Engir valmöguleikar", + "options.all": "Show all {count} options", "orientation": "Snúningur", "orientation.landscape": "Langsnið", @@ -550,7 +573,7 @@ "save": "Vista", "search": "Leita", "search.min": "Lágmark {min} stafir til að leita", - "search.all": "Sýna allt", + "search.all": "Show all {count} results", "search.results.none": "Engar niðurstöður", "section.invalid": "Þetta svæði er bara ógillt sem stendur.", @@ -572,6 +595,7 @@ "system.issues.content": "Efnismappan virðist vera berskjölduð", "system.issues.eol.kirby": "Uppsett Kirby eintak þitt hefur runnið sitt skeið á enda og mun ekki verða uppfært framar", "system.issues.eol.plugin": "Uppsett eintak þitt af viðbótinni { plugin } hefur runnið sitt skeið á enda og mun ekki verða uppfærð framar", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Aflúsun ætti alltaf að vera óvirk í útgefnum vef", "system.issues.git": ".git mappan virðist vera berskjölduð", "system.issues.https": "Við mælum harðlega með því að þú notir HTTPS fyrir öll þín vefsvæði", diff --git a/i18n/translations/it.json b/i18n/translations/it.json index 0c614854e0..a6647668cd 100644 --- a/i18n/translations/it.json +++ b/i18n/translations/it.json @@ -3,6 +3,7 @@ "account.delete": "Elimina l'account", "account.delete.confirm": "Vuoi davvero eliminare il tuo account? Verrai disconnesso immediatamente. Il tuo account non potrà essere recuperato.", + "activate": "Activate", "add": "Aggiungi", "alpha": "Alpha", "author": "Autore", @@ -47,6 +48,7 @@ "dialog.users.empty": "Nessuno user selezionabile", "dimensions": "Dimensioni", + "disable": "Disable", "disabled": "Disabilitato", "discard": "Abbandona", @@ -134,6 +136,9 @@ "error.license.email": "Inserisci un indirizzo email valido", "error.license.verification": "Non è stato possibile verificare la licenza", + "error.login.totp.confirm.invalid": "Codice non valido", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "C'è un errore nel campo \"{label}\":\n{message}", "error.offline": "Il pannello di controllo è attualmente offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Non ci sono lingue secondarie impostate", "license": "Licenza di Kirby", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Acquista una licenza", - "license.register": "Registra", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Inserisci il codice di licenza", "license.manage": "Gestisci le tue licenze", - "license.register.help": "Hai ricevuto il codice di licenza tramite email dopo l'acquisto. Per favore inseriscilo per registrare Kirby.", - "license.register.label": "Inserisci il codice di licenza", - "license.register.domain": "La tua licenza verrà registrata su {host}.", - "license.register.local": "Stai per registrare la licenza per il dominio locale {host}. Se questo sito verrà rilasciato su un dominio pubblico, ti preghiamo di registrarlo lì. Se {host} è il dominio per il quale desideri ottenere la licenza di Kirby, procedi pure.", - "license.register.success": "Ti ringraziamo per aver supportato Kirby", - "license.unregistered": "Questa è una versione demo di Kirby non registrata", + "license.ready": "Ready to launch your site?", + "license.success": "Ti ringraziamo per aver supportato Kirby", "license.unregistered.label": "Non registrato", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Codice di accesso", "login.code.label.password-reset": "Codice per reimpostare la password", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Qualora il tuo indirizzo email fosse registrato, il codice richiesto è stato inviato tramite email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Ciao {user.nameOrEmail},\n\nHai recentemente richiesto un codice di login per il pannello di controllo di {site}.\nIl seguente codice di login sarà valido per {timeout} minuti:\n\n{code}\n\nSe non hai richiesto un codice di login, per favore ignora questa mail o contatta il tuo amministratore in caso di domande.\nPer sicurezza, per favore NON inoltrare questa email.", "login.email.login.subject": "Il tuo codice di accesso", "login.email.password-reset.body": "Ciao {user.nameOrEmail},\n\nHai recentemente richiesto di resettare la password per il pannello di controllo di {site}.\nIl seguente codice di reset della password sarà valido per {timeout} minuti:\n\n{code}\n\nSe non hai richiesto di resettare la password per favore ignora questa email o contatta il tuo amministratore in caso di domande.\nPer sicurezza, per favore NON inoltrare questa email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Accedi con la password", "login.toggleText.password-reset.email": "Hai dimenticato la password?", "login.toggleText.password-reset.email-password": "← Torna al login", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Esci", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opzioni", "options.none": "Nessuna opzione", + "options.all": "Show all {count} options", "orientation": "Orientamento", "orientation.landscape": "Orizzontale", @@ -550,7 +573,7 @@ "save": "Salva", "search": "Cerca", "search.min": "Inserisci almeno {min} caratteri per la ricerca", - "search.all": "Mostra tutti", + "search.all": "Show all {count} results", "search.results.none": "Nessun risultato", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "La cartella content sembra essere esposta", "system.issues.eol.kirby": "La versione di Kirby installata è giunta alla fine del suo ciclo di vita e non riceverà ulteriori aggiornamenti di sicurezza ", "system.issues.eol.plugin": "La versione installata del plugin { plugin } è giunta alla fine del suo ciclo di vita e non riceverà ulteriori aggiornamenti di sicurezza", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Il debug deve essere disattivato in produzione", "system.issues.git": "La cartella .git sembra essere esposta", "system.issues.https": "Raccomandiamo l'utilizzo di HTTPS per tutti i siti", diff --git a/i18n/translations/ko.json b/i18n/translations/ko.json index 9177ecdc4b..2157af6945 100644 --- a/i18n/translations/ko.json +++ b/i18n/translations/ko.json @@ -3,6 +3,7 @@ "account.delete": "계정 삭제", "account.delete.confirm": "계정을 삭제할까요? 계정을 삭제한 뒤에는 복구할 수 없습니다.", + "activate": "Activate", "add": "\ucd94\uac00", "alpha": "Alpha", "author": "저자", @@ -47,6 +48,7 @@ "dialog.users.empty": "선택할 사용자가 없습니다.", "dimensions": "크기", + "disable": "Disable", "disabled": "비활성화", "discard": "무시", @@ -134,6 +136,9 @@ "error.license.email": "올바른 이메일 주소를 입력하세요.", "error.license.verification": "라이선스 키가 올바르지 않습니다.", + "error.login.totp.confirm.invalid": "코드가 올바르지 않습니다.", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "{label} 필드에 오류가 있습니다.\n{message}", "error.offline": "패널이 오프라인 상태입니다.", @@ -407,15 +412,16 @@ "languages.secondary.empty": "보조 언어가 없습니다.", "license": "라이선스", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "라이선스 구매", - "license.register": "등록", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "라이선스 코드를 입력하세요.", "license.manage": "라이선스 관리", - "license.register.help": "Kirby를 등록하려면 이메일로 전송받은 라이선스 코드와 이메일 주소를 입력하세요.", - "license.register.label": "라이선스 코드를 입력하세요.", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Kirby와 함께해주셔서 감사합니다.", - "license.unregistered": "Kirby가 등록되지 않았습니다.", + "license.ready": "Ready to launch your site?", + "license.success": "Kirby와 함께해주셔서 감사합니다.", "license.unregistered.label": "Kirby가 등록되지 않았습니다.", "link": "\uc77c\ubc18 \ub9c1\ud06c", @@ -434,7 +440,9 @@ "login.code.label.login": "로그인 코드", "login.code.label.password-reset": "암호 초기화 코드", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "입력한 이메일 주소로 코드를 전송했습니다.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "{user.nameOrEmail} 님,\n\n{site} 패널에서 요청한 로그인 코드는 다음과 같습니다. 로그인 코드는 {timeout}분 동안 유효합니다.\n\n{code}\n\n로그인 코드를 요청한 적이 없다면, 이 이메일을 무시하거나 관리자에게 문의하세요. 보안을 위해 이 이메일은 다른 사람과 공유하지 마세요.", "login.email.login.subject": "로그인 코드", "login.email.password-reset.body": "{user.nameOrEmail} 님,\n\n{site} 패널에서 요청한 암호 초기화 코드는 다음과 같습니다. 암호 초기화 코드는 {timeout}분 동안 유효합니다.\n\n{code}\n\n암호 초기화 코드를 요청한 적이 없다면, 이 이메일을 무시하거나 관리자에게 문의하세요. 보안을 위해 이 이메일은 다른 사람과 공유하지 마세요.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "암호로 로그인", "login.toggleText.password-reset.email": "암호 찾기", "login.toggleText.password-reset.email-password": "로그인 화면으로", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "로그아웃", @@ -481,6 +503,7 @@ "option": "옵션", "options": "옵션", "options.none": "옵션이 없습니다.", + "options.all": "Show all {count} options", "orientation": "비율", "orientation.landscape": "가로로 긴 사각형", @@ -550,7 +573,7 @@ "save": "\uc800\uc7a5", "search": "검색", "search.min": "{min}자 이상 입력하세요.", - "search.all": "모두 보기", + "search.all": "Show all {count} results", "search.results.none": "해당하는 결과가 없습니다.", "section.invalid": "섹션이 올바르지 않습니다.", @@ -572,6 +595,7 @@ "system.issues.content": "/content 폴더의 권한을 확인하세요.", "system.issues.eol.kirby": "설치된 Kirby는 버전이 만료되었습니다. 더 이상 보안 업데이트를 받을 수 없습니다.", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "공개 서버상에서는 디버그 모드를 해제하세요.", "system.issues.git": "/.git 폴더의 권한을 확인하세요.", "system.issues.https": "HTTPS를 권장합니다.", diff --git a/i18n/translations/lt.json b/i18n/translations/lt.json index 70a26cff06..a23e87859c 100644 --- a/i18n/translations/lt.json +++ b/i18n/translations/lt.json @@ -3,6 +3,7 @@ "account.delete": "Panaikinti savo paskyrą", "account.delete.confirm": "Ar tikrai norite panaikinti savo paskyrą? Jūs iš karto atsijungsite. Paskyros bus neįmanoma atstatyti.", + "activate": "Activate", "add": "Pridėti", "alpha": "Alpha", "author": "Autorius", @@ -47,6 +48,7 @@ "dialog.users.empty": "Nėra vartotojų pasirinkimui", "dimensions": "Išmatavimai", + "disable": "Disable", "disabled": "Išjungta", "discard": "Atšaukti", @@ -134,6 +136,9 @@ "error.license.email": "Prašome įrašyti teisingą el. pašto adresą", "error.license.verification": "Nepavyko patikrinti licenzijos", + "error.login.totp.confirm.invalid": "Neteisinas kodas", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "Valdymo pultas dabar yra offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Dar nėra papildomų kalbų", "license": "Licenzija", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Pirkti licenziją", - "license.register": "Registruoti", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Prašome įrašyti jūsų licenzijos kodą", "license.manage": "Valdyti savo licencijas", - "license.register.help": "Licenzijos kodą gavote el. paštu po apmokėjimo. Prašome įterpti čia, kad sistema būtų užregistruota.", - "license.register.label": "Prašome įrašyti jūsų licenzijos kodą", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Ačiū, kad palaikote Kirby", - "license.unregistered": "Tai neregistruota Kirby demo versija", + "license.ready": "Ready to launch your site?", + "license.success": "Ačiū, kad palaikote Kirby", "license.unregistered.label": "Neregistruota", "link": "Nuoroda", @@ -434,7 +440,9 @@ "login.code.label.login": "Prisijungimo kodas", "login.code.label.password-reset": "Slaptažodžio atstatymo kodas", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Jei jūsų el. paštas yra užregistruotas, užklaistas kodas buvo išsiųstas el. paštu.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Sveiki, {user.nameOrEmail},\n\nNeseniai užklausėte prisijungimo kodo svetainėje {site}.\nŠis kodas galios {timeout} min.:\n\n{code}\n\nJei neprašėte šio kodo, tiesiog ignoruokite, arba susisiekite su administratoriumi.\nDėl saugumo, prašome NEPERSIŲSTI šio laiško.", "login.email.login.subject": "Jūsų prisijungimo kodas", "login.email.password-reset.body": "Sveiki, {user.nameOrEmail},\n\nNeseniai užklausėte naujo slaptažodžio kūrimo kodo svetainėje {site}.\nŠis kodas galios {timeout} min.:\n\n{code}\n\nJei neprašėte šio kodo, tiesiog ignoruokite, arba susisiekite su administratoriumi.\nDėl saugumo, prašome NEPERSIŲSTI šio laiško", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Prisijungti su slaptažodžiu", "login.toggleText.password-reset.email": "Pamiršote slaptažodį?", "login.toggleText.password-reset.email-password": "← Atgal į prisijungimą", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Atsijungti", @@ -481,6 +503,7 @@ "option": "Option", "options": "Pasirinkimai", "options.none": "Nėra pasirinkimų", + "options.all": "Show all {count} options", "orientation": "Orientacija", "orientation.landscape": "Horizontali", @@ -550,7 +573,7 @@ "save": "Išsaugoti", "search": "Ieškoti", "search.min": "Minimalus simbolių kiekis paieškai: {min}", - "search.all": "Rodyti viską", + "search.all": "Show all {count} results", "search.results.none": "Nėra rezultatų", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "Rekomenduojame HTTPS visoms svetainėms", diff --git a/i18n/translations/nb.json b/i18n/translations/nb.json index 063f6a6525..6c17718dc5 100644 --- a/i18n/translations/nb.json +++ b/i18n/translations/nb.json @@ -3,6 +3,7 @@ "account.delete": "Slett kontoen din", "account.delete.confirm": "Er du sikker på at du vil slette kontoen din? Du vil bli logget ut umiddelbart. Kontoen din kan ikke gjenopprettes.", + "activate": "Activate", "add": "Legg til", "alpha": "Alfa", "author": "Forfatter", @@ -47,6 +48,7 @@ "dialog.users.empty": "Ingen brukere å velge", "dimensions": "Dimensjoner", + "disable": "Disable", "disabled": "Deaktivert", "discard": "Forkast", @@ -134,6 +136,9 @@ "error.license.email": "Vennligst skriv inn en gyldig e-postadresse", "error.license.verification": "Lisensen kunne ikke verifiseres", + "error.login.totp.confirm.invalid": "Ugyldig kode", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "Panelet er i øyeblikket offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Det er ingen andre språk ennå", "license": "Kirby lisens", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Kjøp lisens", - "license.register": "Registrer", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Vennligst skriv inn din lisenskode", "license.manage": "Håndter dine lisenser", - "license.register.help": "Du skal ha mottatt din lisenskode for kjøpet via e-post. Vennligst kopier og lim inn denne for å registrere deg.", - "license.register.label": "Vennligst skriv inn din lisenskode", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Takk for at du støtter Kirby", - "license.unregistered": "Dette er en uregistrert demo av Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Takk for at du støtter Kirby", "license.unregistered.label": "Unregistered", "link": "Adresse", @@ -434,7 +440,9 @@ "login.code.label.login": "Login kode", "login.code.label.password-reset": "Passord tilbakestillingskode", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Dersom din e-post er registrert vil den forespurte koden bli sendt via e-post.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hei {user.nameOrEmail},\n\nDu ba nylig om en innloggingskode til panelet til {site}.\nFølgende innloggingskode vil være gyldig i {timeout} minutter:\n\n{code}\n\nDersom du ikke ba om en innloggingskode, vennligst ignorer denne e-posten eller kontakt din administrator hvis du har spørsmål.\nFor sikkerhets skyld, vennligst IKKE videresend denne e-posten.", "login.email.login.subject": "Din innloggingskode", "login.email.password-reset.body": "Hei {user.nameOrEmail},\n\nDu ba nylig om en tilbakestilling av passord til panelet til {site}.\nFølgende tilbakestillingskode vil være gyldig i {timeout} minutter:\n\n{code}\n\nDersom du ikke ba om en tilbakestillingskode, vennligst ignorer denne e-posten eller kontakt din administrator hvis du har spørsmål.\nFor sikkerhets skyld, vennligst IKKE videresend denne e-posten.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Logg inn med passord", "login.toggleText.password-reset.email": "Glemt passord?", "login.toggleText.password-reset.email-password": "← Tilbake til innlogging", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Logg ut", @@ -481,6 +503,7 @@ "option": "Alternativ", "options": "Alternativer", "options.none": "Ingen alternativer", + "options.all": "Show all {count} options", "orientation": "Orientering", "orientation.landscape": "Landskap", @@ -550,7 +573,7 @@ "save": "Lagre", "search": "Søk", "search.min": "Skriv inn {min} tegn for å søke", - "search.all": "Vis alle", + "search.all": "Show all {count} results", "search.results.none": "Ingen resultater", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/nl.json b/i18n/translations/nl.json index e4dde0a300..f5771cd0ac 100644 --- a/i18n/translations/nl.json +++ b/i18n/translations/nl.json @@ -3,6 +3,7 @@ "account.delete": "Verwijder je account", "account.delete.confirm": "Wil je echt je account verwijderen? Je wordt direct uitgelogd. Uw account kan niet worden hersteld.", + "activate": "Activate", "add": "Voeg toe", "alpha": "Alpha", "author": "Auteur", @@ -47,6 +48,7 @@ "dialog.users.empty": "Geen gebruikers om te selecteren", "dimensions": "Dimensies", + "disable": "Disable", "disabled": "Uitgeschakeld", "discard": "Annuleren", @@ -134,6 +136,9 @@ "error.license.email": "Gelieve een geldig emailadres in te voeren", "error.license.verification": "De licentie kon niet worden geverifieerd. ", + "error.login.totp.confirm.invalid": "Ongeldige code", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "Het Panel is momenteel offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Er zijn nog geen andere talen beschikbaar", "license": "Licentie", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Koop een licentie", - "license.register": "Registreren", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Vul je licentie in", "license.manage": "Beheer je licenties", - "license.register.help": "Je hebt de licentie via e-mail gekregen nadat je de aankoop hebt gedaan. Kopieer en plak de licentie om te registreren. ", - "license.register.label": "Vul je licentie in", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Bedankt dat je Kirby ondersteunt", - "license.unregistered": "Dit is een niet geregistreerde demo van Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Bedankt dat je Kirby ondersteunt", "license.unregistered.label": "Unregistered", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Log in code", "login.code.label.password-reset": "Wachtwoord herstel code", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Als uw e-mailadres geregistreerd is, werd de gevraagde code per e-mail verzonden.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hallo {user.nameOrEmail},\n\nJe hebt onlangs een inlogcode aangevraagd voor het Panel van {site}.\nDe volgende inlogcode is {timeout} minuten geldig:\n\n{code}\n\nAls je geen inlogcode hebt aangevraagd, mag je deze mail negeren of neem je contact op met uw beheerder.\nOm veiligheidsredenen verzoeken wij deze e-mail NIET door te sturen.", "login.email.login.subject": "Jouw log in code", "login.email.password-reset.body": "Hallo {user.nameOrEmail},\n\nJe hebt onlangs een paswoord herstel code aangevraagd voor het Panel van {site}.\nDe volgende paswoord herstel code is {timeout} minuten geldig:\n\n{code}\n\nAls je geen paswoord herstel code hebt aangevraagd, mag je deze mail negeren of neem je contact op met uw beheerder.\nOm veiligheidsredenen verzoeken wij deze e-mail NIET door te sturen.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Log in met je wachtwoord", "login.toggleText.password-reset.email": "Wachtwoord vergeten?", "login.toggleText.password-reset.email-password": "← Terug naar log in", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Uitloggen", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opties", "options.none": "Geen opties beschikbaar", + "options.all": "Show all {count} options", "orientation": "Oriëntatie", "orientation.landscape": "Liggend", @@ -550,7 +573,7 @@ "save": "Opslaan", "search": "Zoeken", "search.min": "Voer {min} tekens in om te zoeken", - "search.all": "Toon alles", + "search.all": "Show all {count} results", "search.results.none": "Geen resultaten", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "De .git map lijkt zichtbaar te zijn", "system.issues.https": "We raden HTTPS aan voor al je sites", diff --git a/i18n/translations/pl.json b/i18n/translations/pl.json index a6f1b8489a..e6a37e0c86 100644 --- a/i18n/translations/pl.json +++ b/i18n/translations/pl.json @@ -3,6 +3,7 @@ "account.delete": "Usuń swoje konto", "account.delete.confirm": "Czy na pewno chcesz usunąć swoje konto? Zostaniesz natychmiast wylogowany. Twojego konta nie da się odzyskać.", + "activate": "Activate", "add": "Dodaj", "alpha": "Alfa", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "Brak użytkowników do wyboru", "dimensions": "Wymiary", + "disable": "Disable", "disabled": "Wyłączone", "discard": "Odrzu\u0107", @@ -134,6 +136,9 @@ "error.license.email": "Wprowadź poprawny adres email", "error.license.verification": "Nie udało się zweryfikować licencji", + "error.login.totp.confirm.invalid": "Nieprawidłowy kod", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Wystąpił błąd w polu „{label}”:\n{message}", "error.offline": "Panel jest obecnie offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Nie ma jeszcze dodatkowych języków", "license": "Licencja", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Kup licencję", - "license.register": "Zarejestruj", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Wprowadź swój kod licencji", "license.manage": "Zarządzaj swoimi licencjami", - "license.register.help": "Po zakupieniu licencji otrzymałaś/-eś mailem klucz. Skopiuj go i wklej tutaj, aby dokonać rejestracji.", - "license.register.label": "Wprowadź swój kod licencji", - "license.register.domain": "Twoja licencja zostanie zarejestrowana na {host}.", - "license.register.local": "Zamierzasz zarejestrować licencję dla swojej domeny lokalnej {host}. Jeśli ta witryna zostanie wdrożona w domenie ogólnodostępnej, zarejestruj ją tam. Jeżeli {host} jest faktycznie domeną, do której chcesz przypisać licencję, kontynuuj.", - "license.register.success": "Dziękujemy za wspieranie Kirby", - "license.unregistered": "To jest niezarejestrowana wersja demonstracyjna Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Dziękujemy za wspieranie Kirby", "license.unregistered.label": "Niezarejestrowane", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Kod logowania się", "login.code.label.password-reset": "Kod resetowania hasła", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Jeśli Twój adres email jest zarejestrowany, żądany kod został wysłany na Twoją skrzynkę.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Cześć {user.nameOrEmail},\n\nNiedawno poprosiłaś/-eś o kod do zalogowania się do panelu strony {site}.\nPoniższy kod do zalogowania się będzie ważny przez {timeout} minut:\n\n{code}\n\nJeżeli nie zażądałaś/-eś kodu do logowania się, zignoruj tę wiadomość e-mail lub skontaktuj się z administratorem, jeśli masz pytania.\nZe względów bezpieczeństwa NIE przesyłaj dalej tego e-maila.", "login.email.login.subject": "Twój kod logowania się", "login.email.password-reset.body": "Cześć {user.nameOrEmail},\n\nNiedawno poprosiłaś/-eś o kod resetowania hasła do panelu strony {site}.\nPoniższy kod resetowania hasła będzie ważny przez {timeout} minut:\n\n{code}\n\nJeżeli nie zażądałaś/-eś kodu resetowania hasła, zignoruj tę wiadomość e-mail lub skontaktuj się z administratorem, jeśli masz pytania. \nZe względów bezpieczeństwa NIE przesyłaj dalej tego e-maila. ", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Zaloguj się za pomocą hasła", "login.toggleText.password-reset.email": "Zapomniałeś/-aś hasła?", "login.toggleText.password-reset.email-password": "← Powrót do logowania", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Wyloguj się", @@ -481,6 +503,7 @@ "option": "Opcja", "options": "Opcje", "options.none": "Brak opcji", + "options.all": "Show all {count} options", "orientation": "Orientacja", "orientation.landscape": "Pozioma", @@ -550,7 +573,7 @@ "save": "Zapisz", "search": "Szukaj", "search.min": "Aby wyszukać, wprowadź co najmniej {min} znaków", - "search.all": "Pokaż wzystkie", + "search.all": "Show all {count} results", "search.results.none": "Brak wyników", "section.invalid": "Sekcja jest nieprawidłowa", @@ -572,6 +595,7 @@ "system.issues.content": "Zdaje się, że folder „content” jest wystawiony na publiczny dostęp", "system.issues.eol.kirby": "Twoja zainstalowana wersja Kirby osiągnęła koniec okresu wsparcia i nie będzie otrzymywać dalszych aktualizacji zabezpieczeń", "system.issues.eol.plugin": "Twoja zainstalowana wersja wtyczki { plugin } osiągnęła koniec okresu wsparcia i nie będzie otrzymywać dalszych aktualizacji zabezpieczeń", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugowanie musi być wyłączone w środowisku produkcyjnym", "system.issues.git": "Zdaje się, że folder „.git” jest wystawiony na publiczny dostęp", "system.issues.https": "Zalecamy HTTPS dla wszystkich Twoich witryn", diff --git a/i18n/translations/pt_BR.json b/i18n/translations/pt_BR.json index 8015b4bfe9..0844848606 100644 --- a/i18n/translations/pt_BR.json +++ b/i18n/translations/pt_BR.json @@ -3,6 +3,7 @@ "account.delete": "Deletar sua conta", "account.delete.confirm": "Deseja realmente deletar sua conta? Você sairá do site imediatamente. Sua conta não poderá ser recuperada. ", + "activate": "Activate", "add": "Adicionar", "alpha": "Alpha", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "Nenhum usuário para selecionar", "dimensions": "Dimensões", + "disable": "Disable", "disabled": "Desativado", "discard": "Descartar", @@ -134,6 +136,9 @@ "error.license.email": "Digite um endereço de email válido", "error.license.verification": "A licensa não pôde ser verificada", + "error.login.totp.confirm.invalid": "Código inválido", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "O painel está offline no momento", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Nenhum idioma secundário", "license": "Licen\u00e7a do Kirby ", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Comprar licença", - "license.register": "Registrar", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Por favor, digite o código da sua licença", "license.manage": "Manage your licenses", - "license.register.help": "Você recebeu o código da sua licença por email ao efetuar sua compra. Por favor, copie e cole o código para completar seu registro.", - "license.register.label": "Por favor, digite o código da sua licença", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Obrigado por apoiar o Kirby", - "license.unregistered": "Esta é uma cópia de demonstração não registrada do Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Obrigado por apoiar o Kirby", "license.unregistered.label": "Unregistered", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Código de acesso", "login.code.label.password-reset": "Código de redefinição de senha", "login.code.placeholder.email": "000 0000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Se seu endereço de email está registrado, o código requisitado será mandado por email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Oi, {user.nameOrEmail},\n\nVocê recentemente pediu um código de acesso ao painel administrativo do site {site}.\nO seguinte código será válido por {timeout} minutos:\n\n{code}\n\nSe você não pediu este código de acesso, por favor ignore esta mensagem, ou contate seu Administrador de Sistemas se você tiver dúvidas.\nPor questões de segurança, por favor NÃO compartilhe esta mensagem.", "login.email.login.subject": "Seu código de acesso", "login.email.password-reset.body": "Oi, {user.nameOrEmail},\n\nVocê recentemente pediu um código de redefinição de senha, para o painel administrativo do site {site}.\nO seguinte código de redefinição de senha será válido por {timeout} minutos:\n\n{code}\n\nSe você não pediu este código, por favor ignore esta mensagem, ou contate seu Administrador de Sistemas se você tiver dúvidas.\nPor questões de segurança, por favor NÃO compartilhe esta mensagem.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Entrar com senha", "login.toggleText.password-reset.email": "Esqueceu sua senha?", "login.toggleText.password-reset.email-password": "← Voltar à entrada", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Sair", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opções", "options.none": "Nenhuma opção", + "options.all": "Show all {count} options", "orientation": "Orientação", "orientation.landscape": "Paisagem", @@ -550,7 +573,7 @@ "save": "Salvar", "search": "Buscar", "search.min": "Digite {min} caracteres para fazer uma busca", - "search.all": "Mostrar todos", + "search.all": "Show all {count} results", "search.results.none": "Nenhum resultado", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/pt_PT.json b/i18n/translations/pt_PT.json index ab31d45abc..8dbed7e35d 100644 --- a/i18n/translations/pt_PT.json +++ b/i18n/translations/pt_PT.json @@ -3,6 +3,7 @@ "account.delete": "Deletar sua conta", "account.delete.confirm": "Deseja realmente deletar sua conta? Você sairá do site imediatamente. Sua conta não poderá ser recuperada. ", + "activate": "Activate", "add": "Adicionar", "alpha": "Alpha", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "Sem utilizadores para selecionar", "dimensions": "Dimensões", + "disable": "Disable", "disabled": "Inativo", "discard": "Descartar", @@ -134,6 +136,9 @@ "error.license.email": "Digite um endereço de email válido", "error.license.verification": "Não foi possível verificar a licença", + "error.login.totp.confirm.invalid": "Código inválido", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "O painel está offline no momento", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Nenhum idioma secundário", "license": "Licen\u00e7a do Kirby ", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Comprar uma licença", - "license.register": "Registrar", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Por favor, digite o código da sua licença", "license.manage": "Manage your licenses", - "license.register.help": "Recebeu o código da sua licença por email após a compra. Por favor, copie e cole-o para completar o registro.", - "license.register.label": "Por favor, digite o código da sua licença", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Obrigado por apoiar o Kirby", - "license.unregistered": "Esta é uma demonstração não registrada do Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Obrigado por apoiar o Kirby", "license.unregistered.label": "Unregistered", "link": "Link", @@ -434,7 +440,9 @@ "login.code.label.login": "Código de acesso", "login.code.label.password-reset": "Código de redefinição de senha", "login.code.placeholder.email": "000 0000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Se seu endereço de email está registrado, o código requisitado será mandado por email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Seu código de acesso", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Entrar com senha", "login.toggleText.password-reset.email": "Esqueceu sua senha?", "login.toggleText.password-reset.email-password": "← Voltar à entrada", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Sair", @@ -481,6 +503,7 @@ "option": "Option", "options": "Opções", "options.none": "Sem opções", + "options.all": "Show all {count} options", "orientation": "Orientação", "orientation.landscape": "Paisagem", @@ -550,7 +573,7 @@ "save": "Salvar", "search": "Buscar", "search.min": "Introduza {min} caracteres para pesquisar", - "search.all": "Mostrar todos", + "search.all": "Show all {count} results", "search.results.none": "Sem resultados", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/ro.json b/i18n/translations/ro.json index 10b4b5a9cb..9f4a198eab 100644 --- a/i18n/translations/ro.json +++ b/i18n/translations/ro.json @@ -3,6 +3,7 @@ "account.delete": "Șterge-ți contul", "account.delete.confirm": "Chiar vrei să îți ștergi contul? Vei fi deconectat imediat. Contul nu poate fi recuperat.", + "activate": "Activate", "add": "Adaug\u0103", "alpha": "Alfa", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "Nu există utilizatori de selectat", "dimensions": "Dimensiuni", + "disable": "Disable", "disabled": "Dezactivat", "discard": "Renun\u021b\u0103", @@ -134,6 +136,9 @@ "error.license.email": "Te rog introdu o adresă de e-mail validă", "error.license.verification": "Licența nu a putut fi verificată", + "error.login.totp.confirm.invalid": "Cod invalid", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Există o eroare la câmpul \"{label}\":\n{message}", "error.offline": "Panoul este momentan offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Nu există limbi secundare deocamdată.", "license": "Licența", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Cumpără o licență", - "license.register": "Înregistrează-te", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Te rog introdu codul tău de licență", "license.manage": "Gestionează-ți licențele", - "license.register.help": "Ai primit codul de licență pe adresa de e-mail după cumpărare. Te rog copiaz-o și insereaz-o pentru a te înregistra.", - "license.register.label": "Te rog introdu codul tău de licență", - "license.register.domain": "Licența îți va fi înregistrată pentru {host}.", - "license.register.local": "Ești pe punctul de a-ți înregistra licența pentru domeniul tău local {host}. Dacă acest site va fi instalat pe un domeniu public, te rog înregistrează licența acolo, nu aici. Dacă {host} este domeniul pentru care vrei licența Kirby, te rog continuă.", - "license.register.success": "Mulțumim că susții Kirby", - "license.unregistered": "Acesta este un demo Kirby neînregistrat", + "license.ready": "Ready to launch your site?", + "license.success": "Mulțumim că susții Kirby", "license.unregistered.label": "Neînregistrat", "link": "Legătură", @@ -434,7 +440,9 @@ "login.code.label.login": "Cod de conectare", "login.code.label.password-reset": "Cod de restabilire parolă", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Dacă adresa de e-mail este înregistrată, codul cerut a fost trimis pe adresă.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Salut {user.nameOrEmail},\n\nAi cerut recent un cod de conectare pentru Panoul site-ului {site}.\nCodul de conectare de mai jos va fi valid pentru următoarele {timeout} minute:\n\n{code}\n\nDacă nu tu ai cerut un cod de conectare, te rog ignoră acest e-mail sau ia legătura cu administratorul site-ului dacă ai întrebări.\nDin motive de siguranță, te rog să NU trimiți acest email mai departe.", "login.email.login.subject": "Codul tău de conectare", "login.email.password-reset.body": "Salut {user.nameOrEmail},\n\nAi cerut recent un cod de restabilire a parolei pentru Panoul site-ului {site}.\nCodul de restabilire a parolei de mai jos este valabil pentru următoarele {timeout} minute:\n\n{code}\n\nDacă nu tu ai cerut codul de restabilire a parolei, te rog ignoră acest e-mail sau ia legătura cu administratorul site-ului dacă ai întrebări.\nDin motive de securitate, te rog să NU trimiți acest e-mail mai departe.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Conectare cu parola", "login.toggleText.password-reset.email": "Ți-ai uitat parola?", "login.toggleText.password-reset.email-password": "← Înapoi la conectare", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Deconectare", @@ -481,6 +503,7 @@ "option": "Opțiune", "options": "Opțiuni", "options.none": "Nicio opțiune", + "options.all": "Show all {count} options", "orientation": "Orientare", "orientation.landscape": "Landscape", @@ -550,7 +573,7 @@ "save": "Salveaz\u0103", "search": "Caută", "search.min": "Introdu {min} caractere pentru a căuta", - "search.all": "Arată toate", + "search.all": "Show all {count} results", "search.results.none": "Niciun rezultat", "section.invalid": "Secțiunea este invalidă", @@ -572,6 +595,7 @@ "system.issues.content": "Directorul de conținut pare să fie expus", "system.issues.eol.kirby": "Versiunea instalată de Kirby a ajuns la sfârșitul vieții utile și nu va mai primi actualizări de securitate.", "system.issues.eol.plugin": "Versiunea instalată a plugin-ului { plugin } a ajuns la sfârșitul vieții utile și nu va mai primi actualizări de securitate.", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Modul depanare trebuie să fie oprit în producție", "system.issues.git": "Directorul .git pare să fie expus", "system.issues.https": "Recomandăm HTTPS pentru toate site-urile.", diff --git a/i18n/translations/ru.json b/i18n/translations/ru.json index 14bcb950fb..198c809317 100644 --- a/i18n/translations/ru.json +++ b/i18n/translations/ru.json @@ -3,6 +3,7 @@ "account.delete": "Удалить пользователя", "account.delete.confirm": "Вы действительно хотите удалить свой аккаунт? Вы сразу покинете панель управления, а аккаунт нельзя будет восстановить.", + "activate": "Activate", "add": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c", "alpha": "Альфа", "author": "Автор", @@ -47,6 +48,7 @@ "dialog.users.empty": "Нет пользователей для выбора", "dimensions": "Размеры", + "disable": "Disable", "disabled": "Отключено", "discard": "\u0421\u0431\u0440\u043e\u0441", @@ -134,6 +136,9 @@ "error.license.email": "Пожалуйста, введите правильный Email", "error.license.verification": "Лицензия не подтверждена", + "error.login.totp.confirm.invalid": "Неверный код", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Ошибка в поле \"{label}\":\n{message}", "error.offline": "Панель управления не в сети", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Дополнительных языков нет", "license": "Лицензия", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Купить лицензию", - "license.register": "Зарегистрировать", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Пожалуйста вставьте код лицензии", "license.manage": "Управление лицензиями", - "license.register.help": "После покупки вы получили на Email код лицензии. Вставьте его сюда, чтобы зарегистрировать копию.", - "license.register.label": "Пожалуйста вставьте код лицензии", - "license.register.domain": "Ваша лицензия будет зарегистрирована на {host}.", - "license.register.local": "Вы собираетесь зарегистрировать лицензию на локальный домен {host}. Если этот сайт будет размещен на общедоступном домене, то, пожалуйста, укажите его вместо {host}.", - "license.register.success": "Спасибо за поддержку Kirby", - "license.unregistered": "Это незарегистрированная версия Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Спасибо за поддержку Kirby", "license.unregistered.label": "Не зарегистрировано", "link": "\u0421\u0441\u044b\u043b\u043a\u0430", @@ -434,7 +440,9 @@ "login.code.label.login": "Код для входа", "login.code.label.password-reset": "Код для сброса пароля", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Если ваш Email уже зарегистрирован, запрашиваемый код был отправлен на него.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "{code} — код для входа на сайт {site}. Код действителен {timeout} минут.\n\nЗдравствуйте, {user.nameOrEmail}!\n\nЕсли вы не запрашивали код для входа, проигнорируйте это письмо или обратитесь к администратору, если у вас есть вопросы.\nВ целях безопасности НЕ ПЕРЕСЫЛАЙТЕ это письмо.", "login.email.login.subject": "Ваш код для входа", "login.email.password-reset.body": "{code} — код для сброса пароля на сайт «{site}». Код действителен {timeout} минут.\n\nЗдравствуйте, {user.nameOrEmail}!\n\nЕсли вы не запрашивали сброс пароля, проигнорируйте это письмо или обратитесь к администратору, если у вас есть вопросы.\nВ целях безопасности НЕ ПЕРЕСЫЛАЙТЕ это письмо.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Вход с паролем", "login.toggleText.password-reset.email": "Забыли ваш пароль?", "login.toggleText.password-reset.email-password": "← Вернуться к форме входа", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Выйти", @@ -481,6 +503,7 @@ "option": "Опция", "options": "Опции", "options.none": "Параметров нет", + "options.all": "Show all {count} options", "orientation": "Ориентация", "orientation.landscape": "Горизонтальная", @@ -550,7 +573,7 @@ "save": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c", "search": "Поиск", "search.min": "Введите хотя бы {min} символов для поиска", - "search.all": "Показать все", + "search.all": "Show all {count} results", "search.results.none": "Нет результатов", "section.invalid": "Неверная секция", @@ -572,6 +595,7 @@ "system.issues.content": "Похоже, к папке content есть несанкционированный доступ", "system.issues.eol.kirby": "Срок службы установленной вами версии Kirby истек, и она больше не будет получать обновления для системы безопасности", "system.issues.eol.plugin": "Срок службы установленной вами версии плагина { plugin } истек, и он не будет получать дальнейших обновлений для системы безопасности", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Включен режим отладки (debugging). Используйте его только при разработке.", "system.issues.git": "Похоже, к папке .git есть несанкционированный доступ", "system.issues.https": "Рекомендуется использовать HTTPS на всех сайтах", diff --git a/i18n/translations/sk.json b/i18n/translations/sk.json index 43c2a95f0e..660640098a 100644 --- a/i18n/translations/sk.json +++ b/i18n/translations/sk.json @@ -3,6 +3,7 @@ "account.delete": "Zmazať váš účet", "account.delete.confirm": "Do you really want to delete your account? You will be logged out immediately. Your account cannot be recovered.", + "activate": "Activate", "add": "Pridať", "alpha": "Alpha", "author": "Autor", @@ -47,6 +48,7 @@ "dialog.users.empty": "Zvolení neboli žiadni uživátelia", "dimensions": "Rozmery", + "disable": "Disable", "disabled": "Disabled", "discard": "Zahodiť", @@ -134,6 +136,9 @@ "error.license.email": "Prosím, zadajte platnú e-mailovú adresu", "error.license.verification": "The license could not be verified", + "error.login.totp.confirm.invalid": "Neplatný kód", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "There’s an error in the \"{label}\" field:\n{message}", "error.offline": "The Panel is currently offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Zatiaľ žiadne sekundárne jazyky", "license": "Licencia", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Zakúpiť licenciu", - "license.register": "Registrovať", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Prosím, zadajte váš licenčný kód", "license.manage": "Manage your licenses", - "license.register.help": "Licenčný kód vám bol doručený e-mailom po úspešnom nákupe. Prosím, skopírujte a prilepte ho na uskutočnenie registrácie.", - "license.register.label": "Prosím, zadajte váš licenčný kód", - "license.register.domain": "Your license will be registered to {host}.", - "license.register.local": "You are about to register your license for your local domain {host}. If this site will be deployed to a public domain, please register it there instead. If {host} is the domain you want to license Kirby to, please continue.", - "license.register.success": "Ďakujeme za vašu podporu Kirby", - "license.unregistered": "Toto je neregistrované demo Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Ďakujeme za vašu podporu Kirby", "license.unregistered.label": "Unregistered", "link": "Odkaz", @@ -434,7 +440,9 @@ "login.code.label.login": "Login code", "login.code.label.password-reset": "Password reset code", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "If your email address is registered, the requested code was sent via email.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hi {user.nameOrEmail},\n\nYou recently requested a login code for the Panel of {site}.\nThe following login code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a login code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", "login.email.login.subject": "Your login code", "login.email.password-reset.body": "Hi {user.nameOrEmail},\n\nYou recently requested a password reset code for the Panel of {site}.\nThe following password reset code will be valid for {timeout} minutes:\n\n{code}\n\nIf you did not request a password reset code, please ignore this email or contact your administrator if you have questions.\nFor security, please DO NOT forward this email.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Login with password", "login.toggleText.password-reset.email": "Forgot your password?", "login.toggleText.password-reset.email-password": "← Back to login", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Odhlásenie", @@ -481,6 +503,7 @@ "option": "Option", "options": "Nastavenia", "options.none": "No options", + "options.all": "Show all {count} options", "orientation": "Orientácia", "orientation.landscape": "Širokouhlá", @@ -550,7 +573,7 @@ "save": "Uložiť", "search": "Hľadať", "search.min": "Enter {min} characters to search", - "search.all": "Show all", + "search.all": "Show all {count} results", "search.results.none": "No results", "section.invalid": "The section is invalid", @@ -572,6 +595,7 @@ "system.issues.content": "The content folder seems to be exposed", "system.issues.eol.kirby": "Your installed Kirby version has reached end-of-life and will not receive further security updates", "system.issues.eol.plugin": "Your installed version of the { plugin } plugin is has reached end-of-life and will not receive further security updates", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Debugging must be turned off in production", "system.issues.git": "The .git folder seems to be exposed", "system.issues.https": "We recommend HTTPS for all your sites", diff --git a/i18n/translations/sv_SE.json b/i18n/translations/sv_SE.json index bcb5d4229f..b12902d712 100644 --- a/i18n/translations/sv_SE.json +++ b/i18n/translations/sv_SE.json @@ -3,6 +3,7 @@ "account.delete": "Radera ditt konto", "account.delete.confirm": "Vill du verkligen radera ditt konto? Du kommer att loggas ut omedelbart. Ditt konto kan inte återställas.", + "activate": "Activate", "add": "L\u00e4gg till", "alpha": "Alpha", "author": "Författare", @@ -47,6 +48,7 @@ "dialog.users.empty": "Inga användare att välja", "dimensions": "Dimensioner", + "disable": "Disable", "disabled": "Inaktiverad", "discard": "Kassera", @@ -134,6 +136,9 @@ "error.license.email": "Ange en giltig e-postadress", "error.license.verification": "Licensen kunde inte verifieras", + "error.login.totp.confirm.invalid": "Ogiltig kod", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "Det finns ett fel i fältet \"{label}\":\n{message}", "error.offline": "Panelen är för närvarande offline", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Det finns inga sekundära språk ännu", "license": "Licens", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Köp en licens", - "license.register": "Registrera", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Ange din licenskod", "license.manage": "Hantera dina licenser", - "license.register.help": "Du fick din licenskod via e-post efter inköpet. Kopiera och klistra in den för att registrera licensen.", - "license.register.label": "Ange din licenskod", - "license.register.domain": "Din licens kommer att bli registrerad för {host}.", - "license.register.local": "Du är på väg att registrera din licens för din lokala domän {host}. Om den här webbplatsen kommer att distribueras till en offentlig domän, registrera den där istället. Om {host} är domänen du vill licensiera Kirby till, fortsätt.", - "license.register.success": "Tack för att du stödjer Kirby", - "license.unregistered": "Detta är en oregistrerad demo av Kirby", + "license.ready": "Ready to launch your site?", + "license.success": "Tack för att du stödjer Kirby", "license.unregistered.label": "Oregistrerad", "link": "L\u00e4nk", @@ -434,7 +440,9 @@ "login.code.label.login": "Inloggningskod", "login.code.label.password-reset": "Kod för återställning av lösenord", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "Om din e-postadress är registrerad skickades den begärda koden via e-post.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Hej {user.nameOrEmail}.\n\nDu begärde nyligen en inloggningskod till panelen för {site}.\nFöljande kod är giltig i {timeout} minuter:\n\n{code}\n\nOm du inte har begärt någon inloggningskod, ignorera detta e-postmeddelande eller kontakta din administratör om du har frågor.\nAv säkerhetsskäl, vidarebefordra INTE detta e-postmeddelande.", "login.email.login.subject": "Din inloggningskod", "login.email.password-reset.body": "Hej {user.nameOrEmail}.\n\nDu begärde nyligen en kod för återställning av ditt lösenord till panelen för {site}.\nFöljande kod är giltig i {timeout} minuter:\n\n{code}\n\nOm du inte har begärt en återställning av ditt lösenord, ignorera detta e-postmeddelande eller kontakta din administratör om du har frågor.\nAv säkerhetsskäl, vidarebefordra INTE detta e-postmeddelande.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Logga in med lösenord", "login.toggleText.password-reset.email": "Glömt ditt lösenord?", "login.toggleText.password-reset.email-password": "← Tillbaka till inloggning", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Logga ut", @@ -481,6 +503,7 @@ "option": "Alternativ", "options": "Alternativ", "options.none": "Inga alternativ", + "options.all": "Show all {count} options", "orientation": "Orientering", "orientation.landscape": "Liggande", @@ -550,7 +573,7 @@ "save": "Spara", "search": "Sök", "search.min": "Ange {min} tecken för att söka", - "search.all": "Visa alla", + "search.all": "Show all {count} results", "search.results.none": "Inga träffar", "section.invalid": "Sektionen är ogiltig", @@ -572,6 +595,7 @@ "system.issues.content": "Mappen content verkar vara exponerad", "system.issues.eol.kirby": "Din installerade Kirby-version har nått slutet av sin livscykel och kommer inte att få fler säkerhetsuppdateringar", "system.issues.eol.plugin": "Den installerade versionen av tillägget { plugin } har nått slutet på sin livscykel och kommer inte att få fler säkerhetsuppdateringar.", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Felsökningsläget måste vara avstängt i produktion", "system.issues.git": "Mappen .git verkar vara exponerad", "system.issues.https": "Vi rekommenderar HTTPS för alla dina webbplatser", diff --git a/i18n/translations/tr.json b/i18n/translations/tr.json index 6fed476f82..f3ea5298cd 100644 --- a/i18n/translations/tr.json +++ b/i18n/translations/tr.json @@ -3,6 +3,7 @@ "account.delete": "Hesabınızı silin", "account.delete.confirm": "Hesabınızı gerçekten silmek istiyor musunuz? Oturumunuz hemen sonlandırılacaktır. Hesabınız daha sonra geri alınamaz.", + "activate": "Activate", "add": "Ekle", "alpha": "Alfa", "author": "Yazar", @@ -47,6 +48,7 @@ "dialog.users.empty": "Seçilecek kullanıcı yok", "dimensions": "Boyutlar", + "disable": "Disable", "disabled": "Devredışı", "discard": "Vazge\u00e7", @@ -134,6 +136,9 @@ "error.license.email": "Lütfen geçerli bir e-posta adresi girin", "error.license.verification": "Lisans doğrulanamadı", + "error.login.totp.confirm.invalid": "Geçersiz kod", + "error.login.totp.confirm.missing": "Please enter the current code", + "error.object.validation": "\"{label}\" alanında bir hata var:\n{message}", "error.offline": "Panel şu anda çevrimdışı", @@ -407,15 +412,16 @@ "languages.secondary.empty": "Henüz ikincil bir dil yok", "license": "Lisans", + "license.activate": "Activate it now", + "license.activate.label": "Please activate your license", + "license.activate.domain": "Your license will be activated for {host}.", + "license.activate.local": "You are about to activate your Kirby license for your local domain {host}. If this site will be deployed to a public domain, please activate it there instead. If {host} is the domain you want to use your license for, please continue.", "license.buy": "Bir lisans satın al", - "license.register": "Kayıt Ol", + "license.code.help": "You received your license code after the purchase via email. Please copy and paste it here.", + "license.code.label": "Lütfen lisans kodunu giriniz", "license.manage": "Lisanslarınızı yönetin", - "license.register.help": "Satın alma işleminden sonra e-posta yoluyla lisans kodunuzu aldınız. Lütfen kayıt olmak için kodu kopyalayıp yapıştırın.", - "license.register.label": "Lütfen lisans kodunu giriniz", - "license.register.domain": "Lisansınız {host} için kaydedilecek.", - "license.register.local": "Lisansınızı yerel alan adınız {host} için kaydetmek üzeresiniz. Bu site genel bir etki alanına dağıtılacaksa, lütfen bunun yerine lisansı orada kaydedin. Kirby'yi lisanslamak istediğiniz alan adı {host} ise lütfen devam edin.", - "license.register.success": "Kirby'yi desteklediğiniz için teşekkürler", - "license.unregistered": "Bu Kirby'nin kayıtsız bir demosu", + "license.ready": "Ready to launch your site?", + "license.success": "Kirby'yi desteklediğiniz için teşekkürler", "license.unregistered.label": "Kayıtsız", "link": "Ba\u011flant\u0131", @@ -434,7 +440,9 @@ "login.code.label.login": "Giriş kodu", "login.code.label.password-reset": "Şifre sıfırlama kodu", "login.code.placeholder.email": "000 000", + "login.code.placeholder.totp": "000000", "login.code.text.email": "E-posta adresiniz kayıtlıysa, istenen kod e-posta yoluyla gönderilmiştir.", + "login.code.text.totp": "Please enter the one‑time code from your authenticator app.", "login.email.login.body": "Merhaba {user.nameOrEmail},\n\nKısa süre önce {site} Panel'i için bir giriş kodu istediniz.\nAşağıdaki giriş kodu {timeout} dakika boyunca geçerli olacaktır:\n\n{code}\n\nBir giriş kodu istemediyseniz, lütfen bu e-postayı dikkate almayın veya sorularınız varsa yöneticinize başvurun.\nGüvenliğiniz için lütfen bu e-postayı İLETMEYİN.", "login.email.login.subject": "Giriş kodunuz", "login.email.password-reset.body": "Merhaba {user.nameOrEmail},\n\nKısa süre önce {site} Panel'i için bir şifre sıfırlama kodu istediniz.\nAşağıdaki şifre sıfırlama kodu {timeout} dakika boyunca geçerli olacaktır:\n\n{code}\n\nŞifre sıfırlama kodu istemediyseniz, lütfen bu e-postayı dikkate almayın veya sorularınız varsa yöneticinizle iletişime geçin.\nGüvenliğiniz için lütfen bu e-postayı İLETMEYİN.", @@ -445,6 +453,20 @@ "login.toggleText.code.email-password": "Şifre ile giriş yapın", "login.toggleText.password-reset.email": "Şifrenizi mi unuttunuz?", "login.toggleText.password-reset.email-password": "← Girişe geri dön", + "login.totp.enable.option": "Set up one‑time codes", + "login.totp.enable.intro": "Authenticator apps can generate one‑time codes that are used as a second factor when signing into your account.", + "login.totp.enable.qr.label": "1. Scan this QR code", + "login.totp.enable.qr.help": "Unable to scan? Add the setup key {secret} manually to your authenticator app.", + "login.totp.enable.confirm.headline": "2. Confirm with generated code", + "login.totp.enable.confirm.text": "Your app generates a new one‑time code every 30 seconds. Enter the current code to complete the setup:", + "login.totp.enable.confirm.label": "Current code", + "login.totp.enable.confirm.help": "After this setup, we will ask you for a one‑time code every time you log in.", + "login.totp.enable.success": "Activated one‑time codes", + "login.totp.disable.option": "Disable one‑time codes", + "login.totp.disable.label": "Enter your password to disable one‑time codes", + "login.totp.disable.help": "In the future, a different second factor like a login code sent via email will be requested when you log in. You can always set up one‑time codes again later.", + "login.totp.disable.admin": "

This will disable one‑time codes for {user}.

In the future, a different second factor like a login code sent via email will be requested when they log in. {user} can set up one‑time codes again after their next login.

", + "login.totp.disable.success": "Disabled one‑time codes", "logout": "Oturumu kapat", @@ -481,6 +503,7 @@ "option": "Seçenek", "options": "Seçenekler", "options.none": "Seçenek yok", + "options.all": "Show all {count} options", "orientation": "Oryantasyon", "orientation.landscape": "Yatay", @@ -550,7 +573,7 @@ "save": "Kaydet", "search": "Arama", "search.min": "Aramak için {min} karakter girin", - "search.all": "Tümünü göster", + "search.all": "Show all {count} results", "search.results.none": "Sonuç yok", "section.invalid": "Bu bölüm geçersizdir", @@ -572,6 +595,7 @@ "system.issues.content": "İçerik klasörü açığa çıkmış görünüyor", "system.issues.eol.kirby": "Yüklü Kirby sürümünüz kullanım ömrünün sonuna ulaştı ve daha fazla güvenlik güncellemesi almayacak", "system.issues.eol.plugin": "{ plugin } eklentisinin yüklü sürümü kullanım ömrünün sonuna ulaştı ve daha fazla güvenlik güncellemesi almayacak", + "system.issues.eol.php": "Your installed PHP release { release } has reached end-of-life and will not receive further security updates", "system.issues.debug": "Canlı modda hata ayıklama kapatılmalıdır", "system.issues.git": ".git klasörü açığa çıkmış görünüyor", "system.issues.https": "Tüm siteleriniz için HTTPS'yi öneriyoruz", diff --git a/panel/dist/css/style.min.css b/panel/dist/css/style.min.css index 351335e041..591c5448fc 100644 --- a/panel/dist/css/style.min.css +++ b/panel/dist/css/style.min.css @@ -1 +1 @@ -.k-items{display:grid;position:relative;container-type:inline-size}.k-items[data-layout=list]{gap:2px}.k-items[data-layout=cardlets]{--items-size:1fr;grid-template-columns:repeat(auto-fill,minmax(var(--items-size),1fr));gap:.75rem;display:grid}@container (width>=15rem){.k-items[data-layout=cardlets]{--items-size:15rem}}.k-items[data-layout=cards]{grid-template-columns:1fr;gap:1.5rem;display:grid}@container (width>=6rem){.k-items[data-layout=cards][data-size=tiny]{grid-template-columns:repeat(auto-fill,minmax(6rem,1fr))}}@container (width>=9rem){.k-items[data-layout=cards][data-size=small]{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}}@container (width>=12rem){.k-items[data-layout=cards][data-size=auto],.k-items[data-layout=cards][data-size=medium]{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}}@container (width>=15rem){.k-items[data-layout=cards][data-size=large]{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}}@container (width>=18rem){.k-items[data-layout=cards][data-size=huge]{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr))}}.k-collection-footer{margin-top:var(--spacing-2);flex-wrap:wrap}.k-empty{max-width:100%}:root{--item-button-height:var(--height-md);--item-button-width:var(--height-md);--item-height:auto;--item-height-cardlet:calc(var(--height-md)*3)}.k-item{background:var(--color-white);box-shadow:var(--shadow);border-radius:var(--rounded);height:var(--item-height);position:relative;container-type:inline-size}.k-item:has(a:focus){outline:2px solid var(--color-focus)}@supports not selector(:has(*)){.k-item:focus-within{outline:2px solid var(--color-focus)}}.k-item .k-icon-frame{--back:var(--color-gray-300)}.k-item-content{padding:var(--spacing-2);line-height:1.25;overflow:hidden}.k-item-content a:focus{outline:0}.k-item-content a:after{content:"";position:absolute;inset:0}.k-item-info{color:var(--color-text-dimmed)}.k-item-options{z-index:1;justify-content:space-between;align-items:center;display:flex;transform:translate(0)}.k-item-options[data-only-option=true]{justify-content:flex-end}.k-item-options .k-button{--button-height:var(--item-button-height);--button-width:var(--item-button-width)}.k-item .k-sort-button{z-index:2;position:absolute}.k-item:not(:hover):not(.k-sortable-fallback) .k-sort-button{opacity:0}.k-item[data-layout=list]{--item-height:var(--field-input-height);--item-button-height:var(--item-height);--item-button-width:auto;height:var(--item-height);grid-template-columns:1fr auto;align-items:center;display:grid}.k-item[data-layout=list][data-has-image=true]{grid-template-columns:var(--item-height)1fr auto}.k-item[data-layout=list] .k-frame{--ratio:1/1;height:var(--item-height);border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded)}.k-item[data-layout=list] .k-item-content{white-space:nowrap;gap:var(--spacing-2);justify-content:space-between;min-width:0;display:flex}.k-item[data-layout=list] .k-item-title,.k-item[data-layout=list] .k-item-info{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.k-item[data-layout=list] .k-item-title{flex-shrink:1}.k-item[data-layout=list] .k-item-info{flex-shrink:2}@container (width<=30rem){.k-item[data-layout=list] .k-item-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.k-item[data-layout=list] .k-item-info{display:none}}.k-item[data-layout=list] .k-sort-button{--button-width:calc(1.5rem + var(--spacing-1));--button-height:var(--item-height);left:calc(-1*var(--button-width))}.k-item:is([data-layout=cardlets],[data-layout=cards]) .k-sort-button{top:var(--spacing-2);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);--button-width:1.5rem;--button-height:1.5rem;--button-rounded:var(--rounded-sm);--button-padding:0;--icon-size:14px;background:#ffffff80;inset-inline-start:var(--spacing-2);box-shadow:0 2px 5px #0003}.k-item:is([data-layout=cardlets],[data-layout=cards]) .k-sort-button:hover{background:#fffffff2}.k-item[data-layout=cardlets]{--item-height:var(--item-height-cardlet);grid-template-columns:1fr;grid-template-areas:"content""options";grid-template-rows:1fr var(--height-md);display:grid}.k-item[data-layout=cardlets][data-has-image=true]{grid-template-areas:"image content""image options";grid-template-columns:minmax(0,var(--item-height))1fr}.k-item[data-layout=cardlets] .k-frame{aspect-ratio:auto;height:var(--item-height);border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded);grid-area:image}.k-item[data-layout=cardlets] .k-item-content{grid-area:content}.k-item[data-layout=cardlets] .k-item-info{white-space:nowrap;text-overflow:ellipsis;margin-top:.125em;overflow:hidden}.k-item[data-layout=cardlets] .k-item-options{grid-area:options}.k-item[data-layout=cards]{flex-direction:column;display:flex}.k-item[data-layout=cards] .k-frame{border-start-start-radius:var(--rounded);border-start-end-radius:var(--rounded)}.k-item[data-layout=cards] .k-item-content{padding:var(--spacing-2);flex-grow:1}.k-item[data-layout=cards] .k-item-info{margin-top:.125em}.k-dialog-body{padding:var(--dialog-padding)}.k-dialog[data-has-footer=true] .k-dialog-body{padding-bottom:0}.k-button-group.k-dialog-buttons{gap:var(--spacing-3);--button-height:var(--height-lg);grid-template-columns:1fr 1fr;display:grid}.k-dialog-fields{padding-bottom:.5rem}.k-dialog-footer{padding:var(--dialog-padding);flex-shrink:0;line-height:1}.k-dialog .k-notification{border-start-start-radius:var(--dialog-rounded);border-start-end-radius:var(--dialog-rounded);margin-top:-1px;padding-block:.325rem}.k-dialog-search{--input-color-border:transparent;--input-color-back:var(--color-gray-300);margin-bottom:.75rem}:root{--dialog-color-back:var(--color-light);--dialog-color-text:currentColor;--dialog-margin:var(--spacing-6);--dialog-padding:var(--spacing-6);--dialog-rounded:var(--rounded-xl);--dialog-shadow:var(--shadow-xl);--dialog-width:22rem}.k-dialog-portal{padding:var(--dialog-margin)}.k-dialog{background:var(--dialog-color-back);color:var(--dialog-color-text);width:clamp(10rem,100%,var(--dialog-width));box-shadow:var(--dialog-shadow);border-radius:var(--dialog-rounded);flex-direction:column;line-height:1;display:flex;position:relative;overflow:clip;container-type:inline-size}@media screen and (width>=20rem){.k-dialog[data-size=small]{--dialog-width:20rem}}@media screen and (width>=22rem){.k-dialog[data-size=default]{--dialog-width:22rem}}@media screen and (width>=30rem){.k-dialog[data-size=medium]{--dialog-width:30rem}}@media screen and (width>=40rem){.k-dialog[data-size=large]{--dialog-width:40rem}}@media screen and (width>=60rem){.k-dialog[data-size=huge]{--dialog-width:60rem}}.k-dialog .k-pagination{justify-content:center;align-items:center;margin-bottom:-1.5rem;display:flex}.k-changes-dialog .k-headline{margin-top:-.5rem;margin-bottom:var(--spacing-3)}.k-error-details{background:var(--color-white);font-size:var(--text-sm);margin-top:.75rem;padding:1rem;line-height:1.25em;display:block;overflow:auto}.k-error-details dt{color:var(--color-red-500);margin-bottom:.25rem}.k-error-details dd{overflow-wrap:break-word;text-overflow:ellipsis;overflow:hidden}.k-error-details dd:not(:last-of-type){margin-bottom:1.5em}.k-error-details li{white-space:pre-line}.k-error-details li:not(:last-child){border-bottom:1px solid var(--color-background);margin-bottom:.25rem;padding-bottom:.25rem}.k-models-dialog .k-list-item{cursor:pointer}.k-page-template-switch{margin-bottom:var(--spacing-6);padding-bottom:var(--spacing-6);border-bottom:1px dashed var(--color-gray-300)}.k-page-move-dialog .k-headline{margin-bottom:var(--spacing-2)}.k-page-move-parent{--tree-color-back:var(--color-white);--tree-color-hover-back:var(--color-light);padding:var(--spacing-3);background:var(--color-white);border-radius:var(--rounded);box-shadow:var(--shadow)}.k-pages-dialog-navbar{justify-content:center;align-items:center;margin-bottom:.5rem;padding-inline-end:38px;display:flex}.k-pages-dialog-navbar .k-button[aria-disabled]{opacity:0}.k-pages-dialog-navbar .k-headline{text-align:center;flex-grow:1}.k-pages-dialog-option[aria-disabled]{opacity:.25}.k-search-dialog{--dialog-padding:0;--dialog-rounded:var(--rounded);overflow:visible}.k-overlay[open][data-type=dialog]>.k-portal>.k-search-dialog{margin-top:0}.k-search-dialog-input{--button-height:var(--input-height);align-items:center;display:flex}.k-search-dialog-types{flex-shrink:0}.k-search-dialog-input input{height:var(--input-height);border-left:1px solid var(--color-border);line-height:var(--input-height);border-radius:var(--rounded);font-size:var(--input-font-size);flex-grow:1;padding-inline:.75rem}.k-search-dialog-input input:focus{outline:0}.k-search-dialog-input .k-search-dialog-close{flex-shrink:0}.k-search-dialog-results{border-top:1px solid var(--color-border);padding:1rem}.k-search-dialog-results .k-item[data-selected=true]{outline:var(--outline)}.k-search-dialog-footer{text-align:center}.k-search-dialog-footer p{color:var(--color-text-dimmed)}.k-search-dialog-footer .k-button{margin-top:var(--spacing-4)}.k-totp-dialog-headline{margin-bottom:var(--spacing-1)}.k-totp-dialog-intro{margin-bottom:var(--spacing-6)}.k-totp-dialog-grid{gap:var(--spacing-6);display:grid}@media screen and (width>=40rem){.k-totp-dialog-grid{gap:var(--spacing-8);grid-template-columns:1fr 1fr}}.k-totp-qrcode .k-box[data-theme]{padding:var(--box-padding-inline)}.k-totp-dialog-fields .k-field-name-confirm{--input-height:var(--height-xl);--input-rounded:var(--rounded-xl);--input-font-size:var(--text-3xl)}.k-upload-dialog.k-dialog{--dialog-width:40rem}.k-upload-items{gap:.25rem;display:grid}.k-upload-item{accent-color:var(--color-focus);grid-template-columns:6rem 1fr auto;grid-template-areas:"preview input input""preview body toggle";grid-template-rows:var(--input-height)1fr;border-radius:var(--rounded);background:var(--color-white);box-shadow:var(--shadow);min-height:6rem;display:grid}.k-upload-item-preview{border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded);grid-area:preview;width:100%;height:100%;display:flex;overflow:hidden}.k-upload-item-preview:focus{border-radius:var(--rounded);outline:2px solid var(--color-focus);z-index:1}.k-upload-item-body{padding:var(--spacing-2)var(--spacing-3);flex-direction:column;grid-area:body;justify-content:space-between;min-width:0;display:flex}.k-upload-item-input.k-input{--input-color-border:transparent;--input-padding:var(--spacing-2)var(--spacing-3);--input-rounded:0;font-size:var(--text-sm);border-bottom:1px solid var(--color-light);grid-area:input}.k-upload-item-input.k-input:focus-within{outline:2px solid var(--color-focus);z-index:1;border-radius:var(--rounded)}.k-upload-item-input .k-input-after{color:var(--color-gray-600)}.k-upload-item-meta{font-size:var(--text-xs);color:var(--color-gray-600)}.k-upload-item-error{font-size:var(--text-xs);color:var(--color-red-700);margin-top:.25rem}.k-upload-item-progress{--progress-height:.25rem;--progress-color-back:var(--color-light)}.k-upload-item-toggle{grid-area:toggle;align-self:end}.k-upload-item-toggle>*{padding:var(--spacing-3)}.k-upload-item[data-completed] .k-upload-item-progress{--progress-color-value:var(--color-green-400)}.k-upload-replace-dialog .k-upload-items{gap:var(--spacing-3);align-items:center;display:flex}.k-upload-original{border-radius:var(--rounded);box-shadow:var(--shadow);width:6rem;overflow:hidden}.k-upload-replace-dialog .k-upload-item{flex-grow:1}.k-drawer-body{padding:var(--drawer-body-padding);background:var(--color-background);flex-grow:1}.k-drawer-body .k-writer-input-wrapper:focus-within .k-toolbar:not([data-inline=true]),.k-drawer-body .k-textarea-input-wrapper:focus-within .k-toolbar,.k-drawer-body .k-table th{top:-1.5rem}.k-drawer-header{--button-height:calc(var(--drawer-header-height) - var(--spacing-1));height:var(--drawer-header-height);background:var(--color-white);line-height:1;font-size:var(--text-sm);flex-shrink:0;justify-content:space-between;align-items:center;padding-inline-start:var(--drawer-header-padding);display:flex}.k-drawer-breadcrumb{flex-grow:1}.k-drawer-options{align-items:center;padding-inline-end:.75rem;display:flex}.k-drawer-option{--button-width:var(--button-height)}.k-drawer-option[aria-disabled]{opacity:var(--opacity-disabled)}.k-notification.k-drawer-notification{padding:.625rem 1.5rem}.k-drawer-tabs{align-items:center;line-height:1;display:flex}.k-drawer-tab.k-button{--button-height:calc(var(--drawer-header-height) - var(--spacing-1));--button-padding:var(--spacing-3);font-size:var(--text-xs);align-items:center;display:flex;overflow-x:visible}.k-drawer-tab.k-button[aria-current]:after{bottom:-2px;inset-inline:var(--button-padding);content:"";background:var(--color-black);z-index:1;height:2px;position:absolute}:root{--drawer-body-padding:1.5rem;--drawer-color-back:var(--color-light);--drawer-header-height:2.5rem;--drawer-header-padding:1rem;--drawer-shadow:var(--shadow-xl);--drawer-width:50rem}.k-drawer-overlay+.k-drawer-overlay{--overlay-color-back:none}.k-drawer{--header-sticky-offset:calc(var(--drawer-body-padding)*-1);z-index:var(--z-toolbar);flex-basis:var(--drawer-width);background:var(--drawer-color-back);box-shadow:var(--drawer-shadow);flex-direction:column;display:flex;position:relative;container-type:inline-size}.k-drawer[aria-disabled]{pointer-events:none;display:none}.k-dropdown{position:relative}:root{--dropdown-color-bg:var(--color-black);--dropdown-color-text:var(--color-white);--dropdown-color-hr:#ffffff40;--dropdown-padding:var(--spacing-2);--dropdown-rounded:var(--rounded);--dropdown-shadow:var(--shadow-xl)}.k-dropdown-content{--dropdown-x:0;--dropdown-y:0;inset-block-start:0;inset-inline-start:initial;padding:var(--dropdown-padding);background:var(--dropdown-color-bg);border-radius:var(--dropdown-rounded);color:var(--dropdown-color-text);box-shadow:var(--dropdown-shadow);text-align:start;transform:translate(var(--dropdown-x),var(--dropdown-y));width:max-content;position:absolute;left:0}.k-dropdown-content::backdrop{background:0 0}.k-dropdown-content[data-align-x=end]{--dropdown-x:-100%}.k-dropdown-content[data-align-x=center]{--dropdown-x:-50%}.k-dropdown-content[data-align-y=top]{--dropdown-y:-100%}.k-dropdown-content hr{background:var(--dropdown-color-hr);height:1px;margin:.5rem 0}.k-dropdown-content[data-theme=light]{--dropdown-color-bg:var(--color-white);--dropdown-color-text:var(--color-black);--dropdown-color-hr:#0000001a}.k-dropdown-item.k-button{--button-align:flex-start;--button-color-text:var(--dropdown-color-text);--button-height:var(--height-sm);--button-rounded:var(--rounded-sm);--button-width:100%;gap:.75rem;display:flex}.k-dropdown-item.k-button:focus{outline:var(--outline)}.k-dropdown-item.k-button[aria-current]{--button-color-text:var(--color-blue-500)}.k-dropdown-item.k-button:not([aria-disabled]):hover{--button-color-back:var(--dropdown-color-hr)}.k-options-dropdown{justify-content:center;align-items:center;display:flex}:root{--selector-color-highlight:var(--color-yellow-500)}.k-selector{--button-align:start;--button-height:var(--height-sm);--button-rounded:var(--rounded-sm);--button-width:100%}.k-selector-input{height:var(--button-height);padding:0 var(--button-padding);border-radius:var(--button-rounded)}.k-selector-input::placeholder{color:var(--color-text-dimmed)}.k-selector[data-has-current=true] .k-selector-input:focus{outline:0}.k-selector-empty{height:var(--button-height);padding-inline:var(--button-padding);color:var(--color-text-dimmed);align-items:center;display:flex}.k-selector-button[aria-current]{outline:var(--outline)}.k-selector-button b{color:var(--selector-color-highlight);font-weight:var(--font-normal)}.k-selector-add-button{--button-height:auto;padding-block:var(--button-padding)}.k-selector-add-button .k-button-icon{align-self:start}.k-selector-add-button .k-button-text strong{font-weight:var(--font-semi);margin-bottom:.25rem;display:block}.k-selector-preview{color:var(--selector-color-highlight)}.k-selector-dropdown-content{--color-text-dimmed:var(--color-gray-400);min-width:15rem;max-width:30rem;padding:0}.k-selector-dropdown .k-selector-header{border-bottom:1px solid var(--dropdown-color-hr)}.k-selector-dropdown .k-selector-label{padding-inline:var(--spacing-3);height:var(--height-lg);font-weight:var(--font-semi);align-items:center;display:flex}.k-selector-dropdown .k-selector-search{padding:var(--dropdown-padding);border-top:1px solid var(--dropdown-color-hr)}.k-selector-dropdown .k-selector-input{background:var(--color-gray-800)}.k-selector-dropdown .k-selector-footer{padding:var(--dropdown-padding)}.k-selector-dropdown .k-selector-body{max-height:calc((var(--button-height)*10) + calc(var(--dropdown-padding)*2));padding:var(--dropdown-padding);overscroll-behavior:contain;scroll-padding-top:var(--dropdown-padding);scroll-padding-bottom:var(--dropdown-padding);overflow-y:auto}.k-selector-dropdown .k-selector-button{gap:.75rem}.k-selector-dropdown .k-selector-button:hover{--button-color-back:var(--dropdown-color-hr)}.k-selector-dropdown .k-selector-body+.k-selector-footer{border-top:1px solid var(--dropdown-color-hr)}.k-counter{font-size:var(--text-xs);color:var(--color-gray-900)}.k-counter[data-invalid=true]{box-shadow:none;color:var(--color-red-700);border:0}.k-counter-rules{color:var(--color-gray-600);font-weight:var(--font-normal);padding-inline-start:.5rem}.k-form-submitter{display:none}.k-field-header{margin-bottom:var(--spacing-2);position:relative}.k-field[data-disabled=true]{cursor:not-allowed}.k-field[data-disabled=true] *{pointer-events:none}.k-field[data-disabled=true] .k-text[data-theme=help] *{pointer-events:initial}.k-field:focus-within>.k-field-header>.k-field-counter{display:block}.k-field-footer{margin-top:var(--spacing-2)}.k-fieldset{border:0}:root{--input-color-back:var(--color-white);--input-color-border:var(--color-border);--input-color-description:var(--color-text-dimmed);--input-color-icon:currentColor;--input-color-placeholder:var(--color-gray-600);--input-color-text:currentColor;--input-font-family:var(--font-sans);--input-font-size:var(--text-sm);--input-height:2.25rem;--input-leading:1;--input-outline-focus:var(--outline);--input-padding:var(--spacing-2);--input-padding-multiline:.475rem var(--input-padding);--input-rounded:var(--rounded);--input-shadow:none}@media (pointer:coarse){:root{--input-font-size:var(--text-md);--input-padding-multiline:.375rem var(--input-padding)}}.k-input{line-height:var(--input-leading);background:var(--input-color-back);border-radius:var(--input-rounded);outline:1px solid var(--input-color-border);color:var(--input-color-text);min-height:var(--input-height);box-shadow:var(--input-shadow);font-family:var(--input-font-family);font-size:var(--input-font-size);border:0;align-items:center;display:flex}.k-input:focus-within{outline:var(--input-outline-focus)}.k-input-element{flex-grow:1}.k-input-icon{color:var(--input-color-icon);width:var(--input-height);justify-content:center;align-items:center;display:flex}.k-input-icon-button{flex-shrink:0;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.k-input-description{color:var(--input-color-description);padding-inline:var(--input-padding)}.k-input-before{padding-inline-end:0}.k-input-after{padding-inline-start:0}.k-input :where(.k-input-description,.k-input-icon){flex-shrink:0;align-self:stretch;align-items:center;display:flex}.k-input[data-disabled=true]{--input-color-back:var(--color-background);--input-color-icon:var(--color-gray-600);pointer-events:none}.k-login-code-form .k-user-info{margin-bottom:var(--spacing-6)}.k-structure-backdrop{z-index:2;height:100vh;position:absolute;inset:0}.k-structure-form section{z-index:3;border-radius:var(--rounded-xs);border:1px solid var(--color-border);background:var(--color-background);margin-bottom:1px;position:relative;box-shadow:0 0 0 3px #1111110d}.k-structure-form-fields{padding:1.5rem 1.5rem 2rem}.k-structure-form-buttons{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.25rem .5rem;display:flex}@container (width<=30rem){.k-pagination-details{display:none}}.k-block-type-code-editor{--input-color-border:none;--input-color-back:var(--color-black);--input-color-text:var(--color-white);--input-font-family:var(--font-mono);--input-outline-focus:none;--input-padding:var(--spacing-3);--input-padding-multiline:var(--input-padding);position:relative}.k-block-type-code-editor .k-input[data-type=textarea]{white-space:pre-wrap}.k-block-type-code-editor-language{--input-font-size:var(--text-xs);inset-inline-end:0;position:absolute;bottom:0}.k-block-type-code-editor-language .k-input-element{padding-inline-start:1.5rem}.k-block-type-code-editor-language .k-input-icon{inset-inline-start:0}.k-block-type-default .k-block-title{line-height:1.5em}.k-block-container.k-block-container-type-fields{padding-block:0}.k-block-container:not([data-hidden=true]) .k-block-type-fields>:not([data-collapsed=true]){padding-bottom:var(--spacing-3)}.k-block-type-fields-header{justify-content:space-between;display:flex}.k-block-type-fields-header .k-block-title{padding-block:var(--spacing-3);cursor:pointer}.k-block-type-fields-form{background-color:var(--color-gray-200);padding:var(--spacing-6)var(--spacing-6)var(--spacing-8);border-radius:var(--rounded-sm)}.k-block-container-type-fields[data-hidden=true] :where(.k-drawer-tabs,.k-block-type-fields-form){display:none}.k-block-type-gallery ul{grid-gap:.75rem;cursor:pointer;grid-template-columns:repeat(auto-fit,minmax(6rem,1fr));justify-content:center;align-items:center;line-height:0;display:grid}.k-block-type-gallery-placeholder{background:var(--color-background)}.k-block-type-gallery figcaption{color:var(--color-gray-600);font-size:var(--text-sm);text-align:center;padding-top:.5rem}.k-block-type-heading-input{line-height:1.25em;font-size:var(--text-size);font-weight:var(--font-bold);align-items:center;display:flex}.k-block-type-heading-input[data-level=h1]{--text-size:var(--text-3xl);line-height:1.125em}.k-block-type-heading-input[data-level=h2]{--text-size:var(--text-2xl)}.k-block-type-heading-input[data-level=h3]{--text-size:var(--text-xl)}.k-block-type-heading-input[data-level=h4]{--text-size:var(--text-lg)}.k-block-type-heading-input[data-level=h5]{--text-size:var(--text-md);line-height:1.5em}.k-block-type-heading-input[data-level=h6]{--text-size:var(--text-sm);line-height:1.5em}.k-block-type-heading-input .k-writer .ProseMirror strong{font-weight:700}.k-block-type-heading-level{--input-color-back:transparent;--input-color-border:none;--input-color-text:var(--color-gray-600);font-weight:var(--font-bold);text-transform:uppercase}.k-block-type-image .k-block-figure-container{text-align:center;line-height:0}.k-block-type-image-auto{max-width:100%;max-height:30rem;margin-inline:auto}.k-block-type-line hr{border:0;border-top:1px solid var(--color-border);margin-block:.75rem}.k-block-type-list-input{--input-color-border:none;--input-outline-focus:none}.k-block-type-markdown-input{--input-color-back:var(--color-light);--input-color-border:none;--input-outline-focus:none;--input-padding-multiline:var(--spacing-3)}.k-block-type-quote-editor{border-inline-start:2px solid var(--color-black);padding-inline-start:var(--spacing-3)}.k-block-type-quote-text{font-size:var(--text-xl);margin-bottom:var(--spacing-1);line-height:1.25em}.k-block-type-quote-citation{color:var(--color-text-dimmed);font-style:italic}.k-block-type-table-preview{cursor:pointer;border:1px solid var(--color-gray-300);border-spacing:0;border-radius:var(--rounded-sm);overflow:hidden}.k-block-type-table-preview td,.k-block-type-table-preview th{text-align:start;line-height:1.5em;font-size:var(--text-sm)}.k-block-type-table-preview th{padding:.5rem .75rem}.k-block-type-table-preview td:not(.k-table-index-column){padding:0 .75rem}.k-block-type-table-preview td>*,.k-block-type-table-preview td [class$=-field-preview]{padding:0}.k-block-type-text-input{height:100%;line-height:1.5}.k-block-container.k-block-container-type-text{padding:0}.k-block-type-text-input.k-writer[data-toolbar-inline=true]{padding:var(--spacing-3)}.k-block-type-text-input.k-writer:not([data-toolbar-inline=true])>.ProseMirror,.k-block-type-text-input.k-writer:not([data-toolbar-inline=true])[data-placeholder][data-empty=true]:before{padding:var(--spacing-3)var(--spacing-6)}.k-block-container{background:var(--color-white);border-radius:var(--rounded);padding:.75rem;position:relative}.k-block-container:not(:last-of-type){border-bottom:1px dashed #0000001a}.k-block-container:focus{outline:0}.k-block-container[data-selected=true]{z-index:2;outline:var(--outline);border-bottom-color:#0000}.k-block-container[data-batched=true]:after{content:"";mix-blend-mode:multiply;background:#b1c2d82d;position:absolute;inset:0}.k-block-container .k-block-options{top:0;margin-top:calc(2px - 1.75rem);display:none;position:absolute;inset-inline-end:.75rem}.k-block-container[data-last-selected=true]>.k-block-options{display:flex}.k-block-container[data-hidden=true] .k-block{opacity:.25}.k-drawer-options .k-drawer-option[data-disabled=true]{vertical-align:middle;display:inline-grid}[data-disabled=true] .k-block-container{background:var(--color-background)}.k-block-container:is(.k-sortable-ghost,.k-sortable-fallback) .k-block{max-height:4rem;position:relative;overflow:hidden}.k-block-container:is(.k-sortable-ghost,.k-sortable-fallback) .k-block:after{content:"";background:linear-gradient(to top,var(--color-white),transparent);width:100%;height:2rem;position:absolute;bottom:0}.k-blocks{border-radius:var(--rounded)}.k-blocks:not([data-empty=true],[data-disabled=true]){background:var(--color-white);box-shadow:var(--shadow)}.k-blocks[data-disabled=true]:not([data-empty=true]){border:1px solid var(--input-color-border)}.k-blocks-list[data-multi-select-key=true]>.k-block-container *{pointer-events:none}.k-blocks-list[data-multi-select-key=true]>.k-block-container .k-blocks *{pointer-events:all}.k-blocks .k-sortable-ghost{outline:2px solid var(--color-focus);cursor:grabbing;cursor:-moz-grabbing;cursor:-webkit-grabbing;box-shadow:0 5px 10px #11111140}.k-blocks-list>.k-blocks-empty{align-items:center;display:flex}.k-block-figure{cursor:pointer}.k-block-figure iframe{pointer-events:none;background:var(--color-black);border:0}.k-block-figure figcaption{color:var(--color-text-dimmed);font-size:var(--text-sm);text-align:center;padding-top:.5rem}.k-block-figure-empty{--button-width:100%;--button-height:6rem;--button-color-text:var(--color-text-dimmed);--button-color-back:var(--color-gray-200)}.k-block-figure-empty,.k-block-figure-container>*{border-radius:var(--rounded-sm)}.k-block-options{--toolbar-size:30px;box-shadow:var(--shadow-toolbar)}.k-block-options>.k-button:not(:last-of-type){border-inline-end:1px solid var(--color-background)}.k-block-options .k-dropdown-content{margin-top:.5rem}.k-block-importer .k-dialog-body{padding:0}.k-block-importer label{padding:var(--spacing-6)var(--spacing-6)0;color:var(--color-text-dimmed);line-height:var(--leading-normal);display:block}.k-block-importer label small{font-size:inherit;display:block}.k-block-importer textarea{font:inherit;color:var(--color-white);padding:var(--spacing-6);resize:none;background:0 0;border:0;width:100%;height:20rem}.k-block-importer textarea:focus{outline:0}.k-block-selector .k-headline{margin-bottom:1rem}.k-block-selector details+details{margin-top:var(--spacing-6)}.k-block-selector summary{font-size:var(--text-xs);cursor:pointer;color:var(--color-text-dimmed)}.k-block-selector details:only-of-type summary{pointer-events:none}.k-block-selector summary:focus{outline:0}.k-block-selector summary:focus-visible{color:var(--color-focus)}.k-block-types{grid-gap:2px;grid-template-columns:repeat(1,1fr);margin-top:.75rem;display:grid}.k-block-types .k-button{--button-color-icon:var(--color-text);--button-color-back:var(--color-white);--button-padding:var(--spacing-3);box-shadow:var(--shadow);justify-content:start;gap:1rem;width:100%}.k-block-types .k-button[aria-disabled]{opacity:var(--opacity-disabled);--button-color-back:var(--color-gray-200);box-shadow:none}.k-clipboard-hint{line-height:var(--leading-normal);font-size:var(--text-xs);color:var(--color-text-dimmed);padding-top:1.5rem}.k-clipboard-hint small{font-size:inherit;color:var(--color-text-dimmed);display:block}.k-block-title{align-items:center;gap:var(--spacing-2);min-width:0;padding-inline-end:.75rem;line-height:1;display:flex}.k-block-icon{--icon-color:var(--color-gray-600);width:1rem}.k-block-label{color:var(--color-text-dimmed);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.k-blocks-field{position:relative}.k-blocks-field>footer{margin-top:var(--spacing-3)}.k-string-input{padding:var(--input-padding);border-radius:var(--input-rounded)}.k-string-input:focus{outline:0}.k-string-input[data-font=monospace]{font-family:var(--font-mono)}.k-color-field{--color-frame-size:calc(var(--input-height) - var(--spacing-2))}.k-color-field .k-input-before{align-items:center;padding-inline-start:var(--spacing-1)}.k-color-field-options{--color-frame-size:var(--input-height)}.k-color-field-picker{padding:var(--spacing-3)}.k-color-field-picker-toggle{--color-frame-rounded:var(--rounded-sm);border-radius:var(--color-frame-rounded)}.k-color-field .k-colorname-input{padding-inline:var(--input-padding)}.k-color-field .k-colorname-input:focus{outline:0}.k-date-field-body{gap:var(--spacing-2);display:grid}@container (width>=20rem){.k-date-field-body[data-has-time=true]{grid-template-columns:1fr minmax(6rem,9rem)}}.k-text-input{padding:var(--input-padding);border-radius:var(--input-rounded)}.k-text-input:focus{outline:0}.k-text-input[data-font=monospace]{font-family:var(--font-mono)}.k-models-field[data-disabled=true] .k-item *{pointer-events:all!important}.k-headline-field{padding-top:1.5rem;position:relative}.k-fieldset>.k-grid .k-column:first-child .k-headline-field{padding-top:0}.k-headline-field h2.k-headline{font-weight:var(--font-normal)}.k-headline-field footer{margin-top:var(--spacing-2)}.k-info-field .k-headline{padding-bottom:.75rem;line-height:1.25rem}.k-layout-field>footer{margin-top:var(--spacing-3)}.k-line-field{border:0;width:auto;height:3rem;position:relative}.k-line-field:after{content:"";top:50%;background:var(--color-border);height:1px;margin-top:-1px;position:absolute;inset-inline:0}.k-link-input-header{height:var(--input-height);grid-area:header;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.25rem;display:grid}.k-link-input-toggle.k-button{--button-height:var(--height-sm);--button-rounded:var(--rounded-sm);--button-color-back:var(--color-gray-200);margin-inline-start:.25rem}.k-link-input-model{--tag-height:var(--height-sm);--tag-color-back:var(--color-gray-200);--tag-color-text:var(--color-black);--tag-color-toggle:var(--tag-color-text);--tag-color-toggle-border:var(--color-gray-300);--tag-color-focus-back:var(--tag-color-back);--tag-color-focus-text:var(--tag-color-text);--tag-rounded:var(--rounded-sm);justify-content:space-between;margin-inline-end:var(--spacing-1);display:flex;overflow:hidden}.k-link-input-model-placeholder.k-button{--button-align:flex-start;--button-color-text:var(--color-gray-600);--button-height:var(--height-sm);--button-padding:var(--spacing-2);white-space:nowrap;flex-grow:1;align-items:center;overflow:hidden}.k-link-input-model-toggle{--button-height:var(--height-sm);--button-width:var(--height-sm)}.k-link-input-body{border-top:1px solid var(--color-gray-300);background:var(--color-gray-100);--tree-color-back:var(--color-gray-100);--tree-color-hover-back:var(--color-gray-200);display:grid;overflow:hidden}.k-link-input-body[data-type=page] .k-page-browser{padding:var(--spacing-2);padding-bottom:calc(var(--spacing-2) - 1px);width:100%;overflow:auto;container-type:inline-size}.k-writer{gap:var(--spacing-1);grid-template-areas:"content";width:100%;display:grid;position:relative}.k-writer .ProseMirror{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:pre-wrap;font-variant-ligatures:none;padding:var(--input-padding-multiline);grid-area:content}.k-writer .ProseMirror:focus{outline:0}.k-writer .ProseMirror *{caret-color:currentColor}.k-writer .ProseMirror hr.ProseMirror-selectednode{outline:var(--outline)}.k-writer[data-placeholder][data-empty=true]:before{content:attr(data-placeholder);color:var(--input-color-placeholder);pointer-events:none;white-space:pre-wrap;word-wrap:break-word;line-height:var(--text-line-height);padding:var(--input-padding-multiline);grid-area:content}.k-list-input.k-writer[data-placeholder][data-empty=true]:before{padding-inline-start:2.5em}.k-list-field .k-list-input .ProseMirror,.k-list-field .k-list-input:before{padding:.475rem .5rem .475rem .75rem}:root{--tags-gap:.375rem}.k-tags{gap:var(--tags-gap);flex-wrap:wrap;align-items:center;display:inline-flex}.k-tags .k-sortable-ghost{outline:var(--outline)}.k-tags[data-layout=list],.k-tags[data-layout=list] .k-tag{width:100%}.k-tags-toggle.k-button{--button-rounded:var(--rounded-sm);--button-color-icon:var(--color-gray-600);opacity:0;transition:opacity .3s}.k-tags:is(:hover,:focus-within) .k-tags-toggle{opacity:1}.k-tags .k-tags-toggle:is(:focus,:hover){--button-color-icon:var(--color-text)}.k-tags-input{padding:var(--tags-gap)}.k-number-input{padding:var(--input-padding);border-radius:var(--input-rounded)}.k-number-input:focus{outline:0}.k-table.k-object-field-table{table-layout:auto}.k-table.k-object-field-table tbody td{max-width:0}.k-range-input{--range-track-height:1px;--range-track-back:var(--color-gray-300);--range-tooltip-back:var(--color-black);border-radius:var(--range-track-height);align-items:center;display:flex}.k-range-input input[type=range]:focus{outline:0}.k-range-input-tooltip{color:var(--color-white);font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-align:center;border-radius:var(--rounded-sm);background:var(--range-tooltip-back);white-space:nowrap;align-items:center;max-width:20%;margin-inline-start:1rem;padding:0 .25rem;line-height:1;display:flex;position:relative}.k-range-input-tooltip:after{top:50%;border-block:3px solid #0000;border-inline-end:3px solid var(--range-tooltip-back);content:"";width:0;height:0;position:absolute;inset-inline-start:-3px;transform:translateY(-50%)}.k-range-input-tooltip>*{padding:var(--spacing-1)}.k-range-input[data-disabled=true]{--range-tooltip-back:var(--color-gray-600)}.k-input[data-type=range] .k-range-input{padding-inline:var(--input-padding)}.k-select-input{padding:var(--input-padding);border-radius:var(--input-rounded);display:block;position:relative;overflow:hidden}.k-select-input[data-empty=true]{color:var(--input-color-placeholder)}.k-select-input-native{opacity:0;z-index:1;position:absolute;inset:0}.k-select-input-native[disabled]{cursor:default}.k-input[data-type=select]{position:relative}.k-input[data-type=select] .k-input-icon{position:absolute;inset-block:0;inset-inline-end:0}.k-structure-field:not([data-disabled=true]) td.k-table-column{cursor:pointer}.k-structure-field .k-table+footer{margin-top:var(--spacing-3)}.k-field-counter{display:none}.k-text-field:focus-within .k-field-counter{display:block}.k-toolbar.k-textarea-toolbar{border-bottom:1px solid var(--toolbar-border);border-end-end-radius:0;border-end-start-radius:0}.k-toolbar.k-textarea-toolbar>.k-button:first-child{border-end-start-radius:0}.k-toolbar.k-textarea-toolbar>.k-button:last-child{border-end-end-radius:0}.k-textarea-input[data-size=small]{--textarea-size:7.5rem}.k-textarea-input[data-size=medium]{--textarea-size:15rem}.k-textarea-input[data-size=large]{--textarea-size:30rem}.k-textarea-input[data-size=huge]{--textarea-size:45rem}.k-textarea-input-wrapper{display:block;position:relative}.k-textarea-input-native{resize:none;min-height:var(--textarea-size)}.k-textarea-input-native:focus{outline:0}.k-textarea-input-native[data-font=monospace]{font-family:var(--font-mono)}.k-input[data-type=textarea] .k-input-element{min-width:0}.k-input[data-type=textarea] .k-textarea-input-native{padding:var(--input-padding-multiline)}.k-input[data-type=toggle]{--input-color-border:transparent;--input-shadow:var(--shadow)}.k-input[data-type=toggle] .k-input-before{padding-inline-end:calc(var(--input-padding)/2)}.k-input[data-type=toggle] .k-toggle-input{padding-inline-start:var(--input-padding)}.k-input[data-type=toggle][data-disabled]{box-shadow:none}.k-input[data-type=toggles]{display:inline-flex}.k-input[data-type=toggles].grow{display:flex}.k-input[data-type=toggles]:has(.k-empty){outline:0;display:flex}.k-toggles-input{grid-template-columns:repeat(var(--options),minmax(0,1fr));border-radius:var(--rounded);background:var(--color-border);gap:1px;line-height:1;display:grid;overflow:hidden}.k-toggles-input li{height:var(--field-input-height);background:var(--color-white)}.k-toggles-input label{background:var(--color-white);cursor:pointer;font-size:var(--text-sm);padding:0 var(--spacing-3);justify-content:center;align-items:center;height:100%;line-height:1.25;display:flex}.k-toggles-input li[data-disabled=true] label{color:var(--color-text-dimmed);background:var(--color-light)}.k-toggles-input .k-icon+.k-toggles-text{margin-inline-start:var(--spacing-2)}.k-toggles-input input:focus:not(:checked)+label{background:var(--color-blue-200)}.k-toggles-input input:checked+label{background:var(--color-black);color:var(--color-white)}.k-alpha-input{--range-track-back:linear-gradient(to right,transparent,currentColor);--range-track-height:var(--range-thumb-size);color:#000;background:var(--color-white)var(--pattern-light)}.k-calendar-input{--button-height:var(--height-sm);--button-width:var(--button-height);--button-padding:0;padding:var(--spacing-2);width:min-content}.k-calendar-table{table-layout:fixed;min-width:15rem}.k-calendar-input .k-button{justify-content:center}.k-calendar-input>nav{direction:ltr;margin-bottom:var(--spacing-2);align-items:center;display:flex}.k-calendar-selects{flex-grow:1;justify-content:center;align-items:center;display:flex}[dir=ltr] .k-calendar-selects{direction:ltr}[dir=rtl] .k-calendar-selects{direction:rtl}.k-calendar-selects .k-select-input{text-align:center;height:var(--button-height);border-radius:var(--input-rounded);align-items:center;padding:0 .5rem;display:flex}.k-calendar-selects .k-select-input:focus-within{outline:var(--outline)}.k-calendar-input th{color:var(--color-gray-500);font-size:var(--text-xs);text-align:center;padding-block:.5rem}.k-calendar-day{padding:2px}.k-calendar-day[aria-current=date] .k-button{text-decoration:underline}.k-calendar-day[aria-selected=date] .k-button,.k-calendar-day[aria-selected=date] .k-button:focus{--button-color-text:var(--color-text);--button-color-back:var(--color-blue-500)}.k-calendar-day[aria-selected=date] .k-button:focus-visible{outline-offset:2px}.k-calendar-today{padding-top:var(--spacing-2);text-align:center}.k-calendar-today .k-button{--button-width:auto;--button-padding:var(--spacing-3);font-size:var(--text-xs);text-decoration:underline}.k-choice-input{gap:var(--spacing-3);min-width:0;display:flex}.k-choice-input input{top:2px}.k-choice-input-label{color:var(--choice-color-text);flex-direction:column;min-width:0;line-height:1.25rem;display:flex}.k-choice-input-label>*{text-overflow:ellipsis;display:block;overflow:hidden}.k-choice-input-label-info{color:var(--choice-color-info)}.k-choice-input[aria-disabled]{cursor:not-allowed}:where(.k-checkboxes-field,.k-radio-field) .k-choice-input{background:var(--input-color-back);min-height:var(--input-height);padding-block:var(--spacing-2);padding-inline:var(--spacing-3);border-radius:var(--input-rounded);box-shadow:var(--shadow)}.k-coloroptions-input{--color-preview-size:var(--input-height)}.k-coloroptions-input ul{grid-template-columns:repeat(auto-fill,var(--color-preview-size));gap:var(--spacing-2);display:grid}.k-coloroptions-input input:focus+.k-color-frame{outline:var(--outline)}.k-coloroptions-input[disabled] label{opacity:var(--opacity-disabled);cursor:not-allowed}.k-coloroptions-input input:checked+.k-color-frame{outline-offset:2px;outline:2px solid}.k-colorpicker-input{--h:0;--s:0%;--l:0%;--a:1;--range-thumb-size:.75rem;--range-track-height:.75rem;gap:var(--spacing-3);flex-direction:column;width:max-content;display:flex}.k-colorpicker-input .k-coords-input{border-radius:var(--rounded-sm);aspect-ratio:1;background:linear-gradient(to bottom,transparent,#000),linear-gradient(to right,#fff,hsl(var(--h),100%,50%))}.k-colorpicker-input .k-alpha-input{color:hsl(var(--h),var(--s),var(--l))}.k-colorpicker-input .k-coloroptions-input ul{grid-template-columns:repeat(6,1fr)}.k-coords-input{position:relative;display:block!important}.k-coords-input img{width:100%}.k-coords-input-thumb{aspect-ratio:1;width:var(--range-thumb-size);background:var(--range-thumb-color);border-radius:var(--range-thumb-size);box-shadow:var(--range-thumb-shadow);cursor:move;position:absolute;transform:translate(-50%,-50%)}.k-coords-input[data-empty] .k-coords-input-thumb{opacity:0}.k-coords-input-thumb:active{cursor:grabbing}.k-coords-input:focus-within{outline:var(--outline)}.k-coords-input[aria-disabled]{pointer-events:none;opacity:var(--opacity-disabled)}.k-coords-input .k-coords-input-thumb:focus{outline:var(--outline)}.k-hue-input{--range-track-back:linear-gradient(to right,red 0%,#ff0 16.67%,#0f0 33.33%,#0ff 50%,#00f 66.67%,#f0a 83.33%,red 100%)no-repeat;--range-track-height:var(--range-thumb-size)}.k-multiselect-input{padding:var(--tags-gap)}.k-timeoptions-input{--button-height:var(--height-sm);gap:var(--spacing-3);grid-template-columns:1fr 1fr;display:grid}.k-timeoptions-input h3{padding-inline:var(--button-padding);height:var(--button-height);margin-bottom:var(--spacing-1);align-items:center;display:flex}.k-timeoptions-input hr{margin:var(--spacing-2)var(--spacing-3)}.k-timeoptions-input .k-button[aria-selected=time]{--button-color-text:var(--color-text);--button-color-back:var(--color-blue-500)}.k-layout{--layout-border-color:var(--color-gray-300);--layout-toolbar-width:2rem;box-shadow:var(--shadow);background:#fff;padding-inline-end:var(--layout-toolbar-width);position:relative}[data-disabled=true] .k-layout{padding-inline-end:0}.k-layout:not(:last-of-type){margin-bottom:1px}.k-layout:focus{outline:0}.k-layout-toolbar{width:var(--layout-toolbar-width);padding-bottom:var(--spacing-2);font-size:var(--text-sm);background:var(--color-gray-100);border-inline-start:1px solid var(--color-light);color:var(--color-gray-500);flex-direction:column;justify-content:space-between;align-items:center;display:flex;position:absolute;inset-block:0;inset-inline-end:0}.k-layout-toolbar:hover{color:var(--color-black)}.k-layout-toolbar-button{width:var(--layout-toolbar-width);height:var(--layout-toolbar-width)}.k-layout-columns.k-grid{grid-gap:1px;background:var(--layout-border-color);background:var(--color-gray-300)}.k-layout:not(:first-child) .k-layout-columns.k-grid{border-top:0}.k-layout-column{background:var(--color-white);flex-direction:column;height:100%;min-height:6rem;display:flex;position:relative}.k-layout-column:focus{outline:0}.k-layout-column .k-blocks{box-shadow:none;background:0 0;background:var(--color-white);height:100%;min-height:4rem;padding:0}.k-layout-column .k-blocks[data-empty=true]{min-height:6rem}.k-layout-column .k-blocks-list{flex-direction:column;height:100%;display:flex}.k-layout-column .k-blocks .k-block-container:last-of-type{flex-grow:1}.k-layout-column .k-blocks-empty.k-box{--box-color-back:transparent;opacity:0;border:0;justify-content:center;transition:opacity .3s;position:absolute;inset:0}.k-layout-column .k-blocks-empty:hover{opacity:1}.k-layouts .k-sortable-ghost{outline:2px solid var(--color-focus);cursor:grabbing;z-index:1;position:relative;box-shadow:0 5px 10px #11111140}.k-layout-selector h3{margin-top:-.5rem;margin-bottom:var(--spacing-3)}.k-layout-selector-options{gap:var(--spacing-6);grid-template-columns:repeat(3,1fr);display:grid}@media screen and (width>=65em){.k-layout-selector-options{grid-template-columns:repeat(var(--columns),1fr)}}.k-layout-selector-option{--color-border:hsla(var(--color-gray-hs),0%,6%);--color-back:var(--color-white);border-radius:var(--rounded)}.k-layout-selector-option:focus-visible{outline:var(--outline);outline-offset:-1px}.k-layout-selector-option .k-grid{border:1px solid var(--color-border);grid-template-columns:repeat(var(--columns),1fr);cursor:pointer;background:var(--color-border);border-radius:var(--rounded);box-shadow:var(--shadow);gap:1px;height:5rem;overflow:hidden}.k-layout-selector-option .k-column{grid-column:span var(--span);background:var(--color-back);height:100%}.k-layout-selector-option:hover{--color-border:var(--color-gray-500);--color-back:var(--color-gray-100)}.k-layout-selector-option[aria-current]{--color-border:var(--color-focus);--color-back:var(--color-blue-300)}.k-bubbles{gap:.25rem;display:flex}.k-bubbles-field-preview{--bubble-back:var(--color-light);--bubble-text:var(--color-black);padding:.375rem var(--table-cell-padding);overflow:hidden}.k-bubbles-field-preview .k-bubbles{gap:.375rem}.k-color-field-preview{--color-frame-rounded:var(--tag-rounded);--color-frame-size:var(--tag-height);padding:.375rem var(--table-cell-padding);align-items:center;gap:var(--spacing-2);display:flex}.k-text-field-preview{text-overflow:ellipsis;white-space:nowrap;padding:.325rem .75rem;overflow-x:hidden}.k-url-field-preview{padding-inline:var(--table-cell-padding)}.k-url-field-preview[data-link]{color:var(--link-color)}.k-url-field-preview a{height:var(--height-xs);padding-inline:var(--spacing-1);margin-inline:calc(var(--spacing-1)*-1);border-radius:var(--rounded);align-items:center;min-width:0;max-width:100%;display:inline-flex}.k-url-field-preview a>*{white-space:nowrap;text-overflow:ellipsis;text-underline-offset:var(--link-underline-offset);text-decoration:underline;overflow:hidden}.k-url-field-preview a:hover{color:var(--color-black)}.k-flag-field-preview{--button-height:var(--table-row-height);--button-width:100%;outline-offset:-2px}.k-html-field-preview{padding:.375rem var(--table-cell-padding);text-overflow:ellipsis;overflow:hidden}.k-image-field-preview{height:100%}.k-toggle-field-preview{padding-inline:var(--table-cell-padding)}:root{--toolbar-size:var(--height);--toolbar-text:var(--color-black);--toolbar-back:var(--color-white);--toolbar-hover:#efefef80;--toolbar-border:#0000001a;--toolbar-current:var(--color-focus)}.k-toolbar{height:var(--toolbar-size);color:var(--toolbar-text);background:var(--toolbar-back);border-radius:var(--rounded);align-items:center;max-width:100%;display:flex;overflow:auto hidden}.k-toolbar[data-theme=dark]{--toolbar-text:var(--color-white);--toolbar-back:var(--color-black);--toolbar-hover:#fff3;--toolbar-border:var(--color-gray-800)}.k-toolbar>hr{height:var(--toolbar-size);border-left:1px solid var(--toolbar-border);width:1px}.k-toolbar-button.k-button{--button-width:var(--toolbar-size);--button-height:var(--toolbar-size);--button-rounded:0;outline-offset:-2px}.k-toolbar-button:hover{--button-color-back:var(--toolbar-hover)}.k-toolbar .k-button[aria-current]{--button-color-text:var(--toolbar-current)}.k-toolbar>.k-button:first-child{border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded)}.k-toolbar>.k-button:last-child{border-start-end-radius:var(--rounded);border-end-end-radius:var(--rounded)}:where(.k-textarea-input,.k-writer-input):not(:focus-within){--toolbar-text:var(--color-gray-400);--toolbar-border:var(--color-background)}:where(.k-textarea-input,.k-writer-input):focus-within .k-toolbar:not([data-inline=true]){top:var(--header-sticky-offset);z-index:1;position:sticky;inset-inline:0;box-shadow:0 2px 5px #0000000d}.k-writer:not([data-toolbar-inline=true]):not([data-disabled=true]){grid-template-areas:"topbar""content";grid-template-rows:var(--toolbar-size)1fr;gap:0}.k-writer:not(:focus-within){--toolbar-current:currentColor}.k-writer-toolbar[data-inline=true]{z-index:calc(var(--z-dropdown) + 1);box-shadow:var(--shadow-toolbar);max-width:none;position:absolute}.k-writer-toolbar:not([data-inline=true]){border-bottom:1px solid var(--toolbar-border);border-end-end-radius:0;border-end-start-radius:0}.k-writer-toolbar:not([data-inline=true])>.k-button:first-child{border-end-start-radius:0}.k-writer-toolbar:not([data-inline=true])>.k-button:last-child{border-end-end-radius:0}.k-aspect-ratio{padding-bottom:100%;display:block;position:relative;overflow:hidden}.k-aspect-ratio>*{object-fit:contain;width:100%;height:100%;inset:0;position:absolute!important}.k-aspect-ratio[data-cover=true]>*{object-fit:cover}:root{--bar-height:var(--height-xs)}.k-bar{align-items:center;gap:var(--spacing-3);height:var(--bar-height);justify-content:space-between;display:flex}.k-bar:where([data-align=center]){justify-content:center}.k-bar:where([data-align=end]):has(:first-child:last-child){justify-content:end}.k-bar-slot{flex-grow:1}.k-bar-slot[data-position=center]{text-align:center}.k-bar-slot[data-position=right]{text-align:end}:root{--box-height:var(--field-input-height);--box-padding-inline:var(--spacing-2);--box-font-size:var(--text-sm);--box-color-back:none;--box-color-text:currentColor}.k-box{--icon-color:var(--box-color-icon);--text-font-size:var(--box-font-size);align-items:center;gap:var(--spacing-2);color:var(--box-color-text);background:var(--box-color-back);word-wrap:break-word;width:100%;display:flex}.k-box[data-theme]{--box-color-back:var(--theme-color-back);--box-color-text:var(--theme-color-text);--box-color-icon:var(--theme-color-700);min-height:var(--box-height);padding:.375rem var(--box-padding-inline);border-radius:var(--rounded);line-height:1.25}.k-box[data-theme=text],.k-box[data-theme=white]{box-shadow:var(--shadow)}.k-box[data-theme=text]{padding:var(--spacing-6)}.k-box[data-theme=none]{padding:0}.k-box[data-align=center]{justify-content:center}:root{--bubble-size:1.525rem;--bubble-back:var(--color-light);--bubble-text:var(--color-black)}.k-bubble{height:var(--bubble-size);white-space:nowrap;background:var(--bubble-back);color:var(--bubble-text);border-radius:var(--rounded);width:min-content;line-height:1.5;overflow:hidden}.k-bubble .k-frame{width:var(--bubble-size);height:var(--bubble-size)}.k-bubble[data-has-text=true]{gap:var(--spacing-2);font-size:var(--text-xs);align-items:center;padding-inline-end:.5rem;display:flex}.k-column{min-width:0}.k-column[data-sticky=true]{align-self:stretch}.k-column[data-sticky=true]>div{top:calc(var(--header-sticky-offset) + 2vh);z-index:2;position:sticky}.k-column[data-disabled=true]{cursor:not-allowed;opacity:.4}.k-column[data-disabled=true] *{pointer-events:none}.k-column[data-disabled=true] .k-text[data-theme=help] *{pointer-events:initial}.k-frame{--fit:contain;--ratio:1/1;aspect-ratio:var(--ratio);background:var(--back);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.k-frame:where([data-theme]){--back:var(--theme-color-back);color:var(--theme-color-text)}.k-frame :where(img,video,iframe,button){object-fit:var(--fit);width:100%;height:100%;position:absolute;inset:0}.k-frame>*{text-overflow:ellipsis;min-width:0;min-height:0;overflow:hidden}:root{--color-frame-rounded:var(--rounded);--color-frame-size:100%;--color-frame-darkness:0%}.k-color-frame.k-frame{background:var(--pattern-light);width:var(--color-frame-size);color:#0000;border-radius:var(--color-frame-rounded);background-clip:padding-box;overflow:hidden}.k-color-frame:after{border-radius:var(--color-frame-rounded);box-shadow:0 0 0 1px inset hsla(0,0%,var(--color-frame-darkness),.175);content:"";background-color:currentColor;position:absolute;inset:0}.k-dropzone{position:relative}.k-dropzone:after{content:"";pointer-events:none;z-index:1;border-radius:var(--rounded);display:none;position:absolute;inset:0}.k-dropzone[data-over=true]:after{background:hsla(var(--color-blue-hs),var(--color-blue-l-300),.6);outline:var(--outline);display:block}.k-grid{--columns:12;--grid-inline-gap:0;--grid-block-gap:0;grid-column-gap:var(--grid-inline-gap);grid-row-gap:var(--grid-block-gap);align-items:start;display:grid}.k-grid>*{--width:calc(1/var(--columns));--span:calc(var(--columns)*var(--width))}@container (width>=30rem){.k-grid{grid-template-columns:repeat(var(--columns),1fr)}.k-grid>*{grid-column:span var(--span)}.k-grid[data-gutter=small]{--grid-inline-gap:1rem;--grid-block-gap:1rem}.k-grid:where([data-gutter=medium],[data-gutter=large],[data-gutter=huge]){--grid-inline-gap:1.5rem;--grid-block-gap:1.5rem}}@container (width>=65em){.k-grid[data-gutter=large]{--grid-inline-gap:3rem}.k-grid[data-gutter=huge]{--grid-inline-gap:4.5rem}}@container (width>=90em){.k-grid[data-gutter=large]{--grid-inline-gap:4.5rem}.k-grid[data-gutter=huge]{--grid-inline-gap:6rem}}@container (width>=120em){.k-grid[data-gutter=large]{--grid-inline-gap:6rem}.k-grid[data-gutter=huge]{--grid-inline-gap:7.5rem}}:root{--columns-inline-gap:clamp(.75rem,6cqw,6rem);--columns-block-gap:clamp(var(--spacing-8),6vh,6rem)}.k-grid[data-variant=columns]{--grid-inline-gap:var(--columns-inline-gap);--grid-block-gap:var(--columns-block-gap)}.k-grid:where([data-variant=columns],[data-variant=fields])>*{container:column/inline-size}.k-grid[data-variant=fields]{gap:var(--spacing-8)}.k-grid[data-variant=choices]{align-items:stretch;gap:2px}:root{--header-color-back:var(--color-light);--header-padding-block:var(--spacing-4);--header-sticky-offset:calc(var(--scroll-top,0rem) + 4rem)}.k-header{border-bottom:1px solid var(--color-border);background:var(--header-color-back);padding-top:var(--header-padding-block);margin-bottom:var(--spacing-12);box-shadow:2px 0 0 0 var(--header-color-back),-2px 0 0 0 var(--header-color-back);flex-wrap:wrap;justify-content:space-between;align-items:baseline;display:flex;position:relative}.k-header-title{font-size:var(--text-h1);font-weight:var(--font-h1);line-height:var(--leading-h1);margin-bottom:var(--header-padding-block);min-width:0}.k-header-title-button{text-align:start;gap:var(--spacing-2);outline:0;align-items:baseline;max-width:100%;display:inline-flex}.k-header-title-text{text-overflow:ellipsis;overflow-x:clip}.k-header-title-icon{--icon-color:var(--color-text-dimmed);border-radius:var(--rounded);height:var(--height-sm);width:var(--height-sm);opacity:0;flex-shrink:0;place-items:center;transition:opacity .2s;display:grid}.k-header-title-button:is(:hover,:focus) .k-header-title-icon{opacity:1}.k-header-title-button:focus .k-header-title-icon{outline:var(--outline)}.k-header-buttons{gap:var(--spacing-2);margin-bottom:var(--header-padding-block);flex-shrink:0;display:flex}.k-header[data-has-buttons=true]{top:var(--scroll-top,0);z-index:var(--z-toolbar);position:sticky}:root{--icon-size:18px;--icon-color:currentColor}.k-icon{width:var(--icon-size);height:var(--icon-size);color:var(--icon-color);flex-shrink:0}.k-icon[data-type=loader]{animation:1.5s linear infinite Spin}@media only screen and (-webkit-device-pixel-ratio>=2),not all,not all,not all,only screen and (resolution>=192dpi),only screen and (resolution>=2x){.k-icon-frame [data-type=emoji]{font-size:1.25em}}.k-image[data-back=pattern]{--back:var(--color-black)var(--pattern)}.k-image[data-back=black]{--back:var(--color-black)}.k-image[data-back=white]{--back:var(--color-white);color:var(--color-gray-900)}:root{--overlay-color-back:var(--color-backdrop)}.k-overlay[open]{overscroll-behavior:contain;z-index:var(--z-dialog);background:0 0;width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden;transform:translate(0)}.k-overlay[open]::backdrop{background:0 0}.k-overlay[open]>.k-portal{background:var(--overlay-color-back);position:fixed;inset:0;overflow:auto}.k-overlay[open][data-type=dialog]>.k-portal{display:inline-flex}.k-overlay[open][data-type=dialog]>.k-portal>*{margin:auto}.k-overlay[open][data-type=drawer]>.k-portal{--overlay-color-back:#0003;justify-content:flex-end;align-items:stretch;display:flex}html[data-overlay]{overflow:hidden}html[data-overlay] body{overflow:scroll}:root{--stat-value-text-size:var(--text-2xl);--stat-info-text-color:var(--color-text-dimmed)}.k-stat{padding:var(--spacing-3)var(--spacing-6);background:var(--color-white);border-radius:var(--rounded);box-shadow:var(--shadow);line-height:var(--leading-normal);flex-direction:column;display:flex}.k-stat.k-link:hover{cursor:pointer;background:var(--color-gray-100)}.k-stat :where(dt,dd){display:block}.k-stat-value{font-size:var(--stat-value-text-size);margin-bottom:var(--spacing-1);order:1}.k-stat-label{font-size:var(--text-xs);order:2}.k-stat-info{font-size:var(--text-xs);color:var(--stat-info-text-color);order:3}.k-stat[data-theme] .k-stat-info{--stat-info-text-color:var(--theme-color-700)}.k-stats{grid-gap:var(--spacing-2px);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));grid-auto-rows:1fr;display:grid}.k-stats[data-size=small]{--stat-value-text-size:var(--text-md)}.k-stats[data-size=medium]{--stat-value-text-size:var(--text-xl)}.k-stats[data-size=large]{--stat-value-text-size:var(--text-2xl)}.k-stats[data-size=huge]{--stat-value-text-size:var(--text-3xl)}:root{--table-cell-padding:var(--spacing-3);--table-color-back:var(--color-white);--table-color-border:var(--color-background);--table-color-hover:var(--color-gray-100);--table-color-th-back:var(--color-gray-100);--table-color-th-text:var(--color-text-dimmed);--table-row-height:var(--input-height)}.k-table{background:var(--table-color-back);box-shadow:var(--shadow);border-radius:var(--rounded);position:relative}.k-table table{table-layout:fixed}.k-table th,.k-table td{padding-inline:var(--table-cell-padding);height:var(--table-row-height);text-overflow:ellipsis;border-inline-end:1px solid var(--table-color-border);width:100%;line-height:1.25;overflow:hidden}.k-table tr>:last-child{border-inline-end:0}.k-table th,.k-table tr:not(:last-child) td{border-block-end:1px solid var(--table-color-border)}.k-table :where(td,th)[data-align]{text-align:var(--align)}.k-table th{padding-inline:var(--table-cell-padding);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--table-color-th-text);background:var(--table-color-th-back)}.k-table th[data-has-button]{padding:0}.k-table th button{padding-inline:var(--table-cell-padding);border-radius:var(--rounded);text-align:start;width:100%;height:100%}.k-table th button:focus-visible{outline-offset:-2px}.k-table thead th:first-child{border-start-start-radius:var(--rounded)}.k-table thead th:last-child{border-start-end-radius:var(--rounded)}.k-table thead th{top:var(--header-sticky-offset);z-index:1;position:sticky;inset-inline:0}.k-table tbody tr:hover td{background:var(--table-color-hover)}.k-table tbody th{white-space:nowrap;border-radius:0;width:auto;overflow:visible}.k-table tbody tr:first-child th{border-start-start-radius:var(--rounded)}.k-table tbody tr:last-child th{border-block-end:0;border-end-start-radius:var(--rounded)}.k-table-row-ghost{background:var(--color-white);outline:var(--outline);border-radius:var(--rounded);cursor:grabbing;margin-bottom:2px}.k-table-row-fallback{opacity:0!important}.k-table .k-table-index-column{width:var(--table-row-height);text-align:center}.k-table .k-table-index{font-size:var(--text-xs);color:var(--color-text-dimmed);line-height:1.1em}.k-table .k-table-index-column .k-sort-handle{--button-width:100%;display:none}.k-table tr:hover .k-table-index-column[data-sortable=true] .k-table-index{display:none}.k-table tr:hover .k-table-index-column[data-sortable=true] .k-sort-handle{display:flex}.k-table .k-table-options-column{width:var(--table-row-height);text-align:center;padding:0}.k-table .k-table-options-column .k-options-dropdown-toggle{--button-width:100%;--button-height:100%;outline-offset:-2px}.k-table-empty{color:var(--color-text-dimmed);font-size:var(--text-sm)}.k-table[aria-disabled=true]{--table-color-back:transparent;--table-color-border:var(--color-border);--table-color-hover:transparent;--table-color-th-back:transparent;border:1px solid var(--table-color-border);box-shadow:none}.k-table[aria-disabled=true] thead th{position:static}@container (width<=40rem){.k-table{overflow-x:scroll}.k-table thead th{position:static}}.k-table .k-table-cell{padding:0}.k-tabs{--button-height:var(--height-md);--button-padding:var(--spacing-2);gap:var(--spacing-1);margin-bottom:var(--spacing-12);margin-inline:calc(var(--button-padding)*-1);display:flex}.k-tab-button.k-button{margin-block:2px;overflow-x:visible}.k-tab-button[aria-current]:after{content:"";inset-inline:var(--button-padding);background:currentColor;height:2px;position:absolute;bottom:-2px}.k-tabs-badge{font-variant-numeric:tabular-nums;top:2px;padding:0 var(--spacing-1);text-align:center;box-shadow:var(--shadow-md);background:var(--theme-color-back);border:1px solid var(--theme-color-500);color:var(--theme-color-text);z-index:1;border-radius:1rem;font-size:10px;line-height:1.5;position:absolute;inset-inline-end:var(--button-padding);transform:translate(75%)}.k-view{padding-inline:1.5rem}@container (width>=30rem){.k-view{padding-inline:3rem}}.k-view[data-align=center]{justify-content:center;align-items:center;height:100vh;padding:0 3rem;display:flex;overflow:auto}.k-view[data-align=center]>*{flex-basis:22.5rem}.k-fatal[open]{background:var(--overlay-color-back);padding:var(--spacing-6)}.k-fatal-box{box-shadow:var(--dialog-shadow);border-radius:var(--dialog-rounded);flex-direction:column;width:100%;height:calc(100dvh - 3rem);line-height:1;display:flex;position:relative;overflow:hidden}.k-fatal-iframe{background:var(--color-white);padding:var(--spacing-3);border:0;flex-grow:1;width:100%}.k-icons{width:0;height:0;position:absolute}.k-loader{z-index:1}.k-loader-icon{animation:.9s linear infinite Spin}.k-notification{background:var(--color-gray-900);color:var(--color-white);flex-shrink:0;align-items:center;width:100%;padding:.75rem 1.5rem;line-height:1.25rem;display:flex}.k-notification[data-theme]{background:var(--theme-color-back);color:var(--color-black)}.k-notification p{word-wrap:break-word;flex-grow:1;overflow:hidden}.k-notification .k-button{margin-inline-start:1rem;display:flex}.k-offline-warning{z-index:var(--z-offline);background:var(--color-backdrop);justify-content:center;align-items:center;line-height:1;display:flex;position:fixed;inset:0}.k-offline-warning p{background:var(--color-white);box-shadow:var(--shadow);border-radius:var(--rounded);align-items:center;gap:.5rem;padding:.75rem;display:flex}.k-offline-warning p .k-icon{color:var(--color-red-400)}:root{--progress-height:var(--spacing-2);--progress-color-back:var(--color-gray-300);--progress-color-value:var(--color-focus)}progress{height:var(--progress-height);border-radius:var(--progress-height);border:0;width:100%;display:block;overflow:hidden}progress::-webkit-progress-bar{background:var(--progress-color-back)}progress::-webkit-progress-value{background:var(--progress-color-value);border-radius:var(--progress-height)}progress::-moz-progress-bar{background:var(--progress-color-value)}progress:not([value])::-webkit-progress-bar{background:var(--progress-color-value)}progress:not([value])::-moz-progress-bar{background:var(--progress-color-value)}.k-sort-handle{cursor:grab;z-index:1}.k-sort-handle:active{cursor:grabbing}.k-breadcrumb{--breadcrumb-divider:"/";padding:2px;overflow-x:clip}.k-breadcrumb ol{align-items:center;gap:.125rem;display:none}.k-breadcrumb ol li{align-items:center;min-width:0;display:flex}.k-breadcrumb ol li:not(:last-child):after{content:var(--breadcrumb-divider);opacity:.175;flex-shrink:0}.k-breadcrumb ol li{min-width:0;transition:flex-shrink .1s}.k-breadcrumb .k-icon[data-type=loader]{opacity:.5}.k-breadcrumb ol li:is(:hover,:focus-within){flex-shrink:0}.k-button.k-breadcrumb-link{flex-shrink:1;justify-content:flex-start;min-width:0}.k-breadcrumb-dropdown{display:grid}.k-breadcrumb-dropdown .k-dropdown-content{width:15rem}@container (width>=40em){.k-breadcrumb ol{display:flex}.k-breadcrumb-dropdown{display:none}}.k-browser{font-size:var(--text-sm);container-type:inline-size}.k-browser-items{--browser-item-gap:1px;--browser-item-size:1fr;--browser-item-height:var(--height-sm);--browser-item-padding:.25rem;--browser-item-rounded:var(--rounded);column-gap:var(--browser-item-gap);row-gap:var(--browser-item-gap);grid-template-columns:repeat(auto-fill,minmax(var(--browser-item-size),1fr));display:grid}.k-browser-item{height:var(--browser-item-height);padding-inline:calc(var(--browser-item-padding) + 1px);border-radius:var(--browser-item-rounded);white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;gap:.5rem;display:flex;overflow:hidden}.k-browser-item-image{height:calc(var(--browser-item-height) - var(--browser-item-padding)*2);aspect-ratio:1;border-radius:var(--rounded-sm);box-shadow:var(--shadow);flex-shrink:0}.k-browser-item-image.k-icon-frame{box-shadow:none;background:var(--color-white)}.k-browser-item-image svg{transform:scale(.8)}.k-browser-item input{box-shadow:var(--shadow);opacity:0;width:0;position:absolute}.k-browser-item[aria-selected]{background:var(--color-blue-300)}:root{--button-align:center;--button-height:var(--height-md);--button-width:auto;--button-color-back:none;--button-color-text:currentColor;--button-color-icon:currentColor;--button-padding:var(--spacing-2);--button-rounded:var(--spacing-1);--button-text-display:block;--button-icon-display:block}.k-button{align-items:center;justify-content:var(--button-align);padding-inline:var(--button-padding);white-space:nowrap;border-radius:var(--button-rounded);background:var(--button-color-back);height:var(--button-height);width:var(--button-width);color:var(--button-color-text);font-variant-numeric:tabular-nums;text-align:var(--button-align);flex-shrink:0;gap:.5rem;line-height:1;display:inline-flex;position:relative;overflow-x:clip}.k-button-icon{--icon-color:var(--button-color-icon);display:var(--button-icon-display);flex-shrink:0}.k-button-text{text-overflow:ellipsis;display:var(--button-text-display);min-width:0;overflow-x:clip}.k-button:where([data-theme]){--button-color-icon:var(--theme-color-icon);--button-color-text:var(--theme-color-text)}.k-button:where([data-variant=dimmed]){--button-color-icon:var(--color-text);--button-color-dimmed-on:var(--color-text-dimmed);--button-color-dimmed-off:var(--color-text);--button-color-text:var(--button-color-dimmed-on)}.k-button:where([data-variant=dimmed]):not([aria-disabled]):is(:hover,[aria-current]){--button-color-text:var(--button-color-dimmed-off)}.k-button:where([data-theme][data-variant=dimmed]){--button-color-icon:var(--theme-color-icon);--button-color-dimmed-on:var(--theme-color-text-dimmed);--button-color-dimmed-off:var(--theme-color-text)}.k-button:where([data-variant=filled]){--button-color-back:var(--color-gray-300)}.k-button:where([data-variant=filled]):not([aria-disabled]):hover{filter:brightness(97%)}.k-button:where([data-theme][data-variant=filled]){--button-color-icon:var(--theme-color-700);--button-color-back:var(--theme-color-back);--button-color-text:var(--theme-color-text)}.k-button:not([data-has-text=true]){--button-padding:0;aspect-ratio:1}@container (width<=30rem){.k-button[data-responsive=true][data-has-icon=true]{--button-padding:0;aspect-ratio:1;--button-text-display:none}.k-button[data-responsive=text][data-has-text=true]{--button-icon-display:none}.k-button[data-responsive][data-has-icon=true] .k-button-arrow{display:none}}.k-button:not(button,a,summary,label,.k-link){pointer-events:none}.k-button:where([data-size=xs]){--button-height:var(--height-xs);--button-padding:.325rem}.k-button:where([data-size=sm]){--button-height:var(--height-sm);--button-padding:.5rem}.k-button:where([data-size=lg]){--button-height:var(--height-lg)}.k-button-arrow{--icon-size:10px;width:max-content;margin-inline-start:-.125rem}.k-button:where([aria-disabled]){cursor:not-allowed}.k-button:where([aria-disabled])>*{opacity:var(--opacity-disabled)}.k-button-group{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.k-button-group:where([data-layout=collapsed]){gap:0}.k-button-group[data-layout=collapsed]>.k-button[data-variant=filled]:not(:last-child){border-start-end-radius:0;border-end-end-radius:0}.k-button-group[data-layout=collapsed]>.k-button[data-variant=filled]:not(:first-child){border-left:1px solid var(--theme-color-500,var(--color-gray-400));border-start-start-radius:0;border-end-start-radius:0}.k-button-group[data-layout=collapsed]>.k-button[data-variant=filled]:focus-visible{z-index:1;border-radius:var(--button-rounded)}.k-file-browser{overflow:hidden;container-type:inline-size}.k-file-browser-layout{grid-template-columns:minmax(10rem,15rem) 1fr;display:grid}.k-file-browser-tree{padding:var(--spacing-2);border-right:1px solid var(--color-gray-300)}.k-file-browser-items{padding:var(--spacing-2);background:var(--color-gray-100)}.k-file-browser-back-button{display:none}@container (width<=30rem){.k-file-browser-layout{grid-template-columns:minmax(0,1fr);min-height:10rem}.k-file-browser-back-button{height:var(--height-sm);background:var(--color-gray-200);border-radius:var(--rounded);justify-content:flex-start;align-items:center;width:100%;margin-bottom:.5rem;padding-inline:.25rem;display:flex}.k-file-browser-tree{border-right:0}.k-file-browser[data-view=files] .k-file-browser-tree,.k-file-browser[data-view=tree] .k-file-browser-items{display:none}}:root{--tree-color-back:var(--color-gray-200);--tree-color-hover-back:var(--color-gray-300);--tree-color-selected-back:var(--color-blue-300);--tree-color-selected-text:var(--color-black);--tree-color-text:var(--color-gray-dimmed);--tree-level:0;--tree-indentation:.6rem}.k-tree-branch{align-items:center;margin-bottom:1px;padding-inline-start:calc(var(--tree-level)*var(--tree-indentation));display:flex}.k-tree-branch[data-has-subtree=true]{z-index:calc(100 - var(--tree-level));background:var(--tree-color-back);inset-block-start:calc(var(--tree-level)*1.5rem)}.k-tree-branch:hover,li[aria-current]>.k-tree-branch{--tree-color-text:var(--tree-color-selected-text);background:var(--tree-color-hover-back);border-radius:var(--rounded)}li[aria-current]>.k-tree-branch{background:var(--tree-color-selected-back)}.k-tree-toggle{--icon-size:12px;aspect-ratio:1;border-radius:var(--rounded-sm);flex-shrink:0;place-items:center;width:1rem;margin-inline-start:.25rem;padding:0;display:grid}.k-tree-toggle:hover{background:#00000013}.k-tree-toggle[disabled]{visibility:hidden}.k-tree-folder{height:var(--height-sm);border-radius:var(--rounded-sm);line-height:1.25;font-size:var(--text-sm);align-items:center;gap:.325rem;width:100%;min-width:3rem;padding-inline:.25rem;display:flex}@container (width<=15rem){.k-tree{--tree-indentation:.375rem}.k-tree-folder{padding-inline:.125rem}.k-tree-folder .k-icon{display:none}}.k-tree-folder>.k-frame{flex-shrink:0}.k-tree-folder-label{text-overflow:ellipsis;white-space:nowrap;color:currentColor;overflow:hidden}.k-tree-folder[disabled]{opacity:var(--opacity-disabled)}.k-pagination-details{--button-padding:var(--spacing-3);font-size:var(--text-xs)}.k-pagination-selector{--button-height:var(--height);--dropdown-padding:0;overflow:visible}.k-pagination-selector form{justify-content:space-between;align-items:center;display:flex}.k-pagination-selector label{padding-inline-start:var(--spacing-3);padding-inline-end:var(--spacing-2)}.k-pagination-selector select{--height:calc(var(--button-height) - .5rem);min-width:var(--height);height:var(--height);text-align:center;background:var(--color-gray-800);color:var(--color-white);border-radius:var(--rounded-sm);width:auto}.k-prev-next{direction:ltr;flex-shrink:0}:root{--tag-color-back:var(--color-black);--tag-color-text:var(--color-white);--tag-color-toggle:currentColor;--tag-color-disabled-back:var(--color-gray-600);--tag-color-disabled-text:var(--tag-color-text);--tag-height:var(--height-xs);--tag-rounded:var(--rounded-sm)}.k-tag{height:var(--tag-height);font-size:var(--text-sm);color:var(--tag-color-text);background-color:var(--tag-color-back);border-radius:var(--tag-rounded);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;line-height:1;display:flex;position:relative}.k-tag:not([aria-disabled]):focus{outline:var(--outline)}.k-tag-image{height:calc(var(--tag-height) - var(--spacing-2));margin-inline:var(--spacing-1);border-radius:var(--tag-rounded);overflow:hidden}.k-tag-text{padding-inline:var(--spacing-2);line-height:var(--leading-tight)}.k-tag[data-has-image=true] .k-tag-text{padding-inline-start:var(--spacing-1)}.k-tag[data-has-toggle=true] .k-tag-text{padding-inline-end:0}.k-tag-toggle{width:var(--tag-height);height:var(--tag-height);filter:brightness(70%)}.k-tag-toggle:hover{filter:brightness()}.k-tag:where([aria-disabled]){background-color:var(--tag-color-disabled-back);color:var(--tag-color-disabled-text);cursor:not-allowed}.k-button[data-disabled=true]{opacity:.5;pointer-events:none;cursor:default}.k-card-options>.k-button[data-disabled=true]{display:inline-flex}.k-section+.k-section{margin-top:var(--columns-block-gap)}.k-section-header{margin-bottom:var(--spacing-2)}.k-fields-section input[type=submit]{display:none}[data-locked=true] .k-fields-section{opacity:.2;pointer-events:none}.k-models-section[data-processing=true]{pointer-events:none}.k-models-section-search.k-input{--input-color-back:var(--color-gray-300);--input-color-border:transparent;margin-bottom:var(--spacing-3)}:root{--code-color-back:var(--color-black);--code-color-icon:var(--color-gray-500);--code-color-text:var(--color-gray-200,white);--code-font-family:var(--font-mono);--code-font-size:1em;--code-inline-color-back:var(--color-blue-300);--code-inline-color-border:var(--color-blue-400);--code-inline-color-text:var(--color-blue-900);--code-inline-font-size:.9em;--code-padding:var(--spacing-3)}code{font-family:var(--code-font-family);font-size:var(--code-font-size);font-weight:var(--font-normal)}.k-code,.k-text pre{padding:var(--code-padding);border-radius:var(--rounded,.5rem);background:var(--code-color-back);color:var(--code-color-text);white-space:nowrap;-moz-tab-size:2;tab-size:2;max-width:100%;line-height:1.5;display:block;position:relative;overflow:auto hidden}.k-code:not(code),.k-text pre{white-space:pre-wrap}.k-code:before{content:attr(data-language);font-size:calc(.75*var(--text-xs));background:var(--code-color-back);border-radius:var(--rounded,.5rem);padding:.5rem .5rem .25rem .25rem;position:absolute;inset-block-start:0;inset-inline-end:0}.k-text>code,.k-text :not(pre)>code{padding-inline:var(--spacing-1);font-size:var(--code-inline-font-size);color:var(--code-inline-color-text);background:var(--code-inline-color-back);border-radius:var(--rounded);outline:1px solid var(--code-inline-color-border);outline-offset:-1px;display:inline-flex}:root{--text-h1:2em;--text-h2:1.75em;--text-h3:1.5em;--text-h4:1.25em;--text-h5:1.125em;--text-h6:1em;--font-h1:var(--font-semi);--font-h2:var(--font-semi);--font-h3:var(--font-semi);--font-h4:var(--font-semi);--font-h5:var(--font-semi);--font-h6:var(--font-semi);--leading-h1:1.125;--leading-h2:1.125;--leading-h3:1.25;--leading-h4:1.375;--leading-h5:1.5;--leading-h6:1.5}.k-headline{line-height:1.5em;font-weight:var(--font-bold)}.h1,.k-text h1,.k-headline[data-size=huge]{color:var(--color-h1,var(--color-h));font-family:var(--font-family-h1);font-size:var(--text-h1);font-weight:var(--font-h1);line-height:var(--leading-h1)}.h2,.k-text h2,.k-headline[data-size=large]{color:var(--color-h2,var(--color-h));font-family:var(--font-family-h2);font-size:var(--text-h2);font-weight:var(--font-h2);line-height:var(--leading-h2)}.h3,.k-text h3{color:var(--color-h3,var(--color-h));font-family:var(--font-family-h3);font-size:var(--text-h3);font-weight:var(--font-h3);line-height:var(--leading-h3)}.h4,.k-text h4,.k-headline[data-size=small]{color:var(--color-h4,var(--color-h));font-family:var(--font-family-h4);font-size:var(--text-h4);font-weight:var(--font-h4);line-height:var(--leading-h4)}.h5,.k-text h5{color:var(--color-h5,var(--color-h));font-family:var(--font-family-h5);font-size:var(--text-h5);font-weight:var(--font-h5);line-height:var(--leading-h5)}.h6,.k-text h6{color:var(--color-h6,var(--color-h));font-family:var(--font-family-h6);font-size:var(--text-h6);font-weight:var(--font-h6);line-height:var(--leading-h6)}.k-text>*+h6{margin-block-start:calc(var(--text-line-height)*1.5em)}.k-headline[data-theme]{color:var(--theme)}.k-label{height:var(--height-xs);font-weight:var(--font-semi);align-items:center;min-width:0;display:flex;position:relative}[aria-disabled] .k-label{opacity:var(--opacity-disabled);cursor:not-allowed}.k-label>a{height:var(--height-xs);padding-inline:var(--spacing-2);border-radius:var(--rounded);align-items:center;min-width:0;margin-inline-start:calc(-1*var(--spacing-2));display:inline-flex}.k-label-text{text-overflow:ellipsis;white-space:nowrap;overflow-x:clip}.k-label abbr{font-size:var(--text-xs);color:var(--color-gray-500);margin-inline-start:var(--spacing-1)}.k-label abbr.k-label-invalid{color:var(--color-red-700);display:none}:where(.k-field:has([data-invalid]),.k-section:has([data-invalid]))>header>.k-label abbr.k-label-invalid{display:inline-block}.k-field:has([data-invalid])>.k-field-header>.k-label abbr:has(+abbr.k-label-invalid){display:none}:root{--text-font-size:1em;--text-line-height:1.5;--link-color:var(--color-blue-800);--link-underline-offset:2px}.k-text{font-size:var(--text-font-size);line-height:var(--text-line-height)}.k-text[data-size=tiny]{--text-font-size:var(--text-xs)}.k-text[data-size=small]{--text-font-size:var(--text-sm)}.k-text[data-size=medium]{--text-font-size:var(--text-md)}.k-text[data-size=large]{--text-font-size:var(--text-xl)}.k-text[data-align]{text-align:var(--align)}.k-text>:where(audio,blockquote,details,div,figure,h1,h2,h3,h4,h5,h6,hr,iframe,img,object,ol,p,picture,pre,table,ul)+*{margin-block-start:calc(var(--text-line-height)*1em)}.k-text :where(.k-link,a){color:var(--link-color);text-underline-offset:var(--link-underline-offset);border-radius:var(--rounded-xs);outline-offset:2px;text-decoration:underline}.k-text ol,.k-text ul{padding-inline-start:1.75em}.k-text ol{list-style:numeric}.k-text ol>li{list-style:decimal}.k-text ul>li{list-style:disc}.k-text ul ul>li{list-style:circle}.k-text ul ul ul>li{list-style:square}.k-text blockquote{font-size:var(--text-lg);border-inline-start:2px solid var(--color-black);padding-inline-start:var(--spacing-4);line-height:1.25}.k-text img{border-radius:var(--rounded)}.k-text iframe{aspect-ratio:16/9;border-radius:var(--rounded);width:100%}.k-text hr{background:var(--color-border);height:1px}.k-help{color:var(--color-text-dimmed)}:root{--main-padding-inline:clamp(var(--spacing-6),5cqw,var(--spacing-24))}.k-panel-main{padding:var(--spacing-3)var(--main-padding-inline)var(--spacing-24);min-height:100dvh;margin-inline-start:var(--main-start);container:main/inline-size}.k-panel-notification{--button-height:var(--height-sm);--button-color-icon:var(--theme-color-800);--button-color-text:var(--theme-color-800);outline:1px solid var(--theme-color-500);box-shadow:var(--shadow-lg);z-index:var(--z-notification);position:fixed;inset-block-end:var(--spacing-6);inset-inline-end:var(--spacing-6)}:root{--menu-button-height:var(--height);--menu-button-width:100%;--menu-color-back:var(--color-gray-250);--menu-color-border:var(--color-gray-300);--menu-display:none;--menu-display-backdrop:block;--menu-padding:var(--spacing-3);--menu-shadow:var(--shadow-xl);--menu-toggle-height:var(--menu-button-height);--menu-toggle-width:1rem;--menu-width-closed:calc(var(--menu-button-height) + 2*var(--menu-padding));--menu-width-open:12rem;--menu-width:var(--menu-width-open)}.k-panel-menu{z-index:var(--z-navigation);display:var(--menu-display);width:var(--menu-width);background-color:var(--menu-color-back);border-right:1px solid var(--menu-color-border);box-shadow:var(--menu-shadow);position:fixed;inset-block:0;inset-inline-start:0}.k-panel-menu-body{gap:var(--spacing-4);padding:var(--menu-padding);overscroll-behavior:contain;flex-direction:column;height:100%;display:flex;overflow:hidden auto}.k-panel-menu-search{margin-bottom:var(--spacing-8)}.k-panel-menu-buttons{flex-direction:column;width:100%;display:flex}.k-panel-menu-buttons[data-second-last=true]{flex-grow:1}.k-panel-menu-buttons:last-child{justify-content:flex-end}.k-panel-menu-button{--button-align:flex-start;--button-height:var(--menu-button-height);--button-width:var(--menu-button-width);flex-shrink:0}.k-panel-menu-button[aria-current]{--button-color-back:var(--color-white);box-shadow:var(--shadow)}.k-panel-menu-button:focus{z-index:1}.k-panel[data-menu=true]{--menu-button-width:100%;--menu-display:block;--menu-width:var(--menu-width-open)}.k-panel[data-menu=true]:after{content:"";background:var(--color-backdrop);display:var(--menu-display-backdrop);pointer-events:none;position:fixed;inset:0}.k-panel-menu-toggle{--button-align:flex-start;--button-height:100%;--button-width:var(--menu-toggle-width);opacity:0;border-radius:0;align-items:flex-start;transition:opacity .2s;position:absolute;inset-block:0;inset-inline-start:100%;overflow:visible}.k-panel-menu-toggle:focus{outline:0}.k-panel-menu-toggle .k-button-icon{height:var(--menu-toggle-height);width:var(--menu-toggle-width);margin-top:var(--menu-padding);border-block:1px solid var(--menu-color-border);border-inline-end:1px solid var(--menu-color-border);background:var(--menu-color-back);border-start-end-radius:var(--button-rounded);border-end-end-radius:var(--button-rounded);place-items:center;display:grid}@media (width>=60rem){.k-panel{--menu-display:block;--menu-display-backdrop:none;--menu-shadow:none;--main-start:var(--menu-width)}.k-panel[data-menu=false]{--menu-button-width:var(--menu-button-height);--menu-width:var(--menu-width-closed)}.k-panel-menu-proxy{display:none}.k-panel-menu-toggle:focus-visible,.k-panel-menu[data-hover] .k-panel-menu-toggle{opacity:1}.k-panel-menu-toggle:focus-visible .k-button-icon{outline:var(--outline);border-radius:var(--button-rounded)}.k-panel-menu-search[aria-disabled=true]{opacity:0}}.k-panel.k-panel-outside{padding:var(--spacing-6);grid-template-rows:1fr;place-items:center;min-height:100dvh;display:grid}html{background:var(--color-light);overflow:hidden scroll}body{font-size:var(--text-sm)}.k-panel[data-loading=true]{animation:.5s LoadingCursor}.k-panel[data-loading=true]:after,.k-panel[data-dragging=true]{-webkit-user-select:none;user-select:none}.k-topbar{margin-inline:calc(var(--button-padding)*-1);margin-bottom:var(--spacing-8);align-items:center;gap:var(--spacing-1);display:flex;position:relative}.k-topbar-breadcrumb{margin-inline-start:-2px}.k-topbar-spacer{flex-grow:1}.k-topbar-signals{align-items:center;display:flex}.k-search-view .k-header{margin-bottom:0}.k-header+.k-search-view-results{margin-top:var(--spacing-12)}.k-search-view-input{--input-color-border:transparent;--input-color-back:var(--color-gray-300);--input-height:var(--height-md);width:40cqw}.k-file-view-header,.k-file-view[data-has-tabs=true] .k-file-preview{margin-bottom:0}.k-file-preview{background:var(--color-gray-900);border-radius:var(--rounded-lg);margin-bottom:var(--spacing-12);align-items:stretch;display:grid;overflow:hidden}.k-file-preview-thumb-column{background:var(--pattern);aspect-ratio:1}.k-file-preview-thumb{padding:var(--spacing-12);justify-content:center;align-items:center;height:100%;display:flex;container-type:size}.k-file-preview-thumb img{width:auto;max-width:100cqw;max-height:100cqh}.k-file-preview-thumb>.k-icon{--icon-size:3rem}.k-file-preview-thumb>.k-button{top:var(--spacing-2);position:absolute;inset-inline-start:var(--spacing-2)}.k-file-preview .k-coords-input{--opacity-disabled:1;--range-thumb-color:#5c8dd6bf;--range-thumb-size:1.25rem;--range-thumb-shadow:none;cursor:crosshair}.k-file-preview .k-coords-input-thumb:after{--size:.4rem;--pos:calc(50% - (var(--size)/2));top:var(--pos);width:var(--size);height:var(--size);content:"";background:var(--color-white);border-radius:50%;position:absolute;inset-inline-start:var(--pos)}.k-file-preview:not([data-has-focus=true]) .k-coords-input-thumb{display:none}.k-file-preview-details{display:grid}.k-file-preview-details dl{grid-gap:var(--spacing-6)var(--spacing-12);padding:var(--spacing-6);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));align-self:center;line-height:1.5em;display:grid}.k-file-preview-details dt{font-size:var(--text-sm);font-weight:500;font-weight:var(--font-semi);color:var(--color-gray-500);margin-bottom:var(--spacing-1)}.k-file-preview-details :where(dd,a){font-size:var(--text-xs);color:#ffffffbf;white-space:nowrap;text-overflow:ellipsis;font-size:var(--text-sm);overflow:hidden}.k-file-preview-focus-info dd{align-items:center;display:flex}.k-file-preview-focus-info .k-button{--button-padding:var(--spacing-2);--button-color-back:var(--color-gray-800)}.k-file-preview[data-has-focus=true] .k-file-preview-focus-info .k-button{flex-direction:row-reverse}@container (width>=36rem){.k-file-preview{grid-template-columns:50% auto}.k-file-preview-thumb-column{aspect-ratio:auto}}@container (width>=65rem){.k-file-preview{grid-template-columns:33.333% auto}.k-file-preview-thumb-column{aspect-ratio:1}}@container (width>=90rem){.k-file-preview-layout{grid-template-columns:25% auto}}.k-login-dialog{--dialog-color-back:var(--color-white);--dialog-shadow:var(--shadow);container-type:inline-size}.k-login-fields{position:relative}.k-login-toggler{top:-2px;z-index:1;color:var(--link-color);padding-inline:var(--spacing-2);text-decoration:underline;text-decoration-color:var(--link-color);text-underline-offset:1px;height:var(--height-xs);border-radius:var(--rounded);line-height:1;position:absolute;inset-inline-end:calc(var(--spacing-2)*-1)}.k-login-form label abbr{visibility:hidden}.k-login-buttons{--button-padding:var(--spacing-3);margin-top:var(--spacing-10);justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.k-installation-dialog{--dialog-color-back:var(--color-white);--dialog-shadow:var(--shadow);container-type:inline-size}.k-installation-view .k-button{margin-top:var(--spacing-3);width:100%}.k-installation-view form .k-button{margin-top:var(--spacing-10)}.k-installation-view .k-headline{font-weight:var(--font-semi);margin-top:-.5rem;margin-bottom:.75rem}.k-installation-issues{line-height:1.5em;font-size:var(--text-sm)}.k-installation-issues li{padding:var(--spacing-6);background:var(--color-red-300);border-radius:var(--rounded);padding-inline-start:3.5rem;position:relative}.k-installation-issues .k-icon{top:calc(1.5rem + 2px);color:var(--color-red-700);position:absolute;inset-inline-start:1.5rem}.k-installation-issues li:not(:last-child){margin-bottom:2px}.k-installation-issues li code{font:inherit;color:var(--color-red-700)}.k-password-reset-view .k-user-info{margin-bottom:var(--spacing-8)}.k-user-info{font-size:var(--text-sm);height:var(--height-lg);padding-inline:var(--spacing-2);background:var(--color-white);box-shadow:var(--shadow);align-items:center;gap:.75rem;display:flex}.k-user-info :where(.k-image-frame,.k-icon-frame){border-radius:var(--rounded-sm);width:1.5rem}.k-page-view[data-has-tabs=true] .k-page-view-header{margin-bottom:0}.k-page-view-status{--button-color-back:var(--color-gray-300);--button-color-icon:var(--theme-color-600);--button-color-text:initial}.k-site-view[data-has-tabs=true] .k-site-view-header{margin-bottom:0}.k-system-info .k-stat-label{color:var(--theme,var(--color-black))}.k-table-update-status-cell{align-items:center;height:100%;padding:0 .75rem;display:flex}.k-table-update-status-cell-version,.k-table-update-status-cell-button{font-variant-numeric:tabular-nums}.k-plugin-info{column-gap:var(--spacing-3);padding:var(--button-padding);row-gap:2px;display:grid}.k-plugin-info dt{color:var(--color-gray-400)}.k-plugin-info dd[data-theme]{color:var(--theme-color-600)}@container (width<=30em){.k-plugin-info dd:not(:last-of-type){margin-bottom:var(--spacing-2)}}@container (width>=30em){.k-plugin-info{grid-template-columns:1fr auto;width:20rem}}.k-user-name-placeholder{color:var(--color-gray-500);transition:color .3s}.k-user-view-header[data-editable=true] .k-user-name-placeholder:hover{color:var(--color-gray-900)}.k-user-view-header{border-bottom:0;margin-bottom:0}.k-user-view .k-user-profile{margin-bottom:var(--spacing-12)}.k-user-view[data-has-tabs=true] .k-user-profile{margin-bottom:0}.k-user-view-image{padding:0}.k-user-view-image .k-frame{border-radius:var(--rounded);width:6rem;height:6rem;line-height:0}.k-user-view-image .k-icon-frame{--back:var(--color-black);--icon-color:var(--color-gray-200)}.k-user-profile{--button-height:auto;padding:var(--spacing-2);background:var(--color-white);border-radius:var(--rounded-lg);align-items:center;gap:var(--spacing-3);box-shadow:var(--shadow);display:flex}.k-user-profile .k-button-group{flex-direction:column;align-items:flex-start;display:flex}.k-users-view-header{margin-bottom:0}:root{--color-l-100:98%;--color-l-200:94%;--color-l-300:88%;--color-l-400:80%;--color-l-500:70%;--color-l-600:60%;--color-l-700:45%;--color-l-800:30%;--color-l-900:15%;--color-red-h:0;--color-red-s:80%;--color-red-hs:var(--color-red-h),var(--color-red-s);--color-red-boost:3%;--color-red-l-100:calc(var(--color-l-100) + var(--color-red-boost));--color-red-l-200:calc(var(--color-l-200) + var(--color-red-boost));--color-red-l-300:calc(var(--color-l-300) + var(--color-red-boost));--color-red-l-400:calc(var(--color-l-400) + var(--color-red-boost));--color-red-l-500:calc(var(--color-l-500) + var(--color-red-boost));--color-red-l-600:calc(var(--color-l-600) + var(--color-red-boost));--color-red-l-700:calc(var(--color-l-700) + var(--color-red-boost));--color-red-l-800:calc(var(--color-l-800) + var(--color-red-boost));--color-red-l-900:calc(var(--color-l-900) + var(--color-red-boost));--color-red-100:hsl(var(--color-red-hs),var(--color-red-l-100));--color-red-200:hsl(var(--color-red-hs),var(--color-red-l-200));--color-red-300:hsl(var(--color-red-hs),var(--color-red-l-300));--color-red-400:hsl(var(--color-red-hs),var(--color-red-l-400));--color-red-500:hsl(var(--color-red-hs),var(--color-red-l-500));--color-red-600:hsl(var(--color-red-hs),var(--color-red-l-600));--color-red-700:hsl(var(--color-red-hs),var(--color-red-l-700));--color-red-800:hsl(var(--color-red-hs),var(--color-red-l-800));--color-red-900:hsl(var(--color-red-hs),var(--color-red-l-900));--color-orange-h:28;--color-orange-s:80%;--color-orange-hs:var(--color-orange-h),var(--color-orange-s);--color-orange-boost:2.5%;--color-orange-l-100:calc(var(--color-l-100) + var(--color-orange-boost));--color-orange-l-200:calc(var(--color-l-200) + var(--color-orange-boost));--color-orange-l-300:calc(var(--color-l-300) + var(--color-orange-boost));--color-orange-l-400:calc(var(--color-l-400) + var(--color-orange-boost));--color-orange-l-500:calc(var(--color-l-500) + var(--color-orange-boost));--color-orange-l-600:calc(var(--color-l-600) + var(--color-orange-boost));--color-orange-l-700:calc(var(--color-l-700) + var(--color-orange-boost));--color-orange-l-800:calc(var(--color-l-800) + var(--color-orange-boost));--color-orange-l-900:calc(var(--color-l-900) + var(--color-orange-boost));--color-orange-100:hsl(var(--color-orange-hs),var(--color-orange-l-100));--color-orange-200:hsl(var(--color-orange-hs),var(--color-orange-l-200));--color-orange-300:hsl(var(--color-orange-hs),var(--color-orange-l-300));--color-orange-400:hsl(var(--color-orange-hs),var(--color-orange-l-400));--color-orange-500:hsl(var(--color-orange-hs),var(--color-orange-l-500));--color-orange-600:hsl(var(--color-orange-hs),var(--color-orange-l-600));--color-orange-700:hsl(var(--color-orange-hs),var(--color-orange-l-700));--color-orange-800:hsl(var(--color-orange-hs),var(--color-orange-l-800));--color-orange-900:hsl(var(--color-orange-hs),var(--color-orange-l-900));--color-yellow-h:47;--color-yellow-s:80%;--color-yellow-hs:var(--color-yellow-h),var(--color-yellow-s);--color-yellow-boost:0%;--color-yellow-l-100:calc(var(--color-l-100) + var(--color-yellow-boost));--color-yellow-l-200:calc(var(--color-l-200) + var(--color-yellow-boost));--color-yellow-l-300:calc(var(--color-l-300) + var(--color-yellow-boost));--color-yellow-l-400:calc(var(--color-l-400) + var(--color-yellow-boost));--color-yellow-l-500:calc(var(--color-l-500) + var(--color-yellow-boost));--color-yellow-l-600:calc(var(--color-l-600) + var(--color-yellow-boost));--color-yellow-l-700:calc(var(--color-l-700) + var(--color-yellow-boost));--color-yellow-l-800:calc(var(--color-l-800) + var(--color-yellow-boost));--color-yellow-l-900:calc(var(--color-l-900) + var(--color-yellow-boost));--color-yellow-100:hsl(var(--color-yellow-hs),var(--color-yellow-l-100));--color-yellow-200:hsl(var(--color-yellow-hs),var(--color-yellow-l-200));--color-yellow-300:hsl(var(--color-yellow-hs),var(--color-yellow-l-300));--color-yellow-400:hsl(var(--color-yellow-hs),var(--color-yellow-l-400));--color-yellow-500:hsl(var(--color-yellow-hs),var(--color-yellow-l-500));--color-yellow-600:hsl(var(--color-yellow-hs),var(--color-yellow-l-600));--color-yellow-700:hsl(var(--color-yellow-hs),var(--color-yellow-l-700));--color-yellow-800:hsl(var(--color-yellow-hs),var(--color-yellow-l-800));--color-yellow-900:hsl(var(--color-yellow-hs),var(--color-yellow-l-900));--color-green-h:80;--color-green-s:60%;--color-green-hs:var(--color-green-h),var(--color-green-s);--color-green-boost:-2.5%;--color-green-l-100:calc(var(--color-l-100) + var(--color-green-boost));--color-green-l-200:calc(var(--color-l-200) + var(--color-green-boost));--color-green-l-300:calc(var(--color-l-300) + var(--color-green-boost));--color-green-l-400:calc(var(--color-l-400) + var(--color-green-boost));--color-green-l-500:calc(var(--color-l-500) + var(--color-green-boost));--color-green-l-600:calc(var(--color-l-600) + var(--color-green-boost));--color-green-l-700:calc(var(--color-l-700) + var(--color-green-boost));--color-green-l-800:calc(var(--color-l-800) + var(--color-green-boost));--color-green-l-900:calc(var(--color-l-900) + var(--color-green-boost));--color-green-100:hsl(var(--color-green-hs),var(--color-green-l-100));--color-green-200:hsl(var(--color-green-hs),var(--color-green-l-200));--color-green-300:hsl(var(--color-green-hs),var(--color-green-l-300));--color-green-400:hsl(var(--color-green-hs),var(--color-green-l-400));--color-green-500:hsl(var(--color-green-hs),var(--color-green-l-500));--color-green-600:hsl(var(--color-green-hs),var(--color-green-l-600));--color-green-700:hsl(var(--color-green-hs),var(--color-green-l-700));--color-green-800:hsl(var(--color-green-hs),var(--color-green-l-800));--color-green-900:hsl(var(--color-green-hs),var(--color-green-l-900));--color-aqua-h:180;--color-aqua-s:50%;--color-aqua-hs:var(--color-aqua-h),var(--color-aqua-s);--color-aqua-boost:0%;--color-aqua-l-100:calc(var(--color-l-100) + var(--color-aqua-boost));--color-aqua-l-200:calc(var(--color-l-200) + var(--color-aqua-boost));--color-aqua-l-300:calc(var(--color-l-300) + var(--color-aqua-boost));--color-aqua-l-400:calc(var(--color-l-400) + var(--color-aqua-boost));--color-aqua-l-500:calc(var(--color-l-500) + var(--color-aqua-boost));--color-aqua-l-600:calc(var(--color-l-600) + var(--color-aqua-boost));--color-aqua-l-700:calc(var(--color-l-700) + var(--color-aqua-boost));--color-aqua-l-800:calc(var(--color-l-800) + var(--color-aqua-boost));--color-aqua-l-900:calc(var(--color-l-900) + var(--color-aqua-boost));--color-aqua-100:hsl(var(--color-aqua-hs),var(--color-aqua-l-100));--color-aqua-200:hsl(var(--color-aqua-hs),var(--color-aqua-l-200));--color-aqua-300:hsl(var(--color-aqua-hs),var(--color-aqua-l-300));--color-aqua-400:hsl(var(--color-aqua-hs),var(--color-aqua-l-400));--color-aqua-500:hsl(var(--color-aqua-hs),var(--color-aqua-l-500));--color-aqua-600:hsl(var(--color-aqua-hs),var(--color-aqua-l-600));--color-aqua-700:hsl(var(--color-aqua-hs),var(--color-aqua-l-700));--color-aqua-800:hsl(var(--color-aqua-hs),var(--color-aqua-l-800));--color-aqua-900:hsl(var(--color-aqua-hs),var(--color-aqua-l-900));--color-blue-h:210;--color-blue-s:65%;--color-blue-hs:var(--color-blue-h),var(--color-blue-s);--color-blue-boost:3%;--color-blue-l-100:calc(var(--color-l-100) + var(--color-blue-boost));--color-blue-l-200:calc(var(--color-l-200) + var(--color-blue-boost));--color-blue-l-300:calc(var(--color-l-300) + var(--color-blue-boost));--color-blue-l-400:calc(var(--color-l-400) + var(--color-blue-boost));--color-blue-l-500:calc(var(--color-l-500) + var(--color-blue-boost));--color-blue-l-600:calc(var(--color-l-600) + var(--color-blue-boost));--color-blue-l-700:calc(var(--color-l-700) + var(--color-blue-boost));--color-blue-l-800:calc(var(--color-l-800) + var(--color-blue-boost));--color-blue-l-900:calc(var(--color-l-900) + var(--color-blue-boost));--color-blue-100:hsl(var(--color-blue-hs),var(--color-blue-l-100));--color-blue-200:hsl(var(--color-blue-hs),var(--color-blue-l-200));--color-blue-300:hsl(var(--color-blue-hs),var(--color-blue-l-300));--color-blue-400:hsl(var(--color-blue-hs),var(--color-blue-l-400));--color-blue-500:hsl(var(--color-blue-hs),var(--color-blue-l-500));--color-blue-600:hsl(var(--color-blue-hs),var(--color-blue-l-600));--color-blue-700:hsl(var(--color-blue-hs),var(--color-blue-l-700));--color-blue-800:hsl(var(--color-blue-hs),var(--color-blue-l-800));--color-blue-900:hsl(var(--color-blue-hs),var(--color-blue-l-900));--color-purple-h:275;--color-purple-s:60%;--color-purple-hs:var(--color-purple-h),var(--color-purple-s);--color-purple-boost:0%;--color-purple-l-100:calc(var(--color-l-100) + var(--color-purple-boost));--color-purple-l-200:calc(var(--color-l-200) + var(--color-purple-boost));--color-purple-l-300:calc(var(--color-l-300) + var(--color-purple-boost));--color-purple-l-400:calc(var(--color-l-400) + var(--color-purple-boost));--color-purple-l-500:calc(var(--color-l-500) + var(--color-purple-boost));--color-purple-l-600:calc(var(--color-l-600) + var(--color-purple-boost));--color-purple-l-700:calc(var(--color-l-700) + var(--color-purple-boost));--color-purple-l-800:calc(var(--color-l-800) + var(--color-purple-boost));--color-purple-l-900:calc(var(--color-l-900) + var(--color-purple-boost));--color-purple-100:hsl(var(--color-purple-hs),var(--color-purple-l-100));--color-purple-200:hsl(var(--color-purple-hs),var(--color-purple-l-200));--color-purple-300:hsl(var(--color-purple-hs),var(--color-purple-l-300));--color-purple-400:hsl(var(--color-purple-hs),var(--color-purple-l-400));--color-purple-500:hsl(var(--color-purple-hs),var(--color-purple-l-500));--color-purple-600:hsl(var(--color-purple-hs),var(--color-purple-l-600));--color-purple-700:hsl(var(--color-purple-hs),var(--color-purple-l-700));--color-purple-800:hsl(var(--color-purple-hs),var(--color-purple-l-800));--color-purple-900:hsl(var(--color-purple-hs),var(--color-purple-l-900));--color-pink-h:320;--color-pink-s:70%;--color-pink-hs:var(--color-pink-h),var(--color-pink-s);--color-pink-boost:0%;--color-pink-l-100:calc(var(--color-l-100) + var(--color-pink-boost));--color-pink-l-200:calc(var(--color-l-200) + var(--color-pink-boost));--color-pink-l-300:calc(var(--color-l-300) + var(--color-pink-boost));--color-pink-l-400:calc(var(--color-l-400) + var(--color-pink-boost));--color-pink-l-500:calc(var(--color-l-500) + var(--color-pink-boost));--color-pink-l-600:calc(var(--color-l-600) + var(--color-pink-boost));--color-pink-l-700:calc(var(--color-l-700) + var(--color-pink-boost));--color-pink-l-800:calc(var(--color-l-800) + var(--color-pink-boost));--color-pink-l-900:calc(var(--color-l-900) + var(--color-pink-boost));--color-pink-100:hsl(var(--color-pink-hs),var(--color-pink-l-100));--color-pink-200:hsl(var(--color-pink-hs),var(--color-pink-l-200));--color-pink-300:hsl(var(--color-pink-hs),var(--color-pink-l-300));--color-pink-400:hsl(var(--color-pink-hs),var(--color-pink-l-400));--color-pink-500:hsl(var(--color-pink-hs),var(--color-pink-l-500));--color-pink-600:hsl(var(--color-pink-hs),var(--color-pink-l-600));--color-pink-700:hsl(var(--color-pink-hs),var(--color-pink-l-700));--color-pink-800:hsl(var(--color-pink-hs),var(--color-pink-l-800));--color-pink-900:hsl(var(--color-pink-hs),var(--color-pink-l-900));--color-gray-h:0;--color-gray-s:0%;--color-gray-hs:var(--color-gray-h),var(--color-gray-s);--color-gray-boost:0%;--color-gray-l-100:calc(var(--color-l-100) + var(--color-gray-boost));--color-gray-l-200:calc(var(--color-l-200) + var(--color-gray-boost));--color-gray-l-300:calc(var(--color-l-300) + var(--color-gray-boost));--color-gray-l-400:calc(var(--color-l-400) + var(--color-gray-boost));--color-gray-l-500:calc(var(--color-l-500) + var(--color-gray-boost));--color-gray-l-600:calc(var(--color-l-600) + var(--color-gray-boost));--color-gray-l-700:calc(var(--color-l-700) + var(--color-gray-boost));--color-gray-l-800:calc(var(--color-l-800) + var(--color-gray-boost));--color-gray-l-900:calc(var(--color-l-900) + var(--color-gray-boost));--color-gray-100:hsl(var(--color-gray-hs),var(--color-gray-l-100));--color-gray-200:hsl(var(--color-gray-hs),var(--color-gray-l-200));--color-gray-250:#e8e8e8;--color-gray-300:hsl(var(--color-gray-hs),var(--color-gray-l-300));--color-gray-400:hsl(var(--color-gray-hs),var(--color-gray-l-400));--color-gray-500:hsl(var(--color-gray-hs),var(--color-gray-l-500));--color-gray-600:hsl(var(--color-gray-hs),var(--color-gray-l-600));--color-gray-700:hsl(var(--color-gray-hs),var(--color-gray-l-700));--color-gray-800:hsl(var(--color-gray-hs),var(--color-gray-l-800));--color-gray-900:hsl(var(--color-gray-hs),var(--color-gray-l-900));--color-backdrop:#0009;--color-black:black;--color-border:var(--color-gray-300);--color-dark:var(--color-gray-900);--color-focus:var(--color-blue-600);--color-light:var(--color-gray-200);--color-text:var(--color-black);--color-text-dimmed:var(--color-gray-700);--color-white:white;--color-background:var(--color-light);--color-gray:var(--color-gray-600);--color-red:var(--color-red-600);--color-orange:var(--color-orange-600);--color-yellow:var(--color-yellow-600);--color-green:var(--color-green-600);--color-aqua:var(--color-aqua-600);--color-blue:var(--color-blue-600);--color-purple:var(--color-purple-600);--color-focus-light:var(--color-focus);--color-focus-outline:var(--color-focus);--color-negative:var(--color-red-700);--color-negative-light:var(--color-red-500);--color-negative-outline:var(--color-red-900);--color-notice:var(--color-orange-700);--color-notice-light:var(--color-orange-500);--color-positive:var(--color-green-700);--color-positive-light:var(--color-green-500);--color-positive-outline:var(--color-green-900);--color-text-light:var(--color-text-dimmed);--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--font-mono:"SFMono-Regular",Consolas,Liberation Mono,Menlo,Courier,monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--text-4xl:2.5rem;--text-5xl:3rem;--text-6xl:4rem;--text-base:var(--text-md);--font-size-tiny:var(--text-xs);--font-size-small:var(--text-sm);--font-size-medium:var(--text-base);--font-size-large:var(--text-xl);--font-size-huge:var(--text-2xl);--font-size-monster:var(--text-3xl);--font-thin:300;--font-normal:400;--font-semi:500;--font-bold:600;--height-xs:1.5rem;--height-sm:1.75rem;--height-md:2rem;--height-lg:2.25rem;--height-xl:2.5rem;--height:var(--height-md);--opacity-disabled:.5;--rounded-xs:1px;--rounded-sm:.125rem;--rounded-md:.25rem;--rounded-lg:.375rem;--rounded-xl:.5rem;--rounded:var(--rounded-md);--shadow-sm:0 1px 3px 0 #0000000d,0 1px 2px 0 #00000006;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000d;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000d;--shadow:var(--shadow-sm);--shadow-toolbar:#0000001a -2px 0 5px,var(--shadow),var(--shadow-xl);--shadow-outline:var(--color-focus,currentColor)0 0 0 2px;--shadow-inset:inset 0 2px 4px 0 #0000000f;--shadow-sticky:#0000000d 0 2px 5px;--box-shadow-dropdown:var(--shadow-dropdown);--box-shadow-item:var(--shadow);--box-shadow-focus:var(--shadow-xl);--shadow-dropdown:var(--shadow-lg);--shadow-item:var(--shadow-sm);--spacing-0:0;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-24:6rem;--spacing-36:9rem;--spacing-48:12rem;--spacing-px:1px;--spacing-2px:2px;--spacing-5:1.25rem;--spacing-10:2.5rem;--spacing-20:5rem;--z-offline:1200;--z-fatal:1100;--z-loader:1000;--z-notification:900;--z-dialog:800;--z-navigation:700;--z-dropdown:600;--z-drawer:500;--z-dropzone:400;--z-toolbar:300;--z-content:200;--z-background:100;--pattern-size:16px;--pattern-light:repeating-conic-gradient(#fff 0% 25%,#e6e6e6 0% 50%)50%/var(--pattern-size)var(--pattern-size);--pattern-dark:repeating-conic-gradient(#262626 0% 25%,#383838 0% 50%)50%/var(--pattern-size)var(--pattern-size);--pattern:var(--pattern-dark)}:root{--container:80rem;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--field-input-padding:var(--input-padding);--field-input-height:var(--input-height);--field-input-line-height:var(--input-leading);--field-input-font-size:var(--input-font-size);--bg-pattern:var(--pattern)}:root{--choice-color-back:var(--color-white);--choice-color-border:var(--color-gray-500);--choice-color-checked:var(--color-black);--choice-color-disabled:var(--color-gray-400);--choice-color-icon:var(--color-light);--choice-color-info:var(--color-text-dimmed);--choice-color-text:var(--color-text);--choice-color-toggle:var(--choice-color-disabled);--choice-height:1rem;--choice-rounded:var(--rounded-sm)}input:where([type=checkbox],[type=radio]){cursor:pointer;height:var(--choice-height);aspect-ratio:1;border:1px solid var(--choice-color-border);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--choice-rounded);background:var(--choice-color-back);box-shadow:var(--shadow-sm);flex-shrink:0;position:relative;overflow:hidden}input:where([type=checkbox],[type=radio]):after{content:"";text-align:center;place-items:center;display:none;position:absolute}input:where([type=checkbox],[type=radio]):focus{outline:var(--outline);outline-offset:-1px;color:var(--color-focus)}input:where([type=checkbox]):checked{border-color:var(--choice-color-checked)}input:where([type=checkbox],[type=radio]):checked:after{background:var(--choice-color-checked);display:grid}input:where([type=checkbox],[type=radio]):checked:focus{--choice-color-checked:var(--color-focus)}input:where([type=checkbox],[type=radio])[disabled]{--choice-color-back:none;--choice-color-border:var(--color-gray-300);--choice-color-checked:var(--choice-color-disabled);box-shadow:none;cursor:not-allowed}input[type=checkbox]:checked:after{content:"✓";color:var(--choice-color-icon);font-size:9px;font-weight:700;line-height:1;inset:0}input[type=radio]{--choice-rounded:50%}input[type=radio]:after{border-radius:var(--choice-rounded);inset:3px}input[type=checkbox][data-variant=toggle]{--choice-rounded:var(--choice-height);aspect-ratio:2}input[type=checkbox][data-variant=toggle]:after{background:var(--choice-color-toggle);border-radius:var(--choice-rounded);width:50%;display:grid;inset:1px}input[type=checkbox][data-variant=toggle]:checked{border-color:var(--choice-color-border)}input[type=checkbox][data-variant=toggle]:checked:after{background:var(--choice-color-checked);margin-inline-start:auto}:root{--range-thumb-color:var(--color-white);--range-thumb-focus-outline:var(--outline);--range-thumb-size:1rem;--range-thumb-shadow:#0000001a 0 2px 4px 2px,#00000020 0 0 0 1px;--range-track-back:var(--color-gray-250);--range-track-height:var(--range-thumb-size)}:where(input[type=range]){-webkit-appearance:none;-moz-appearance:none;appearance:none;height:var(--range-thumb-size);border-radius:var(--range-track-size);align-items:center;width:100%;padding:0;display:flex}:where(input[type=range])::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--range-thumb-size);height:var(--range-thumb-size);background:var(--range-thumb-color);box-shadow:var(--range-thumb-shadow);margin-top:calc(((var(--range-thumb-size) - var(--range-track-height))/2)*-1);z-index:1;cursor:grab;border:0;border-radius:50%;transform:translate(0)}:where(input[type=range])::-moz-range-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--range-thumb-size);height:var(--range-thumb-size);background:var(--range-thumb-color);box-shadow:var(--range-thumb-shadow);z-index:1;cursor:grab;border:0;border-radius:50%;transform:translate(0)}:where(input[type=range])::-webkit-slider-thumb:active{cursor:grabbing}:where(input[type=range])::-moz-range-thumb:active{cursor:grabbing}:where(input[type=range])::-webkit-slider-runnable-track{background:var(--range-track-back);height:var(--range-track-height);border-radius:var(--range-track-height)}:where(input[type=range])::-moz-range-track{background:var(--range-track-back);height:var(--range-track-height);border-radius:var(--range-track-height)}:where(input[type=range][disabled]){--range-thumb-color:#fff3}:where(input[type=range][disabled])::-webkit-slider-thumb{cursor:not-allowed}:where(input[type=range][disabled])::-moz-range-thumb{cursor:not-allowed}:where(input[type=range]):focus{outline:var(--outline)}:where(input[type=range]):focus::-webkit-slider-thumb{outline:var(--range-thumb-focus-outline)}:where(input[type=range]):focus::-moz-range-thumb{outline:var(--range-thumb-focus-outline)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:where(b,strong){font-weight:var(--font-bold,600)}:where([hidden]){display:none!important}:where(abbr){text-decoration:none}:where(input,button,textarea,select){font:inherit;line-height:inherit;color:inherit;background:0 0;border:0}:where(fieldset){border:0}:where(legend){float:left;width:100%}:where(legend+*){clear:both}:where(select){-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-white);color:var(--color-black);cursor:pointer}:where(textarea,select,input:not([type=checkbox],[type=radio],[type=reset],[type=submit])){font-variant-numeric:tabular-nums;width:100%}:where(textarea){resize:vertical;line-height:1.5}:where(input)::-webkit-calendar-picker-indicator{display:none}:where(input[type=search]){-webkit-appearance:none;-moz-appearance:none;appearance:none}:where(input)::-webkit-search-cancel-button{display:none}:where(button,label,select,summary,[role=button],[role=option]){cursor:pointer}:where(select[multiple]) option{align-items:center;display:flex}:where(input:autofill){-webkit-background-clip:text;-webkit-text-fill-color:var(--input-color-text)!important}:where(:disabled){cursor:not-allowed}::placeholder{color:var(--input-color-placeholder);opacity:1}:where(a){color:currentColor;text-underline-offset:.2ex;text-decoration:none}:where(ul,ol){list-style:none}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block}:where(iframe){border:0}:where(img,picture,svg){block-size:auto;max-inline-size:100%}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(h1,h2,h3,h4,h5,h6){font:inherit}:where(:focus,:focus-visible,:focus-within){outline-color:var(--color-focus,currentColor);outline-offset:0}:where(:focus-visible){outline:var(--outline,2px solid var(--color-focus,currentColor))}:where(:invalid){box-shadow:none;outline:0}:where(dialog){border:0;max-width:none;max-height:none}:where(hr){border:0}:where(table){font:inherit;border-spacing:0;font-variant-numeric:tabular-nums;width:100%}:where(table th){font:inherit;text-align:start}:where(svg){fill:currentColor}body{font-family:var(--font-sans,sans-serif);font-size:var(--text-sm);accent-color:var(--color-focus,currentColor);line-height:1;position:relative}:where(sup,sub){vertical-align:baseline;font-size:75%;line-height:0;position:relative}:where(sup){top:-.5em}:where(sub){bottom:-.25em}:where(mark){background:var(--color-yellow-300)}:where(kbd){padding-inline:var(--spacing-2);border-radius:var(--rounded);background:var(--color-white);box-shadow:var(--shadow);display:inline-block}[data-align=left]{--align:start}[data-align=center]{--align:center}[data-align=right]{--align:end}@keyframes LoadingCursor{to{cursor:progress}}@keyframes Spin{to{transform:rotate(360deg)}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[data-theme]{--theme-color-h:0;--theme-color-s:0%;--theme-color-hs:var(--theme-color-h),var(--theme-color-s);--theme-color-boost:3%;--theme-color-l-100:calc(var(--color-l-100) + var(--theme-color-boost));--theme-color-l-200:calc(var(--color-l-200) + var(--theme-color-boost));--theme-color-l-300:calc(var(--color-l-300) + var(--theme-color-boost));--theme-color-l-400:calc(var(--color-l-400) + var(--theme-color-boost));--theme-color-l-500:calc(var(--color-l-500) + var(--theme-color-boost));--theme-color-l-600:calc(var(--color-l-600) + var(--theme-color-boost));--theme-color-l-700:calc(var(--color-l-700) + var(--theme-color-boost));--theme-color-l-800:calc(var(--color-l-800) + var(--theme-color-boost));--theme-color-l-900:calc(var(--color-l-900) + var(--theme-color-boost));--theme-color-100:hsl(var(--theme-color-hs),var(--theme-color-l-100));--theme-color-200:hsl(var(--theme-color-hs),var(--theme-color-l-200));--theme-color-300:hsl(var(--theme-color-hs),var(--theme-color-l-300));--theme-color-400:hsl(var(--theme-color-hs),var(--theme-color-l-400));--theme-color-500:hsl(var(--theme-color-hs),var(--theme-color-l-500));--theme-color-600:hsl(var(--theme-color-hs),var(--theme-color-l-600));--theme-color-700:hsl(var(--theme-color-hs),var(--theme-color-l-700));--theme-color-800:hsl(var(--theme-color-hs),var(--theme-color-l-800));--theme-color-900:hsl(var(--theme-color-hs),var(--theme-color-l-900));--theme-color-text:var(--theme-color-900);--theme-color-text-dimmed:var(--theme-color-700);--theme-color-back:var(--theme-color-400);--theme-color-hover:var(--theme-color-500);--theme-color-icon:var(--theme-color-600)}[data-theme=error],[data-theme=negative]{--theme-color-h:var(--color-red-h);--theme-color-s:var(--color-red-s);--theme-color-boost:var(--color-red-boost)}[data-theme=notice]{--theme-color-h:var(--color-orange-h);--theme-color-s:var(--color-orange-s);--theme-color-boost:var(--color-orange-boost)}[data-theme=warning]{--theme-color-h:var(--color-yellow-h);--theme-color-s:var(--color-yellow-s);--theme-color-boost:var(--color-yellow-boost)}[data-theme=info]{--theme-color-h:var(--color-blue-h);--theme-color-s:var(--color-blue-s);--theme-color-boost:var(--color-blue-boost)}[data-theme=positive]{--theme-color-h:var(--color-green-h);--theme-color-s:var(--color-green-s);--theme-color-boost:var(--color-green-boost)}[data-theme=passive]{--theme-color-h:var(--color-gray-h);--theme-color-s:var(--color-gray-s);--theme-color-boost:10%}[data-theme=white],[data-theme=text]{--theme-color-back:var(--color-white);--theme-color-icon:var(--color-gray-800);--theme-color-text:var(--color-text);--color-h:var(--color-black)}[data-theme=dark]{--theme-color-h:var(--color-gray-h);--theme-color-s:var(--color-gray-s);--theme-color-boost:var(--color-gray-boost);--theme-color-back:var(--color-gray-800);--theme-color-icon:var(--color-gray-500);--theme-color-text:var(--color-gray-200)}[data-theme=code]{--theme-color-back:var(--code-color-back);--theme-color-hover:var(--color-black);--theme-color-icon:var(--code-color-icon);--theme-color-text:var(--code-color-text);font-family:var(--code-font-family);font-size:var(--code-font-size)}[data-theme=empty]{--theme-color-back:var(--color-light);--theme-color-border:var(--color-gray-400);--theme-color-icon:var(--color-gray-600);--theme-color-text:var(--color-text-dimmed);border:1px dashed var(--theme-color-border)}[data-theme=none]{--theme-color-back:transparent;--theme-color-border:transparent;--theme-color-icon:var(--color-text);--theme-color-text:var(--color-text)}[data-theme]{--theme:var(--theme-color-700);--theme-light:var(--theme-color-500);--theme-bg:var(--theme-color-500)}:root{--outline:2px solid var(--color-focus,currentColor)}.scroll-x,.scroll-x-auto,.scroll-y,.scroll-y-auto{-webkit-overflow-scrolling:touch;transform:translate(0)}.scroll-x{overflow:scroll hidden}.scroll-x-auto{overflow:auto hidden}.scroll-y{overflow:hidden scroll}.scroll-y-auto{overflow:hidden auto}.input-hidden{-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;width:0;height:0;position:absolute}.k-lab-index-view .k-header{margin-bottom:0}.k-lab-index-view .k-list-items{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}.k-lab-example{outline-offset:-2px;border-radius:var(--rounded);border:1px solid var(--color-gray-300);max-width:100%;position:relative;container-type:inline-size}.k-lab-example+.k-lab-example{margin-top:var(--spacing-12)}.k-lab-example-header{height:var(--height-md);padding-block:var(--spacing-3);padding-inline:var(--spacing-2);border-bottom:1px solid var(--color-gray-300);justify-content:space-between;align-items:center;display:flex}.k-lab-example-label{color:var(--color-text-dimmed);font-size:12px}.k-lab-example-canvas,.k-lab-example-code{padding:var(--spacing-16)}.k-lab-example[data-flex] .k-lab-example-canvas{align-items:center;gap:var(--spacing-6);display:flex}.k-lab-example-inspector{--icon-size:13px;--button-color-icon:var(--color-gray-500)}.k-lab-example-inspector .k-button:not([data-theme]):hover{--button-color-icon:var(--color-gray-600)}.k-lab-example-inspector .k-button:where([data-theme]){--button-color-icon:var(--color-gray-800)}.k-lab-examples>:where(.k-text,.k-box){margin-bottom:var(--spacing-6)}.k-lab-form>footer{border-top:1px dashed var(--color-border);padding-top:var(--spacing-6)}.k-lab-input-examples :not([type=checkbox],[type=radio]):invalid{outline:2px solid var(--color-red-600)!important}.k-lab-options-input-examples fieldset:invalid,.k-lab-options-input-examples :not([type=checkbox],[type=radio]):invalid{outline:2px solid var(--color-red-600)}.k-lab-playground-view[data-has-tabs=true] .k-header{margin-bottom:0}.k-lab-docs-deprecated .k-box{box-shadow:var(--shadow)}.k-lab-docs-examples .k-code+.k-code{margin-top:var(--spacing-4)}.k-lab-docs-prop-values{font-size:var(--text-xs);border-left:2px solid var(--color-blue-300);padding-inline-start:var(--spacing-2)}.k-lab-docs-prop-values dl{font-weight:var(--font-bold)}.k-lab-docs-prop-values dl+dl{margin-top:var(--spacing-2)}.k-lab-docs-prop-values dd{gap:var(--spacing-1);flex-wrap:wrap;display:inline-flex}.k-lab-docs-desc-header{justify-content:space-between;align-items:center;display:flex}.k-table .k-lab-docs-deprecated{--box-height:var(--height-xs);--text-font-size:var(--text-xs)}.k-labs-docs-params li{margin-inline-start:var(--spacing-3);list-style:square}.k-labs-docs-params .k-lab-docs-types{margin-inline:1ch}.k-lab-docs-types{gap:var(--spacing-1);flex-wrap:wrap;display:inline-flex}.k-lab-docs-types.k-text code{color:var(--color-gray-800);outline-color:var(--color-gray-400);background:var(--color-gray-300)}.k-lab-docs-types code:is([data-type=boolean],[data-type=Boolean]){color:var(--color-purple-800);outline-color:var(--color-purple-400);background:var(--color-purple-300)}.k-lab-docs-types code:is([data-type=string],[data-type=String]){color:var(--color-green-800);outline-color:var(--color-green-500);background:var(--color-green-300)}.k-lab-docs-types code:is([data-type=number],[data-type=Number]){color:var(--color-orange-800);outline-color:var(--color-orange-500);background:var(--color-orange-300)}.k-lab-docs-types code:is([data-type=array],[data-type=Array]){color:var(--color-aqua-800);outline-color:var(--color-aqua-500);background:var(--color-aqua-300)}.k-lab-docs-types code:is([data-type=object],[data-type=Object]){color:var(--color-yellow-800);outline-color:var(--color-yellow-500);background:var(--color-yellow-300)}.k-lab-docs-types code[data-type=func]{color:var(--color-pink-800);outline-color:var(--color-pink-400);background:var(--color-pink-300)}.k-lab-docs-section+.k-lab-docs-section{margin-top:var(--spacing-12)}.k-lab-docs-section .k-headline{margin-bottom:var(--spacing-3)}.k-lab-docs-section .k-table td{padding:.375rem var(--table-cell-padding);vertical-align:top;word-break:break-word;line-height:1.5}.k-lab-docs-description :where(.k-text,.k-box)+:where(.k-text,.k-box){margin-top:var(--spacing-3)}.k-lab-docs-required{vertical-align:super;color:var(--color-red-600);margin-inline-start:var(--spacing-1);font-size:.7rem}.k-lab-docs-since{margin-top:var(--spacing-1);font-size:var(--text-xs);color:var(--color-gray-600)}.token.punctuation,.token.comment,.token.doctype{color:var(--color-gray-500)}.token.tag,.token.markup,.token.variable,.token.this,.token.selector,.token.key,.token.kirbytag-bracket,.token.prolog,.token.delimiter{color:var(--color-red-500)}.token.constant,.token.number,.token.boolean,.token.boolean.important,.token.attr-name,.token.kirbytag-attr,.token.kirbytag-name,.token.entity,.token.bold,.token.bold>.punctuation{color:var(--color-orange-500)}.token.keyword,.token.italic,.token.italic>.punctuation{color:var(--color-purple-500)}.token.function{color:var(--color-blue-500)}.token.operator,.token.title{color:var(--color-aqua-500)}.token.string,.token.attr-value,.token.attr-value .punctuation,.token.list.punctuation{color:var(--color-green-500)}.token.scope,.token.class-name,.token.property,.token.url{color:var(--color-yellow-500)}.token.title,.token.kirbytag-bracket,.token.list.punctuation,.token.bold{font-weight:var(--font-bold)}.token.title .punctuation{color:var(--color-gray-500)}.token.italic{font-style:italic} +.k-items{display:grid;position:relative;container-type:inline-size}.k-items[data-layout=list]{gap:2px}.k-items[data-layout=cardlets]{--items-size:1fr;grid-template-columns:repeat(auto-fill,minmax(var(--items-size),1fr));gap:.75rem;display:grid}@container (width>=15rem){.k-items[data-layout=cardlets]{--items-size:15rem}}.k-items[data-layout=cards]{grid-template-columns:1fr;gap:1.5rem;display:grid}@container (width>=6rem){.k-items[data-layout=cards][data-size=tiny]{grid-template-columns:repeat(auto-fill,minmax(6rem,1fr))}}@container (width>=9rem){.k-items[data-layout=cards][data-size=small]{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}}@container (width>=12rem){.k-items[data-layout=cards][data-size=auto],.k-items[data-layout=cards][data-size=medium]{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}}@container (width>=15rem){.k-items[data-layout=cards][data-size=large]{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}}@container (width>=18rem){.k-items[data-layout=cards][data-size=huge]{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr))}}.k-collection-footer{margin-top:var(--spacing-2);flex-wrap:wrap}.k-empty{max-width:100%}:root{--item-button-height:var(--height-md);--item-button-width:var(--height-md);--item-height:auto;--item-height-cardlet:calc(var(--height-md)*3)}.k-item{background:var(--color-white);box-shadow:var(--shadow);border-radius:var(--rounded);height:var(--item-height);position:relative;container-type:inline-size}.k-item:has(a:focus){outline:2px solid var(--color-focus)}@supports not selector(:has(*)){.k-item:focus-within{outline:2px solid var(--color-focus)}}.k-item .k-icon-frame{--back:var(--color-gray-300)}.k-item-content{padding:var(--spacing-2);line-height:1.25;overflow:hidden}.k-item-content a:focus{outline:0}.k-item-content a:after{content:"";position:absolute;inset:0}.k-item-info{color:var(--color-text-dimmed)}.k-item-options{z-index:1;justify-content:space-between;align-items:center;display:flex;transform:translate(0)}.k-item-options[data-only-option=true]{justify-content:flex-end}.k-item-options .k-button{--button-height:var(--item-button-height);--button-width:var(--item-button-width)}.k-item .k-sort-button{z-index:2;position:absolute}.k-item:not(:hover):not(.k-sortable-fallback) .k-sort-button{opacity:0}.k-item[data-layout=list]{--item-height:var(--field-input-height);--item-button-height:var(--item-height);--item-button-width:auto;height:var(--item-height);grid-template-columns:1fr auto;align-items:center;display:grid}.k-item[data-layout=list][data-has-image=true]{grid-template-columns:var(--item-height)1fr auto}.k-item[data-layout=list] .k-frame{--ratio:1/1;height:var(--item-height);border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded)}.k-item[data-layout=list] .k-item-content{white-space:nowrap;gap:var(--spacing-2);justify-content:space-between;min-width:0;display:flex}.k-item[data-layout=list] .k-item-title,.k-item[data-layout=list] .k-item-info{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.k-item[data-layout=list] .k-item-title{flex-shrink:1}.k-item[data-layout=list] .k-item-info{flex-shrink:2}@container (width<=30rem){.k-item[data-layout=list] .k-item-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.k-item[data-layout=list] .k-item-info{display:none}}.k-item[data-layout=list] .k-sort-button{--button-width:calc(1.5rem + var(--spacing-1));--button-height:var(--item-height);left:calc(-1*var(--button-width))}.k-item:is([data-layout=cardlets],[data-layout=cards]) .k-sort-button{top:var(--spacing-2);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);--button-width:1.5rem;--button-height:1.5rem;--button-rounded:var(--rounded-sm);--button-padding:0;--icon-size:14px;background:#ffffff80;inset-inline-start:var(--spacing-2);box-shadow:0 2px 5px #0003}.k-item:is([data-layout=cardlets],[data-layout=cards]) .k-sort-button:hover{background:#fffffff2}.k-item[data-layout=cardlets]{--item-height:var(--item-height-cardlet);grid-template-columns:1fr;grid-template-areas:"content""options";grid-template-rows:1fr var(--height-md);display:grid}.k-item[data-layout=cardlets][data-has-image=true]{grid-template-areas:"image content""image options";grid-template-columns:minmax(0,var(--item-height))1fr}.k-item[data-layout=cardlets] .k-frame{aspect-ratio:auto;height:var(--item-height);border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded);grid-area:image}.k-item[data-layout=cardlets] .k-item-content{grid-area:content}.k-item[data-layout=cardlets] .k-item-info{white-space:nowrap;text-overflow:ellipsis;margin-top:.125em;overflow:hidden}.k-item[data-layout=cardlets] .k-item-options{grid-area:options}.k-item[data-layout=cards]{flex-direction:column;display:flex}.k-item[data-layout=cards] .k-frame{border-start-start-radius:var(--rounded);border-start-end-radius:var(--rounded)}.k-item[data-layout=cards] .k-item-content{padding:var(--spacing-2);flex-grow:1}.k-item[data-layout=cards] .k-item-info{margin-top:.125em}.k-dialog-body{padding:var(--dialog-padding)}.k-dialog[data-has-footer=true] .k-dialog-body{padding-bottom:0}.k-button-group.k-dialog-buttons{gap:var(--spacing-3);--button-height:var(--height-lg);grid-template-columns:1fr 1fr;display:grid}.k-dialog-fields{padding-bottom:.5rem;container-type:inline-size}.k-dialog-footer{padding:var(--dialog-padding);flex-shrink:0;line-height:1}.k-dialog .k-notification{border-start-start-radius:var(--dialog-rounded);border-start-end-radius:var(--dialog-rounded);margin-top:-1px;padding-block:.325rem}.k-dialog-search{--input-color-border:transparent;--input-color-back:var(--color-gray-300);margin-bottom:.75rem}:root{--dialog-color-back:var(--color-light);--dialog-color-text:currentColor;--dialog-margin:var(--spacing-6);--dialog-padding:var(--spacing-6);--dialog-rounded:var(--rounded-xl);--dialog-shadow:var(--shadow-xl);--dialog-width:22rem}.k-dialog-portal{padding:var(--dialog-margin)}.k-dialog{background:var(--dialog-color-back);color:var(--dialog-color-text);width:clamp(10rem,100%,var(--dialog-width));box-shadow:var(--dialog-shadow);border-radius:var(--dialog-rounded);flex-direction:column;line-height:1;display:flex;position:relative;overflow:clip;container-type:inline-size}@media screen and (width>=20rem){.k-dialog[data-size=small]{--dialog-width:20rem}}@media screen and (width>=22rem){.k-dialog[data-size=default]{--dialog-width:22rem}}@media screen and (width>=30rem){.k-dialog[data-size=medium]{--dialog-width:30rem}}@media screen and (width>=40rem){.k-dialog[data-size=large]{--dialog-width:40rem}}@media screen and (width>=60rem){.k-dialog[data-size=huge]{--dialog-width:60rem}}.k-dialog .k-pagination{justify-content:center;align-items:center;margin-bottom:-1.5rem;display:flex}.k-changes-dialog .k-headline{margin-top:-.5rem;margin-bottom:var(--spacing-3)}.k-error-details{background:var(--color-white);font-size:var(--text-sm);margin-top:.75rem;padding:1rem;line-height:1.25em;display:block;overflow:auto}.k-error-details dt{color:var(--color-red-500);margin-bottom:.25rem}.k-error-details dd{overflow-wrap:break-word;text-overflow:ellipsis;overflow:hidden}.k-error-details dd:not(:last-of-type){margin-bottom:1.5em}.k-error-details li{white-space:pre-line}.k-error-details li:not(:last-child){border-bottom:1px solid var(--color-background);margin-bottom:.25rem;padding-bottom:.25rem}.k-models-dialog .k-list-item{cursor:pointer}.k-page-template-switch{margin-bottom:var(--spacing-6);padding-bottom:var(--spacing-6);border-bottom:1px dashed var(--color-gray-300)}.k-page-move-dialog .k-headline{margin-bottom:var(--spacing-2)}.k-page-move-parent{--tree-color-back:var(--color-white);--tree-color-hover-back:var(--color-light);padding:var(--spacing-3);background:var(--color-white);border-radius:var(--rounded);box-shadow:var(--shadow)}.k-pages-dialog-navbar{justify-content:center;align-items:center;margin-bottom:.5rem;padding-inline-end:38px;display:flex}.k-pages-dialog-navbar .k-button[aria-disabled]{opacity:0}.k-pages-dialog-navbar .k-headline{text-align:center;flex-grow:1}.k-pages-dialog-option[aria-disabled]{opacity:.25}.k-search-dialog{--dialog-padding:0;--dialog-rounded:var(--rounded);overflow:visible}.k-overlay[open][data-type=dialog]>.k-portal>.k-search-dialog{margin-top:0}.k-search-dialog-input{--button-height:var(--input-height);align-items:center;display:flex}.k-search-dialog-types{flex-shrink:0}.k-search-dialog-input input{height:var(--input-height);border-left:1px solid var(--color-border);line-height:var(--input-height);border-radius:var(--rounded);font-size:var(--input-font-size);flex-grow:1;padding-inline:.75rem}.k-search-dialog-input input:focus{outline:0}.k-search-dialog-input .k-search-dialog-close{flex-shrink:0}.k-search-dialog-results{border-top:1px solid var(--color-border);padding:1rem}.k-search-dialog-results .k-item[data-selected=true]{outline:var(--outline)}.k-search-dialog-footer{text-align:center}.k-search-dialog-footer p{color:var(--color-text-dimmed)}.k-search-dialog-footer .k-button{margin-top:var(--spacing-4)}.k-totp-dialog-headline{margin-bottom:var(--spacing-1)}.k-totp-dialog-intro{margin-bottom:var(--spacing-6)}.k-totp-dialog-grid{gap:var(--spacing-6);display:grid}@media screen and (width>=40rem){.k-totp-dialog-grid{gap:var(--spacing-8);grid-template-columns:1fr 1fr}}.k-totp-qrcode .k-box[data-theme]{padding:var(--box-padding-inline)}.k-totp-dialog-fields .k-field-name-confirm{--input-height:var(--height-xl);--input-rounded:var(--rounded);--input-font-size:var(--text-3xl)}.k-upload-dialog.k-dialog{--dialog-width:40rem}.k-upload-items{gap:.25rem;display:grid}.k-upload-item{accent-color:var(--color-focus);grid-template-columns:6rem 1fr auto;grid-template-areas:"preview input input""preview body toggle";grid-template-rows:var(--input-height)1fr;border-radius:var(--rounded);background:var(--color-white);box-shadow:var(--shadow);min-height:6rem;display:grid}.k-upload-item-preview{border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded);grid-area:preview;width:100%;height:100%;display:flex;overflow:hidden}.k-upload-item-preview:focus{border-radius:var(--rounded);outline:2px solid var(--color-focus);z-index:1}.k-upload-item-body{padding:var(--spacing-2)var(--spacing-3);flex-direction:column;grid-area:body;justify-content:space-between;min-width:0;display:flex}.k-upload-item-input.k-input{--input-color-border:transparent;--input-padding:var(--spacing-2)var(--spacing-3);--input-rounded:0;font-size:var(--text-sm);border-bottom:1px solid var(--color-light);grid-area:input}.k-upload-item-input.k-input:focus-within{outline:2px solid var(--color-focus);z-index:1;border-radius:var(--rounded)}.k-upload-item-input .k-input-after{color:var(--color-gray-600)}.k-upload-item-meta{font-size:var(--text-xs);color:var(--color-gray-600)}.k-upload-item-error{font-size:var(--text-xs);color:var(--color-red-700);margin-top:.25rem}.k-upload-item-progress{--progress-height:.25rem;--progress-color-back:var(--color-light)}.k-upload-item-toggle{grid-area:toggle;align-self:end}.k-upload-item-toggle>*{padding:var(--spacing-3)}.k-upload-item[data-completed] .k-upload-item-progress{--progress-color-value:var(--color-green-400)}.k-upload-replace-dialog .k-upload-items{gap:var(--spacing-3);align-items:center;display:flex}.k-upload-original{border-radius:var(--rounded);box-shadow:var(--shadow);width:6rem;overflow:hidden}.k-upload-replace-dialog .k-upload-item{flex-grow:1}.k-drawer-body{padding:var(--drawer-body-padding);background:var(--color-background);flex-grow:1}.k-drawer-body .k-writer-input-wrapper:focus-within .k-toolbar:not([data-inline=true]),.k-drawer-body .k-textarea-input-wrapper:focus-within .k-toolbar,.k-drawer-body .k-table th{top:-1.5rem}.k-drawer-header{--button-height:calc(var(--drawer-header-height) - var(--spacing-1));height:var(--drawer-header-height);background:var(--color-white);line-height:1;font-size:var(--text-sm);flex-shrink:0;justify-content:space-between;align-items:center;padding-inline-start:var(--drawer-header-padding);display:flex}.k-drawer-breadcrumb{flex-grow:1}.k-drawer-options{align-items:center;padding-inline-end:.75rem;display:flex}.k-drawer-option{--button-width:var(--button-height)}.k-drawer-option[aria-disabled]{opacity:var(--opacity-disabled)}.k-notification.k-drawer-notification{padding:.625rem 1.5rem}.k-drawer-tabs{align-items:center;line-height:1;display:flex}.k-drawer-tab.k-button{--button-height:calc(var(--drawer-header-height) - var(--spacing-1));--button-padding:var(--spacing-3);font-size:var(--text-xs);align-items:center;display:flex;overflow-x:visible}.k-drawer-tab.k-button[aria-current]:after{bottom:-2px;inset-inline:var(--button-padding);content:"";background:var(--color-black);z-index:1;height:2px;position:absolute}:root{--drawer-body-padding:1.5rem;--drawer-color-back:var(--color-light);--drawer-header-height:2.5rem;--drawer-header-padding:1rem;--drawer-shadow:var(--shadow-xl);--drawer-width:50rem}.k-drawer-overlay+.k-drawer-overlay{--overlay-color-back:none}.k-drawer{--header-sticky-offset:calc(var(--drawer-body-padding)*-1);z-index:var(--z-toolbar);flex-basis:var(--drawer-width);background:var(--drawer-color-back);box-shadow:var(--drawer-shadow);flex-direction:column;display:flex;position:relative;container-type:inline-size}.k-drawer[aria-disabled]{pointer-events:none;display:none}.k-dropdown{position:relative}:root{--dropdown-color-bg:var(--color-black);--dropdown-color-text:var(--color-white);--dropdown-color-hr:#ffffff40;--dropdown-padding:var(--spacing-2);--dropdown-rounded:var(--rounded);--dropdown-shadow:var(--shadow-xl)}.k-dropdown-content{--dropdown-x:0;--dropdown-y:0;inset-block-start:0;inset-inline-start:initial;padding:var(--dropdown-padding);background:var(--dropdown-color-bg);border-radius:var(--dropdown-rounded);color:var(--dropdown-color-text);box-shadow:var(--dropdown-shadow);text-align:start;transform:translate(var(--dropdown-x),var(--dropdown-y));width:max-content;position:absolute;left:0}.k-dropdown-content::backdrop{background:0 0}.k-dropdown-content[data-align-x=end]{--dropdown-x:-100%}.k-dropdown-content[data-align-x=center]{--dropdown-x:-50%}.k-dropdown-content[data-align-y=top]{--dropdown-y:-100%}.k-dropdown-content hr{background:var(--dropdown-color-hr);height:1px;margin:.5rem 0}.k-dropdown-content[data-theme=light]{--dropdown-color-bg:var(--color-white);--dropdown-color-text:var(--color-black);--dropdown-color-hr:#0000001a}.k-dropdown-item.k-button{--button-align:flex-start;--button-color-text:var(--dropdown-color-text);--button-height:var(--height-sm);--button-rounded:var(--rounded-sm);--button-width:100%;gap:.75rem;display:flex}.k-dropdown-item.k-button:focus{outline:var(--outline)}.k-dropdown-item.k-button[aria-current]{--button-color-text:var(--color-blue-500)}.k-dropdown-item.k-button:not([aria-disabled]):hover{--button-color-back:var(--dropdown-color-hr)}.k-options-dropdown{justify-content:center;align-items:center;display:flex}:root{--picklist-rounded:var(--rounded-sm);--picklist-highlight:var(--color-yellow-500)}.k-picklist-input{--choice-color-text:currentColor;--button-rounded:var(--picklist-rounded)}.k-picklist-input-header{--input-rounded:var(--picklist-rounded)}.k-picklist-input-search{border-radius:var(--picklist-rounded);align-items:center;display:flex}.k-picklist-input-search .k-search-input{height:var(--button-height)}.k-picklist-input-search:focus-within{outline:var(--outline)}.k-picklist-dropdown .k-picklist-input-create:focus{outline:0}.k-picklist-dropdown .k-picklist-input-create[aria-disabled=true]{visibility:hidden}.k-picklist-input-options li+li{margin-top:var(--spacing-1)}.k-picklist-input-options .k-choice-input{padding-inline:var(--spacing-2);--choice-color-checked:var(--color-focus)}.k-picklist-input-options .k-choice-input:has(:checked){--choice-color-text:var(--color-focus)}.k-picklist-input-options .k-choice-input[aria-disabled=true]{--choice-color-text:var(--color-text-dimmed)}.k-picklist-input-options .k-choice-input:has(:focus-within){outline:var(--outline)}.k-picklist-input-options .k-choice-input b{font-weight:var(--font-normal);color:var(--picklist-highlight)}.k-picklist-input-more.k-button{--button-width:100%;--button-align:start;--button-color-text:var(--color-text-dimmed);padding-inline:var(--spacing-2)}.k-picklist-input-more.k-button .k-button-icon{position:relative;inset-inline-start:-1px}.k-picklist-input-empty{height:var(--button-height);padding:var(--spacing-1)var(--spacing-2);color:var(--color-text-dimmed);line-height:1.25rem}.k-picklist-dropdown{--color-text-dimmed:var(--color-gray-400);min-width:8rem;max-width:30rem;padding:0}.k-picklist-dropdown :where(.k-picklist-input-header,.k-picklist-input-body,.k-picklist-input-footer){padding:var(--dropdown-padding)}.k-picklist-dropdown .k-picklist-input-header{border-bottom:1px solid var(--dropdown-color-hr)}.k-picklist-dropdown .k-picklist-input-search{background:var(--dropdown-color-hr);padding-inline-end:var(--input-padding)}.k-picklist-dropdown .k-picklist-input-create{--button-rounded:1rem;--button-height:1.125rem}.k-picklist-dropdown .k-picklist-input-create:focus{--button-color-back:var(--color-blue-500);--button-color-text:var(--color-black)}.k-picklist-dropdown .k-picklist-input-body{max-height:calc(var(--button-height)*9.5 + 2px*9 + var(--dropdown-padding));outline-offset:-2px;overscroll-behavior:contain;scroll-padding-top:var(--dropdown-padding);scroll-padding-bottom:var(--dropdown-padding);overflow-y:auto}.k-picklist-dropdown .k-picklist-input-options .k-choice-input{--choice-color-border:var(--dropdown-color-hr);--choice-color-back:var(--dropdown-color-hr);--choice-color-info:var(--color-text-dimmed);min-height:var(--button-height);border-radius:var(--picklist-rounded);padding-block:.375rem}.k-picklist-dropdown .k-picklist-input-options li+li{margin-top:0}.k-picklist-dropdown .k-picklist-input-options .k-choice-input[aria-disabled=true] input{--choice-color-border:var(--dropdown-color-hr);--choice-color-back:var(--dropdown-color-hr);--choice-color-checked:var(--dropdown-color-hr);opacity:var(--opacity-disabled)}.k-picklist-dropdown .k-picklist-input-options .k-choice-input:not([aria-disabled=true]):hover{background-color:var(--dropdown-color-hr)}.k-picklist-dropdown .k-picklist-input-options .k-choice-input:not([aria-disabled=true]):focus-within{--choice-color-text:var(--color-blue-500)}.k-picklist-dropdown .k-picklist-input-more.k-button:hover{--button-color-back:var(--dropdown-color-hr)}.k-picklist-dropdown .k-picklist-input-body+.k-picklist-input-footer{border-top:1px solid var(--dropdown-color-hr)}.k-counter{font-size:var(--text-xs);color:var(--color-gray-900)}.k-counter[data-invalid=true]{box-shadow:none;color:var(--color-red-700);border:0}.k-counter-rules{color:var(--color-gray-600);font-weight:var(--font-normal);padding-inline-start:.5rem}.k-form-submitter{display:none}.k-field-header{margin-bottom:var(--spacing-2);position:relative}.k-field[data-disabled=true]{cursor:not-allowed}.k-field[data-disabled=true] *{pointer-events:none}.k-field[data-disabled=true] .k-text[data-theme=help] *{pointer-events:initial}.k-field:focus-within>.k-field-header>.k-field-counter{display:block}.k-field-footer{margin-top:var(--spacing-2)}.k-fieldset{border:0}:root{--input-color-back:var(--color-white);--input-color-border:var(--color-border);--input-color-description:var(--color-text-dimmed);--input-color-icon:currentColor;--input-color-placeholder:var(--color-gray-600);--input-color-text:currentColor;--input-font-family:var(--font-sans);--input-font-size:var(--text-sm);--input-height:2.25rem;--input-leading:1;--input-outline-focus:var(--outline);--input-padding:var(--spacing-2);--input-padding-multiline:.475rem var(--input-padding);--input-rounded:var(--rounded);--input-shadow:none}@media (pointer:coarse){:root{--input-font-size:var(--text-md);--input-padding-multiline:.375rem var(--input-padding)}}.k-input{line-height:var(--input-leading);background:var(--input-color-back);border-radius:var(--input-rounded);outline:1px solid var(--input-color-border);color:var(--input-color-text);min-height:var(--input-height);box-shadow:var(--input-shadow);font-family:var(--input-font-family);font-size:var(--input-font-size);border:0;align-items:center;display:flex}.k-input:focus-within{outline:var(--input-outline-focus)}.k-input-element{flex-grow:1}.k-input-icon{color:var(--input-color-icon);width:var(--input-height);justify-content:center;align-items:center;display:flex}.k-input-icon-button{flex-shrink:0;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.k-input-description{color:var(--input-color-description);padding-inline:var(--input-padding)}.k-input-before{padding-inline-end:0}.k-input-after{padding-inline-start:0}.k-input :where(.k-input-description,.k-input-icon){flex-shrink:0;align-self:stretch;align-items:center;display:flex}.k-input[data-disabled=true]{--input-color-back:var(--color-background);--input-color-icon:var(--color-gray-600);pointer-events:none}.k-login-code-form .k-user-info{margin-bottom:var(--spacing-6)}.k-structure-backdrop{z-index:2;height:100vh;position:absolute;inset:0}.k-structure-form section{z-index:3;border-radius:var(--rounded-xs);border:1px solid var(--color-border);background:var(--color-background);margin-bottom:1px;position:relative;box-shadow:0 0 0 3px #1111110d}.k-structure-form-fields{padding:1.5rem 1.5rem 2rem}.k-structure-form-buttons{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.25rem .5rem;display:flex}@container (width<=30rem){.k-pagination-details{display:none}}.k-block-type-code-editor{--input-color-border:none;--input-color-back:var(--color-black);--input-color-text:var(--color-white);--input-font-family:var(--font-mono);--input-outline-focus:none;--input-padding:var(--spacing-3);--input-padding-multiline:var(--input-padding);position:relative}.k-block-type-code-editor .k-input[data-type=textarea]{white-space:pre-wrap}.k-block-type-code-editor-language{--input-font-size:var(--text-xs);inset-inline-end:0;position:absolute;bottom:0}.k-block-type-code-editor-language .k-input-element{padding-inline-start:1.5rem}.k-block-type-code-editor-language .k-input-icon{inset-inline-start:0}.k-block-type-default .k-block-title{line-height:1.5em}.k-block-container.k-block-container-type-fields{padding-block:0}.k-block-container:not([data-hidden=true]) .k-block-type-fields>:not([data-collapsed=true]){padding-bottom:var(--spacing-3)}.k-block-type-fields-header{justify-content:space-between;display:flex}.k-block-type-fields-header .k-block-title{padding-block:var(--spacing-3);cursor:pointer}.k-block-type-fields-form{background-color:var(--color-gray-200);padding:var(--spacing-6)var(--spacing-6)var(--spacing-8);border-radius:var(--rounded-sm)}.k-block-container-type-fields[data-hidden=true] :where(.k-drawer-tabs,.k-block-type-fields-form){display:none}.k-block-type-gallery ul{grid-gap:.75rem;cursor:pointer;grid-template-columns:repeat(auto-fit,minmax(6rem,1fr));justify-content:center;align-items:center;line-height:0;display:grid}.k-block-type-gallery-placeholder{background:var(--color-background)}.k-block-type-gallery figcaption{color:var(--color-gray-600);font-size:var(--text-sm);text-align:center;padding-top:.5rem}.k-block-type-heading-input{line-height:1.25em;font-size:var(--text-size);font-weight:var(--font-bold);align-items:center;display:flex}.k-block-type-heading-input[data-level=h1]{--text-size:var(--text-3xl);line-height:1.125em}.k-block-type-heading-input[data-level=h2]{--text-size:var(--text-2xl)}.k-block-type-heading-input[data-level=h3]{--text-size:var(--text-xl)}.k-block-type-heading-input[data-level=h4]{--text-size:var(--text-lg)}.k-block-type-heading-input[data-level=h5]{--text-size:var(--text-md);line-height:1.5em}.k-block-type-heading-input[data-level=h6]{--text-size:var(--text-sm);line-height:1.5em}.k-block-type-heading-input .k-writer .ProseMirror strong{font-weight:700}.k-block-type-heading-level{--input-color-back:transparent;--input-color-border:none;--input-color-text:var(--color-gray-600);font-weight:var(--font-bold);text-transform:uppercase}.k-block-type-image .k-block-figure-container{text-align:center;line-height:0}.k-block-type-image-auto{max-width:100%;max-height:30rem;margin-inline:auto}.k-block-type-line hr{border:0;border-top:1px solid var(--color-border);margin-block:.75rem}.k-block-type-list-input{--input-color-border:none;--input-outline-focus:none}.k-block-type-markdown-input{--input-color-back:var(--color-light);--input-color-border:none;--input-outline-focus:none;--input-padding-multiline:var(--spacing-3)}.k-block-type-quote-editor{border-inline-start:2px solid var(--color-black);padding-inline-start:var(--spacing-3)}.k-block-type-quote-text{font-size:var(--text-xl);margin-bottom:var(--spacing-1);line-height:1.25em}.k-block-type-quote-citation{color:var(--color-text-dimmed);font-style:italic}.k-block-type-table-preview{cursor:pointer;border:1px solid var(--color-gray-300);border-spacing:0;border-radius:var(--rounded-sm);overflow:hidden}.k-block-type-table-preview td,.k-block-type-table-preview th{text-align:start;line-height:1.5em;font-size:var(--text-sm)}.k-block-type-table-preview th{padding:.5rem .75rem}.k-block-type-table-preview td:not(.k-table-index-column){padding:0 .75rem}.k-block-type-table-preview td>*,.k-block-type-table-preview td [class$=-field-preview]{padding:0}.k-block-type-text-input{height:100%;line-height:1.5}.k-block-container.k-block-container-type-text{padding:0}.k-block-type-text-input.k-writer[data-toolbar-inline=true]{padding:var(--spacing-3)}.k-block-type-text-input.k-writer:not([data-toolbar-inline=true])>.ProseMirror,.k-block-type-text-input.k-writer:not([data-toolbar-inline=true])[data-placeholder][data-empty=true]:before{padding:var(--spacing-3)var(--spacing-6)}.k-block-container{background:var(--color-white);border-radius:var(--rounded);padding:.75rem;position:relative}.k-block-container:not(:last-of-type){border-bottom:1px dashed #0000001a}.k-block-container:focus{outline:0}.k-block-container[data-selected=true]{z-index:2;outline:var(--outline);border-bottom-color:#0000}.k-block-container[data-batched=true]:after{content:"";mix-blend-mode:multiply;background:#b1c2d82d;position:absolute;inset:0}.k-block-container .k-block-options{top:0;margin-top:calc(2px - 1.75rem);display:none;position:absolute;inset-inline-end:.75rem}.k-block-container[data-last-selected=true]>.k-block-options{display:flex}.k-block-container[data-hidden=true] .k-block{opacity:.25}.k-drawer-options .k-drawer-option[data-disabled=true]{vertical-align:middle;display:inline-grid}[data-disabled=true] .k-block-container{background:var(--color-background)}.k-block-container:is(.k-sortable-ghost,.k-sortable-fallback) .k-block{max-height:4rem;position:relative;overflow:hidden}.k-block-container:is(.k-sortable-ghost,.k-sortable-fallback) .k-block:after{content:"";background:linear-gradient(to top,var(--color-white),transparent);width:100%;height:2rem;position:absolute;bottom:0}.k-blocks{border-radius:var(--rounded)}.k-blocks:not([data-empty=true],[data-disabled=true]){background:var(--color-white);box-shadow:var(--shadow)}.k-blocks[data-disabled=true]:not([data-empty=true]){border:1px solid var(--input-color-border)}.k-blocks-list[data-multi-select-key=true]>.k-block-container *{pointer-events:none}.k-blocks-list[data-multi-select-key=true]>.k-block-container .k-blocks *{pointer-events:all}.k-blocks .k-sortable-ghost{outline:2px solid var(--color-focus);cursor:grabbing;cursor:-moz-grabbing;cursor:-webkit-grabbing;box-shadow:0 5px 10px #11111140}.k-blocks-list>.k-blocks-empty{align-items:center;display:flex}.k-block-figure{cursor:pointer}.k-block-figure iframe{pointer-events:none;background:var(--color-black);border:0}.k-block-figure figcaption{color:var(--color-text-dimmed);font-size:var(--text-sm);text-align:center;padding-top:.5rem}.k-block-figure-empty{--button-width:100%;--button-height:6rem;--button-color-text:var(--color-text-dimmed);--button-color-back:var(--color-gray-200)}.k-block-figure-empty,.k-block-figure-container>*{border-radius:var(--rounded-sm)}.k-block-options{--toolbar-size:30px;box-shadow:var(--shadow-toolbar)}.k-block-options>.k-button:not(:last-of-type){border-inline-end:1px solid var(--color-background)}.k-block-options .k-dropdown-content{margin-top:.5rem}.k-block-importer .k-dialog-body{padding:0}.k-block-importer label{padding:var(--spacing-6)var(--spacing-6)0;color:var(--color-text-dimmed);line-height:var(--leading-normal);display:block}.k-block-importer label small{font-size:inherit;display:block}.k-block-importer textarea{font:inherit;color:var(--color-white);padding:var(--spacing-6);resize:none;background:0 0;border:0;width:100%;height:20rem}.k-block-importer textarea:focus{outline:0}.k-block-selector .k-headline{margin-bottom:1rem}.k-block-selector details+details{margin-top:var(--spacing-6)}.k-block-selector summary{font-size:var(--text-xs);cursor:pointer;color:var(--color-text-dimmed)}.k-block-selector details:only-of-type summary{pointer-events:none}.k-block-selector summary:focus{outline:0}.k-block-selector summary:focus-visible{color:var(--color-focus)}.k-block-types{grid-gap:2px;grid-template-columns:repeat(1,1fr);margin-top:.75rem;display:grid}.k-block-types .k-button{--button-color-icon:var(--color-text);--button-color-back:var(--color-white);--button-padding:var(--spacing-3);box-shadow:var(--shadow);justify-content:start;gap:1rem;width:100%}.k-block-types .k-button[aria-disabled]{opacity:var(--opacity-disabled);--button-color-back:var(--color-gray-200);box-shadow:none}.k-clipboard-hint{line-height:var(--leading-normal);font-size:var(--text-xs);color:var(--color-text-dimmed);padding-top:1.5rem}.k-clipboard-hint small{font-size:inherit;color:var(--color-text-dimmed);display:block}.k-block-title{align-items:center;gap:var(--spacing-2);min-width:0;padding-inline-end:.75rem;line-height:1;display:flex}.k-block-icon{--icon-color:var(--color-gray-600);width:1rem}.k-block-label{color:var(--color-text-dimmed);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.k-blocks-field{position:relative}.k-blocks-field>footer{margin-top:var(--spacing-3)}.k-string-input{padding:var(--input-padding);border-radius:var(--input-rounded)}.k-string-input:focus{outline:0}.k-string-input[data-font=monospace]{font-family:var(--font-mono)}.k-color-field{--color-frame-size:calc(var(--input-height) - var(--spacing-2))}.k-color-field .k-input-before{align-items:center;padding-inline-start:var(--spacing-1)}.k-color-field-options{--color-frame-size:var(--input-height)}.k-color-field-picker{padding:var(--spacing-3)}.k-color-field-picker-toggle{--color-frame-rounded:var(--rounded-sm);border-radius:var(--color-frame-rounded)}.k-color-field .k-colorname-input{padding-inline:var(--input-padding)}.k-color-field .k-colorname-input:focus{outline:0}.k-date-field-body{gap:var(--spacing-2);display:grid}@container (width>=20rem){.k-date-field-body[data-has-time=true]{grid-template-columns:1fr minmax(6rem,9rem)}}.k-text-input{padding:var(--input-padding);border-radius:var(--input-rounded)}.k-text-input:focus{outline:0}.k-text-input[data-font=monospace]{font-family:var(--font-mono)}.k-models-field[data-disabled=true] .k-item *{pointer-events:all!important}.k-headline-field{padding-top:1.5rem;position:relative}.k-fieldset>.k-grid .k-column:first-child .k-headline-field{padding-top:0}.k-headline-field h2.k-headline{font-weight:var(--font-normal)}.k-headline-field footer{margin-top:var(--spacing-2)}.k-info-field .k-headline{padding-bottom:.75rem;line-height:1.25rem}.k-layout-field>footer{margin-top:var(--spacing-3)}.k-line-field{border:0;width:auto;height:3rem;position:relative}.k-line-field:after{content:"";top:50%;background:var(--color-border);height:1px;margin-top:-1px;position:absolute;inset-inline:0}.k-link-input-header{height:var(--input-height);grid-area:header;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.25rem;display:grid}.k-link-input-toggle.k-button{--button-height:var(--height-sm);--button-rounded:var(--rounded-sm);--button-color-back:var(--color-gray-200);margin-inline-start:.25rem}.k-link-input-model{--tag-height:var(--height-sm);--tag-color-back:var(--color-gray-200);--tag-color-text:var(--color-black);--tag-color-toggle:var(--tag-color-text);--tag-color-toggle-border:var(--color-gray-300);--tag-color-focus-back:var(--tag-color-back);--tag-color-focus-text:var(--tag-color-text);--tag-rounded:var(--rounded-sm);justify-content:space-between;margin-inline-end:var(--spacing-1);display:flex;overflow:hidden}.k-link-input-model-placeholder.k-button{--button-align:flex-start;--button-color-text:var(--color-gray-600);--button-height:var(--height-sm);--button-padding:var(--spacing-2);white-space:nowrap;flex-grow:1;align-items:center;overflow:hidden}.k-link-input-model-toggle{--button-height:var(--height-sm);--button-width:var(--height-sm)}.k-link-input-body{border-top:1px solid var(--color-gray-300);background:var(--color-gray-100);--tree-color-back:var(--color-gray-100);--tree-color-hover-back:var(--color-gray-200);display:grid;overflow:hidden}.k-link-input-body[data-type=page] .k-page-browser{padding:var(--spacing-2);padding-bottom:calc(var(--spacing-2) - 1px);width:100%;overflow:auto;container-type:inline-size}.k-writer{gap:var(--spacing-1);grid-template-areas:"content";width:100%;display:grid;position:relative}.k-writer .ProseMirror{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;white-space:pre-wrap;font-variant-ligatures:none;padding:var(--input-padding-multiline);grid-area:content}.k-writer .ProseMirror:focus{outline:0}.k-writer .ProseMirror *{caret-color:currentColor}.k-writer .ProseMirror hr.ProseMirror-selectednode{outline:var(--outline)}.k-writer[data-placeholder][data-empty=true]:before{content:attr(data-placeholder);color:var(--input-color-placeholder);pointer-events:none;white-space:pre-wrap;word-wrap:break-word;line-height:var(--text-line-height);padding:var(--input-padding-multiline);grid-area:content}.k-list-input.k-writer[data-placeholder][data-empty=true]:before{padding-inline-start:2.5em}.k-list-field .k-list-input .ProseMirror,.k-list-field .k-list-input:before{padding:.475rem .5rem .475rem .75rem}:root{--tags-gap:.375rem}.k-tags{gap:var(--tags-gap);flex-wrap:wrap;align-items:center;display:inline-flex}.k-tags .k-sortable-ghost{outline:var(--outline)}.k-tags[data-layout=list],.k-tags[data-layout=list] .k-tag{width:100%}.k-tags.k-draggable .k-tag-text{cursor:grab}.k-tags.k-draggable .k-tag-text:active{cursor:grabbing}.k-multiselect-input{padding:var(--tags-gap);cursor:pointer}.k-multiselect-input-toggle.k-button{opacity:0}.k-tags-input{padding:var(--tags-gap);cursor:pointer}.k-tags-input-toggle.k-button{--button-color-text:var(--input-color-placeholder);opacity:0}.k-tags-input-toggle.k-button:focus{--button-color-text:var(--input-color-text)}.k-tags-input:focus-within .k-tags-input-toggle{opacity:1}.k-tags-input .k-picklist-dropdown{margin-top:var(--spacing-1)}.k-tags-input .k-picklist-dropdown .k-choice-input{gap:0}.k-tags-input .k-picklist-dropdown .k-choice-input:focus-within{outline:var(--outline)}.k-tags-input .k-picklist-dropdown .k-choice-input input{opacity:0;width:0}.k-number-input{padding:var(--input-padding);border-radius:var(--input-rounded)}.k-number-input:focus{outline:0}.k-table.k-object-field-table{table-layout:auto}.k-table.k-object-field-table tbody td{max-width:0}.k-range-input{--range-track-height:1px;--range-track-back:var(--color-gray-300);--range-tooltip-back:var(--color-black);border-radius:var(--range-track-height);align-items:center;display:flex}.k-range-input input[type=range]:focus{outline:0}.k-range-input-tooltip{color:var(--color-white);font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-align:center;border-radius:var(--rounded-sm);background:var(--range-tooltip-back);white-space:nowrap;align-items:center;max-width:20%;margin-inline-start:1rem;padding:0 .25rem;line-height:1;display:flex;position:relative}.k-range-input-tooltip:after{top:50%;border-block:3px solid #0000;border-inline-end:3px solid var(--range-tooltip-back);content:"";width:0;height:0;position:absolute;inset-inline-start:-3px;transform:translateY(-50%)}.k-range-input-tooltip>*{padding:var(--spacing-1)}.k-range-input[data-disabled=true]{--range-tooltip-back:var(--color-gray-600)}.k-input[data-type=range] .k-range-input{padding-inline:var(--input-padding)}.k-select-input{padding:var(--input-padding);border-radius:var(--input-rounded);display:block;position:relative;overflow:hidden}.k-select-input[data-empty=true]{color:var(--input-color-placeholder)}.k-select-input-native{opacity:0;z-index:1;position:absolute;inset:0}.k-select-input-native[disabled]{cursor:default}.k-input[data-type=select]{position:relative}.k-input[data-type=select] .k-input-icon{position:absolute;inset-block:0;inset-inline-end:0}.k-structure-field:not([data-disabled=true]) td.k-table-column{cursor:pointer}.k-structure-field .k-table+footer{margin-top:var(--spacing-3)}.k-field-counter{display:none}.k-text-field:focus-within .k-field-counter{display:block}.k-toolbar.k-textarea-toolbar{border-bottom:1px solid var(--toolbar-border);border-end-end-radius:0;border-end-start-radius:0}.k-toolbar.k-textarea-toolbar>.k-button:first-child{border-end-start-radius:0}.k-toolbar.k-textarea-toolbar>.k-button:last-child{border-end-end-radius:0}.k-textarea-input[data-size=small]{--textarea-size:7.5rem}.k-textarea-input[data-size=medium]{--textarea-size:15rem}.k-textarea-input[data-size=large]{--textarea-size:30rem}.k-textarea-input[data-size=huge]{--textarea-size:45rem}.k-textarea-input-wrapper{display:block;position:relative}.k-textarea-input-native{resize:none;min-height:var(--textarea-size)}.k-textarea-input-native:focus{outline:0}.k-textarea-input-native[data-font=monospace]{font-family:var(--font-mono)}.k-input[data-type=textarea] .k-input-element{min-width:0}.k-input[data-type=textarea] .k-textarea-input-native{padding:var(--input-padding-multiline)}.k-input[data-type=toggle]{--input-color-border:transparent;--input-shadow:var(--shadow)}.k-input[data-type=toggle] .k-input-before{padding-inline-end:calc(var(--input-padding)/2)}.k-input[data-type=toggle] .k-toggle-input{padding-inline-start:var(--input-padding)}.k-input[data-type=toggle][data-disabled]{box-shadow:none}.k-input[data-type=toggles]{display:inline-flex}.k-input[data-type=toggles].grow{display:flex}.k-input[data-type=toggles]:has(.k-empty){outline:0;display:flex}.k-toggles-input{grid-template-columns:repeat(var(--options),minmax(0,1fr));border-radius:var(--rounded);background:var(--color-border);gap:1px;line-height:1;display:grid;overflow:hidden}.k-toggles-input li{height:var(--field-input-height);background:var(--color-white)}.k-toggles-input label{background:var(--color-white);cursor:pointer;font-size:var(--text-sm);padding:0 var(--spacing-3);justify-content:center;align-items:center;height:100%;line-height:1.25;display:flex}.k-toggles-input li[data-disabled=true] label{color:var(--color-text-dimmed);background:var(--color-light)}.k-toggles-input .k-icon+.k-toggles-text{margin-inline-start:var(--spacing-2)}.k-toggles-input input:focus:not(:checked)+label{background:var(--color-blue-200)}.k-toggles-input input:checked+label{background:var(--color-black);color:var(--color-white)}.k-alpha-input{--range-track-back:linear-gradient(to right,transparent,currentColor);--range-track-height:var(--range-thumb-size);color:#000;background:var(--color-white)var(--pattern-light)}.k-calendar-input{--button-height:var(--height-sm);--button-width:var(--button-height);--button-padding:0;padding:var(--spacing-2);width:min-content}.k-calendar-table{table-layout:fixed;min-width:15rem}.k-calendar-input .k-button{justify-content:center}.k-calendar-input>nav{direction:ltr;margin-bottom:var(--spacing-2);align-items:center;display:flex}.k-calendar-selects{flex-grow:1;justify-content:center;align-items:center;display:flex}[dir=ltr] .k-calendar-selects{direction:ltr}[dir=rtl] .k-calendar-selects{direction:rtl}.k-calendar-selects .k-select-input{text-align:center;height:var(--button-height);border-radius:var(--input-rounded);align-items:center;padding:0 .5rem;display:flex}.k-calendar-selects .k-select-input:focus-within{outline:var(--outline)}.k-calendar-input th{color:var(--color-gray-500);font-size:var(--text-xs);text-align:center;padding-block:.5rem}.k-calendar-day{padding:2px}.k-calendar-day[aria-current=date] .k-button{text-decoration:underline}.k-calendar-day[aria-selected=date] .k-button,.k-calendar-day[aria-selected=date] .k-button:focus{--button-color-text:var(--color-text);--button-color-back:var(--color-blue-500)}.k-calendar-day[aria-selected=date] .k-button:focus-visible{outline-offset:2px}.k-calendar-today{padding-top:var(--spacing-2);text-align:center}.k-calendar-today .k-button{--button-width:auto;--button-padding:var(--spacing-3);font-size:var(--text-xs);text-decoration:underline}.k-choice-input{gap:var(--spacing-3);min-width:0;display:flex}.k-choice-input input{top:2px}.k-choice-input-label{color:var(--choice-color-text);flex-direction:column;min-width:0;line-height:1.25rem;display:flex}.k-choice-input-label>*{text-overflow:ellipsis;display:block;overflow:hidden}.k-choice-input-label-info{color:var(--choice-color-info)}.k-choice-input[aria-disabled]{cursor:not-allowed}:where(.k-checkboxes-field,.k-radio-field) .k-choice-input{background:var(--input-color-back);min-height:var(--input-height);padding-block:var(--spacing-2);padding-inline:var(--spacing-3);border-radius:var(--input-rounded);box-shadow:var(--shadow)}.k-coloroptions-input{--color-preview-size:var(--input-height)}.k-coloroptions-input ul{grid-template-columns:repeat(auto-fill,var(--color-preview-size));gap:var(--spacing-2);display:grid}.k-coloroptions-input input:focus+.k-color-frame{outline:var(--outline)}.k-coloroptions-input[disabled] label{opacity:var(--opacity-disabled);cursor:not-allowed}.k-coloroptions-input input:checked+.k-color-frame{outline-offset:2px;outline:2px solid}.k-colorpicker-input{--h:0;--s:0%;--l:0%;--a:1;--range-thumb-size:.75rem;--range-track-height:.75rem;gap:var(--spacing-3);flex-direction:column;width:max-content;display:flex}.k-colorpicker-input .k-coords-input{border-radius:var(--rounded-sm);aspect-ratio:1;background:linear-gradient(to bottom,transparent,#000),linear-gradient(to right,#fff,hsl(var(--h),100%,50%))}.k-colorpicker-input .k-alpha-input{color:hsl(var(--h),var(--s),var(--l))}.k-colorpicker-input .k-coloroptions-input ul{grid-template-columns:repeat(6,1fr)}.k-coords-input{position:relative;display:block!important}.k-coords-input img{width:100%}.k-coords-input-thumb{aspect-ratio:1;width:var(--range-thumb-size);background:var(--range-thumb-color);border-radius:var(--range-thumb-size);box-shadow:var(--range-thumb-shadow);cursor:move;position:absolute;transform:translate(-50%,-50%)}.k-coords-input[data-empty] .k-coords-input-thumb{opacity:0}.k-coords-input-thumb:active{cursor:grabbing}.k-coords-input:focus-within{outline:var(--outline)}.k-coords-input[aria-disabled]{pointer-events:none;opacity:var(--opacity-disabled)}.k-coords-input .k-coords-input-thumb:focus{outline:var(--outline)}.k-hue-input{--range-track-back:linear-gradient(to right,red 0%,#ff0 16.67%,#0f0 33.33%,#0ff 50%,#00f 66.67%,#f0a 83.33%,red 100%)no-repeat;--range-track-height:var(--range-thumb-size)}.k-timeoptions-input{--button-height:var(--height-sm);gap:var(--spacing-3);grid-template-columns:1fr 1fr;display:grid}.k-timeoptions-input h3{padding-inline:var(--button-padding);height:var(--button-height);margin-bottom:var(--spacing-1);align-items:center;display:flex}.k-timeoptions-input hr{margin:var(--spacing-2)var(--spacing-3)}.k-timeoptions-input .k-button[aria-selected=time]{--button-color-text:var(--color-text);--button-color-back:var(--color-blue-500)}.k-layout{--layout-border-color:var(--color-gray-300);--layout-toolbar-width:2rem;box-shadow:var(--shadow);background:#fff;padding-inline-end:var(--layout-toolbar-width);position:relative}[data-disabled=true] .k-layout{padding-inline-end:0}.k-layout:not(:last-of-type){margin-bottom:1px}.k-layout:focus{outline:0}.k-layout-toolbar{width:var(--layout-toolbar-width);padding-bottom:var(--spacing-2);font-size:var(--text-sm);background:var(--color-gray-100);border-inline-start:1px solid var(--color-light);color:var(--color-gray-500);flex-direction:column;justify-content:space-between;align-items:center;display:flex;position:absolute;inset-block:0;inset-inline-end:0}.k-layout-toolbar:hover{color:var(--color-black)}.k-layout-toolbar-button{width:var(--layout-toolbar-width);height:var(--layout-toolbar-width)}.k-layout-columns.k-grid{grid-gap:1px;background:var(--layout-border-color);background:var(--color-gray-300)}.k-layout:not(:first-child) .k-layout-columns.k-grid{border-top:0}.k-layout-column{background:var(--color-white);flex-direction:column;height:100%;min-height:6rem;display:flex;position:relative}.k-layout-column:focus{outline:0}.k-layout-column .k-blocks{box-shadow:none;background:0 0;background:var(--color-white);height:100%;min-height:4rem;padding:0}.k-layout-column .k-blocks[data-empty=true]{min-height:6rem}.k-layout-column .k-blocks-list{flex-direction:column;height:100%;display:flex}.k-layout-column .k-blocks .k-block-container:last-of-type{flex-grow:1}.k-layout-column .k-blocks-empty.k-box{--box-color-back:transparent;opacity:0;border:0;justify-content:center;transition:opacity .3s;position:absolute;inset:0}.k-layout-column .k-blocks-empty:hover{opacity:1}.k-layouts .k-sortable-ghost{outline:2px solid var(--color-focus);cursor:grabbing;z-index:1;position:relative;box-shadow:0 5px 10px #11111140}.k-layout-selector h3{margin-top:-.5rem;margin-bottom:var(--spacing-3)}.k-layout-selector-options{gap:var(--spacing-6);grid-template-columns:repeat(3,1fr);display:grid}@media screen and (width>=65em){.k-layout-selector-options{grid-template-columns:repeat(var(--columns),1fr)}}.k-layout-selector-option{--color-border:hsla(var(--color-gray-hs),0%,6%);--color-back:var(--color-white);border-radius:var(--rounded)}.k-layout-selector-option:focus-visible{outline:var(--outline);outline-offset:-1px}.k-layout-selector-option .k-grid{border:1px solid var(--color-border);grid-template-columns:repeat(var(--columns),1fr);cursor:pointer;background:var(--color-border);border-radius:var(--rounded);box-shadow:var(--shadow);gap:1px;height:5rem;overflow:hidden}.k-layout-selector-option .k-column{grid-column:span var(--span);background:var(--color-back);height:100%}.k-layout-selector-option:hover{--color-border:var(--color-gray-500);--color-back:var(--color-gray-100)}.k-layout-selector-option[aria-current]{--color-border:var(--color-focus);--color-back:var(--color-blue-300)}.k-bubbles{gap:.25rem;display:flex}.k-bubbles-field-preview{--bubble-back:var(--color-light);--bubble-text:var(--color-black);padding:.375rem var(--table-cell-padding);overflow:hidden}.k-bubbles-field-preview .k-bubbles{gap:.375rem}.k-color-field-preview{--color-frame-rounded:var(--tag-rounded);--color-frame-size:var(--tag-height);padding:.375rem var(--table-cell-padding);align-items:center;gap:var(--spacing-2);display:flex}.k-text-field-preview{text-overflow:ellipsis;white-space:nowrap;padding:.325rem .75rem;overflow-x:hidden}.k-url-field-preview{padding-inline:var(--table-cell-padding)}.k-url-field-preview[data-link]{color:var(--link-color)}.k-url-field-preview a{height:var(--height-xs);padding-inline:var(--spacing-1);margin-inline:calc(var(--spacing-1)*-1);border-radius:var(--rounded);align-items:center;min-width:0;max-width:100%;display:inline-flex}.k-url-field-preview a>*{white-space:nowrap;text-overflow:ellipsis;text-underline-offset:var(--link-underline-offset);text-decoration:underline;overflow:hidden}.k-url-field-preview a:hover{color:var(--color-black)}.k-flag-field-preview{--button-height:var(--table-row-height);--button-width:100%;outline-offset:-2px}.k-html-field-preview{padding:.375rem var(--table-cell-padding);text-overflow:ellipsis;overflow:hidden}.k-image-field-preview{height:100%}.k-toggle-field-preview{padding-inline:var(--table-cell-padding)}:root{--toolbar-size:var(--height);--toolbar-text:var(--color-black);--toolbar-back:var(--color-white);--toolbar-hover:#efefef80;--toolbar-border:#0000001a;--toolbar-current:var(--color-focus)}.k-toolbar{height:var(--toolbar-size);color:var(--toolbar-text);background:var(--toolbar-back);border-radius:var(--rounded);align-items:center;max-width:100%;display:flex;overflow:auto hidden}.k-toolbar[data-theme=dark]{--toolbar-text:var(--color-white);--toolbar-back:var(--color-black);--toolbar-hover:#fff3;--toolbar-border:var(--color-gray-800)}.k-toolbar>hr{height:var(--toolbar-size);border-left:1px solid var(--toolbar-border);width:1px}.k-toolbar-button.k-button{--button-width:var(--toolbar-size);--button-height:var(--toolbar-size);--button-rounded:0;outline-offset:-2px}.k-toolbar-button:hover{--button-color-back:var(--toolbar-hover)}.k-toolbar .k-button[aria-current]{--button-color-text:var(--toolbar-current)}.k-toolbar>.k-button:first-child{border-start-start-radius:var(--rounded);border-end-start-radius:var(--rounded)}.k-toolbar>.k-button:last-child{border-start-end-radius:var(--rounded);border-end-end-radius:var(--rounded)}:where(.k-textarea-input,.k-writer-input):not(:focus-within){--toolbar-text:var(--color-gray-400);--toolbar-border:var(--color-background)}:where(.k-textarea-input,.k-writer-input):focus-within .k-toolbar:not([data-inline=true]){top:var(--header-sticky-offset);z-index:1;position:sticky;inset-inline:0;box-shadow:0 2px 5px #0000000d}.k-writer:not([data-toolbar-inline=true]):not([data-disabled=true]){grid-template-areas:"topbar""content";grid-template-rows:var(--toolbar-size)1fr;gap:0}.k-writer:not(:focus-within){--toolbar-current:currentColor}.k-writer-toolbar[data-inline=true]{z-index:calc(var(--z-dropdown) + 1);box-shadow:var(--shadow-toolbar);max-width:none;position:absolute}.k-writer-toolbar:not([data-inline=true]){border-bottom:1px solid var(--toolbar-border);border-end-end-radius:0;border-end-start-radius:0}.k-writer-toolbar:not([data-inline=true])>.k-button:first-child{border-end-start-radius:0}.k-writer-toolbar:not([data-inline=true])>.k-button:last-child{border-end-end-radius:0}.k-aspect-ratio{padding-bottom:100%;display:block;position:relative;overflow:hidden}.k-aspect-ratio>*{object-fit:contain;width:100%;height:100%;inset:0;position:absolute!important}.k-aspect-ratio[data-cover=true]>*{object-fit:cover}:root{--bar-height:var(--height-xs)}.k-bar{align-items:center;gap:var(--spacing-3);height:var(--bar-height);justify-content:space-between;display:flex}.k-bar:where([data-align=center]){justify-content:center}.k-bar:where([data-align=end]):has(:first-child:last-child){justify-content:end}.k-bar-slot{flex-grow:1}.k-bar-slot[data-position=center]{text-align:center}.k-bar-slot[data-position=right]{text-align:end}:root{--box-height:var(--field-input-height);--box-padding-inline:var(--spacing-2);--box-font-size:var(--text-sm);--box-color-back:none;--box-color-text:currentColor}.k-box{--icon-color:var(--box-color-icon);--text-font-size:var(--box-font-size);align-items:center;gap:var(--spacing-2);color:var(--box-color-text);background:var(--box-color-back);word-wrap:break-word;width:100%;display:flex}.k-box[data-theme]{--box-color-back:var(--theme-color-back);--box-color-text:var(--theme-color-text);--box-color-icon:var(--theme-color-700);min-height:var(--box-height);padding:.375rem var(--box-padding-inline);border-radius:var(--rounded);line-height:1.25}.k-box[data-theme=text],.k-box[data-theme=white]{box-shadow:var(--shadow)}.k-box[data-theme=text]{padding:var(--spacing-6)}.k-box[data-theme=none]{padding:0}.k-box[data-align=center]{justify-content:center}:root{--bubble-size:1.525rem;--bubble-back:var(--color-light);--bubble-text:var(--color-black)}.k-bubble{height:var(--bubble-size);white-space:nowrap;background:var(--bubble-back);color:var(--bubble-text);border-radius:var(--rounded);width:min-content;line-height:1.5;overflow:hidden}.k-bubble .k-frame{width:var(--bubble-size);height:var(--bubble-size)}.k-bubble[data-has-text=true]{gap:var(--spacing-2);font-size:var(--text-xs);align-items:center;padding-inline-end:.5rem;display:flex}.k-column{min-width:0}.k-column[data-sticky=true]{align-self:stretch}.k-column[data-sticky=true]>div{top:calc(var(--header-sticky-offset) + 2vh);z-index:2;position:sticky}.k-column[data-disabled=true]{cursor:not-allowed;opacity:.4}.k-column[data-disabled=true] *{pointer-events:none}.k-column[data-disabled=true] .k-text[data-theme=help] *{pointer-events:initial}.k-frame{--fit:contain;--ratio:1/1;aspect-ratio:var(--ratio);background:var(--back);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.k-frame:where([data-theme]){--back:var(--theme-color-back);color:var(--theme-color-text)}.k-frame :where(img,video,iframe,button){object-fit:var(--fit);width:100%;height:100%;position:absolute;inset:0}.k-frame>*{text-overflow:ellipsis;min-width:0;min-height:0;overflow:hidden}:root{--color-frame-rounded:var(--rounded);--color-frame-size:100%;--color-frame-darkness:0%}.k-color-frame.k-frame{background:var(--pattern-light);width:var(--color-frame-size);color:#0000;border-radius:var(--color-frame-rounded);background-clip:padding-box;overflow:hidden}.k-color-frame:after{border-radius:var(--color-frame-rounded);box-shadow:0 0 0 1px inset hsla(0,0%,var(--color-frame-darkness),.175);content:"";background-color:currentColor;position:absolute;inset:0}.k-dropzone{position:relative}.k-dropzone:after{content:"";pointer-events:none;z-index:1;border-radius:var(--rounded);display:none;position:absolute;inset:0}.k-dropzone[data-over=true]:after{background:hsla(var(--color-blue-hs),var(--color-blue-l-300),.6);outline:var(--outline);display:block}.k-grid{--columns:12;--grid-inline-gap:0;--grid-block-gap:0;grid-column-gap:var(--grid-inline-gap);grid-row-gap:var(--grid-block-gap);align-items:start;display:grid}.k-grid>*{--width:calc(1/var(--columns));--span:calc(var(--columns)*var(--width))}@container (width>=30rem){.k-grid{grid-template-columns:repeat(var(--columns),1fr)}.k-grid>*{grid-column:span var(--span)}.k-grid[data-gutter=small]{--grid-inline-gap:1rem;--grid-block-gap:1rem}.k-grid:where([data-gutter=medium],[data-gutter=large],[data-gutter=huge]){--grid-inline-gap:1.5rem;--grid-block-gap:1.5rem}}@container (width>=65em){.k-grid[data-gutter=large]{--grid-inline-gap:3rem}.k-grid[data-gutter=huge]{--grid-inline-gap:4.5rem}}@container (width>=90em){.k-grid[data-gutter=large]{--grid-inline-gap:4.5rem}.k-grid[data-gutter=huge]{--grid-inline-gap:6rem}}@container (width>=120em){.k-grid[data-gutter=large]{--grid-inline-gap:6rem}.k-grid[data-gutter=huge]{--grid-inline-gap:7.5rem}}:root{--columns-inline-gap:clamp(.75rem,6cqw,6rem);--columns-block-gap:clamp(var(--spacing-8),6vh,6rem)}.k-grid[data-variant=columns]{--grid-inline-gap:var(--columns-inline-gap);--grid-block-gap:var(--columns-block-gap)}.k-grid:where([data-variant=columns],[data-variant=fields])>*{container:column/inline-size}.k-grid[data-variant=fields]{gap:var(--spacing-8)}.k-grid[data-variant=choices]{align-items:stretch;gap:2px}:root{--header-color-back:var(--color-light);--header-padding-block:var(--spacing-4);--header-sticky-offset:calc(var(--scroll-top,0rem) + 4rem)}.k-header{border-bottom:1px solid var(--color-border);background:var(--header-color-back);padding-top:var(--header-padding-block);margin-bottom:var(--spacing-12);box-shadow:2px 0 0 0 var(--header-color-back),-2px 0 0 0 var(--header-color-back);flex-wrap:wrap;justify-content:space-between;align-items:baseline;display:flex;position:relative}.k-header-title{font-size:var(--text-h1);font-weight:var(--font-h1);line-height:var(--leading-h1);margin-bottom:var(--header-padding-block);min-width:0}.k-header-title-button{text-align:start;gap:var(--spacing-2);outline:0;align-items:baseline;max-width:100%;display:inline-flex}.k-header-title-text{text-overflow:ellipsis;overflow-x:clip}.k-header-title-icon{--icon-color:var(--color-text-dimmed);border-radius:var(--rounded);height:var(--height-sm);width:var(--height-sm);opacity:0;flex-shrink:0;place-items:center;transition:opacity .2s;display:grid}.k-header-title-button:is(:hover,:focus) .k-header-title-icon{opacity:1}.k-header-title-button:focus .k-header-title-icon{outline:var(--outline)}.k-header-buttons{gap:var(--spacing-2);margin-bottom:var(--header-padding-block);flex-shrink:0;display:flex}.k-header[data-has-buttons=true]{top:var(--scroll-top,0);z-index:var(--z-toolbar);position:sticky}:root{--icon-size:18px;--icon-color:currentColor}.k-icon{width:var(--icon-size);height:var(--icon-size);color:var(--icon-color);flex-shrink:0}.k-icon[data-type=loader]{animation:1.5s linear infinite Spin}@media only screen and (-webkit-device-pixel-ratio>=2),not all,not all,not all,only screen and (resolution>=192dpi),only screen and (resolution>=2x){.k-icon-frame [data-type=emoji]{font-size:1.25em}}.k-image[data-back=pattern]{--back:var(--color-black)var(--pattern)}.k-image[data-back=black]{--back:var(--color-black)}.k-image[data-back=white]{--back:var(--color-white);color:var(--color-gray-900)}:root{--overlay-color-back:var(--color-backdrop)}.k-overlay[open]{overscroll-behavior:contain;z-index:var(--z-dialog);background:0 0;width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden;transform:translate(0)}.k-overlay[open]::backdrop{background:0 0}.k-overlay[open]>.k-portal{background:var(--overlay-color-back);position:fixed;inset:0;overflow:auto}.k-overlay[open][data-type=dialog]>.k-portal{display:inline-flex}.k-overlay[open][data-type=dialog]>.k-portal>*{margin:auto}.k-overlay[open][data-type=drawer]>.k-portal{--overlay-color-back:#0003;justify-content:flex-end;align-items:stretch;display:flex}html[data-overlay]{overflow:hidden}html[data-overlay] body{overflow:scroll}:root{--stat-value-text-size:var(--text-2xl);--stat-info-text-color:var(--color-text-dimmed)}.k-stat{padding:var(--spacing-3)var(--spacing-6);background:var(--color-white);border-radius:var(--rounded);box-shadow:var(--shadow);line-height:var(--leading-normal);flex-direction:column;display:flex}.k-stat.k-link:hover{cursor:pointer;background:var(--color-gray-100)}.k-stat :where(dt,dd){display:block}.k-stat-value{font-size:var(--stat-value-text-size);margin-bottom:var(--spacing-1);order:1}.k-stat-label{--icon-size:var(--text-sm);justify-content:start;align-items:center;gap:var(--spacing-1);font-size:var(--text-xs);order:2;display:flex}.k-stat-info{font-size:var(--text-xs);color:var(--stat-info-text-color);order:3}.k-stat[data-theme] .k-stat-info{--stat-info-text-color:var(--theme-color-700)}.k-stats{grid-gap:var(--spacing-2px);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));grid-auto-rows:1fr;display:grid}.k-stats[data-size=small]{--stat-value-text-size:var(--text-md)}.k-stats[data-size=medium]{--stat-value-text-size:var(--text-xl)}.k-stats[data-size=large]{--stat-value-text-size:var(--text-2xl)}.k-stats[data-size=huge]{--stat-value-text-size:var(--text-3xl)}:root{--table-cell-padding:var(--spacing-3);--table-color-back:var(--color-white);--table-color-border:var(--color-background);--table-color-hover:var(--color-gray-100);--table-color-th-back:var(--color-gray-100);--table-color-th-text:var(--color-text-dimmed);--table-row-height:var(--input-height)}.k-table{background:var(--table-color-back);box-shadow:var(--shadow);border-radius:var(--rounded);position:relative}.k-table table{table-layout:fixed}.k-table th,.k-table td{padding-inline:var(--table-cell-padding);height:var(--table-row-height);text-overflow:ellipsis;border-inline-end:1px solid var(--table-color-border);width:100%;line-height:1.25;overflow:hidden}.k-table tr>:last-child{border-inline-end:0}.k-table th,.k-table tr:not(:last-child) td{border-block-end:1px solid var(--table-color-border)}.k-table :where(td,th)[data-align]{text-align:var(--align)}.k-table th{padding-inline:var(--table-cell-padding);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--table-color-th-text);background:var(--table-color-th-back)}.k-table th[data-has-button]{padding:0}.k-table th button{padding-inline:var(--table-cell-padding);border-radius:var(--rounded);text-align:start;width:100%;height:100%}.k-table th button:focus-visible{outline-offset:-2px}.k-table thead th:first-child{border-start-start-radius:var(--rounded)}.k-table thead th:last-child{border-start-end-radius:var(--rounded)}.k-table thead th{top:var(--header-sticky-offset);z-index:1;position:sticky;inset-inline:0}.k-table tbody tr:hover td{background:var(--table-color-hover)}.k-table tbody th{white-space:nowrap;border-radius:0;width:auto;overflow:visible}.k-table tbody tr:first-child th{border-start-start-radius:var(--rounded)}.k-table tbody tr:last-child th{border-block-end:0;border-end-start-radius:var(--rounded)}.k-table-row-ghost{background:var(--color-white);outline:var(--outline);border-radius:var(--rounded);cursor:grabbing;margin-bottom:2px}.k-table-row-fallback{opacity:0!important}.k-table .k-table-index-column{width:var(--table-row-height);text-align:center}.k-table .k-table-index{font-size:var(--text-xs);color:var(--color-text-dimmed);line-height:1.1em}.k-table .k-table-index-column .k-sort-handle{--button-width:100%;display:none}.k-table tr:hover .k-table-index-column[data-sortable=true] .k-table-index{display:none}.k-table tr:hover .k-table-index-column[data-sortable=true] .k-sort-handle{display:flex}.k-table .k-table-options-column{width:var(--table-row-height);text-align:center;padding:0}.k-table .k-table-options-column .k-options-dropdown-toggle{--button-width:100%;--button-height:100%;outline-offset:-2px}.k-table-empty{color:var(--color-text-dimmed);font-size:var(--text-sm)}.k-table[aria-disabled=true]{--table-color-back:transparent;--table-color-border:var(--color-border);--table-color-hover:transparent;--table-color-th-back:transparent;border:1px solid var(--table-color-border);box-shadow:none}.k-table[aria-disabled=true] thead th{position:static}@container (width<=40rem){.k-table{overflow-x:scroll}.k-table thead th{position:static}}.k-table .k-table-cell{padding:0}.k-tabs{--button-height:var(--height-md);--button-padding:var(--spacing-2);gap:var(--spacing-1);margin-bottom:var(--spacing-12);margin-inline:calc(var(--button-padding)*-1);display:flex}.k-tab-button.k-button{margin-block:2px;overflow-x:visible}.k-tab-button[aria-current]:after{content:"";inset-inline:var(--button-padding);background:currentColor;height:2px;position:absolute;bottom:-2px}.k-tabs-badge{font-variant-numeric:tabular-nums;top:2px;padding:0 var(--spacing-1);text-align:center;box-shadow:var(--shadow-md);background:var(--theme-color-back);border:1px solid var(--theme-color-500);color:var(--theme-color-text);z-index:1;border-radius:1rem;font-size:10px;line-height:1.5;position:absolute;inset-inline-end:var(--button-padding);transform:translate(75%)}.k-view{padding-inline:1.5rem}@container (width>=30rem){.k-view{padding-inline:3rem}}.k-view[data-align=center]{justify-content:center;align-items:center;height:100vh;padding:0 3rem;display:flex;overflow:auto}.k-view[data-align=center]>*{flex-basis:22.5rem}.k-fatal[open]{background:var(--overlay-color-back);padding:var(--spacing-6)}.k-fatal-box{box-shadow:var(--dialog-shadow);border-radius:var(--dialog-rounded);flex-direction:column;width:100%;height:calc(100dvh - 3rem);line-height:1;display:flex;position:relative;overflow:hidden}.k-fatal-iframe{background:var(--color-white);padding:var(--spacing-3);border:0;flex-grow:1;width:100%}.k-icons{width:0;height:0;position:absolute}.k-loader{z-index:1}.k-loader-icon{animation:.9s linear infinite Spin}.k-notification{background:var(--color-gray-900);color:var(--color-white);flex-shrink:0;align-items:center;width:100%;padding:.75rem 1.5rem;line-height:1.25rem;display:flex}.k-notification[data-theme]{background:var(--theme-color-back);color:var(--color-black)}.k-notification p{word-wrap:break-word;flex-grow:1;overflow:hidden}.k-notification .k-button{margin-inline-start:1rem;display:flex}.k-offline-warning{z-index:var(--z-offline);background:var(--color-backdrop);justify-content:center;align-items:center;line-height:1;display:flex;position:fixed;inset:0}.k-offline-warning p{background:var(--color-white);box-shadow:var(--shadow);border-radius:var(--rounded);align-items:center;gap:.5rem;padding:.75rem;display:flex}.k-offline-warning p .k-icon{color:var(--color-red-400)}:root{--progress-height:var(--spacing-2);--progress-color-back:var(--color-gray-300);--progress-color-value:var(--color-focus)}progress{height:var(--progress-height);border-radius:var(--progress-height);border:0;width:100%;display:block;overflow:hidden}progress::-webkit-progress-bar{background:var(--progress-color-back)}progress::-webkit-progress-value{background:var(--progress-color-value);border-radius:var(--progress-height)}progress::-moz-progress-bar{background:var(--progress-color-value)}progress:not([value])::-webkit-progress-bar{background:var(--progress-color-value)}progress:not([value])::-moz-progress-bar{background:var(--progress-color-value)}.k-sort-handle{cursor:grab;z-index:1}.k-sort-handle:active{cursor:grabbing}.k-breadcrumb{--breadcrumb-divider:"/";padding:2px;overflow-x:clip}.k-breadcrumb ol{align-items:center;gap:.125rem;display:none}.k-breadcrumb ol li{align-items:center;min-width:0;display:flex}.k-breadcrumb ol li:not(:last-child):after{content:var(--breadcrumb-divider);opacity:.175;flex-shrink:0}.k-breadcrumb ol li{min-width:0;transition:flex-shrink .1s}.k-breadcrumb .k-icon[data-type=loader]{opacity:.5}.k-breadcrumb ol li:is(:hover,:focus-within){flex-shrink:0}.k-button.k-breadcrumb-link{flex-shrink:1;justify-content:flex-start;min-width:0}.k-breadcrumb-dropdown{display:grid}.k-breadcrumb-dropdown .k-dropdown-content{width:15rem}@container (width>=40em){.k-breadcrumb ol{display:flex}.k-breadcrumb-dropdown{display:none}}.k-browser{font-size:var(--text-sm);container-type:inline-size}.k-browser-items{--browser-item-gap:1px;--browser-item-size:1fr;--browser-item-height:var(--height-sm);--browser-item-padding:.25rem;--browser-item-rounded:var(--rounded);column-gap:var(--browser-item-gap);row-gap:var(--browser-item-gap);grid-template-columns:repeat(auto-fill,minmax(var(--browser-item-size),1fr));display:grid}.k-browser-item{height:var(--browser-item-height);padding-inline:calc(var(--browser-item-padding) + 1px);border-radius:var(--browser-item-rounded);white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;gap:.5rem;display:flex;overflow:hidden}.k-browser-item-image{height:calc(var(--browser-item-height) - var(--browser-item-padding)*2);aspect-ratio:1;border-radius:var(--rounded-sm);box-shadow:var(--shadow);flex-shrink:0}.k-browser-item-image.k-icon-frame{box-shadow:none;background:var(--color-white)}.k-browser-item-image svg{transform:scale(.8)}.k-browser-item input{box-shadow:var(--shadow);opacity:0;width:0;position:absolute}.k-browser-item[aria-selected]{background:var(--color-blue-300)}:root{--button-align:center;--button-height:var(--height-md);--button-width:auto;--button-color-back:none;--button-color-text:currentColor;--button-color-icon:currentColor;--button-padding:var(--spacing-2);--button-rounded:var(--spacing-1);--button-text-display:block;--button-icon-display:block}.k-button{align-items:center;justify-content:var(--button-align);padding-inline:var(--button-padding);white-space:nowrap;border-radius:var(--button-rounded);background:var(--button-color-back);height:var(--button-height);width:var(--button-width);color:var(--button-color-text);font-variant-numeric:tabular-nums;text-align:var(--button-align);flex-shrink:0;gap:.5rem;line-height:1;display:inline-flex;position:relative;overflow-x:clip}.k-button-icon{--icon-color:var(--button-color-icon);display:var(--button-icon-display);flex-shrink:0}.k-button-text{text-overflow:ellipsis;display:var(--button-text-display);min-width:0;overflow-x:clip}.k-button:where([data-theme]){--button-color-icon:var(--theme-color-icon);--button-color-text:var(--theme-color-text)}.k-button:where([data-variant=dimmed]){--button-color-icon:var(--color-text);--button-color-dimmed-on:var(--color-text-dimmed);--button-color-dimmed-off:var(--color-text);--button-color-text:var(--button-color-dimmed-on)}.k-button:where([data-variant=dimmed]):not([aria-disabled]):is(:hover,[aria-current]){--button-color-text:var(--button-color-dimmed-off)}.k-button:where([data-theme][data-variant=dimmed]){--button-color-icon:var(--theme-color-icon);--button-color-dimmed-on:var(--theme-color-text-dimmed);--button-color-dimmed-off:var(--theme-color-text)}.k-button:where([data-variant=filled]){--button-color-back:var(--color-gray-300)}.k-button:where([data-variant=filled]):not([aria-disabled]):hover{filter:brightness(97%)}.k-button:where([data-theme][data-variant=filled]){--button-color-icon:var(--theme-color-700);--button-color-back:var(--theme-color-back);--button-color-text:var(--theme-color-text)}.k-button:not([data-has-text=true]){--button-padding:0;aspect-ratio:1}@container (width<=30rem){.k-button[data-responsive=true][data-has-icon=true]{--button-padding:0;aspect-ratio:1;--button-text-display:none}.k-button[data-responsive=text][data-has-text=true]{--button-icon-display:none}.k-button[data-responsive][data-has-icon=true] .k-button-arrow{display:none}}.k-button:not(button,a,summary,label,.k-link){pointer-events:none}.k-button:where([data-size=xs]){--button-height:var(--height-xs);--button-padding:.325rem}.k-button:where([data-size=sm]){--button-height:var(--height-sm);--button-padding:.5rem}.k-button:where([data-size=lg]){--button-height:var(--height-lg)}.k-button-arrow{--icon-size:10px;width:max-content;margin-inline-start:-.125rem}.k-button:where([aria-disabled]){cursor:not-allowed}.k-button:where([aria-disabled])>*{opacity:var(--opacity-disabled)}.k-button-group{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.k-button-group:where([data-layout=collapsed]){gap:0}.k-button-group[data-layout=collapsed]>.k-button[data-variant=filled]:not(:last-child){border-start-end-radius:0;border-end-end-radius:0}.k-button-group[data-layout=collapsed]>.k-button[data-variant=filled]:not(:first-child){border-left:1px solid var(--theme-color-500,var(--color-gray-400));border-start-start-radius:0;border-end-start-radius:0}.k-button-group[data-layout=collapsed]>.k-button[data-variant=filled]:focus-visible{z-index:1;border-radius:var(--button-rounded)}.k-file-browser{overflow:hidden;container-type:inline-size}.k-file-browser-layout{grid-template-columns:minmax(10rem,15rem) 1fr;display:grid}.k-file-browser-tree{padding:var(--spacing-2);border-right:1px solid var(--color-gray-300)}.k-file-browser-items{padding:var(--spacing-2);background:var(--color-gray-100)}.k-file-browser-back-button{display:none}@container (width<=30rem){.k-file-browser-layout{grid-template-columns:minmax(0,1fr);min-height:10rem}.k-file-browser-back-button{height:var(--height-sm);background:var(--color-gray-200);border-radius:var(--rounded);justify-content:flex-start;align-items:center;width:100%;margin-bottom:.5rem;padding-inline:.25rem;display:flex}.k-file-browser-tree{border-right:0}.k-file-browser[data-view=files] .k-file-browser-tree,.k-file-browser[data-view=tree] .k-file-browser-items{display:none}}:root{--tree-color-back:var(--color-gray-200);--tree-color-hover-back:var(--color-gray-300);--tree-color-selected-back:var(--color-blue-300);--tree-color-selected-text:var(--color-black);--tree-color-text:var(--color-gray-dimmed);--tree-level:0;--tree-indentation:.6rem}.k-tree-branch{align-items:center;margin-bottom:1px;padding-inline-start:calc(var(--tree-level)*var(--tree-indentation));display:flex}.k-tree-branch[data-has-subtree=true]{z-index:calc(100 - var(--tree-level));background:var(--tree-color-back);inset-block-start:calc(var(--tree-level)*1.5rem)}.k-tree-branch:hover,li[aria-current]>.k-tree-branch{--tree-color-text:var(--tree-color-selected-text);background:var(--tree-color-hover-back);border-radius:var(--rounded)}li[aria-current]>.k-tree-branch{background:var(--tree-color-selected-back)}.k-tree-toggle{--icon-size:12px;aspect-ratio:1;border-radius:var(--rounded-sm);flex-shrink:0;place-items:center;width:1rem;margin-inline-start:.25rem;padding:0;display:grid}.k-tree-toggle:hover{background:#00000013}.k-tree-toggle[disabled]{visibility:hidden}.k-tree-folder{height:var(--height-sm);border-radius:var(--rounded-sm);line-height:1.25;font-size:var(--text-sm);align-items:center;gap:.325rem;width:100%;min-width:3rem;padding-inline:.25rem;display:flex}@container (width<=15rem){.k-tree{--tree-indentation:.375rem}.k-tree-folder{padding-inline:.125rem}.k-tree-folder .k-icon{display:none}}.k-tree-folder>.k-frame{flex-shrink:0}.k-tree-folder-label{text-overflow:ellipsis;white-space:nowrap;color:currentColor;overflow:hidden}.k-tree-folder[disabled]{opacity:var(--opacity-disabled)}.k-pagination-details{--button-padding:var(--spacing-3);font-size:var(--text-xs)}.k-pagination-selector{--button-height:var(--height);--dropdown-padding:0;overflow:visible}.k-pagination-selector form{justify-content:space-between;align-items:center;display:flex}.k-pagination-selector label{padding-inline-start:var(--spacing-3);padding-inline-end:var(--spacing-2)}.k-pagination-selector select{--height:calc(var(--button-height) - .5rem);min-width:var(--height);height:var(--height);text-align:center;background:var(--color-gray-800);color:var(--color-white);border-radius:var(--rounded-sm);width:auto}.k-prev-next{direction:ltr;flex-shrink:0}:root{--tag-color-back:var(--color-black);--tag-color-text:var(--color-white);--tag-color-toggle:currentColor;--tag-color-disabled-back:var(--color-gray-600);--tag-color-disabled-text:var(--tag-color-text);--tag-height:var(--height-xs);--tag-rounded:var(--rounded-sm)}.k-tag{height:var(--tag-height);font-size:var(--text-sm);color:var(--tag-color-text);background-color:var(--tag-color-back);border-radius:var(--tag-rounded);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;line-height:1;display:flex;position:relative}.k-tag:not([aria-disabled]):focus{outline:var(--outline)}.k-tag-image{height:calc(var(--tag-height) - var(--spacing-2));margin-inline:var(--spacing-1);border-radius:var(--tag-rounded);overflow:hidden}.k-tag-text{padding-inline:var(--spacing-2);line-height:var(--leading-tight)}.k-tag[data-has-image=true] .k-tag-text{padding-inline-start:var(--spacing-1)}.k-tag[data-has-toggle=true] .k-tag-text{padding-inline-end:0}.k-tag-toggle{width:var(--tag-height);height:var(--tag-height);filter:brightness(70%)}.k-tag-toggle:hover{filter:brightness()}.k-tag:where([aria-disabled]){background-color:var(--tag-color-disabled-back);color:var(--tag-color-disabled-text);cursor:not-allowed}.k-button[data-disabled=true]{opacity:.5;pointer-events:none;cursor:default}.k-card-options>.k-button[data-disabled=true]{display:inline-flex}.k-section+.k-section{margin-top:var(--columns-block-gap)}.k-section-header{margin-bottom:var(--spacing-2)}.k-fields-section input[type=submit]{display:none}[data-locked=true] .k-fields-section{opacity:.2;pointer-events:none}.k-models-section[data-processing=true]{pointer-events:none}.k-models-section-search.k-input{--input-color-back:var(--color-gray-300);--input-color-border:transparent;margin-bottom:var(--spacing-3)}:root{--code-color-back:var(--color-black);--code-color-icon:var(--color-gray-500);--code-color-text:var(--color-gray-200,white);--code-font-family:var(--font-mono);--code-font-size:1em;--code-inline-color-back:var(--color-blue-300);--code-inline-color-border:var(--color-blue-400);--code-inline-color-text:var(--color-blue-900);--code-inline-font-size:.9em;--code-padding:var(--spacing-3)}code{font-family:var(--code-font-family);font-size:var(--code-font-size);font-weight:var(--font-normal)}.k-code,.k-text pre{padding:var(--code-padding);border-radius:var(--rounded,.5rem);background:var(--code-color-back);color:var(--code-color-text);white-space:nowrap;-moz-tab-size:2;tab-size:2;max-width:100%;line-height:1.5;display:block;position:relative;overflow:auto hidden}.k-code:not(code),.k-text pre{white-space:pre-wrap}.k-code:before{content:attr(data-language);font-size:calc(.75*var(--text-xs));background:var(--code-color-back);border-radius:var(--rounded,.5rem);padding:.5rem .5rem .25rem .25rem;position:absolute;inset-block-start:0;inset-inline-end:0}.k-text>code,.k-text :not(pre)>code{padding-inline:var(--spacing-1);font-size:var(--code-inline-font-size);color:var(--code-inline-color-text);background:var(--code-inline-color-back);border-radius:var(--rounded);outline:1px solid var(--code-inline-color-border);outline-offset:-1px;display:inline-flex}:root{--text-h1:2em;--text-h2:1.75em;--text-h3:1.5em;--text-h4:1.25em;--text-h5:1.125em;--text-h6:1em;--font-h1:var(--font-semi);--font-h2:var(--font-semi);--font-h3:var(--font-semi);--font-h4:var(--font-semi);--font-h5:var(--font-semi);--font-h6:var(--font-semi);--leading-h1:1.125;--leading-h2:1.125;--leading-h3:1.25;--leading-h4:1.375;--leading-h5:1.5;--leading-h6:1.5}.k-headline{line-height:1.5em;font-weight:var(--font-bold)}.h1,.k-text h1,.k-headline[data-size=huge]{color:var(--color-h1,var(--color-h));font-family:var(--font-family-h1);font-size:var(--text-h1);font-weight:var(--font-h1);line-height:var(--leading-h1)}.h2,.k-text h2,.k-headline[data-size=large]{color:var(--color-h2,var(--color-h));font-family:var(--font-family-h2);font-size:var(--text-h2);font-weight:var(--font-h2);line-height:var(--leading-h2)}.h3,.k-text h3{color:var(--color-h3,var(--color-h));font-family:var(--font-family-h3);font-size:var(--text-h3);font-weight:var(--font-h3);line-height:var(--leading-h3)}.h4,.k-text h4,.k-headline[data-size=small]{color:var(--color-h4,var(--color-h));font-family:var(--font-family-h4);font-size:var(--text-h4);font-weight:var(--font-h4);line-height:var(--leading-h4)}.h5,.k-text h5{color:var(--color-h5,var(--color-h));font-family:var(--font-family-h5);font-size:var(--text-h5);font-weight:var(--font-h5);line-height:var(--leading-h5)}.h6,.k-text h6{color:var(--color-h6,var(--color-h));font-family:var(--font-family-h6);font-size:var(--text-h6);font-weight:var(--font-h6);line-height:var(--leading-h6)}.k-text>*+h6{margin-block-start:calc(var(--text-line-height)*1.5em)}.k-headline[data-theme]{color:var(--theme)}.k-label{height:var(--height-xs);font-weight:var(--font-semi);align-items:center;min-width:0;display:flex;position:relative}[aria-disabled] .k-label{opacity:var(--opacity-disabled);cursor:not-allowed}.k-label>a{height:var(--height-xs);padding-inline:var(--spacing-2);border-radius:var(--rounded);align-items:center;min-width:0;margin-inline-start:calc(-1*var(--spacing-2));display:inline-flex}.k-label-text{text-overflow:ellipsis;white-space:nowrap;overflow-x:clip}.k-label abbr{font-size:var(--text-xs);color:var(--color-gray-500);margin-inline-start:var(--spacing-1)}.k-label abbr.k-label-invalid{color:var(--color-red-700);display:none}:where(.k-field:has([data-invalid]),.k-section:has([data-invalid]))>header>.k-label abbr.k-label-invalid{display:inline-block}.k-field:has([data-invalid])>.k-field-header>.k-label abbr:has(+abbr.k-label-invalid){display:none}:root{--text-font-size:1em;--text-line-height:1.5;--link-color:var(--color-blue-800);--link-underline-offset:2px}.k-text{font-size:var(--text-font-size);line-height:var(--text-line-height)}.k-text[data-size=tiny]{--text-font-size:var(--text-xs)}.k-text[data-size=small]{--text-font-size:var(--text-sm)}.k-text[data-size=medium]{--text-font-size:var(--text-md)}.k-text[data-size=large]{--text-font-size:var(--text-xl)}.k-text[data-align]{text-align:var(--align)}.k-text>:where(audio,blockquote,details,div,figure,h1,h2,h3,h4,h5,h6,hr,iframe,img,object,ol,p,picture,pre,table,ul)+*{margin-block-start:calc(var(--text-line-height)*1em)}.k-text :where(.k-link,a){color:var(--link-color);text-underline-offset:var(--link-underline-offset);border-radius:var(--rounded-xs);outline-offset:2px;text-decoration:underline}.k-text ol,.k-text ul{padding-inline-start:1.75em}.k-text ol{list-style:numeric}.k-text ol>li{list-style:decimal}.k-text ul>li{list-style:disc}.k-text ul ul>li{list-style:circle}.k-text ul ul ul>li{list-style:square}.k-text blockquote{font-size:var(--text-lg);border-inline-start:2px solid var(--color-black);padding-inline-start:var(--spacing-4);line-height:1.25}.k-text img{border-radius:var(--rounded)}.k-text iframe{aspect-ratio:16/9;border-radius:var(--rounded);width:100%}.k-text hr{background:var(--color-border);height:1px}.k-help{color:var(--color-text-dimmed)}.k-activation{color:var(--dropdown-color-text);background:var(--dropdown-color-bg);border-radius:var(--dropdown-rounded);box-shadow:var(--dropdown-shadow);display:flex;position:relative}.k-activation p{padding-block:.425rem;padding-inline-start:var(--spacing-3);padding-inline-end:var(--spacing-2);line-height:1.25}.k-activation p strong{font-weight:var(--font-normal);margin-inline-end:var(--spacing-1)}.k-activation p :where(button,a){color:var(--color-pink-400);text-underline-offset:2px;border-radius:var(--rounded-sm);text-decoration:underline}.k-activation-toggle{--button-color-text:var(--color-gray-400);--button-rounded:0;border-left:1px solid var(--dropdown-color-hr)}.k-activation-toggle:is(:hover,:focus){--button-color-text:var(--color-white)}.k-activation-toggle:focus{--button-rounded:var(--rounded)}:root{--main-padding-inline:clamp(var(--spacing-6),5cqw,var(--spacing-24))}.k-panel-main{padding:var(--spacing-3)var(--main-padding-inline)var(--spacing-24);min-height:100dvh;margin-inline-start:var(--main-start);container:main/inline-size}.k-panel-notification{--button-height:var(--height-md);--button-color-icon:var(--theme-color-900);--button-color-text:var(--theme-color-900);border:1px solid var(--theme-color-500);box-shadow:var(--dropdown-shadow);z-index:var(--z-notification);position:fixed;inset-block-end:var(--menu-padding);inset-inline-end:var(--menu-padding)}:root{--menu-button-height:var(--height);--menu-button-width:100%;--menu-color-back:var(--color-gray-250);--menu-color-border:var(--color-gray-300);--menu-display:none;--menu-display-backdrop:block;--menu-padding:var(--spacing-3);--menu-shadow:var(--shadow-xl);--menu-toggle-height:var(--menu-button-height);--menu-toggle-width:1rem;--menu-width-closed:calc(var(--menu-button-height) + 2*var(--menu-padding));--menu-width-open:12rem;--menu-width:var(--menu-width-open)}.k-panel-menu{z-index:var(--z-navigation);display:var(--menu-display);width:var(--menu-width);background-color:var(--menu-color-back);border-right:1px solid var(--menu-color-border);box-shadow:var(--menu-shadow);position:fixed;inset-block:0;inset-inline-start:0}.k-panel-menu-body{gap:var(--spacing-4);padding:var(--menu-padding);overscroll-behavior:contain;flex-direction:column;height:100%;display:flex;overflow:hidden auto}.k-panel-menu-search{margin-bottom:var(--spacing-8)}.k-panel-menu-buttons{flex-direction:column;width:100%;display:flex}.k-panel-menu-buttons[data-second-last=true]{flex-grow:1}.k-panel-menu-buttons:last-child{justify-content:flex-end}.k-panel-menu-button{--button-align:flex-start;--button-height:var(--menu-button-height);--button-width:var(--menu-button-width);flex-shrink:0}.k-panel-menu-button[aria-current]{--button-color-back:var(--color-white);box-shadow:var(--shadow)}.k-panel-menu-button:focus{z-index:1}.k-panel[data-menu=true]{--menu-button-width:100%;--menu-display:block;--menu-width:var(--menu-width-open)}.k-panel[data-menu=true]:after{content:"";background:var(--color-backdrop);display:var(--menu-display-backdrop);pointer-events:none;position:fixed;inset:0}.k-panel-menu-toggle{--button-align:flex-start;--button-height:100%;--button-width:var(--menu-toggle-width);opacity:0;border-radius:0;align-items:flex-start;transition:opacity .2s;position:absolute;inset-block:0;inset-inline-start:100%;overflow:visible}.k-panel-menu-toggle:focus{outline:0}.k-panel-menu-toggle .k-button-icon{height:var(--menu-toggle-height);width:var(--menu-toggle-width);margin-top:var(--menu-padding);border-block:1px solid var(--menu-color-border);border-inline-end:1px solid var(--menu-color-border);background:var(--menu-color-back);border-start-end-radius:var(--button-rounded);border-end-end-radius:var(--button-rounded);place-items:center;display:grid}.k-panel-menu .k-activation-button{--button-color-back:var(--color-pink-300);--button-color-text:var(--color-pink-800);border:1px solid var(--color-pink-400)}@media (width<=60rem){.k-panel-menu .k-activation-button{margin-bottom:var(--spacing-3)}.k-panel-menu .k-activation-toggle{display:none}}@media (width>=60rem){.k-panel{--menu-display:block;--menu-display-backdrop:none;--menu-shadow:none;--main-start:var(--menu-width)}.k-panel[data-menu=false]{--menu-button-width:var(--menu-button-height);--menu-width:var(--menu-width-closed)}.k-panel-menu-proxy{display:none}.k-panel-menu-toggle:focus-visible,.k-panel-menu[data-hover] .k-panel-menu-toggle{opacity:1}.k-panel-menu-toggle:focus-visible .k-button-icon{outline:var(--outline);border-radius:var(--button-rounded)}.k-panel-menu-search[aria-disabled=true]{opacity:0}.k-panel-menu .k-activation{bottom:var(--menu-padding);height:var(--height-md);margin-left:var(--menu-padding);width:max-content;position:absolute;inset-inline-start:100%}.k-panel-menu .k-activation:before{content:"";border-top:4px solid #0000;border-right:4px solid var(--color-black);border-bottom:4px solid #0000;margin-top:-4px;position:absolute;top:50%;left:-4px}.k-panel-menu .k-activation p :where(button,a){padding-inline:var(--spacing-1)}.k-panel-menu .k-activation-toggle{border-left:1px solid var(--dropdown-color-hr)}}.k-panel.k-panel-outside{padding:var(--spacing-6);grid-template-rows:1fr;place-items:center;min-height:100dvh;display:grid}html{background:var(--color-light);overflow:hidden scroll}body{font-size:var(--text-sm)}.k-panel[data-loading=true]{animation:.5s LoadingCursor}.k-panel[data-loading=true]:after,.k-panel[data-dragging=true]{-webkit-user-select:none;user-select:none}.k-topbar{margin-inline:calc(var(--button-padding)*-1);margin-bottom:var(--spacing-8);align-items:center;gap:var(--spacing-1);display:flex;position:relative}.k-topbar-breadcrumb{margin-inline-start:-2px}.k-topbar-spacer{flex-grow:1}.k-topbar-signals{align-items:center;display:flex}.k-search-view .k-header{margin-bottom:0}.k-header+.k-search-view-results{margin-top:var(--spacing-12)}.k-search-view-input{--input-color-border:transparent;--input-color-back:var(--color-gray-300);--input-height:var(--height-md);width:40cqw}.k-file-view-header,.k-file-view[data-has-tabs=true] .k-file-preview{margin-bottom:0}.k-file-preview{background:var(--color-gray-900);border-radius:var(--rounded-lg);margin-bottom:var(--spacing-12);align-items:stretch;display:grid;overflow:hidden}.k-file-preview-thumb-column{background:var(--pattern);aspect-ratio:1}.k-file-preview-thumb{padding:var(--spacing-12);justify-content:center;align-items:center;height:100%;display:flex;container-type:size}.k-file-preview-thumb img{width:auto;max-width:100cqw;max-height:100cqh}.k-file-preview-thumb>.k-icon{--icon-size:3rem}.k-file-preview-thumb>.k-button{top:var(--spacing-2);position:absolute;inset-inline-start:var(--spacing-2)}.k-file-preview .k-coords-input{--opacity-disabled:1;--range-thumb-color:#5c8dd6bf;--range-thumb-size:1.25rem;--range-thumb-shadow:none;cursor:crosshair}.k-file-preview .k-coords-input-thumb:after{--size:.4rem;--pos:calc(50% - (var(--size)/2));top:var(--pos);width:var(--size);height:var(--size);content:"";background:var(--color-white);border-radius:50%;position:absolute;inset-inline-start:var(--pos)}.k-file-preview:not([data-has-focus=true]) .k-coords-input-thumb{display:none}.k-file-preview-details{display:grid}.k-file-preview-details dl{grid-gap:var(--spacing-6)var(--spacing-12);padding:var(--spacing-6);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));align-self:center;line-height:1.5em;display:grid}.k-file-preview-details dt{font-size:var(--text-sm);font-weight:500;font-weight:var(--font-semi);color:var(--color-gray-500);margin-bottom:var(--spacing-1)}.k-file-preview-details :where(dd,a){font-size:var(--text-xs);color:#ffffffbf;white-space:nowrap;text-overflow:ellipsis;font-size:var(--text-sm);overflow:hidden}.k-file-preview-focus-info dd{align-items:center;display:flex}.k-file-preview-focus-info .k-button{--button-padding:var(--spacing-2);--button-color-back:var(--color-gray-800)}.k-file-preview[data-has-focus=true] .k-file-preview-focus-info .k-button{flex-direction:row-reverse}@container (width>=36rem){.k-file-preview{grid-template-columns:50% auto}.k-file-preview-thumb-column{aspect-ratio:auto}}@container (width>=65rem){.k-file-preview{grid-template-columns:33.333% auto}.k-file-preview-thumb-column{aspect-ratio:1}}@container (width>=90rem){.k-file-preview-layout{grid-template-columns:25% auto}}.k-login-dialog{--dialog-color-back:var(--color-white);--dialog-shadow:var(--shadow);container-type:inline-size}.k-login-fields{position:relative}.k-login-toggler{top:-2px;z-index:1;color:var(--link-color);padding-inline:var(--spacing-2);text-decoration:underline;text-decoration-color:var(--link-color);text-underline-offset:1px;height:var(--height-xs);border-radius:var(--rounded);line-height:1;position:absolute;inset-inline-end:calc(var(--spacing-2)*-1)}.k-login-form label abbr{visibility:hidden}.k-login-buttons{--button-padding:var(--spacing-3);margin-top:var(--spacing-10);justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.k-installation-dialog{--dialog-color-back:var(--color-white);--dialog-shadow:var(--shadow);container-type:inline-size}.k-installation-view .k-button{margin-top:var(--spacing-3);width:100%}.k-installation-view form .k-button{margin-top:var(--spacing-10)}.k-installation-view .k-headline{font-weight:var(--font-semi);margin-top:-.5rem;margin-bottom:.75rem}.k-installation-issues{line-height:1.5em;font-size:var(--text-sm)}.k-installation-issues li{padding:var(--spacing-6);background:var(--color-red-300);border-radius:var(--rounded);padding-inline-start:3.5rem;position:relative}.k-installation-issues .k-icon{top:calc(1.5rem + 2px);color:var(--color-red-700);position:absolute;inset-inline-start:1.5rem}.k-installation-issues li:not(:last-child){margin-bottom:2px}.k-installation-issues li code{font:inherit;color:var(--color-red-700)}.k-password-reset-view .k-user-info{margin-bottom:var(--spacing-8)}.k-user-info{font-size:var(--text-sm);height:var(--height-lg);padding-inline:var(--spacing-2);background:var(--color-white);box-shadow:var(--shadow);align-items:center;gap:.75rem;display:flex}.k-user-info :where(.k-image-frame,.k-icon-frame){border-radius:var(--rounded-sm);width:1.5rem}.k-page-view[data-has-tabs=true] .k-page-view-header{margin-bottom:0}.k-page-view-status{--button-color-back:var(--color-gray-300);--button-color-icon:var(--theme-color-600);--button-color-text:initial}.k-site-view[data-has-tabs=true] .k-site-view-header{margin-bottom:0}.k-system-info .k-stat-label{color:var(--theme,var(--color-black))}.k-table-update-status-cell{align-items:center;height:100%;padding:0 .75rem;display:flex}.k-table-update-status-cell-version,.k-table-update-status-cell-button{font-variant-numeric:tabular-nums}.k-plugin-info{column-gap:var(--spacing-3);padding:var(--button-padding);row-gap:2px;display:grid}.k-plugin-info dt{color:var(--color-gray-400)}.k-plugin-info dd[data-theme]{color:var(--theme-color-600)}@container (width<=30em){.k-plugin-info dd:not(:last-of-type){margin-bottom:var(--spacing-2)}}@container (width>=30em){.k-plugin-info{grid-template-columns:1fr auto;width:20rem}}.k-user-name-placeholder{color:var(--color-gray-500);transition:color .3s}.k-user-view-header[data-editable=true] .k-user-name-placeholder:hover{color:var(--color-gray-900)}.k-user-view-header{border-bottom:0;margin-bottom:0}.k-user-view .k-user-profile{margin-bottom:var(--spacing-12)}.k-user-view[data-has-tabs=true] .k-user-profile{margin-bottom:0}.k-user-view-image{padding:0}.k-user-view-image .k-frame{border-radius:var(--rounded);width:6rem;height:6rem;line-height:0}.k-user-view-image .k-icon-frame{--back:var(--color-black);--icon-color:var(--color-gray-200)}.k-user-profile{--button-height:auto;padding:var(--spacing-2);background:var(--color-white);border-radius:var(--rounded-lg);align-items:center;gap:var(--spacing-3);box-shadow:var(--shadow);display:flex}.k-user-profile .k-button-group{flex-direction:column;align-items:flex-start;display:flex}.k-users-view-header{margin-bottom:0}:root{--color-l-100:98%;--color-l-200:94%;--color-l-300:88%;--color-l-400:80%;--color-l-500:70%;--color-l-600:60%;--color-l-700:45%;--color-l-800:30%;--color-l-900:15%;--color-red-h:0;--color-red-s:80%;--color-red-hs:var(--color-red-h),var(--color-red-s);--color-red-boost:3%;--color-red-l-100:calc(var(--color-l-100) + var(--color-red-boost));--color-red-l-200:calc(var(--color-l-200) + var(--color-red-boost));--color-red-l-300:calc(var(--color-l-300) + var(--color-red-boost));--color-red-l-400:calc(var(--color-l-400) + var(--color-red-boost));--color-red-l-500:calc(var(--color-l-500) + var(--color-red-boost));--color-red-l-600:calc(var(--color-l-600) + var(--color-red-boost));--color-red-l-700:calc(var(--color-l-700) + var(--color-red-boost));--color-red-l-800:calc(var(--color-l-800) + var(--color-red-boost));--color-red-l-900:calc(var(--color-l-900) + var(--color-red-boost));--color-red-100:hsl(var(--color-red-hs),var(--color-red-l-100));--color-red-200:hsl(var(--color-red-hs),var(--color-red-l-200));--color-red-300:hsl(var(--color-red-hs),var(--color-red-l-300));--color-red-400:hsl(var(--color-red-hs),var(--color-red-l-400));--color-red-500:hsl(var(--color-red-hs),var(--color-red-l-500));--color-red-600:hsl(var(--color-red-hs),var(--color-red-l-600));--color-red-700:hsl(var(--color-red-hs),var(--color-red-l-700));--color-red-800:hsl(var(--color-red-hs),var(--color-red-l-800));--color-red-900:hsl(var(--color-red-hs),var(--color-red-l-900));--color-orange-h:28;--color-orange-s:80%;--color-orange-hs:var(--color-orange-h),var(--color-orange-s);--color-orange-boost:2.5%;--color-orange-l-100:calc(var(--color-l-100) + var(--color-orange-boost));--color-orange-l-200:calc(var(--color-l-200) + var(--color-orange-boost));--color-orange-l-300:calc(var(--color-l-300) + var(--color-orange-boost));--color-orange-l-400:calc(var(--color-l-400) + var(--color-orange-boost));--color-orange-l-500:calc(var(--color-l-500) + var(--color-orange-boost));--color-orange-l-600:calc(var(--color-l-600) + var(--color-orange-boost));--color-orange-l-700:calc(var(--color-l-700) + var(--color-orange-boost));--color-orange-l-800:calc(var(--color-l-800) + var(--color-orange-boost));--color-orange-l-900:calc(var(--color-l-900) + var(--color-orange-boost));--color-orange-100:hsl(var(--color-orange-hs),var(--color-orange-l-100));--color-orange-200:hsl(var(--color-orange-hs),var(--color-orange-l-200));--color-orange-300:hsl(var(--color-orange-hs),var(--color-orange-l-300));--color-orange-400:hsl(var(--color-orange-hs),var(--color-orange-l-400));--color-orange-500:hsl(var(--color-orange-hs),var(--color-orange-l-500));--color-orange-600:hsl(var(--color-orange-hs),var(--color-orange-l-600));--color-orange-700:hsl(var(--color-orange-hs),var(--color-orange-l-700));--color-orange-800:hsl(var(--color-orange-hs),var(--color-orange-l-800));--color-orange-900:hsl(var(--color-orange-hs),var(--color-orange-l-900));--color-yellow-h:47;--color-yellow-s:80%;--color-yellow-hs:var(--color-yellow-h),var(--color-yellow-s);--color-yellow-boost:0%;--color-yellow-l-100:calc(var(--color-l-100) + var(--color-yellow-boost));--color-yellow-l-200:calc(var(--color-l-200) + var(--color-yellow-boost));--color-yellow-l-300:calc(var(--color-l-300) + var(--color-yellow-boost));--color-yellow-l-400:calc(var(--color-l-400) + var(--color-yellow-boost));--color-yellow-l-500:calc(var(--color-l-500) + var(--color-yellow-boost));--color-yellow-l-600:calc(var(--color-l-600) + var(--color-yellow-boost));--color-yellow-l-700:calc(var(--color-l-700) + var(--color-yellow-boost));--color-yellow-l-800:calc(var(--color-l-800) + var(--color-yellow-boost));--color-yellow-l-900:calc(var(--color-l-900) + var(--color-yellow-boost));--color-yellow-100:hsl(var(--color-yellow-hs),var(--color-yellow-l-100));--color-yellow-200:hsl(var(--color-yellow-hs),var(--color-yellow-l-200));--color-yellow-300:hsl(var(--color-yellow-hs),var(--color-yellow-l-300));--color-yellow-400:hsl(var(--color-yellow-hs),var(--color-yellow-l-400));--color-yellow-500:hsl(var(--color-yellow-hs),var(--color-yellow-l-500));--color-yellow-600:hsl(var(--color-yellow-hs),var(--color-yellow-l-600));--color-yellow-700:hsl(var(--color-yellow-hs),var(--color-yellow-l-700));--color-yellow-800:hsl(var(--color-yellow-hs),var(--color-yellow-l-800));--color-yellow-900:hsl(var(--color-yellow-hs),var(--color-yellow-l-900));--color-green-h:80;--color-green-s:60%;--color-green-hs:var(--color-green-h),var(--color-green-s);--color-green-boost:-2.5%;--color-green-l-100:calc(var(--color-l-100) + var(--color-green-boost));--color-green-l-200:calc(var(--color-l-200) + var(--color-green-boost));--color-green-l-300:calc(var(--color-l-300) + var(--color-green-boost));--color-green-l-400:calc(var(--color-l-400) + var(--color-green-boost));--color-green-l-500:calc(var(--color-l-500) + var(--color-green-boost));--color-green-l-600:calc(var(--color-l-600) + var(--color-green-boost));--color-green-l-700:calc(var(--color-l-700) + var(--color-green-boost));--color-green-l-800:calc(var(--color-l-800) + var(--color-green-boost));--color-green-l-900:calc(var(--color-l-900) + var(--color-green-boost));--color-green-100:hsl(var(--color-green-hs),var(--color-green-l-100));--color-green-200:hsl(var(--color-green-hs),var(--color-green-l-200));--color-green-300:hsl(var(--color-green-hs),var(--color-green-l-300));--color-green-400:hsl(var(--color-green-hs),var(--color-green-l-400));--color-green-500:hsl(var(--color-green-hs),var(--color-green-l-500));--color-green-600:hsl(var(--color-green-hs),var(--color-green-l-600));--color-green-700:hsl(var(--color-green-hs),var(--color-green-l-700));--color-green-800:hsl(var(--color-green-hs),var(--color-green-l-800));--color-green-900:hsl(var(--color-green-hs),var(--color-green-l-900));--color-aqua-h:180;--color-aqua-s:50%;--color-aqua-hs:var(--color-aqua-h),var(--color-aqua-s);--color-aqua-boost:0%;--color-aqua-l-100:calc(var(--color-l-100) + var(--color-aqua-boost));--color-aqua-l-200:calc(var(--color-l-200) + var(--color-aqua-boost));--color-aqua-l-300:calc(var(--color-l-300) + var(--color-aqua-boost));--color-aqua-l-400:calc(var(--color-l-400) + var(--color-aqua-boost));--color-aqua-l-500:calc(var(--color-l-500) + var(--color-aqua-boost));--color-aqua-l-600:calc(var(--color-l-600) + var(--color-aqua-boost));--color-aqua-l-700:calc(var(--color-l-700) + var(--color-aqua-boost));--color-aqua-l-800:calc(var(--color-l-800) + var(--color-aqua-boost));--color-aqua-l-900:calc(var(--color-l-900) + var(--color-aqua-boost));--color-aqua-100:hsl(var(--color-aqua-hs),var(--color-aqua-l-100));--color-aqua-200:hsl(var(--color-aqua-hs),var(--color-aqua-l-200));--color-aqua-300:hsl(var(--color-aqua-hs),var(--color-aqua-l-300));--color-aqua-400:hsl(var(--color-aqua-hs),var(--color-aqua-l-400));--color-aqua-500:hsl(var(--color-aqua-hs),var(--color-aqua-l-500));--color-aqua-600:hsl(var(--color-aqua-hs),var(--color-aqua-l-600));--color-aqua-700:hsl(var(--color-aqua-hs),var(--color-aqua-l-700));--color-aqua-800:hsl(var(--color-aqua-hs),var(--color-aqua-l-800));--color-aqua-900:hsl(var(--color-aqua-hs),var(--color-aqua-l-900));--color-blue-h:210;--color-blue-s:65%;--color-blue-hs:var(--color-blue-h),var(--color-blue-s);--color-blue-boost:3%;--color-blue-l-100:calc(var(--color-l-100) + var(--color-blue-boost));--color-blue-l-200:calc(var(--color-l-200) + var(--color-blue-boost));--color-blue-l-300:calc(var(--color-l-300) + var(--color-blue-boost));--color-blue-l-400:calc(var(--color-l-400) + var(--color-blue-boost));--color-blue-l-500:calc(var(--color-l-500) + var(--color-blue-boost));--color-blue-l-600:calc(var(--color-l-600) + var(--color-blue-boost));--color-blue-l-700:calc(var(--color-l-700) + var(--color-blue-boost));--color-blue-l-800:calc(var(--color-l-800) + var(--color-blue-boost));--color-blue-l-900:calc(var(--color-l-900) + var(--color-blue-boost));--color-blue-100:hsl(var(--color-blue-hs),var(--color-blue-l-100));--color-blue-200:hsl(var(--color-blue-hs),var(--color-blue-l-200));--color-blue-300:hsl(var(--color-blue-hs),var(--color-blue-l-300));--color-blue-400:hsl(var(--color-blue-hs),var(--color-blue-l-400));--color-blue-500:hsl(var(--color-blue-hs),var(--color-blue-l-500));--color-blue-600:hsl(var(--color-blue-hs),var(--color-blue-l-600));--color-blue-700:hsl(var(--color-blue-hs),var(--color-blue-l-700));--color-blue-800:hsl(var(--color-blue-hs),var(--color-blue-l-800));--color-blue-900:hsl(var(--color-blue-hs),var(--color-blue-l-900));--color-purple-h:275;--color-purple-s:60%;--color-purple-hs:var(--color-purple-h),var(--color-purple-s);--color-purple-boost:0%;--color-purple-l-100:calc(var(--color-l-100) + var(--color-purple-boost));--color-purple-l-200:calc(var(--color-l-200) + var(--color-purple-boost));--color-purple-l-300:calc(var(--color-l-300) + var(--color-purple-boost));--color-purple-l-400:calc(var(--color-l-400) + var(--color-purple-boost));--color-purple-l-500:calc(var(--color-l-500) + var(--color-purple-boost));--color-purple-l-600:calc(var(--color-l-600) + var(--color-purple-boost));--color-purple-l-700:calc(var(--color-l-700) + var(--color-purple-boost));--color-purple-l-800:calc(var(--color-l-800) + var(--color-purple-boost));--color-purple-l-900:calc(var(--color-l-900) + var(--color-purple-boost));--color-purple-100:hsl(var(--color-purple-hs),var(--color-purple-l-100));--color-purple-200:hsl(var(--color-purple-hs),var(--color-purple-l-200));--color-purple-300:hsl(var(--color-purple-hs),var(--color-purple-l-300));--color-purple-400:hsl(var(--color-purple-hs),var(--color-purple-l-400));--color-purple-500:hsl(var(--color-purple-hs),var(--color-purple-l-500));--color-purple-600:hsl(var(--color-purple-hs),var(--color-purple-l-600));--color-purple-700:hsl(var(--color-purple-hs),var(--color-purple-l-700));--color-purple-800:hsl(var(--color-purple-hs),var(--color-purple-l-800));--color-purple-900:hsl(var(--color-purple-hs),var(--color-purple-l-900));--color-pink-h:320;--color-pink-s:70%;--color-pink-hs:var(--color-pink-h),var(--color-pink-s);--color-pink-boost:0%;--color-pink-l-100:calc(var(--color-l-100) + var(--color-pink-boost));--color-pink-l-200:calc(var(--color-l-200) + var(--color-pink-boost));--color-pink-l-300:calc(var(--color-l-300) + var(--color-pink-boost));--color-pink-l-400:calc(var(--color-l-400) + var(--color-pink-boost));--color-pink-l-500:calc(var(--color-l-500) + var(--color-pink-boost));--color-pink-l-600:calc(var(--color-l-600) + var(--color-pink-boost));--color-pink-l-700:calc(var(--color-l-700) + var(--color-pink-boost));--color-pink-l-800:calc(var(--color-l-800) + var(--color-pink-boost));--color-pink-l-900:calc(var(--color-l-900) + var(--color-pink-boost));--color-pink-100:hsl(var(--color-pink-hs),var(--color-pink-l-100));--color-pink-200:hsl(var(--color-pink-hs),var(--color-pink-l-200));--color-pink-300:hsl(var(--color-pink-hs),var(--color-pink-l-300));--color-pink-400:hsl(var(--color-pink-hs),var(--color-pink-l-400));--color-pink-500:hsl(var(--color-pink-hs),var(--color-pink-l-500));--color-pink-600:hsl(var(--color-pink-hs),var(--color-pink-l-600));--color-pink-700:hsl(var(--color-pink-hs),var(--color-pink-l-700));--color-pink-800:hsl(var(--color-pink-hs),var(--color-pink-l-800));--color-pink-900:hsl(var(--color-pink-hs),var(--color-pink-l-900));--color-gray-h:0;--color-gray-s:0%;--color-gray-hs:var(--color-gray-h),var(--color-gray-s);--color-gray-boost:0%;--color-gray-l-100:calc(var(--color-l-100) + var(--color-gray-boost));--color-gray-l-200:calc(var(--color-l-200) + var(--color-gray-boost));--color-gray-l-300:calc(var(--color-l-300) + var(--color-gray-boost));--color-gray-l-400:calc(var(--color-l-400) + var(--color-gray-boost));--color-gray-l-500:calc(var(--color-l-500) + var(--color-gray-boost));--color-gray-l-600:calc(var(--color-l-600) + var(--color-gray-boost));--color-gray-l-700:calc(var(--color-l-700) + var(--color-gray-boost));--color-gray-l-800:calc(var(--color-l-800) + var(--color-gray-boost));--color-gray-l-900:calc(var(--color-l-900) + var(--color-gray-boost));--color-gray-100:hsl(var(--color-gray-hs),var(--color-gray-l-100));--color-gray-200:hsl(var(--color-gray-hs),var(--color-gray-l-200));--color-gray-250:#e8e8e8;--color-gray-300:hsl(var(--color-gray-hs),var(--color-gray-l-300));--color-gray-400:hsl(var(--color-gray-hs),var(--color-gray-l-400));--color-gray-500:hsl(var(--color-gray-hs),var(--color-gray-l-500));--color-gray-600:hsl(var(--color-gray-hs),var(--color-gray-l-600));--color-gray-700:hsl(var(--color-gray-hs),var(--color-gray-l-700));--color-gray-800:hsl(var(--color-gray-hs),var(--color-gray-l-800));--color-gray-900:hsl(var(--color-gray-hs),var(--color-gray-l-900));--color-backdrop:#0009;--color-black:black;--color-border:var(--color-gray-300);--color-dark:var(--color-gray-900);--color-focus:var(--color-blue-600);--color-light:var(--color-gray-200);--color-text:var(--color-black);--color-text-dimmed:var(--color-gray-700);--color-white:white;--color-background:var(--color-light);--color-gray:var(--color-gray-600);--color-red:var(--color-red-600);--color-orange:var(--color-orange-600);--color-yellow:var(--color-yellow-600);--color-green:var(--color-green-600);--color-aqua:var(--color-aqua-600);--color-blue:var(--color-blue-600);--color-purple:var(--color-purple-600);--color-focus-light:var(--color-focus);--color-focus-outline:var(--color-focus);--color-negative:var(--color-red-700);--color-negative-light:var(--color-red-500);--color-negative-outline:var(--color-red-900);--color-notice:var(--color-orange-700);--color-notice-light:var(--color-orange-500);--color-positive:var(--color-green-700);--color-positive-light:var(--color-green-500);--color-positive-outline:var(--color-green-900);--color-text-light:var(--color-text-dimmed);--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--font-mono:"SFMono-Regular",Consolas,Liberation Mono,Menlo,Courier,monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--text-4xl:2.5rem;--text-5xl:3rem;--text-6xl:4rem;--text-base:var(--text-md);--font-size-tiny:var(--text-xs);--font-size-small:var(--text-sm);--font-size-medium:var(--text-base);--font-size-large:var(--text-xl);--font-size-huge:var(--text-2xl);--font-size-monster:var(--text-3xl);--font-thin:300;--font-normal:400;--font-semi:500;--font-bold:600;--height-xs:1.5rem;--height-sm:1.75rem;--height-md:2rem;--height-lg:2.25rem;--height-xl:2.5rem;--height:var(--height-md);--opacity-disabled:.5;--rounded-xs:1px;--rounded-sm:.125rem;--rounded-md:.25rem;--rounded-lg:.375rem;--rounded-xl:.5rem;--rounded:var(--rounded-md);--shadow-sm:0 1px 3px 0 #0000000d,0 1px 2px 0 #00000006;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000d;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000d;--shadow:var(--shadow-sm);--shadow-toolbar:#0000001a -2px 0 5px,var(--shadow),var(--shadow-xl);--shadow-outline:var(--color-focus,currentColor)0 0 0 2px;--shadow-inset:inset 0 2px 4px 0 #0000000f;--shadow-sticky:#0000000d 0 2px 5px;--box-shadow-dropdown:var(--shadow-dropdown);--box-shadow-item:var(--shadow);--box-shadow-focus:var(--shadow-xl);--shadow-dropdown:var(--shadow-lg);--shadow-item:var(--shadow-sm);--spacing-0:0;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-24:6rem;--spacing-36:9rem;--spacing-48:12rem;--spacing-px:1px;--spacing-2px:2px;--spacing-5:1.25rem;--spacing-10:2.5rem;--spacing-20:5rem;--z-offline:1200;--z-fatal:1100;--z-loader:1000;--z-notification:900;--z-dialog:800;--z-navigation:700;--z-dropdown:600;--z-drawer:500;--z-dropzone:400;--z-toolbar:300;--z-content:200;--z-background:100;--pattern-size:16px;--pattern-light:repeating-conic-gradient(#fff 0% 25%,#e6e6e6 0% 50%)50%/var(--pattern-size)var(--pattern-size);--pattern-dark:repeating-conic-gradient(#262626 0% 25%,#383838 0% 50%)50%/var(--pattern-size)var(--pattern-size);--pattern:var(--pattern-dark)}:root{--container:80rem;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--field-input-padding:var(--input-padding);--field-input-height:var(--input-height);--field-input-line-height:var(--input-leading);--field-input-font-size:var(--input-font-size);--bg-pattern:var(--pattern)}:root{--choice-color-back:var(--color-white);--choice-color-border:var(--color-gray-500);--choice-color-checked:var(--color-black);--choice-color-disabled:var(--color-gray-400);--choice-color-icon:var(--color-light);--choice-color-info:var(--color-text-dimmed);--choice-color-text:var(--color-text);--choice-color-toggle:var(--choice-color-disabled);--choice-height:1rem;--choice-rounded:var(--rounded-sm)}input:where([type=checkbox],[type=radio]){cursor:pointer;height:var(--choice-height);aspect-ratio:1;border:1px solid var(--choice-color-border);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--choice-rounded);background:var(--choice-color-back);box-shadow:var(--shadow-sm);flex-shrink:0;position:relative;overflow:hidden}input:where([type=checkbox],[type=radio]):after{content:"";text-align:center;place-items:center;display:none;position:absolute}input:where([type=checkbox],[type=radio]):focus{outline:var(--outline);outline-offset:-1px;color:var(--color-focus)}input:where([type=checkbox]):checked{border-color:var(--choice-color-checked)}input:where([type=checkbox],[type=radio]):checked:after{background:var(--choice-color-checked);display:grid}input:where([type=checkbox],[type=radio]):checked:focus{--choice-color-checked:var(--color-focus)}input:where([type=checkbox],[type=radio])[disabled]{--choice-color-back:none;--choice-color-border:var(--color-gray-300);--choice-color-checked:var(--choice-color-disabled);box-shadow:none;cursor:not-allowed}input[type=checkbox]:checked:after{content:"✓";color:var(--choice-color-icon);font-weight:700;line-height:1;inset:0}input[type=radio]{--choice-rounded:50%}input[type=radio]:after{border-radius:var(--choice-rounded);font-size:9px;inset:3px}input[type=checkbox][data-variant=toggle]{--choice-rounded:var(--choice-height);aspect-ratio:2}input[type=checkbox][data-variant=toggle]:after{background:var(--choice-color-toggle);border-radius:var(--choice-rounded);width:.8rem;font-size:7px;transition:margin-inline-start 75ms ease-in-out,background .1s ease-in-out;display:grid;inset:1px}input[type=checkbox][data-variant=toggle]:checked{border-color:var(--choice-color-border)}input[type=checkbox][data-variant=toggle]:checked:after{background:var(--choice-color-checked);margin-inline-start:50%}:root{--range-thumb-color:var(--color-white);--range-thumb-focus-outline:var(--outline);--range-thumb-size:1rem;--range-thumb-shadow:#0000001a 0 2px 4px 2px,#00000020 0 0 0 1px;--range-track-back:var(--color-gray-250);--range-track-height:var(--range-thumb-size)}:where(input[type=range]){-webkit-appearance:none;-moz-appearance:none;appearance:none;height:var(--range-thumb-size);border-radius:var(--range-track-size);align-items:center;width:100%;padding:0;display:flex}:where(input[type=range])::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--range-thumb-size);height:var(--range-thumb-size);background:var(--range-thumb-color);box-shadow:var(--range-thumb-shadow);margin-top:calc(((var(--range-thumb-size) - var(--range-track-height))/2)*-1);z-index:1;cursor:grab;border:0;border-radius:50%;transform:translate(0)}:where(input[type=range])::-moz-range-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--range-thumb-size);height:var(--range-thumb-size);background:var(--range-thumb-color);box-shadow:var(--range-thumb-shadow);z-index:1;cursor:grab;border:0;border-radius:50%;transform:translate(0)}:where(input[type=range])::-webkit-slider-thumb:active{cursor:grabbing}:where(input[type=range])::-moz-range-thumb:active{cursor:grabbing}:where(input[type=range])::-webkit-slider-runnable-track{background:var(--range-track-back);height:var(--range-track-height);border-radius:var(--range-track-height)}:where(input[type=range])::-moz-range-track{background:var(--range-track-back);height:var(--range-track-height);border-radius:var(--range-track-height)}:where(input[type=range][disabled]){--range-thumb-color:#fff3}:where(input[type=range][disabled])::-webkit-slider-thumb{cursor:not-allowed}:where(input[type=range][disabled])::-moz-range-thumb{cursor:not-allowed}:where(input[type=range]):focus{outline:var(--outline)}:where(input[type=range]):focus::-webkit-slider-thumb{outline:var(--range-thumb-focus-outline)}:where(input[type=range]):focus::-moz-range-thumb{outline:var(--range-thumb-focus-outline)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:where(b,strong){font-weight:var(--font-bold,600)}:where([hidden]){display:none!important}:where(abbr){text-decoration:none}:where(input,button,textarea,select){font:inherit;line-height:inherit;color:inherit;background:0 0;border:0}:where(fieldset){border:0}:where(legend){float:left;width:100%}:where(legend+*){clear:both}:where(select){-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-white);color:var(--color-black);cursor:pointer}:where(textarea,select,input:not([type=checkbox],[type=radio],[type=reset],[type=submit])){font-variant-numeric:tabular-nums;width:100%}:where(textarea){resize:vertical;line-height:1.5}:where(input)::-webkit-calendar-picker-indicator{display:none}:where(input[type=search]){-webkit-appearance:none;-moz-appearance:none;appearance:none}:where(input)::-webkit-search-cancel-button{display:none}:where(button,label,select,summary,[role=button],[role=option]){cursor:pointer}:where(select[multiple]) option{align-items:center;display:flex}:where(input:autofill){-webkit-background-clip:text;-webkit-text-fill-color:var(--input-color-text)!important}:where(:disabled){cursor:not-allowed}::placeholder{color:var(--input-color-placeholder);opacity:1}:where(a){color:currentColor;text-underline-offset:.2ex;text-decoration:none}:where(ul,ol){list-style:none}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block}:where(iframe){border:0}:where(img,picture,svg){block-size:auto;max-inline-size:100%}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}:where(h1,h2,h3,h4,h5,h6){font:inherit}:where(:focus,:focus-visible,:focus-within){outline-color:var(--color-focus,currentColor);outline-offset:0}:where(:focus-visible){outline:var(--outline,2px solid var(--color-focus,currentColor))}:where(:invalid){box-shadow:none;outline:0}:where(dialog){border:0;max-width:none;max-height:none}:where(hr){border:0}:where(table){font:inherit;border-spacing:0;font-variant-numeric:tabular-nums;width:100%}:where(table th){font:inherit;text-align:start}:where(svg){fill:currentColor}body{font-family:var(--font-sans,sans-serif);font-size:var(--text-sm);accent-color:var(--color-focus,currentColor);line-height:1;position:relative}:where(sup,sub){vertical-align:baseline;font-size:75%;line-height:0;position:relative}:where(sup){top:-.5em}:where(sub){bottom:-.25em}:where(mark){background:var(--color-yellow-300)}:where(kbd){padding-inline:var(--spacing-2);border-radius:var(--rounded);background:var(--color-white);box-shadow:var(--shadow);display:inline-block}[data-align=left]{--align:start}[data-align=center]{--align:center}[data-align=right]{--align:end}@keyframes LoadingCursor{to{cursor:progress}}@keyframes Spin{to{transform:rotate(360deg)}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[data-theme]{--theme-color-h:0;--theme-color-s:0%;--theme-color-hs:var(--theme-color-h),var(--theme-color-s);--theme-color-boost:3%;--theme-color-l-100:calc(var(--color-l-100) + var(--theme-color-boost));--theme-color-l-200:calc(var(--color-l-200) + var(--theme-color-boost));--theme-color-l-300:calc(var(--color-l-300) + var(--theme-color-boost));--theme-color-l-400:calc(var(--color-l-400) + var(--theme-color-boost));--theme-color-l-500:calc(var(--color-l-500) + var(--theme-color-boost));--theme-color-l-600:calc(var(--color-l-600) + var(--theme-color-boost));--theme-color-l-700:calc(var(--color-l-700) + var(--theme-color-boost));--theme-color-l-800:calc(var(--color-l-800) + var(--theme-color-boost));--theme-color-l-900:calc(var(--color-l-900) + var(--theme-color-boost));--theme-color-100:hsl(var(--theme-color-hs),var(--theme-color-l-100));--theme-color-200:hsl(var(--theme-color-hs),var(--theme-color-l-200));--theme-color-300:hsl(var(--theme-color-hs),var(--theme-color-l-300));--theme-color-400:hsl(var(--theme-color-hs),var(--theme-color-l-400));--theme-color-500:hsl(var(--theme-color-hs),var(--theme-color-l-500));--theme-color-600:hsl(var(--theme-color-hs),var(--theme-color-l-600));--theme-color-700:hsl(var(--theme-color-hs),var(--theme-color-l-700));--theme-color-800:hsl(var(--theme-color-hs),var(--theme-color-l-800));--theme-color-900:hsl(var(--theme-color-hs),var(--theme-color-l-900));--theme-color-text:var(--theme-color-900);--theme-color-text-dimmed:var(--theme-color-700);--theme-color-back:var(--theme-color-400);--theme-color-hover:var(--theme-color-500);--theme-color-icon:var(--theme-color-600)}[data-theme=error],[data-theme=negative]{--theme-color-h:var(--color-red-h);--theme-color-s:var(--color-red-s);--theme-color-boost:var(--color-red-boost)}[data-theme=notice]{--theme-color-h:var(--color-orange-h);--theme-color-s:var(--color-orange-s);--theme-color-boost:var(--color-orange-boost)}[data-theme=warning]{--theme-color-h:var(--color-yellow-h);--theme-color-s:var(--color-yellow-s);--theme-color-boost:var(--color-yellow-boost)}[data-theme=info]{--theme-color-h:var(--color-blue-h);--theme-color-s:var(--color-blue-s);--theme-color-boost:var(--color-blue-boost)}[data-theme=positive]{--theme-color-h:var(--color-green-h);--theme-color-s:var(--color-green-s);--theme-color-boost:var(--color-green-boost)}[data-theme=passive]{--theme-color-h:var(--color-gray-h);--theme-color-s:var(--color-gray-s);--theme-color-boost:10%}[data-theme=white],[data-theme=text]{--theme-color-back:var(--color-white);--theme-color-icon:var(--color-gray-800);--theme-color-text:var(--color-text);--color-h:var(--color-black)}[data-theme=dark]{--theme-color-h:var(--color-gray-h);--theme-color-s:var(--color-gray-s);--theme-color-boost:var(--color-gray-boost);--theme-color-back:var(--color-gray-800);--theme-color-icon:var(--color-gray-500);--theme-color-text:var(--color-gray-200)}[data-theme=code]{--theme-color-back:var(--code-color-back);--theme-color-hover:var(--color-black);--theme-color-icon:var(--code-color-icon);--theme-color-text:var(--code-color-text);font-family:var(--code-font-family);font-size:var(--code-font-size)}[data-theme=empty]{--theme-color-back:var(--color-light);--theme-color-border:var(--color-gray-400);--theme-color-icon:var(--color-gray-600);--theme-color-text:var(--color-text-dimmed);border:1px dashed var(--theme-color-border)}[data-theme=none]{--theme-color-back:transparent;--theme-color-border:transparent;--theme-color-icon:var(--color-text);--theme-color-text:var(--color-text)}[data-theme]{--theme:var(--theme-color-700);--theme-light:var(--theme-color-500);--theme-bg:var(--theme-color-500)}:root{--outline:2px solid var(--color-focus,currentColor)}.scroll-x,.scroll-x-auto,.scroll-y,.scroll-y-auto{-webkit-overflow-scrolling:touch;transform:translate(0)}.scroll-x{overflow:scroll hidden}.scroll-x-auto{overflow:auto hidden}.scroll-y{overflow:hidden scroll}.scroll-y-auto{overflow:hidden auto}.input-hidden{-webkit-appearance:none;-moz-appearance:none;appearance:none;opacity:0;width:0;height:0;position:absolute}.k-lab-index-view>.k-header{margin-bottom:0}.k-lab-index-view>.k-box{margin-bottom:var(--spacing-8)}.k-lab-index-view .k-list-items{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr))}.k-lab-example{outline-offset:-2px;border-radius:var(--rounded);border:1px solid var(--color-gray-300);max-width:100%;position:relative;container-type:inline-size}.k-lab-example+.k-lab-example{margin-top:var(--spacing-12)}.k-lab-example-header{height:var(--height-md);padding-block:var(--spacing-3);padding-inline:var(--spacing-2);border-bottom:1px solid var(--color-gray-300);justify-content:space-between;align-items:center;display:flex}.k-lab-example-label{color:var(--color-text-dimmed);font-size:12px}.k-lab-example-canvas,.k-lab-example-code{padding:var(--spacing-16)}.k-lab-example[data-flex] .k-lab-example-canvas{align-items:center;gap:var(--spacing-6);display:flex}.k-lab-example-inspector{--icon-size:13px;--button-color-icon:var(--color-gray-500)}.k-lab-example-inspector .k-button:not([data-theme]):hover{--button-color-icon:var(--color-gray-600)}.k-lab-example-inspector .k-button:where([data-theme]){--button-color-icon:var(--color-gray-800)}.k-lab-examples>:where(.k-text,.k-box){margin-bottom:var(--spacing-6)}.k-lab-form>footer{border-top:1px dashed var(--color-border);padding-top:var(--spacing-6)}.k-lab-input-examples :not([type=checkbox],[type=radio]):invalid{outline:2px solid var(--color-red-600)!important}.k-lab-options-input-examples fieldset:invalid,.k-lab-options-input-examples :not([type=checkbox],[type=radio]):invalid{outline:2px solid var(--color-red-600)}.k-lab-playground-view[data-has-tabs=true] .k-header{margin-bottom:0}.k-lab-docs-deprecated .k-box{box-shadow:var(--shadow)}.k-lab-docs-examples .k-code+.k-code{margin-top:var(--spacing-4)}.k-lab-docs-prop-values{font-size:var(--text-xs);border-left:2px solid var(--color-blue-300);padding-inline-start:var(--spacing-2)}.k-lab-docs-prop-values dl{font-weight:var(--font-bold)}.k-lab-docs-prop-values dl+dl{margin-top:var(--spacing-2)}.k-lab-docs-prop-values dd{gap:var(--spacing-1);flex-wrap:wrap;display:inline-flex}.k-lab-docs-desc-header{justify-content:space-between;align-items:center;display:flex}.k-table .k-lab-docs-deprecated{--box-height:var(--height-xs);--text-font-size:var(--text-xs)}.k-labs-docs-params li{margin-inline-start:var(--spacing-3);list-style:square}.k-labs-docs-params .k-lab-docs-types{margin-inline:1ch}.k-lab-docs-types{gap:var(--spacing-1);flex-wrap:wrap;display:inline-flex}.k-lab-docs-types.k-text code{color:var(--color-gray-800);outline-color:var(--color-gray-400);background:var(--color-gray-300)}.k-lab-docs-types code:is([data-type=boolean],[data-type=Boolean]){color:var(--color-purple-800);outline-color:var(--color-purple-400);background:var(--color-purple-300)}.k-lab-docs-types code:is([data-type=string],[data-type=String]){color:var(--color-green-800);outline-color:var(--color-green-500);background:var(--color-green-300)}.k-lab-docs-types code:is([data-type=number],[data-type=Number]){color:var(--color-orange-800);outline-color:var(--color-orange-500);background:var(--color-orange-300)}.k-lab-docs-types code:is([data-type=array],[data-type=Array]){color:var(--color-aqua-800);outline-color:var(--color-aqua-500);background:var(--color-aqua-300)}.k-lab-docs-types code:is([data-type=object],[data-type=Object]){color:var(--color-yellow-800);outline-color:var(--color-yellow-500);background:var(--color-yellow-300)}.k-lab-docs-types code[data-type=func]{color:var(--color-pink-800);outline-color:var(--color-pink-400);background:var(--color-pink-300)}.k-lab-docs-section+.k-lab-docs-section{margin-top:var(--spacing-12)}.k-lab-docs-section .k-headline{margin-bottom:var(--spacing-3)}.k-lab-docs-section .k-table td{padding:.375rem var(--table-cell-padding);vertical-align:top;word-break:break-word;line-height:1.5}.k-lab-docs-description :where(.k-text,.k-box)+:where(.k-text,.k-box){margin-top:var(--spacing-3)}.k-lab-docs-required{vertical-align:super;color:var(--color-red-600);margin-inline-start:var(--spacing-1);font-size:.7rem}.k-lab-docs-since{margin-top:var(--spacing-1);font-size:var(--text-xs);color:var(--color-gray-600)}.token.punctuation,.token.comment,.token.doctype{color:var(--color-gray-500)}.token.tag,.token.markup,.token.variable,.token.this,.token.selector,.token.key,.token.kirbytag-bracket,.token.prolog,.token.delimiter{color:var(--color-red-500)}.token.constant,.token.number,.token.boolean,.token.boolean.important,.token.attr-name,.token.kirbytag-attr,.token.kirbytag-name,.token.entity,.token.bold,.token.bold>.punctuation{color:var(--color-orange-500)}.token.keyword,.token.italic,.token.italic>.punctuation{color:var(--color-purple-500)}.token.function{color:var(--color-blue-500)}.token.operator,.token.title{color:var(--color-aqua-500)}.token.string,.token.attr-value,.token.attr-value .punctuation,.token.list.punctuation{color:var(--color-green-500)}.token.scope,.token.class-name,.token.property,.token.url{color:var(--color-yellow-500)}.token.title,.token.kirbytag-bracket,.token.list.punctuation,.token.bold{font-weight:var(--font-bold)}.token.title .punctuation{color:var(--color-gray-500)}.token.italic{font-style:italic} diff --git a/panel/dist/js/Highlight.min.js b/panel/dist/js/Highlight.min.js index bc6254c838..b6f6ca5007 100644 --- a/panel/dist/js/Highlight.min.js +++ b/panel/dist/js/Highlight.min.js @@ -1 +1 @@ -import{J as e,K as t}from"./vendor.min.js";import{n as a}from"./index.min.js";var n,r,i={exports:{}};n=i,r=function(e){var t=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,a=0,n={},r={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function e(t){return t instanceof i?new i(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=d.reach);F+=w.value.length,w=w.next){var A=w.value;if(t.length>e.length)return;if(!(A instanceof i)){var $,P=1;if(y){if(!($=s(x,F,e,h))||$.index>=e.length)break;var _=$.index,z=$.index+$[0].length,S=F;for(S+=w.value.length;_>=S;)S+=(w=w.next).value.length;if(F=S-=w.value.length,w.value instanceof i)continue;for(var j=w;j!==t.tail&&(Sd.reach&&(d.reach=L);var C=w.prev;if(O&&(C=u(t,C,O),F+=O.length),c(t,C,P),w=u(t,C,new i(g,b?r.tokenize(E,b):E,k,E)),q&&u(t,w,q),P>1){var T={cause:g+","+f,reach:L};o(e,t,a,w.prev,F,T),d&&T.reach>d.reach&&(d.reach=T.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function u(e,t,a){var n=t.next,r={value:a,prev:t,next:n};return t.next=r,n.prev=r,e.length++,r}function c(e,t,a){for(var n=t.next,r=0;r"+i.content+""},!e.document)return e.addEventListener?(r.disableWorkerMessageHandler||e.addEventListener("message",(function(t){var a=JSON.parse(t.data),n=a.language,i=a.code,s=a.immediateClose;e.postMessage(r.highlight(i,r.languages[n],n)),s&&e.close()}),!1),r):r;var d=r.util.currentScript();function g(){r.manual||r.highlightAll()}if(d&&(r.filename=d.src,d.hasAttribute("data-manual")&&(r.manual=!0)),!r.manual){var p=document.readyState;"loading"===p||"interactive"===p&&d&&d.defer?document.addEventListener("DOMContentLoaded",g):window.requestAnimationFrame?window.requestAnimationFrame(g):window.setTimeout(g,16)}return r}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{}),n.exports&&(n.exports=r),void 0!==e&&(e.Prism=r);const s=t(i.exports);Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},Prism.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup,Prism.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(e,t){var a={};a["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:Prism.languages[t]},a.cdata=/^$/i;var n={"included-cdata":{pattern://i,inside:a}};n["language-"+t]={pattern:/[\s\S]+/,inside:Prism.languages[t]};var r={};r[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},Prism.languages.insertBefore("markup","cdata",r)}}),Object.defineProperty(Prism.languages.markup.tag,"addAttribute",{value:function(e,t){Prism.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:Prism.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.ssml=Prism.languages.xml,Prism.languages.atom=Prism.languages.xml,Prism.languages.rss=Prism.languages.xml,Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),Prism.languages.js=Prism.languages.javascript,function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var a=e.languages.markup;a&&(a.tag.addInlined("style","css"),a.tag.addAttribute("style","css"))}(Prism),function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(a,n,r,i){if(a.language===n){var s=a.tokenStack=[];a.code=a.code.replace(r,(function(e){if("function"==typeof i&&!i(e))return e;for(var r,o=s.length;-1!==a.code.indexOf(r=t(n,o));)++o;return s[o]=e,r})),a.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(a,n){if(a.language===n&&a.tokenStack){a.grammar=e.languages[n];var r=0,i=Object.keys(a.tokenStack);!function s(o){for(var l=0;l=i.length);l++){var u=o[l];if("string"==typeof u||u.content&&"string"==typeof u.content){var c=i[r],d=a.tokenStack[c],g="string"==typeof u?u:u.content,p=t(n,c),f=g.indexOf(p);if(f>-1){++r;var m=g.substring(0,f),b=new e.Token(n,e.tokenize(d,a.grammar),"language-"+n,d),h=g.substring(f+p.length),y=[];m&&y.push.apply(y,s([m])),y.push(b),h&&y.push.apply(y,s([h])),"string"==typeof u?o.splice.apply(o,[l,1].concat(y)):u.content=y}}else u.content&&s(u.content)}return o}(a.tokens)}}}})}(Prism),function(e){var t=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,a=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],n=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,r=/|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,i=/[{}\[\](),:;]/;e.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:t,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:a,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:n,operator:r,punctuation:i};var s={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:e.languages.php},o=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:s}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:s}}];e.languages.insertBefore("php","variable",{string:o,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:t,string:o,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:a,number:n,operator:r,punctuation:i}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),e.hooks.add("before-tokenize",(function(t){if(/<\?/.test(t.code)){e.languages["markup-templating"].buildPlaceholders(t,"php",/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g)}})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"php")}))}(Prism),function(e){var t=/[*&][^\s[\]{},]+/,a=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,n="(?:"+a.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+a.source+")?)",r=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),i=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function s(e,t){t=(t||"").replace(/m/g,"")+"m";var a=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return n})).replace(/<>/g,(function(){return e}));return RegExp(a,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return n}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return n})).replace(/<>/g,(function(){return"(?:"+r+"|"+i+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:s(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:s(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:s(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:s(i),lookbehind:!0,greedy:!0},number:{pattern:s(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:a,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(Prism);s.manual=!0;const o=a({mounted(){s.highlightAll(this.$el)},updated(){s.highlightAll(this.$el)},render(){return this.$scopedSlots.default({})}},null,null,!1,null,null,null,null).exports;export{o as default}; +import{K as e,L as t}from"./vendor.min.js";import{n as a}from"./index.min.js";var n,r,i={exports:{}};n=i,r=function(e){var t=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,a=0,n={},r={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function e(t){return t instanceof i?new i(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=d.reach);F+=w.value.length,w=w.next){var A=w.value;if(t.length>e.length)return;if(!(A instanceof i)){var $,P=1;if(y){if(!($=s(x,F,e,h))||$.index>=e.length)break;var _=$.index,z=$.index+$[0].length,S=F;for(S+=w.value.length;_>=S;)S+=(w=w.next).value.length;if(F=S-=w.value.length,w.value instanceof i)continue;for(var j=w;j!==t.tail&&(Sd.reach&&(d.reach=q);var C=w.prev;if(O&&(C=u(t,C,O),F+=O.length),c(t,C,P),w=u(t,C,new i(g,b?r.tokenize(E,b):E,k,E)),L&&u(t,w,L),P>1){var T={cause:g+","+f,reach:q};o(e,t,a,w.prev,F,T),d&&T.reach>d.reach&&(d.reach=T.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function u(e,t,a){var n=t.next,r={value:a,prev:t,next:n};return t.next=r,n.prev=r,e.length++,r}function c(e,t,a){for(var n=t.next,r=0;r"+i.content+""},!e.document)return e.addEventListener?(r.disableWorkerMessageHandler||e.addEventListener("message",(function(t){var a=JSON.parse(t.data),n=a.language,i=a.code,s=a.immediateClose;e.postMessage(r.highlight(i,r.languages[n],n)),s&&e.close()}),!1),r):r;var d=r.util.currentScript();function g(){r.manual||r.highlightAll()}if(d&&(r.filename=d.src,d.hasAttribute("data-manual")&&(r.manual=!0)),!r.manual){var p=document.readyState;"loading"===p||"interactive"===p&&d&&d.defer?document.addEventListener("DOMContentLoaded",g):window.requestAnimationFrame?window.requestAnimationFrame(g):window.setTimeout(g,16)}return r}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{}),n.exports&&(n.exports=r),void 0!==e&&(e.Prism=r);const s=t(i.exports);Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},Prism.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup,Prism.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(e,t){var a={};a["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:Prism.languages[t]},a.cdata=/^$/i;var n={"included-cdata":{pattern://i,inside:a}};n["language-"+t]={pattern:/[\s\S]+/,inside:Prism.languages[t]};var r={};r[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},Prism.languages.insertBefore("markup","cdata",r)}}),Object.defineProperty(Prism.languages.markup.tag,"addAttribute",{value:function(e,t){Prism.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:Prism.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.ssml=Prism.languages.xml,Prism.languages.atom=Prism.languages.xml,Prism.languages.rss=Prism.languages.xml,Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),Prism.languages.js=Prism.languages.javascript,function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+t.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var a=e.languages.markup;a&&(a.tag.addInlined("style","css"),a.tag.addAttribute("style","css"))}(Prism),function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(a,n,r,i){if(a.language===n){var s=a.tokenStack=[];a.code=a.code.replace(r,(function(e){if("function"==typeof i&&!i(e))return e;for(var r,o=s.length;-1!==a.code.indexOf(r=t(n,o));)++o;return s[o]=e,r})),a.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(a,n){if(a.language===n&&a.tokenStack){a.grammar=e.languages[n];var r=0,i=Object.keys(a.tokenStack);!function s(o){for(var l=0;l=i.length);l++){var u=o[l];if("string"==typeof u||u.content&&"string"==typeof u.content){var c=i[r],d=a.tokenStack[c],g="string"==typeof u?u:u.content,p=t(n,c),f=g.indexOf(p);if(f>-1){++r;var m=g.substring(0,f),b=new e.Token(n,e.tokenize(d,a.grammar),"language-"+n,d),h=g.substring(f+p.length),y=[];m&&y.push.apply(y,s([m])),y.push(b),h&&y.push.apply(y,s([h])),"string"==typeof u?o.splice.apply(o,[l,1].concat(y)):u.content=y}}else u.content&&s(u.content)}return o}(a.tokens)}}}})}(Prism),function(e){var t=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,a=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],n=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,r=/|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,i=/[{}\[\](),:;]/;e.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:t,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:a,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:n,operator:r,punctuation:i};var s={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:e.languages.php},o=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:s}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:s}}];e.languages.insertBefore("php","variable",{string:o,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:t,string:o,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:a,number:n,operator:r,punctuation:i}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),e.hooks.add("before-tokenize",(function(t){if(/<\?/.test(t.code)){e.languages["markup-templating"].buildPlaceholders(t,"php",/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g)}})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"php")}))}(Prism),function(e){var t=/[*&][^\s[\]{},]+/,a=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,n="(?:"+a.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+a.source+")?)",r=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),i=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function s(e,t){t=(t||"").replace(/m/g,"")+"m";var a=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return n})).replace(/<>/g,(function(){return e}));return RegExp(a,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return n}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return n})).replace(/<>/g,(function(){return"(?:"+r+"|"+i+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:s(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:s(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:s(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:s(i),lookbehind:!0,greedy:!0},number:{pattern:s(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:a,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(Prism);s.manual=!0;const o=a({mounted(){s.highlightAll(this.$el)},updated(){s.highlightAll(this.$el)},render(){return this.$scopedSlots.default({})}},null,null,!1,null,null,null,null).exports;export{o as default}; diff --git a/panel/dist/js/IndexView.min.js b/panel/dist/js/IndexView.min.js index 4c2c2cd48c..b6a13b3ac8 100644 --- a/panel/dist/js/IndexView.min.js +++ b/panel/dist/js/IndexView.min.js @@ -1 +1 @@ -import{n as e}from"./index.min.js";import"./vendor.min.js";const a=e({props:{categories:Array,tab:String}},(function(){var e=this,a=e._self._c;return a("k-panel-inside",{staticClass:"k-lab-index-view"},[a("k-header",[e._v("Lab")]),a("k-tabs",{attrs:{tab:e.tab,tabs:[{name:"examples",label:"Examples",link:"/lab"},{name:"docs",label:"Docs",link:"/lab/docs"}]}}),e._l(e.categories,(function(e){return a("k-section",{key:e.name,attrs:{headline:e.name}},[a("k-collection",{attrs:{items:e.examples,empty:{icon:e.icon,text:"Add examples to "+e.path}}})],1)}))],2)}),[],!1,null,null,null,null).exports;export{a as default}; +import{n as e}from"./index.min.js";import"./vendor.min.js";const t=e({props:{categories:Array,info:String,tab:String}},(function(){var e=this,t=e._self._c;return t("k-panel-inside",{staticClass:"k-lab-index-view"},[t("k-header",[e._v("Lab")]),t("k-tabs",{attrs:{tab:e.tab,tabs:[{name:"examples",label:"Examples",link:"/lab"},{name:"docs",label:"Docs",link:"/lab/docs"}]}}),e.info?t("k-box",{attrs:{icon:"question",theme:"info",text:e.info,html:!0}}):e._e(),e._l(e.categories,(function(e){return t("k-section",{key:e.name,attrs:{headline:e.name}},[t("k-collection",{attrs:{items:e.examples,empty:{icon:e.icon,text:"Add examples to "+e.path}}})],1)}))],2)}),[],!1,null,null,null,null).exports;export{t as default}; diff --git a/panel/dist/js/index.min.js b/panel/dist/js/index.min.js index ad0614642c..b0576b369d 100644 --- a/panel/dist/js/index.min.js +++ b/panel/dist/js/index.min.js @@ -1 +1 @@ -import{v as t,I as e,P as i,S as n,F as s,N as o,s as l,l as r,w as a,a as u,b as c,c as d,e as p,t as h,d as m,f,g,h as k,i as b,k as v,D as y,j as $,E as w,m as x,n as _,o as S,T as C,u as O,p as A,q as M,r as j,x as I,y as T,z as E,A as L,B as D,C as B,G as q,V as P,H as N}from"./vendor.min.js";const z={},F=function(t,e,i){if(!e||0===e.length)return t();const n=document.getElementsByTagName("link");return Promise.all(e.map((t=>{if(t=function(t,e){return new URL(t,e).href}(t,i),t in z)return;z[t]=!0;const e=t.endsWith(".css"),s=e?'[rel="stylesheet"]':"";if(!!i)for(let i=n.length-1;i>=0;i--){const s=n[i];if(s.href===t&&(!e||"stylesheet"===s.rel))return}else if(document.querySelector(`link[href="${t}"]${s}`))return;const o=document.createElement("link");return o.rel=e?"stylesheet":"modulepreload",e||(o.as="script",o.crossOrigin=""),o.href=t,document.head.appendChild(o),e?new Promise(((e,i)=>{o.addEventListener("load",e),o.addEventListener("error",(()=>i(new Error(`Unable to preload CSS for ${t}`))))})):void 0}))).then((()=>t())).catch((t=>{const e=new Event("vite:preloadError",{cancelable:!0});if(e.payload=t,window.dispatchEvent(e),!e.defaultPrevented)throw t}))},R={created(){this.$panel.events.subscribe();for(const t of this.$panel.plugins.created)t(this);this.$panel.events.on("popstate",(()=>{this.$panel.open(window.location.href)})),this.$panel.events.on("drop",(()=>{this.$panel.drag.stop()})),this.$store.dispatch("content/init")},destroyed(){this.$panel.events.unsubscribe()},render(t){if(this.$panel.view.component)return t(this.$panel.view.component,{key:this.$panel.view.component,props:this.$panel.view.props})}},Y={props:{after:String}},U={props:{autocomplete:String}},H={props:{autofocus:Boolean}},V={props:{before:String}},K={props:{disabled:Boolean}},W={props:{font:String}},J={props:{help:String}},G={props:{id:{type:[Number,String],default(){return this._uid}}}},X={props:{invalid:Boolean}},Z={props:{label:String}},Q={props:{layout:{type:String,default:"list"}}},tt={props:{maxlength:Number}},et={props:{minlength:Number}},it={props:{name:[Number,String]}},nt={props:{options:{default:()=>[],type:Array}}},st={props:{pattern:String}},ot={props:{placeholder:[Number,String]}},lt={props:{required:Boolean}},rt={props:{spellcheck:{type:Boolean,default:!0}}};function at(t,e,i,n,s,o,l,r){var a,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=i,u._compiled=!0),n&&(u.functional=!0),o&&(u._scopeId="data-v-"+o),l?(a=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),s&&s.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(l)},u._ssrRegister=a):s&&(a=r?function(){s.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:s),a)if(u.functional){u._injectStyles=a;var c=u.render;u.render=function(t,e){return a.call(e),c(t,e)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,a):[a]}return{exports:t,options:u}}const ut={mixins:[Q],inheritAttrs:!1,props:{columns:{type:[Object,Array],default:()=>({})},items:{type:Array,default:()=>[]},link:{type:Boolean,default:!0},sortable:Boolean,size:{type:String,default:"medium"}}};const ct=at({mixins:[ut],props:{image:{type:[Object,Boolean],default:()=>({})}},computed:{dragOptions(){return{sort:this.sortable,disabled:!1===this.sortable,draggable:".k-draggable-item"}},table(){return{columns:this.columns,rows:this.items,sortable:this.sortable}}},methods:{onDragStart(t,e){this.$panel.drag.start("text",e)},onOption(t,e,i){this.$emit("option",t,e,i)},imageOptions(t){let e=this.image,i=t.image;return!1!==e&&!1!==i&&("object"!=typeof e&&(e={}),"object"!=typeof i&&(i={}),{...i,...e})}}},(function(){var t=this,e=t._self._c;return"table"===t.layout?e("k-table",t._b({on:{change:function(e){return t.$emit("change",e)},sort:function(e){return t.$emit("sort",e)},option:t.onOption},scopedSlots:t._u([t.$scopedSlots.options?{key:"options",fn:function({row:e,rowIndex:i}){return[t._t("options",null,null,{item:e,index:i})]}}:null],null,!0)},"k-table",t.table,!1)):e("k-draggable",{staticClass:"k-items",class:"k-"+t.layout+"-items",attrs:{"data-layout":t.layout,"data-size":t.size,handle:!0,list:t.items,options:t.dragOptions},on:{change:function(e){return t.$emit("change",e)},end:function(e){return t.$emit("sort",t.items,e)}}},[t._l(t.items,(function(i,n){return[t._t("default",(function(){return[e("k-item",t._b({key:i.id??n,class:{"k-draggable-item":t.sortable&&i.sortable},attrs:{image:t.imageOptions(i),layout:t.layout,link:!!t.link&&i.link,sortable:t.sortable&&i.sortable,width:i.column},on:{click:function(e){return t.$emit("item",i,n)},drag:function(e){return t.onDragStart(e,i.dragText)},option:function(e){return t.onOption(e,i,n)}},nativeOn:{mouseover:function(e){return t.$emit("hover",e,i,n)}},scopedSlots:t._u([{key:"options",fn:function(){return[t._t("options",null,null,{item:i,index:n})]},proxy:!0}],null,!0)},"k-item",i,!1))]}),null,{item:i,itemIndex:n})]}))],2)}),[],!1,null,null,null,null).exports;const dt=at({mixins:[ut],props:{empty:{type:Object,default:()=>({})},help:String,pagination:{type:[Boolean,Object],default:!1}},computed:{hasPagination(){return!1!==this.pagination&&(!0!==this.paginationOptions.hide&&!(this.pagination.total<=this.pagination.limit))},paginationOptions(){return{limit:10,details:!0,keys:!1,total:0,hide:!1,..."object"!=typeof this.pagination?{}:this.pagination}}},watch:{$props(){this.$forceUpdate()}},methods:{onEmpty(t){t.stopPropagation(),this.$emit("empty")},onOption(...t){this.$emit("action",...t),this.$emit("option",...t)}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-collection"},[0===t.items.length?e("k-empty",t._g(t._b({attrs:{layout:t.layout}},"k-empty",t.empty,!1),t.$listeners.empty?{click:t.onEmpty}:{})):e("k-items",{attrs:{columns:t.columns,items:t.items,layout:t.layout,link:t.link,size:t.size,sortable:t.sortable},on:{change:function(e){return t.$emit("change",e)},item:function(e){return t.$emit("item",e)},option:t.onOption,sort:function(e){return t.$emit("sort",e)}},scopedSlots:t._u([{key:"options",fn:function({item:e,index:i}){return[t._t("options",null,null,{item:e,index:i})]}}],null,!0)}),t.help||t.hasPagination?e("footer",{staticClass:"k-bar k-collection-footer"},[e("k-text",{staticClass:"k-help k-collection-help",attrs:{html:t.help}}),t.hasPagination?e("k-pagination",t._b({on:{paginate:function(e){return t.$emit("paginate",e)}}},"k-pagination",t.paginationOptions,!1)):t._e()],1):t._e()],1)}),[],!1,null,null,null,null).exports;const pt=at({mixins:[Q],props:{text:String,icon:String},computed:{attrs(){const t={button:void 0!==this.$listeners.click,icon:this.icon,theme:"empty"};return"cardlets"!==this.layout&&"cards"!==this.layout||(t.align="center",t.height="var(--item-height-cardlet)"),t}}},(function(){var t=this;return(0,t._self._c)("k-box",t._b({staticClass:"k-empty",nativeOn:{click:function(e){return t.$emit("click",e)}}},"k-box",t.attrs,!1),[t._t("default",(function(){return[t._v(" "+t._s(t.text)+" ")]}))],2)}),[],!1,null,null,null,null).exports,ht={mixins:[Q],props:{image:[Object,Boolean],width:{type:String,default:"1/1"}}};const mt=at({mixins:[ht],inheritAttrs:!1,computed:{attrs(){return{back:this.image.back??"gray-500",cover:!0,...this.image,ratio:"list"===this.layout?"auto":this.image.ratio,size:this.sizes}},sizes(){switch(this.width){case"1/2":case"2/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 44em, 27em";case"1/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 29.333em, 27em";case"1/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 22em, 27em";case"2/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 27em, 27em";case"3/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 66em, 27em";default:return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 88em, 27em"}}}},(function(){var t=this,e=t._self._c;return t.image.src?e("k-image-frame",t._b({staticClass:"k-item-image"},"k-image-frame",t.attrs,!1)):e("k-icon-frame",t._b({staticClass:"k-item-image"},"k-icon-frame",t.attrs,!1))}),[],!1,null,null,null,null).exports;const ft=at({mixins:[ht,Q],inheritAttrs:!1,props:{buttons:{type:Array,default:()=>[]},data:Object,info:String,link:{type:[Boolean,String,Function]},options:{type:[Array,Function,String]},sortable:Boolean,target:String,text:String},computed:{hasFigure(){return!1!==this.image&&this.$helper.object.length(this.image)>0},title(){return this.$helper.string.stripHTML(this.$helper.string.unescapeHTML(this.text)).trim()}},methods:{onOption(t){this.$emit("action",t),this.$emit("option",t)}}},(function(){var t,e=this,i=e._self._c;return i("div",e._b({staticClass:"k-item",class:!!e.layout&&"k-"+e.layout+"-item",attrs:{"data-has-image":e.hasFigure,"data-layout":e.layout},on:{click:function(t){return e.$emit("click",t)},dragstart:function(t){return e.$emit("drag",t)}}},"div",e.data,!1),[e._t("image",(function(){return[e.hasFigure?i("k-item-image",{attrs:{image:e.image,layout:e.layout,width:e.width}}):e._e()]})),e.sortable?i("k-sort-handle",{staticClass:"k-item-sort-handle",attrs:{tabindex:"-1"}}):e._e(),i("div",{staticClass:"k-item-content"},[i("h3",{staticClass:"k-item-title",attrs:{title:e.title}},[!1!==e.link?i("k-link",{attrs:{target:e.target,to:e.link}},[i("span",{domProps:{innerHTML:e._s(e.text??"–")}})]):i("span",{domProps:{innerHTML:e._s(e.text??"–")}})],1),e.info?i("p",{staticClass:"k-item-info",domProps:{innerHTML:e._s(e.info)}}):e._e()]),i("div",{staticClass:"k-item-options",attrs:{"data-only-option":!(null==(t=e.buttons)?void 0:t.length)||!e.options&&!e.$slots.options}},[e._l(e.buttons,(function(t,n){return i("k-button",e._b({key:"button-"+n},"k-button",t,!1))})),e._t("options",(function(){return[e.options?i("k-options-dropdown",{staticClass:"k-item-options-dropdown",attrs:{options:e.options},on:{option:e.onOption}}):e._e()]}))],2)],2)}),[],!1,null,null,null,null).exports,gt={install(t){t.component("k-collection",dt),t.component("k-empty",pt),t.component("k-item",ft),t.component("k-item-image",mt),t.component("k-items",ct)}};const kt=at({},(function(){return(0,this._self._c)("div",{staticClass:"k-dialog-body"},[this._t("default")],2)}),[],!1,null,null,null,null).exports;function bt(t){if(void 0!==t)return JSON.parse(JSON.stringify(t))}function vt(t){return"object"==typeof t&&(null==t?void 0:t.constructor)===Object}function yt(t){return Object.keys(t??{}).length}function $t(t){return Object.keys(t).reduce(((e,i)=>(e[i.toLowerCase()]=t[i],e)),{})}const wt={clone:bt,isEmpty:function(t){return null==t||""===t||(!(!vt(t)||0!==yt(t))||0===t.length)},isObject:vt,length:yt,merge:function t(e,i={}){for(const n in i)i[n]instanceof Object&&Object.assign(i[n],t(e[n]??{},i[n]));return Object.assign(e??{},i),e},same:function(t,e){return JSON.stringify(t)===JSON.stringify(e)},toLowerKeys:$t},xt={props:{cancelButton:{default:!0,type:[Boolean,String,Object]},disabled:{default:!1,type:Boolean},icon:{default:"check",type:String},submitButton:{type:[Boolean,String,Object],default:!0},theme:{default:"positive",type:String}}};const _t=at({mixins:[xt],emits:["cancel"],computed:{cancel(){return this.button(this.cancelButton,{click:()=>this.$emit("cancel"),class:"k-dialog-button-cancel",icon:"cancel",text:this.$t("cancel"),variant:"filled"})},submit(){return this.button(this.submitButton,{class:"k-dialog-button-submit",disabled:this.disabled||this.$panel.dialog.isLoading,icon:this.icon,text:this.$t("confirm"),theme:this.theme,type:"submit",variant:"filled"})}},methods:{button:(t,e)=>"string"==typeof t?{...e,text:t}:!1!==t&&(!1===vt(t)?e:{...e,...t})}},(function(){var t=this,e=t._self._c;return e("k-button-group",{staticClass:"k-dialog-buttons"},[t.cancel?e("k-button",t._b({},"k-button",t.cancel,!1)):t._e(),t.submit?e("k-button",t._b({attrs:{icon:t.$panel.dialog.isLoading?"loader":t.submit.icon}},"k-button",t.submit,!1)):t._e()],1)}),[],!1,null,null,null,null).exports,St={props:{empty:{default:()=>window.panel.$t("dialog.fields.empty"),type:String},fields:{default:()=>[],type:[Array,Object]},novalidate:{default:!0,type:Boolean},value:{default:()=>({}),type:Object}}};const Ct=at({mixins:[St],emits:["input","submit"],computed:{hasFields(){return this.$helper.object.length(this.fields)>0}}},(function(){var t=this,e=t._self._c;return t.hasFields?e("k-fieldset",{staticClass:"k-dialog-fields",attrs:{novalidate:t.novalidate,fields:t.fields,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports;const Ot=at({},(function(){return(0,this._self._c)("footer",{staticClass:"k-dialog-footer"},[this._t("default")],2)}),[],!1,null,null,null,null).exports;const At=at({},(function(){var t=this,e=t._self._c;return"dialog"===t.$panel.notification.context?e("k-notification",{staticClass:"k-dialog-notification"}):t._e()}),[],!1,null,null,null,null).exports;const Mt=at({props:{autofocus:{default:!0,type:Boolean},placeholder:{default:()=>window.panel.$t("search")+" …",type:String},value:{type:String}},emits:["search"]},(function(){var t=this;return(0,t._self._c)("k-input",{staticClass:"k-dialog-search",attrs:{autofocus:t.autofocus,placeholder:t.placeholder,spellcheck:!1,value:t.value,icon:"search",type:"text"},on:{input:function(e){return t.$emit("search",e)}}})}),[],!1,null,null,null,null).exports,jt={props:{empty:{type:String,default:()=>window.panel.$t("dialog.text.empty")},text:{type:String}}};const It=at({mixins:[jt]},(function(){var t=this,e=t._self._c;return t.text?e("k-text",{attrs:{html:t.text}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports,Tt={install(t){t.component("k-dialog-body",kt),t.component("k-dialog-buttons",_t),t.component("k-dialog-fields",Ct),t.component("k-dialog-footer",Ot),t.component("k-dialog-notification",At),t.component("k-dialog-search",Mt),t.component("k-dialog-text",It)}},Et={mixins:[xt],props:{size:{default:"default",type:String},visible:{default:!1,type:Boolean}},emits:["cancel","submit"],methods:{cancel(){this.$emit("cancel")},close(){this.$emit("close")},error(t){this.$panel.notification.error(t)},focus(t){this.$panel.dialog.focus(t)},input(t){this.$emit("input",t)},open(){this.$panel.dialog.open(this)},submit(){this.$emit("submit",this.value)},success(t){this.$emit("success",t)}}};const Lt=at({mixins:[Et],emits:["cancel","submit"]},(function(){var t=this,e=t._self._c;return t.visible?e("portal",{attrs:{to:"dialog"}},[e("form",{staticClass:"k-dialog",class:t.$vnode.data.staticClass,attrs:{"data-has-footer":t.cancelButton||t.submitButton,"data-size":t.size,method:"dialog"},on:{click:function(t){t.stopPropagation()},submit:function(e){return e.preventDefault(),t.$emit("submit")}}},[t._t("header",(function(){return[e("k-dialog-notification")]})),t.$slots.default?e("k-dialog-body",[t._t("default")],2):t._e(),t._t("footer",(function(){return[t.cancelButton||t.submitButton?e("k-dialog-footer",[e("k-dialog-buttons",{attrs:{"cancel-button":t.cancelButton,disabled:t.disabled,icon:t.icon,"submit-button":t.submitButton,theme:t.theme},on:{cancel:function(e){return t.$emit("cancel")}}})],1):t._e()]}))],2)]):t._e()}),[],!1,null,null,null,null).exports;const Dt=at({mixins:[Et],props:{cancelButton:{default:!1},changes:{type:Array},loading:{type:Boolean},size:{default:"medium"},submitButton:{default:!1}},computed:{ids(){return Object.keys(this.store).filter((t=>{var e;return this.$helper.object.length(null==(e=this.store[t])?void 0:e.changes)>0}))},store(){return this.$store.state.content.models}},watch:{ids:{handler(t){this.$panel.dialog.refresh({method:"POST",body:{ids:t}})},immediate:!0}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({staticClass:"k-changes-dialog"},"k-dialog",t.$props,!1),[!1===t.loading?[e("k-headline",[t._v(t._s(t.$t("lock.unsaved")))]),t.changes.length?e("k-items",{attrs:{items:t.changes,layout:"list"}}):e("k-empty",{attrs:{icon:"edit-line"}},[t._v(t._s(t.$t("lock.unsaved.empty")))])]:[e("k-icon",{attrs:{type:"loader"}})]],2)}),[],!1,null,null,null,null).exports;const Bt=at({mixins:[Et,St],props:{fields:{default:()=>({href:{label:window.panel.$t("email"),type:"email",icon:"email"},title:{label:window.panel.$t("link.text"),type:"text",icon:"title"}})},size:{default:"medium"},submitButton:{default:()=>window.panel.$t("insert")}},data(){return{values:{href:"",title:null,...this.value}}},methods:{submit(){this.$emit("submit",this.values)}}},(function(){var t=this;return(0,t._self._c)("k-form-dialog",t._b({attrs:{value:t.values},on:{cancel:function(e){return t.$emit("cancel")},input:function(e){t.values=e},submit:t.submit}},"k-form-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const qt=at({mixins:[Et],props:{details:[Object,Array],message:String,size:{default:"medium",type:String}},emits:["cancel"],computed:{detailsList(){return Array.fromObject(this.details)}}},(function(){var t=this,e=t._self._c;return e("k-dialog",{ref:"dialog",staticClass:"k-error-dialog",attrs:{"cancel-button":!1,"submit-button":!1,size:t.size,visible:t.visible},on:{cancel:function(e){return t.$emit("cancel")}}},[e("k-text",[t._v(t._s(t.message))]),t.detailsList.length?e("dl",{staticClass:"k-error-details"},[t._l(t.detailsList,(function(i,n){return[e("dt",{key:"detail-label-"+n},[t._v(" "+t._s(i.label)+" ")]),e("dd",{key:"detail-message-"+n},["object"==typeof i.message?[e("ul",t._l(i.message,(function(i,n){return e("li",{key:n},[t._v(" "+t._s(i)+" ")])})),0)]:[t._v(" "+t._s(i.message)+" ")]],2)]}))],2):t._e()],1)}),[],!1,null,null,null,null).exports;const Pt=at({},(function(){var t=this;return(0,t._self._c)(t.$panel.dialog.component,t._g(t._b({key:t.$panel.dialog.timestamp,tag:"component",attrs:{visible:!0}},"component",t.$panel.dialog.props,!1),t.$panel.dialog.listeners()))}),[],!1,null,null,null,null).exports,Nt=(t,e)=>{let i=null;return(...n)=>{clearTimeout(i),i=setTimeout((()=>t.apply(globalThis,n)),e)}},zt={props:{delay:{default:200,type:Number},hasSearch:{default:!0,type:Boolean}},data:()=>({query:null}),watch:{query(){!1!==this.hasSearch&&this.search()}},created(){this.search=Nt(this.search,this.delay)},methods:{async search(){console.warn("Search mixin: Please implement a `search` method.")}}},Ft={props:{endpoint:String,empty:Object,fetchParams:Object,item:{type:Function,default:t=>t},max:Number,multiple:{type:Boolean,default:!0},size:{type:String,default:"medium"},value:{type:Array,default:()=>[]}}};const Rt=at({mixins:[Et,zt,Ft],data(){return{models:[],selected:this.value.reduce(((t,e)=>({...t,[e]:{id:e}})),{}),pagination:{limit:20,page:1,total:0}}},computed:{items(){return this.models.map(this.item)}},watch:{fetchParams(t,e){!1===this.$helper.object.same(t,e)&&(this.pagination.page=1,this.fetch())}},created(){this.fetch()},methods:{async fetch(){const t={page:this.pagination.page,search:this.query,...this.fetchParams};try{this.$panel.dialog.isLoading=!0;const e=await this.$api.get(this.endpoint,t);this.models=e.data,this.pagination=e.pagination,this.$emit("fetched",e)}catch(e){this.$panel.error(e),this.models=[]}finally{this.$panel.dialog.isLoading=!1}},isSelected(t){return void 0!==this.selected[t.id]},paginate(t){this.pagination.page=t.page,this.pagination.limit=t.limit,this.fetch()},submit(){this.$emit("submit",Object.values(this.selected))},async search(){this.pagination.page=0,await this.fetch()},toggle(t){if(!1!==this.multiple&&1!==this.max||(this.selected={}),this.isSelected(t))return Vue.del(this.selected,t.id);this.max&&this.max<=this.$helper.object.length(this.selected)||Vue.set(this.selected,t.id,t)}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({staticClass:"k-models-dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:t.submit}},"k-dialog",t.$props,!1),[t._t("header"),t.hasSearch?e("k-dialog-search",{attrs:{value:t.query},on:{search:function(e){t.query=e}}}):t._e(),e("k-collection",{attrs:{empty:{...t.empty,text:t.$panel.dialog.isLoading?t.$t("loading"):t.empty.text},items:t.items,link:!1,pagination:{details:!0,dropdown:!1,align:"center",...t.pagination},sortable:!1,layout:"list"},on:{item:t.toggle,paginate:t.paginate},scopedSlots:t._u([{key:"options",fn:function({item:i}){return[t.isSelected(i)?e("k-button",{attrs:{icon:t.multiple&&1!==t.max?"check":"circle-nested",title:t.$t("remove"),theme:"info"},on:{click:function(e){return e.stopPropagation(),t.toggle(i)}}}):e("k-button",{attrs:{title:t.$t("select"),icon:"circle-outline"},on:{click:function(e){return e.stopPropagation(),t.toggle(i)}}}),t._t("options",null,null,{item:i})]}}],null,!0)})],2)}),[],!1,null,null,null,null).exports;const Yt=at({mixins:[Et,Ft],props:{empty:{type:Object,default:()=>({icon:"image",text:window.panel.$t("dialog.files.empty")})}}},(function(){var t=this;return(0,t._self._c)("k-models-dialog",t._b({on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",e)}}},"k-models-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const Ut=at({mixins:[Et,St],props:{size:{default:"medium"},submitButton:{default:()=>window.panel.$t("save")},text:{type:String}},emits:["cancel","input","submit"]},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-dialog",t.$props,!1),[t._t("default",(function(){return[t.text?e("k-dialog-text",{attrs:{text:t.text}}):t._e(),e("k-dialog-fields",{attrs:{fields:t.fields,novalidate:t.novalidate,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})]}))],2)}),[],!1,null,null,null,null).exports;const Ht=at({extends:Ut,watch:{"value.name"(t){this.fields.code.disabled||this.onNameChanges(t)},"value.code"(t){this.fields.code.disabled||(this.value.code=this.$helper.slug(t,[this.$panel.system.ascii]),this.onCodeChanges(this.value.code))}},methods:{onCodeChanges(t){if(!t)return this.value.locale=null;if(t.length>=2)if(-1!==t.indexOf("-")){let e=t.split("-"),i=[e[0],e[1].toUpperCase()];this.value.locale=i.join("_")}else{let e=this.$panel.system.locales??[];this.value.locale=null==e?void 0:e[t]}},onNameChanges(t){this.value.code=this.$helper.slug(t,[this.value.rules,this.$panel.system.ascii]).substr(0,2)}}},null,null,!1,null,null,null,null).exports;const Vt=at({mixins:[Et,St],props:{fields:{default:()=>({href:{label:window.panel.$t("link"),type:"link",placeholder:window.panel.$t("url.placeholder"),icon:"url"},title:{label:window.panel.$t("title"),type:"text",icon:"title"},target:{label:window.panel.$t("open.newWindow"),type:"toggle",text:[window.panel.$t("no"),window.panel.$t("yes")]}})},size:{default:"medium"},submitButton:{default:()=>window.panel.$t("insert")}},data(){return{values:{href:"",title:null,...this.value,target:Boolean(this.value.target??!1)}}},methods:{submit(){const t=this.values.href.replace("file://","/@/file/").replace("page://","/@/page/");this.$emit("submit",{...this.values,href:t,target:this.values.target?"_blank":null})}}},(function(){var t=this;return(0,t._self._c)("k-form-dialog",t._b({attrs:{value:t.values},on:{cancel:function(e){return t.$emit("cancel")},input:function(e){t.values=e},submit:t.submit}},"k-form-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const Kt=at({mixins:[Ut],props:{blueprints:{type:Array},size:{default:"medium",type:String},submitButton:{type:[String,Boolean],default:()=>window.panel.$t("save")},template:{type:String}},computed:{templates(){return this.blueprints.map((t=>({text:t.title,value:t.name})))}},methods:{pick(t){this.$panel.dialog.reload({query:{...this.$panel.dialog.query,slug:this.value.slug,template:t,title:this.value.title}})}}},(function(){var t=this,e=t._self._c;return e("k-form-dialog",t._b({ref:"dialog",staticClass:"k-page-create-dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-form-dialog",t.$props,!1),[t.templates.length>1?e("k-select-field",{staticClass:"k-page-template-switch",attrs:{empty:!1,label:t.$t("template"),options:t.templates,required:!0,value:t.template},on:{input:function(e){return t.pick(e)}}}):t._e(),e("k-dialog-fields",{attrs:{fields:t.fields,novalidate:t.novalidate,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})],1)}),[],!1,null,null,null,null).exports;const Wt=at({mixins:[Et],props:{value:{default:()=>({}),type:Object}},emits:["cancel","input","submit"],methods:{select(t){this.$emit("input",{...this.value,parent:t.id})}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",staticClass:"k-page-move-dialog",attrs:{"submit-button":{icon:"parent",text:t.$t("move")},size:"medium"},on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-dialog",t.$props,!1),[e("k-headline",[t._v(t._s(t.$t("page.move")))]),e("div",{staticClass:"k-page-move-parent",attrs:{tabindex:"0","data-autofocus":""}},[e("k-page-tree",{attrs:{current:t.value.parent,move:t.value.move,identifier:"id"},on:{select:t.select}})],1)],1)}),[],!1,null,null,null,null).exports;const Jt=at({mixins:[Et,Ft],props:{empty:{type:Object,default:()=>({icon:"page",text:window.panel.$t("dialog.pages.empty")})}},data:()=>({model:null,parent:null})},(function(){var t=this,e=t._self._c;return e("k-models-dialog",t._b({attrs:{"fetch-params":{parent:t.parent}},on:{cancel:function(e){return t.$emit("cancel")},fetched:function(e){t.model=e.model},submit:function(e){return t.$emit("submit",e)}},scopedSlots:t._u([t.model?{key:"header",fn:function(){return[e("header",{staticClass:"k-pages-dialog-navbar"},[e("k-button",{attrs:{disabled:!t.model.id,title:t.$t("back"),icon:"angle-left"},on:{click:function(e){t.parent=t.model.parent}}}),e("k-headline",[t._v(t._s(t.model.title))])],1)]},proxy:!0}:null,t.model?{key:"options",fn:function({item:i}){return[e("k-button",{staticClass:"k-pages-dialog-option",attrs:{disabled:!i.hasChildren,title:t.$t("open"),icon:"angle-right"},on:{click:function(e){e.stopPropagation(),t.parent=i.id}}})]}}:null],null,!0)},"k-models-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const Gt=at({mixins:[{mixins:[Et,jt]}]},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-dialog",t.$props,!1),[t._t("default",(function(){return[e("k-dialog-text",{attrs:{text:t.text}})]}))],2)}),[],!1,null,null,null,null).exports;const Xt=at({mixins:[Gt],props:{icon:{default:"trash"},submitButton:{default:()=>window.panel.$t("delete")},theme:{default:"negative"}}},(function(){var t=this;return(0,t._self._c)("k-text-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-text-dialog",t.$props,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Zt=at({mixins:[Et,zt],emits:["cancel"],data(){return{isLoading:!1,items:[],pagination:{},selected:-1,type:this.$panel.searches[this.$panel.view.search]?this.$panel.view.search:Object.keys(this.$panel.searches)[0]}},computed:{currentType(){return this.$panel.searches[this.type]??this.types[0]},types(){return Object.values(this.$panel.searches).map((t=>({...t,current:this.type===t.id,click:()=>{this.type=t.id,this.focus()}})))}},watch:{type(){this.search()}},methods:{clear(){this.items=[],this.query=null},focus(){var t;null==(t=this.$refs.input)||t.focus()},navigate(t){t&&(this.$go(t.link),this.close())},onDown(){this.selected=0&&this.select(this.selected-1)},async search(){var t,e;this.isLoading=!0,null==(t=this.$refs.types)||t.close(),null==(e=this.select)||e.call(this,-1);try{if(null===this.query||this.query.length<2)throw Error("Empty query");const t=await this.$search(this.type,this.query);this.items=t.results,this.pagination=t.pagination}catch(i){this.items=[],this.pagination={}}finally{this.isLoading=!1}},select(t){var e;this.selected=t;const i=(null==(e=this.$refs.items)?void 0:e.$el.querySelectorAll(".k-item"))??[];for(const n of i)delete n.dataset.selected;t>=0&&(i[t].dataset.selected=!0)}}},(function(){var t,e=this,i=e._self._c;return i("k-dialog",e._b({staticClass:"k-search-dialog",attrs:{"cancel-button":!1,"submit-button":!1,role:"search",size:"medium"},on:{cancel:function(t){return e.$emit("cancel")},submit:e.submit}},"k-dialog",e.$props,!1),[i("div",{staticClass:"k-search-dialog-input"},[i("k-button",{staticClass:"k-search-dialog-types",attrs:{dropdown:!0,icon:e.currentType.icon,text:e.currentType.label,variant:"dimmed"},on:{click:function(t){return e.$refs.types.toggle()}}}),i("k-dropdown-content",{ref:"types",attrs:{options:e.types}}),i("k-search-input",{ref:"input",attrs:{"aria-label":e.$t("search"),autofocus:!0,value:e.query},on:{input:function(t){e.query=t}},nativeOn:{keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.preventDefault(),e.onDown.apply(null,arguments))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.preventDefault(),e.onUp.apply(null,arguments))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.onEnter.apply(null,arguments)}]}}),i("k-button",{staticClass:"k-search-dialog-close",attrs:{icon:e.isLoading?"loader":"cancel",title:e.$t("close")},on:{click:e.close}})],1),(null==(t=e.query)?void 0:t.length)>1?i("div",{staticClass:"k-search-dialog-results"},[e.items.length?i("k-collection",{ref:"items",attrs:{items:e.items},nativeOn:{mouseout:function(t){return e.select(-1)}}}):e._e(),i("footer",{staticClass:"k-search-dialog-footer"},[e.items.length?e.items.length({text:window.panel.$t("activate"),icon:"lock",theme:"notice"})}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-dialog",t.$props,!1),[e("k-dialog-text",{staticClass:"k-totp-dialog-intro",attrs:{text:t.$t("login.totp.enable.intro")}}),e("div",{staticClass:"k-totp-dialog-grid"},[e("div",{staticClass:"k-totp-qrcode"},[e("k-info-field",{attrs:{label:t.$t("login.totp.enable.qr.label"),text:t.qr,help:t.$t("login.totp.enable.qr.help",{secret:t.value.secret}),theme:"passive"}})],1),e("k-dialog-fields",{staticClass:"k-totp-dialog-fields",attrs:{fields:{info:{label:t.$t("login.totp.enable.confirm.headline"),type:"info",text:t.$t("login.totp.enable.confirm.text"),theme:"none"},confirm:{label:t.$t("login.totp.enable.confirm.label"),type:"text",counter:!1,font:"monospace",required:!0,placeholder:t.$t("login.code.placeholder.totp"),help:t.$t("login.totp.enable.confirm.help")},secret:{type:"hidden"}},novalidate:!0,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})],1)],1)}),[],!1,null,null,null,null).exports;const te=at({mixins:[Et],props:{submitButton:{type:[String,Boolean,Object],default:()=>({icon:"upload",text:window.panel.$t("upload")})}},methods:{isPreviewable:t=>["image/jpeg","image/jpg","image/gif","image/png","image/webp","image/avif","image/svg+xml"].includes(t)}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",staticClass:"k-upload-dialog",attrs:{disabled:t.disabled||0===t.$panel.upload.files.length},on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-dialog",t.$props,!1),[e("k-dropzone",{on:{drop:function(e){return t.$panel.upload.select(e)}}},[0===t.$panel.upload.files.length?[e("k-empty",{attrs:{icon:"upload",layout:"cards"},on:{click:function(e){return t.$panel.upload.pick()}}},[t._v(" "+t._s(t.$t("files.empty"))+" ")])]:[e("ul",{staticClass:"k-upload-items"},t._l(t.$panel.upload.files,(function(i){return e("li",{key:i.id,staticClass:"k-upload-item",attrs:{"data-completed":i.completed}},[e("a",{staticClass:"k-upload-item-preview",attrs:{href:i.url,target:"_blank"}},[t.isPreviewable(i.type)?e("k-image-frame",{attrs:{cover:!0,src:i.url,back:"pattern"}}):e("k-icon-frame",{attrs:{back:"black",color:"white",ratio:"1/1",icon:"file"}})],1),e("k-input",{staticClass:"k-upload-item-input",attrs:{disabled:i.completed,after:"."+i.extension,novalidate:!0,required:!0,type:"slug"},model:{value:i.name,callback:function(e){t.$set(i,"name",e)},expression:"file.name"}}),e("div",{staticClass:"k-upload-item-body"},[e("p",{staticClass:"k-upload-item-meta"},[t._v(" "+t._s(i.niceSize)+" "),i.progress?[t._v(" - "+t._s(i.progress)+"% ")]:t._e()],2),i.error?e("p",{staticClass:"k-upload-item-error"},[t._v(" "+t._s(i.error)+" ")]):i.progress?e("k-progress",{staticClass:"k-upload-item-progress",attrs:{value:i.progress}}):t._e()],1),e("div",{staticClass:"k-upload-item-toggle"},[i.completed||i.progress?i.completed?e("k-button",{attrs:{icon:"check",theme:"positive"},on:{click:function(e){return t.$panel.upload.remove(i.id)}}}):e("div",[e("k-icon",{attrs:{type:"loader"}})],1):e("k-button",{attrs:{icon:"remove"},on:{click:function(e){return t.$panel.upload.remove(i.id)}}})],1)],1)})),0)]],2)],1)}),[],!1,null,null,null,null).exports;const ee=at({extends:te,props:{original:Object,submitButton:{type:[String,Boolean,Object],default:()=>({icon:"upload",text:window.panel.$t("replace")})}}},(function(){var t,e,i=this,n=i._self._c;return n("k-dialog",i._b({ref:"dialog",staticClass:"k-upload-dialog k-upload-replace-dialog",on:{cancel:function(t){return i.$emit("cancel")},submit:function(t){return i.$emit("submit")}}},"k-dialog",i.$props,!1),[n("ul",{staticClass:"k-upload-items"},[n("li",{staticClass:"k-upload-original"},[i.isPreviewable(i.original.mime)?n("k-image",{attrs:{cover:!0,src:i.original.url,back:"pattern"}}):n("k-icon-frame",{attrs:{color:(null==(t=i.original.image)?void 0:t.color)??"white",icon:(null==(e=i.original.image)?void 0:e.icon)??"file",back:"black",ratio:"1/1"}})],1),n("li",[i._v("←")]),i._l(i.$panel.upload.files,(function(t){var e,s;return n("li",{key:t.id,staticClass:"k-upload-item",attrs:{"data-completed":t.completed}},[n("a",{staticClass:"k-upload-item-preview",attrs:{href:t.url,target:"_blank"}},[i.isPreviewable(t.type)?n("k-image",{attrs:{cover:!0,src:t.url,back:"pattern"}}):n("k-icon-frame",{attrs:{color:(null==(e=i.original.image)?void 0:e.color)??"white",icon:(null==(s=i.original.image)?void 0:s.icon)??"file",back:"black",ratio:"1/1"}})],1),n("k-input",{staticClass:"k-upload-item-input",attrs:{value:i.$helper.file.name(i.original.filename),disabled:!0,after:"."+t.extension,type:"text"}}),n("div",{staticClass:"k-upload-item-body"},[n("p",{staticClass:"k-upload-item-meta"},[i._v(" "+i._s(t.niceSize)+" "),t.progress?[i._v(" - "+i._s(t.progress)+"% ")]:i._e()],2),n("p",{staticClass:"k-upload-item-error"},[i._v(i._s(t.error))])]),n("div",{staticClass:"k-upload-item-progress"},[t.progress>0&&!t.error?n("k-progress",{attrs:{value:t.progress}}):i._e()],1),n("div",{staticClass:"k-upload-item-toggle"},[t.completed?n("k-button",{attrs:{icon:"check",theme:"positive"},on:{click:function(e){return i.$panel.upload.remove(t.id)}}}):t.progress?n("div",[n("k-icon",{attrs:{type:"loader"}})],1):i._e()],1)],1)}))],2)])}),[],!1,null,null,null,null).exports;const ie=at({mixins:[Et,Ft],props:{empty:{type:Object,default:()=>({icon:"users",text:window.panel.$t("dialog.users.empty")})},item:{type:Function,default:t=>({...t,key:t.email,info:t.info!==t.text?t.info:null})}}},(function(){var t=this;return(0,t._self._c)("k-models-dialog",t._b({on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",e)}}},"k-models-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports,ne={install(t){t.use(Tt),t.component("k-dialog",Lt),t.component("k-changes-dialog",Dt),t.component("k-email-dialog",Bt),t.component("k-error-dialog",qt),t.component("k-fiber-dialog",Pt),t.component("k-files-dialog",Yt),t.component("k-form-dialog",Ut),t.component("k-link-dialog",Vt),t.component("k-language-dialog",Ht),t.component("k-models-dialog",Rt),t.component("k-page-create-dialog",Kt),t.component("k-page-move-dialog",Wt),t.component("k-pages-dialog",Jt),t.component("k-remove-dialog",Xt),t.component("k-search-dialog",Zt),t.component("k-text-dialog",Gt),t.component("k-totp-dialog",Qt),t.component("k-upload-dialog",te),t.component("k-upload-replace-dialog",ee),t.component("k-users-dialog",ie)}};const se=at({},(function(){return(0,this._self._c)("div",{staticClass:"k-drawer-body scroll-y-auto"},[this._t("default")],2)}),[],!1,null,null,null,null).exports,oe={props:{empty:{type:String,default:()=>window.panel.$t("drawer.fields.empty")},fields:Object,novalidate:{type:Boolean,default:!0},value:Object}};const le=at({mixins:[oe],emits:["input","submit"],computed:{hasFields(){return this.$helper.object.length(this.fields)>0}}},(function(){var t=this,e=t._self._c;return t.hasFields?e("k-fieldset",{staticClass:"k-drawer-fields",attrs:{novalidate:t.novalidate,fields:t.fields,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports,re={props:{breadcrumb:{default:()=>[],type:Array},tab:{type:String},tabs:{default:()=>({}),type:Object}}};const ae=at({mixins:[re],emits:["crumb","tab"]},(function(){var t=this,e=t._self._c;return e("header",{staticClass:"k-drawer-header"},[e("nav",{staticClass:"k-breadcrumb k-drawer-breadcrumb"},[e("ol",t._l(t.breadcrumb,(function(i,n){return e("li",{key:i.id},[e("k-button",{staticClass:"k-breadcrumb-link",attrs:{icon:i.props.icon,text:i.props.title,current:n===t.breadcrumb.length-1,variant:"dimmed"},on:{click:function(e){return t.$emit("crumb",i.id)}}})],1)})),0)]),e("k-drawer-tabs",{attrs:{tab:t.tab,tabs:t.tabs},on:{open:function(e){return t.$emit("tab",e)}}}),e("nav",{staticClass:"k-drawer-options"},[t._t("default"),e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"check",type:"submit"}})],2)],1)}),[],!1,null,null,null,null).exports;const ue=at({},(function(){var t=this,e=t._self._c;return"drawer"===t.$panel.notification.context?e("k-notification",{staticClass:"k-drawer-notification"}):t._e()}),[],!1,null,null,null,null).exports;const ce=at({mixins:[{props:{tab:{type:String},tabs:{default:()=>({}),type:[Array,Object]}}}],emits:["open"],computed:{hasTabs(){return this.$helper.object.length(this.tabs)>1}}},(function(){var t=this,e=t._self._c;return t.hasTabs?e("nav",{staticClass:"k-drawer-tabs"},t._l(t.tabs,(function(i){return e("k-button",{key:i.name,staticClass:"k-drawer-tab",attrs:{current:t.tab===i.name,text:i.label},on:{click:function(e){return t.$emit("open",i.name)}}})})),1):t._e()}),[],!1,null,null,null,null).exports,de={props:{empty:{type:String,default:()=>window.panel.$t("drawer.text.empty")},text:{type:String}}};const pe=at({mixins:[de]},(function(){var t=this,e=t._self._c;return t.text?e("k-text",{attrs:{html:t.text}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports,he={install(t){t.component("k-drawer-body",se),t.component("k-drawer-fields",le),t.component("k-drawer-header",ae),t.component("k-drawer-notification",ue),t.component("k-drawer-tabs",ce),t.component("k-drawer-text",pe)}},me={mixins:[re],props:{disabled:{default:!1,type:Boolean},icon:String,id:String,options:{type:Array},title:String,visible:{default:!1,type:Boolean}}};const fe=at({mixins:[me],emits:["cancel","crumb","submit","tab"]},(function(){var t=this,e=t._self._c;return t.visible?e("portal",{attrs:{to:"drawer"}},[e("form",{staticClass:"k-drawer",class:t.$vnode.data.staticClass,attrs:{"aria-disabled":t.disabled,method:"dialog"},on:{submit:function(e){return e.preventDefault(),t.$emit("submit")}}},[e("k-drawer-notification"),e("k-drawer-header",{attrs:{breadcrumb:t.breadcrumb,tab:t.tab,tabs:t.tabs},on:{crumb:function(e){return t.$emit("crumb",e)},tab:function(e){return t.$emit("tab",e)}}},[t._t("options",(function(){return[t._l(t.options,(function(i,n){return[i.dropdown?[e("k-button",t._b({key:"btn-"+n,staticClass:"k-drawer-option",on:{click:function(e){t.$refs["dropdown-"+n][0].toggle()}}},"k-button",i,!1)),e("k-dropdown-content",{key:"dropdown-"+n,ref:"dropdown-"+n,refInFor:!0,attrs:{options:i.dropdown,"align-x":"end",theme:"light"}})]:e("k-button",t._b({key:n,staticClass:"k-drawer-option"},"k-button",i,!1))]}))]}))],2),e("k-drawer-body",[t._t("default")],2)],1)]):t._e()}),[],!1,null,null,null,null).exports,ge={props:{hidden:{type:Boolean},next:{type:Object},prev:{type:Object}}};const ke=at({mixins:[me,oe,ge],emits:["cancel","crumb","input","next","prev","remove","show","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-form-drawer",t._b({ref:"drawer",staticClass:"k-block-drawer",on:{cancel:function(e){return t.$emit("cancel",e)},crumb:function(e){return t.$emit("crumb",e)},input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)},tab:function(e){return t.$emit("tab",e)}},scopedSlots:t._u([{key:"options",fn:function(){return[t.hidden?e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"hidden"},on:{click:function(e){return t.$emit("show")}}}):t._e(),e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.prev,icon:"angle-left"},on:{click:function(e){return t.$emit("prev")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.next,icon:"angle-right"},on:{click:function(e){return t.$emit("next")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"trash"},on:{click:function(e){return t.$emit("remove")}}})]},proxy:!0}])},"k-form-drawer",t.$props,!1))}),[],!1,null,null,null,null).exports;const be=at({methods:{isCurrent(t){return this.$panel.drawer.id===t}}},(function(){var t=this,e=t._self._c;return e("div",t._l(t.$panel.drawer.history.milestones,(function(i){return e(i.component,t._g(t._b({key:i.id,tag:"component",attrs:{breadcrumb:t.$panel.drawer.breadcrumb,disabled:!1===t.isCurrent(i.id),visible:!0}},"component",t.isCurrent(i.id)?t.$panel.drawer.props:i.props,!1),t.isCurrent(i.id)?t.$panel.drawer.listeners():i.on))})),1)}),[],!1,null,null,null,null).exports;const ve=at({mixins:[me,oe],emits:["cancel","crumb","input","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-drawer",t._b({ref:"drawer",staticClass:"k-form-drawer",on:{cancel:function(e){return t.$emit("cancel")},crumb:function(e){return t.$emit("crumb",e)},submit:function(e){return t.$emit("submit",t.value)},tab:function(e){return t.$emit("tab",e)}}},"k-drawer",t.$props,!1),[t._t("options",null,{slot:"options"}),e("k-drawer-fields",{attrs:{fields:t.fields,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})],2)}),[],!1,null,null,null,null).exports;const ye=at({mixins:[me,oe,{props:{next:{type:Object},prev:{type:Object}}}],emits:["cancel","crumb","input","next","prev","remove","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-form-drawer",t._b({ref:"drawer",staticClass:"k-structure-drawer",on:{cancel:function(e){return t.$emit("cancel",e)},crumb:function(e){return t.$emit("crumb",e)},input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)},tab:function(e){return t.$emit("tab",e)}},scopedSlots:t._u([{key:"options",fn:function(){return[e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.prev,icon:"angle-left"},on:{click:function(e){return t.$emit("prev")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.next,icon:"angle-right"},on:{click:function(e){return t.$emit("next")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"trash"},on:{click:function(e){return t.$emit("remove")}}})]},proxy:!0}])},"k-form-drawer",t.$props,!1))}),[],!1,null,null,null,null).exports;const $e=at({mixins:[me,de],emits:["cancel","crumb","input","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-drawer",t._b({ref:"drawer",staticClass:"k-text-drawer",on:{cancel:function(e){return t.$emit("cancel")},crumb:function(e){return t.$emit("crumb",e)},submit:function(e){return t.$emit("submit",t.value)},tab:function(e){return t.$emit("tab",e)}}},"k-drawer",t.$props,!1),[t._t("options",null,{slot:"options"}),e("k-dialog-text",{attrs:{text:t.text}})],2)}),[],!1,null,null,null,null).exports,we={install(t){t.use(he),t.component("k-drawer",fe),t.component("k-block-drawer",ke),t.component("k-fiber-drawer",be),t.component("k-form-drawer",ve),t.component("k-structure-drawer",ye),t.component("k-text-drawer",$e)}};const xe=at({created(){window.panel.deprecated(" will be removed in a future version. Since Kirby 4.0, you don't need it anymore as wrapper element. Use `` as standalone instead.")}},(function(){return(0,this._self._c)("span",{staticClass:"k-dropdown",on:{click:function(t){t.stopPropagation()}}},[this._t("default")],2)}),[],!1,null,null,null,null).exports;let _e=null;const Se=at({props:{align:{type:String},alignX:{type:String,default:"start"},alignY:{type:String,default:"bottom"},disabled:{type:Boolean,default:!1},navigate:{default:!0,type:Boolean},options:[Array,Function,String],theme:{type:String,default:"dark"}},emits:["action","close","open"],data(){return{axis:{x:this.alignX,y:this.alignY},position:{x:0,y:0},isOpen:!1,items:[],opener:null}},created(){this.align&&window.panel.deprecated(": `align` prop will be removed in a future version. Use the `alignX` prop instead.")},methods:{close(){var t;null==(t=this.$refs.dropdown)||t.close()},async fetchOptions(t){return this.options?"string"==typeof this.options?this.$dropdown(this.options)(t):"function"==typeof this.options?this.options(t):Array.isArray(this.options)?t(this.options):void 0:t(this.items)},focus(t=0){this.$refs.navigate.focus(t)},onClick(){this.close()},onClose(){this.resetPosition(),this.isOpen=_e=!1,this.$emit("close"),window.removeEventListener("resize",this.setPosition)},async onOpen(){this.isOpen=!0;const t=window.scrollY;_e=this,await this.$nextTick(),this.$el&&this.opener&&(window.addEventListener("resize",this.setPosition),await this.setPosition(),window.scrollTo(0,t),this.$emit("open"))},onOptionClick(t){this.close(),"function"==typeof t.click?t.click.call(this):t.click&&this.$emit("action",t.click)},open(t){var e,i;if(!0===this.disabled)return!1;_e&&_e!==this&&_e.close(),this.opener=t??(null==(e=window.event)?void 0:e.target.closest("button"))??(null==(i=window.event)?void 0:i.target),this.fetchOptions((t=>{this.items=t,this.onOpen()}))},async setPosition(){this.axis={x:this.alignX??this.align,y:this.alignY},"right"===this.axis.x?this.axis.x="end":"left"===this.axis.x&&(this.axis.x="start"),"rtl"===this.$panel.direction&&("start"===this.axis.x?this.axis.x="end":"end"===this.axis.x&&(this.axis.x="start")),this.opener instanceof Vue&&(this.opener=this.opener.$el);const t=this.opener.getBoundingClientRect();this.position.x=t.left+window.scrollX+t.width,this.position.y=t.top+window.scrollY+t.height,!0!==this.$el.open&&this.$el.showModal(),await this.$nextTick();const e=this.$el.getBoundingClientRect(),i=10;"end"===this.axis.x?t.left-e.widthwindow.innerWidth-i&&e.width+ie.top&&(this.axis.y="bottom"):t.top+e.height>window.innerHeight-i&&e.height+i!0===t.default));t.push(this.item(e)),t.push("-");const i=this.languages.filter((t=>!1===t.default));for(const n of i)t.push(this.item(n));return t}},methods:{change(t){this.$reload({query:{language:t.code}})},item(t){return{click:()=>this.change(t),current:t.code===this.language.code,text:t.name}}}},(function(){var t=this,e=t._self._c;return t.languages.length>1?e("div",{staticClass:"k-languages-dropdown"},[e("k-button",{attrs:{dropdown:!0,text:t.code,icon:"translate",responsive:"text",size:"sm",variant:"filled"},on:{click:function(e){return t.$refs.languages.toggle()}}}),e("k-dropdown-content",{ref:"languages",attrs:{options:t.options}})],1):t._e()}),[],!1,null,null,null,null).exports;const Ae=at({props:{align:{type:String,default:"right"},disabled:{type:Boolean},icon:{type:String,default:"dots"},options:{type:[Array,Function,String],default:()=>[]},text:{type:[Boolean,String],default:!0},theme:{type:String,default:"dark"},size:String,variant:String},computed:{hasSingleOption(){return Array.isArray(this.options)&&1===this.options.length}},methods:{onAction(t,e,i){"function"==typeof t?t.call(this):(this.$emit("action",t,e,i),this.$emit("option",t,e,i))},toggle(t=this.$el){this.$refs.options.toggle(t)}}},(function(){var t=this,e=t._self._c;return t.hasSingleOption?e("k-button",{staticClass:"k-options-dropdown-toggle",attrs:{disabled:t.disabled,icon:t.options[0].icon??t.icon,size:t.options[0].size??t.size,title:t.options[0].title??t.options[0].tooltip??t.options[0].text,variant:t.options[0].variant??t.variant},on:{click:function(e){return t.onAction(t.options[0].option??t.options[0].click,t.options[0],0)}}},[!0===t.text?[t._v(" "+t._s(t.options[0].text)+" ")]:!1!==t.text?[t._v(" "+t._s(t.text)+" ")]:t._e()],2):t.options.length?e("div",{staticClass:"k-options-dropdown"},[e("k-button",{staticClass:"k-options-dropdown-toggle",attrs:{disabled:t.disabled,dropdown:!0,icon:t.icon,size:t.size,text:!0!==t.text&&!1!==t.text?t.text:null,title:t.$t("options"),variant:t.variant},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",staticClass:"k-options-dropdown-content",attrs:{"align-x":t.align,options:t.options},on:{action:t.onAction}})],1):t._e()}),[],!1,null,null,null,null).exports,Me={props:{accept:{type:String,default:"all"},icon:{type:String},ignore:{default:()=>[],type:Array},options:{default:()=>[],type:Array},search:{default:!0,type:[Object,Boolean]},value:{type:String}}};const je=at({mixins:[Me],emits:["create","escape","pick","select"],data(){return{query:this.value??"",selected:-1}},computed:{empty(){return this.$t("options.none")},filtered(){return!1===this.hasQuery?this.options:this.$helper.array.search(this.options,this.query,{field:"text"})},hasQuery(){const t=this.search.min??0;return this.query.length>=t},inputPlaceholder(){return"options"===this.accept?this.$t("filter"):this.$t("enter")},regex(){return new RegExp(`(${RegExp.escape(this.query)})`,"ig")},showCreateButton(){if("all"!==this.accept)return!1;if(0===this.query.length)return!1;if(!0===this.ignore.includes(this.query))return!1;return 0===this.options.filter((t=>t.text===this.query||t.value===this.query)).length},showEmpty(){return"options"===this.accept&&0===this.filtered.legnth&&this.options.length},showSearch(){return"all"===this.accept||!1!==this.search}},watch:{query(){this.selected=-1,!1!==this.hasQuery&&(!0===this.showCreateButton&&0===this.filtered.length?this.selected=this.filtered.length:this.filtered.length&&(this.selected=0))},selected(){-1===this.selected&&this.focus()}},mounted(){var t;null==(t=this.$refs.input)||t.select()},methods:{create(t){0!==(t=t.trim()).length&&this.$emit("create",t)},down(){this.pick(this.selected+1)},escape(){this.reset(),this.focus(),this.$emit("escape")},focus(){var t;null==(t=this.$refs.input)||t.focus()},async pick(t){var e,i;if(t>(this.showCreateButton?this.filtered.length:this.filtered.length-1)||t<-1)return!1;this.selected=t,this.$emit("pick",t),this.focus(),await this.$nextTick(),null==(i=null==(e=this.$refs.results)?void 0:e.$el.querySelector("[aria-current]"))||i.scrollIntoView({block:"nearest"})},reset(){this.query=""},select(t){this.pick(t);const e=this.filtered[this.selected];if(e)this.$emit("select",e);else{if(!this.showCreateButton)return;this.create(this.query)}this.query=""},tab(t){t.preventDefault(),t.shiftKey?this.up():this.down()},highlight(t){return t=this.$helper.string.stripHTML(t),0===this.query.length?t:t.replace(this.regex,"$1")},up(){this.pick(this.selected-1)}}},(function(){var t,e=this,i=e._self._c;return i("nav",{staticClass:"k-selector",attrs:{role:"search","data-has-current":null==(t=e.filtered)?void 0:t.includes(e.selected)}},[i("header",{staticClass:"k-selector-header"},[e.showSearch?i("div",{staticClass:"k-selector-search"},[i("input",{ref:"input",staticClass:"k-selector-input",attrs:{placeholder:e.inputPlaceholder+" …",type:"search"},domProps:{value:e.query},on:{click:function(t){return e.pick(-1)},input:function(t){e.query=t.target.value},keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.preventDefault(),e.down.apply(null,arguments))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"escape",void 0,t.key,void 0)?null:(t.preventDefault(),e.escape())},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:(t.preventDefault(),e.select(e.selected))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"tab",9,t.key,"Tab")?null:e.tab.apply(null,arguments)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.preventDefault(),e.up.apply(null,arguments))}]}})]):e._e()]),e.filtered.length||e.showEmpty?i("div",{staticClass:"k-selector-body"},[e.filtered.length?i("k-navigate",{ref:"results",staticClass:"k-selector-results",attrs:{axis:"y"}},e._l(e.filtered,(function(t,n){return i("k-button",{key:n,staticClass:"k-selector-button",attrs:{current:e.selected===n,disabled:t.disabled,icon:t.icon??e.icon},on:{click:function(t){return e.select(n)}},nativeOn:{focus:function(t){return e.pick(n)}}},[i("span",{domProps:{innerHTML:e._s(e.highlight(t.text))}})])})),1):e.showEmpty?i("p",{staticClass:"k-selector-empty"},[e._v(e._s(e.empty))]):e._e()],1):e._e(),e.showCreateButton?i("footer",{staticClass:"k-selector-footer"},[i("k-button",{staticClass:"k-selector-button k-selector-add-button",attrs:{current:e.selected===e.filtered.length,icon:"add"},nativeOn:{focus:function(t){return e.select(e.filtered.length)}}},[i("strong",[e._v(e._s(e.value?e.$t("replace.with"):e.$t("create"))+":")]),i("span",{staticClass:"k-selector-preview"},[e._v(e._s(e.query))])])],1):e._e()])}),[],!1,null,null,null,null).exports;const Ie=at({mixins:[Me],props:{align:String,disabled:Boolean},emits:["create","select"],methods:{close(){this.$refs.dropdown.close()},create(t){this.$emit("create",t),this.close()},open(t){this.$refs.dropdown.open(t)},reset(){this.$refs.selector.reset()},select(t){this.$emit("select",t),this.close()},toggle(t){this.$refs.dropdown.toggle(t)}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-selector-dropdown"},[t._t("default"),e("k-dropdown-content",{ref:"dropdown",staticClass:"k-selector-dropdown-content",attrs:{"align-x":t.align,autofocus:!1,disabled:t.disabled,navigate:!1},on:{close:t.reset}},[e("k-selector",t._b({ref:"selector",on:{create:t.create,escape:function(e){return t.$refs.dropdown.close()},select:t.select}},"k-selector",t.$props,!1))],1)],2)}),[],!1,null,null,null,null).exports,Te={install(t){t.component("k-dropdown",xe),t.component("k-dropdown-content",Se),t.component("k-dropdown-item",Ce),t.component("k-languages-dropdown",Oe),t.component("k-options-dropdown",Ae),t.component("k-selector-dropdown",Ie)}};class Ee extends HTMLElement{connectedCallback(){this.style.display="block",this.textareas=this.querySelectorAll("textarea");for(const t of this.textareas)t.style.resize="none",t.style.overflowY="hidden",t.autosize=()=>{t.style.height="auto",t.style.height=t.scrollHeight+"px",this.restoreScroll()},t.addEventListener("input",(()=>t.autosize())),t.addEventListener("beforeinput",(()=>this.storeScroll()));this.resizer=new ResizeObserver((()=>{for(const t of this.textareas)t.autosize()})),this.resizer.observe(this)}disconnectedCallback(){this.resizer.unobserve(this)}restoreScroll(){void 0!==this.scrollY&&(window.scroll(0,this.scrollY),this.scroll=void 0)}storeScroll(){this.scrollY=window.scrollY}}const Le=at({props:{html:{type:Boolean,default:!1},limit:{type:Number,default:10},skip:{type:Array,default:()=>[]},options:Array,query:String},emits:["leave","search","select"],data:()=>({matches:[],selected:{text:null}}),created(){window.panel.deprecated(" will be removed in a future version.")},methods:{close(){this.$refs.dropdown.close()},onSelect(t){this.$emit("select",t),this.$refs.dropdown.close()},search(t){const e=this.options.filter((t=>-1!==this.skip.indexOf(t.value)));this.matches=this.$helper.array.search(e,t,{field:"text",limit:this.limit}),this.$emit("search",t,this.matches),this.$refs.dropdown.open()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-autocomplete"},[t._t("default"),e("k-dropdown-content",{ref:"dropdown",attrs:{autofocus:!0},on:{leave:function(e){return t.$emit("leave")}}},t._l(t.matches,(function(i,n){return e("k-dropdown-item",t._b({key:n,nativeOn:{mousedown:function(e){return t.onSelect(i)},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:(e.preventDefault(),t.onSelect(i))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.onSelect(i))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])||"button"in e&&0!==e.button?null:(e.preventDefault(),t.close.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"backspace",void 0,e.key,void 0)?null:(e.preventDefault(),t.close.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:(e.preventDefault(),t.close.apply(null,arguments))}]}},"k-dropdown-item",i,!1),[e("span",{domProps:{innerHTML:t._s(t.html?i.text:t.$esc(i.text))}})])})),1),t._v(" "+t._s(t.query)+" ")],2)}),[],!1,null,null,null,null).exports;const De=at({props:{count:Number,min:Number,max:Number,required:{type:Boolean,default:!1}},computed:{valid(){return!1===this.required&&0===this.count||(!0!==this.required||0!==this.count)&&(!(this.min&&this.countthis.max))}}},(function(){var t=this,e=t._self._c;return e("span",{staticClass:"k-counter",attrs:{"data-invalid":!t.valid}},[e("span",[t._v(t._s(t.count))]),t.min&&t.max?e("span",{staticClass:"k-counter-rules"},[t._v("("+t._s(t.min)+"–"+t._s(t.max)+")")]):t.min?e("span",{staticClass:"k-counter-rules"},[t._v("≥ "+t._s(t.min))]):t.max?e("span",{staticClass:"k-counter-rules"},[t._v("≤ "+t._s(t.max))]):t._e()])}),[],!1,null,null,null,null).exports;const Be=at({props:{disabled:Boolean,config:Object,fields:{type:[Array,Object],default:()=>[]},novalidate:{type:Boolean,default:!1},value:{type:Object,default:()=>({})}},emits:["input","submit"],data:()=>({errors:{}}),methods:{focus(t){var e,i;null==(i=null==(e=this.$refs.fields)?void 0:e.focus)||i.call(e,t)},onFocus(t,e,i){this.$emit("focus",t,e,i)},onInput(t,e,i){this.$emit("input",t,e,i)},onInvalid(t){this.$emit("invalid",t)},onSubmit(){this.$emit("submit",this.value)},submit(){this.$refs.submitter.click()}}},(function(){var t=this,e=t._self._c;return e("form",{ref:"form",staticClass:"k-form",attrs:{method:"POST",autocomplete:"off",novalidate:""},on:{submit:function(e){return e.preventDefault(),t.onSubmit.apply(null,arguments)}}},[t._t("header"),t._t("default",(function(){return[e("k-fieldset",{ref:"fields",attrs:{disabled:t.disabled,fields:t.fields,novalidate:t.novalidate,value:t.value},on:{focus:t.onFocus,input:t.onInput,invalid:t.onInvalid,submit:t.onSubmit}})]})),t._t("footer"),e("input",{ref:"submitter",staticClass:"k-form-submitter",attrs:{type:"submit"}})],2)}),[],!1,null,null,null,null).exports;const qe=at({props:{lock:[Boolean,Object]},data:()=>({isLoading:null,isLocking:null}),computed:{api(){return[this.$panel.view.path+"/lock",null,null,!0]},buttons(){return"unlock"===this.mode?[{icon:"check",text:this.$t("lock.isUnlocked"),click:()=>this.resolve()},{icon:"download",text:this.$t("download"),click:()=>this.download()}]:"lock"===this.mode?[{icon:this.lock.data.unlockable?"unlock":"loader",text:this.$t("lock.isLocked",{email:this.$esc(this.lock.data.email)}),title:this.$t("lock.unlock"),disabled:!this.lock.data.unlockable,click:()=>this.unlock()}]:"changes"===this.mode?[{icon:"undo",text:this.$t("revert"),click:()=>this.revert()},{icon:"check",text:this.$t("save"),click:()=>this.save()}]:[]},disabled(){return"unlock"!==this.mode&&("lock"===this.mode?!this.lock.data.unlockable:"changes"===this.mode&&this.isDisabled)},hasChanges(){return this.$store.getters["content/hasChanges"]()},isDisabled(){return!1===this.$store.state.content.status.enabled},isLocked(){return"lock"===this.lockState},isUnlocked(){return"unlock"===this.lockState},mode(){return null!==this.lockState?this.lockState:!0===this.hasChanges?"changes":null},lockState(){return this.supportsLocking&&this.lock?this.lock.state:null},supportsLocking(){return!1!==this.lock},theme(){return"lock"===this.mode?"negative":"unlock"===this.mode?"info":"changes"===this.mode?"notice":null}},watch:{hasChanges:{handler(t,e){!0===this.supportsLocking&&!1===this.isLocked&&!1===this.isUnlocked&&(!0===t?(this.locking(),this.isLocking=setInterval(this.locking,3e4)):e&&(clearInterval(this.isLocking),this.locking(!1)))},immediate:!0},isLocked(t){!1===t&&this.$events.emit("model.reload")}},created(){this.supportsLocking&&(this.isLoading=setInterval(this.check,1e4)),this.$events.on("view.save",this.save)},destroyed(){clearInterval(this.isLoading),clearInterval(this.isLocking),this.$events.off("view.save",this.save)},methods:{async check(){if(!1===this.$panel.isOffline){const{lock:t}=await this.$api.get(...this.api);Vue.set(this.$panel.view.props,"lock",t)}},download(){let t="";const e=this.$store.getters["content/changes"]();for(const n in e){const i=e[n];t+=n+": \n\n","object"==typeof i&&Object.keys(i).length||Array.isArray(i)&&i.length?t+=JSON.stringify(i,null,2):t+=i,t+="\n\n----\n\n"}let i=document.createElement("a");i.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(t)),i.setAttribute("download",this.$panel.view.path+".txt"),i.style.display="none",document.body.appendChild(i),i.click(),document.body.removeChild(i)},async locking(t=!0){if(!0!==this.$panel.isOffline)if(!0===t)try{await this.$api.patch(...this.api)}catch(e){clearInterval(this.isLocking),this.$store.dispatch("content/revert")}else clearInterval(this.isLocking),await this.$api.delete(...this.api)},async resolve(){await this.unlock(!1),this.$store.dispatch("content/revert")},revert(){this.$panel.dialog.open({component:"k-remove-dialog",props:{submitButton:{icon:"undo",text:this.$t("revert")},text:this.$t("revert.confirm")},on:{submit:()=>{this.$store.dispatch("content/revert"),this.$panel.dialog.close()}}})},async save(t){var e;null==(e=null==t?void 0:t.preventDefault)||e.call(t),await this.$store.dispatch("content/save"),this.$events.emit("model.update"),this.$panel.notification.success()},async unlock(t=!0){const e=[this.$panel.view.path+"/unlock",null,null,!0];!0!==t?(await this.$api.delete(...e),this.$reload({silent:!0})):this.$panel.dialog.open({component:"k-remove-dialog",props:{submitButton:{icon:"unlock",text:this.$t("lock.unlock")},text:this.$t("lock.unlock.submit",{email:this.$esc(this.lock.data.email)})},on:{submit:async()=>{await this.$api.patch(...e),this.$panel.dialog.close(),this.$reload({silent:!0})}}})}}},(function(){var t=this,e=t._self._c;return t.buttons.length>0?e("k-button-group",{staticClass:"k-form-buttons",attrs:{layout:"collapsed"}},t._l(t.buttons,(function(i){return e("k-button",t._b({key:i.icon,attrs:{size:"sm",variant:"filled",disabled:t.isDisabled,responsive:!0,theme:t.theme}},"k-button",i,!1))})),1):t._e()}),[],!1,null,null,null,null).exports,Pe={mixins:[K,J,Z,it,lt],props:{counter:[Boolean,Object],endpoints:Object,input:[String,Number],translate:Boolean,type:String}};const Ne=at({mixins:[Pe],inheritAttrs:!1},(function(){var t=this,e=t._self._c;return e("div",{class:"k-field k-field-name-"+t.name,attrs:{"data-disabled":t.disabled,"data-translate":t.translate},on:{focusin:function(e){return t.$emit("focus",e)},focusout:function(e){return t.$emit("blur",e)}}},[t._t("header",(function(){return[e("header",{staticClass:"k-bar k-field-header"},[t._t("label",(function(){return[e("k-label",{attrs:{input:t.input,required:t.required,type:"field"}},[t._v(" "+t._s(t.label)+" ")])]})),t._t("options"),t._t("counter",(function(){return[t.counter?e("k-counter",t._b({staticClass:"k-field-counter",attrs:{required:t.required}},"k-counter",t.counter,!1)):t._e()]}))],2)]})),t._t("default"),t._t("footer",(function(){return[t.help||t.$slots.help?e("footer",{staticClass:"k-field-footer"},[t._t("help",(function(){return[t.help?e("k-text",{staticClass:"k-help k-field-help",attrs:{html:t.help}}):t._e()]}))],2):t._e()]}))],2)}),[],!1,null,null,null,null).exports;const ze=at({props:{config:Object,disabled:Boolean,fields:{type:[Array,Object],default:()=>({})},novalidate:{type:Boolean,default:!1},value:{type:Object,default:()=>({})}},emits:["focus","input","invalid","submit"],data:()=>({errors:{}}),methods:{focus(t){if(t)return void(this.hasField(t)&&"function"==typeof this.$refs[t][0].focus&&this.$refs[t][0].focus());const e=Object.keys(this.$refs)[0];this.focus(e)},hasFieldType(t){return this.$helper.isComponent(`k-${t}-field`)},hasField(t){var e;return null==(e=this.$refs[t])?void 0:e[0]},onInvalid(t,e,i,n){this.errors[n]=e,this.$emit("invalid",this.errors)},onInput(t,e,i){const n=this.value;this.$set(n,i,t),this.$emit("input",n,e,i)},hasErrors(){return this.$helper.object.length(this.errors)>0}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-fieldset"},[e("k-grid",{attrs:{variant:"fields"}},[t._l(t.fields,(function(i,n){return[t.$helper.field.isVisible(i,t.value)?e("k-column",{key:i.signature,attrs:{width:i.width}},[t.hasFieldType(i.type)?e("k-"+i.type+"-field",t._b({ref:n,refInFor:!0,tag:"component",attrs:{disabled:t.disabled||i.disabled,"form-data":t.value,name:n,novalidate:t.novalidate,value:t.value[n]},on:{input:function(e){return t.onInput(e,i,n)},focus:function(e){return t.$emit("focus",e,i,n)},invalid:(e,s)=>t.onInvalid(e,s,i,n),submit:function(e){return t.$emit("submit",e,i,n)}}},"component",i,!1)):e("k-box",{attrs:{theme:"negative"}},[e("k-text",{attrs:{size:"small"}},[t._v(" "+t._s(t.$t("error.field.type.missing",{name:n,type:i.type}))+" ")])],1)],1):t._e()]}))],2)],1)}),[],!1,null,null,null,null).exports,Fe={mixins:[Y,V,K,X],inheritAttrs:!1,props:{autofocus:Boolean,type:String,icon:[String,Boolean],novalidate:{type:Boolean,default:!1},value:{type:[String,Boolean,Number,Object,Array],default:null}}};const Re=at({mixins:[Fe],data(){return{isInvalid:this.invalid,listeners:{...this.$listeners,invalid:(t,e)=>{this.isInvalid=t,this.$emit("invalid",t,e)}}}},computed:{inputProps(){return{...this.$props,...this.$attrs}}},watch:{invalid(){this.isInvalid=this.invalid}},methods:{blur(t){(null==t?void 0:t.relatedTarget)&&!1===this.$el.contains(t.relatedTarget)&&this.trigger(null,"blur")},focus(t){this.trigger(t,"focus")},select(t){this.trigger(t,"select")},trigger(t,e){var i,n,s;if("INPUT"===(null==(i=null==t?void 0:t.target)?void 0:i.tagName)&&"function"==typeof(null==(n=null==t?void 0:t.target)?void 0:n[e]))return void t.target[e]();if("function"==typeof(null==(s=this.$refs.input)?void 0:s[e]))return void this.$refs.input[e]();const o=this.$el.querySelector("input, select, textarea");"function"==typeof(null==o?void 0:o[e])&&o[e]()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-input",attrs:{"data-disabled":t.disabled,"data-invalid":!t.novalidate&&t.isInvalid,"data-type":t.type}},[t.$slots.before||t.before?e("span",{staticClass:"k-input-description k-input-before",on:{click:t.focus}},[t._t("before",(function(){return[t._v(t._s(t.before))]}))],2):t._e(),e("span",{staticClass:"k-input-element",on:{click:function(e){return e.stopPropagation(),t.focus.apply(null,arguments)}}},[t._t("default",(function(){return[e("k-"+t.type+"-input",t._g(t._b({ref:"input",tag:"component",attrs:{value:t.value}},"component",t.inputProps,!1),t.listeners))]}))],2),t.$slots.after||t.after?e("span",{staticClass:"k-input-description k-input-after",on:{click:t.focus}},[t._t("after",(function(){return[t._v(t._s(t.after))]}))],2):t._e(),t.$slots.icon||t.icon?e("span",{staticClass:"k-input-icon",on:{click:t.focus}},[t._t("icon",(function(){return[e("k-icon",{attrs:{type:t.icon}})]}))],2):t._e()])}),[],!1,null,null,null,null).exports;const Ye=at({props:{methods:Array},data:()=>({currentForm:null,isLoading:!1,user:{email:"",password:"",remember:!1}}),computed:{canToggle(){return null!==this.codeMode&&!0===this.methods.includes("password")&&(!0===this.methods.includes("password-reset")||!0===this.methods.includes("code"))},codeMode(){return!0===this.methods.includes("password-reset")?"password-reset":!0===this.methods.includes("code")?"code":null},fields(){let t={email:{autofocus:!0,label:this.$t("email"),type:"email",required:!0,link:!1}};return"email-password"===this.form&&(t.password={label:this.$t("password"),type:"password",minLength:8,required:!0,autocomplete:"current-password",counter:!1}),t},form(){return this.currentForm?this.currentForm:"password"===this.methods[0]?"email-password":"email"},isResetForm(){return"password-reset"===this.codeMode&&"email"===this.form},toggleText(){return this.$t("login.toggleText."+this.codeMode+"."+this.formOpposite(this.form))}},methods:{formOpposite:t=>"email-password"===t?"email":"email-password",async login(){this.$emit("error",null),this.isLoading=!0;let t=Object.assign({},this.user);"email"===this.currentForm&&(t.password=null),!0===this.isResetForm&&(t.remember=!1);try{await this.$api.auth.login(t),this.$reload({globals:["$system","$translation"]}),this.$panel.notification.success({message:this.$t("welcome")+"!",icon:"smile"})}catch(e){this.$emit("error",e)}finally{this.isLoading=!1}},toggleForm(){this.currentForm=this.formOpposite(this.form),this.$refs.fieldset.focus("email")}}},(function(){var t=this,e=t._self._c;return e("form",{staticClass:"k-login-form",on:{submit:function(e){return e.preventDefault(),t.login.apply(null,arguments)}}},[e("div",{staticClass:"k-login-fields"},[!0===t.canToggle?e("button",{staticClass:"k-login-toggler",attrs:{type:"button"},on:{click:t.toggleForm}},[t._v(" "+t._s(t.toggleText)+" ")]):t._e(),e("k-fieldset",{ref:"fieldset",attrs:{novalidate:!0,fields:t.fields,value:t.user},on:{input:function(e){t.user=e}}})],1),e("div",{staticClass:"k-login-buttons"},[!1===t.isResetForm?e("span",{staticClass:"k-login-checkbox"},[e("k-checkbox-input",{attrs:{value:t.user.remember,label:t.$t("login.remember")},on:{input:function(e){t.user.remember=e}}})],1):t._e(),e("k-button",{staticClass:"k-login-button",attrs:{icon:"check",size:"lg",theme:"positive",type:"submit",variant:"filled"}},[t._v(" "+t._s(t.$t("login"+(t.isResetForm?".reset":"")))+" "),t.isLoading?[t._v(" … ")]:t._e()],2)],1)])}),[],!1,null,null,null,null).exports;const Ue=at({props:{methods:Array,pending:Object},data:()=>({code:"",isLoadingBack:!1,isLoadingLogin:!1}),computed:{mode(){return!0===this.methods.includes("password-reset")?"password-reset":"login"}},methods:{async back(){this.isLoadingBack=!0,this.$go("/logout")},async login(){this.$emit("error",null),this.isLoadingLogin=!0;try{await this.$api.auth.verifyCode(this.code),this.$panel.notification.success({message:this.$t("welcome")+"!",icon:"smile"}),"password-reset"===this.mode?this.$go("reset-password"):this.$reload()}catch(t){this.$emit("error",t)}finally{this.isLoadingLogin=!1}}}},(function(){var t=this,e=t._self._c;return e("form",{staticClass:"k-login-form k-login-code-form",on:{submit:function(e){return e.preventDefault(),t.login.apply(null,arguments)}}},[e("k-user-info",{attrs:{user:t.pending.email}}),e("k-text-field",{attrs:{autofocus:!0,counter:!1,help:t.$t("login.code.text."+t.pending.challenge),label:t.$t("login.code.label."+t.mode),novalidate:!0,placeholder:t.$t("login.code.placeholder."+t.pending.challenge),required:!0,value:t.code,autocomplete:"one-time-code",icon:"unlock",name:"code"},on:{input:function(e){t.code=e}}}),e("div",{staticClass:"k-login-buttons"},[e("k-button",{staticClass:"k-login-button k-login-back-button",attrs:{icon:"angle-left",size:"lg",variant:"filled"},on:{click:t.back}},[t._v(" "+t._s(t.$t("back"))+" "),t.isLoadingBack?[t._v(" … ")]:t._e()],2),e("k-button",{staticClass:"k-login-button",attrs:{icon:"check",size:"lg",type:"submit",theme:"positive",variant:"filled"}},[t._v(" "+t._s(t.$t("login"+("password-reset"===t.mode?".reset":"")))+" "),t.isLoadingLogin?[t._v(" … ")]:t._e()],2)],1)],1)}),[],!1,null,null,null,null).exports;const He=at({props:{accept:{type:String,default:"*"},attributes:{type:Object},max:{type:Number},method:{type:String,default:"POST"},multiple:{type:Boolean,default:!0},url:{type:String}},methods:{open(t){window.panel.deprecated(" will be removed in a future version. Use `$panel.upload.open()` instead."),this.$panel.upload.pick(this.params(t))},params(t){return{...this.$props,...t??{},on:{complete:(t,e)=>{this.$emit("success",t,e)}}}},select(t){this.$panel.upload.select(t.target.files)},drop(t,e){window.panel.deprecated(" will be removed in a future version. Use `$panel.upload.select()` instead."),this.$panel.upload.open(t,this.params(e))},upload(t,e){window.panel.deprecated(" will be removed in a future version. Use `$panel.upload.select()` instead."),this.$panel.upload.select(t,this.params(e)),this.$panel.upload.start()}},render:()=>""},null,null,!1,null,null,null,null).exports;const Ve=at({},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-notification k-login-alert",attrs:{"data-theme":"error"}},[e("p",[t._t("default")],2),e("k-button",{attrs:{icon:"cancel"},on:{click:function(e){return t.$emit("click")}}})],1)}),[],!1,null,null,null,null).exports;const Ke=at({props:{fields:Object,index:[Number,String],total:Number,value:Object},mounted(){this.$store.dispatch("content/disable"),this.$events.on("keydown.cmd.s",this.onSubmit),this.$events.on("keydown.esc",this.onDiscard)},destroyed(){this.$events.off("keydown.cmd.s",this.onSubmit),this.$events.off("keydown.esc",this.onDiscard),this.$store.dispatch("content/enable")},methods:{focus(t){this.$refs.form.focus(t)},onDiscard(){this.$emit("discard")},onInput(t){this.$emit("input",t)},onSubmit(){this.$emit("submit")}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-structure-form"},[e("div",{staticClass:"k-structure-backdrop",on:{click:t.onDiscard}}),e("section",[e("k-form",{ref:"form",staticClass:"k-structure-form-fields",attrs:{value:t.value,fields:t.fields},on:{input:t.onInput,submit:t.onSubmit}}),e("footer",{staticClass:"k-structure-form-buttons"},[e("k-button",{staticClass:"k-structure-form-cancel-button",attrs:{text:t.$t("cancel"),icon:"cancel",size:"xs",variant:"filled"},on:{click:function(e){return t.$emit("close")}}}),"new"!==t.index?e("k-pagination",{attrs:{dropdown:!1,total:t.total,limit:1,page:t.index+1,details:!0},on:{paginate:function(e){return t.$emit("paginate",e)}}}):t._e(),e("k-button",{staticClass:"k-structure-form-submit-button",attrs:{text:t.$t("new"!==t.index?"confirm":"add"),icon:"check",size:"xs",variant:"filled"},on:{click:t.onSubmit}})],1)],1)])}),[],!1,null,null,null,null).exports;const We=at({computed:{placeholder(){return this.field("code",{}).placeholder},languages(){return this.field("language",{options:[]}).options}},methods:{focus(){this.$refs.code.focus()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-type-code-editor"},[e("k-input",{ref:"code",attrs:{buttons:!1,placeholder:t.placeholder,spellcheck:!1,value:t.content.code,font:"monospace",type:"textarea"},on:{input:function(e){return t.update({code:e})}}}),t.languages.length?e("div",{staticClass:"k-block-type-code-editor-language"},[e("k-input",{ref:"language",attrs:{empty:!1,options:t.languages,value:t.content.language,icon:"code",type:"select"},on:{input:function(e){return t.update({language:e})}}})],1):t._e()],1)}),[],!1,null,null,null,null).exports,Je=Object.freeze(Object.defineProperty({__proto__:null,default:We},Symbol.toStringTag,{value:"Module"}));const Ge=at({},(function(){var t=this;return(0,t._self._c)("k-block-title",{attrs:{content:t.content,fieldset:t.fieldset},nativeOn:{dblclick:function(e){return t.$emit("open")}}})}),[],!1,null,null,null,null).exports,Xe=Object.freeze(Object.defineProperty({__proto__:null,default:Ge},Symbol.toStringTag,{value:"Module"}));const Ze=at({props:{endpoints:Object,tabs:Object},data(){return{collapsed:this.state(),tab:Object.keys(this.tabs)[0]}},computed:{fields(){var t;return null==(t=this.tabs[this.tab])?void 0:t.fields},values(){return Object.assign({},this.content)}},methods:{open(){this.$emit("open",this.tab)},state(t){const e=`kirby.fieldsBlock.${this.endpoints.field}.${this.id}`;if(void 0===t)return JSON.parse(sessionStorage.getItem(e));sessionStorage.setItem(e,t)},toggle(){this.collapsed=!this.collapsed,this.state(this.collapsed)}}},(function(){var t=this,e=t._self._c;return e("div",{attrs:{"data-collapsed":t.collapsed},on:{dblclick:function(e){!t.fieldset.wysiwyg&&t.$emit("open")}}},[e("header",{staticClass:"k-block-type-fields-header"},[e("k-block-title",{attrs:{content:t.values,fieldset:t.fieldset},nativeOn:{click:function(e){return t.toggle.apply(null,arguments)}}}),t.collapsed?t._e():e("k-drawer-tabs",{attrs:{tab:t.tab,tabs:t.fieldset.tabs},on:{open:function(e){t.tab=e}}})],1),t.collapsed?t._e():e("k-form",{ref:"form",staticClass:"k-block-type-fields-form",attrs:{autofocus:!0,disabled:!t.fieldset.wysiwyg,fields:t.fields,value:t.values},on:{input:function(e){return t.$emit("update",e)}}})],1)}),[],!1,null,null,null,null).exports,Qe=Object.freeze(Object.defineProperty({__proto__:null,default:Ze},Symbol.toStringTag,{value:"Module"}));const ti=at({computed:{captionMarks(){return this.field("caption",{marks:!0}).marks},crop(){return this.content.crop},ratio(){return this.content.ratio}}},(function(){var t,e=this,i=e._self._c;return i("figure",[i("ul",{on:{dblclick:e.open}},[(null==(t=e.content.images)?void 0:t.length)?e._l(e.content.images,(function(t){return i("li",{key:t.id},[i("k-image-frame",{attrs:{ratio:e.ratio,cover:e.crop,src:t.url,srcset:t.image.srcset,alt:t.alt}})],1)})):e._l(3,(function(t){return i("li",{key:t,staticClass:"k-block-type-gallery-placeholder"},[i("k-image-frame",{attrs:{ratio:e.ratio}})],1)}))],2),e.content.caption?i("figcaption",[i("k-writer",{attrs:{inline:!0,marks:e.captionMarks,value:e.content.caption},on:{input:function(t){return e.$emit("update",{caption:t})}}})],1):e._e()])}),[],!1,null,null,null,null).exports,ei=Object.freeze(Object.defineProperty({__proto__:null,default:ti},Symbol.toStringTag,{value:"Module"}));const ii=at({computed:{isSplitable(){return this.content.text.length>0&&!1===this.$refs.input.isCursorAtStart&&!1===this.$refs.input.isCursorAtEnd},keys(){return{Enter:()=>!0===this.$refs.input.isCursorAtEnd?this.$emit("append","text"):this.split(),"Mod-Enter":this.split}},levels(){return this.field("level",{options:[]}).options},textField(){return this.field("text",{marks:!0})}},methods:{focus(){this.$refs.input.focus()},merge(t){this.update({text:t.map((t=>t.content.text)).join(" ")})},split(){var t,e;const i=null==(e=(t=this.$refs.input).getSplitContent)?void 0:e.call(t);i&&this.$emit("split",[{text:i[0]},{level:"h"+Math.min(parseInt(this.content.level.slice(1))+1,6),text:i[1]}])}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-type-heading-input",attrs:{"data-level":t.content.level}},[e("k-writer",t._b({ref:"input",attrs:{inline:!0,keys:t.keys,value:t.content.text},on:{input:function(e){return t.update({text:e})}}},"k-writer",t.textField,!1)),t.levels.length>1?e("k-input",{ref:"level",staticClass:"k-block-type-heading-level",attrs:{empty:!1,options:t.levels,value:t.content.level,type:"select"},on:{input:function(e){return t.update({level:e})}}}):t._e()],1)}),[],!1,null,null,null,null).exports,ni=Object.freeze(Object.defineProperty({__proto__:null,default:ii},Symbol.toStringTag,{value:"Module"}));const si=at({computed:{captionMarks(){return this.field("caption",{marks:!0}).marks},crop(){return this.content.crop??!1},src(){var t,e;return"web"===this.content.location?this.content.src:!!(null==(e=null==(t=this.content.image)?void 0:t[0])?void 0:e.url)&&this.content.image[0].url},ratio(){return this.content.ratio??!1}}},(function(){var t=this,e=t._self._c;return e("k-block-figure",{attrs:{caption:t.content.caption,"caption-marks":t.captionMarks,"empty-text":t.$t("field.blocks.image.placeholder")+" …","is-empty":!t.src,"empty-icon":"image"},on:{open:t.open,update:t.update}},[t.src?[t.ratio?e("k-image-frame",{attrs:{ratio:t.ratio,cover:t.crop,alt:t.content.alt,src:t.src}}):e("img",{staticClass:"k-block-type-image-auto",attrs:{alt:t.content.alt,src:t.src}})]:t._e()],2)}),[],!1,null,null,null,null).exports,oi=Object.freeze(Object.defineProperty({__proto__:null,default:si},Symbol.toStringTag,{value:"Module"}));const li=at({},(function(){return this._self._c,this._m(0)}),[function(){var t=this._self._c;return t("div",[t("hr")])}],!1,null,null,null,null).exports,ri=Object.freeze(Object.defineProperty({__proto__:null,default:li},Symbol.toStringTag,{value:"Module"}));const ai=at({computed:{isSplitable(){return this.content.text.length>0&&!1===this.input().isCursorAtStart&&!1===this.input().isCursorAtEnd},keys(){return{"Mod-Enter":this.split}},marks(){return this.field("text",{}).marks}},methods:{focus(){this.$refs.input.focus()},input(){return this.$refs.input.$refs.input.$refs.input},merge(t){this.update({text:t.map((t=>t.content.text)).join("").replaceAll("
    ","")})},split(){var t,e;const i=null==(e=(t=this.input()).getSplitContent)?void 0:e.call(t);i&&this.$emit("split",[{text:i[0].replace(/(
  • <\/p><\/li><\/ul>)$/,"

")},{text:i[1].replace(/^(
  • <\/p><\/li>)/,"

      ")}])}}},(function(){var t=this;return(0,t._self._c)("k-input",{ref:"input",staticClass:"k-block-type-list-input",attrs:{keys:t.keys,marks:t.marks,value:t.content.text,type:"list"},on:{input:function(e){return t.update({text:e})}}})}),[],!1,null,null,null,null).exports,ui=Object.freeze(Object.defineProperty({__proto__:null,default:ai},Symbol.toStringTag,{value:"Module"}));const ci=at({computed:{placeholder(){return this.field("text",{}).placeholder}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this;return(0,t._self._c)("k-input",{ref:"input",staticClass:"k-block-type-markdown-input",attrs:{buttons:!1,placeholder:t.placeholder,spellcheck:!1,value:t.content.text,font:"monospace",type:"textarea"},on:{input:function(e){return t.update({text:e})}}})}),[],!1,null,null,null,null).exports,di=Object.freeze(Object.defineProperty({__proto__:null,default:ci},Symbol.toStringTag,{value:"Module"}));const pi=at({computed:{citationField(){return this.field("citation",{})},textField(){return this.field("text",{})}},methods:{focus(){this.$refs.text.focus()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-type-quote-editor"},[e("k-writer",{ref:"text",staticClass:"k-block-type-quote-text",attrs:{inline:t.textField.inline??!1,marks:t.textField.marks,placeholder:t.textField.placeholder,value:t.content.text},on:{input:function(e){return t.update({text:e})}}}),e("k-writer",{ref:"citation",staticClass:"k-block-type-quote-citation",attrs:{inline:t.citationField.inline??!0,marks:t.citationField.marks,placeholder:t.citationField.placeholder,value:t.content.citation},on:{input:function(e){return t.update({citation:e})}}})],1)}),[],!1,null,null,null,null).exports,hi=Object.freeze(Object.defineProperty({__proto__:null,default:pi},Symbol.toStringTag,{value:"Module"}));const mi=at({inheritAttrs:!1,computed:{columns(){return this.table.columns??this.fields},fields(){return this.table.fields??{}},rows(){return this.content.rows??[]},table(){let t=null;for(const e of Object.values(this.fieldset.tabs??{}))e.fields.rows&&(t=e.fields.rows);return t??{}}}},(function(){var t=this;return(0,t._self._c)("k-table",{staticClass:"k-block-type-table-preview",attrs:{columns:t.columns,empty:t.$t("field.structure.empty"),rows:t.rows},nativeOn:{dblclick:function(e){return t.open.apply(null,arguments)}}})}),[],!1,null,null,null,null).exports,fi=Object.freeze(Object.defineProperty({__proto__:null,default:mi},Symbol.toStringTag,{value:"Module"}));const gi=at({computed:{component(){const t="k-"+this.textField.type+"-input";return this.$helper.isComponent(t)?t:"k-writer-input"},isSplitable(){return this.content.text.length>0&&!1===this.input().isCursorAtStart&&!1===this.input().isCursorAtEnd},keys(){const t={"Mod-Enter":this.split};return!0===this.textField.inline&&(t.Enter=this.split),t},textField(){return this.field("text",{})}},methods:{focus(){this.$refs.input.focus()},input(){return this.$refs.input.$refs.input},merge(t){this.update({text:t.map((t=>t.content.text)).join(this.textField.inline?" ":"")})},split(){var t,e;const i=null==(e=(t=this.input()).getSplitContent)?void 0:e.call(t);i&&("writer"===this.textField.type&&(i[0]=i[0].replace(/(

      <\/p>)$/,""),i[1]=i[1].replace(/^(

      <\/p>)/,"")),this.$emit("split",i.map((t=>({text:t})))))}}},(function(){var t=this;return(0,t._self._c)(t.component,t._b({ref:"input",tag:"component",staticClass:"k-block-type-text-input",attrs:{keys:t.keys,value:t.content.text},on:{input:function(e){return t.update({text:e})}}},"component",t.textField,!1))}),[],!1,null,null,null,null).exports,ki=Object.freeze(Object.defineProperty({__proto__:null,default:gi},Symbol.toStringTag,{value:"Module"}));const bi=at({computed:{captionMarks(){return this.field("caption",{marks:!0}).marks},video(){return this.$helper.embed.video(this.content.url??"",!0)}}},(function(){var t=this,e=t._self._c;return e("k-block-figure",{attrs:{caption:t.content.caption,"caption-marks":t.captionMarks,"empty-text":t.$t("field.blocks.video.placeholder")+" …","is-empty":!t.video,"empty-icon":"video"},on:{open:t.open,update:t.update}},[e("k-frame",{attrs:{ratio:"16/9"}},[t.video?e("iframe",{attrs:{src:t.video,referrerpolicy:"strict-origin-when-cross-origin"}}):t._e()])],1)}),[],!1,null,null,null,null).exports,vi=Object.freeze(Object.defineProperty({__proto__:null,default:bi},Symbol.toStringTag,{value:"Module"}));const yi=at({inheritAttrs:!1,props:{attrs:{default:()=>({}),type:[Array,Object]},content:{default:()=>({}),type:[Array,Object]},endpoints:{default:()=>({}),type:[Array,Object]},fieldset:{default:()=>({}),type:Object},id:String,isBatched:Boolean,isFull:Boolean,isHidden:Boolean,isLastSelected:Boolean,isMergable:Boolean,isSelected:Boolean,name:String,next:Object,prev:Object,type:String},emits:["append","chooseToAppend","chooseToConvert","chooseToPrepend","close","copy","duplicate","focus","hide","merge","open","paste","prepend","remove","selectDown","selectUp","show","sortDown","sortUp","split","submit","update"],computed:{className(){let t=["k-block-type-"+this.type];return this.fieldset.preview!==this.type&&t.push("k-block-type-"+this.fieldset.preview),!1===this.wysiwyg&&t.push("k-block-type-default"),t},containerType(){const t=this.fieldset.preview;return!1!==t&&(t&&this.$helper.isComponent("k-block-type-"+t)?t:!!this.$helper.isComponent("k-block-type-"+this.type)&&this.type)},customComponent(){return this.wysiwyg?this.wysiwygComponent:"k-block-type-default"},isEditable(){return!1!==this.fieldset.editable},listeners(){return{append:t=>this.$emit("append",t),chooseToAppend:t=>this.$emit("chooseToAppend",t),chooseToConvert:t=>this.$emit("chooseToConvert",t),chooseToPrepend:t=>this.$emit("chooseToPrepend",t),close:()=>this.$emit("close"),copy:()=>this.$emit("copy"),duplicate:()=>this.$emit("duplicate"),focus:()=>this.$emit("focus"),hide:()=>this.$emit("hide"),merge:()=>this.$emit("merge"),open:t=>this.open(t),paste:()=>this.$emit("paste"),prepend:t=>this.$emit("prepend",t),remove:()=>this.remove(),removeSelected:()=>this.$emit("removeSelected"),show:()=>this.$emit("show"),sortDown:()=>this.$emit("sortDown"),sortUp:()=>this.$emit("sortUp"),split:t=>this.$emit("split",t),update:t=>this.$emit("update",t)}},tabs(){const t=this.fieldset.tabs??{};for(const[e,i]of Object.entries(t))for(const[n]of Object.entries(i.fields??{}))t[e].fields[n].section=this.name,t[e].fields[n].endpoints={field:this.endpoints.field+"/fieldsets/"+this.type+"/fields/"+n,section:this.endpoints.section,model:this.endpoints.model};return t},wysiwyg(){return!1!==this.wysiwygComponent},wysiwygComponent(){return!!this.containerType&&"k-block-type-"+this.containerType}},methods:{backspace(t){if(t.target.matches("[contenteditable], input, textarea"))return!1;t.preventDefault(),this.remove()},close(){this.$panel.drawer.close(this.id)},focus(){var t,e;"function"==typeof(null==(t=this.$refs.editor)?void 0:t.focus)?this.$refs.editor.focus():null==(e=this.$refs.container)||e.focus()},goTo(t){var e;t&&(null==(e=t.$refs.container)||e.focus(),t.open(null,!0))},isSplitable(){var t;return!0!==this.isFull&&(!!this.$refs.editor&&((this.$refs.editor.isSplitable??!0)&&"function"==typeof(null==(t=this.$refs.editor)?void 0:t.split)))},onClose(){this.$emit("close"),this.focus()},onFocusIn(t){var e,i;(null==(i=null==(e=this.$refs.options)?void 0:e.$el)?void 0:i.contains(t.target))||this.$emit("focus",t)},onInput(t){this.$emit("update",t)},open(t,e=!1){this.isEditable&&!this.isBatched&&(this.$panel.drawer.open({component:"k-block-drawer",id:this.id,tab:t,on:{close:this.onClose,input:this.onInput,next:()=>this.goTo(this.next),prev:()=>this.goTo(this.prev),remove:this.remove,show:this.show,submit:this.submit},props:{hidden:this.isHidden,icon:this.fieldset.icon??"box",next:this.next,prev:this.prev,tabs:this.tabs,title:this.fieldset.name,value:this.content},replace:e}),this.$emit("open"))},remove(){if(this.isBatched)return this.$emit("removeSelected");this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.blocks.delete.confirm")},on:{submit:()=>{this.$panel.dialog.close(),this.close(),this.$emit("remove",this.id)}}})},show(){this.$emit("show")},submit(){this.close(),this.$emit("submit")}}},(function(){var t=this,e=t._self._c;return e("div",{ref:"container",staticClass:"k-block-container",class:["k-block-container-fieldset-"+t.type,t.containerType?"k-block-container-type-"+t.containerType:""],attrs:{"data-batched":t.isBatched,"data-disabled":t.fieldset.disabled,"data-hidden":t.isHidden,"data-id":t.id,"data-last-selected":t.isLastSelected,"data-selected":t.isSelected,"data-translate":t.fieldset.translate,tabindex:"0"},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"j",void 0,e.key,void 0)?null:e.ctrlKey?(e.preventDefault(),e.stopPropagation(),t.$emit("merge")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:e.ctrlKey&&e.altKey?(e.preventDefault(),e.stopPropagation(),t.$emit("selectDown")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:e.ctrlKey&&e.altKey?(e.preventDefault(),e.stopPropagation(),t.$emit("selectUp")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:e.ctrlKey&&e.shiftKey?(e.preventDefault(),e.stopPropagation(),t.$emit("sortDown")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:e.ctrlKey&&e.shiftKey?(e.preventDefault(),e.stopPropagation(),t.$emit("sortUp")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"backspace",void 0,e.key,void 0)?null:e.ctrlKey?(e.stopPropagation(),t.backspace.apply(null,arguments)):null}],focus:function(e){return e.stopPropagation(),t.$emit("focus")},focusin:function(e){return e.stopPropagation(),t.onFocusIn.apply(null,arguments)}}},[e("div",{staticClass:"k-block",class:t.className},[e(t.customComponent,t._g(t._b({ref:"editor",tag:"component",attrs:{tabs:t.tabs}},"component",t.$props,!1),t.listeners))],1),e("k-block-options",t._g({ref:"options",attrs:{"is-batched":t.isBatched,"is-editable":t.isEditable,"is-full":t.isFull,"is-hidden":t.isHidden,"is-mergable":t.isMergable,"is-splitable":t.isSplitable()}},{...t.listeners,split:()=>t.$refs.editor.split(),open:()=>{"function"==typeof t.$refs.editor.open?t.$refs.editor.open():t.open()}}))],1)}),[],!1,null,null,null,null).exports;const $i=at({inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,empty:String,endpoints:Object,fieldsets:Object,fieldsetGroups:Object,group:String,max:{type:Number,default:null},value:{type:Array,default:()=>[]}},data(){return{blocks:this.value??[],isEditing:!1,isMultiSelectKey:!1,selected:[]}},computed:{draggableOptions(){return{id:this._uid,handle:".k-sort-handle",list:this.blocks,move:this.move,delay:10,data:{fieldsets:this.fieldsets,isFull:this.isFull},options:{group:this.group}}},hasFieldsets(){return this.$helper.object.length(this.fieldsets)>0},isEmpty(){return 0===this.blocks.length},isFull(){return null!==this.max&&this.blocks.length>=this.max},isMergable(){if(this.selected.length<2)return!1;const t=this.selected.map((t=>this.find(t)));return!(new Set(t.map((t=>t.type))).size>1)&&"function"==typeof this.ref(t[0]).$refs.editor.merge}},watch:{value(){this.blocks=this.value}},created(){this.$events.on("blur",this.onBlur),this.$events.on("click",this.onClickGlobal),this.$events.on("copy",this.onCopy),this.$events.on("keydown",this.onKey),this.$events.on("keyup",this.onKey),this.$events.on("paste",this.onPaste)},destroyed(){this.$events.off("blur",this.onBlur),this.$events.off("click",this.onClickGlobal),this.$events.off("copy",this.onCopy),this.$events.off("keydown",this.onKey),this.$events.off("keyup",this.onKey),this.$events.off("paste",this.onPaste)},mounted(){!0===this.$props.autofocus&&setTimeout(this.focus,100)},methods:{async add(t="text",e){const i=await this.$api.get(this.endpoints.field+"/fieldsets/"+t);this.blocks.splice(e,0,i),this.save(),await this.$nextTick(),this.focusOrOpen(i)},choose(t){if(1===this.$helper.object.length(this.fieldsets))return this.add(Object.values(this.fieldsets)[0].type,t);this.$panel.dialog.open({component:"k-block-selector",props:{fieldsetGroups:this.fieldsetGroups,fieldsets:this.fieldsets},on:{submit:e=>{this.add(e,t),this.$panel.dialog.close()},paste:e=>{this.paste(e,t)}}})},chooseToConvert(t){this.$panel.dialog.open({component:"k-block-selector",props:{disabledFieldsets:[t.type],fieldsetGroups:this.fieldsetGroups,fieldsets:this.fieldsets,headline:this.$t("field.blocks.changeType")},on:{submit:e=>{this.convert(e,t),this.$panel.dialog.close()},paste:this.paste}})},copy(t){if(0===this.blocks.length)return!1;if(0===this.selected.length)return!1;let e=[];for(const i of this.blocks)this.selected.includes(i.id)&&e.push(i);if(0===e.length)return!1;this.$helper.clipboard.write(e,t),this.selected=e.map((t=>t.id)),this.$panel.notification.success({message:this.$t("copy.success",{count:e.length}),icon:"template"})},copyAll(){this.selectAll(),this.copy(),this.deselectAll()},async convert(t,e){var i;const n=this.findIndex(e.id);if(-1===n)return!1;const s=t=>{let e={};for(const i of Object.values((null==t?void 0:t.tabs)??{}))e={...e,...i.fields};return e},o=this.blocks[n],l=await this.$api.get(this.endpoints.field+"/fieldsets/"+t),r=this.fieldsets[o.type],a=this.fieldsets[t];if(!a)return!1;let u=l.content;const c=s(a),d=s(r);for(const[p,h]of Object.entries(c)){const t=d[p];(null==t?void 0:t.type)===h.type&&(null==(i=null==o?void 0:o.content)?void 0:i[p])&&(u[p]=o.content[p])}this.blocks[n]={...l,id:o.id,content:u},this.save()},deselect(t){const e=this.selected.findIndex((e=>e===t.id));-1!==e&&this.selected.splice(e,1)},deselectAll(){this.selected=[]},async duplicate(t,e){const i={...this.$helper.clone(t),id:this.$helper.uuid()};this.blocks.splice(e+1,0,i),this.save()},fieldset(t){return this.fieldsets[t.type]??{icon:"box",name:t.type,tabs:{content:{fields:{}}},type:t.type}},find(t){return this.blocks.find((e=>e.id===t))},findIndex(t){return this.blocks.findIndex((e=>e.id===t))},focus(t){const e=this.ref(t);this.selected=[(null==t?void 0:t.id)??this.blocks[0]],null==e||e.focus(),null==e||e.$el.scrollIntoView({block:"nearest"})},focusOrOpen(t){this.fieldsets[t.type].wysiwyg?this.focus(t):this.open(t)},hide(t){Vue.set(t,"isHidden",!0),this.save()},isInputEvent(){const t=document.querySelector(":focus");return null==t?void 0:t.matches("input, textarea, [contenteditable], .k-writer")},isLastSelected(t){const[e]=this.selected.slice(-1);return e&&t.id===e},isOnlyInstance:()=>1===document.querySelectorAll(".k-blocks").length,isSelected(t){return this.selected.includes(t.id)},async merge(){if(this.isMergable){const t=this.selected.map((t=>this.find(t)));this.ref(t[0]).$refs.editor.merge(t);for(const e of t.slice(1))this.remove(e);await this.$nextTick(),this.focus(t[0])}},move(t){if(t.from!==t.to){const e=t.draggedContext.element,i=t.relatedContext.component.componentData||t.relatedContext.component.$parent.componentData;if(!1===Object.keys(i.fieldsets).includes(e.type))return!1;if(!0===i.isFull)return!1}return!0},onBlur(){0===this.selected.length&&(this.isMultiSelectKey=!1)},onClickBlock(t,e){e&&this.isMultiSelectKey&&this.onKey(e),this.isMultiSelectKey&&(e.preventDefault(),e.stopPropagation(),this.isSelected(t)?this.deselect(t):this.select(t))},onClickGlobal(t){var e;if("function"==typeof t.target.closest&&(t.target.closest(".k-dialog")||t.target.closest(".k-drawer")))return;const i=document.querySelector(".k-overlay:last-of-type");!1!==this.$el.contains(t.target)||!1!==(null==i?void 0:i.contains(t.target))?i&&!1===(null==(e=this.$el.closest(".k-layout-column"))?void 0:e.contains(t.target))&&this.deselectAll():this.deselectAll()},onCopy(t){return!1!==this.$el.contains(t.target)&&!0!==this.isEditing&&!0!==this.$panel.dialog.isOpen&&!0!==this.isInputEvent(t)&&this.copy(t)},onFocus(t){!1===this.isMultiSelectKey&&(this.selected=[t.id])},async onKey(t){if(this.isMultiSelectKey=t.metaKey||t.ctrlKey||t.altKey,"Escape"===t.code&&this.selected.length>1){const t=this.find(this.selected[0]);await this.$nextTick(),this.focus(t)}},onPaste(t){return!0!==this.isInputEvent(t)&&(!0!==this.isEditing&&!0!==this.$panel.dialog.isOpen&&((0!==this.selected.length||!1!==this.$el.contains(t.target))&&this.paste(t)))},open(t){var e;null==(e=this.$refs["block-"+t.id])||e[0].open()},async paste(t,e){const i=this.$helper.clipboard.read(t);let n=await this.$api.post(this.endpoints.field+"/paste",{html:i});if(void 0===e){let t=this.selected[this.selected.length-1];-1===(e=this.findIndex(t))&&(e=this.blocks.length),e++}if(this.max){const t=this.max-this.blocks.length;n=n.slice(0,t)}this.blocks.splice(e,0,...n),this.save(),this.$panel.notification.success({message:this.$t("paste.success",{count:n.length}),icon:"download"})},pasteboard(){this.$panel.dialog.open({component:"k-block-pasteboard",on:{paste:this.paste}})},prevNext(t){var e;if(this.blocks[t])return null==(e=this.$refs["block-"+this.blocks[t].id])?void 0:e[0]},ref(t){var e,i;return null==(i=this.$refs["block-"+((null==t?void 0:t.id)??(null==(e=this.blocks[0])?void 0:e.id))])?void 0:i[0]},remove(t){const e=this.findIndex(t.id);-1!==e&&(this.deselect(t),this.$delete(this.blocks,e),this.save())},removeAll(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.blocks.delete.confirm.all"),submitButton:this.$t("delete.all")},on:{submit:()=>{this.selected=[],this.blocks=[],this.save(),this.$panel.dialog.close()}}})},removeSelected(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.blocks.delete.confirm.selected")},on:{submit:()=>{for(const t of this.selected){const e=this.findIndex(t);-1!==e&&this.$delete(this.blocks,e)}this.deselectAll(),this.save(),this.$panel.dialog.close()}}})},save(){this.$emit("input",this.blocks)},select(t){!1===this.isSelected(t)&&(this.selected.push(t.id),this.selected.sort(((t,e)=>this.findIndex(t)-this.findIndex(e))))},selectDown(){const t=this.selected[this.selected.length-1],e=this.findIndex(t)+1;e=0&&this.select(this.blocks[e])},selectAll(){this.selected=Object.values(this.blocks).map((t=>t.id))},show(t){Vue.set(t,"isHidden",!1),this.save()},async sort(t,e,i){if(i<0)return;let n=this.$helper.clone(this.blocks);n.splice(e,1),n.splice(i,0,t),this.blocks=n,this.save(),await this.$nextTick(),this.focus(t)},async split(t,e,i){const n=this.$helper.clone(t);n.content={...n.content,...i[0]};const s=await this.$api.get(this.endpoints.field+"/fieldsets/"+t.type);s.content={...s.content,...n.content,...i[1]},this.blocks.splice(e,1,n,s),this.save(),await this.$nextTick(),this.focus(s)},update(t,e){const i=this.findIndex(t.id);if(-1!==i)for(const n in e)Vue.set(this.blocks[i].content,n,e[n]);this.save()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-blocks",attrs:{"data-disabled":t.disabled,"data-empty":0===t.blocks.length}},[t.hasFieldsets?[t.blocks.length?e("k-draggable",t._b({staticClass:"k-blocks-list",attrs:{"data-multi-select-key":t.isMultiSelectKey},on:{sort:t.save}},"k-draggable",t.draggableOptions,!1),t._l(t.blocks,(function(i,n){return e("k-block",t._b({key:i.id,ref:"block-"+i.id,refInFor:!0,attrs:{endpoints:t.endpoints,fieldset:t.fieldset(i),"is-batched":t.isSelected(i)&&t.selected.length>1,"is-last-selected":t.isLastSelected(i),"is-full":t.isFull,"is-hidden":!0===i.isHidden,"is-mergable":t.isMergable,"is-selected":t.isSelected(i),next:t.prevNext(n+1),prev:t.prevNext(n-1)},on:{append:function(e){return t.add(e,n+1)},chooseToAppend:function(e){return t.choose(n+1)},chooseToConvert:function(e){return t.chooseToConvert(i)},chooseToPrepend:function(e){return t.choose(n)},close:function(e){t.isEditing=!1},copy:function(e){return t.copy()},duplicate:function(e){return t.duplicate(i,n)},focus:function(e){return t.onFocus(i)},hide:function(e){return t.hide(i)},merge:function(e){return t.merge()},open:function(e){t.isEditing=!0},paste:function(e){return t.pasteboard()},prepend:function(e){return t.add(e,n)},remove:function(e){return t.remove(i)},removeSelected:t.removeSelected,show:function(e){return t.show(i)},selectDown:t.selectDown,selectUp:t.selectUp,sortDown:function(e){return t.sort(i,n,n+1)},sortUp:function(e){return t.sort(i,n,n-1)},split:function(e){return t.split(i,n,e)},update:function(e){return t.update(i,e)}},nativeOn:{click:function(e){return t.onClickBlock(i,e)}}},"k-block",i,!1))})),1):e("k-empty",{staticClass:"k-blocks-empty",attrs:{icon:"box"},on:{click:function(e){return t.choose(t.blocks.length)}}},[t._v(" "+t._s(t.empty??t.$t("field.blocks.empty"))+" ")])]:e("k-empty",{attrs:{icon:"box"}},[t._v(" "+t._s(t.$t("field.blocks.fieldsets.empty"))+" ")])],2)}),[],!1,null,null,null,null).exports;const wi=at({inheritAttrs:!1,props:{caption:String,captionMarks:{default:!0,type:[Boolean,Array]},isEmpty:Boolean,emptyIcon:String,emptyText:String}},(function(){var t=this,e=t._self._c;return e("figure",{staticClass:"k-block-figure"},[t.isEmpty?e("k-button",{staticClass:"k-block-figure-empty",attrs:{icon:t.emptyIcon,text:t.emptyText},on:{click:function(e){return t.$emit("open")}}}):e("span",{staticClass:"k-block-figure-container",on:{dblclick:function(e){return t.$emit("open")}}},[t._t("default")],2),t.caption?e("figcaption",[e("k-writer",{attrs:{inline:!0,marks:t.captionMarks,value:t.caption},on:{input:function(e){return t.$emit("update",{caption:e})}}})],1):t._e()],1)}),[],!1,null,null,null,null).exports;const xi=at({props:{isBatched:Boolean,isEditable:Boolean,isFull:Boolean,isHidden:Boolean,isMergable:Boolean,isSplitable:Boolean},computed:{buttons(){return this.isBatched?[{icon:"template",title:this.$t("copy"),click:()=>this.$emit("copy")},{when:this.isMergable,icon:"merge",title:this.$t("merge"),click:()=>this.$emit("merge")},{icon:"trash",title:this.$t("remove"),click:()=>this.$emit("removeSelected")}]:[{when:this.isEditable,icon:"edit",title:this.$t("edit"),click:()=>this.$emit("open")},{icon:"add",title:this.$t("insert.after"),disabled:this.isFull,click:()=>this.$emit("chooseToAppend")},{icon:"trash",title:this.$t("delete"),click:()=>this.$emit("remove")},{icon:"sort",title:this.$t("sort.drag"),class:"k-sort-handle",key:t=>this.sort(t)},{icon:"dots",title:this.$t("more"),dropdown:[{icon:"angle-up",label:this.$t("insert.before"),disabled:this.isFull,click:()=>this.$emit("chooseToPrepend")},{icon:"angle-down",label:this.$t("insert.after"),disabled:this.isFull,click:()=>this.$emit("chooseToAppend")},"-",{when:this.isEditable,icon:"edit",label:this.$t("edit"),click:()=>this.$emit("open")},{icon:"refresh",label:this.$t("field.blocks.changeType"),click:()=>this.$emit("chooseToConvert")},{when:this.isSplitable,icon:"split",label:this.$t("split"),click:()=>this.$emit("split")},"-",{icon:"template",label:this.$t("copy"),click:()=>this.$emit("copy")},{icon:"download",label:this.$t("paste.after"),disabled:this.isFull,click:()=>this.$emit("paste")},"-",{icon:this.isHidden?"preview":"hidden",label:this.isHidden?this.$t("show"):this.$t("hide"),click:()=>this.$emit(this.isHidden?"show":"hide")},{icon:"copy",label:this.$t("duplicate"),click:()=>this.$emit("duplicate")},"-",{icon:"trash",label:this.$t("delete"),click:()=>this.$emit("remove")}]}]}},methods:{open(){this.$refs.options.open()},sort(t){switch(t.preventDefault(),t.key){case"ArrowUp":this.$emit("sortUp");break;case"ArrowDown":this.$emit("sortDown")}}}},(function(){return(0,this._self._c)("k-toolbar",{staticClass:"k-block-options",attrs:{buttons:this.buttons},nativeOn:{mousedown:function(t){t.preventDefault()}}})}),[],!1,null,null,null,null).exports;const _i=at({inheritAttrs:!1,computed:{shortcut(){return this.$helper.keyboard.metaKey()+"+v"}},methods:{paste(t){this.$emit("close"),this.$emit("paste",t)}}},(function(){var t=this,e=t._self._c;return e("k-dialog",{ref:"dialog",staticClass:"k-block-importer",attrs:{"cancel-button":!1,"submit-button":!1,visible:!0,size:"large"},on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},[e("label",{attrs:{for:"pasteboard"},domProps:{innerHTML:t._s(t.$t("field.blocks.fieldsets.paste",{shortcut:t.shortcut}))}}),e("textarea",{attrs:{id:"pasteboard"},on:{paste:function(e){return e.preventDefault(),t.paste.apply(null,arguments)}}})])}),[],!1,null,null,null,null).exports;const Si=at({mixins:[Et],inheritAttrs:!1,props:{cancelButton:{default:!1},disabledFieldsets:{default:()=>[],type:Array},fieldsets:{type:Object},fieldsetGroups:{type:Object},headline:{type:String},size:{default:"medium"},submitButton:{default:!1},value:{default:null,type:String}},data:()=>({selected:null}),computed:{groups(){const t={};let e=0;const i=this.fieldsetGroups??{blocks:{label:this.$t("field.blocks.fieldsets.label"),sets:Object.keys(this.fieldsets)}};for(const n in i){let s=i[n];if(s.open=!1!==s.open,s.fieldsets=s.sets.filter((t=>this.fieldsets[t])).map((t=>(e++,{...this.fieldsets[t],index:e}))),0===s.fieldsets.length)return;t[n]=s}return t},shortcut(){return this.$helper.keyboard.metaKey()+"+v"}},created(){this.$events.on("paste",this.paste)},destroyed(){this.$events.off("paste",this.paste)},methods:{paste(t){this.$emit("paste",t),this.close()}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({staticClass:"k-block-selector",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-dialog",t.$props,!1),[t.headline?e("k-headline",[t._v(" "+t._s(t.headline)+" ")]):t._e(),t._l(t.groups,(function(i,n){return e("details",{key:n,attrs:{open:i.open}},[e("summary",[t._v(t._s(i.label))]),e("k-navigate",{staticClass:"k-block-types"},t._l(i.fieldsets,(function(i){return e("k-button",{key:i.name,attrs:{disabled:t.disabledFieldsets.includes(i.type),icon:i.icon??"box",text:i.name,size:"lg"},on:{click:function(e){return t.$emit("submit",i.type)}},nativeOn:{focus:function(e){return t.$emit("input",i.type)}}})})),1)],1)})),e("p",{staticClass:"k-clipboard-hint",domProps:{innerHTML:t._s(t.$t("field.blocks.fieldsets.paste",{shortcut:t.shortcut}))}})],2)}),[],!1,null,null,null,null).exports;const Ci=at({inheritAttrs:!1,props:{fieldset:{default:()=>({}),type:Object},content:{default:()=>({}),type:Object}},computed:{icon(){return this.fieldset.icon??"box"},label(){if(!this.fieldset.label||0===this.fieldset.label.length)return!1;if(this.fieldset.label===this.fieldset.name)return!1;let t=this.$helper.string.template(this.fieldset.label,this.content);return"…"!==t&&(t=this.$helper.string.stripHTML(t),this.$helper.string.unescapeHTML(t))},name(){return this.fieldset.name}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-title"},[e("k-icon",{staticClass:"k-block-icon",attrs:{type:t.icon}}),t.name?e("span",{staticClass:"k-block-name"},[t._v(" "+t._s(t.name)+" ")]):t._e(),t.label?e("span",{staticClass:"k-block-label"},[t._v(" "+t._s(t.label)+" ")]):t._e()],1)}),[],!1,null,null,null,null).exports;const Oi=at({inheritAttrs:!1,props:{content:[Object,Array],fieldset:Object,id:String},methods:{field(t,e=null){let i=null;for(const n of Object.values(this.fieldset.tabs??{}))n.fields[t]&&(i=n.fields[t]);return i??e},open(){this.$emit("open")},update(t){this.$emit("update",{...this.content,...t})}}},null,null,!1,null,null,null,null).exports,Ai={install(t){t.component("k-block",yi),t.component("k-blocks",$i),t.component("k-block-figure",wi),t.component("k-block-options",xi),t.component("k-block-pasteboard",_i),t.component("k-block-selector",Si),t.component("k-block-title",Ci),t.component("k-block-type",Oi);const e=Object.assign({"./Types/Code.vue":Je,"./Types/Default.vue":Xe,"./Types/Fields.vue":Qe,"./Types/Gallery.vue":ei,"./Types/Heading.vue":ni,"./Types/Image.vue":oi,"./Types/Line.vue":ri,"./Types/List.vue":ui,"./Types/Markdown.vue":di,"./Types/Quote.vue":hi,"./Types/Table.vue":fi,"./Types/Text.vue":ki,"./Types/Video.vue":vi});for(const i in e){const n=i.match(/\/([a-zA-Z]*)\.vue/)[1].toLowerCase();let s=e[i].default;s.extends=Oi,t.component("k-block-type-"+n,s)}}};const Mi=at({mixins:[Pe],inheritAttrs:!1,props:{autofocus:Boolean,empty:String,fieldsets:Object,fieldsetGroups:Object,group:String,max:{type:Number,default:null},value:{type:Array,default:()=>[]}},data:()=>({opened:[]}),computed:{hasFieldsets(){return this.$helper.object.length(this.fieldsets)>0},isEmpty(){return 0===this.value.length},isFull(){return null!==this.max&&this.value.length>=this.max},options(){return[{click:()=>this.$refs.blocks.copyAll(),disabled:this.isEmpty,icon:"template",text:this.$t("copy.all")},{click:()=>this.$refs.blocks.pasteboard(),disabled:this.isFull,icon:"download",text:this.$t("paste")},"-",{click:()=>this.$refs.blocks.removeAll(),disabled:this.isEmpty,icon:"trash",text:this.$t("delete.all")}]}},methods:{focus(){this.$refs.blocks.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-blocks-field",scopedSlots:t._u([!t.disabled&&t.hasFieldsets?{key:"options",fn:function(){return[e("k-button-group",{attrs:{layout:"collapsed"}},[e("k-button",{attrs:{autofocus:t.autofocus,disabled:t.isFull,responsive:!0,text:t.$t("add"),icon:"add",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.blocks.choose(t.value.length)}}}),e("k-button",{attrs:{icon:"dots",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:t.options,"align-x":"end"}})],1)]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[e("k-blocks",t._g({ref:"blocks",attrs:{autofocus:t.autofocus,compact:!1,disabled:t.disabled,empty:t.empty,endpoints:t.endpoints,fieldsets:t.fieldsets,"fieldset-groups":t.fieldsetGroups,group:t.group,max:t.max,value:t.value},on:{close:function(e){t.opened=e},open:function(e){t.opened=e}}},t.$listeners)),t.disabled||t.isEmpty||t.isFull||!t.hasFieldsets?t._e():e("footer",{staticClass:"k-bar",attrs:{"data-align":"center"}},[e("k-button",{attrs:{title:t.$t("add"),icon:"add",size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.blocks.choose(t.value.length)}}})],1)],1)}),[],!1,null,null,null,null).exports,ji={mixins:[H,K,G,it,lt]},Ii={mixins:[ji],inheritAttrs:!1,emits:["input"],methods:{focus(){this.$el.focus()}}},Ti={mixins:[ji,nt],props:{columns:{default:1,type:Number},max:Number,min:Number,theme:String,value:{type:Array,default:()=>[]}}};const Ei=at({mixins:[Ii,Ti],data:()=>({selected:[]}),computed:{choices(){return this.options.map(((t,e)=>({autofocus:this.autofocus&&0===e,checked:this.selected.includes(t.value),disabled:this.disabled||t.disabled,info:t.info,label:t.text,name:this.name??this.id,type:"checkbox",value:t.value})))}},watch:{value:{handler(t){this.selected=Array.isArray(t)?t:[],this.validate()},immediate:!0}},methods:{focus(){var t;null==(t=this.$el.querySelector("input"))||t.focus()},input(t,e){if(!0===e)this.selected.push(t);else{const e=this.selected.indexOf(t);-1!==e&&this.selected.splice(e,1)}this.$emit("input",this.selected)},select(){this.focus()},validate(){this.$emit("invalid",this.$v.$invalid,this.$v)}},validations(){return{selected:{required:!this.required||t.required,min:!this.min||t.minLength(this.min),max:!this.max||t.maxLength(this.max)}}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-checkboxes-input k-grid",style:"--columns:"+t.columns,attrs:{"data-variant":"choices"}},t._l(t.choices,(function(i,n){return e("li",{key:n},[e("k-choice-input",t._b({on:{input:function(e){return t.input(i.value,e)}}},"k-choice-input",i,!1))],1)})),0)}),[],!1,null,null,null,null).exports,Li={props:{counter:{type:Boolean,default:!0}},computed:{counterOptions(){const t=this.counterValue??this.value;if(null===t||this.disabled||!1===this.counter)return!1;let e=0;return t&&(e=Array.isArray(t)?t.length:String(t).length),{count:e,min:this.min??this.minlength,max:this.max??this.maxlength}}}};const Di=at({mixins:[Pe,Fe,Ti,Li],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-checkboxes-field",attrs:{counter:t.counterOptions}},"k-field",t.$props,!1),[e("k-checkboxes-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-checkboxes-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,Bi={mixins:[ji,U,W,tt,et,st,ot,rt],props:{ariaLabel:String,type:{default:"text",type:String},value:{type:String}}};const qi=at({mixins:[Ii,Bi]},(function(){var t=this;return(0,t._self._c)("input",t._b({directives:[{name:"direction",rawName:"v-direction"}],staticClass:"k-string-input",attrs:{"aria-label":t.ariaLabel,"data-font":t.font},on:{input:function(e){return t.$emit("input",e.target.value)}}},"input",{autocomplete:t.autocomplete,autofocus:t.autofocus,disabled:t.disabled,id:t.id,maxlength:t.maxlength,minlength:t.minlength,name:t.name,pattern:t.pattern,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,type:t.type,value:t.value},!1))}),[],!1,null,null,null,null).exports,Pi={mixins:[Bi],props:{alpha:{type:Boolean,default:!0},autocomplete:{default:"off",type:String},format:{type:String,default:"hex",validator:t=>["hex","rgb","hsl"].includes(t)},spellcheck:{default:!1,type:Boolean}}};const Ni=at({mixins:[qi,Pi],watch:{value(){this.validate()}},mounted(){this.validate()},methods:{convert(t){if(!t)return t;const e=document.createElement("div");e.style.color=t,document.body.append(e),t=window.getComputedStyle(e).color,e.remove();try{return this.$library.colors.toString(t,this.format,this.alpha)}catch(i){return t}},convertAndEmit(t){this.emit(this.convert(t))},emit(t){this.$emit("input",t)},onBlur(){this.convertAndEmit(this.value)},onPaste(t){t instanceof ClipboardEvent&&(t=this.$helper.clipboard.read(t,!0)),this.convertAndEmit(t)},async onSave(){var t;this.convertAndEmit(this.value),await this.$nextTick(),null==(t=this.$el.form)||t.requestSubmit()},validate(){let t="";null===this.$library.colors.parse(this.value)&&(t=this.$t("error.validation.color",{format:this.format})),this.$el.setCustomValidity(t)}}},(function(){var t=this;return(0,t._self._c)("k-string-input",t._b({staticClass:"k-colorname-input",attrs:{type:"text"},on:{input:function(e){return t.$emit("input",e)}},nativeOn:{blur:function(e){return t.onBlur.apply(null,arguments)},paste:function(e){return t.onPaste.apply(null,arguments)},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.metaKey?(e.stopPropagation(),e.preventDefault(),t.onSave.apply(null,arguments)):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.onSave.apply(null,arguments)}]}},"k-string-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const zi=at({mixins:[Pe,Fe,Pi],inheritAttrs:!1,props:{icon:{type:String,default:"pipette"},mode:{type:String,default:"picker",validator:t=>["picker","input","options"].includes(t)},options:{type:Array,default:()=>[]}},data:()=>({isInvalid:!1}),computed:{convertedOptions(){return this.options.map((t=>({...t,value:this.convert(t.value)})))},currentOption(){return this.convertedOptions.find((t=>t.value===this.value))}},methods:{convert(t){return this.$library.colors.toString(t,this.format,this.alpha)}}},(function(){var t,e=this,i=e._self._c;return i("k-field",e._b({staticClass:"k-color-field",attrs:{input:e._uid}},"k-field",e.$props,!1),["options"===e.mode?i("k-coloroptions-input",e._b({staticClass:"k-color-field-options",attrs:{options:e.convertedOptions},on:{input:function(t){return e.$emit("input",t)}}},"k-coloroptions-input",e.$props,!1)):i("k-input",e._b({attrs:{theme:"field",type:"color"},scopedSlots:e._u([{key:"before",fn:function(){return["picker"===e.mode?[i("button",{staticClass:"k-color-field-picker-toggle",attrs:{disabled:e.disabled,type:"button"},on:{click:function(t){return e.$refs.picker.toggle()}}},[i("k-color-frame",{attrs:{color:e.value}})],1),i("k-dropdown-content",{ref:"picker",staticClass:"k-color-field-picker"},[i("k-colorpicker-input",e._b({ref:"color",attrs:{options:e.convertedOptions},on:{input:function(t){return e.$emit("input",t)}},nativeOn:{click:function(t){t.stopPropagation()}}},"k-colorpicker-input",e.$props,!1))],1)]:i("k-color-frame",{attrs:{color:e.value}})]},proxy:!0},{key:"default",fn:function(){return[i("k-colorname-input",e._b({on:{input:function(t){return e.$emit("input",t)}}},"k-colorname-input",e.$props,!1))]},proxy:!0},(null==(t=e.currentOption)?void 0:t.text)?{key:"after",fn:function(){return[e._v(" "+e._s(e.currentOption.text)+" ")]},proxy:!0}:null,"picker"===e.mode?{key:"icon",fn:function(){return[i("k-button",{staticClass:"k-input-icon-button",attrs:{icon:e.icon},on:{click:function(t){return t.stopPropagation(),e.$refs.picker.toggle()}}})]},proxy:!0}:null],null,!0)},"k-input",e.$props,!1))],1)}),[],!1,null,null,null,null).exports,Fi={mixins:[ji],props:{display:{type:String,default:"DD.MM.YYYY"},max:String,min:String,step:{type:Object,default:()=>({size:1,unit:"day"})},type:{type:String,default:"date"},value:String}};const Ri=at({mixins:[Ii,Fi],data:()=>({dt:null,formatted:null}),computed:{inputType:()=>"date",pattern(){return this.$library.dayjs.pattern(this.display)},rounding(){return{...this.$options.props.step.default(),...this.step}}},watch:{value:{handler(t,e){if(t!==e){const e=this.toDatetime(t);this.commit(e)}},immediate:!0}},created(){this.$events.on("keydown.cmd.s",this.onBlur)},destroyed(){this.$events.off("keydown.cmd.s",this.onBlur)},methods:{async alter(t){let e=this.parse()??this.round(this.$library.dayjs()),i=this.rounding.unit,n=this.rounding.size;const s=this.selection();null!==s&&("meridiem"===s.unit?(t="pm"===e.format("a")?"subtract":"add",i="hour",n=12):(i=s.unit,i!==this.rounding.unit&&(n=1))),e=e[t](n,i).round(this.rounding.unit,this.rounding.size),this.commit(e),this.emit(e),await this.$nextTick(),this.select(s)},commit(t){this.dt=t,this.formatted=this.pattern.format(t),this.$emit("invalid",this.$v.$invalid,this.$v)},emit(t){this.$emit("input",this.toISO(t))},onArrowDown(){this.alter("subtract")},onArrowUp(){this.alter("add")},onBlur(){const t=this.parse();this.commit(t),this.emit(t)},async onEnter(){this.onBlur(),await this.$nextTick(),this.$emit("submit")},onInput(t){const e=this.parse(),i=this.pattern.format(e);if(!t||i==t)return this.commit(e),this.emit(e)},async onTab(t){if(""==this.$refs.input.value)return;this.onBlur(),await this.$nextTick();const e=this.selection();if(this.$refs.input&&e.start===this.$refs.input.selectionStart&&e.end===this.$refs.input.selectionEnd-1)if(t.shiftKey){if(0===e.index)return;this.selectPrev(e.index)}else{if(e.index===this.pattern.parts.length-1)return;this.selectNext(e.index)}else{if(this.$refs.input&&this.$refs.input.selectionStart==e.end+1&&e.index==this.pattern.parts.length-1)return;if(this.$refs.input&&this.$refs.input.selectionEnd-1>e.end){const t=this.pattern.at(this.$refs.input.selectionEnd,this.$refs.input.selectionEnd);this.select(this.pattern.parts[t.index])}else this.select(this.pattern.parts[e.index])}t.preventDefault()},parse(){let t=this.$refs.input.value;return t=this.$library.dayjs.interpret(t,this.inputType),this.round(t)},round(t){return null==t?void 0:t.round(this.rounding.unit,this.rounding.size)},select(t){var e;t||(t=this.selection()),null==(e=this.$refs.input)||e.setSelectionRange(t.start,t.end+1)},selectFirst(){this.select(this.pattern.parts[0])},selectLast(){this.select(this.pattern.parts[this.pattern.parts.length-1])},selectNext(t){this.select(this.pattern.parts[t+1])},selectPrev(t){this.select(this.pattern.parts[t-1])},selection(){return this.pattern.at(this.$refs.input.selectionStart,this.$refs.input.selectionEnd)},toDatetime(t){return this.round(this.$library.dayjs.iso(t,this.inputType))},toISO(t){return null==t?void 0:t.toISO(this.inputType)}},validations(){return{value:{min:!this.dt||!this.min||(()=>this.dt.validate(this.min,"min",this.rounding.unit)),max:!this.dt||!this.max||(()=>this.dt.validate(this.max,"max",this.rounding.unit)),required:!this.required||(()=>!!this.dt)}}}},(function(){var t=this;return(0,t._self._c)("input",{directives:[{name:"direction",rawName:"v-direction"}],ref:"input",class:`k-text-input k-${t.type}-input`,attrs:{id:t.id,autofocus:t.autofocus,disabled:t.disabled,placeholder:t.display,required:t.required,autocomplete:"off",spellcheck:"false",type:"text"},domProps:{value:t.formatted},on:{blur:t.onBlur,focus:function(e){return t.$emit("focus")},input:function(e){return t.onInput(e.target.value)},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:(e.stopPropagation(),e.preventDefault(),t.onArrowDown.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:(e.stopPropagation(),e.preventDefault(),t.onArrowUp.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.stopPropagation(),e.preventDefault(),t.onEnter.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:t.onTab.apply(null,arguments)}]}})}),[],!1,null,null,null,null).exports;const Yi=at({mixins:[Pe,Fe,Fi],inheritAttrs:!1,props:{calendar:{type:Boolean,default:!0},icon:{type:String,default:"calendar"},time:{type:[Boolean,Object],default:()=>({})},times:{type:Boolean,default:!0}},data(){return{isInvalid:!1,iso:this.toIso(this.value)}},computed:{isEmpty(){return this.time?null===this.iso.date&&this.iso.time:null===this.iso.date}},watch:{value(t,e){t!==e&&(this.iso=this.toIso(t))}},methods:{focus(){this.$refs.dateInput.focus()},now(){const t=this.$library.dayjs();return{date:t.toISO("date"),time:this.time?t.toISO("time"):"00:00:00"}},onInput(){if(this.isEmpty)return this.$emit("input","");const t=this.$library.dayjs.iso(this.iso.date+" "+this.iso.time);(t||null!==this.iso.date&&null!==this.iso.time)&&this.$emit("input",(null==t?void 0:t.toISO())??"")},onCalendarInput(t){var e;null==(e=this.$refs.calendar)||e.close(),this.onDateInput(t)},onDateInput(t){t&&!this.iso.time&&(this.iso.time=this.now().time),this.iso.date=t,this.onInput()},onDateInvalid(t){this.isInvalid=t},onTimeInput(t){t&&!this.iso.date&&(this.iso.date=this.now().date),this.iso.time=t,this.onInput()},onTimesInput(t){var e;null==(e=this.$refs.times)||e.close(),this.onTimeInput(t+":00")},toIso(t){const e=this.$library.dayjs.iso(t);return{date:(null==e?void 0:e.toISO("date"))??null,time:(null==e?void 0:e.toISO("time"))??null}}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-date-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("div",{ref:"body",staticClass:"k-date-field-body",attrs:{"data-has-time":Boolean(t.time),"data-invalid":!t.novalidate&&t.isInvalid}},[e("k-input",t._b({ref:"dateInput",attrs:{id:t._uid,autofocus:t.autofocus,disabled:t.disabled,display:t.display,max:t.max,min:t.min,required:t.required,value:t.value,theme:"field",type:"date"},on:{invalid:t.onDateInvalid,input:t.onDateInput,submit:function(e){return t.$emit("submit")}},scopedSlots:t._u([t.calendar?{key:"icon",fn:function(){return[e("k-button",{staticClass:"k-input-icon-button",attrs:{disabled:t.disabled,icon:t.icon,title:t.$t("date.select")},on:{click:function(e){return t.$refs.calendar.toggle()}}}),e("k-dropdown-content",{ref:"calendar",attrs:{"align-x":"end"}},[e("k-calendar",{attrs:{value:t.iso.date,min:t.min,max:t.max},on:{input:t.onCalendarInput}})],1)]},proxy:!0}:null],null,!0)},"k-input",t.$props,!1)),t.time?e("k-input",{ref:"timeInput",attrs:{disabled:t.disabled,display:t.time.display,required:t.required,step:t.time.step,value:t.iso.time,icon:t.time.icon,theme:"field",type:"time"},on:{input:t.onTimeInput,submit:function(e){return t.$emit("submit")}},scopedSlots:t._u([t.times?{key:"icon",fn:function(){return[e("k-button",{staticClass:"k-input-icon-button",attrs:{disabled:t.disabled,icon:t.time.icon??"clock",title:t.$t("time.select")},on:{click:function(e){return t.$refs.times.toggle()}}}),e("k-dropdown-content",{ref:"times",attrs:{"align-x":"end"}},[e("k-timeoptions-input",{attrs:{display:t.time.display,value:t.value},on:{input:t.onTimesInput}})],1)]},proxy:!0}:null],null,!0)}):t._e()],1)])}),[],!1,null,null,null,null).exports,Ui={mixins:[ji,W,tt,et,st,ot,rt],props:{autocomplete:{type:[Boolean,String],default:"off"},preselect:Boolean,type:{type:String,default:"text"},value:String}};const Hi=at({mixins:[Ii,Ui],data(){return{listeners:{...this.$listeners,input:t=>this.onInput(t.target.value)}}},watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{onInput(t){this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},select(){this.$refs.input.select()}},validations(){return{value:{required:!this.required||t.required,minLength:!this.minlength||t.minLength(this.minlength),maxLength:!this.maxlength||t.maxLength(this.maxlength),email:"email"!==this.type||t.email,url:"url"!==this.type||t.url,pattern:!this.pattern||(t=>!this.required&&!t||!this.$refs.input.validity.patternMismatch)}}}},(function(){var t=this;return(0,t._self._c)("input",t._g(t._b({directives:[{name:"direction",rawName:"v-direction"}],ref:"input",staticClass:"k-text-input",attrs:{"data-font":t.font}},"input",{autocomplete:t.autocomplete,autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,pattern:t.pattern,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,type:t.type,value:t.value},!1),t.listeners))}),[],!1,null,null,null,null).exports,Vi={mixins:[Ui],props:{autocomplete:{type:String,default:"email"},placeholder:{type:String,default:()=>window.panel.$t("email.placeholder")},type:{type:String,default:"email"}}};const Ki=at({extends:Hi,mixins:[Vi]},null,null,!1,null,null,null,null).exports;const Wi=at({mixins:[Pe,Fe,Vi],inheritAttrs:!1,props:{link:{type:Boolean,default:!0},icon:{type:String,default:"email"}},computed:{mailto(){var t;return(null==(t=this.value)?void 0:t.length)>0?"mailto:"+this.value:null}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-email-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"email"},scopedSlots:t._u([{key:"icon",fn:function(){return[t.link?e("k-button",{staticClass:"k-input-icon-button",attrs:{icon:t.icon,link:t.mailto,title:t.$t("open"),tabindex:"-1",target:"_blank"}}):t._e()]},proxy:!0}])},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const Ji=at({type:"model",mixins:[Pe,H,Q],inheritAttrs:!1,props:{empty:String,info:String,link:Boolean,max:Number,multiple:Boolean,parent:String,search:Boolean,size:String,text:String,value:{type:Array,default:()=>[]}},data(){return{selected:this.value}},computed:{buttons(){return[{autofocus:this.autofocus,text:this.$t("select"),icon:"checklist",responsive:!0,click:()=>this.open()}]},collection(){return{empty:this.emptyProps,items:this.selected,layout:this.layout,link:this.link,size:this.size,sortable:!this.disabled&&this.selected.length>1}},hasDropzone:()=>!1,isInvalid(){return this.required&&0===this.selected.length||this.min&&this.selected.lengththis.max},more(){return!this.max||this.max>this.selected.length}},watch:{value(t){this.selected=t}},methods:{drop(){},focus(){},onInput(){this.$emit("input",this.selected)},open(){if(this.disabled)return!1;this.$panel.dialog.open({component:`k-${this.$options.type}-dialog`,props:{endpoint:this.endpoints.field,hasSearch:this.search,max:this.max,multiple:this.multiple,value:this.selected.map((t=>t.id))},on:{submit:t=>{this.select(t),this.$panel.dialog.close()}}})},remove(t){this.selected.splice(t,1),this.onInput()},removeById(t){this.selected=this.selected.filter((e=>e.id!==t)),this.onInput()},select(t){if(0===t.length)return this.selected=[],void this.onInput();this.selected=this.selected.filter((e=>t.find((t=>t.id===e.id))));for(const e of t)this.selected.find((t=>e.id===t.id))||this.selected.push(e);this.onInput()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({class:`k-models-field k-${t.$options.type}-field`,scopedSlots:t._u([t.disabled?null:{key:"options",fn:function(){return[e("k-button-group",{ref:"buttons",staticClass:"k-field-options",attrs:{buttons:t.buttons,layout:"collapsed",size:"xs",variant:"filled"}})]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-dropzone",{attrs:{disabled:!t.hasDropzone},on:{drop:t.drop}},[e("k-collection",t._b({on:{empty:t.open,sort:t.onInput,sortChange:function(e){return t.$emit("change",e)}},scopedSlots:t._u([t.disabled?null:{key:"options",fn:function({index:i}){return[e("k-button",{attrs:{title:t.$t("remove"),icon:"remove"},on:{click:function(e){return t.remove(i)}}})]}}],null,!0)},"k-collection",t.collection,!1))],1)],1)}),[],!1,null,null,null,null).exports;const Gi=at({extends:Ji,type:"files",props:{uploads:[Boolean,Object,Array]},computed:{buttons(){const t=Ji.computed.buttons.call(this);return this.hasDropzone&&t.unshift({autofocus:this.autofocus,text:this.$t("upload"),responsive:!0,icon:"upload",click:()=>this.$panel.upload.pick(this.uploadOptions)}),t},emptyProps(){return{icon:"image",text:this.empty??this.$t("field.files.empty")}},hasDropzone(){return!this.disabled&&this.more&&this.uploads},uploadOptions(){return{accept:this.uploads.accept,max:this.max,multiple:this.multiple,url:this.$panel.urls.api+"/"+this.endpoints.field+"/upload",on:{done:t=>{!1===this.multiple&&(this.selected=[]);for(const e of t)void 0===this.selected.find((t=>t.id===e.id))&&this.selected.push(e);this.onInput(),this.$events.emit("model.update")}}}}},created(){this.$events.on("file.delete",this.removeById)},destroyed(){this.$events.off("file.delete",this.removeById)},methods:{drop(t){return!1!==this.uploads&&this.$panel.upload.open(t,this.uploadOptions)}}},null,null,!1,null,null,null,null).exports;const Xi=at({},(function(){return(0,this._self._c)("div",{staticClass:"k-field k-gap-field"})}),[],!1,null,null,null,null).exports;const Zi=at({mixins:[J,Z],inheritAttrs:!1},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-headline-field"},[e("k-headline",{staticClass:"h2"},[t._v(" "+t._s(t.label)+" ")]),t.help?e("footer",{staticClass:"k-field-footer"},[e("k-text",{staticClass:"k-help k-field-help",attrs:{html:t.help}})],1):t._e()],1)}),[],!1,null,null,null,null).exports;const Qi=at({mixins:[J,Z],props:{icon:String,text:String,theme:{type:String,default:"info"}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-field k-info-field"},[t.label?e("k-headline",[t._v(t._s(t.label))]):t._e(),e("k-box",{attrs:{icon:t.icon,theme:t.theme}},[e("k-text",{attrs:{html:t.text}})],1),t.help?e("footer",{staticClass:"k-field-footer"},[e("k-text",{staticClass:"k-help k-field-help",attrs:{html:t.help}})],1):t._e()],1)}),[],!1,null,null,null,null).exports;const tn=at({mixins:[Pe],inheritAttrs:!1,props:{autofocus:Boolean,empty:String,fieldsetGroups:Object,fieldsets:Object,layouts:{type:Array,default:()=>[["1/1"]]},selector:Object,settings:Object,value:{type:Array,default:()=>[]}},computed:{isEmpty(){return 0===this.value.length},options(){return[{click:()=>this.$refs.layouts.copy(),disabled:this.isEmpty,icon:"template",text:this.$t("copy.all")},{click:()=>this.$refs.layouts.pasteboard(),icon:"download",text:this.$t("paste")},"-",{click:()=>this.$refs.layouts.removeAll(),disabled:this.isEmpty,icon:"trash",text:this.$t("delete.all")}]}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-layout-field",scopedSlots:t._u([t.disabled?null:{key:"options",fn:function(){return[e("k-button-group",{attrs:{layout:"collapsed"}},[e("k-button",{attrs:{autofocus:t.autofocus,text:t.$t("add"),icon:"add",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.layouts.select(0)}}}),e("k-button",{attrs:{icon:"dots",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:t.options,"align-x":"end"}})],1)]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-layouts",t._b({ref:"layouts",on:{input:function(e){return t.$emit("input",e)}}},"k-layouts",t.$props,!1)),t.disabled?t._e():e("footer",{staticClass:"k-bar",attrs:{"data-align":"center"}},[e("k-button",{attrs:{title:t.$t("add"),icon:"add",size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.layouts.select(t.value.length)}}})],1)],1)}),[],!1,null,null,null,null).exports;const en=at({},(function(){return(0,this._self._c)("hr",{staticClass:"k-line-field"})}),[],!1,null,null,null,null).exports;const nn=at({mixins:[{mixins:[Pe,Fe,nt],props:{value:{default:"",type:String}}}],inheritAttrs:!1,data:()=>({model:null,linkType:null,linkValue:null,expanded:!1,isInvalid:!1}),computed:{currentType(){return this.activeTypes[this.linkType]??Object.values(this.activeTypes)[0]},availableTypes(){return{url:{detect:t=>/^(http|https):\/\//.test(t),icon:"url",label:this.$t("url"),link:t=>t,placeholder:this.$t("url.placeholder"),input:"url",value:t=>t},page:{detect:t=>!0===this.isPageUUID(t),icon:"page",label:this.$t("page"),link:t=>t,placeholder:this.$t("select")+" …",input:"text",value:t=>t},file:{detect:t=>!0===this.isFileUUID(t),icon:"file",label:this.$t("file"),link:t=>t,placeholder:this.$t("select")+" …",value:t=>t},email:{detect:t=>t.startsWith("mailto:"),icon:"email",label:this.$t("email"),link:t=>t.replace(/^mailto:/,""),placeholder:this.$t("email.placeholder"),input:"email",value:t=>"mailto:"+t},tel:{detect:t=>t.startsWith("tel:"),icon:"phone",label:this.$t("tel"),link:t=>t.replace(/^tel:/,""),pattern:"[+]{0,1}[0-9]+",placeholder:this.$t("tel.placeholder"),input:"tel",value:t=>"tel:"+t},anchor:{detect:t=>t.startsWith("#"),icon:"anchor",label:"Anchor",link:t=>t,pattern:"^#.+",placeholder:"#element",input:"text",value:t=>t},custom:{detect:()=>!0,icon:"title",label:this.$t("custom"),link:t=>t,input:"text",value:t=>t}}},activeTypes(){var t;if(!(null==(t=this.options)?void 0:t.length))return this.availableTypes;const e={};for(const i of this.options)e[i]=this.availableTypes[i];return e},activeTypesOptions(){const t=[];for(const e in this.activeTypes)t.push({click:()=>this.switchType(e),current:e===this.linkType,icon:this.activeTypes[e].icon,label:this.activeTypes[e].label});return t}},watch:{value:{handler(t,e){if(t===e)return;const i=this.detect(t);this.linkType=this.linkType??i.type,this.linkValue=i.link,t!==e&&this.preview(i)},immediate:!0}},created(){this.$events.on("click",this.onOutsideClick)},destroyed(){this.$events.off("click",this.onOutsideClick)},methods:{clear(){this.$emit("input",""),this.expanded=!1},detect(t){if(0===(t=t??"").length)return{type:"url",link:""};for(const e in this.availableTypes)if(!0===this.availableTypes[e].detect(t))return{type:e,link:this.availableTypes[e].link(t)}},focus(){var t;null==(t=this.$refs.input)||t.focus()},getFileUUID:t=>t.replace("/@/file/","file://"),getPageUUID:t=>t.replace("/@/page/","page://"),isFileUUID:t=>!0===t.startsWith("file://")||!0===t.startsWith("/@/file/"),isPageUUID:t=>"site://"===t||!0===t.startsWith("page://")||!0===t.startsWith("/@/page/"),onInput(t){const e=(null==t?void 0:t.trim())??"";if(!e.length)return this.$emit("input","");this.$emit("input",this.currentType.value(e))},onInvalid(t){this.isInvalid=!!t},onOutsideClick(t){!1===this.$el.contains(t.target)&&(this.expanded=!1)},async preview({type:t,link:e}){this.model="page"===t&&e?await this.previewForPage(e):"file"===t&&e?await this.previewForFile(e):e?{label:e}:null},async previewForFile(t){try{const e=await this.$api.files.get(null,t,{select:"filename, panelImage"});return{label:e.filename,image:e.panelImage}}catch(e){return null}},async previewForPage(t){if("site://"===t)return{label:this.$t("view.site")};try{return{label:(await this.$api.pages.get(t,{select:"title"})).title}}catch(e){return null}},selectModel(t){t.uuid?this.onInput(t.uuid):(this.switchType("url"),this.onInput(t.url))},async switchType(t){t!==this.linkType&&(this.isInvalid=!1,this.linkType=t,this.linkValue="","page"===this.linkType||"file"===this.linkType?this.expanded=!0:this.expanded=!1,this.$emit("input",""),await this.$nextTick(),this.focus())},toggle(){this.expanded=!this.expanded}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-link-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._b({attrs:{invalid:t.isInvalid,icon:!1,theme:"field"}},"k-input",t.$props,!1),[e("div",{staticClass:"k-link-input-header"},[e("k-button",{staticClass:"k-link-input-toggle",attrs:{disabled:t.disabled,dropdown:!0,icon:t.currentType.icon,variant:"filled"},on:{click:function(e){return t.$refs.types.toggle()}}},[t._v(" "+t._s(t.currentType.label)+" ")]),e("k-dropdown-content",{ref:"types",attrs:{options:t.activeTypesOptions}}),"page"===t.linkType||"file"===t.linkType?e("div",{staticClass:"k-link-input-model",on:{click:t.toggle}},[t.model?e("k-tag",{staticClass:"k-link-input-model-preview",attrs:{image:t.model.image?{...t.model.image,cover:!0,back:"gray-200"}:null,removable:!t.disabled},on:{remove:t.clear}},[t._v(" "+t._s(t.model.label)+" ")]):e("k-button",{staticClass:"k-link-input-model-placeholder"},[t._v(" "+t._s(t.currentType.placeholder)+" ")]),e("k-button",{staticClass:"k-link-input-model-toggle",attrs:{icon:"bars"}})],1):e("k-"+t.currentType.input+"-input",{ref:"input",tag:"component",attrs:{id:t._uid,pattern:t.currentType.pattern??null,placeholder:t.currentType.placeholder,value:t.linkValue},on:{invalid:t.onInvalid,input:t.onInput}})],1),"page"===t.linkType?e("div",{directives:[{name:"show",rawName:"v-show",value:t.expanded,expression:"expanded"}],staticClass:"k-link-input-body",attrs:{"data-type":"page"}},[e("div",{staticClass:"k-page-browser"},[e("k-page-tree",{attrs:{current:t.getPageUUID(t.value),root:!1},on:{select:function(e){return t.selectModel(e)}}})],1)]):"file"===t.linkType?e("div",{directives:[{name:"show",rawName:"v-show",value:t.expanded,expression:"expanded"}],staticClass:"k-link-input-body",attrs:{"data-type":"file"}},[e("k-file-browser",{attrs:{selected:t.getFileUUID(t.value)},on:{select:function(e){return t.selectModel(e)}}})],1):t._e()])],1)}),[],!1,null,null,null,null).exports;const sn=t=>({$from:e})=>((t,e)=>{for(let i=t.depth;i>0;i--){const n=t.node(i);if(e(n))return{pos:i>0?t.before(i):0,start:t.start(i),depth:i,node:n}}})(e,t),on=t=>e=>{if((t=>t instanceof o)(e)){const{node:i,$from:n}=e;if(((t,e)=>Array.isArray(t)&&t.indexOf(e.type)>-1||e.type===t)(t,i))return{node:i,pos:n.pos,depth:n.depth}}},ln=(t,e,i={})=>{const n=on(e)(t.selection)||sn((t=>t.type===e))(t.selection);return 0!==yt(i)&&n?n.node.hasMarkup(e,{...n.node.attrs,...i}):!!n};function rn(t=null,e=null){if(!t||!e)return!1;const i=t.parent.childAfter(t.parentOffset);if(!i.node)return!1;const n=i.node.marks.find((t=>t.type===e));if(!n)return!1;let s=t.index(),o=t.start()+i.offset,l=s+1,r=o+i.node.nodeSize;for(;s>0&&n.isInSet(t.parent.child(s-1).marks);)s-=1,o-=t.parent.child(s).nodeSize;for(;l{s=[...s,...t.marks]}));const o=s.find((t=>t.type.name===e.name));return o?o.attrs:{}},getNodeAttrs:function(t,e){const{from:i,to:n}=t.selection;let s=[];t.doc.nodesBetween(i,n,(t=>{s=[...s,t]}));const o=s.reverse().find((t=>t.type.name===e.name));return o?o.attrs:{}},markInputRule:function(t,i,n){return new e(t,((t,e,s,o)=>{const l=n instanceof Function?n(e):n,{tr:r}=t,a=e.length-1;let u=o,c=s;if(e[a]){const n=s+e[0].indexOf(e[a-1]),l=n+e[a-1].length-1,d=n+e[a-1].lastIndexOf(e[a]),p=d+e[a].length,h=function(t,e,i){let n=[];return i.doc.nodesBetween(t,e,((t,e)=>{n=[...n,...t.marks.map((i=>({start:e,end:e+t.nodeSize,mark:i})))]})),n}(s,o,t).filter((t=>{const{excluded:e}=t.mark.type;return e.find((t=>t.name===i.name))})).filter((t=>t.end>n));if(h.length)return!1;pn&&r.delete(n,d),c=n,u=c+e[a].length}return r.addMark(c,u,i.create(l)),r.removeStoredMark(i),r}))},markIsActive:function(t,e){const{from:i,$from:n,to:s,empty:o}=t.selection;return o?!!e.isInSet(t.storedMarks||n.marks()):!!t.doc.rangeHasMark(i,s,e)},markPasteRule:function(t,e,o){const l=(i,n)=>{const r=[];return i.forEach((i=>{var s;if(i.isText){const{text:l,marks:a}=i;let u,c=0;const d=!!a.filter((t=>"link"===t.type.name))[0];for(;!d&&null!==(u=t.exec(l));)if((null==(s=null==n?void 0:n.type)?void 0:s.allowsMarkType(e))&&u[1]){const t=u.index,n=t+u[0].length,s=t+u[0].indexOf(u[1]),l=s+u[1].length,a=o instanceof Function?o(u):o;t>0&&r.push(i.cut(c,t)),r.push(i.cut(s,l).mark(e.create(a).addToSet(i.marks))),c=n}cnew n(l(t.content),t.openStart,t.openEnd)}})},minMax:function(t=0,e=0,i=0){return Math.min(Math.max(parseInt(t,10),e),i)},nodeIsActive:ln,nodeInputRule:function(t,i,n){return new e(t,((t,e,s,o)=>{const l=n instanceof Function?n(e):n,{tr:r}=t;return e[0]&&r.replaceWith(s-1,o,i.create(l)),r}))},pasteRule:function(t,e,o){const l=i=>{const n=[];return i.forEach((i=>{if(i.isText){const{text:s}=i;let l,r=0;do{if(l=t.exec(s),l){const t=l.index,s=t+l[0].length,a=o instanceof Function?o(l[0]):o;t>0&&n.push(i.cut(r,t)),n.push(i.cut(t,s).mark(e.create(a).addToSet(i.marks))),r=s}}while(l);rnew n(l(t.content),t.openStart,t.openEnd)}})},removeMark:function(t){return(e,i)=>{const{tr:n,selection:s}=e;let{from:o,to:l}=s;const{$from:r,empty:a}=s;if(a){const e=rn(r,t);o=e.from,l=e.to}return n.removeMark(o,l,t),i(n)}},toggleBlockType:function(t,e,i={}){return(n,s,o)=>ln(n,t,i)?l(e)(n,s,o):l(t,i)(n,s,o)},toggleList:function(t,e){return(i,n,s)=>{const{schema:o,selection:l}=i,{$from:u,$to:c}=l,d=u.blockRange(c);if(!d)return!1;const p=sn((t=>an(t,o)))(l);if(d.depth>=1&&p&&d.depth-p.depth<=1){if(p.node.type===t)return r(e)(i,n,s);if(an(p.node,o)&&t.validContent(p.node.content)){const{tr:e}=i;return e.setNodeMarkup(p.pos,t),n&&n(e),!1}}return a(t)(i,n,s)}},toggleWrap:function(t,e={}){return(i,n,s)=>ln(i,t,e)?u(i,n):c(t,e)(i,n,s)},updateMark:function(t,e){return(i,n)=>{const{tr:s,selection:o,doc:l}=i,{ranges:r,empty:a}=o;if(a){const{from:i,to:n}=rn(o.$from,t);l.rangeHasMark(i,n,t)&&s.removeMark(i,n,t),s.addMark(i,n,t.create(e))}else r.forEach((i=>{const{$to:n,$from:o}=i;l.rangeHasMark(o.pos,n.pos,t)&&s.removeMark(o.pos,n.pos,t),s.addMark(o.pos,n.pos,t.create(e))}));return n(s)}}};class cn{emit(t,...e){this._callbacks=this._callbacks??{};const i=this._callbacks[t]??[];for(const n of i)n.apply(this,e);return this}off(t,e){if(arguments.length){const i=this._callbacks?this._callbacks[t]:null;i&&(e?this._callbacks[t]=i.filter((t=>t!==e)):delete this._callbacks[t])}else this._callbacks={};return this}on(t,e){return this._callbacks=this._callbacks??{},this._callbacks[t]=this._callbacks[t]??[],this._callbacks[t].push(e),this}}class dn{constructor(t=[],e){for(const i of t)i.bindEditor(e),i.init();this.extensions=t}commands({schema:t,view:e}){return this.extensions.filter((t=>t.commands)).reduce(((i,n)=>{const{name:s,type:o}=n,l={},r=n.commands({schema:t,utils:un,...["node","mark"].includes(o)?{type:t[`${o}s`][s]}:{}}),a=(t,i)=>{l[t]=t=>{if("function"!=typeof i||!e.editable)return!1;e.focus();const n=i(t);return"function"==typeof n?n(e.state,e.dispatch,e):n}};if("object"==typeof r)for(const[t,e]of Object.entries(r))a(t,e);else a(s,r);return{...i,...l}}),{})}buttons(t="mark"){const e={};for(const i of this.extensions)if(i.type===t&&i.button)if(Array.isArray(i.button))for(const t of i.button)e[t.id??t.name]=t;else e[i.name]=i.button;return e}getAllowedExtensions(t){return t instanceof Array||!t?t instanceof Array?this.extensions.filter((e=>!t.includes(e.name))):this.extensions:[]}getFromExtensions(t,e,i=this.extensions){return i.filter((t=>["extension"].includes(t.type))).filter((e=>e[t])).map((i=>i[t]({...e,utils:un})))}getFromNodesAndMarks(t,e,i=this.extensions){return i.filter((t=>["node","mark"].includes(t.type))).filter((e=>e[t])).map((i=>i[t]({...e,type:e.schema[`${i.type}s`][i.name],utils:un})))}inputRules({schema:t,excludedExtensions:e}){const i=this.getAllowedExtensions(e);return[...this.getFromExtensions("inputRules",{schema:t},i),...this.getFromNodesAndMarks("inputRules",{schema:t},i)].reduce(((t,e)=>[...t,...e]),[])}keymaps({schema:t}){return[...this.getFromExtensions("keys",{schema:t}),...this.getFromNodesAndMarks("keys",{schema:t})].map((t=>v(t)))}get marks(){return this.extensions.filter((t=>"mark"===t.type)).reduce(((t,{name:e,schema:i})=>({...t,[e]:i})),{})}get nodes(){return this.extensions.filter((t=>"node"===t.type)).reduce(((t,{name:e,schema:i})=>({...t,[e]:i})),{})}get options(){const{view:t}=this;return this.extensions.reduce(((e,i)=>({...e,[i.name]:new Proxy(i.options,{set(e,i,n){const s=e[i]!==n;return Object.assign(e,{[i]:n}),s&&t.updateState(t.state),!0}})})),{})}pasteRules({schema:t,excludedExtensions:e}){const i=this.getAllowedExtensions(e);return[...this.getFromExtensions("pasteRules",{schema:t},i),...this.getFromNodesAndMarks("pasteRules",{schema:t},i)].reduce(((t,e)=>[...t,...e]),[])}plugins({schema:t}){return[...this.getFromExtensions("plugins",{schema:t}),...this.getFromNodesAndMarks("plugins",{schema:t})].reduce(((t,e)=>[...t,...e]),[]).map((t=>t instanceof i?t:new i(t)))}}class pn{constructor(t={}){this.options={...this.defaults,...t}}init(){return null}bindEditor(t=null){this.editor=t}get name(){return null}get type(){return"extension"}get defaults(){return{}}plugins(){return[]}inputRules(){return[]}pasteRules(){return[]}keys(){return{}}}class hn extends pn{constructor(t={}){super(t)}get type(){return"node"}get schema(){return{}}commands(){return{}}}class mn extends hn{get defaults(){return{inline:!1}}get name(){return"doc"}get schema(){return{content:this.options.inline?"inline*":"block+"}}}class fn extends hn{get button(){return{id:this.name,icon:"paragraph",label:window.panel.$t("toolbar.button.paragraph"),name:this.name,separator:!0}}commands({utils:t,schema:e,type:i}){return{paragraph:()=>this.editor.activeNodes.includes("bulletList")?t.toggleList(e.nodes.bulletList,e.nodes.listItem):this.editor.activeNodes.includes("orderedList")?t.toggleList(e.nodes.orderedList,e.nodes.listItem):this.editor.activeNodes.includes("quote")?t.toggleWrap(e.nodes.quote):t.setBlockType(i)}}get schema(){return{content:"inline*",group:"block",draggable:!1,parseDOM:[{tag:"p"}],toDOM:()=>["p",0]}}get name(){return"paragraph"}}let gn=class extends hn{get name(){return"text"}get schema(){return{group:"inline"}}};class kn extends cn{constructor(t={}){super(),this.defaults={autofocus:!1,content:"",disableInputRules:!1,disablePasteRules:!1,editable:!0,element:null,extensions:[],emptyDocument:{type:"doc",content:[]},events:{},inline:!1,parseOptions:{},topNode:"doc",useBuiltInExtensions:!0},this.init(t)}blur(){this.view.dom.blur()}get builtInExtensions(){return!0!==this.options.useBuiltInExtensions?[]:[new mn({inline:this.options.inline}),new gn,new fn]}buttons(t){return this.extensions.buttons(t)}clearContent(t=!1){this.setContent(this.options.emptyDocument,t)}command(t,...e){var i,n;null==(n=(i=this.commands)[t])||n.call(i,...e)}createCommands(){return this.extensions.commands({schema:this.schema,view:this.view})}createDocument(t,e=this.options.parseOptions){if(null===t)return this.schema.nodeFromJSON(this.options.emptyDocument);if("object"==typeof t)try{return this.schema.nodeFromJSON(t)}catch(i){return window.console.warn("Invalid content.","Passed value:",t,"Error:",i),this.schema.nodeFromJSON(this.options.emptyDocument)}if("string"==typeof t){const i=`

      ${t}
      `,n=(new window.DOMParser).parseFromString(i,"text/html").body.firstElementChild;return y.fromSchema(this.schema).parse(n,e)}return!1}createEvents(){const t=this.options.events??{};for(const[e,i]of Object.entries(t))this.on(e,i);return t}createExtensions(){return new dn([...this.builtInExtensions,...this.options.extensions],this)}createFocusEvents(){const t=(t,e,i=!0)=>{this.focused=i,this.emit(i?"focus":"blur",{event:e,state:t.state,view:t});const n=this.state.tr.setMeta("focused",i);this.view.dispatch(n)};return new i({props:{attributes:{tabindex:0},handleDOMEvents:{focus:(e,i)=>t(e,i,!0),blur:(e,i)=>t(e,i,!1)}}})}createInputRules(){return this.extensions.inputRules({schema:this.schema,excludedExtensions:this.options.disableInputRules})}createKeymaps(){return this.extensions.keymaps({schema:this.schema})}createMarks(){return this.extensions.marks}createNodes(){return this.extensions.nodes}createPasteRules(){return this.extensions.pasteRules({schema:this.schema,excludedExtensions:this.options.disablePasteRules})}createPlugins(){return this.extensions.plugins({schema:this.schema})}createSchema(){return new $({topNode:this.options.topNode,nodes:this.nodes,marks:this.marks})}createState(){return w.create({schema:this.schema,doc:this.createDocument(this.options.content),plugins:[...this.plugins,x({rules:this.inputRules}),...this.pasteRules,...this.keymaps,v({Backspace:O}),v(A),this.createFocusEvents()]})}createView(){return new _(this.element,{dispatchTransaction:this.dispatchTransaction.bind(this),attributes:{class:"k-text"},editable:()=>this.options.editable,handlePaste:(t,e)=>{if("function"==typeof this.events.paste){const t=e.clipboardData.getData("text/html"),i=e.clipboardData.getData("text/plain");if(!0===this.events.paste(e,t,i))return!0}},handleDrop:(...t)=>{this.emit("drop",...t)},state:this.createState()})}destroy(){this.view&&this.view.destroy()}dispatchTransaction(t){const e=this.state,i=this.state.apply(t);this.view.updateState(i),this.setActiveNodesAndMarks();const n={editor:this,getHTML:this.getHTML.bind(this),getJSON:this.getJSON.bind(this),state:this.state,transaction:t};this.emit("transaction",n),!t.docChanged&&t.getMeta("preventUpdate")||this.emit("update",n);const{from:s,to:o}=this.state.selection,l=!e||!e.selection.eq(i.selection);this.emit(i.selection.empty?"deselect":"select",{...n,from:s,hasChanged:l,to:o})}focus(t=null){if(this.view.focused&&null===t||!1===t)return;const{from:e,to:i}=this.selectionAtPosition(t);this.setSelection(e,i),setTimeout((()=>this.view.focus()),10)}getHTML(t=this.state.doc.content){const e=document.createElement("div"),i=S.fromSchema(this.schema).serializeFragment(t);return e.appendChild(i),this.options.inline&&e.querySelector("p")?e.querySelector("p").innerHTML:e.innerHTML}getHTMLStartToSelection(){const t=this.state.doc.slice(0,this.selection.head).content;return this.getHTML(t)}getHTMLSelectionToEnd(){const t=this.state.doc.slice(this.selection.head).content;return this.getHTML(t)}getHTMLStartToSelectionToEnd(){return[this.getHTMLStartToSelection(),this.getHTMLSelectionToEnd()]}getJSON(){return this.state.doc.toJSON()}getMarkAttrs(t=null){return this.activeMarkAttrs[t]}getSchemaJSON(){return JSON.parse(JSON.stringify({nodes:this.nodes,marks:this.marks}))}init(t={}){this.options={...this.defaults,...t},this.element=this.options.element,this.focused=!1,this.events=this.createEvents(),this.extensions=this.createExtensions(),this.nodes=this.createNodes(),this.marks=this.createMarks(),this.schema=this.createSchema(),this.keymaps=this.createKeymaps(),this.inputRules=this.createInputRules(),this.pasteRules=this.createPasteRules(),this.plugins=this.createPlugins(),this.view=this.createView(),this.commands=this.createCommands(),this.setActiveNodesAndMarks(),!1!==this.options.autofocus&&this.focus(this.options.autofocus),this.emit("init",{view:this.view,state:this.state}),this.extensions.view=this.view,this.setContent(this.options.content,!0)}insertText(t,e=!1){const{tr:i}=this.state,n=i.insertText(t);if(this.view.dispatch(n),e){const e=i.selection.from,n=e-t.length;this.setSelection(n,e)}}isEditable(){return this.options.editable}isEmpty(){if(this.state)return 0===this.state.doc.textContent.length}get isActive(){return Object.entries({...this.activeMarks,...this.activeNodes}).reduce(((t,[e,i])=>({...t,[e]:(t={})=>i(t)})),{})}removeMark(t){if(this.schema.marks[t])return un.removeMark(this.schema.marks[t])(this.state,this.view.dispatch)}get selection(){return this.state.selection}get selectionAtEnd(){return C.atEnd(this.state.doc)}get selectionIsAtEnd(){return this.selection.head===this.selectionAtEnd.head}get selectionAtStart(){return C.atStart(this.state.doc)}get selectionIsAtStart(){return this.selection.head===this.selectionAtStart.head}selectionAtPosition(t=null){return null===t?this.selection:"start"===t||!0===t?this.selectionAtStart:"end"===t?this.selectionAtEnd:{from:t,to:t}}setActiveNodesAndMarks(){this.activeMarks=Object.values(this.schema.marks).filter((t=>un.markIsActive(this.state,t))).map((t=>t.name)),this.activeMarkAttrs=Object.entries(this.schema.marks).reduce(((t,[e,i])=>({...t,[e]:un.getMarkAttrs(this.state,i)})),{}),this.activeNodes=Object.values(this.schema.nodes).filter((t=>un.nodeIsActive(this.state,t))).map((t=>t.name)),this.activeNodeAttrs=Object.entries(this.schema.nodes).reduce(((t,[e,i])=>({...t,[e]:un.getNodeAttrs(this.state,i)})),{})}setContent(t={},e=!1,i){const{doc:n,tr:s}=this.state,o=this.createDocument(t,i),l=s.replaceWith(0,n.content.size,o).setMeta("preventUpdate",!e);this.view.dispatch(l)}setSelection(t=0,e=0){const{doc:i,tr:n}=this.state,s=un.minMax(t,0,i.content.size),o=un.minMax(e,0,i.content.size),l=C.create(i,s,o),r=n.setSelection(l);this.view.dispatch(r)}get state(){var t;return null==(t=this.view)?void 0:t.state}toggleMark(t){if(this.schema.marks[t])return un.toggleMark(this.schema.marks[t])(this.state,this.view.dispatch)}updateMark(t,e){if(this.schema.marks[t])return un.updateMark(this.schema.marks[t],e)(this.state,this.view.dispatch)}}class bn extends pn{command(){return()=>{}}remove(){this.editor.removeMark(this.name)}get schema(){return{}}get type(){return"mark"}toggle(){return this.editor.toggleMark(this.name)}update(t){this.editor.updateMark(this.name,t)}}class vn extends bn{get button(){return{icon:"bold",label:window.panel.$t("toolbar.button.bold")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/(?:\*\*|__)([^*_]+)(?:\*\*|__)$/,t)]}keys(){return{"Mod-b":()=>this.toggle()}}get name(){return"bold"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/(?:\*\*|__)([^*_]+)(?:\*\*|__)/g,t)]}get schema(){return{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>"normal"!==t.style.fontWeight&&null},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM:()=>["strong",0]}}}class yn extends bn{get button(){return{icon:"clear",label:window.panel.$t("toolbar.button.clear")}}commands(){return()=>this.clear()}clear(){const{state:t}=this.editor,{from:e,to:i}=t.tr.selection;for(const n of this.editor.activeMarks){const s=t.schema.marks[n],o=this.editor.state.tr.removeMark(e,i,s);this.editor.view.dispatch(o)}}get name(){return"clear"}}let $n=class extends bn{get button(){return{icon:"code",label:window.panel.$t("toolbar.button.code")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/(?:`)([^`]+)(?:`)$/,t)]}keys(){return{"Mod-`":()=>this.toggle()}}get name(){return"code"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/(?:`)([^`]+)(?:`)/g,t)]}get schema(){return{excludes:"_",parseDOM:[{tag:"code"}],toDOM:()=>["code",0]}}};class wn extends bn{get button(){return{icon:"email",label:window.panel.$t("toolbar.button.email")}}commands(){return{email:t=>{if(t.altKey||t.metaKey)return this.remove();this.editor.emit("email",this.editor)},insertEmail:(t={})=>{const{selection:e}=this.editor.state;if(e.empty&&this.editor.insertText(t.href,!0),t.href)return this.update(t)},removeEmail:()=>this.remove(),toggleEmail:(t={})=>{var e;(null==(e=t.href)?void 0:e.length)>0?this.editor.command("insertEmail",t):this.editor.command("removeEmail")}}}get defaults(){return{target:null}}get name(){return"email"}pasteRules({type:t,utils:e}){return[e.pasteRule(/^[\w-.]+@([\w-]+\.)+[\w-]{2,4}$/gi,t,(t=>({href:t})))]}plugins(){return[{props:{handleClick:(t,e,i)=>{const n=this.editor.getMarkAttrs("email");n.href&&!0===i.altKey&&i.target instanceof HTMLAnchorElement&&(i.stopPropagation(),window.open(n.href))}}}]}get schema(){return{attrs:{href:{default:null},title:{default:null}},inclusive:!1,parseDOM:[{tag:"a[href^='mailto:']",getAttrs:t=>({href:t.getAttribute("href").replace("mailto:",""),title:t.getAttribute("title")})}],toDOM:t=>["a",{...t.attrs,href:"mailto:"+t.attrs.href},0]}}}class xn extends bn{get button(){return{icon:"italic",label:window.panel.$t("toolbar.button.italic")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/(?:^|\s)((?:\*)((?:[^*]+))(?:\*))$/,t),e.markInputRule(/(?:^|\s)((?:_)((?:[^_]+))(?:_))$/,t)]}keys(){return{"Mod-i":()=>this.toggle()}}get name(){return"italic"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/_([^_]+)_/g,t),e.markPasteRule(/\*([^*]+)\*/g,t)]}get schema(){return{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"}],toDOM:()=>["em",0]}}}let _n=class extends bn{get button(){return{icon:"url",label:window.panel.$t("toolbar.button.link")}}commands(){return{link:t=>{if(t.altKey||t.metaKey)return this.remove();this.editor.emit("link",this.editor)},insertLink:(t={})=>{const{selection:e}=this.editor.state;if(e.empty&&!1===this.editor.activeMarks.includes("link")&&this.editor.insertText(t.href,!0),t.href)return this.update(t)},removeLink:()=>this.remove(),toggleLink:(t={})=>{var e;(null==(e=t.href)?void 0:e.length)>0?this.editor.command("insertLink",t):this.editor.command("removeLink")}}}get defaults(){return{target:null}}get name(){return"link"}pasteRules({type:t,utils:e}){return[e.pasteRule(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z]{2,}\b([-a-zA-Z0-9@:%_+.~#?&//=,]*)/gi,t,(t=>({href:t})))]}plugins(){return[{props:{handleClick:(t,e,i)=>{const n=this.editor.getMarkAttrs("link");n.href&&!0===i.altKey&&i.target instanceof HTMLAnchorElement&&(i.stopPropagation(),window.open(n.href,n.target))}}}]}get schema(){return{attrs:{href:{default:null},target:{default:null},title:{default:null}},inclusive:!1,parseDOM:[{tag:"a[href]:not([href^='mailto:'])",getAttrs:t=>({href:t.getAttribute("href"),target:t.getAttribute("target"),title:t.getAttribute("title")})}],toDOM:t=>["a",{...t.attrs},0]}}};class Sn extends bn{get button(){return{icon:"strikethrough",label:window.panel.$t("toolbar.button.strike")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/~([^~]+)~$/,t)]}keys(){return{"Mod-d":()=>this.toggle()}}get name(){return"strike"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/~([^~]+)~/g,t)]}get schema(){return{parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration",getAttrs:t=>"line-through"===t}],toDOM:()=>["s",0]}}}let Cn=class extends bn{get button(){return{icon:"superscript",label:window.panel.$t("toolbar.button.sup")}}commands(){return()=>this.toggle()}get name(){return"sup"}get schema(){return{parseDOM:[{tag:"sup"}],toDOM:()=>["sup",0]}}};class On extends bn{get button(){return{icon:"subscript",label:window.panel.$t("toolbar.button.sub")}}commands(){return()=>this.toggle()}get name(){return"sub"}get schema(){return{parseDOM:[{tag:"sub"}],toDOM:()=>["sub",0]}}}class An extends bn{get button(){return{icon:"underline",label:window.panel.$t("toolbar.button.underline")}}commands(){return()=>this.toggle()}keys(){return{"Mod-u":()=>this.toggle()}}get name(){return"underline"}get schema(){return{parseDOM:[{tag:"u"},{style:"text-decoration",getAttrs:t=>"underline"===t}],toDOM:()=>["u",0]}}}class Mn extends hn{get button(){return{id:this.name,icon:"list-bullet",label:window.panel.$t("toolbar.button.ul"),name:this.name,when:["listItem","bulletList","orderedList","paragraph"]}}commands({type:t,schema:e,utils:i}){return()=>i.toggleList(t,e.nodes.listItem)}inputRules({type:t,utils:e}){return[e.wrappingInputRule(/^\s*([-+*])\s$/,t)]}keys({type:t,schema:e,utils:i}){return{"Shift-Ctrl-8":i.toggleList(t,e.nodes.listItem)}}get name(){return"bulletList"}get schema(){return{content:"listItem+",group:"block",parseDOM:[{tag:"ul"}],toDOM:()=>["ul",0]}}}class jn extends hn{commands({utils:t,type:e}){return()=>this.createHardBreak(t,e)}createHardBreak(t,e){return t.chainCommands(t.exitCode,((t,i)=>(i(t.tr.replaceSelectionWith(e.create()).scrollIntoView()),!0)))}get defaults(){return{enter:!1,text:!1}}keys({utils:t,type:e}){const i=this.createHardBreak(t,e);let n={"Mod-Enter":i,"Shift-Enter":i};return this.options.enter&&(n.Enter=i),n}get name(){return"hardBreak"}get schema(){return{inline:!0,group:"inline",selectable:!1,parseDOM:[{tag:"br"}],toDOM:()=>["br"]}}}class In extends hn{get button(){const t=this.options.levels.map((t=>({id:`h${t}`,command:`h${t}`,icon:`h${t}`,label:window.panel.$t("toolbar.button.heading."+t),attrs:{level:t},name:this.name,when:["heading","paragraph"]})));return t[t.length-1].separator=!0,t}commands({type:t,schema:e,utils:i}){let n={toggleHeading:n=>i.toggleBlockType(t,e.nodes.paragraph,n)};for(const s of this.options.levels)n[`h${s}`]=()=>i.toggleBlockType(t,e.nodes.paragraph,{level:s});return n}get defaults(){return{levels:[1,2,3,4,5,6]}}inputRules({type:t,utils:e}){return this.options.levels.map((i=>e.textblockTypeInputRule(new RegExp(`^(#{1,${i}})\\s$`),t,(()=>({level:i})))))}keys({type:t,utils:e}){return this.options.levels.reduce(((i,n)=>({...i,[`Shift-Ctrl-${n}`]:e.setBlockType(t,{level:n})})),{})}get name(){return"heading"}get schema(){return{attrs:{level:{default:1}},content:"inline*",group:"block",defining:!0,draggable:!1,parseDOM:this.options.levels.map((t=>({tag:`h${t}`,attrs:{level:t}}))),toDOM:t=>[`h${t.attrs.level}`,0]}}}class Tn extends hn{commands({type:t}){return()=>(e,i)=>i(e.tr.replaceSelectionWith(t.create()))}inputRules({type:t,utils:e}){return[e.nodeInputRule(/^(?:---|___\s|\*\*\*\s)$/,t)]}get name(){return"horizontalRule"}get schema(){return{group:"block",parseDOM:[{tag:"hr"}],toDOM:()=>["hr"]}}}class En extends hn{keys({type:t,utils:e}){return{Enter:e.splitListItem(t),"Shift-Tab":e.liftListItem(t),Tab:e.sinkListItem(t)}}get name(){return"listItem"}get schema(){return{content:"paragraph block*",defining:!0,draggable:!1,parseDOM:[{tag:"li"}],toDOM:()=>["li",0]}}}class Ln extends hn{get button(){return{id:this.name,icon:"list-numbers",label:window.panel.$t("toolbar.button.ol"),name:this.name,when:["listItem","bulletList","orderedList","paragraph"],separator:!0}}commands({type:t,schema:e,utils:i}){return()=>i.toggleList(t,e.nodes.listItem)}inputRules({type:t,utils:e}){return[e.wrappingInputRule(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order===+t[1]))]}keys({type:t,schema:e,utils:i}){return{"Shift-Ctrl-9":i.toggleList(t,e.nodes.listItem)}}get name(){return"orderedList"}get schema(){return{attrs:{order:{default:1}},content:"listItem+",group:"block",parseDOM:[{tag:"ol",getAttrs:t=>({order:t.hasAttribute("start")?+t.getAttribute("start"):1})}],toDOM:t=>1===t.attrs.order?["ol",0]:["ol",{start:t.attrs.order},0]}}}class Dn extends hn{get button(){return{id:this.name,icon:"quote",label:window.panel.$t("field.blocks.quote.name"),name:this.name}}commands({type:t,utils:e}){return()=>e.toggleWrap(t)}inputRules({type:t,utils:e}){return[e.wrappingInputRule(/^\s*>\s$/,t)]}keys({utils:t}){return{"Shift-Tab":(e,i)=>t.lift(e,i)}}get name(){return"quote"}get schema(){return{content:"block+",group:"block",defining:!0,draggable:!1,parseDOM:[{tag:"blockquote"}],toDOM:()=>["blockquote",0]}}}let Bn=class extends pn{commands(){return{undo:()=>M,redo:()=>j,undoDepth:()=>I,redoDepth:()=>T}}get defaults(){return{depth:"",newGroupDelay:""}}keys(){return{"Mod-z":M,"Mod-y":j,"Shift-Mod-z":j,"Mod-я":M,"Shift-Mod-я":j}}get name(){return"history"}plugins(){return[E({depth:this.options.depth,newGroupDelay:this.options.newGroupDelay})]}};class qn extends pn{commands(){return{insertHtml:t=>(e,i)=>{let n=document.createElement("div");n.innerHTML=t.trim();const s=y.fromSchema(e.schema).parse(n);i(e.tr.replaceSelectionWith(s).scrollIntoView())}}}}class Pn extends pn{keys(){const t={};for(const e in this.options)t[e]=()=>(this.options[e](),!0);return t}}let Nn=class extends pn{constructor(t){super(),this.writer=t}get component(){return this.writer.$refs.toolbar}init(){this.editor.on("deselect",(({event:t})=>{var e;return null==(e=this.component)?void 0:e.close(t)})),this.editor.on("select",(({hasChanged:t})=>{var e;!1!==t&&(null==(e=this.component)||e.open())}))}get type(){return"toolbar"}};const zn={mixins:[H,K,ot,rt],props:{breaks:Boolean,code:Boolean,emptyDocument:{type:Object,default:()=>({type:"doc",content:[]})},extensions:Array,headings:{default:()=>[1,2,3,4,5,6],type:[Array,Boolean]},inline:Boolean,keys:Object,marks:{type:[Array,Boolean],default:!0},nodes:{type:[Array,Boolean],default:()=>["heading","bulletList","orderedList"]},paste:{type:Function,default:()=>()=>!1},toolbar:{type:Object,default:()=>({inline:!0})},value:{type:String,default:""}}};const Fn=at({mixins:[zn],data(){return{editor:null,json:{},html:this.value,isEmpty:!0}},computed:{isCursorAtEnd(){return this.editor.selectionIsAtEnd},isCursorAtStart(){return this.editor.selectionIsAtStart},toolbarOptions(){return{marks:Array.isArray(this.marks)?this.marks:void 0,...this.toolbar,editor:this.editor}}},watch:{value(t,e){t!==e&&t!==this.html&&(this.html=t,this.editor.setContent(this.html))}},mounted(){this.editor=new kn({autofocus:this.autofocus,content:this.value,editable:!this.disabled,element:this.$el,emptyDocument:this.emptyDocument,parseOptions:{preserveWhitespace:!0},events:{link:t=>{this.$panel.dialog.open({component:"k-link-dialog",props:{value:t.getMarkAttrs("link")},on:{cancel:()=>t.focus(),submit:e=>{this.$panel.dialog.close(),t.command("toggleLink",e)}}})},email:t=>{this.$panel.dialog.open({component:"k-email-dialog",props:{value:this.editor.getMarkAttrs("email")},on:{cancel:()=>t.focus(),submit:e=>{this.$panel.dialog.close(),t.command("toggleEmail",e)}}})},paste:this.paste,update:t=>{if(!this.editor)return;const e=JSON.stringify(this.editor.getJSON());e!==JSON.stringify(this.json)&&(this.json=e,this.isEmpty=t.editor.isEmpty(),this.html=t.editor.getHTML(),this.isEmpty&&(0===t.editor.activeNodes.length||t.editor.activeNodes.includes("paragraph"))&&(this.html=""),this.$emit("input",this.html))}},extensions:[...this.createMarks(),...this.createNodes(),new Pn(this.keys),new Bn,new qn,new Nn(this),...this.extensions||[]],inline:this.inline}),this.isEmpty=this.editor.isEmpty(),this.json=this.editor.getJSON(),this.$panel.events.on("click",this.onBlur),this.$panel.events.on("focus",this.onBlur)},beforeDestroy(){this.editor.destroy(),this.$panel.events.off("click",this.onBlur),this.$panel.events.off("focus",this.onBlur)},methods:{command(t,...e){this.editor.command(t,...e)},createMarks(){return this.filterExtensions({clear:new yn,code:new $n,underline:new An,strike:new Sn,link:new _n,email:new wn,bold:new vn,italic:new xn,sup:new Cn,sub:new On,...this.createMarksFromPanelPlugins()},this.marks)},createMarksFromPanelPlugins(){const t=window.panel.plugins.writerMarks??{},e={};for(const i in t)e[i]=Object.create(bn.prototype,Object.getOwnPropertyDescriptors({name:i,...t[i]}));return e},createNodes(){const t=new jn({text:!0,enter:this.inline});return!0===this.inline?[t]:this.filterExtensions({bulletList:new Mn,orderedList:new Ln,heading:new In({levels:this.headings}),horizontalRule:new Tn,listItem:new En,quote:new Dn,...this.createNodesFromPanelPlugins()},this.nodes,((e,i)=>((e.includes("bulletList")||e.includes("orderedList"))&&i.push(new En),i.push(t),i)))},createNodesFromPanelPlugins(){const t=window.panel.plugins.writerNodes??{},e={};for(const i in t)e[i]=Object.create(hn.prototype,Object.getOwnPropertyDescriptors({name:i,...t[i]}));return e},getHTML(){return this.editor.getHTML()},filterExtensions(t,e,i){!1===e?e=[]:!0!==e&&!1!==Array.isArray(e)||(e=Object.keys(t));let n=[];for(const s in t)e.includes(s)&&n.push(t[s]);return"function"==typeof i&&(n=i(e,n)),n},focus(){this.editor.focus()},getSplitContent(){return this.editor.getHTMLStartToSelectionToEnd()},onBlur(t){var e;!1===this.$el.contains(t.target)&&(null==(e=this.$refs.toolbar)||e.close())},onCommand(t,...e){this.editor.command(t,...e)}}},(function(){var t=this,e=t._self._c;return e("div",{directives:[{name:"direction",rawName:"v-direction"}],ref:"editor",staticClass:"k-writer",attrs:{"data-disabled":t.disabled,"data-empty":t.isEmpty,"data-placeholder":t.placeholder,"data-toolbar-inline":Boolean(t.toolbar.inline),spellcheck:t.spellcheck}},[t.editor&&!t.disabled?e("k-writer-toolbar",t._b({ref:"toolbar",on:{command:t.onCommand}},"k-writer-toolbar",t.toolbarOptions,!1)):t._e()],1)}),[],!1,null,null,null,null).exports,Rn={mixins:[ji,zn,tt,et],computed:{counterValue(){const t=this.$helper.string.stripHTML(this.value);return this.$helper.string.unescapeHTML(t)}}};const Yn=at({mixins:[Ii,Rn],watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){this.$refs.input.focus()},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)}},validations(){return{counterValue:{required:!this.required||t.required,minLength:!this.minlength||t.minLength(this.minlength),maxLength:!this.maxlength||t.maxLength(this.maxlength)}}}},(function(){var t=this;return(0,t._self._c)("k-writer",t._b({ref:"input",staticClass:"k-writer-input",on:{input:function(e){return t.$emit("input",e)}}},"k-writer",t.$props,!1))}),[],!1,null,null,null,null).exports;class Un extends mn{get schema(){return{content:this.options.nodes.join("|")}}}const Hn={mixins:[Rn],inheritAttrs:!1,props:{nodes:{type:Array,default:()=>["bulletList","orderedList"]}}};const Vn=at({mixins:[Ii,Hn],data(){return{list:this.value,html:this.value}},computed:{listExtensions(){return[new Un({inline:!0,nodes:this.nodes})]}},watch:{value(t){t!==this.html&&(this.list=t,this.html=t)}},methods:{focus(){this.$refs.input.focus()},onInput(t){let e=(new DOMParser).parseFromString(t,"text/html").querySelector("ul, ol");e&&0!==e.textContent.trim().length?(this.list=t,this.html=t.replace(/(

      |<\/p>)/gi,""),this.$emit("input",this.html)):this.$emit("input",this.list="")}}},(function(){var t=this;return(0,t._self._c)("k-writer",t._b({ref:"input",staticClass:"k-list-input",attrs:{extensions:t.listExtensions,value:t.list},on:{input:t.onInput}},"k-writer",t.$props,!1))}),[],!1,null,null,null,null).exports;const Kn=at({mixins:[Pe,Fe,Hn],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-list-field",attrs:{input:t._uid,counter:!1}},"k-field",t.$props,!1),[e("k-input",t._b({ref:"input",attrs:{id:t._uid,type:"list",theme:"field"},on:{input:function(e){return t.$emit("input",e)}}},"k-input",t.$props,!1))],1)}),[],!1,null,null,null,null).exports,Wn={mixins:[H,K,G,Me],inheritAttrs:!1,props:{draggable:{default:!0,type:Boolean},layout:String,max:Number,min:Number,sort:{default:!1,type:Boolean},value:{default:()=>[],type:Array}}};const Jn=at({mixins:[Wn],data:()=>({editing:null,tags:[]}),computed:{dragOptions(){return{delay:1,disabled:!this.isDraggable,draggable:".k-tag",handle:".k-tag-text"}},isDraggable(){return!0!==this.sort&&!1!==this.draggable&&0!==this.tags.length&&!0!==this.disabled},isFull(){return!!this.max&&this.tags.length>=this.max},replacable(){return this.options.filter((t=>{var e;return!1===this.value.includes(t.value)||t.value===(null==(e=this.editing)?void 0:e.tag.value)}))},selectable(){return this.options.filter((t=>!1===this.value.includes(t.value)))},selectorOptions(){return{accept:this.accept,disabled:this.disabled,ignore:this.value,search:this.search}},showAddSelector(){return!0!==this.disabled&&(!0!==this.isFull&&("all"===this.accept||0!==this.selectable.length))}},watch:{value:{handler(){!0===this.sort?this.tags=this.sortByOptions(this.value):this.tags=this.value.map(this.tag).filter((t=>t))},immediate:!0}},methods:{add(t){return t=this.tag(t),!0!==this.isFull&&(!1!==this.isAllowed(t)&&(this.tags.push(t),void this.save()))},edit(t,e,i){return this.editing={index:t,tag:e},this.$refs.editor.open(i.target.closest(".k-tag"))},focus(t="last"){this.$refs.navigation.move(t)},index(t){return this.tags.findIndex((e=>e.value===t.value))},isAllowed(t){return"object"==typeof t&&0!==t.value.length&&(!("options"===this.accept&&!this.option(t))&&!0!==this.isDuplicate(t))},isDuplicate(t){return!0===this.value.includes(t.value)},navigate(t){this.focus(t)},remove(t){this.tags.splice(t,1),0===this.tags.length?this.navigate("last"):this.navigate("prev"),this.save()},replace(t){const{index:e}=this.editing,i=this.tag(t);if(!1===this.isAllowed(i))return!1;this.$set(this.tags,e,i),this.save(),this.navigate(e),this.editing=null},open(){this.$refs.selector?(this.$refs.toggle.focus(),this.$refs.selector.open(this.$refs.toggle)):this.focus()},option(t){return this.options.find((e=>e.value===t.value))},select(){this.focus()},save(){this.$emit("input",this.tags.map((t=>t.value)))},sortByOptions(t){t=this.$helper.object.clone(t);const e=[];for(const i of this.options){const n=t.indexOf(i.value);-1!==n&&(e.push(i),t.splice(n,1))}for(const i of t)e.push(this.tag(i));return e},tag(t){"object"!=typeof t&&(t={value:t});const e=this.option(t);return"options"===this.accept?e:e||{text:this.$helper.string.escapeHTML(t.text??t.value),value:t.value}},toggle(t){if(t.metaKey||t.altKey||t.ctrlKey)return!1;String.fromCharCode(t.keyCode).match(/(\w)/g)&&this.$refs.selector.open()}}},(function(){var t=this,e=t._self._c;return e("k-navigate",{ref:"navigation",attrs:{axis:"list"===t.layout?"y":"x"}},[e("k-draggable",{staticClass:"k-tags",attrs:{list:t.tags,options:t.dragOptions,"data-layout":t.layout},on:{end:t.save},scopedSlots:t._u([{key:"footer",fn:function(){var i;return[t.showAddSelector?e("k-selector-dropdown",t._b({ref:"selector",attrs:{options:t.selectable},on:{create:function(e){return t.add(e)},select:function(e){return t.add(e)}}},"k-selector-dropdown",t.selectorOptions,!1),[e("k-button",{ref:"toggle",staticClass:"k-tags-toggle",attrs:{id:t.id,autofocus:t.autofocus,icon:"add",size:"xs"},nativeOn:{click:function(e){return t.$refs.selector.open()},keydown:[function(e){return t.toggle.apply(null,arguments)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:t.navigate(t.tags.length-1)}]}})],1):t._e(),e("k-selector-dropdown",t._b({ref:"editor",attrs:{options:t.replacable,value:null==(i=t.editing)?void 0:i.tag.text},on:{create:function(e){return t.replace(e)},select:function(e){return t.replace(e)}}},"k-selector-dropdown",t.selectorOptions,!1))]},proxy:!0}])},t._l(t.tags,(function(i,n){return e("k-tag",{key:n,attrs:{disabled:t.disabled,image:i.image,removable:!t.disabled,name:"tag"},on:{remove:function(e){return t.remove(n,i)}},nativeOn:{click:function(t){t.stopPropagation()},keypress:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.edit(n,i,e)},dblclick:function(e){return t.edit(n,i,e)}}},[e("span",{domProps:{innerHTML:t._s(i.text)}})])})),1)],1)}),[],!1,null,null,null,null).exports,Gn={mixins:[it,lt,Wn]};const Xn=at({mixins:[Ii,Gn],watch:{value:{handler(){this.$emit("invalid",this.$v.$invalid,this.$v)},immediate:!0}},methods:{focus(){this.$refs.tags.open()}},validations(){return{value:{required:!this.required||t.required,minLength:!this.min||t.minLength(this.min),maxLength:!this.max||t.maxLength(this.max)}}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-tags-input"},[e("k-tags",t._b({ref:"tags",on:{input:function(e){return t.$emit("input",e)}},nativeOn:{click:function(t){t.stopPropagation()}}},"k-tags",t.$props,!1))],1)}),[],!1,null,null,null,null).exports;const Zn=at({mixins:[Pe,Fe,Gn,Li],inheritAttrs:!1,computed:{hasNoOptions(){return 0===this.options.length&&"options"===this.accept}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-tags-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[t.hasNoOptions?e("k-empty",{attrs:{icon:t.icon,text:t.$t("options.none")}}):e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"tags"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const Qn=at({extends:Zn,inheritAttrs:!1},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-multiselect-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[t.hasNoOptions?e("k-empty",{attrs:{icon:t.icon,text:t.$t("options.none")}}):e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"multiselect"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,ts={mixins:[ji,ot],props:{max:Number,min:Number,name:[Number,String],preselect:Boolean,step:[Number,String],value:{type:[Number,String],default:""}}};const es=at({mixins:[Ii,ts],data(){return{number:this.format(this.value),stepNumber:this.format(this.step),timeout:null,listeners:{...this.$listeners,input:t=>this.onInput(t.target.value),blur:this.onBlur}}},watch:{value(t){this.number=t},number:{immediate:!0,handler(){this.onInvalid()}}},mounted(){this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{decimals(){const t=Number(this.step??0);return Math.floor(t)===t?0:-1!==t.toString().indexOf("e")?parseInt(t.toFixed(16).split(".")[1].split("").reverse().join("")).toString().length:t.toString().split(".")[1].length??0},format(t){if(isNaN(t)||""===t)return"";const e=this.decimals();return t=e?parseFloat(t).toFixed(e):Number.isInteger(this.step)?parseInt(t):parseFloat(t)},clean(){this.number=this.format(this.number)},emit(t){t=parseFloat(t),isNaN(t)&&(t=""),t!==this.value&&this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput(t){this.number=t,this.emit(t)},onBlur(){this.clean(),this.emit(this.number)},select(){this.$refs.input.select()}},validations(){return{value:{required:!this.required||t.required,min:!this.min||t.minValue(this.min),max:!this.max||t.maxValue(this.max)}}}},(function(){var t=this;return(0,t._self._c)("input",t._g(t._b({ref:"input",staticClass:"k-number-input",attrs:{step:t.stepNumber,type:"number"},domProps:{value:t.number},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.ctrlKey?t.clean.apply(null,arguments):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.metaKey?t.clean.apply(null,arguments):null}]}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,max:t.max,min:t.min,name:t.name,placeholder:t.placeholder,required:t.required},!1),t.listeners))}),[],!1,null,null,null,null).exports;const is=at({mixins:[Pe,Fe,ts],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-number-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"number"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const ns=at({mixins:[Pe,Fe],props:{empty:String,fields:[Object,Array],value:[String,Object]},data:()=>({object:{}}),computed:{hasFields(){return this.$helper.object.length(this.fields)>0},isEmpty(){return null===this.object||0===this.$helper.object.length(this.object)},isInvalid(){return!0===this.required&&this.isEmpty}},watch:{value:{handler(t){this.object=this.valueToObject(t)},immediate:!0}},methods:{add(){this.object=this.$helper.field.form(this.fields),this.save(),this.open()},cell(t,e){this.$set(this.object,t,e),this.save()},form(t){const e=this.$helper.field.subfields(this,this.fields);if(t)for(const i in e)e[i].autofocus=i===t;return e},remove(){this.object={},this.save()},open(t){if(this.disabled)return!1;this.$panel.drawer.open({component:"k-form-drawer",props:{breadcrumb:[],icon:"box",tab:"object",tabs:{object:{fields:this.form(t)}},title:this.label,value:this.object},on:{input:t=>{for(const e in t)this.$set(this.object,e,t[e]);this.save()}}})},save(){this.$emit("input",this.object)},valueToObject:t=>"object"!=typeof t?{}:t}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-object-field",scopedSlots:t._u([!t.disabled&&t.hasFields?{key:"options",fn:function(){return[t.isEmpty?e("k-button",{attrs:{icon:"add",size:"xs",variant:"filled"},on:{click:t.add}}):e("k-button",{attrs:{icon:"remove",size:"xs",variant:"filled"},on:{click:t.remove}})]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[t.hasFields?[t.isEmpty?e("k-empty",{attrs:{"data-invalid":t.isInvalid,icon:"box"},on:{click:t.add}},[t._v(" "+t._s(t.empty??t.$t("field.object.empty"))+" ")]):e("table",{staticClass:"k-table k-object-field-table",attrs:{"data-invalid":t.isInvalid}},[e("tbody",[t._l(t.fields,(function(i){return[i.saveable&&t.$helper.field.isVisible(i,t.value)?e("tr",{key:i.name,on:{click:function(e){return t.open(i.name)}}},[e("th",{attrs:{"data-has-button":"","data-mobile":"true"}},[e("button",{attrs:{type:"button"}},[t._v(t._s(i.label))])]),e("k-table-cell",{attrs:{column:i,field:i,mobile:!0,value:t.object[i.name]},on:{input:function(e){return t.cell(i.name,e)}}})],1):t._e()]}))],2)])]:[e("k-empty",{attrs:{icon:"box"}},[t._v(t._s(t.$t("fields.empty")))])]],2)}),[],!1,null,null,null,null).exports;const ss=at({extends:Ji,type:"pages",computed:{emptyProps(){return{icon:"page",text:this.empty??this.$t("field.pages.empty")}}}},null,null,!1,null,null,null,null).exports,os={mixins:[Ui],props:{autocomplete:{type:String,default:"new-password"},type:{type:String,default:"password"}}};const ls=at({extends:Hi,mixins:[os]},null,null,!1,null,null,null,null).exports;const rs=at({mixins:[Pe,Fe,os,Li],inheritAttrs:!1,props:{minlength:{type:Number,default:8},icon:{type:String,default:"key"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-password-field",attrs:{input:t._uid,counter:t.counterOptions},scopedSlots:t._u([{key:"options",fn:function(){return[t._t("options")]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"password"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,as={mixins:[ji,nt],props:{columns:Number,reset:{default:!0,type:Boolean},theme:String,value:[String,Number,Boolean]}};const us=at({mixins:[Ii,as],computed:{choices(){return this.options.map(((t,e)=>({autofocus:this.autofocus&&0===e,checked:this.value===t.value,disabled:this.disabled||t.disabled,info:t.info,label:t.text,name:this.name??this.id,type:"radio",value:t.value})))}},watch:{value:{handler(){this.validate()},immediate:!0}},methods:{focus(){var t;null==(t=this.$el.querySelector("input"))||t.focus()},select(){this.focus()},toggle(t){t===this.value&&this.reset&&!this.required&&this.$emit("input","")},validate(){this.$emit("invalid",this.$v.$invalid,this.$v)}},validations(){return{value:{required:!this.required||t.required}}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-radio-input k-grid",style:"--columns:"+t.columns,attrs:{"data-variant":"choices"}},t._l(t.choices,(function(i,n){return e("li",{key:n},[e("k-choice-input",t._b({on:{input:function(e){return t.$emit("input",i.value)}},nativeOn:{click:function(e){return e.stopPropagation(),t.toggle(i.value)}}},"k-choice-input",i,!1))],1)})),0)}),[],!1,null,null,null,null).exports;const cs=at({mixins:[Pe,Fe,as],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-radio-field"},"k-field",t.$props,!1),[e("k-radio-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field"}},"k-radio-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,ds={mixins:[ji],props:{default:[Number,String],max:{type:Number,default:100},min:{type:Number,default:0},step:{type:[Number,String],default:1},tooltip:{type:[Boolean,Object],default:()=>({before:null,after:null})},value:[Number,String]}};const ps=at({mixins:[Ii,ds],computed:{baseline(){return this.min<0?0:this.min},label(){return this.required||this.value||0===this.value?this.format(this.position):"–"},position(){return this.value||0===this.value?this.value:this.default??this.baseline}},watch:{position(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){var t;null==(t=this.$el.querySelector("input"))||t.focus()},format(t){const e=document.lang?document.lang.replace("_","-"):"en",i=this.step.toString().split("."),n=i.length>1?i[1].length:0;return new Intl.NumberFormat(e,{minimumFractionDigits:n}).format(t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput(t){this.$emit("input",t)}},validations(){return{position:{required:!this.required||t.required,min:!this.min||t.minValue(this.min),max:!this.max||t.maxValue(this.max)}}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-range-input",attrs:{"data-disabled":t.disabled}},[e("input",t._b({ref:"range",attrs:{type:"range"},domProps:{value:t.position},on:{input:function(e){return t.$emit("input",e.target.valueAsNumber)}}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,max:t.max,min:t.min,name:t.name,required:t.required,step:t.step},!1)),t.tooltip?e("output",{staticClass:"k-range-input-tooltip",attrs:{for:t.id}},[t.tooltip.before?e("span",{staticClass:"k-range-input-tooltip-before"},[t._v(t._s(t.tooltip.before))]):t._e(),e("span",{staticClass:"k-range-input-tooltip-text"},[t._v(t._s(t.label))]),t.tooltip.after?e("span",{staticClass:"k-range-input-tooltip-after"},[t._v(t._s(t.tooltip.after))]):t._e()]):t._e()])}),[],!1,null,null,null,null).exports;const hs=at({mixins:[Fe,Pe,ds],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-range-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"range"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,ms={mixins:[ji,nt,ot],props:{ariaLabel:String,default:String,empty:{type:[Boolean,String],default:!0},value:{type:[String,Number,Boolean],default:""}}};const fs=at({mixins:[Ii,ms],data(){return{selected:this.value,listeners:{...this.$listeners,click:t=>this.onClick(t),change:t=>this.onInput(t.target.value),input:()=>{}}}},computed:{emptyOption(){return this.placeholder??"—"},hasEmptyOption(){return!1!==this.empty&&!(this.required&&this.default)},isEmpty(){return null===this.selected||void 0===this.selected||""===this.selected},label(){const t=this.text(this.selected);return""===this.selected||null===this.selected||null===t?this.emptyOption:t}},watch:{value(t){this.selected=t,this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){this.$refs.input.focus()},onClick(t){t.stopPropagation(),this.$emit("click",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput(t){this.selected=t,this.$emit("input",this.selected)},select(){this.focus()},text(t){let e=null;for(const i of this.options)i.value==t&&(e=i.text);return e}},validations(){return{selected:{required:!this.required||t.required}}}},(function(){var t=this,e=t._self._c;return e("span",{staticClass:"k-select-input",attrs:{"data-disabled":t.disabled,"data-empty":t.isEmpty}},[e("select",t._g({ref:"input",staticClass:"k-select-input-native",attrs:{id:t.id,autofocus:t.autofocus,"aria-label":t.ariaLabel,disabled:t.disabled,name:t.name,required:t.required},domProps:{value:t.selected}},t.listeners),[t.hasEmptyOption?e("option",{attrs:{disabled:t.required,value:""}},[t._v(" "+t._s(t.emptyOption)+" ")]):t._e(),t._l(t.options,(function(i){return e("option",{key:i.value,attrs:{disabled:i.disabled},domProps:{value:i.value}},[t._v(" "+t._s(i.text)+" ")])}))],2),t._v(" "+t._s(t.label)+" ")])}),[],!1,null,null,null,null).exports;const gs=at({mixins:[Pe,Fe,ms],inheritAttrs:!1,props:{icon:{type:String,default:"angle-down"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-select-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"select"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,ks={mixins:[Ui],props:{allow:{type:String,default:""},formData:{type:Object,default:()=>({})},sync:{type:String}}};const bs=at({extends:Hi,mixins:[ks],data(){return{slug:this.sluggify(this.value),slugs:this.$panel.language.rules??this.$panel.system.slugs,syncValue:null}},watch:{formData:{handler(t){return!this.disabled&&(!(!this.sync||void 0===t[this.sync])&&(t[this.sync]!=this.syncValue&&(this.syncValue=t[this.sync],void this.onInput(this.sluggify(this.syncValue)))))},deep:!0,immediate:!0},value(t){(t=this.sluggify(t))!==this.slug&&(this.slug=t,this.$emit("input",this.slug))}},methods:{sluggify(t){return this.$helper.slug(t,[this.slugs,this.$panel.system.ascii],this.allow)},onInput(t){this.slug=this.sluggify(t),this.$emit("input",this.slug)}}},(function(){var t=this;return(0,t._self._c)("input",t._g(t._b({directives:[{name:"direction",rawName:"v-direction"}],ref:"input",staticClass:"k-text-input",attrs:{autocomplete:"off",spellcheck:"false",type:"text"},domProps:{value:t.slug}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,pattern:t.pattern,placeholder:t.placeholder,required:t.required},!1),t.listeners))}),[],!1,null,null,null,null).exports;const vs=at({mixins:[Pe,Fe,ks],inheritAttrs:!1,props:{icon:{type:String,default:"url"},path:{type:String},wizard:{type:[Boolean,Object],default:!1}},data(){return{slug:this.value}},computed:{preview(){return void 0!==this.help?this.help:void 0!==this.path?this.path+this.value:null}},watch:{value(){this.slug=this.value}},methods:{focus(){this.$refs.input.focus()},onWizard(){var t;this.formData[null==(t=this.wizard)?void 0:t.field]&&(this.slug=this.formData[this.wizard.field])}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-slug-field",attrs:{input:t._uid,help:t.preview},scopedSlots:t._u([t.wizard&&t.wizard.text?{key:"options",fn:function(){return[e("k-button",{attrs:{text:t.wizard.text,icon:"sparkling"},on:{click:t.onWizard}})]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,value:t.slug,theme:"field",type:"slug"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const ys=at({mixins:[Pe],inheritAttrs:!1,props:{autofocus:Boolean,columns:Object,duplicate:{type:Boolean,default:!0},empty:String,fields:[Array,Object],limit:Number,max:Number,min:Number,prepend:{type:Boolean,default:!1},sortable:{type:Boolean,default:!0},sortBy:String,value:{type:Array,default:()=>[]}},data:()=>({items:[],page:1}),computed:{dragOptions(){return{disabled:!this.isSortable,fallbackClass:"k-sortable-row-fallback"}},index(){return this.limit?(this.page-1)*this.limit+1:1},more(){return!0!==this.disabled&&!(this.max&&this.items.length>=this.max)},hasFields(){return this.$helper.object.length(this.fields)>0},isInvalid(){return!0!==this.disabled&&(!!(this.min&&this.items.lengththis.max))},isSortable(){return!this.sortBy&&(!this.limit&&(!0!==this.disabled&&(!(this.items.length<=1)&&!1!==this.sortable)))},pagination(){let t=0;return this.limit&&(t=(this.page-1)*this.limit),{page:this.page,offset:t,limit:this.limit,total:this.items.length,align:"center",details:!0}},options(){if(this.disabled)return[];let t=[],e=this.duplicate&&this.more;return t.push({icon:"edit",text:this.$t("edit"),click:"edit"}),t.push({disabled:!e,icon:"copy",text:this.$t("duplicate"),click:"duplicate"}),t.push("-"),t.push({icon:"trash",text:e?this.$t("delete"):null,click:"remove"}),t},paginatedItems(){return this.limit?this.items.slice(this.pagination.offset,this.pagination.offset+this.limit):this.items}},watch:{value:{handler(t){t!==this.items&&(this.items=this.toItems(t))},immediate:!0}},methods:{add(t=null){if(!1===this.more)return!1;(t=t??this.$helper.field.form(this.fields))._id=t._id??this.$helper.uuid(),!0===this.prepend?this.items.unshift(t):this.items.push(t),this.save(),this.open(t)},close(){this.$panel.drawer.close(this._uid)},focus(){var t,e;null==(e=null==(t=this.$refs.add)?void 0:t.focus)||e.call(t)},form(t){const e=this.$helper.field.subfields(this,this.fields);if(t)for(const i in e)e[i].autofocus=i===t;return e},findIndex(t){return this.items.findIndex((e=>e._id===t._id))},navigate(t,e){const i=this.findIndex(t);!0!==this.disabled&&-1!==i&&this.open(this.items[i+e],null,!0)},open(t,e,i=!1){const n=this.findIndex(t);if(!0===this.disabled||-1===n)return!1;this.$panel.drawer.open({component:"k-structure-drawer",id:this._uid,props:{icon:this.icon??"list-bullet",next:this.items[n+1],prev:this.items[n-1],tabs:{content:{fields:this.form(e)}},title:this.label,value:t},replace:i,on:{input:e=>{const i=this.findIndex(t);this.$panel.drawer.props.next=this.items[i+1],this.$panel.drawer.props.prev=this.items[i-1],this.$set(this.items,i,e),this.save()},next:()=>{this.navigate(t,1)},prev:()=>{this.navigate(t,-1)},remove:()=>{this.remove(t)}}})},option(t,e){switch(t){case"remove":this.remove(e);break;case"duplicate":this.add({...e,_id:this.$helper.uuid()});break;case"edit":this.open(e)}},paginate({page:t}){this.page=t},remove(t){const e=this.findIndex(t);this.disabled||-1===e||this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.structure.delete.confirm")},on:{submit:()=>{this.items.splice(e,1),this.save(),this.$panel.dialog.close(),this.close(),0===this.paginatedItems.length&&this.page>1&&this.page--}}})},removeAll(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.structure.delete.confirm.all")},on:{submit:()=>{this.page=1,this.items=[],this.save(),this.$panel.dialog.close()}}})},save(t=this.items){this.$emit("input",t)},sort(t){return this.sortBy?t.sortBy(this.sortBy):t},toItems(t){return!1===Array.isArray(t)?[]:(t=t.map((t=>({_id:t._id??this.$helper.uuid(),...t}))),this.sort(t))}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-structure-field",nativeOn:{click:function(t){t.stopPropagation()}},scopedSlots:t._u([t.hasFields&&!t.disabled?{key:"options",fn:function(){return[e("k-button-group",{attrs:{layout:"collapsed"}},[e("k-button",{attrs:{autofocus:t.autofocus,disabled:!t.more,responsive:!0,text:t.$t("add"),icon:"add",variant:"filled",size:"xs"},on:{click:function(e){return t.add()}}}),e("k-button",{attrs:{icon:"dots",size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:[{click:()=>t.add(),disabled:!t.more,icon:"add",text:t.$t("add")},{click:()=>t.removeAll(),disabled:0===t.items.length||t.disabled,icon:"trash",text:t.$t("delete.all")}],"align-x":"end"}})],1)]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[t.hasFields?[0===t.items.length?e("k-empty",{attrs:{"data-invalid":t.isInvalid,icon:"list-bullet"},on:{click:function(e){return t.add()}}},[t._v(" "+t._s(t.empty??t.$t("field.structure.empty"))+" ")]):[e("k-table",{attrs:{columns:t.columns,disabled:t.disabled,fields:t.fields,empty:t.$t("field.structure.empty"),index:t.index,options:t.options,pagination:!!t.limit&&t.pagination,rows:t.paginatedItems,sortable:t.isSortable,"data-invalid":t.isInvalid},on:{cell:function(e){return t.open(e.row,e.columnIndex)},input:t.save,option:t.option,paginate:t.paginate}}),t.more?e("footer",{staticClass:"k-bar",attrs:{"data-align":"center"}},[e("k-button",{attrs:{title:t.$t("add"),icon:"add",size:"xs",variant:"filled"},on:{click:function(e){return t.add()}}})],1):t._e()]]:[e("k-empty",{attrs:{icon:"list-bullet"}},[t._v(t._s(t.$t("fields.empty")))])]],2)}),[],!1,null,null,null,null).exports,$s={mixins:[Ui],props:{autocomplete:{default:"tel"},placeholder:{default:()=>window.panel.$t("tel.placeholder")},type:{default:"tel"}}};const ws=at({extends:Hi,mixins:[$s]},null,null,!1,null,null,null,null).exports;const xs=at({mixins:[Pe,Fe,$s],inheritAttrs:!1,props:{icon:{type:String,default:"phone"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-tel-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"tel"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const _s=at({mixins:[Pe,Fe,Ui,Li],inheritAttrs:!1,computed:{inputType(){return this.$helper.isComponent(`k-${this.type}-input`)?this.type:"text"}},methods:{focus(){this.$refs.input.focus()},select(){this.$refs.input.select()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-text-field",attrs:{input:t._uid,counter:t.counterOptions},scopedSlots:t._u([{key:"options",fn:function(){return[t._t("options")]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,type:t.inputType,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,Ss={props:{buttons:{type:[Array,Boolean],default:!0},uploads:[Boolean,Object,Array]}};const Cs=at({mixins:[Ss],computed:{commands(){return{headlines:{label:this.$t("toolbar.button.headings"),icon:"title",dropdown:[{label:this.$t("toolbar.button.heading.1"),icon:"h1",click:()=>this.command("prepend","#")},{label:this.$t("toolbar.button.heading.2"),icon:"h2",click:()=>this.command("prepend","##")},{label:this.$t("toolbar.button.heading.3"),icon:"h3",click:()=>this.command("prepend","###")}]},bold:{label:this.$t("toolbar.button.bold"),icon:"bold",click:()=>this.command("toggle","**"),shortcut:"b"},italic:{label:this.$t("toolbar.button.italic"),icon:"italic",click:()=>this.command("toggle","*"),shortcut:"i"},link:{label:this.$t("toolbar.button.link"),icon:"url",click:()=>this.command("dialog","link"),shortcut:"k"},email:{label:this.$t("toolbar.button.email"),icon:"email",click:()=>this.command("dialog","email"),shortcut:"e"},file:{label:this.$t("toolbar.button.file"),icon:"attachment",click:()=>this.command("file"),dropdown:this.uploads?[{label:this.$t("toolbar.button.file.select"),icon:"check",click:()=>this.command("file")},{label:this.$t("toolbar.button.file.upload"),icon:"upload",click:()=>this.command("upload")}]:void 0},code:{label:this.$t("toolbar.button.code"),icon:"code",click:()=>this.command("toggle","`")},ul:{label:this.$t("toolbar.button.ul"),icon:"list-bullet",click:()=>this.command("insert",((t,e)=>e.split("\n").map((t=>"- "+t)).join("\n")))},ol:{label:this.$t("toolbar.button.ol"),icon:"list-numbers",click:()=>this.command("insert",((t,e)=>e.split("\n").map(((t,e)=>e+1+". "+t)).join("\n")))}}},default:()=>["headlines","|","bold","italic","code","|","link","email","file","|","ul","ol"],layout(){var t;if(!1===this.buttons)return[];const e=[],i=Array.isArray(this.buttons)?this.buttons:this.default,n={...this.commands,...window.panel.plugins.textareaButtons??{}};for(const s of i)if("|"===s)e.push("|");else if(n[s]){const i=n[s];i.click=null==(t=i.click)?void 0:t.bind(this),e.push(i)}return e}},methods:{close(){this.$refs.toolbar.close()},command(t,...e){this.$emit("command",t,...e)},shortcut(t,e){var i;const n=this.layout.find((e=>e.shortcut===t));n&&(e.preventDefault(),null==(i=n.click)||i.call(n))}}},(function(){return(0,this._self._c)("k-toolbar",{ref:"toolbar",staticClass:"k-textarea-toolbar",attrs:{buttons:this.layout}})}),[],!1,null,null,null,null).exports,Os={mixins:[Ss,ji,W,tt,et,ot,rt],props:{endpoints:Object,preselect:Boolean,size:String,theme:String,value:String}};const As=at({mixins:[Ii,Os],data:()=>({over:!1}),computed:{uploadOptions(){const t=this.restoreSelectionCallback();return{url:this.$panel.urls.api+"/"+this.endpoints.field+"/upload",multiple:!1,on:{cancel:t,done:e=>{t((()=>this.insertUpload(e)))}}}}},watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{dialog(t){const e=this.restoreSelectionCallback();this.$panel.dialog.open({component:"k-toolbar-"+t+"-dialog",props:{value:this.parseSelection()},on:{cancel:e,submit:t=>{this.$panel.dialog.close(),e((()=>this.insert(t)))}}})},file(){const t=this.restoreSelectionCallback();this.$panel.dialog.open({component:"k-files-dialog",props:{endpoint:this.endpoints.field+"/files",multiple:!1},on:{cancel:t,submit:e=>{t((()=>this.insertFile(e))),this.$panel.dialog.close()}}})},focus(){this.$refs.input.focus()},insert(t){const e=this.$refs.input,i=e.value;"function"==typeof t&&(t=t(this.$refs.input,this.selection())),setTimeout((()=>{if(e.focus(),document.execCommand("insertText",!1,t),e.value===i){const i=e.selectionStart,n=e.selectionEnd,s=i===n?"end":"select";e.setRangeText(t,i,n,s)}this.$emit("input",e.value)}))},insertFile(t){(null==t?void 0:t.length)>0&&this.insert(t.map((t=>t.dragText)).join("\n\n"))},insertUpload(t){this.insertFile(t),this.$events.emit("model.update")},onCommand(t,...e){if("function"!=typeof this[t])return console.warn(t+" is not a valid command");this[t](...e)},onDrop(t){if(this.uploads&&this.$helper.isUploadEvent(t))return this.$panel.upload.open(t.dataTransfer.files,this.uploadOptions);"text"===this.$panel.drag.type&&(this.focus(),this.insert(this.$panel.drag.data))},onFocus(t){this.$emit("focus",t)},onInput(t){this.$emit("input",t.target.value)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onOut(){this.$refs.input.blur(),this.over=!1},onOver(t){if(this.uploads&&this.$helper.isUploadEvent(t))return t.dataTransfer.dropEffect="copy",this.focus(),void(this.over=!0);"text"===this.$panel.drag.type&&(t.dataTransfer.dropEffect="copy",this.focus(),this.over=!0)},onShortcut(t){var e;!1!==this.buttons&&"Meta"!==t.key&&"Control"!==t.key&&(null==(e=this.$refs.toolbar)||e.shortcut(t.key,t))},onSubmit(t){return this.$emit("submit",t)},parseSelection(){const t=this.selection();if(0===(null==t?void 0:t.length))return{href:null,title:null};let e;e=this.$panel.config.kirbytext?/^\(link:\s*(?.*?)(?:\s*text:\s*(?.*?))?\)$/is:/^(\[(?.*?)\]\((?.*?)\))|(<(?.*?)>)$/is;const i=e.exec(t);return null!==i?{href:i.groups.url??i.groups.link,title:i.groups.text??null}:{href:null,title:t}},prepend(t){this.insert(t+" "+this.selection())},restoreSelectionCallback(){const t=this.$refs.input.selectionStart,e=this.$refs.input.selectionEnd;return i=>{setTimeout((()=>{this.$refs.input.setSelectionRange(t,e),i&&i()}))}},select(){this.$refs.select()},selection(){return this.$refs.input.value.substring(this.$refs.input.selectionStart,this.$refs.input.selectionEnd)},toggle(t,e){e=e??t;const i=this.selection();return i.startsWith(t)&&i.endsWith(e)?this.insert(i.slice(t.length).slice(0,i.length-t.length-e.length)):this.wrap(t,e)},upload(){this.$panel.upload.pick(this.uploadOptions)},wrap(t,e){this.insert(t+this.selection()+(e??t))}},validations(){return{value:{required:!this.required||t.required,minLength:!this.minlength||t.minLength(this.minlength),maxLength:!this.maxlength||t.maxLength(this.maxlength)}}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-textarea-input",attrs:{"data-over":t.over,"data-size":t.size}},[e("div",{staticClass:"k-textarea-input-wrapper"},[t.buttons&&!t.disabled?e("k-textarea-toolbar",{ref:"toolbar",attrs:{buttons:t.buttons,disabled:t.disabled,uploads:t.uploads},on:{command:t.onCommand},nativeOn:{mousedown:function(t){t.preventDefault()}}}):t._e(),e("k-autosize",[e("textarea",t._b({directives:[{name:"direction",rawName:"v-direction"}],ref:"input",staticClass:"k-textarea-input-native",attrs:{"data-font":t.font},on:{click:function(e){var i;null==(i=t.$refs.toolbar)||i.close()},focus:t.onFocus,input:t.onInput,keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.metaKey?t.onSubmit.apply(null,arguments):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.ctrlKey?t.onSubmit.apply(null,arguments):null},function(e){return e.metaKey?e.ctrlKey||e.shiftKey||e.altKey?null:t.onShortcut.apply(null,arguments):null},function(e){return e.ctrlKey?e.shiftKey||e.altKey||e.metaKey?null:t.onShortcut.apply(null,arguments):null}],dragover:t.onOver,dragleave:t.onOut,drop:t.onDrop}},"textarea",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,value:t.value},!1))])],1)])}),[],!1,null,null,null,null).exports;const Ms=at({mixins:[Pe,Fe,Os,Li],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-textarea-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,type:"textarea",theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,js={props:{display:{type:String,default:"HH:mm"},max:String,min:String,step:{type:Object,default:()=>({size:5,unit:"minute"})},type:{type:String,default:"time"},value:String}};const Is=at({mixins:[Ri,js],computed:{inputType:()=>"time"}},null,null,!1,null,null,null,null).exports;const Ts=at({mixins:[Pe,Fe,js],inheritAttrs:!1,props:{icon:{type:String,default:"clock"},times:{type:Boolean,default:!0}},methods:{focus(){this.$refs.input.focus()},select(t){var e;this.$emit("input",t),null==(e=this.$refs.times)||e.close()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-time-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"time"},on:{input:function(e){return t.$emit("input",e??"")}},scopedSlots:t._u([t.times?{key:"icon",fn:function(){return[e("k-button",{staticClass:"k-input-icon-button",attrs:{disabled:t.disabled,icon:t.icon??"clock",title:t.$t("time.select")},on:{click:function(e){return t.$refs.times.toggle()}}}),e("k-dropdown-content",{ref:"times",attrs:{"align-x":"end"}},[e("k-timeoptions-input",{attrs:{display:t.display,value:t.value},on:{input:t.select}})],1)]},proxy:!0}:null],null,!0)},"k-input",t.$props,!1))],1)}),[],!1,null,null,null,null).exports,Es={props:{autofocus:Boolean,disabled:Boolean,id:[Number,String],text:{type:[Array,String]},required:Boolean,value:Boolean}};const Ls=at({mixins:[Ii,Es],computed:{label(){const t=this.text??[this.$t("off"),this.$t("on")];return Array.isArray(t)?this.value?t[1]:t[0]:t}},watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{onEnter(t){"Enter"===t.key&&this.$refs.input.click()},onInput(t){this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},select(){this.$refs.input.focus()}},validations(){return{value:{required:!this.required||t.required}}}},(function(){var t=this;return(0,t._self._c)("k-choice-input",{ref:"input",staticClass:"k-toggle-input",attrs:{id:t.id,checked:t.value,disabled:t.disabled,label:t.label,type:"checkbox",variant:"toggle"},on:{input:function(e){return t.$emit("input",e)}}})}),[],!1,null,null,null,null).exports;const Ds=at({mixins:[Pe,Fe,Es],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-toggle-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"toggle"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,Bs={mixins:[ji],props:{columns:Number,grow:Boolean,labels:Boolean,options:Array,reset:Boolean,value:[String,Number,Boolean]}};const qs=at({mixins:[Ii,Bs],watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){var t;null==(t=this.$el.querySelector("input[checked]")||this.$el.querySelector("input"))||t.focus()},onClick(t){t===this.value&&this.reset&&!this.required&&this.$emit("input","")},onInput(t){this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},select(){this.focus()}},validations(){return{value:{required:!this.required||t.required}}}},(function(){var t=this,e=t._self._c;return t.options.length?e("ul",{staticClass:"k-toggles-input",style:"--options:"+(t.columns??t.options.length),attrs:{"data-invalid":t.$v.$invalid,"data-labels":t.labels}},t._l(t.options,(function(i,n){return e("li",{key:n,attrs:{"data-disabled":t.disabled}},[e("input",{staticClass:"input-hidden",attrs:{id:t.id+"-"+n,"aria-label":i.text,disabled:t.disabled,name:t.id,type:"radio"},domProps:{value:i.value,checked:t.value===i.value},on:{click:function(e){return t.onClick(i.value)},change:function(e){return t.onInput(i.value)}}}),e("label",{attrs:{for:t.id+"-"+n,title:i.text}},[i.icon?e("k-icon",{attrs:{type:i.icon}}):t._e(),t.labels||!i.icon?e("span",{staticClass:"k-toggles-text",domProps:{innerHTML:t._s(i.text)}}):t._e()],1)])})),0):e("k-empty",{attrs:{icon:"info",theme:"info"}},[t._v(t._s(t.$t("options.none")))])}),[],!1,null,null,null,null).exports;const Ps=at({mixins:[Pe,Fe,Bs],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()},onInput(t){this.$emit("input",t)}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-toggles-field"},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",class:{grow:t.grow},attrs:{id:t._uid,theme:"field",type:"toggles"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,Ns={mixins:[Ui],props:{autocomplete:{type:String,default:"url"},placeholder:{type:String,default:()=>window.panel.$t("url.placeholder")},type:{type:String,default:"url"}}};const zs=at({extends:Hi,mixins:[Ns]},null,null,!1,null,null,null,null).exports;const Fs=at({mixins:[Pe,Fe,Ns],inheritAttrs:!1,props:{link:{type:Boolean,default:!0},icon:{type:String,default:"url"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-url-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"url"},scopedSlots:t._u([{key:"icon",fn:function(){return[t.link?e("k-button",{staticClass:"k-input-icon-button",attrs:{icon:t.icon,link:t.value,title:t.$t("open"),tabindex:"-1",target:"_blank"}}):t._e()]},proxy:!0}])},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const Rs=at({extends:Ji,type:"users",computed:{emptyProps(){return{icon:"users",text:this.empty??this.$t("field.users.empty")}}}},null,null,!1,null,null,null,null).exports;const Ys=at({mixins:[Pe,Fe,Rn,Li],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-writer-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[e("k-input",t._b({ref:"input",attrs:{after:t.after,before:t.before,icon:t.icon,theme:"field",type:"writer"},on:{input:function(e){return t.$emit("input",e)}}},"k-input",t.$props,!1))],1)}),[],!1,null,null,null,null).exports,Us={install(t){t.component("k-blocks-field",Mi),t.component("k-checkboxes-field",Di),t.component("k-color-field",zi),t.component("k-date-field",Yi),t.component("k-email-field",Wi),t.component("k-files-field",Gi),t.component("k-gap-field",Xi),t.component("k-headline-field",Zi),t.component("k-info-field",Qi),t.component("k-layout-field",tn),t.component("k-line-field",en),t.component("k-link-field",nn),t.component("k-list-field",Kn),t.component("k-multiselect-field",Qn),t.component("k-number-field",is),t.component("k-object-field",ns),t.component("k-pages-field",ss),t.component("k-password-field",rs),t.component("k-radio-field",cs),t.component("k-range-field",hs),t.component("k-select-field",gs),t.component("k-slug-field",vs),t.component("k-structure-field",ys),t.component("k-tags-field",Zn),t.component("k-text-field",_s),t.component("k-textarea-field",Ms),t.component("k-tel-field",xs),t.component("k-time-field",Ts),t.component("k-toggle-field",Ds),t.component("k-toggles-field",Ps),t.component("k-url-field",Fs),t.component("k-users-field",Rs),t.component("k-writer-field",Ys)}},Hs={mixins:[ds],props:{max:{default:1,type:Number},min:{default:0,type:Number},step:{default:.01,type:Number},tooltip:{default:!1,type:[Boolean,Object]}}};const Vs=at({mixins:[ps,Hs]},(function(){var t=this;return(0,t._self._c)("k-range-input",t._b({staticClass:"k-alpha-input",on:{input:function(e){return t.$emit("input",e)}}},"k-range-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const Ks=at({mixins:[ji],props:{max:String,min:String,value:{default:"",type:String}},data(){return{maxdate:null,mindate:null,month:null,selected:null,today:this.$library.dayjs(),year:null}},computed:{numberOfDays(){return this.toDate().daysInMonth()},firstWeekday(){const t=this.toDate().day();return t>0?t:7},weekdays(){return["mon","tue","wed","thu","fri","sat","sun"].map((t=>this.$t("days."+t)))},weeks(){const t=this.firstWeekday-1;return Math.ceil((this.numberOfDays+t)/7)},monthnames(){return["january","february","march","april","may","june","july","august","september","october","november","december"].map((t=>this.$t("months."+t)))},months(){var t=[];return this.monthnames.forEach(((e,i)=>{t.push({value:i,text:e})})),t},years(){const t=this.year-20,e=this.year+20;return this.toOptions(t,e)}},watch:{max:{handler(t,e){t!==e&&(this.maxdate=this.$library.dayjs.interpret(t,"date"))},immediate:!0},min:{handler(t,e){t!==e&&(this.mindate=this.$library.dayjs.interpret(t,"date"))},immediate:!0},value:{handler(t,e){t!==e&&(this.selected=this.$library.dayjs.interpret(t,"date"),this.show(this.selected))},immediate:!0}},methods:{days(t){let e=[];const i=7*(t-1)+1,n=i+7;for(let s=i;sthis.numberOfDays;e.push(i?"":t)}return e},isDisabled(t){const e=this.toDate(t);return this.disabled||e.isBefore(this.mindate,"day")||e.isAfter(this.maxdate,"day")},isSelected(t){return this.toDate(t).isSame(this.selected,"day")},isToday(t){return this.toDate(t).isSame(this.today,"day")},onNext(){const t=this.toDate().add(1,"month");this.show(t)},onPrev(){const t=this.toDate().subtract(1,"month");this.show(t)},select(t){this.$emit("input",(null==t?void 0:t.toISO("date"))??null)},show(t){this.month=(t??this.today).month(),this.year=(t??this.today).year()},toDate(t=1,e=this.month){return this.$library.dayjs(`${this.year}-${e+1}-${t}`)},toOptions(t,e){for(var i=[],n=t;n<=e;n++)i.push({value:n,text:this.$helper.pad(n)});return i}}},(function(){var t=this,e=t._self._c;return e("fieldset",{staticClass:"k-calendar-input"},[e("legend",{staticClass:"sr-only"},[t._v(t._s(t.$t("date.select")))]),e("nav",[e("k-button",{attrs:{title:t.$t("prev"),icon:"angle-left"},on:{click:t.onPrev}}),e("span",{staticClass:"k-calendar-selects"},[e("k-select-input",{attrs:{"aria-label":t.$t("month"),autofocus:t.autofocus,options:t.months,empty:!1,required:!0,value:t.month},on:{input:function(e){t.month=Number(e)}}}),e("k-select-input",{attrs:{"aria-label":t.$t("year"),options:t.years,empty:!1,required:!0,value:t.year},on:{input:function(e){t.year=Number(e)}}})],1),e("k-button",{attrs:{title:t.$t("next"),icon:"angle-right"},on:{click:t.onNext}})],1),e("table",{key:t.year+"-"+t.month,staticClass:"k-calendar-table"},[e("thead",[e("tr",t._l(t.weekdays,(function(i){return e("th",{key:"weekday_"+i},[t._v(" "+t._s(i)+" ")])})),0)]),e("tbody",t._l(t.weeks,(function(i){return e("tr",{key:"week_"+i},t._l(t.days(i),(function(i,n){return e("td",{key:"day_"+n,staticClass:"k-calendar-day",attrs:{"aria-current":!!t.isToday(i)&&"date","aria-selected":!!t.isSelected(i)&&"date"}},[i?e("k-button",{attrs:{disabled:t.isDisabled(i),text:i},on:{click:function(e){t.select(t.toDate(i))}}}):t._e()],1)})),0)})),0),e("tfoot",[e("tr",[e("td",{staticClass:"k-calendar-today",attrs:{colspan:"7"}},[e("k-button",{attrs:{disabled:t.disabled,text:t.$t("today")},on:{click:function(e){return t.select(t.today)}}})],1)])])]),e("input",{staticClass:"sr-only",attrs:{id:t.id,disabled:t.disabled,min:t.min,max:t.max,name:t.name,required:t.required,tabindex:"-1",type:"date"},domProps:{value:t.value}})])}),[],!1,null,null,null,null).exports;const Ws=at({mixins:[Ii,{mixins:[ji],props:{checked:{type:Boolean},info:{type:String},label:{type:String},type:{default:"checkbox",type:String},value:{type:[Boolean,Number,String]},variant:{type:String}}}]},(function(){var t=this,e=t._self._c;return e("label",{staticClass:"k-choice-input",attrs:{"aria-disabled":t.disabled}},[e("input",t._b({class:{"sr-only":"invisible"===t.variant},attrs:{"data-variant":t.variant},on:{input:function(e){return t.$emit("input",e.target.checked)}}},"input",{autofocus:t.autofocus,id:t.id,checked:t.checked,disabled:t.disabled,name:t.name,required:t.required,type:t.type,value:t.value},!1)),t.label||t.info?e("span",{staticClass:"k-choice-input-label"},[e("span",{staticClass:"k-choice-input-label-text",domProps:{innerHTML:t._s(t.label)}}),t.info?e("span",{staticClass:"k-choice-input-label-info",domProps:{innerHTML:t._s(t.info)}}):t._e()]):t._e()])}),[],!1,null,null,null,null).exports;const Js=at({extends:Ws},null,null,!1,null,null,null,null).exports;const Gs=at({mixins:[us,{mixins:[as],props:{format:{type:String,default:"hex",validator:t=>["hex","rgb","hsl"].includes(t)},value:{type:String}}}],computed:{choices(){return this.options.map((t=>({...t,title:t.text??t.value,value:this.colorToString(t.value)})))}},methods:{colorToString(t){try{return this.$library.colors.toString(t,this.format)}catch{return t}}}},(function(){var t=this,e=t._self._c;return t.choices.length?e("fieldset",{staticClass:"k-coloroptions-input",attrs:{disabled:t.disabled}},[e("legend",{staticClass:"sr-only"},[t._v(t._s(t.$t("options")))]),e("ul",t._l(t.choices,(function(i,n){return e("li",{key:n},[e("label",{attrs:{title:i.title}},[e("input",{staticClass:"input-hidden",attrs:{autofocus:t.autofocus&&0===n,disabled:t.disabled,name:t.name??t._uid,required:t.required,type:"radio"},domProps:{checked:i.value===t.value,value:i.value},on:{click:function(e){return t.toggle(i.value)},input:function(e){return t.$emit("input",i.value)}}}),e("k-color-frame",{attrs:{color:i.value}})],1)])})),0)]):t._e()}),[],!1,null,null,null,null).exports;const Xs=at({mixins:[Ii,{mixins:[ji,nt],props:{alpha:{default:!0,type:Boolean},format:{default:"hex",type:String,validator:t=>["hex","rgb","hsl"].includes(t)},value:{type:[Object,String]}}}],data:()=>({color:{h:0,s:0,v:1,a:1},formatted:null}),computed:{coords(){return this.value?{x:100*this.color.s,y:100*(1-this.color.v)}:null},hsl(){try{const t=this.$library.colors.convert(this.color,"hsl");return{h:t.h,s:(100*t.s).toFixed()+"%",l:(100*t.l).toFixed()+"%",a:t.a}}catch{return{h:0,s:"0%",l:"0%",a:1}}}},watch:{value:{handler(t,e){if(t===e||t===this.formatted)return;const i=this.$library.colors.parseAs(t??"","hsv");i?(this.formatted=this.$library.colors.toString(i,this.format),this.color=i):(this.formatted=null,this.color={h:0,s:0,v:1,a:1})},immediate:!0}},methods:{between:(t,e,i)=>Math.min(Math.max(t,e),i),emit(){return this.formatted=this.$library.colors.toString(this.color,this.format),this.$emit("input",this.formatted)},focus(){this.$refs.coords.focus()},setAlpha(t){this.color.a=this.alpha?this.between(Number(t),0,1):1,this.emit()},setCoords(t){if(!t)return this.$emit("input","");const e=Math.round(t.x),i=Math.round(t.y);this.color.s=this.between(e/100,0,1),this.color.v=this.between(1-i/100,0,1),this.emit()},setHue(t){this.color.h=this.between(Number(t),0,360),this.emit()}}},(function(){var t=this,e=t._self._c;return e("fieldset",{staticClass:"k-colorpicker-input",style:{"--h":t.hsl.h,"--s":t.hsl.s,"--l":t.hsl.l,"--a":t.hsl.a}},[e("legend",{staticClass:"sr-only"},[t._v(t._s(t.$t("color")))]),e("k-coords-input",{ref:"coords",attrs:{autofocus:t.autofocus,disabled:t.disabled,required:t.required,value:t.coords},on:{input:function(e){return t.setCoords(e)}}}),e("label",{attrs:{"aria-label":t.$t("hue")}},[e("k-hue-input",{attrs:{disabled:t.disabled,required:t.required,value:t.color.h},on:{input:function(e){return t.setHue(e)}}})],1),t.alpha?e("label",{attrs:{"aria-label":t.$t("alpha")}},[e("k-alpha-input",{attrs:{disabled:t.disabled,required:t.required,value:t.color.a},on:{input:function(e){return t.setAlpha(e)}}})],1):t._e(),e("k-coloroptions-input",{attrs:{disabled:t.disabled,format:t.format,options:t.options,required:t.required,value:t.value},on:{input:function(e){return t.$emit("input",e)}}}),e("input",{staticClass:"input-hidden",attrs:{name:t.name,required:t.required,tabindex:"-1",type:"text"},domProps:{value:t.formatted}})],1)}),[],!1,null,null,null,null).exports;const Zs=at({mixins:[Ii,{mixins:[ji],props:{reset:{default:!0,type:Boolean},value:{default:()=>({x:0,y:0}),type:Object}}}],data:()=>({x:0,y:0}),watch:{value:{handler(t){const e=this.parse(t);this.x=(null==e?void 0:e.x)??0,this.y=(null==e?void 0:e.y)??0},immediate:!0}},methods:{focus(){var t;null==(t=this.$el.querySelector("button"))||t.focus()},getCoords:(t,e)=>({x:Math.min(Math.max(t.clientX-e.left,0),e.width),y:Math.min(Math.max(t.clientY-e.top,0),e.height)}),onDelete(){this.reset&&!this.required&&this.$emit("input",null)},onDrag(t){if(0!==t.button)return;const e=t=>this.onMove(t),i=()=>{window.removeEventListener("mousemove",e),window.removeEventListener("mouseup",i)};window.addEventListener("mousemove",e),window.addEventListener("mouseup",i)},onEnter(){var t;null==(t=this.$el.form)||t.requestSubmit()},onInput(t,e){if(t.preventDefault(),t.stopPropagation(),this.disabled)return!1;this.x=Math.min(Math.max(parseFloat(e.x??this.x??0),0),100),this.y=Math.min(Math.max(parseFloat(e.y??this.y??0),0),100),this.$emit("input",{x:this.x,y:this.y})},onKeys(t){const e=t.shiftKey?10:1,i={ArrowUp:{y:this.y-e},ArrowDown:{y:this.y+e},ArrowLeft:{x:this.x-e},ArrowRight:{x:this.x+e}};i[t.key]&&this.onInput(t,i[t.key])},async onMove(t){const e=this.$el.getBoundingClientRect(),i=this.getCoords(t,e),n=i.x/e.width*100,s=i.y/e.height*100;this.onInput(t,{x:n,y:s}),await this.$nextTick(),this.focus()},parse(t){if("object"==typeof t)return t;const e={"top left":{x:0,y:0},"top center":{x:50,y:0},"top right":{x:100,y:0},"center left":{x:0,y:50},center:{x:50,y:50},"center center":{x:50,y:50},"center right":{x:100,y:50},"bottom left":{x:0,y:100},"bottom center":{x:50,y:100},"bottom right":{x:100,y:100}};if(e[t])return e[t];const i=t.split(",").map((t=>t.trim()));return{x:i[0],y:i[1]??0}}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-coords-input",attrs:{"aria-disabled":t.disabled,"data-empty":!t.value},on:{mousedown:t.onDrag,click:t.onMove,keydown:t.onKeys}},[t._t("default"),e("button",{staticClass:"k-coords-input-thumb",style:{left:`${t.x}%`,top:`${t.y}%`},attrs:{id:t.id,autofocus:t.autofocus,disabled:t.disabled},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.onEnter.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:t.onDelete.apply(null,arguments)}]}}),e("input",{staticClass:"input-hidden",attrs:{name:t.name,required:t.required,tabindex:"-1",type:"text"},domProps:{value:t.value?[t.value.x,t.value.y]:null}})],2)}),[],!1,null,null,null,null).exports,Qs={mixins:[ds],props:{max:{default:360,type:Number},min:{default:0,type:Number},step:{default:1,type:Number},tooltip:{default:!1,type:[Boolean,Object]}}};const to=at({mixins:[ps,Qs]},(function(){var t=this;return(0,t._self._c)("k-range-input",t._b({staticClass:"k-hue-input",on:{input:function(e){return t.$emit("input",e)}}},"k-range-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const eo=at({extends:Xn,mixins:[{mixins:[Gn],props:{accept:{default:"string",type:String}}}]},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-multiselect-input"},[e("k-tags",t._b({ref:"tags",on:{input:function(e){return t.$emit("input",e)}},nativeOn:{click:function(t){t.stopPropagation()}}},"k-tags",t.$props,!1))],1)}),[],!1,null,null,null,null).exports;const io=at({mixins:[qi,{mixins:[Bi],props:{autocomplete:{default:"off"},placeholder:{default:()=>window.panel.$t("search")+" …",type:String},spellcheck:{default:!1}}}]},(function(){var t=this;return(0,t._self._c)("k-string-input",t._b({staticClass:"k-search-input",attrs:{type:"search"},on:{input:function(e){return t.$emit("input",e)}}},"k-string-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const no=at({mixins:[Ii,{mixins:[ji]}],props:{display:{type:String,default:"HH:mm"},value:String},computed:{day(){return this.formatTimes([6,7,8,9,10,11,"-",12,13,14,15,16,17])},night(){return this.formatTimes([18,19,20,21,22,23,"-",0,1,2,3,4,5])}},methods:{focus(){this.$el.querySelector("button").focus()},formatTimes(t){return t.map((t=>{if("-"===t)return t;const e=this.$library.dayjs(t+":00","H:mm");return{display:e.format(this.display),select:e.toISO("time")}}))},select(t){this.$emit("input",t)}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-timeoptions-input"},[e("div",[e("h3",[e("k-icon",{attrs:{type:"sun"}}),t._v(" "),e("span",{staticClass:"sr-only"},[t._v(t._s(t.$t("day")))])],1),e("ul",t._l(t.day,(function(i,n){return e("li",{key:i.select},["-"===i?e("hr"):e("k-button",{attrs:{autofocus:t.autofocus&&0===n,disabled:t.disabled,selected:i.select===t.value&&"time"},on:{click:function(e){return t.select(i.select)}}},[t._v(" "+t._s(i.display)+" ")])],1)})),0)]),e("div",[e("h3",[e("k-icon",{attrs:{type:"moon"}}),t._v(" "),e("span",{staticClass:"sr-only"},[t._v(t._s(t.$t("night")))])],1),e("ul",t._l(t.night,(function(i){return e("li",{key:i.select},["-"===i?e("hr"):e("k-button",{attrs:{disabled:t.disabled,selected:i.select===t.value&&"time"},on:{click:function(e){return t.select(i.select)}}},[t._v(" "+t._s(i.display)+" ")])],1)})),0)])])}),[],!1,null,null,null,null).exports,so={install(t){t.component("k-alpha-input",Vs),t.component("k-calendar-input",Ks),t.component("k-checkbox-input",Js),t.component("k-checkboxes-input",Ei),t.component("k-choice-input",Ws),t.component("k-colorname-input",Ni),t.component("k-coloroptions-input",Gs),t.component("k-colorpicker-input",Xs),t.component("k-coords-input",Zs),t.component("k-date-input",Ri),t.component("k-email-input",Ki),t.component("k-hue-input",to),t.component("k-list-input",Vn),t.component("k-multiselect-input",eo),t.component("k-number-input",es),t.component("k-password-input",ls),t.component("k-radio-input",us),t.component("k-range-input",ps),t.component("k-search-input",io),t.component("k-select-input",fs),t.component("k-slug-input",bs),t.component("k-string-input",qi),t.component("k-tags-input",Xn),t.component("k-tel-input",ws),t.component("k-text-input",Hi),t.component("k-textarea-input",As),t.component("k-time-input",Is),t.component("k-timeoptions-input",no),t.component("k-toggle-input",Ls),t.component("k-toggles-input",qs),t.component("k-url-input",zs),t.component("k-writer-input",Yn),t.component("k-calendar",Ks),t.component("k-times",no)}};const oo=at({props:{attrs:[Array,Object],columns:Array,disabled:Boolean,endpoints:Object,fieldsetGroups:Object,fieldsets:Object,id:String,isSelected:Boolean,layouts:Array,settings:Object},computed:{options(){return[{click:()=>this.$emit("prepend"),icon:"angle-up",text:this.$t("insert.before")},{click:()=>this.$emit("append"),icon:"angle-down",text:this.$t("insert.after")},"-",{click:()=>this.openSettings(),icon:"settings",text:this.$t("settings"),when:!1===this.$helper.object.isEmpty(this.settings)},{click:()=>this.$emit("duplicate"),icon:"copy",text:this.$t("duplicate")},{click:()=>this.$emit("change"),disabled:1===this.layouts.length,icon:"dashboard",text:this.$t("field.layout.change")},"-",{click:()=>this.$emit("copy"),icon:"template",text:this.$t("copy")},{click:()=>this.$emit("paste"),icon:"download",text:this.$t("paste.after")},"-",{click:()=>this.remove(),icon:"trash",text:this.$t("field.layout.delete")}]},tabs(){let t=this.settings.tabs;for(const[e,i]of Object.entries(t))for(const n in i.fields)t[e].fields[n].endpoints={field:this.endpoints.field+"/fields/"+n,section:this.endpoints.section,model:this.endpoints.model};return t}},methods:{openSettings(){this.$panel.drawer.open({component:"k-form-drawer",props:{icon:"settings",tabs:this.tabs,title:this.$t("settings"),value:this.attrs},on:{input:t=>this.$emit("updateAttrs",t)}})},remove(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.layout.delete.confirm")},on:{submit:()=>{this.$emit("remove"),this.$panel.dialog.close()}}})}}},(function(){var t=this,e=t._self._c;return e("section",{staticClass:"k-layout",attrs:{"data-selected":t.isSelected,tabindex:"0"},on:{click:function(e){return t.$emit("select")}}},[e("k-grid",{staticClass:"k-layout-columns"},t._l(t.columns,(function(i,n){return e("k-layout-column",t._b({key:i.id,attrs:{endpoints:t.endpoints,"fieldset-groups":t.fieldsetGroups,fieldsets:t.fieldsets},on:{input:function(e){return t.$emit("updateColumn",{column:i,columnIndex:n,blocks:e})}}},"k-layout-column",i,!1))})),1),t.disabled?t._e():e("nav",{staticClass:"k-layout-toolbar"},[t.settings?e("k-button",{staticClass:"k-layout-toolbar-button",attrs:{title:t.$t("settings"),icon:"settings"},on:{click:t.openSettings}}):t._e(),e("k-button",{staticClass:"k-layout-toolbar-button",attrs:{icon:"angle-down"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:t.options,"align-x":"end"}}),e("k-sort-handle")],1)],1)}),[],!1,null,null,null,null).exports;const lo=at({props:{blocks:Array,endpoints:Object,fieldsetGroups:Object,fieldsets:Object,id:String,isSelected:Boolean,width:{type:String,default:"1/1"}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-column k-layout-column",style:"--width: "+t.width,attrs:{id:t.id,tabindex:"0"},on:{dblclick:function(e){return t.$refs.blocks.choose(t.blocks.length)}}},[e("k-blocks",{ref:"blocks",attrs:{endpoints:t.endpoints,"fieldset-groups":t.fieldsetGroups,fieldsets:t.fieldsets,value:t.blocks,group:"layout"},on:{input:function(e){return t.$emit("input",e)}},nativeOn:{dblclick:function(t){t.stopPropagation()}}})],1)}),[],!1,null,null,null,null).exports;const ro=at({props:{disabled:Boolean,empty:String,endpoints:Object,fieldsetGroups:Object,fieldsets:Object,layouts:Array,max:Number,selector:Object,settings:Object,value:Array},data(){return{current:null,nextIndex:null,rows:this.value,selected:null}},computed:{draggableOptions(){return{id:this._uid,handle:!0,list:this.rows}}},watch:{value(){this.rows=this.value}},methods:{copy(t,e){if(0===this.rows.length)return!1;const i=void 0!==e?this.rows[e]:this.rows;this.$helper.clipboard.write(JSON.stringify(i),t),this.$panel.notification.success({message:this.$t("copy.success",{count:i.length??1}),icon:"template"})},change(t,e){const i=e.columns.map((t=>t.width)),n=this.layouts.findIndex((t=>t.toString()===i.toString()));this.$panel.dialog.open({component:"k-layout-selector",props:{label:this.$t("field.layout.change"),layouts:this.layouts,selector:this.selector,value:this.layouts[n]},on:{submit:i=>{this.onChange(i,n,{rowIndex:t,layoutIndex:n,layout:e}),this.$panel.dialog.close()}}})},duplicate(t,e){const i=this.$helper.clone(e),n=this.updateIds(i);this.rows.splice(t+1,0,...n),this.save()},async onAdd(t){let e=await this.$api.post(this.endpoints.field+"/layout",{columns:t});this.rows.splice(this.nextIndex,0,e),this.save()},async onChange(t,e,i){if(e===this.layouts[i.layoutIndex])return;const n=i.layout,s=await this.$api.post(this.endpoints.field+"/layout",{attrs:n.attrs,columns:t}),o=n.columns.filter((t=>{var e;return(null==(e=null==t?void 0:t.blocks)?void 0:e.length)>0})),l=[];if(0===o.length)l.push(s);else{const t=Math.ceil(o.length/s.columns.length)*s.columns.length;for(let e=0;e{var n;return t.blocks=(null==(n=o[i+e])?void 0:n.blocks)??[],t})),t.columns.filter((t=>{var e;return null==(e=null==t?void 0:t.blocks)?void 0:e.length})).length&&l.push(t)}}this.rows.splice(i.rowIndex,1,...l),this.save()},async paste(t,e=this.rows.length){let i=await this.$api.post(this.endpoints.field+"/layout/paste",{json:this.$helper.clipboard.read(t)});i.length&&(this.rows.splice(e,0,...i),this.save()),this.$panel.notification.success({message:this.$t("paste.success",{count:i.length}),icon:"download"})},pasteboard(t){this.$panel.dialog.open({component:"k-block-pasteboard",on:{paste:e=>this.paste(e,t)}})},remove(t){const e=this.rows.findIndex((e=>e.id===t.id));-1!==e&&this.$delete(this.rows,e),this.save()},removeAll(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.layout.delete.confirm.all")},on:{submit:()=>{this.rows=[],this.save(),this.$panel.dialog.close()}}})},save(){this.$emit("input",this.rows)},select(t){if(this.nextIndex=t,1===this.layouts.length)return this.onAdd(this.layouts[0]);this.$panel.dialog.open({component:"k-layout-selector",props:{layouts:this.layouts,selector:this.selector,value:null},on:{submit:t=>{this.onAdd(t),this.$panel.dialog.close()}}})},updateAttrs(t,e){this.rows[t].attrs=e,this.save()},updateColumn(t){this.rows[t.index].columns[t.columnIndex].blocks=t.blocks,this.save()},updateIds(t){return!1===Array.isArray(t)&&(t=[t]),t.map((t=>(t.id=this.$helper.uuid(),t.columns=t.columns.map((t=>(t.id=this.$helper.uuid(),t.blocks=t.blocks.map((t=>(t.id=this.$helper.uuid(),t))),t))),t)))}}},(function(){var t=this,e=t._self._c;return e("div",[t.rows.length?[e("k-draggable",t._b({staticClass:"k-layouts",on:{sort:t.save}},"k-draggable",t.draggableOptions,!1),t._l(t.rows,(function(i,n){return e("k-layout",t._b({key:i.id,attrs:{disabled:t.disabled,endpoints:t.endpoints,"fieldset-groups":t.fieldsetGroups,fieldsets:t.fieldsets,"is-selected":t.selected===i.id,layouts:t.layouts,settings:t.settings},on:{append:function(e){return t.select(n+1)},change:function(e){return t.change(n,i)},copy:function(e){return t.copy(e,n)},duplicate:function(e){return t.duplicate(n,i)},paste:function(e){return t.pasteboard(n+1)},prepend:function(e){return t.select(n)},remove:function(e){return t.remove(i)},select:function(e){t.selected=i.id},updateAttrs:function(e){return t.updateAttrs(n,e)},updateColumn:function(e){return t.updateColumn({layout:i,index:n,...e})}}},"k-layout",i,!1))})),1)]:e("k-empty",{staticClass:"k-layout-empty",attrs:{icon:"dashboard"},on:{click:function(e){return t.select(0)}}},[t._v(" "+t._s(t.empty??t.$t("field.layout.empty"))+" ")])],2)}),[],!1,null,null,null,null).exports;const ao=at({mixins:[Et],inheritAttrs:!1,props:{cancelButton:{default:!1},label:{default(){return this.$t("field.layout.select")},type:String},layouts:{type:Array},selector:Object,submitButton:{default:!1},value:{type:Array}}},(function(){var t,e,i=this,n=i._self._c;return n("k-dialog",i._b({staticClass:"k-layout-selector",attrs:{size:(null==(t=i.selector)?void 0:t.size)??"medium"},on:{cancel:function(t){return i.$emit("cancel")},submit:function(t){return i.$emit("submit",i.value)}}},"k-dialog",i.$props,!1),[n("h3",{staticClass:"k-label"},[i._v(i._s(i.label))]),n("k-navigate",{staticClass:"k-layout-selector-options",style:"--columns:"+Number((null==(e=i.selector)?void 0:e.columns)??3),attrs:{axis:"x"}},i._l(i.layouts,(function(t,e){return n("button",{key:e,staticClass:"k-layout-selector-option",attrs:{"aria-current":i.value===t,"aria-label":t.join(","),value:t},on:{click:function(e){return i.$emit("input",t)}}},[n("k-grid",{attrs:{"aria-hidden":""}},i._l(t,(function(t,e){return n("k-column",{key:e,attrs:{width:t}})})),1)],1)})),0)],1)}),[],!1,null,null,null,null).exports,uo={install(t){t.component("k-layout",oo),t.component("k-layout-column",lo),t.component("k-layouts",ro),t.component("k-layout-selector",ao)}},co={inheritAttrs:!1,props:{column:{default:()=>({}),type:Object},field:{default:()=>({}),type:Object},value:{}}},po={props:{html:{type:Boolean}}};const ho=at({mixins:[po],inheritAttrs:!1,props:{bubbles:[Array,String]},computed:{items(){let t=this.bubbles;return"string"==typeof t&&(t=t.split(",")),t.map((t=>"string"===t?{text:t}:t))}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-bubbles"},t._l(t.items,(function(i,n){return e("li",{key:n},[e("k-bubble",t._b({attrs:{html:t.html}},"k-bubble",i,!1))],1)})),0)}),[],!1,null,null,null,null).exports;const mo=at({mixins:[co,po],props:{value:{default:()=>[],type:[Array,String]}},computed:{bubbles(){let t=this.value;const e=this.column.options??this.field.options??[];return"string"==typeof t&&(t=t.split(",")),(t??[]).map((t=>{"string"==typeof t&&(t={value:t,text:t});for(const i of e)i.value===t.value&&(t.text=i.text);return t}))}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-bubbles-field-preview",class:t.$options.class},[e("k-bubbles",{attrs:{bubbles:t.bubbles,html:t.html}})],1)}),[],!1,null,null,null,null).exports;const fo=at({extends:mo,inheritAttrs:!1,class:"k-array-field-preview",computed:{bubbles(){return[{text:1===this.value.length?`1 ${this.$t("entry")}`:`${this.value.length} ${this.$t("entries")}`}]}}},null,null,!1,null,null,null,null).exports;const go=at({mixins:[co],props:{value:String},computed:{text(){var t;if(!this.value)return;const e=this.$library.colors.toString(this.value,this.field.format,this.field.alpha),i=null==(t=this.field.options)?void 0:t.find((t=>this.$library.colors.toString(t.value,this.field.format,this.field.alpha)===e));return i?i.text:null}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-color-field-preview"},[e("k-color-frame",{attrs:{color:t.value}}),t.text?[t._v(" "+t._s(t.text)+" ")]:t._e()],2)}),[],!1,null,null,null,null).exports;const ko=at({mixins:[co],inheritAttrs:!1,computed:{text(){return this.value}}},(function(){var t=this;return(0,t._self._c)("p",{staticClass:"k-text-field-preview",class:t.$options.class},[t._v(" "+t._s(t.column.before)+" "),t._t("default",(function(){return[t._v(t._s(t.text))]})),t._v(" "+t._s(t.column.after)+" ")],2)}),[],!1,null,null,null,null).exports;const bo=at({extends:ko,props:{value:String},class:"k-date-field-preview",computed:{display(){return this.column.display??this.field.display},format(){var t;let e=this.display??"YYYY-MM-DD";return(null==(t=this.time)?void 0:t.display)&&(e+=" "+this.time.display),e},parsed(){return this.$library.dayjs(this.value)},text(){var t;return null==(t=this.parsed)?void 0:t.format(this.format)},time(){return this.column.time??this.field.time}}},null,null,!1,null,null,null,null).exports;const vo=at({mixins:[co],props:{value:[String,Object]},computed:{link(){return"object"==typeof this.value?this.value.href:this.value},text(){return"object"==typeof this.value?this.value.text:this.link}}},(function(){var t=this,e=t._self._c;return e("p",{staticClass:"k-url-field-preview",class:t.$options.class,attrs:{"data-link":t.link}},[t._v(" "+t._s(t.column.before)+" "),e("k-link",{attrs:{to:t.link},nativeOn:{click:function(t){t.stopPropagation()}}},[e("span",[t._v(t._s(t.text))])]),t._v(" "+t._s(t.column.after)+" ")],1)}),[],!1,null,null,null,null).exports;const yo=at({extends:vo,class:"k-email-field-preview"},null,null,!1,null,null,null,null).exports;const $o=at({extends:mo,class:"k-files-field-preview",props:{html:{type:Boolean,default:!0}},computed:{bubbles(){return this.value.map((t=>({text:t.filename,link:t.link,image:t.image})))}}},null,null,!1,null,null,null,null).exports;const wo=at({mixins:[co],props:{value:Object},computed:{status(){var t;return{...this.$helper.page.status(null==(t=this.value)?void 0:t.status),...this.value}}}},(function(){var t=this,e=t._self._c;return t.value?e("k-button",t._b({staticClass:"k-flag-field-preview",attrs:{size:"md"}},"k-button",t.status,!1)):t._e()}),[],!1,null,null,null,null).exports;const xo=at({mixins:[co],props:{value:String},computed:{html(){return this.value}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-html-field-preview",class:t.$options.class},[t._v(" "+t._s(t.column.before)+" "),e("k-text",{attrs:{html:t.html}}),t._v(" "+t._s(t.column.after)+" ")],1)}),[],!1,null,null,null,null).exports;const _o=at({mixins:[co],props:{value:[Object]}},(function(){var t=this,e=t._self._c;return t.value?e("k-item-image",{staticClass:"k-image-field-preview",attrs:{image:t.value}}):t._e()}),[],!1,null,null,null,null).exports;const So=at({extends:mo,class:"k-object-field-preview",props:{value:[Array,Object]},computed:{bubbles(){return this.value?[{text:"{ ... }"}]:[]}}},null,null,!1,null,null,null,null).exports;const Co=at({extends:mo,inheritAttrs:!1,class:"k-pages-field-preview",props:{html:{type:Boolean,default:!0}}},null,null,!1,null,null,null,null).exports;const Oo=at({extends:bo,class:"k-time-field-preview",computed:{format(){return this.display??"HH:mm"},parsed(){return this.$library.dayjs.iso(this.value,"time")},text(){var t;return null==(t=this.parsed)?void 0:t.format(this.format)}}},null,null,!1,null,null,null,null).exports;const Ao=at({mixins:[co],computed:{text(){return!1!==this.column.text?this.field.text:null}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-toggle-field-preview"},[e("k-toggle-input",{attrs:{text:t.text,value:t.value},on:{input:function(e){return t.$emit("input",e)}},nativeOn:{click:function(t){t.stopPropagation()}}})],1)}),[],!1,null,null,null,null).exports;const Mo=at({extends:mo,class:"k-users-field-preview",computed:{bubble(){return this.value.map((t=>({text:t.username,link:t.link,image:t.image})))}}},null,null,!1,null,null,null,null).exports,jo={install(t){t.component("k-array-field-preview",fo),t.component("k-bubbles-field-preview",mo),t.component("k-color-field-preview",go),t.component("k-date-field-preview",bo),t.component("k-email-field-preview",yo),t.component("k-files-field-preview",$o),t.component("k-flag-field-preview",wo),t.component("k-html-field-preview",xo),t.component("k-image-field-preview",_o),t.component("k-object-field-preview",So),t.component("k-pages-field-preview",Co),t.component("k-text-field-preview",ko),t.component("k-toggle-field-preview",Ao),t.component("k-time-field-preview",Oo),t.component("k-url-field-preview",vo),t.component("k-users-field-preview",Mo),t.component("k-list-field-preview",xo),t.component("k-writer-field-preview",xo),t.component("k-checkboxes-field-preview",mo),t.component("k-multiselect-field-preview",mo),t.component("k-radio-field-preview",mo),t.component("k-select-field-preview",mo),t.component("k-tags-field-preview",mo),t.component("k-toggles-field-preview",mo)}};const Io=at({mixins:[{props:{buttons:{type:Array,default:()=>[]},theme:{type:String,default:"light"}}}],methods:{close(){for(const t in this.$refs){const e=this.$refs[t][0];"function"==typeof(null==e?void 0:e.close)&&e.close()}}}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-toolbar",attrs:{"data-theme":t.theme}},[t._l(t.buttons,(function(i,n){var s;return["|"===i?e("hr",{key:n}):i.when??1?e("k-button",{key:n,class:["k-toolbar-button",i.class],attrs:{current:i.current,disabled:i.disabled,icon:i.icon,title:i.label,tabindex:"0"},on:{click:function(e){var s,o;(null==(s=i.dropdown)?void 0:s.length)?t.$refs[n+"-dropdown"][0].toggle():null==(o=i.click)||o.call(i,e)}},nativeOn:{keydown:function(t){var e;null==(e=i.key)||e.call(i,t)}}}):t._e(),(i.when??1)&&(null==(s=i.dropdown)?void 0:s.length)?e("k-dropdown-content",{key:n+"-dropdown",ref:n+"-dropdown",refInFor:!0,attrs:{options:i.dropdown,theme:"dark"===t.theme?"light":"dark"}}):t._e()]}))],2)}),[],!1,null,null,null,null).exports;const To=at({extends:Bt,methods:{submit(){const t=this.values.href??"",e=this.values.title??"";return this.$panel.config.kirbytext?(null==e?void 0:e.length)>0?this.$emit("submit",`(email: ${t} text: ${e})`):this.$emit("submit",`(email: ${t})`):(null==e?void 0:e.length)>0?this.$emit("submit",`[${e}](mailto:${t})`):this.$emit("submit",`<${t}>`)}}},null,null,!1,null,null,null,null).exports;const Eo=at({extends:Vt,props:{fields:{default:()=>({href:{label:window.panel.$t("link"),type:"link",placeholder:window.panel.$t("url.placeholder"),icon:"url"},title:{label:window.panel.$t("link.text"),type:"text",icon:"title"}})}},methods:{submit(){const t=this.values.href??"",e=this.values.title??"";return this.$panel.config.kirbytext?(null==e?void 0:e.length)>0?this.$emit("submit",`(link: ${t} text: ${e})`):this.$emit("submit",`(link: ${t})`):(null==e?void 0:e.length)>0?this.$emit("submit",`[${e}](${t})`):this.$emit("submit",`<${t}>`)}}},null,null,!1,null,null,null,null).exports,Lo={install(t){t.component("k-toolbar",Io),t.component("k-textarea-toolbar",Cs),t.component("k-toolbar-email-dialog",To),t.component("k-toolbar-link-dialog",Eo)}};const Do=at({props:{editor:{required:!0,type:Object},inline:{default:!0,type:Boolean},marks:{default:()=>["bold","italic","underline","strike","code","|","link","email","|","clear"],type:[Array,Boolean]},nodes:{default:!0,type:[Array,Boolean]}},data:()=>({isOpen:!1,position:{x:0,y:0}}),computed:{activeNode(){return Object.values(this.nodeButtons).find((t=>this.isNodeActive(t)))??!1},buttons(){var t,e,i;const n=[];if(this.hasNodes){const s=[];let o=0;for(const n in this.nodeButtons){const l=this.nodeButtons[n];s.push({current:(null==(t=this.activeNode)?void 0:t.id)===l.id,disabled:!1===(null==(i=null==(e=this.activeNode)?void 0:e.when)?void 0:i.includes(l.name)),icon:l.icon,label:l.label,click:()=>this.command(l.command??n)}),!0===l.separator&&o!==Object.keys(this.nodeButtons).length-1&&s.push("-"),o++}n.push({current:Boolean(this.activeNode),icon:this.activeNode.icon??"title",dropdown:s})}if(this.hasNodes&&this.hasMarks&&n.push("|"),this.hasMarks)for(const s in this.markButtons){const t=this.markButtons[s];"|"!==t?n.push({current:this.editor.activeMarks.includes(s),icon:t.icon,label:t.label,click:e=>this.command(t.command??s,e)}):n.push("|")}return n},hasMarks(){return this.$helper.object.length(this.markButtons)>0},hasNodes(){return this.$helper.object.length(this.nodeButtons)>1},markButtons(){const t=this.editor.buttons("mark");if(!1===this.marks||0===this.$helper.object.length(t))return{};if(!0===this.marks)return t;const e={};for(const[i,n]of this.marks.entries())"|"===n?e["divider"+i]="|":t[n]&&(e[n]=t[n]);return e},nodeButtons(){const t=this.editor.buttons("node");if(!1===this.nodes||0===this.$helper.object.length(t))return{};if("block+"!==this.editor.nodes.doc.content&&t.paragraph&&delete t.paragraph,!0===this.nodes)return t;const e={};for(const i of this.nodes)t[i]&&(e[i]=t[i]);return e}},methods:{close(t){t&&!1!==this.$el.contains(t.relatedTarget)||(this.isOpen=!1)},command(t,...e){this.$emit("command",t,...e)},isNodeActive(t){if(!1===this.editor.activeNodes.includes(t.name))return!1;if("paragraph"===t.name)return!1===this.editor.activeNodes.includes("listItem")&&!1===this.editor.activeNodes.includes("quote");if(t.attrs){if(void 0===Object.values(this.editor.activeNodeAttrs).find((e=>JSON.stringify(e)===JSON.stringify(t.attrs))))return!1}return!0},open(){this.isOpen=!0,this.inline&&this.$nextTick(this.setPosition)},setPosition(){const t=this.$el.getBoundingClientRect(),e=this.editor.element.getBoundingClientRect(),i=document.querySelector(".k-panel-menu").getBoundingClientRect(),{from:n,to:s}=this.editor.selection,o=this.editor.view.coordsAtPos(n),l=this.editor.view.coordsAtPos(s,!0),r=new DOMRect(o.left,o.top,l.right-o.left,l.bottom-o.top);let a=r.x-e.x+r.width/2-t.width/2,u=r.y-e.y-t.height-5;if(t.widthe.width&&(a=e.width-t.width);else{const n=e.x+a,s=n+t.width,o=i.width+20,l=20;nwindow.innerWidth-l&&(a-=s-(window.innerWidth-l))}this.position={x:a,y:u}}}},(function(){var t=this,e=t._self._c;return t.isOpen||!t.inline?e("k-toolbar",{ref:"toolbar",staticClass:"k-writer-toolbar",style:{top:t.position.y+"px",left:t.position.x+"px"},attrs:{buttons:t.buttons,"data-inline":t.inline,theme:t.inline?"dark":"light"}}):t._e()}),[],!1,null,null,null,null).exports,Bo={install(t){t.component("k-writer-toolbar",Do),t.component("k-writer",Fn)}},qo={install(t){customElements.define("k-autosize",Ee),t.component("k-counter",De),t.component("k-autocomplete",Le),t.component("k-form",Be),t.component("k-form-buttons",qe),t.component("k-field",Ne),t.component("k-fieldset",ze),t.component("k-input",Re),t.component("k-login",Ye),t.component("k-login-code",Ue),t.component("k-selector",je),t.component("k-upload",He),t.component("k-login-alert",Ve),t.component("k-structure-form",Ke),t.use(Ai),t.use(so),t.use(Us),t.use(uo),t.use(jo),t.use(Lo),t.use(Bo)}},Po=()=>F((()=>import("./IndexView.min.js")),["./IndexView.min.js","./vendor.min.js"],import.meta.url),No=()=>F((()=>import("./DocsView.min.js")),["./DocsView.min.js","./Docs.min.js","./vendor.min.js"],import.meta.url),zo=()=>F((()=>import("./PlaygroundView.min.js")),["./PlaygroundView.min.js","./Docs.min.js","./vendor.min.js"],import.meta.url),Fo={install(t){t.component("k-lab-index-view",Po),t.component("k-lab-docs-view",No),t.component("k-lab-playground-view",zo)}};const Ro=at({props:{cover:Boolean,ratio:String},computed:{ratioPadding(){return this.$helper.ratio(this.ratio)}},created(){window.panel.deprecated(" will be removed in a future version. Use the instead.")}},(function(){var t=this;return(0,t._self._c)("span",{staticClass:"k-aspect-ratio",style:{"padding-bottom":t.ratioPadding},attrs:{"data-cover":t.cover}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Yo=at({props:{align:{type:String,default:"start"}},mounted(){(this.$slots.left||this.$slots.center||this.$slots.right)&&window.panel.deprecated(": left/centre/right slots will be removed in a future version. Use with default slot only instead.")}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-bar",attrs:{"data-align":t.align}},[t.$slots.left||t.$slots.center||t.$slots.right?[t.$slots.left?e("div",{staticClass:"k-bar-slot",attrs:{"data-position":"left"}},[t._t("left")],2):t._e(),t.$slots.center?e("div",{staticClass:"k-bar-slot",attrs:{"data-position":"center"}},[t._t("center")],2):t._e(),t.$slots.right?e("div",{staticClass:"k-bar-slot",attrs:{"data-position":"right"}},[t._t("right")],2):t._e()]:t._t("default")],2)}),[],!1,null,null,null,null).exports;const Uo=at({props:{align:{type:String,default:"start"},button:Boolean,height:String,icon:String,theme:{type:String},text:String,html:{type:Boolean}},computed:{element(){return this.button?"button":"div"},type(){return this.button?"button":null}}},(function(){var t=this,e=t._self._c;return e(t.element,{tag:"component",staticClass:"k-box",style:t.height?"--box-height: "+t.height:null,attrs:{"data-align":t.align,"data-theme":t.theme,type:t.type}},[t.icon?e("k-icon",{attrs:{type:t.icon}}):t._e(),t._t("default",(function(){return[t.html?e("k-text",{attrs:{html:t.text}}):e("k-text",[t._v(" "+t._s(t.text)+" ")])]}),null,{html:t.html,text:t.text})],2)}),[],!1,null,null,null,null).exports;const Ho=at({inheritAttrs:!1,props:{back:String,color:String,element:{type:String,default:"li"},html:{type:Boolean},image:Object,link:String,text:String},created(){this.back&&window.panel.deprecated(": `back` prop will be removed in a future version. Use the `--bubble-back` CSS property instead."),this.color&&window.panel.deprecated(": `color` prop will be removed in a future version. Use the `--bubble-text` CSS property instead.")}},(function(){var t=this,e=t._self._c;return e(t.link?"k-link":"p",{tag:"component",staticClass:"k-bubble",style:{color:t.$helper.color(t.color),background:t.$helper.color(t.back)},attrs:{to:t.link,"data-has-text":Boolean(t.text)},nativeOn:{click:function(t){t.stopPropagation()}}},[t._t("image",(function(){var i;return[(null==(i=t.image)?void 0:i.src)?e("k-image-frame",t._b({},"k-image-frame",t.image,!1)):t.image?e("k-icon-frame",t._b({},"k-icon-frame",t.image,!1)):e("span")]})),t.text?[t.html?e("span",{staticClass:"k-bubble-text",domProps:{innerHTML:t._s(t.text)}}):e("span",{staticClass:"k-bubble-text"},[t._v(t._s(t.text))])]:t._e()],2)}),[],!1,null,null,null,null).exports;const Vo=at({props:{width:{type:String,default:"1/1"},sticky:Boolean}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-column",style:"--width:"+t.width,attrs:{"data-sticky":t.sticky}},[t.sticky?e("div",[t._t("default")],2):t._t("default")],2)}),[],!1,null,null,null,null).exports,Ko={props:{element:{type:String,default:"div"},fit:String,ratio:String,cover:Boolean,back:String,theme:String}};const Wo=at({mixins:[Ko],inheritAttrs:!1,computed:{background(){return this.$helper.color(this.back)}}},(function(){var t=this;return(0,t._self._c)(t.element,{tag:"compontent",staticClass:"k-frame",style:{"--fit":t.fit??(t.cover?"cover":"contain"),"--ratio":t.ratio,"--back":t.background},attrs:{"data-theme":t.theme}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Jo=at({mixins:[{mixins:[Ko],props:{color:String}}],inheritAttrs:!1},(function(){var t=this;return(0,t._self._c)("k-frame",t._b({staticClass:"k-color-frame",style:`color: ${t.color}`},"k-frame",t.$props,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Go=at({props:{disabled:{type:Boolean}},emits:["drop"],data:()=>({files:[],dragging:!1,over:!1}),methods:{cancel(){this.reset()},reset(){this.dragging=!1,this.over=!1},onDrop(t){return!0===this.disabled||!1===this.$helper.isUploadEvent(t)?this.reset():(this.$events.emit("dropzone.drop"),this.files=t.dataTransfer.files,this.$emit("drop",this.files),void this.reset())},onEnter(t){!1===this.disabled&&this.$helper.isUploadEvent(t)&&(this.dragging=!0)},onLeave(){this.reset()},onOver(t){!1===this.disabled&&this.$helper.isUploadEvent(t)&&(t.dataTransfer.dropEffect="copy",this.over=!0)}}},(function(){var t=this;return(0,t._self._c)("div",{staticClass:"k-dropzone",attrs:{"data-dragging":t.dragging,"data-over":t.over},on:{dragenter:t.onEnter,dragleave:t.onLeave,dragover:t.onOver,drop:t.onDrop}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Xo=at({props:{gutter:String,variant:String},created(){this.gutter&&window.panel.deprecated(': the `gutter` prop will be removed in a future version. Use `style="gap: "` or `variant` prop instead.')}},(function(){var t=this;return(0,t._self._c)("div",{staticClass:"k-grid",attrs:{"data-gutter":t.gutter,"data-variant":t.variant}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Zo=at({props:{editable:{type:Boolean}},created(){(this.$slots.left||this.$slots.right)&&window.panel.deprecated(": left/right slots will be removed in a future version. Use `buttons` slot instead.")}},(function(){var t=this,e=t._self._c;return e("header",{staticClass:"k-header",attrs:{"data-has-buttons":Boolean(t.$slots.buttons||t.$slots.left||t.$slots.right)}},[e("h1",{staticClass:"k-header-title"},[t.editable?e("button",{staticClass:"k-header-title-button",attrs:{type:"button"},on:{click:function(e){return t.$emit("edit")}}},[e("span",{staticClass:"k-header-title-text"},[t._t("default")],2),e("span",{staticClass:"k-header-title-icon"},[e("k-icon",{attrs:{type:"edit"}})],1)]):e("span",{staticClass:"k-header-title-text"},[t._t("default")],2)]),t.$slots.buttons||t.$slots.left||t.$slots.right?e("div",{staticClass:"k-header-buttons"},[t._t("buttons"),t._t("left"),t._t("right")],2):t._e()])}),[],!1,null,null,null,null).exports,Qo={props:{alt:String,color:String,type:String}};const tl=at({mixins:[Qo]},(function(){var t=this,e=t._self._c;return e("svg",{staticClass:"k-icon",style:{color:t.$helper.color(t.color)},attrs:{"aria-label":t.alt,role:t.alt?"img":null,"aria-hidden":!t.alt,"data-type":t.type}},[e("use",{attrs:{"xlink:href":"#icon-"+t.type}})])}),[],!1,null,null,null,null).exports;const el=at({mixins:[{mixins:[Ko,Qo],props:{type:null,icon:String}}],inheritAttrs:!1,computed:{isEmoji(){return this.$helper.string.hasEmoji(this.icon)}}},(function(){var t=this,e=t._self._c;return e("k-frame",t._b({staticClass:"k-icon-frame",attrs:{element:"figure"}},"k-frame",t.$props,!1),[t.isEmoji?e("span",{attrs:{"data-type":"emoji"}},[t._v(t._s(t.icon))]):e("k-icon",t._b({},"k-icon",{color:t.color,type:t.icon,alt:t.alt},!1))],1)}),[],!1,null,null,null,null).exports;const il=at({mixins:[{mixins:[Ko],props:{alt:String,sizes:String,src:String,srcset:String}}],inheritAttrs:!1},(function(){var t=this,e=t._self._c;return e("k-frame",t._g(t._b({staticClass:"k-image-frame k-image",attrs:{element:"figure"}},"k-frame",t.$props,!1),t.$listeners),[t.src?e("img",{key:t.src,attrs:{alt:t.alt??"",src:t.src,srcset:t.srcset,sizes:t.sizes},on:{dragstart:function(t){t.preventDefault()}}}):t._e()])}),[],!1,null,null,null,null).exports;const nl=at({mixins:[{props:{autofocus:{default:!0,type:Boolean},nested:{default:!1,type:Boolean},type:{default:"overlay",type:String},visible:{default:!1,type:Boolean}}}],inheritAttrs:!0,watch:{visible(t,e){t!==e&&this.toggle()}},mounted(){this.toggle()},methods:{cancel(){this.$emit("cancel"),this.close()},close(){if(!1!==this.$refs.overlay.open)return this.nested?this.onClose():void this.$refs.overlay.close()},focus(){this.$helper.focus(this.$refs.overlay)},onCancel(t){this.nested&&(t.preventDefault(),this.cancel())},onClick(t){t.target.matches(".k-portal")&&this.cancel()},onClose(){this.$emit("close")},open(){!0!==this.$refs.overlay.open&&this.$refs.overlay.showModal(),setTimeout((()=>{!0===this.autofocus&&this.focus(),this.$emit("open")}))},toggle(){!0===this.visible?this.open():this.close()}}},(function(){var t=this;return(0,t._self._c)("dialog",{ref:"overlay",staticClass:"k-overlay",attrs:{"data-type":t.type},on:{cancel:t.onCancel,mousedown:t.onClick,touchdown:t.onClick,close:t.onClose}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const sl=at({props:{label:{type:String},value:{type:String},info:{type:String},theme:{type:String},link:{type:String},click:{type:Function},dialog:{type:[String,Object]}},computed:{component(){return null!==this.target?"k-link":"div"},target(){return this.link?this.link:this.click?this.click:this.dialog?()=>this.$dialog(this.dialog):null}}},(function(){var t=this,e=t._self._c;return e(t.component,{tag:"component",staticClass:"k-stat",attrs:{"data-theme":t.theme,to:t.target}},[t.label?e("dt",{staticClass:"k-stat-label"},[t._v(t._s(t.label))]):t._e(),t.value?e("dd",{staticClass:"k-stat-value"},[t._v(t._s(t.value))]):t._e(),t.info?e("dd",{staticClass:"k-stat-info"},[t._v(t._s(t.info))]):t._e()])}),[],!1,null,null,null,null).exports;const ol=at({props:{reports:{type:Array,default:()=>[]},size:{type:String,default:"large"}},methods:{component(t){return null!==this.target(t)?"k-link":"div"},target(t){return t.link?t.link:t.click?t.click:t.dialog?()=>this.$dialog(t.dialog):null}}},(function(){var t=this,e=t._self._c;return e("dl",{staticClass:"k-stats",attrs:{"data-size":t.size}},t._l(t.reports,(function(i,n){return e("k-stat",t._b({key:n},"k-stat",i,!1))})),1)}),[],!1,null,null,null,null).exports;const ll=at({inheritAttrs:!1,props:{columns:{type:Object,default:()=>({})},disabled:Boolean,fields:{type:Object,default:()=>({})},empty:String,index:{type:[Number,Boolean],default:1},rows:Array,options:{default:()=>[],type:[Array,Function]},pagination:[Object,Boolean],sortable:Boolean},data(){return{values:this.rows}},computed:{colspan(){let t=this.columnsCount;return this.hasIndexColumn&&t++,this.hasOptions&&t++,t},columnsCount(){return this.$helper.object.length(this.columns)},dragOptions(){return{disabled:!this.sortable,fallbackClass:"k-table-row-fallback",ghostClass:"k-table-row-ghost"}},hasIndexColumn(){return this.sortable||!1!==this.index},hasOptions(){var t;return this.$scopedSlots.options||(null==(t=this.options)?void 0:t.length)>0||Object.values(this.values).filter((t=>null==t?void 0:t.options)).length>0}},watch:{rows(){this.values=this.rows}},methods:{isColumnEmpty(t){return 0===this.rows.filter((e=>!1===this.$helper.object.isEmpty(e[t]))).length},label(t,e){return t.label??this.$helper.string.ucfirst(e)},onChange(t){this.$emit("change",t)},onCell(t){this.$emit("cell",t)},onCellUpdate({columnIndex:t,rowIndex:e,value:i}){this.values[e][t]=i,this.$emit("input",this.values)},onHeader(t){this.$emit("header",t)},onOption(t,e,i){this.$emit("option",t,e,i)},onSort(){this.$emit("input",this.values),this.$emit("sort",this.values)},width(t){return"string"!=typeof t?"auto":!1===t.includes("/")?t:this.$helper.ratio(t,"auto",!1)}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-table",attrs:{"aria-disabled":t.disabled}},[e("table",{attrs:{"data-disabled":t.disabled,"data-indexed":t.hasIndexColumn}},[e("thead",[e("tr",[t.hasIndexColumn?e("th",{staticClass:"k-table-index-column",attrs:{"data-mobile":""}},[t._v(" # ")]):t._e(),t._l(t.columns,(function(i,n){return e("th",{key:n+"-header",staticClass:"k-table-column",style:"width:"+t.width(i.width),attrs:{"data-align":i.align,"data-mobile":i.mobile},on:{click:function(e){return t.onHeader({column:i,columnIndex:n})}}},[t._t("header",(function(){return[t._v(" "+t._s(t.label(i,n))+" ")]}),null,{column:i,columnIndex:n,label:t.label(i,n)})],2)})),t.hasOptions?e("th",{staticClass:"k-table-options-column",attrs:{"data-mobile":""}}):t._e()],2)]),e("k-draggable",{attrs:{list:t.values,options:t.dragOptions,handle:!0,element:"tbody"},on:{change:t.onChange,end:t.onSort}},[0===t.rows.length?e("tr",[e("td",{staticClass:"k-table-empty",attrs:{colspan:t.colspan}},[t._v(" "+t._s(t.empty)+" ")])]):t._l(t.values,(function(i,n){return e("tr",{key:n},[t.hasIndexColumn?e("td",{staticClass:"k-table-index-column",attrs:{"data-sortable":t.sortable&&!1!==i.sortable,"data-mobile":""}},[t._t("index",(function(){return[e("div",{staticClass:"k-table-index",domProps:{textContent:t._s(t.index+n)}})]}),null,{row:i,rowIndex:n}),t.sortable&&!1!==i.sortable?e("k-sort-handle",{staticClass:"k-table-sort-handle"}):t._e()],2):t._e(),t._l(t.columns,(function(s,o){return e("k-table-cell",{key:n+"-"+o,staticClass:"k-table-column",style:"width:"+t.width(s.width),attrs:{column:s,field:t.fields[o],row:i,mobile:s.mobile,value:i[o]},on:{input:function(e){return t.onCellUpdate({columnIndex:o,rowIndex:n,value:e})}},nativeOn:{click:function(e){return t.onCell({row:i,rowIndex:n,column:s,columnIndex:o})}}})})),t.hasOptions?e("td",{staticClass:"k-table-options-column",attrs:{"data-mobile":""}},[t._t("options",(function(){return[e("k-options-dropdown",{attrs:{options:i.options??t.options,text:(i.options??t.options).length>1},on:{option:function(e){return t.onOption(e,i,n)}}})]}),null,{row:i,rowIndex:n})],2):t._e()],2)}))],2)],1),t.pagination?e("k-pagination",t._b({staticClass:"k-table-pagination",on:{paginate:function(e){return t.$emit("paginate",e)}}},"k-pagination",t.pagination,!1)):t._e()],1)}),[],!1,null,null,null,null).exports;const rl=at({inheritAttrs:!1,props:{column:Object,field:Object,mobile:{type:Boolean,default:!1},row:Object,value:{default:""}},computed:{component(){return this.$helper.isComponent(`k-${this.type}-field-preview`)?`k-${this.type}-field-preview`:this.$helper.isComponent(`k-table-${this.type}-cell`)?`k-table-${this.type}-cell`:Array.isArray(this.value)?"k-array-field-preview":"object"==typeof this.value?"k-object-field-preview":"k-text-field-preview"},type(){var t;return this.column.type??(null==(t=this.field)?void 0:t.type)}}},(function(){var t=this,e=t._self._c;return e("td",{staticClass:"k-table-cell",attrs:{"data-align":t.column.align,"data-mobile":t.mobile}},[!1===t.$helper.object.isEmpty(t.value)?e(t.component,{tag:"component",attrs:{column:t.column,field:t.field,row:t.row,value:t.value},on:{input:function(e){return t.$emit("input",e)}}}):t._e()],1)}),[],!1,null,null,null,null).exports;const al=at({props:{tab:String,tabs:{type:Array,default:()=>[]},theme:String},data(){return{observer:null,visible:this.tabs,invisible:[]}},computed:{current(){const t=this.tabs.find((t=>t.name===this.tab))??this.tabs[0];return null==t?void 0:t.name},dropdown(){return this.invisible.map(this.button)}},watch:{tabs:{async handler(){var t;null==(t=this.observer)||t.disconnect(),await this.$nextTick(),this.$el instanceof Element&&(this.observer=new ResizeObserver(this.resize),this.observer.observe(this.$el))},immediate:!0}},destroyed(){var t;null==(t=this.observer)||t.disconnect()},methods:{button(t){return{link:t.link,current:t.name===this.current,icon:t.icon,title:t.label,text:t.label??t.text??t.name}},async resize(){const t=this.$el.offsetWidth;this.visible=this.tabs,this.invisible=[],await this.$nextTick();const e=[...this.$refs.visible].map((t=>t.$el.offsetWidth));let i=32;for(let n=0;nt)return this.visible=this.tabs.slice(0,n),void(this.invisible=this.tabs.slice(n))}}},(function(){var t=this,e=t._self._c;return t.tabs.length>1?e("nav",{staticClass:"k-tabs"},[t._l(t.visible,(function(i){return e("k-button",t._b({key:i.name,ref:"visible",refInFor:!0,staticClass:"k-tab-button",attrs:{variant:"dimmed"}},"k-button",i=t.button(i),!1),[t._v(" "+t._s(i.text)+" "),i.badge?e("span",{staticClass:"k-tabs-badge",attrs:{"data-theme":t.theme}},[t._v(" "+t._s(i.badge)+" ")]):t._e()])})),t.invisible.length?[e("k-button",{staticClass:"k-tab-button k-tabs-dropdown-button",attrs:{current:!!t.invisible.find((e=>t.tab===e.name)),title:t.$t("more"),icon:"dots",variant:"dimmed"},on:{click:function(e){return e.stopPropagation(),t.$refs.more.toggle()}}}),e("k-dropdown-content",{ref:"more",staticClass:"k-tabs-dropdown",attrs:{options:t.dropdown,"align-x":"end"}})]:t._e()],2):t._e()}),[],!1,null,null,null,null).exports;const ul=at({props:{align:String},created(){window.panel.deprecated(" will be removed in a future version.")}},(function(){var t=this;return(0,t._self._c)("div",{staticClass:"k-view",attrs:{"data-align":t.align}},[t._t("default")],2)}),[],!1,null,null,null,null).exports,cl={install(t){t.component("k-aspect-ratio",Ro),t.component("k-bar",Yo),t.component("k-box",Uo),t.component("k-bubble",Ho),t.component("k-bubbles",ho),t.component("k-color-frame",Jo),t.component("k-column",Vo),t.component("k-dropzone",Go),t.component("k-frame",Wo),t.component("k-grid",Xo),t.component("k-header",Zo),t.component("k-icon-frame",el),t.component("k-image-frame",il),t.component("k-image",il),t.component("k-overlay",nl),t.component("k-stat",sl),t.component("k-stats",ol),t.component("k-table",ll),t.component("k-table-cell",rl),t.component("k-tabs",al),t.component("k-view",ul)}};const dl=at({components:{draggable:()=>F((()=>import("./vuedraggable.min.js")),[],import.meta.url)},props:{data:Object,element:{type:String,default:"div"},handle:[String,Boolean],list:[Array,Object],move:Function,options:Object},emits:["change","end","sort","start"],computed:{dragOptions(){let t=this.handle;return!0===t&&(t=".k-sort-handle"),{fallbackClass:"k-sortable-fallback",fallbackOnBody:!0,forceFallback:!0,ghostClass:"k-sortable-ghost",handle:t,scroll:document.querySelector(".k-panel-main"),...this.options}}},methods:{onStart(t){this.$panel.drag.start("data",{}),this.$emit("start",t)},onEnd(t){this.$panel.drag.stop(),this.$emit("end",t)}}},(function(){var t=this;return(0,t._self._c)("draggable",t._b({staticClass:"k-draggable",attrs:{"component-data":t.data,tag:t.element,list:t.list,move:t.move},on:{change:function(e){return t.$emit("change",e)},end:t.onEnd,sort:function(e){return t.$emit("sort",e)},start:t.onStart},scopedSlots:t._u([{key:"footer",fn:function(){return[t._t("footer")]},proxy:!0}],null,!0)},"draggable",t.dragOptions,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports;const pl=at({data:()=>({error:null}),errorCaptured(t){return this.$panel.debug&&window.console.warn(t),this.error=t,!1},render(){return this.error?this.$slots.error?this.$slots.error[0]:this.$scopedSlots.error?this.$scopedSlots.error({error:this.error}):Vue.h("k-box",{attrs:{theme:"negative"}},this.error.message??this.error):this.$slots.default[0]}},null,null,!1,null,null,null,null).exports;const hl=at({props:{html:String},mounted(){try{let t=this.$refs.iframe.contentWindow.document;t.open(),t.write(this.html),t.close()}catch(t){console.error(t)}}},(function(){var t=this,e=t._self._c;return e("k-overlay",{staticClass:"k-fatal",attrs:{visible:!0}},[e("div",{staticClass:"k-fatal-box"},[e("div",{staticClass:"k-notification",attrs:{"data-theme":"negative"}},[e("p",[t._v("The JSON response could not be parsed")]),e("k-button",{attrs:{icon:"cancel"},on:{click:function(e){return e.stopPropagation(),t.$panel.notification.close()}}})],1),e("iframe",{ref:"iframe",staticClass:"k-fatal-iframe"})])])}),[],!1,null,null,null,null).exports;const ml=at({icons:window.panel.plugins.icons,methods:{viewbox(t,e){const i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.innerHTML=e,document.body.appendChild(i);const n=i.getBBox(),s=(n.width+2*n.x+(n.height+2*n.y))/2,o=Math.abs(s-16),l=Math.abs(s-24);return document.body.removeChild(i),o element with the corresponding viewBox attribute.`),"0 0 16 16"):"0 0 24 24"}}},(function(){var t=this,e=t._self._c;return e("svg",{staticClass:"k-icons",attrs:{"aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",overflow:"hidden"}},[e("defs",t._l(t.$options.icons,(function(i,n){return e("symbol",{key:n,attrs:{id:"icon-"+n,viewBox:t.viewbox(n,i)},domProps:{innerHTML:t._s(i)}})})),0)])}),[],!1,null,null,null,null).exports;const fl=at({created(){window.panel.deprecated(' will be removed in a future version. Use instead.')}},(function(){var t=this._self._c;return t("span",{staticClass:"k-loader"},[t("k-icon",{staticClass:"k-loader-icon",attrs:{type:"loader"}})],1)}),[],!1,null,null,null,null).exports;const gl=at({},(function(){var t=this,e=t._self._c;return t.$panel.notification.isOpen?e("div",{staticClass:"k-notification",attrs:{"data-theme":t.$panel.notification.theme}},[e("p",[t._v(t._s(t.$panel.notification.message))]),e("k-button",{attrs:{icon:"cancel"},on:{click:function(e){return t.$panel.notification.close()}}})],1):t._e()}),[],!1,null,null,null,null).exports;const kl=at({},(function(){var t=this,e=t._self._c;return t.$panel.isOffline?e("div",{staticClass:"k-offline-warning"},[e("p",[e("k-icon",{attrs:{type:"bolt"}}),t._v(" "+t._s(t.$t("error.offline")))],1)]):t._e()}),[],!1,null,null,null,null).exports,bl=(t,e=!1)=>{if(t>=0&&t<=100)return!0;if(e)throw new Error("value has to be between 0 and 100");return!1};const vl=at({props:{value:{type:Number,default:0,validator:bl}},data(){return{state:this.value}},watch:{value(t){this.state=t}},methods:{set(t){window.panel.deprecated(": `set` method will be removed in a future version. Use the `value` prop instead."),bl(t,!0),this.state=t}}},(function(){var t=this;return(0,t._self._c)("progress",{staticClass:"k-progress",attrs:{max:"100"},domProps:{value:t.state}},[t._v(t._s(t.state)+"%")])}),[],!1,null,null,null,null).exports;const yl=at({},(function(){return(0,this._self._c)("k-button",{staticClass:"k-sort-handle k-sort-button",attrs:{title:this.$t("sort.drag"),icon:"sort","aria-hidden":"true"}})}),[],!1,null,null,null,null).exports,$l={install(t){t.component("k-draggable",dl),t.component("k-error-boundary",pl),t.component("k-fatal",hl),t.component("k-icon",tl),t.component("k-icons",ml),t.component("k-loader",fl),t.component("k-notification",gl),t.component("k-offline-warning",kl),t.component("k-progress",vl),t.component("k-sort-handle",yl)}};const wl=at({props:{crumbs:{type:Array,default:()=>[]},label:{type:String,default:"Breadcrumb"},view:Object},computed:{dropdown(){return this.segments.map((t=>({...t,text:t.label,icon:"angle-right"})))},segments(){const t=[];return this.view&&t.push({link:this.view.link,label:this.view.label??this.view.breadcrumbLabel,icon:this.view.icon,loading:this.$panel.isLoading}),[...t,...this.crumbs]}},created(){this.view&&window.panel.deprecated(": `view` prop will be removed in a future version. Use `crumbs` instead.")}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-breadcrumb",attrs:{"aria-label":t.label}},[t.segments.length>1?e("div",{staticClass:"k-breadcrumb-dropdown"},[e("k-button",{attrs:{icon:"home"},on:{click:function(e){return t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",attrs:{options:t.dropdown}})],1):t._e(),e("ol",t._l(t.segments,(function(i,n){return e("li",{key:n},[e("k-button",{staticClass:"k-breadcrumb-link",attrs:{icon:i.loading?"loader":i.icon,link:i.link,disabled:!i.link,text:i.text??i.label,title:i.text??i.label,current:n===t.segments.length-1&&"page",variant:"dimmed",size:"sm"}})],1)})),0)])}),[],!1,null,null,null,null).exports;const xl=at({props:{items:{type:Array},name:{default:"items",type:String},selected:{type:String},type:{default:"radio",type:String}}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-browser"},[e("div",{staticClass:"k-browser-items"},t._l(t.items,(function(i){return e("label",{key:i.value,staticClass:"k-browser-item",attrs:{"aria-selected":t.selected===i.value}},[e("input",{attrs:{name:t.name,type:t.type},domProps:{checked:t.selected===i.value},on:{change:function(e){return t.$emit("select",i)}}}),i.image?e("k-item-image",{staticClass:"k-browser-item-image",attrs:{image:{...i.image,cover:!0,back:"black"}}}):t._e(),e("span",{staticClass:"k-browser-item-info"},[t._v(" "+t._s(i.label)+" ")])],1)})),0)])}),[],!1,null,null,null,null).exports;const _l=at({inheritAttrs:!1,props:{autofocus:Boolean,click:{type:Function,default:()=>{}},current:[String,Boolean],dialog:String,disabled:Boolean,drawer:String,dropdown:Boolean,element:String,icon:String,id:[String,Number],link:String,responsive:[Boolean,String],rel:String,role:String,selected:[String,Boolean],size:String,target:String,tabindex:String,text:[String,Number],theme:String,title:String,tooltip:String,type:{type:String,default:"button"},variant:String},computed:{attrs(){const t={"aria-current":this.current,"aria-disabled":this.disabled,"aria-selected":this.selected,"data-responsive":this.responsive,"data-size":this.size,"data-theme":this.theme,"data-variant":this.variant,id:this.id,tabindex:this.tabindex,title:this.title??this.tooltip};return"k-link"===this.component?(t.disabled=this.disabled,t.to=this.link,t.rel=this.rel,t.role=this.role,t.target=this.target):"button"===this.component&&(t.autofocus=this.autofocus,t.type=this.type),this.dropdown&&(t["aria-haspopup"]="menu",t["data-dropdown"]=this.dropdown),t},component(){return this.element?this.element:this.link?"k-link":"button"}},created(){this.tooltip&&window.panel.deprecated(": the `tooltip` prop will be removed in a future version. Use the `title` prop instead.")},methods:{focus(){var t,e;null==(e=(t=this.$el).focus)||e.call(t)},onClick(t){var e;return this.disabled?(t.preventDefault(),!1):this.dialog?this.$dialog(this.dialog):this.drawer?this.$drawer(this.drawer):(null==(e=this.click)||e.call(this,t),void this.$emit("click",t))}}},(function(){var t=this,e=t._self._c;return e(t.component,t._b({tag:"component",staticClass:"k-button",attrs:{"data-has-icon":Boolean(t.icon),"data-has-text":Boolean(t.text||t.$slots.default)},on:{click:t.onClick}},"component",t.attrs,!1),[t.icon?e("span",{staticClass:"k-button-icon"},[e("k-icon",{attrs:{type:t.icon}})],1):t._e(),t.text||t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default",(function(){return[t._v(" "+t._s(t.text)+" ")]}))],2):t._e(),t.dropdown&&(t.text||t.$slots.default)?e("span",{staticClass:"k-button-arrow"},[e("k-icon",{attrs:{type:"angle-down"}})],1):t._e()])}),[],!1,null,null,null,null).exports;const Sl=at({props:{buttons:Array,layout:String,variant:String,theme:String,size:String,responsive:Boolean}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-button-group",attrs:{"data-layout":t.layout}},[t.$slots.default?t._t("default"):t._l(t.buttons,(function(i,n){return e("k-button",t._b({key:n},"k-button",{variant:t.variant,theme:t.theme,size:t.size,responsive:t.responsive,...i},!1))}))],2)}),[],!1,null,null,null,null).exports;const Cl=at({props:{selected:{type:String}},data:()=>({files:[],page:null,view:"tree"}),methods:{selectFile(t){this.$emit("select",t)},async selectPage(t){this.page=t;const e="/"===t.id?"/site/files":"/pages/"+this.$api.pages.id(t.id)+"/files",{data:i}=await this.$api.get(e,{select:"filename,id,panelImage,url,uuid"});this.files=i.map((t=>({label:t.filename,image:t.panelImage,id:t.id,url:t.url,uuid:t.uuid,value:t.uuid??t.url}))),this.view="files"},async togglePage(){await this.$nextTick(),this.$refs.tree.scrollIntoView({behaviour:"smooth",block:"nearest",inline:"nearest"})}}},(function(){var t,e,i=this,n=i._self._c;return n("div",{staticClass:"k-file-browser",attrs:{"data-view":i.view}},[n("div",{staticClass:"k-file-browser-layout"},[n("aside",{ref:"tree",staticClass:"k-file-browser-tree"},[n("k-page-tree",{attrs:{current:null==(t=i.page)?void 0:t.value},on:{select:i.selectPage,toggleBranch:i.togglePage}})],1),n("div",{ref:"items",staticClass:"k-file-browser-items"},[n("k-button",{staticClass:"k-file-browser-back-button",attrs:{icon:"angle-left",text:null==(e=i.page)?void 0:e.label},on:{click:function(t){i.view="tree"}}}),i.files.length?n("k-browser",{attrs:{items:i.files,selected:i.selected},on:{select:i.selectFile}}):i._e()],1)])])}),[],!1,null,null,null,null).exports;const Ol=at({props:{disabled:Boolean,rel:String,tabindex:[String,Number],target:String,title:String,to:[String,Function]},emits:["click"],computed:{href(){return"function"==typeof this.to?"":"/"!==this.to[0]||this.target?!0===this.to.includes("@")&&!1===this.to.includes("/")&&!1===this.to.startsWith("mailto:")?"mailto:"+this.to:this.to:this.$url(this.to)},relAttr(){return"_blank"===this.target?"noreferrer noopener":this.rel}},methods:{isRoutable(t){if(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)return!1;if(t.defaultPrevented)return!1;if(void 0!==t.button&&0!==t.button)return!1;if(this.target)return!1;if("string"==typeof this.href){if(this.href.includes("://")||this.href.startsWith("//"))return!1;if(this.href.includes("mailto:"))return!1}return!0},onClick(t){if(!0===this.disabled)return t.preventDefault(),!1;"function"==typeof this.to&&(t.preventDefault(),this.to()),this.isRoutable(t)&&(t.preventDefault(),this.$go(this.to)),this.$emit("click",t)}}},(function(){var t=this,e=t._self._c;return t.to&&!t.disabled?e("a",{ref:"link",staticClass:"k-link",attrs:{href:t.href,rel:t.relAttr,tabindex:t.tabindex,target:t.target,title:t.title},on:{click:t.onClick}},[t._t("default")],2):e("span",{staticClass:"k-link",attrs:{title:t.title,"aria-disabled":""}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Al=at({props:{tab:String,tabs:{type:Array,default:()=>[]}},computed:{withBadges(){const t=Object.keys(this.$store.getters["content/changes"]());return this.tabs.map((e=>{const i=[];for(const t in e.columns)for(const n in e.columns[t].sections)if("fields"===e.columns[t].sections[n].type)for(const s in e.columns[t].sections[n].fields)i.push(s);return e.badge=i.filter((e=>t.includes(e.toLowerCase()))).length,e}))}}},(function(){var t=this;return(0,t._self._c)("k-tabs",{staticClass:"k-model-tabs",attrs:{tab:t.tab,tabs:t.withBadges,theme:"notice"}})}),[],!1,null,null,null,null).exports;const Ml=at({props:{axis:String,disabled:Boolean,element:{type:String,default:"div"},select:{type:String,default:":where(button, a):not(:disabled)"}},computed:{keys(){switch(this.axis){case"x":return{ArrowLeft:this.prev,ArrowRight:this.next};case"y":return{ArrowUp:this.prev,ArrowDown:this.next};default:return{ArrowLeft:this.prev,ArrowRight:this.next,ArrowUp:this.prev,ArrowDown:this.next}}}},mounted(){this.$el.addEventListener("keydown",this.keydown)},destroyed(){this.$el.removeEventListener("keydown",this.keydown)},methods:{focus(t=0,e){this.move(t,e)},keydown(t){var e;if(this.disabled)return!1;null==(e=this.keys[t.key])||e.apply(this,[t])},move(t=0,e){var i;const n=[...this.$el.querySelectorAll(this.select)];let s=n.findIndex((t=>t===document.activeElement||t.contains(document.activeElement)));switch(-1===s&&(s=0),t){case"first":t=0;break;case"next":t=s+1;break;case"last":t=n.length-1;break;case"prev":t=s-1}t<0?this.$emit("prev"):t>=n.length?this.$emit("next"):null==(i=n[t])||i.focus(),null==e||e.preventDefault()},next(t){this.move("next",t)},prev(t){this.move("prev",t)}}},(function(){var t=this;return(0,t._self._c)(t.element,{tag:"component",staticClass:"k-navigate"},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const jl=at({name:"k-tree",inheritAttrs:!1,props:{element:{type:String,default:"k-tree"},current:{type:String},items:{type:[Array,Object]},level:{default:0,type:Number}},data(){return{state:this.items}},methods:{arrow:t=>!0===t.loading?"loader":t.open?"angle-down":"angle-right",close(t){this.$set(t,"open",!1),this.$emit("close",t)},open(t){this.$set(t,"open",!0),this.$emit("open",t)},select(t){this.$emit("select",t)},toggle(t){this.$emit("toggle",t),!0===t.open?this.close(t):this.open(t)}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-tree",class:t.$options.name,style:{"--tree-level":t.level}},t._l(t.state,(function(i,n){return e("li",{key:n,attrs:{"aria-expanded":i.open,"aria-current":i.value===t.current}},[e("p",{staticClass:"k-tree-branch",attrs:{"data-has-subtree":i.hasChildren&&i.open}},[e("button",{staticClass:"k-tree-toggle",attrs:{disabled:!i.hasChildren,type:"button"},on:{click:function(e){return t.toggle(i)}}},[e("k-icon",{attrs:{type:t.arrow(i)}})],1),e("button",{staticClass:"k-tree-folder",attrs:{disabled:i.disabled,type:"button"},on:{click:function(e){return t.select(i)},dblclick:function(e){return t.toggle(i)}}},[e("k-icon-frame",{attrs:{icon:i.icon??"folder"}}),e("span",{staticClass:"k-tree-folder-label"},[t._v(t._s(i.label))])],1)]),i.hasChildren&&i.open?[e(t.$options.name,t._b({tag:"component",attrs:{items:i.children,level:t.level+1},on:{close:function(e){return t.$emit("close",e)},open:function(e){return t.$emit("open",e)},select:function(e){return t.$emit("select",e)},toggle:function(e){return t.$emit("toggle",e)}}},"component",t.$props,!1))]:t._e()],2)})),0)}),[],!1,null,null,null,null).exports;const Il=at({name:"k-page-tree",extends:jl,inheritAttrs:!1,props:{root:{default:!0,type:Boolean},current:{type:String},move:{type:String}},data:()=>({state:[]}),async created(){if(this.items)this.state=this.items;else{const t=await this.load(null);await this.open(t[0]),this.state=this.root?t:t[0].children}},methods:{async load(t){return await this.$panel.get("site/tree",{query:{move:this.move??null,parent:t}})},async open(t){if(!1===t.hasChildren)return!1;this.$set(t,"loading",!0),"string"==typeof t.children&&(t.children=await this.load(t.children)),this.$set(t,"open",!0),this.$set(t,"loading",!1)}}},null,null,!1,null,null,null,null).exports;const Tl=at({props:{details:Boolean,limit:{type:Number,default:10},page:{type:Number,default:1},total:{type:Number,default:0},validate:{type:Function,default:()=>Promise.resolve()}},computed:{end(){return Math.min(this.start-1+this.limit,this.total)},detailsText(){return 1===this.limit?this.start:this.start+"-"+this.end},offset(){return this.start-1},pages(){return Math.ceil(this.total/this.limit)},start(){return(this.page-1)*this.limit+1}},methods:{async goTo(t){var e;try{await this.validate(t),null==(e=this.$refs.dropdown)||e.close();const i=((t=Math.max(1,Math.min(t,this.pages)))-1)*this.limit+1;this.$emit("paginate",{page:t,start:i,end:Math.min(i-1+this.limit,this.total),limit:this.limit,offset:i-1,total:this.total})}catch(i){}},prev(){this.goTo(this.page-1)},next(){this.goTo(this.page+1)}}},(function(){var t=this,e=t._self._c;return t.pages>1?e("k-button-group",{staticClass:"k-pagination",attrs:{layout:"collapsed"},nativeOn:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])||"button"in e&&0!==e.button?null:t.prev.apply(null,arguments)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"right",39,e.key,["Right","ArrowRight"])||"button"in e&&2!==e.button?null:t.next.apply(null,arguments)}]}},[e("k-button",{attrs:{disabled:t.start<=1,title:t.$t("prev"),icon:"angle-left",size:"xs",variant:"filled"},on:{click:t.prev}}),t.details?[e("k-button",{staticClass:"k-pagination-details",attrs:{disabled:t.total<=t.limit,text:t.total>1?`${t.detailsText} / ${t.total}`:t.total,size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",staticClass:"k-pagination-selector",attrs:{"align-x":"end"},nativeOn:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])||"button"in e&&0!==e.button?null:void e.stopPropagation()},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"right",39,e.key,["Right","ArrowRight"])||"button"in e&&2!==e.button?null:void e.stopPropagation()}]}},[e("form",{attrs:{method:"dialog"},on:{submit:function(e){return t.goTo(t.$refs.page.value)}}},[e("label",{attrs:{for:t._uid}},[t._v(t._s(t.$t("pagination.page"))+":")]),e("select",{ref:"page",attrs:{id:t._uid,autofocus:!0}},t._l(t.pages,(function(i){return e("option",{key:i,domProps:{selected:t.page===i,value:i}},[t._v(" "+t._s(i)+" ")])})),0),e("k-button",{attrs:{type:"submit",icon:"check"}})],1)])]:t._e(),e("k-button",{attrs:{disabled:t.end>=t.total,title:t.$t("next"),icon:"angle-right",size:"xs",variant:"filled"},on:{click:t.next}})],2):t._e()}),[],!1,null,null,null,null).exports;const El=at({props:{prev:{type:[Boolean,Object],default:!1},next:{type:[Boolean,Object],default:!1}},computed:{buttons(){return[{...this.button(this.prev),icon:"angle-left"},{...this.button(this.next),icon:"angle-right"}]},isFullyDisabled(){return 0===this.buttons.filter((t=>!t.disabled)).length}},methods:{button:t=>t||{disabled:!0,link:"#"}}},(function(){var t=this,e=t._self._c;return t.isFullyDisabled?t._e():e("k-button-group",{staticClass:"k-prev-next",attrs:{buttons:t.buttons,layout:"collapsed",size:"xs"}})}),[],!1,null,null,null,null).exports;const Ll=at({props:{disabled:Boolean,image:{type:Object},removable:Boolean},computed:{isRemovable(){return this.removable&&!this.disabled}},methods:{remove(){this.isRemovable&&this.$emit("remove")},focus(){this.$refs.button.focus()}}},(function(){var t=this,e=t._self._c;return e("button",{ref:"button",staticClass:"k-tag",attrs:{"aria-disabled":t.disabled,"data-has-image":Boolean(t.image),"data-has-toggle":t.isRemovable,type:"button"},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:(e.preventDefault(),t.remove.apply(null,arguments))}}},[t._t("image",(function(){var i;return[(null==(i=t.image)?void 0:i.src)?e("k-image-frame",t._b({staticClass:"k-tag-image"},"k-image-frame",t.image,!1)):t.image?e("k-icon-frame",t._b({staticClass:"k-tag-image"},"k-icon-frame",t.image,!1)):t._e()]})),t.$slots.default?e("span",{staticClass:"k-tag-text"},[t._t("default")],2):t._e(),t.isRemovable?e("k-icon-frame",{staticClass:"k-tag-toggle",attrs:{icon:"cancel-small"},nativeOn:{click:function(e){return e.stopPropagation(),t.remove.apply(null,arguments)}}}):t._e()],2)}),[],!1,null,null,null,null).exports;const Dl=at({inheritAttrs:!1,props:{icon:String,id:[String,Number],responsive:Boolean,theme:String,tooltip:String},created(){window.panel.deprecated(' will be removed in a future version. Use instead.')}},(function(){var t=this,e=t._self._c;return e("span",{staticClass:"k-button",attrs:{id:t.id,"data-disabled":!0,"data-responsive":t.responsive,"data-theme":t.theme,title:t.tooltip}},[t.icon?e("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)}),[],!1,null,null,null,null).exports;const Bl=at({inheritAttrs:!1,props:{autofocus:Boolean,current:[String,Boolean],icon:String,id:[String,Number],link:String,rel:String,responsive:Boolean,role:String,target:String,tabindex:String,theme:String,tooltip:String},created(){window.panel.deprecated(' will be removed in a future version. Use instead.')},methods:{focus(){this.$el.focus()}}},(function(){var t=this,e=t._self._c;return e("k-link",{staticClass:"k-button",attrs:{id:t.id,"aria-current":t.current,autofocus:t.autofocus,"data-theme":t.theme,"data-responsive":t.responsive,rel:t.rel,role:t.role,tabindex:t.tabindex,target:t.target,title:t.tooltip,to:t.link}},[t.icon?e("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)}),[],!1,null,null,null,null).exports;const ql=at({inheritAttrs:!1,props:{autofocus:Boolean,click:{type:Function,default:()=>{}},current:[String,Boolean],icon:String,id:[String,Number],responsive:Boolean,role:String,tabindex:String,theme:String,tooltip:String,type:{type:String,default:"button"}},created(){window.panel.deprecated(" will be removed in a future version. Use instead.")}},(function(){var t=this,e=t._self._c;return e("button",{staticClass:"k-button",attrs:{id:t.id,"aria-current":t.current,autofocus:t.autofocus,"data-theme":t.theme,"data-responsive":t.responsive,role:t.role,tabindex:t.tabindex,title:t.tooltip,type:t.type},on:{click:t.click}},[t.icon?e("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)}),[],!1,null,null,null,null).exports,Pl={install(t){t.component("k-breadcrumb",wl),t.component("k-browser",xl),t.component("k-button",_l),t.component("k-button-group",Sl),t.component("k-file-browser",Cl),t.component("k-link",Ol),t.component("k-model-tabs",Al),t.component("k-navigate",Ml),t.component("k-page-tree",Il),t.component("k-pagination",Tl),t.component("k-prev-next",El),t.component("k-tag",Ll),t.component("k-tags",Jn),t.component("k-tree",jl),t.component("k-button-disabled",Dl),t.component("k-button-link",Bl),t.component("k-button-native",ql)}};const Nl=at({props:{buttons:Array,headline:String,invalid:Boolean,link:String,required:Boolean}},(function(){var t=this,e=t._self._c;return e("section",{staticClass:"k-section",attrs:{"data-invalid":t.invalid}},[t.headline||t.buttons?e("header",{staticClass:"k-bar k-section-header"},[e("k-label",{attrs:{invalid:t.invalid,link:t.link,required:t.required,type:"section"}},[t._v(" "+t._s(t.headline)+" ")]),t.buttons?e("k-button-group",{attrs:{buttons:t.buttons,size:"xs",variant:"filled"}}):t._e()],1):t._e(),t._t("default")],2)}),[],!1,null,null,null,null).exports;const zl=at({props:{empty:String,blueprint:String,lock:[Boolean,Object],parent:String,tab:Object},computed:{content(){return this.$store.getters["content/values"]()}},methods:{exists(t){return this.$helper.isComponent(`k-${t}-section`)}}},(function(){var t=this,e=t._self._c;return 0===t.tab.columns.length?e("k-box",{attrs:{html:!0,text:t.empty,theme:"info"}}):e("k-grid",{staticClass:"k-sections",attrs:{variant:"columns"}},t._l(t.tab.columns,(function(i,n){return e("k-column",{key:t.parent+"-column-"+n,attrs:{width:i.width,sticky:i.sticky}},[t._l(i.sections,(function(s,o){return[t.$helper.field.isVisible(s,t.content)?[t.exists(s.type)?e("k-"+s.type+"-section",t._b({key:t.parent+"-column-"+n+"-section-"+o+"-"+t.blueprint,tag:"component",class:"k-section-name-"+s.name,attrs:{column:i.width,lock:t.lock,name:s.name,parent:t.parent,timestamp:t.$panel.view.timestamp},on:{submit:function(e){return t.$emit("submit",e)}}},"component",s,!1)):[e("k-box",{key:t.parent+"-column-"+n+"-section-"+o,attrs:{text:t.$t("error.section.type.invalid",{type:s.type}),icon:"alert",theme:"negative"}})]]:t._e()]}))],2)})),1)}),[],!1,null,null,null,null).exports,Fl={props:{blueprint:String,lock:[Boolean,Object],help:String,name:String,parent:String,timestamp:Number},methods:{load(){return this.$api.get(this.parent+"/sections/"+this.name)}}};const Rl=at({mixins:[Fl],inheritAttrs:!1,data:()=>({fields:{},isLoading:!0,issue:null}),computed:{values(){return this.$store.getters["content/values"]()}},watch:{timestamp(){this.fetch()}},created(){this.onInput=Nt(this.onInput,50),this.fetch()},methods:{async fetch(){try{const t=await this.load();this.fields=t.fields;for(const e in this.fields)this.fields[e].section=this.name,this.fields[e].endpoints={field:this.parent+"/fields/"+e,section:this.parent+"/sections/"+this.name,model:this.parent}}catch(t){this.issue=t}finally{this.isLoading=!1}},onInput(t,e,i){this.$store.dispatch("content/update",[i,t[i]])},onSubmit(t){this.$store.dispatch("content/update",[null,t]),this.$events.emit("keydown.cmd.s",t)}}},(function(){var t=this,e=t._self._c;return t.isLoading?t._e():e("k-section",{staticClass:"k-fields-section",attrs:{headline:t.issue?"Error":null}},[t.issue?e("k-box",{attrs:{text:t.issue.message,html:!1,icon:"alert",theme:"negative"}}):t._e(),e("k-form",{attrs:{fields:t.fields,validate:!0,value:t.values,disabled:t.lock&&"lock"===t.lock.state},on:{input:t.onInput,submit:t.onSubmit}})],1)}),[],!1,null,null,null,null).exports;const Yl=at({inheritAttrs:!1,props:{blueprint:String,column:String,parent:String,name:String,timestamp:Number},data:()=>({data:[],error:null,isLoading:!1,isProcessing:!1,options:{columns:{},empty:null,headline:null,help:null,layout:"list",link:null,max:null,min:null,size:null,sortable:null},pagination:{page:null},searchterm:null,searching:!1}),computed:{addIcon:()=>"add",buttons(){let t=[];return this.canSearch&&t.push({icon:"filter",text:this.$t("filter"),click:this.onSearchToggle,responsive:!0}),this.canAdd&&t.push({icon:this.addIcon,text:this.$t("add"),click:this.onAdd,responsive:!0}),t},canAdd:()=>!0,canDrop:()=>!1,canSearch(){return this.options.search},collection(){return{columns:this.options.columns,empty:this.emptyPropsWithSearch,layout:this.options.layout,help:this.options.help,items:this.items,pagination:this.pagination,sortable:!this.isProcessing&&this.options.sortable,size:this.options.size}},emptyProps(){return{icon:"page",text:this.$t("pages.empty")}},emptyPropsWithSearch(){return{...this.emptyProps,text:this.searching?this.$t("search.results.none"):this.options.empty??this.emptyProps.text}},items(){return this.data},isInvalid(){var t;return!((null==(t=this.searchterm)?void 0:t.length)>0)&&(!!(this.options.min&&this.data.lengththis.options.max))},paginationId(){return"kirby$pagination$"+this.parent+"/"+this.name},type:()=>"models"},watch:{searchterm(){this.search()},timestamp(){this.reload()}},created(){this.search=Nt(this.search,200),this.load()},methods:{async load(t){this.isProcessing=!0,t||(this.isLoading=!0);const e=this.pagination.page??localStorage.getItem(this.paginationId)??1;try{const t=await this.$api.get(this.parent+"/sections/"+this.name,{page:e,searchterm:this.searchterm});this.options=t.options,this.pagination=t.pagination,this.data=t.data}catch(i){this.error=i.message}finally{this.isProcessing=!1,this.isLoading=!1}},onAction(){},onAdd(){},onChange(){},onDrop(){},onSort(){},onPaginate(t){localStorage.setItem(this.paginationId,t.page),this.pagination=t,this.reload()},onSearchToggle(){this.searching=!this.searching,this.searchterm=null},async reload(){await this.load(!0)},async search(){this.pagination.page=0,await this.reload()},update(){this.reload(),this.$events.emit("model.update")}}},(function(){var t=this,e=t._self._c;return!1===t.isLoading?e("k-section",{class:`k-models-section k-${t.type}-section`,attrs:{buttons:t.buttons,"data-processing":t.isProcessing,headline:t.options.headline??" ",invalid:t.isInvalid,link:t.options.link,required:Boolean(t.options.min)}},[t.error?e("k-box",{attrs:{icon:"alert",theme:"negative"}},[e("k-text",{attrs:{size:"small"}},[e("strong",[t._v(" "+t._s(t.$t("error.section.notLoaded",{name:t.name}))+": ")]),t._v(" "+t._s(t.error)+" ")])],1):[e("k-dropzone",{attrs:{disabled:!t.canDrop},on:{drop:t.onDrop}},[t.searching&&t.options.search?e("k-input",{staticClass:"k-models-section-search",attrs:{autofocus:!0,placeholder:t.$t("filter")+" …",value:t.searchterm,icon:"search",type:"text"},on:{input:function(e){t.searchterm=e},keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.onSearchToggle.apply(null,arguments)}}}):t._e(),e("k-collection",t._g(t._b({on:{action:t.onAction,change:t.onChange,sort:t.onSort,paginate:t.onPaginate}},"k-collection",t.collection,!1),t.canAdd?{empty:t.onAdd}:{}))],1)]],2):t._e()}),[],!1,null,null,null,null).exports;const Ul=at({extends:Yl,computed:{addIcon:()=>"upload",canAdd(){return this.$panel.permissions.files.create&&!1!==this.options.upload},canDrop(){return!1!==this.canAdd},emptyProps(){return{icon:"image",text:this.$t("files.empty")}},items(){return this.data.map((t=>(t.sortable=this.options.sortable,t.column=this.column,t.options=this.$dropdown(t.link,{query:{view:"list",update:this.options.sortable,delete:this.data.length>this.options.min}}),t.data={"data-id":t.id,"data-template":t.template},t)))},type:()=>"files",uploadOptions(){return{...this.options.upload,url:this.$panel.urls.api+"/"+this.options.upload.api,on:{complete:()=>{this.$panel.notification.success({context:"view"})}}}}},created(){this.$events.on("model.update",this.reload),this.$events.on("file.sort",this.reload)},destroyed(){this.$events.off("model.update",this.reload),this.$events.off("file.sort",this.reload)},methods:{onAction(t,e){"replace"===t&&this.replace(e)},onAdd(){this.canAdd&&this.$panel.upload.pick(this.uploadOptions)},onDrop(t){this.canAdd&&this.$panel.upload.open(t,this.uploadOptions)},async onSort(t){if(!1===this.options.sortable)return!1;this.isProcessing=!0;try{await this.$api.patch(this.options.apiUrl+"/files/sort",{files:t.map((t=>t.id)),index:this.pagination.offset}),this.$panel.notification.success(),this.$events.emit("file.sort")}catch(e){this.$panel.error(e),this.reload()}finally{this.isProcessing=!1}},replace(t){this.$panel.upload.replace(t,this.uploadOptions)}}},null,null,!1,null,null,null,null).exports;const Hl=at({mixins:[Fl],inheritAttrs:!1,data:()=>({icon:null,label:null,text:null,theme:null}),async created(){const t=await this.load();this.icon=t.icon,this.label=t.label,this.text=t.text,this.theme=t.theme??"info"}},(function(){var t=this,e=t._self._c;return e("k-section",{staticClass:"k-info-section",attrs:{headline:t.label}},[e("k-box",{attrs:{html:!0,icon:t.icon,text:t.text,theme:t.theme}})],1)}),[],!1,null,null,null,null).exports;const Vl=at({extends:Yl,computed:{canAdd(){return this.options.add&&this.$panel.permissions.pages.create},items(){return this.data.map((t=>{const e=!1===t.permissions.changeStatus,i=this.$helper.page.status(t.status,e);return i.click=()=>this.$dialog(t.link+"/changeStatus"),t.flag={status:t.status,disabled:e,click:()=>this.$dialog(t.link+"/changeStatus")},t.sortable=t.permissions.sort&&this.options.sortable,t.deletable=this.data.length>this.options.min,t.column=this.column,t.buttons=[i,...t.buttons??[]],t.options=this.$dropdown(t.link,{query:{view:"list",delete:t.deletable,sort:t.sortable}}),t.data={"data-id":t.id,"data-status":t.status,"data-template":t.template},t}))},type:()=>"pages"},created(){this.$events.on("page.changeStatus",this.reload),this.$events.on("page.sort",this.reload)},destroyed(){this.$events.off("page.changeStatus",this.reload),this.$events.off("page.sort",this.reload)},methods:{onAdd(){this.canAdd&&this.$dialog("pages/create",{query:{parent:this.options.link??this.parent,view:this.parent,section:this.name}})},async onChange(t){let e=null;if(t.added&&(e="added"),t.moved&&(e="moved"),e){this.isProcessing=!0;const n=t[e].element,s=t[e].newIndex+1+this.pagination.offset;try{await this.$api.pages.changeStatus(n.id,"listed",s),this.$panel.notification.success(),this.$events.emit("page.sort",n)}catch(i){this.$panel.error({message:i.message,details:i.details}),await this.reload()}finally{this.isProcessing=!1}}}}},null,null,!1,null,null,null,null).exports;const Kl=at({mixins:[Fl],data:()=>({headline:null,isLoading:!0,reports:null,size:null}),async created(){const t=await this.load();this.isLoading=!1,this.headline=t.headline,this.reports=t.reports,this.size=t.size},methods:{}},(function(){var t=this,e=t._self._c;return!1===t.isLoading?e("k-section",{staticClass:"k-stats-section",attrs:{headline:t.headline}},[t.reports.length>0?e("k-stats",{attrs:{reports:t.reports,size:t.size}}):e("k-empty",{attrs:{icon:"chart"}},[t._v(" "+t._s(t.$t("stats.empty")))])],1):t._e()}),[],!1,null,null,null,null).exports,Wl={install(t){t.component("k-section",Nl),t.component("k-sections",zl),t.component("k-fields-section",Rl),t.component("k-files-section",Ul),t.component("k-info-section",Hl),t.component("k-pages-section",Vl),t.component("k-stats-section",Kl)}};const Jl=at({components:{"k-highlight":()=>F((()=>import("./Highlight.min.js")),["./Highlight.min.js","./vendor.min.js"],import.meta.url)},props:{language:{type:String}}},(function(){var t=this,e=t._self._c;return e("k-highlight",[e("div",[e("pre",{staticClass:"k-code",attrs:{"data-language":t.language}},[e("code",{key:t.$slots.default[0].text+"-"+t.language,class:t.language?`language-${t.language}`:null},[t._t("default")],2)])])])}),[],!1,null,null,null,null).exports;const Gl=at({props:{link:String,size:{type:String},tag:{type:String,default:"h2"},theme:{type:String}},emits:["click"],created(){this.size&&window.panel.deprecated(": the `size` prop will be removed in a future version. Use the `tag` prop instead."),this.theme&&window.panel.deprecated(": the `theme` prop will be removed in a future version.")}},(function(){var t=this,e=t._self._c;return e(t.tag,{tag:"component",staticClass:"k-headline",attrs:{"data-theme":t.theme,"data-size":t.size},on:{click:function(e){return t.$emit("click",e)}}},[t.link?e("k-link",{attrs:{to:t.link}},[t._t("default")],2):t._t("default")],2)}),[],!1,null,null,null,null).exports;const Xl=at({props:{input:{type:[String,Number]},invalid:{type:Boolean},link:{type:String},required:{default:!1,type:Boolean},type:{default:"field",type:String}},computed:{element(){return"section"===this.type?"h2":"label"}}},(function(){var t=this,e=t._self._c;return e(t.element,{tag:"component",staticClass:"k-label",class:"k-"+t.type+"-label",attrs:{for:t.input,"data-invalid":t.invalid}},[t.link?e("k-link",{attrs:{to:t.link}},[e("span",{staticClass:"k-label-text"},[t._t("default")],2)]):e("span",{staticClass:"k-label-text"},[t._t("default")],2),t.required&&!t.invalid?e("abbr",{attrs:{title:t.$t(t.type+".required")}},[t._v("✶")]):t._e(),e("abbr",{staticClass:"k-label-invalid",attrs:{title:t.$t(t.type+".invalid")}},[t._v("×")])],1)}),[],!1,null,null,null,null).exports;const Zl=at({props:{align:String,html:String,size:String,theme:String},computed:{attrs(){return{class:"k-text","data-align":this.align,"data-size":this.size,"data-theme":this.theme}}},created(){this.theme&&window.panel.deprecated(': the `theme` prop will be removed in a future version. For help text, add `.k-help "` CSS class instead.')}},(function(){var t=this,e=t._self._c;return t.html?e("div",t._b({domProps:{innerHTML:t._s(t.html)}},"div",t.attrs,!1)):e("div",t._b({},"div",t.attrs,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports,Ql={install(t){t.component("k-code",Jl),t.component("k-headline",Gl),t.component("k-label",Xl),t.component("k-text",Zl)}};const tr=at({computed:{notification(){return"view"!==this.$panel.notification.context||this.$panel.notification.isFatal?null:this.$panel.notification}}},(function(){var t=this,e=t._self._c;return e("k-panel",{staticClass:"k-panel-inside"},[e("k-panel-menu"),e("main",{staticClass:"k-panel-main"},[e("k-topbar",{attrs:{breadcrumb:t.$panel.view.breadcrumb,view:t.$panel.view}},[t._t("topbar")],2),t._t("default")],2),t.notification&&"error"!==t.notification.type?e("k-button",{staticClass:"k-panel-notification",attrs:{icon:t.notification.icon,text:t.notification.message,theme:t.notification.theme,variant:"filled"},on:{click:function(e){return t.notification.close()}}}):t._e()],1)}),[],!1,null,null,null,null).exports;const er=at({data:()=>({over:!1}),computed:{hasSearch(){return this.$helper.object.length(this.$panel.searches)>0},menus(){return this.$panel.menu.entries.split("-")}}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-panel-menu",attrs:{"aria-label":t.$t("menu"),"data-hover":t.$panel.menu.hover},on:{mouseenter:function(e){t.$panel.menu.hover=!0},mouseleave:function(e){t.$panel.menu.hover=!1}}},[e("div",{staticClass:"k-panel-menu-body"},[t.hasSearch?e("k-button",{staticClass:"k-panel-menu-search k-panel-menu-button",attrs:{text:t.$t("search"),icon:"search"},on:{click:function(e){return t.$panel.search()}}}):t._e(),t._l(t.menus,(function(i,n){return e("menu",{key:n,staticClass:"k-panel-menu-buttons",attrs:{"data-second-last":n===t.menus.length-2}},t._l(i,(function(i){return e("k-button",t._b({key:i.id,staticClass:"k-panel-menu-button",attrs:{title:i.title??i.text}},"k-button",i,!1))})),1)}))],2),e("k-button",{staticClass:"k-panel-menu-toggle",attrs:{icon:t.$panel.menu.isOpen?"angle-left":"angle-right",title:t.$panel.menu.isOpen?t.$t("collapse"):t.$t("expand"),size:"xs"},on:{click:function(e){return t.$panel.menu.toggle()}}})],1)}),[],!1,null,null,null,null).exports;const ir=at({},(function(){return(0,this._self._c)("k-panel",{staticClass:"k-panel-outside",attrs:{tabindex:"0"}},[this._t("default")],2)}),[],!1,null,null,null,null).exports;const nr=at({},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-panel",attrs:{"data-dragging":t.$panel.drag.isDragging,"data-loading":t.$panel.isLoading,"data-language":t.$panel.language.code,"data-language-default":t.$panel.language.isDefault,"data-menu":t.$panel.menu.isOpen?"true":"false","data-role":t.$panel.user.role,"data-translation":t.$panel.translation.code,"data-user":t.$panel.user.id,dir:t.$panel.direction}},[t._t("default"),t.$panel.dialog.isOpen&&!t.$panel.dialog.legacy?e("k-fiber-dialog"):t._e(),t.$panel.drawer.isOpen&&!t.$panel.drawer.legacy?e("k-fiber-drawer"):t._e(),t.$panel.notification.isFatal&&t.$panel.notification.isOpen?e("k-fatal",{attrs:{html:t.$panel.notification.message}}):t._e(),e("k-offline-warning"),e("k-icons"),e("k-overlay",{attrs:{nested:t.$panel.drawer.history.milestones.length>1,visible:t.$panel.drawer.isOpen,type:"drawer"},on:{close:function(e){return t.$panel.drawer.close()}}},[e("portal-target",{staticClass:"k-drawer-portal k-portal",attrs:{name:"drawer",multiple:""}})],1),e("k-overlay",{attrs:{visible:t.$panel.dialog.isOpen,type:"dialog"},on:{close:function(e){return t.$panel.dialog.close()}}},[e("portal-target",{staticClass:"k-dialog-portal k-portal",attrs:{name:"dialog",multiple:""}})],1),e("portal-target",{staticClass:"k-overlay-portal k-portal",attrs:{name:"overlay",multiple:""}})],2)}),[],!1,null,null,null,null).exports;const sr=at({props:{breadcrumb:Array,view:Object},computed:{crumbs(){return[{link:this.view.link,label:this.view.label??this.view.breadcrumbLabel,icon:this.view.icon,loading:this.$panel.isLoading},...this.breadcrumb]}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-topbar"},[e("k-button",{staticClass:"k-panel-menu-proxy",attrs:{icon:"bars"},on:{click:function(e){return t.$panel.menu.toggle()}}}),e("k-breadcrumb",{staticClass:"k-topbar-breadcrumb",attrs:{crumbs:t.crumbs}}),e("div",{staticClass:"k-topbar-spacer"}),e("div",{staticClass:"k-topbar-signals"},[t._t("default")],2)],1)}),[],!1,null,null,null,null).exports,or={install(t){t.component("k-panel",nr),t.component("k-panel-inside",tr),t.component("k-panel-menu",er),t.component("k-panel-outside",ir),t.component("k-topbar",sr),t.component("k-inside",tr),t.component("k-outside",ir)}};const lr=at({props:{error:String,layout:String}},(function(){var t=this,e=t._self._c;return e(`k-panel-${t.layout}`,{tag:"component",staticClass:"k-error-view"},["outside"===t.layout?[e("div",[e("k-box",{attrs:{icon:"alert",theme:"negative"}},[t._v(t._s(t.error))])],1)]:[e("k-header",[t._v(t._s(t.$t("error")))]),e("k-box",{attrs:{icon:"alert",theme:"negative"}},[t._v(t._s(t.error))])]],2)}),[],!1,null,null,null,null).exports;const rr=at({mixins:[zt],props:{type:{default:"pages",type:String}},data:()=>({items:[],query:new URLSearchParams(window.location.search).get("query"),pagination:{}}),computed:{currentType(){return this.$panel.searches[this.type]??Object.values(this.$panel.searches)[0]},tabs(){const t=[];for(const e in this.$panel.searches){const i=this.$panel.searches[e];t.push({label:i.label,link:"/search/?type="+e+"&query="+this.query,name:e})}return t}},watch:{query:{handler(){this.search(1)},immediate:!0},type(){this.search()}},methods:{focus(){var t;null==(t=this.$refs.input)||t.focus()},onPaginate(t){this.search(t.page)},async search(t){this.$panel.isLoading=!0,t||(t=new URLSearchParams(window.location.search).get("page")??1);const e=this.$panel.url(window.location,{type:this.currentType.id,query:this.query,page:t});window.history.pushState("","",e.toString());try{if(null===this.query||this.query.length<2)throw Error("Empty query");const e=await this.$search(this.currentType.id,this.query,{page:t,limit:15});this.items=e.results,this.pagination=e.pagination}catch(i){this.items=[],this.pagination={}}finally{this.$panel.isLoading=!1}}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-search-view"},[e("k-header",[t._v(" "+t._s(t.$t("search"))+" "),e("k-input",{ref:"input",staticClass:"k-search-view-input",attrs:{slot:"buttons","aria-label":t.$t("search"),autofocus:!0,placeholder:t.$t("search")+" …",spellcheck:!1,value:t.query,icon:"search",type:"text"},on:{input:function(e){t.query=e}},slot:"buttons"})],1),e("k-tabs",{attrs:{tab:t.currentType.id,tabs:t.tabs}}),e("div",{staticClass:"k-search-view-results"},[e("k-collection",{attrs:{items:t.items,empty:{icon:"search",text:t.$t("search.results.none")},pagination:t.pagination},on:{paginate:t.onPaginate}})],1)],1)}),[],!1,null,null,null,null).exports;const ar=at({props:{blueprint:String,next:Object,prev:Object,permissions:{type:Object,default:()=>({})},lock:{type:[Boolean,Object]},model:{type:Object,default:()=>({})},tab:{type:Object,default:()=>({columns:[]})},tabs:{type:Array,default:()=>[]}},computed:{id(){return this.model.link},isLocked(){var t;return"lock"===(null==(t=this.lock)?void 0:t.state)},protectedFields:()=>[]},watch:{"$panel.view.timestamp":{handler(){this.$store.dispatch("content/create",{id:this.id,api:this.id,content:this.model.content,ignore:this.protectedFields})},immediate:!0}},created(){this.$events.on("model.reload",this.$reload),this.$events.on("keydown.left",this.toPrev),this.$events.on("keydown.right",this.toNext)},destroyed(){this.$events.off("model.reload",this.$reload),this.$events.off("keydown.left",this.toPrev),this.$events.off("keydown.right",this.toNext)},methods:{toPrev(t){this.prev&&"body"===t.target.localName&&this.$go(this.prev.link)},toNext(t){this.next&&"body"===t.target.localName&&this.$go(this.next.link)}}},null,null,!1,null,null,null,null).exports;const ur=at({extends:ar,props:{preview:Object},computed:{focus(){const t=this.$store.getters["content/values"]().focus;if(!t)return;const[e,i]=t.replaceAll("%","").split(" ");return{x:parseFloat(e),y:parseFloat(i)}},isFocusable(){return!this.isLocked&&this.preview.image.src&&this.permissions.update&&(!window.panel.multilang||0===window.panel.languages.length||window.panel.language.default)}},methods:{action(t){if("replace"===t)return this.$panel.upload.replace({...this.preview,...this.model})},setFocus(t){!0===this.$helper.object.isObject(t)&&(t=`${t.x}% ${t.y}%`),this.$store.dispatch("content/update",["focus",t])}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-file-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-id":t.model.id,"data-locked":t.isLocked,"data-template":t.blueprint},scopedSlots:t._u([{key:"topbar",fn:function(){return[e("k-prev-next",{attrs:{prev:t.prev,next:t.next}})]},proxy:!0}])},[e("k-header",{staticClass:"k-file-view-header",attrs:{editable:t.permissions.changeName&&!t.isLocked},on:{edit:function(e){return t.$dialog(t.id+"/changeName")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[e("k-button",{staticClass:"k-file-view-options",attrs:{link:t.preview.url,responsive:!0,title:t.$t("open"),icon:"open",size:"sm",target:"_blank",variant:"filled"}}),e("k-button",{staticClass:"k-file-view-options",attrs:{disabled:t.isLocked,dropdown:!0,title:t.$t("settings"),icon:"cog",size:"sm",variant:"filled"},on:{click:function(e){return t.$refs.settings.toggle()}}}),e("k-dropdown-content",{ref:"settings",attrs:{options:t.$dropdown(t.id),"align-x":"end"},on:{action:t.action}}),e("k-languages-dropdown")],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t._v(" "+t._s(t.model.filename)+" ")]),e("k-file-preview",t._b({attrs:{focus:t.focus},on:{focus:t.setFocus}},"k-file-preview",t.preview,!1)),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("file.blueprint",{blueprint:t.$esc(t.blueprint)}),lock:t.lock,parent:t.id,tab:t.tab}})],1)}),[],!1,null,null,null,null).exports;const cr=at({props:{details:{default:()=>[],type:Array},focus:{type:Object},focusable:Boolean,image:{default:()=>({}),type:Object},url:String},computed:{options(){return[{icon:"open",text:this.$t("open"),link:this.url,target:"_blank"},{icon:"cancel",text:this.$t("file.focus.reset"),click:()=>this.$refs.focus.reset(),when:this.focusable&&this.focus},{icon:"preview",text:this.$t("file.focus.placeholder"),click:()=>this.$refs.focus.set(),when:this.focusable&&!this.focus}]}},methods:{setFocus(t){if(!t)return this.$emit("focus",null);this.$emit("focus",{x:t.x.toFixed(1),y:t.y.toFixed(1)})}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-file-preview",attrs:{"data-has-focus":Boolean(t.focus)}},[e("div",{staticClass:"k-file-preview-thumb-column"},[e("div",{staticClass:"k-file-preview-thumb"},[t.image.src?[e("k-coords-input",{attrs:{disabled:!t.focusable,value:t.focus},on:{input:function(e){return t.setFocus(e)}}},[e("img",t._b({on:{dragstart:function(t){t.preventDefault()}}},"img",t.image,!1))]),e("k-button",{staticStyle:{color:"var(--color-gray-500)"},attrs:{icon:"dots",size:"xs"},on:{click:function(e){return t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",attrs:{options:t.options,theme:"light"}})]:e("k-icon",{staticClass:"k-item-icon",attrs:{color:t.$helper.color(t.image.color),type:t.image.icon}})],2)]),e("div",{staticClass:"k-file-preview-details"},[e("dl",[t._l(t.details,(function(i){return e("div",{key:i.title},[e("dt",[t._v(t._s(i.title))]),e("dd",[i.link?e("k-link",{attrs:{to:i.link,tabindex:"-1",target:"_blank"}},[t._v(" /"+t._s(i.text)+" ")]):[t._v(" "+t._s(i.text)+" ")]],2)])})),t.image.src?e("div",{staticClass:"k-file-preview-focus-info"},[e("dt",[t._v(t._s(t.$t("file.focus.title")))]),e("dd",[t.focusable?e("k-file-focus-button",{ref:"focus",attrs:{focus:t.focus},on:{set:t.setFocus}}):t.focus?[t._v(" "+t._s(t.focus.x)+"% "+t._s(t.focus.y)+"% ")]:[t._v("–")]],2)]):t._e()],2)])])}),[],!1,null,null,null,null).exports;const dr=at({props:{focus:Object},methods:{set(){this.$emit("set",{x:50,y:50})},reset(){this.$emit("set",void 0)}}},(function(){var t=this;return(0,t._self._c)("k-button",{attrs:{icon:t.focus?"cancel-small":"preview",title:t.focus?t.$t("file.focus.reset"):void 0,size:"xs",variant:"filled"},on:{click:function(e){t.focus?t.reset():t.set()}}},[t.focus?[t._v(t._s(t.focus.x)+"% "+t._s(t.focus.y)+"%")]:[t._v(t._s(t.$t("file.focus.placeholder")))]],2)}),[],!1,null,null,null,null).exports;const pr=at({props:{languages:{type:Array,default:()=>[]},variables:{type:Boolean,default:!0}},computed:{languagesCollection(){return this.languages.map((t=>({...t,image:{back:"black",color:"gray",icon:"translate"},link:()=>{if(!1===this.variables)return null;this.$go(`languages/${t.id}`)},options:[{icon:"edit",text:this.$t("edit"),disabled:!1===this.variables,click:()=>this.$go(`languages/${t.id}`)},{icon:"cog",text:this.$t("settings"),click:()=>this.$dialog(`languages/${t.id}/update`)},{icon:"trash",text:this.$t("delete"),disabled:!1===t.deletable,click:()=>this.$dialog(`languages/${t.id}/delete`)}]})))},primaryLanguage(){return this.languagesCollection.filter((t=>t.default))},secondaryLanguages(){return this.languagesCollection.filter((t=>!1===t.default))}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-languages-view"},[e("k-header",[t._v(" "+t._s(t.$t("view.languages"))+" "),e("k-button-group",{attrs:{slot:"buttons"},slot:"buttons"},[e("k-button",{attrs:{text:t.$t("language.create"),icon:"add",size:"sm",variant:"filled"},on:{click:function(e){return t.$dialog("languages/create")}}})],1)],1),t.languages.length>0?[e("k-section",{attrs:{headline:t.$t("languages.default")}},[e("k-collection",{attrs:{items:t.primaryLanguage}})],1),e("k-section",{attrs:{headline:t.$t("languages.secondary")}},[t.secondaryLanguages.length?e("k-collection",{attrs:{items:t.secondaryLanguages}}):e("k-empty",{attrs:{icon:"translate"},on:{click:function(e){return t.$dialog("languages/create")}}},[t._v(" "+t._s(t.$t("languages.secondary.empty"))+" ")])],1)]:0===t.languages.length?[e("k-empty",{attrs:{icon:"translate"},on:{click:function(e){return t.$dialog("languages/create")}}},[t._v(" "+t._s(t.$t("languages.empty"))+" ")])]:t._e()],2)}),[],!1,null,null,null,null).exports;const hr=at({props:{code:String,deletable:Boolean,direction:String,id:String,info:Array,next:Object,name:String,prev:Object,translations:Array,url:String},methods:{createTranslation(){this.$dialog(`languages/${this.id}/translations/create`)},option(t,e){this.$dialog(`languages/${this.id}/translations/${window.btoa(encodeURIComponent(e.key))}/${t}`)},remove(){this.$dialog(`languages/${this.id}/delete`)},update(t){this.$dialog(`languages/${this.id}/update`,{on:{ready:()=>{this.$panel.dialog.focus(t)}}})},updateTranslation({row:t}){this.$dialog(`languages/${this.id}/translations/${window.btoa(encodeURIComponent(t.key))}/update`)}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-language-view",scopedSlots:t._u([{key:"topbar",fn:function(){return[e("k-prev-next",{attrs:{prev:t.prev,next:t.next}})]},proxy:!0}])},[e("k-header",{attrs:{editable:!0},on:{edit:function(e){return t.update()}}},[t._v(" "+t._s(t.name)+" "),e("k-button-group",{attrs:{slot:"buttons"},slot:"buttons"},[e("k-button",{attrs:{link:t.url,title:t.$t("open"),icon:"open",size:"sm",target:"_blank",variant:"filled"}}),e("k-button",{attrs:{title:t.$t("settings"),icon:"cog",size:"sm",variant:"filled"},on:{click:function(e){return t.update()}}}),t.deletable?e("k-button",{attrs:{title:t.$t("delete"),icon:"trash",size:"sm",variant:"filled"},on:{click:function(e){return t.remove()}}}):t._e()],1)],1),e("k-section",{attrs:{headline:t.$t("language.settings")}},[e("k-stats",{attrs:{reports:t.info,size:"small"}})],1),e("k-section",{attrs:{buttons:[{click:t.createTranslation,icon:"add",text:t.$t("add")}],headline:t.$t("language.variables")}},[t.translations.length?[e("k-table",{attrs:{columns:{key:{label:t.$t("language.variable.key"),mobile:!0,width:"1/4"},value:{label:t.$t("language.variable.value"),mobile:!0}},rows:t.translations},on:{cell:t.updateTranslation,option:t.option}})]:[e("k-empty",{attrs:{icon:"translate"},on:{click:t.createTranslation}},[t._v(" "+t._s(t.$t("language.variables.empty"))+" ")])]],2)],1)}),[],!1,null,null,null,null).exports;const mr=at({components:{"k-login-plugin":window.panel.plugins.login??Ye},props:{methods:Array,pending:Object},data:()=>({issue:""}),computed:{form(){return this.pending.email?"code":"login"},viewClass(){return"code"===this.form?"k-login-code-view":"k-login-view"}},created(){this.$store.dispatch("content/clear")},methods:{async onError(t){null!==t?(!0===t.details.challengeDestroyed&&await this.$reload({globals:["$system"]}),this.issue=t.message):this.issue=null}}},(function(){var t=this,e=t._self._c;return e("k-panel-outside",{class:t.viewClass},[e("div",{staticClass:"k-dialog k-login-dialog"},[e("h1",{staticClass:"sr-only"},[t._v(" "+t._s(t.$t("login"))+" ")]),t.issue?e("k-login-alert",{nativeOn:{click:function(e){t.issue=null}}},[t._v(" "+t._s(t.issue)+" ")]):t._e(),e("k-dialog-body",["code"===t.form?e("k-login-code",t._b({on:{error:t.onError}},"k-login-code",t.$props,!1)):e("k-login-plugin",{attrs:{methods:t.methods},on:{error:t.onError}})],1)],1)])}),[],!1,null,null,null,null).exports;const fr=at({props:{isInstallable:Boolean,isInstalled:Boolean,isOk:Boolean,requirements:Object,translations:Array},data(){return{user:{name:"",email:"",language:this.$panel.translation.code,password:"",role:"admin"}}},computed:{fields(){return{email:{label:this.$t("email"),type:"email",link:!1,autofocus:!0,required:!0},password:{label:this.$t("password"),type:"password",placeholder:this.$t("password")+" …",required:!0},language:{label:this.$t("language"),type:"select",options:this.translations,icon:"translate",empty:!1,required:!0}}},isReady(){return this.isOk&&this.isInstallable},isComplete(){return this.isOk&&this.isInstalled}},methods:{async install(){try{await this.$api.system.install(this.user),await this.$reload({globals:["$system","$translation"]}),this.$panel.notification.success({message:this.$t("welcome")+"!",icon:"smile"})}catch(t){this.$panel.error(t)}}}},(function(){var t=this,e=t._self._c;return e("k-panel-outside",{staticClass:"k-installation-view"},[e("div",{staticClass:"k-dialog k-installation-dialog"},[e("k-dialog-body",[t.isComplete?e("k-text",[e("k-headline",[t._v(t._s(t.$t("installation.completed")))]),e("k-link",{attrs:{to:"/login"}},[t._v(" "+t._s(t.$t("login"))+" ")])],1):t.isReady?e("form",{on:{submit:function(e){return e.preventDefault(),t.install.apply(null,arguments)}}},[e("h1",{staticClass:"sr-only"},[t._v(" "+t._s(t.$t("installation"))+" ")]),e("k-fieldset",{attrs:{fields:t.fields,novalidate:!0,value:t.user},on:{input:function(e){t.user=e}}}),e("k-button",{attrs:{text:t.$t("install"),icon:"check",size:"lg",theme:"positive",type:"submit",variant:"filled"}})],1):e("div",[e("k-headline",[t._v(" "+t._s(t.$t("installation.issues.headline"))+" ")]),e("ul",{staticClass:"k-installation-issues"},[!1===t.isInstallable?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.disabled"))}})],1):t._e(),!1===t.requirements.php?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.php"))}})],1):t._e(),!1===t.requirements.server?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.server"))}})],1):t._e(),!1===t.requirements.mbstring?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.mbstring"))}})],1):t._e(),!1===t.requirements.curl?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.curl"))}})],1):t._e(),!1===t.requirements.accounts?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.accounts"))}})],1):t._e(),!1===t.requirements.content?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.content"))}})],1):t._e(),!1===t.requirements.media?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.media"))}})],1):t._e(),!1===t.requirements.sessions?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.sessions"))}})],1):t._e()]),e("k-button",{attrs:{text:t.$t("retry"),icon:"refresh",size:"lg",theme:"positive",variant:"filled"},on:{click:t.$reload}})],1)],1)],1)])}),[],!1,null,null,null,null).exports;const gr=at({data:()=>({isLoading:!1,values:{password:null,passwordConfirmation:null}}),computed:{fields(){return{password:{autofocus:!0,label:this.$t("user.changePassword.new"),icon:"key",type:"password",width:"1/2"},passwordConfirmation:{label:this.$t("user.changePassword.new.confirm"),icon:"key",type:"password",width:"1/2"}}}},mounted(){this.$panel.title=this.$t("view.resetPassword")},methods:{async submit(){if(!this.values.password||this.values.password.length<8)return this.$panel.notification.error(this.$t("error.user.password.invalid"));if(this.values.password!==this.values.passwordConfirmation)return this.$panel.notification.error(this.$t("error.user.password.notSame"));this.isLoading=!0;try{await this.$api.users.changePassword(this.$panel.user.id,this.values.password),this.$panel.notification.success(),this.$go("/")}catch(t){this.$panel.notification.error(t)}finally{this.isLoading=!1}}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-password-reset-view"},[e("form",{on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("k-header",{scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button",{attrs:{icon:"check",theme:"notice",type:"submit",variant:"filled",size:"sm"}},[t._v(" "+t._s(t.$t("change"))+" "),t.isLoading?[t._v(" … ")]:t._e()],2)]},proxy:!0}])},[t._v(" "+t._s(t.$t("view.resetPassword"))+" ")]),e("k-user-info",{attrs:{user:t.$panel.user}}),e("k-fieldset",{attrs:{fields:t.fields,value:t.values}})],1)])}),[],!1,null,null,null,null).exports;const kr=at({props:{user:[Object,String]}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-user-info"},[t.user.avatar?e("k-image-frame",{attrs:{cover:!0,src:t.user.avatar.url,ratio:"1/1"}}):e("k-icon-frame",{attrs:{color:"white",back:"black",icon:"user"}}),t._v(" "+t._s(t.user.name??t.user.email??t.user)+" ")],1)}),[],!1,null,null,null,null).exports;const br=at({extends:ar,props:{status:Object},computed:{protectedFields:()=>["title"],statusBtn(){return{...this.$helper.page.status.call(this,this.model.status,!this.permissions.changeStatus||this.isLocked),responsive:!0,size:"sm",text:this.status.label,variant:"filled"}}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-page-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-id":t.model.id,"data-locked":t.isLocked,"data-template":t.blueprint},scopedSlots:t._u([{key:"topbar",fn:function(){return[t.model.id?e("k-prev-next",{attrs:{prev:t.prev,next:t.next}}):t._e()]},proxy:!0}])},[e("k-header",{staticClass:"k-page-view-header",attrs:{editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.$dialog(t.id+"/changeTitle")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[t.permissions.preview&&t.model.previewUrl?e("k-button",{staticClass:"k-page-view-preview",attrs:{link:t.model.previewUrl,title:t.$t("open"),icon:"open",target:"_blank",variant:"filled",size:"sm"}}):t._e(),e("k-button",{staticClass:"k-page-view-options",attrs:{disabled:!0===t.isLocked,dropdown:!0,title:t.$t("settings"),icon:"cog",variant:"filled",size:"sm"},on:{click:function(e){return t.$refs.settings.toggle()}}}),e("k-dropdown-content",{ref:"settings",attrs:{options:t.$dropdown(t.id),"align-x":"end"}}),e("k-languages-dropdown"),t.status?e("k-button",t._b({staticClass:"k-page-view-status",attrs:{variant:"filled"},on:{click:function(e){return t.$dialog(t.id+"/changeStatus")}}},"k-button",t.statusBtn,!1)):t._e()],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t._v(" "+t._s(t.model.title)+" ")]),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("page.blueprint",{blueprint:t.$esc(t.blueprint)}),lock:t.lock,parent:t.id,tab:t.tab}})],1)}),[],!1,null,null,null,null).exports;const vr=at({extends:ar,computed:{protectedFields:()=>["title"]}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-site-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-locked":t.isLocked,"data-id":"/","data-template":"site"}},[e("k-header",{staticClass:"k-site-view-header",attrs:{editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.$dialog("site/changeTitle")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[e("k-button",{staticClass:"k-site-view-preview",attrs:{link:t.model.previewUrl,title:t.$t("open"),icon:"open",target:"_blank",variant:"filled",size:"sm"}}),e("k-languages-dropdown")],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t._v(" "+t._s(t.model.title)+" ")]),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("site.blueprint"),lock:t.lock,tab:t.tab,parent:"site"},on:{submit:function(e){return t.$emit("submit",e)}}})],1)}),[],!1,null,null,null,null).exports;const yr=at({components:{Plugins:at({props:{plugins:Array}},(function(){var t=this,e=t._self._c;return t.plugins.length?e("k-section",{attrs:{headline:t.$t("plugins"),link:"https://getkirby.com/plugins"}},[e("k-table",{attrs:{index:!1,columns:{name:{label:t.$t("name"),type:"url",mobile:!0},author:{label:t.$t("author")},license:{label:t.$t("license")},version:{label:t.$t("version"),type:"update-status",mobile:!0,width:"10rem"}},rows:t.plugins}})],1):t._e()}),[],!1,null,null,null,null).exports,Security:at({props:{exceptions:Array,security:Array,urls:Object},data(){return{issues:bt(this.security)}},async created(){console.info("Running system health checks for the Panel system view; failed requests in the following console output are expected behavior.");const t=(Promise.allSettled??Promise.all).bind(Promise),e=Object.entries(this.urls).map(this.check);await t(e),console.info(`System health checks ended. ${this.issues.length-this.security.length} issues with accessible files/folders found (see the security list in the system view).`)},methods:{async check([t,e]){if(!e)return;const{status:i}=await fetch(e,{cache:"no-store"});i<400&&this.issues.push({id:t,text:this.$t("system.issues."+t),link:"https://getkirby.com/security/"+t,icon:"folder"})},retry(){this.$go(window.location.href)}}},(function(){var t=this,e=t._self._c;return t.issues.length?e("k-section",{attrs:{headline:t.$t("security"),buttons:[{title:t.$t("retry"),icon:"refresh",click:t.retry}]}},[e("k-items",{attrs:{items:t.issues.map((t=>({image:{back:"var(--color-red-200)",icon:t.icon??"alert",color:"var(--color-red)"},target:"_blank",...t})))}})],1):t._e()}),[],!1,null,null,null,null).exports},props:{environment:Array,exceptions:Array,plugins:Array,security:Array,urls:Object},created(){this.exceptions.length>0&&(console.info("The following errors occurred during the update check of Kirby and/or plugins:"),this.exceptions.map((t=>console.warn(t))),console.info("End of errors from the update check."))}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-system-view"},[e("k-header",[t._v(" "+t._s(t.$t("view.system"))+" ")]),e("k-section",{attrs:{headline:t.$t("environment")}},[e("k-stats",{staticClass:"k-system-info",attrs:{reports:t.environment,size:"medium"}})],1),e("security",{attrs:{security:t.security,urls:t.urls}}),e("plugins",{attrs:{plugins:t.plugins}})],1)}),[],!1,null,null,null,null).exports;const $r=at({props:{value:[String,Object]}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-table-update-status-cell"},["string"==typeof t.value?e("span",{staticClass:"k-table-update-status-cell-version"},[t._v(" "+t._s(t.value)+" ")]):[e("k-button",{staticClass:"k-table-update-status-cell-button",attrs:{dropdown:!0,icon:t.value.icon,href:t.value.url,text:t.value.currentVersion,theme:t.value.theme,size:"xs",variant:"filled"},on:{click:function(e){return e.stopPropagation(),t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",attrs:{"align-x":"end"}},[e("dl",{staticClass:"k-plugin-info"},[e("dt",[t._v(t._s(t.$t("plugin")))]),e("dd",[t._v(t._s(t.value.pluginName))]),e("dt",[t._v(t._s(t.$t("version.current")))]),e("dd",[t._v(t._s(t.value.currentVersion))]),e("dt",[t._v(t._s(t.$t("version.latest")))]),e("dd",[t._v(t._s(t.value.latestVersion))]),e("dt",[t._v(t._s(t.$t("system.updateStatus")))]),e("dd",{attrs:{"data-theme":t.value.theme}},[t._v(t._s(t.value.label))])]),t.value.url?[e("hr"),e("k-button",{attrs:{icon:"open",link:t.value.url}},[t._v(" "+t._s(t.$t("versionInformation"))+" ")])]:t._e()],2)]],2)}),[],!1,null,null,null,null).exports;const wr=at({extends:ar},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-user-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-id":t.model.id,"data-locked":t.isLocked,"data-template":t.blueprint},scopedSlots:t._u([{key:"topbar",fn:function(){return[t.model.account?e("k-prev-next",{attrs:{prev:t.prev,next:t.next}}):t._e()]},proxy:!0}])},[e("k-header",{staticClass:"k-user-view-header",attrs:{editable:t.permissions.changeName&&!t.isLocked},on:{edit:function(e){return t.$dialog(t.id+"/changeName")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[e("k-button",{staticClass:"k-user-view-options",attrs:{disabled:t.isLocked,dropdown:!0,title:t.$t("settings"),icon:"cog",size:"sm",variant:"filled"},on:{click:function(e){return t.$refs.settings.toggle()}}}),e("k-dropdown-content",{ref:"settings",attrs:{"align-x":"end",options:t.$dropdown(t.id)}}),e("k-languages-dropdown")],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t.model.name&&0!==t.model.name.length?[t._v(" "+t._s(t.model.name)+" ")]:e("span",{staticClass:"k-user-name-placeholder"},[t._v(" "+t._s(t.$t("name"))+" … ")])],2),e("k-user-profile",{attrs:{"is-locked":t.isLocked,model:t.model,permissions:t.permissions}}),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("user.blueprint",{blueprint:t.$esc(t.blueprint)}),lock:t.lock,parent:t.id,tab:t.tab}})],1)}),[],!1,null,null,null,null).exports;const xr=at({extends:wr,prevnext:!1},null,null,!1,null,null,null,null).exports;const _r=at({props:{model:Object},methods:{async deleteAvatar(){await this.$api.users.deleteAvatar(this.model.id),this.$panel.notification.success(),this.$reload()},uploadAvatar(){this.$panel.upload.pick({url:this.$panel.urls.api+"/"+this.model.link+"/avatar",accept:"image/*",immediate:!0,multiple:!1})}}},(function(){var t=this,e=t._self._c;return e("div",[e("k-button",{staticClass:"k-user-view-image",attrs:{title:t.$t("avatar"),variant:"filled"},on:{click:function(e){t.model.avatar?t.$refs.avatar.toggle():t.uploadAvatar()}}},[t.model.avatar?e("k-image-frame",{attrs:{cover:!0,src:t.model.avatar}}):e("k-icon-frame",{attrs:{icon:"user"}})],1),t.model.avatar?e("k-dropdown-content",{ref:"avatar",attrs:{options:[{icon:"upload",text:t.$t("change"),click:t.uploadAvatar},{icon:"trash",text:t.$t("delete"),click:t.deleteAvatar}]}}):t._e()],1)}),[],!1,null,null,null,null).exports;const Sr=at({props:{isLocked:Boolean,model:Object,permissions:Object}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-user-profile"},[e("k-user-avatar",{attrs:{model:t.model,"aria-disabled":t.isLocked}}),e("k-button-group",{attrs:{buttons:[{icon:"email",text:`${t.model.email}`,title:`${t.$t("email")}: ${t.model.email}`,disabled:!t.permissions.changeEmail||t.isLocked,click:()=>t.$dialog(t.model.link+"/changeEmail")},{icon:"bolt",text:`${t.model.role}`,title:`${t.$t("role")}: ${t.model.role}`,disabled:!t.permissions.changeRole||t.isLocked,click:()=>t.$dialog(t.model.link+"/changeRole")},{icon:"translate",text:`${t.model.language}`,title:`${t.$t("language")}: ${t.model.language}`,disabled:!t.permissions.changeLanguage||t.isLocked,click:()=>t.$dialog(t.model.link+"/changeLanguage")}]}})],1)}),[],!1,null,null,null,null).exports;const Cr=at({props:{role:Object,roles:Array,search:String,title:String,users:Object},computed:{empty(){return{icon:"users",text:this.$t("role.empty")}},items(){return this.users.data.map((t=>(t.options=this.$dropdown(t.link),t)))},tabs(){const t=[{name:"all",label:this.$t("role.all"),link:"/users"}];for(const e of this.roles)t.push({name:e.id,label:e.title,link:"/users?role="+e.id});return t}},methods:{create(){var t;this.$dialog("users/create",{query:{role:null==(t=this.role)?void 0:t.id}})},paginate(t){this.$reload({query:{page:t.page}})}}},(function(){var t,e=this,i=e._self._c;return i("k-panel-inside",{staticClass:"k-users-view"},[i("k-header",{staticClass:"k-users-view-header",scopedSlots:e._u([{key:"buttons",fn:function(){return[i("k-button",{attrs:{disabled:!e.$panel.permissions.users.create,text:e.$t("user.create"),icon:"add",size:"sm",variant:"filled"},on:{click:e.create}})]},proxy:!0}])},[e._v(" "+e._s(e.$t("view.users"))+" ")]),i("k-tabs",{attrs:{tab:(null==(t=e.role)?void 0:t.id)??"all",tabs:e.tabs}}),i("k-collection",{attrs:{empty:e.empty,items:e.items,pagination:e.users.pagination},on:{paginate:e.paginate}})],1)}),[],!1,null,null,null,null).exports;const Or=at({props:{id:String},created(){window.panel.deprecated(" will be removed in a future version.")}},(function(){var t=this._self._c;return t("k-panel-inside",[t("k-"+this.id+"-plugin-view",{tag:"component"})],1)}),[],!1,null,null,null,null).exports,Ar={install(t){t.component("k-error-view",lr),t.component("k-search-view",rr),t.component("k-file-view",ur),t.component("k-file-preview",cr),t.component("k-file-focus-button",dr),t.component("k-languages-view",pr),t.component("k-language-view",hr),t.component("k-login-view",mr),t.component("k-installation-view",fr),t.component("k-reset-password-view",gr),t.component("k-user-info",kr),t.component("k-page-view",br),t.component("k-site-view",vr),t.component("k-system-view",yr),t.component("k-table-update-status-cell",$r),t.component("k-account-view",xr),t.component("k-user-avatar",_r),t.component("k-user-profile",Sr),t.component("k-user-view",wr),t.component("k-users-view",Cr),t.component("k-plugin-view",Or)}},Mr={install(t){t.use(gt),t.use(ne),t.use(we),t.use(Te),t.use(qo),t.use(Fo),t.use(cl),t.use($l),t.use(Pl),t.use(Ql),t.use(Wl),t.use(Ql),t.use(or),t.use(Ar),t.use(L)}},jr={install(t){window.onunhandledrejection=t=>{t.preventDefault(),window.panel.error(t.reason)},t.config.errorHandler=window.panel.error.bind(window.panel)}},Ir=(t={})=>{var e=t.desc?-1:1,i=-e,n=/^0/,s=/\s+/g,o=/^\s+|\s+$/g,l=/[^\x00-\x80]/,r=/^0x[0-9a-f]+$/i,a=/(0x[\da-fA-F]+|(^[\+\-]?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?(?=\D|\s|$))|\d+)/g,u=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,c=t.insensitive?function(t){return function(t){if(t.toLocaleLowerCase)return t.toLocaleLowerCase();return t.toLowerCase()}(""+t).replace(o,"")}:function(t){return(""+t).replace(o,"")};function d(t){return t.replace(a,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")}function p(t,e){return(!t.match(n)||1===e)&&parseFloat(t)||t.replace(s," ").replace(o,"")||0}return function(t,n){var s=c(t),o=c(n);if(!s&&!o)return 0;if(!s&&o)return i;if(s&&!o)return e;var a=d(s),h=d(o),m=parseInt(s.match(r),16)||1!==a.length&&Date.parse(s),f=parseInt(o.match(r),16)||m&&o.match(u)&&Date.parse(o)||null;if(f){if(mf)return e}for(var g=a.length,k=h.length,b=0,v=Math.max(g,k);b0)return e;if(w<0)return i;if(b===v-1)return 0}else{if(y<$)return i;if(y>$)return e}}return 0}};RegExp.escape=function(t){return t.replace(new RegExp("[-/\\\\^$*+?.()[\\]{}]","gu"),"\\$&")},Array.fromObject=function(t){return Array.isArray(t)?t:Object.values(t??{})};Array.prototype.sortBy=function(t){const e=t.split(" "),i=e[0],n=e[1]??"asc",s=Ir({desc:"desc"===n,insensitive:!0});return this.sort(((t,e)=>{const n=String(t[i]??""),o=String(e[i]??"");return s(n,o)}))},Array.prototype.split=function(t){return this.reduce(((e,i)=>(i===t?e.push([]):e[e.length-1].push(i),e)),[[]])},Array.wrap=function(t){return Array.isArray(t)?t:[t]};const Tr={search:(t,e,i={})=>{if((e??"").length<=(i.min??0))return t;const n=new RegExp(RegExp.escape(e),"ig"),s=i.field??"text",o=t.filter((t=>!!t[s]&&null!==t[s].match(n)));return i.limit?o.slice(0,i.limit):o}};const Er={read:function(t,e=!1){if(!t)return null;if("string"==typeof t)return t;if(t instanceof ClipboardEvent){if(t.preventDefault(),!0===e)return t.clipboardData.getData("text/plain");const i=t.clipboardData.getData("text/html")||t.clipboardData.getData("text/plain")||null;if(i)return i.replace(/\u00a0/g," ")}return null},write:function(t,e){if("string"!=typeof t&&(t=JSON.stringify(t,null,2)),e&&e instanceof ClipboardEvent)return e.preventDefault(),e.clipboardData.setData("text/plain",t),!0;const i=document.createElement("textarea");if(i.value=t,document.body.append(i),navigator.userAgent.match(/ipad|ipod|iphone/i)){i.contentEditable=!0,i.readOnly=!0;const t=document.createRange();t.selectNodeContents(i);const e=window.getSelection();e.removeAllRanges(),e.addRange(t),i.setSelectionRange(0,999999)}else i.select();return document.execCommand("copy"),i.remove(),!0}};function Lr(t){if("string"==typeof t){if("pattern"===(t=t.toLowerCase()))return"var(--pattern)";if(!1===t.startsWith("#")&&!1===t.startsWith("var(")){const e="--color-"+t;if(window.getComputedStyle(document.documentElement).getPropertyValue(e))return`var(${e})`}return t}}function Dr(t,e=!1){if(!t.match("youtu"))return!1;let i=null;try{i=new URL(t)}catch(d){return!1}const n=i.pathname.split("/").filter((t=>""!==t)),s=n[0],o=n[1],l="https://"+(!0===e?"www.youtube-nocookie.com":i.host)+"/embed",r=t=>!!t&&null!==t.match(/^[a-zA-Z0-9_-]+$/);let a=i.searchParams,u=null;switch(n.join("/")){case"embed/videoseries":case"playlist":r(a.get("list"))&&(u=l+"/videoseries");break;case"watch":r(a.get("v"))&&(u=l+"/"+a.get("v"),a.has("t")&&a.set("start",a.get("t")),a.delete("v"),a.delete("t"));break;default:i.host.includes("youtu.be")&&r(s)?(u=!0===e?"https://www.youtube-nocookie.com/embed/"+s:"https://www.youtube.com/embed/"+s,a.has("t")&&a.set("start",a.get("t")),a.delete("t")):["embed","shorts"].includes(s)&&r(o)&&(u=l+"/"+o)}if(!u)return!1;const c=a.toString();return c.length&&(u+="?"+c),u}function Br(t,e=!1){let i=null;try{i=new URL(t)}catch(a){return!1}const n=i.pathname.split("/").filter((t=>""!==t));let s=i.searchParams,o=null;switch(!0===e&&s.append("dnt",1),i.host){case"vimeo.com":case"www.vimeo.com":o=n[0];break;case"player.vimeo.com":o=n[1]}if(!o||!o.match(/^[0-9]*$/))return!1;let l="https://player.vimeo.com/video/"+o;const r=s.toString();return r.length&&(l+="?"+r),l}const qr={youtube:Dr,vimeo:Br,video:function(t,e=!1){return!0===t.includes("youtu")?Dr(t,e):!0===t.includes("vimeo")&&Br(t,e)}};function Pr(t){if(void 0!==t.default)return bt(t.default);const e=window.panel.app.$options.components[`k-${t.type}-field`],i=null==e?void 0:e.options.props.value;if(void 0===i)return;const n=null==i?void 0:i.default;return"function"==typeof n?n():void 0!==n?n:null}const Nr={defaultValue:Pr,form:function(t){const e={};for(const i in t){const n=Pr(t[i]);void 0!==n&&(e[i]=n)}return e},isVisible:function(t,e){if("hidden"===t.type||!0===t.hidden)return!1;if(!t.when)return!0;for(const i in t.when){const n=e[i.toLowerCase()],s=t.when[i];if((void 0!==n||""!==s&&s!==[])&&n!==s)return!1}return!0},subfields:function(t,e){let i={};for(const n in e){const s=e[n];s.section=t.name,t.endpoints&&(s.endpoints={field:t.endpoints.field+"+"+n,section:t.endpoints.section,model:t.endpoints.model}),i[n]=s}return i}},zr=t=>t.split(".").slice(-1).join(""),Fr=t=>t.split(".").slice(0,-1).join("."),Rr=t=>Intl.NumberFormat("en",{notation:"compact",style:"unit",unit:"byte",unitDisplay:"narrow"}).format(t),Yr={extension:zr,name:Fr,niceSize:Rr};function Ur(t,e){if("string"==typeof t&&(t=document.querySelector(t)),!t)return!1;if(!e&&t.contains(document.activeElement)&&t!==document.activeElement)return!1;const i=["[autofocus]","[data-autofocus]","input","textarea","select","[contenteditable=true]","[type=submit]","button"];e&&i.unshift(`[name="${e}"]`);const n=function(t,e){for(const i of e){const e=t.querySelector(i);if(!0===Hr(e))return e}return null}(t,i);return n?(n.focus(),n):!0===Hr(t)&&(t.focus(),t)}function Hr(t){return!!t&&(!t.matches("[disabled], [aria-disabled], input[type=hidden]")&&(!t.closest("[aria-disabled]")&&!t.closest("[disabled]")&&"function"==typeof t.focus))}const Vr=t=>"function"==typeof window.Vue.options.components[t],Kr=t=>!!t.dataTransfer&&(!!t.dataTransfer.types&&(!0===t.dataTransfer.types.includes("Files")&&!1===t.dataTransfer.types.includes("text/plain")));const Wr={metaKey:function(){return window.navigator.userAgent.indexOf("Mac")>-1?"cmd":"ctrl"}};const Jr={status:function(t,e=!1){const i={class:"k-status-icon",icon:"status-"+t,title:window.panel.$t("page.status")+": "+window.panel.$t("page.status."+t),disabled:e,size:"xs",style:"--icon-size: 15px"};return e&&(i.title+=` (${window.panel.$t("disabled")})`),i.theme="draft"===t?"negative":"unlisted"===t?"info":"positive",i}},Gr=(t="3/2",e="100%",i=!0)=>{const n=String(t).split("/");if(2!==n.length)return e;const s=Number(n[0]),o=Number(n[1]);let l=100;return 0!==s&&0!==o&&(l=i?l/s*o:l/o*s,l=parseFloat(String(l)).toFixed(2)),l+"%"},Xr={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function Zr(t){return String(t).replace(/[&<>"'`=/]/g,(t=>Xr[t]))}function Qr(t){return!t||0===String(t).length}function ta(t){const e=String(t);return e.charAt(0).toLowerCase()+e.slice(1)}function ea(t="",e=""){const i=new RegExp(`^(${e})+`,"g");return t.replace(i,"")}function ia(t="",e=""){const i=new RegExp(`(${e})+$`,"g");return t.replace(i,"")}function na(t,e={}){const i=(t,e={})=>{const n=e[Zr(t.shift())]??"…";return"…"===n||0===t.length?n:i(t,n)},n="[{]{1,2}[\\s]?",s="[\\s]?[}]{1,2}";return(t=t.replace(new RegExp(`${n}(.*?)${s}`,"gi"),((t,n)=>i(n.split("."),e)))).replace(new RegExp(`${n}.*${s}`,"gi"),"…")}function sa(t){const e=String(t);return e.charAt(0).toUpperCase()+e.slice(1)}function oa(){let t,e,i="";for(t=0;t<32;t++)e=16*Math.random()|0,8!=t&&12!=t&&16!=t&&20!=t||(i+="-"),i+=(12==t?4:16==t?3&e|8:e).toString(16);return i}const la={camelToKebab:function(t){return t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()},escapeHTML:Zr,hasEmoji:function(t){if("string"!=typeof t)return!1;const e=t.match(/(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|[\ud83c\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|[\ud83c\ude32-\ude3a]|[\ud83c\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/i);return null!==e&&null!==e.length},isEmpty:Qr,lcfirst:ta,ltrim:ea,pad:function(t,e=2){t=String(t);let i="";for(;i.length]+)>)/gi,"")},template:na,ucfirst:sa,ucwords:function(t){return String(t).split(/ /g).map((t=>sa(t))).join(" ")},unescapeHTML:function(t){for(const e in Xr)t=String(t).replaceAll(Xr[e],e);return t},uuid:oa},ra=async(t,e)=>new Promise(((i,n)=>{const s={url:"/",field:"file",method:"POST",filename:t.name,headers:{},attributes:{},complete:()=>{},error:()=>{},success:()=>{},progress:()=>{}},o=Object.assign(s,e),l=new XMLHttpRequest,r=new FormData;r.append(o.field,t,o.filename);for(const t in o.attributes)r.append(t,o.attributes[t]);const a=e=>{if(e.lengthComputable&&o.progress){const i=Math.max(0,Math.min(100,Math.ceil(e.loaded/e.total*100)));o.progress(l,t,i)}};l.upload.addEventListener("loadstart",a),l.upload.addEventListener("progress",a),l.addEventListener("load",(e=>{let s=null;try{s=JSON.parse(e.target.response)}catch(r){s={status:"error",message:"The file could not be uploaded"}}"error"===s.status?(o.error(l,t,s),n(s)):(o.progress(l,t,100),o.success(l,t,s),i(s))})),l.addEventListener("error",(e=>{const i=JSON.parse(e.target.response);o.progress(l,t,100),o.error(l,t,i),n(i)})),l.open(o.method,o.url,!0);for(const t in o.headers)l.setRequestHeader(t,o.headers[t]);l.send(r)}));function aa(){var t;return new URL((null==(t=document.querySelector("base"))?void 0:t.href)??window.location.origin)}function ua(t={},e={}){e instanceof URL&&(e=e.search);const i=new URLSearchParams(e);for(const[n,s]of Object.entries(t))null!==s&&i.set(n,s);return i}function ca(t="",e={},i){return(t=fa(t,i)).search=ua(e,t.search),t}function da(t){return null!==String(t).match(/^https?:\/\//)}function pa(t){return fa(t).origin===window.location.origin}function ha(t){if(t instanceof URL||t instanceof Location)return!0;if("string"!=typeof t)return!1;try{return new URL(t,window.location),!0}catch(e){return!1}}function ma(t,e){return!0===da(t)?t:(e=e??aa(),(e=String(e).replaceAll(/\/$/g,""))+"/"+(t=String(t).replaceAll(/^\//g,"")))}function fa(t,e){return t instanceof URL?t:new URL(ma(t,e))}const ga={base:aa,buildUrl:ca,buildQuery:ua,isAbsolute:da,isSameOrigin:pa,isUrl:ha,makeAbsolute:ma,toObject:fa},ka={install(t){t.prototype.$helper={array:Tr,clipboard:Er,clone:wt.clone,color:Lr,embed:qr,focus:Ur,isComponent:Vr,isUploadEvent:Kr,debounce:Nt,field:Nr,file:Yr,keyboard:Wr,object:wt,page:Jr,pad:la.pad,ratio:Gr,slug:la.slug,sort:Ir,string:la,upload:ra,url:ga,uuid:la.uuid},t.prototype.$esc=la.escapeHTML}},ba={install(t){t.directive("direction",{inserted(t,e,i){!0!==i.context.disabled?t.dir=window.panel.translation.direction:t.dir=null}})}},va={install(t){window.panel.redirect=window.panel.redirect.bind(window.panel),window.panel.reload=window.panel.reload.bind(window.panel),window.panel.request=window.panel.request.bind(window.panel),window.panel.search=window.panel.search.bind(window.panel);const e=["api","config","direction","events","language","languages","license","menu","multilang","permissions","search","searches","system","t","translation","url","urls","user","view"];for(const i of e){const e=`$${i}`;t.prototype[e]=window.panel[e]=window.panel[i]}window.panel.$vue=window.panel.app}},ya=/^#([\da-f]{3}){1,2}$/i,$a=/^#([\da-f]{4}){1,2}$/i,wa=/^rgba?\(\s*(\d{1,3})(%?)(?:,|\s)+(\d{1,3})(%?)(?:,|\s)+(\d{1,3})(%?)(?:,|\s|\/)*(\d*(?:\.\d+)?)(%?)\s*\)?$/i,xa=/^hsla?\(\s*(\d{1,3}\.?\d*)(deg|rad|grad|turn)?(?:,|\s)+(\d{1,3})%(?:,|\s)+(\d{1,3})%(?:,|\s|\/)*(\d*(?:\.\d+)?)(%?)\s*\)?$/i;function _a(t){return"string"==typeof t&&(ya.test(t)||$a.test(t))}function Sa(t){return vt(t)&&"r"in t&&"g"in t&&"b"in t}function Ca(t){return vt(t)&&"h"in t&&"s"in t&&"l"in t}function Oa({h:t,s:e,v:i,a:n}){if(0===i)return{h:t,s:0,l:0,a:n};if(0===e&&1===i)return{h:t,s:1,l:1,a:n};const s=i*(2-e)/2;return{h:t,s:e=i*e/(1-Math.abs(2*s-1)),l:s,a:n}}function Aa({h:t,s:e,l:i,a:n}){const s=e*(i<.5?i:1-i);return{h:t,s:e=0===s?0:2*s/(i+s),v:i+s,a:n}}function Ma(t){if(!0===ya.test(t)){3===(t=t.slice(1)).length&&(t=t.split("").reduce(((t,e)=>t+e+e),""));const e=parseInt(t,16);return{r:e>>16,g:e>>8&255,b:255&e,a:1}}if(!0===$a.test(t)){4===(t=t.slice(1)).length&&(t=t.split("").reduce(((t,e)=>t+e+e),""));const e=parseInt(t,16);return{r:e>>24&255,g:e>>16&255,b:e>>8&255,a:Math.round((255&e)/255*100)/100}}throw new Error(`unknown hex color: ${t}`)}function ja({r:t,g:e,b:i,a:n=1}){let s="#"+(1<<24|t<<16|e<<8|i).toString(16).slice(1);return n<1&&(s+=(256|Math.round(255*n)).toString(16).slice(1)),s}function Ia({h:t,s:e,l:i,a:n}){const s=e*Math.min(i,1-i),o=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return{r:255*o(0),g:255*o(8),b:255*o(4),a:n}}function Ta({r:t,g:e,b:i,a:n}){t/=255,e/=255,i/=255;const s=Math.max(t,e,i),o=s-Math.min(t,e,i),l=1-Math.abs(s+s-o-1);let r=o&&(s==t?(e-i)/o:s==e?2+(i-t)/o:4+(t-e)/o);return r=60*(r<0?r+6:r),{h:r,s:l?o/l:0,l:(s+s-o)/2,a:n}}function Ea(t){return ja(Ia(t))}function La(t){return Ta(Ma(t))}function Da(t,e){return t=Number(t),"grad"===e?t*=.9:"rad"===e?t*=180/Math.PI:"turn"===e&&(t*=360),parseInt(t%360)}function Ba(t,e){if(!0===_a(t))switch(e){case"hex":return t;case"rgb":return Ma(t);case"hsl":return La(t);case"hsv":return Aa(La(t))}if(!0===Sa(t))switch(e){case"hex":return ja(t);case"rgb":return t;case"hsl":return Ta(t);case"hsv":return function({r:t,g:e,b:i,a:n}){t/=255,e/=255,i/=255;const s=Math.max(t,e,i),o=s-Math.min(t,e,i);let l=o&&(s==t?(e-i)/o:s==e?2+(i-t)/o:4+(t-e)/o);return l=60*(l<0?l+6:l),{h:l,s:s&&o/s,v:s,a:n}}(t)}if(!0===Ca(t))switch(e){case"hex":return Ea(t);case"rgb":return Ia(t);case"hsl":return t;case"hsv":return Aa(t)}if(!0===function(t){return vt(t)&&"h"in t&&"s"in t&&"v"in t}(t))switch(e){case"hex":return Ea(Oa(t));case"rgb":return function({h:t,s:e,v:i,a:n}){const s=(n,s=(n+t/60)%6)=>i-i*e*Math.max(Math.min(s,4-s,1),0);return{r:255*s(5),g:255*s(3),b:255*s(1),a:n}}(t);case"hsl":return Oa(t);case"hsv":return t}throw new Error(`Invalid color conversion: ${JSON.stringify(t)} -> ${e}`)}function qa(t){let e;if(!t||"string"!=typeof t)return!1;if(_a(t))return t;if(e=t.match(wa)){const t={r:Number(e[1]),g:Number(e[3]),b:Number(e[5]),a:Number(e[7]||1)};return"%"===e[2]&&(t.r=Math.ceil(2.55*t.r)),"%"===e[4]&&(t.g=Math.ceil(2.55*t.g)),"%"===e[6]&&(t.b=Math.ceil(2.55*t.b)),"%"===e[8]&&(t.a=t.a/100),t}if(e=t.match(xa)){let[t,i,n,s,o]=e.slice(1);const l={h:Da(t,i),s:Number(n)/100,l:Number(s)/100,a:Number(o||1)};return"%"===e[6]&&(l.a=l.a/100),l}return null}const Pa={convert:Ba,parse:qa,parseAs:function(t,e){const i=qa(t);return i&&e?Ba(i,e):i},toString:function(t,e,i=!0){var n,s;let o=t;if("string"==typeof o&&(o=qa(t)),o&&e&&(o=Ba(o,e)),!0===_a(o))return!0!==i&&(5===o.length?o=o.slice(0,4):o.length>7&&(o=o.slice(0,7))),o.toLowerCase();if(!0===Sa(o)){const t=o.r.toFixed(),e=o.g.toFixed(),s=o.b.toFixed(),l=null==(n=o.a)?void 0:n.toFixed(2);return i&&l&&l<1?`rgb(${t} ${e} ${s} / ${l})`:`rgb(${t} ${e} ${s})`}if(!0===Ca(o)){const t=o.h.toFixed(),e=(100*o.s).toFixed(),n=(100*o.l).toFixed(),l=null==(s=o.a)?void 0:s.toFixed(2);return i&&l&&l<1?`hsl(${t} ${e}% ${n}% / ${l})`:`hsl(${t} ${e}% ${n}%)`}throw new Error(`Unsupported color: ${JSON.stringify(t)}`)}};D.extend(B),D.extend(((t,e,i)=>{i.interpret=(t,e="date")=>{const n={date:{"YYYY-MM-DD":!0,"YYYY-MM-D":!0,"YYYY-MM-":!0,"YYYY-MM":!0,"YYYY-M-DD":!0,"YYYY-M-D":!0,"YYYY-M-":!0,"YYYY-M":!0,"YYYY-":!0,YYYYMMDD:!0,"MMM DD YYYY":!1,"MMM D YYYY":!1,"MMM DD YY":!1,"MMM D YY":!1,"MMM YYYY":!0,"MMM DD":!1,"MMM D":!1,"MM YYYY":!0,"M YYYY":!0,"DD MMMM YYYY":!1,"DD MMMM YY":!1,"DD MMMM":!1,"D MMMM YYYY":!1,"D MMMM YY":!1,"D MMMM":!1,"DD MMM YYYY":!1,"D MMM YYYY":!1,"DD MMM YY":!1,"D MMM YY":!1,"DD MMM":!1,"D MMM":!1,"DD MM YYYY":!1,"DD M YYYY":!1,"D MM YYYY":!1,"D M YYYY":!1,"DD MM YY":!1,"D MM YY":!1,"DD M YY":!1,"D M YY":!1,YYYY:!0,MMMM:!0,MMM:!0,"DD MM":!1,"DD M":!1,"D MM":!1,"D M":!1,DD:!1,D:!1},time:{"HH:mm:ss a":!1,"HH:mm:ss":!1,"HH:mm a":!1,"HH:mm":!1,"HH a":!1,HH:!1}};if("string"==typeof t&&""!==t)for(const s in n[e]){const o=i(t,s,n[e][s]);if(!0===o.isValid())return o}return null}})),D.extend(((t,e,i)=>{const n=t=>"date"===t?"YYYY-MM-DD":"time"===t?"HH:mm:ss":"YYYY-MM-DD HH:mm:ss";e.prototype.toISO=function(t="datetime"){return this.format(n(t))},i.iso=function(t,e="datetime"){const s=i(t,n(e));return s&&s.isValid()?s:null}})),D.extend(((t,e)=>{e.prototype.merge=function(t,e="date"){let i=this.clone();if(!t||!t.isValid())return this;if("string"==typeof e){const t={date:["year","month","date"],time:["hour","minute","second"]};if(!1===Object.hasOwn(t,e))throw new Error("Invalid merge unit alias");e=t[e]}for(const n of e)i=i.set(n,t.get(n));return i}})),D.extend(((t,e,i)=>{i.pattern=t=>new class{constructor(t,e){this.dayjs=t,this.pattern=e;const i={year:["YY","YYYY"],month:["M","MM","MMM","MMMM"],day:["D","DD"],hour:["h","hh","H","HH"],minute:["m","mm"],second:["s","ss"],meridiem:["a"]};this.parts=this.pattern.split(/\W/).map(((t,e)=>{const n=this.pattern.indexOf(t);return{index:e,unit:Object.keys(i)[Object.values(i).findIndex((e=>e.includes(t)))],start:n,end:n+(t.length-1)}}))}at(t,e=t){const i=this.parts.filter((i=>i.start<=t&&i.end>=e-1));return i[0]?i[0]:this.parts.filter((e=>e.start<=t)).pop()}format(t){return t&&t.isValid()?t.format(this.pattern):null}}(i,t)})),D.extend(((t,e)=>{e.prototype.round=function(t="date",e=1){const i=["second","minute","hour","date","month","year"];if("day"===t&&(t="date"),!1===i.includes(t))throw new Error("Invalid rounding unit");if(["date","month","year"].includes(t)&&1!==e||"hour"===t&&24%e!=0||["second","minute"].includes(t)&&60%e!=0)throw"Invalid rounding size for "+t;let n=this.clone();const s=i.indexOf(t),o=i.slice(0,s),l=o.pop();for(const r of o)n=n.startOf(r);if(l){const e={month:12,date:n.daysInMonth(),hour:24,minute:60,second:60}[l];Math.round(n.get(l)/e)*e===e&&(n=n.add(1,"date"===t?"day":t)),n=n.startOf(t)}return n=n.set(t,Math.round(n.get(t)/e)*e),n}})),D.extend(((t,e,i)=>{e.prototype.validate=function(t,e,n="day"){if(!this.isValid())return!1;if(!t)return!0;t=i.iso(t);const s={min:"isAfter",max:"isBefore"}[e];return this.isSame(t,n)||this[s](t,n)}}));const Na={install(t){t.prototype.$library={colors:Pa,dayjs:D}}},za=t=>({async changeName(e,i,n){return t.patch(this.url(e,i,"name"),{name:n})},async delete(e,i){return t.delete(this.url(e,i))},async get(e,i,n){let s=await t.get(this.url(e,i),n);return!0===Array.isArray(s.content)&&(s.content={}),s},id:t=>!0===t.startsWith("/@/file/")?t.replace("/@/file/","@"):!0===t.startsWith("file://")?t.replace("file://","@"):t,link(t,e,i){return"/"+this.url(t,e,i)},async update(e,i,n){return t.patch(this.url(e,i),n)},url(t,e,i){let n="files/"+this.id(e);return t&&(n=t+"/"+n),i&&(n+="/"+i),n}}),Fa=t=>({async blueprint(e){return t.get("pages/"+this.id(e)+"/blueprint")},async blueprints(e,i){return t.get("pages/"+this.id(e)+"/blueprints",{section:i})},async changeSlug(e,i){return t.patch("pages/"+this.id(e)+"/slug",{slug:i})},async changeStatus(e,i,n){return t.patch("pages/"+this.id(e)+"/status",{status:i,position:n})},async changeTemplate(e,i){return t.patch("pages/"+this.id(e)+"/template",{template:i})},async changeTitle(e,i){return t.patch("pages/"+this.id(e)+"/title",{title:i})},async children(e,i){return t.post("pages/"+this.id(e)+"/children/search",i)},async create(e,i){return null===e||"/"===e?t.post("site/children",i):t.post("pages/"+this.id(e)+"/children",i)},async delete(e,i){return t.delete("pages/"+this.id(e),i)},async duplicate(e,i,n){return t.post("pages/"+this.id(e)+"/duplicate",{slug:i,children:n.children??!1,files:n.files??!1})},async get(e,i){let n=await t.get("pages/"+this.id(e),i);return!0===Array.isArray(n.content)&&(n.content={}),n},id:t=>!0===t.startsWith("/@/page/")?t.replace("/@/page/","@"):!0===t.startsWith("page://")?t.replace("page://","@"):t.replace(/\//g,"+"),async files(e,i){return t.post("pages/"+this.id(e)+"/files/search",i)},link(t){return"/"+this.url(t)},async preview(t){return(await this.get(this.id(t),{select:"previewUrl"})).previewUrl},async search(e,i){return e?t.post("pages/"+this.id(e)+"/children/search?select=id,title,hasChildren",i):t.post("site/children/search?select=id,title,hasChildren",i)},async update(e,i){return t.patch("pages/"+this.id(e),i)},url(t,e){let i=null===t?"pages":"pages/"+String(t).replace(/\//g,"+");return e&&(i+="/"+e),i}});class Ra extends Error{constructor(t,{request:e,response:i,cause:n}){super(i.json.message??t,{cause:n}),this.request=e,this.response=i}state(){return this.response.json}}class Ya extends Ra{}class Ua extends Ra{state(){return{message:this.message,text:this.response.text}}}const Ha=t=>(window.location.href=ma(t),!1),Va=async(t,e={})=>{var i;(e={cache:"no-store",credentials:"same-origin",mode:"same-origin",...e}).body=((i=e.body)instanceof HTMLFormElement&&(i=new FormData(i)),i instanceof FormData&&(i=Object.fromEntries(i)),"object"==typeof i?JSON.stringify(i):i),e.headers=((t={},e={})=>{return{"content-type":"application/json","x-csrf":e.csrf??!1,"x-fiber":!0,"x-fiber-globals":(i=e.globals,!!i&&(!1===Array.isArray(i)?String(i):i.join(","))),"x-fiber-referrer":e.referrer??!1,...$t(t)};var i})(e.headers,e),e.url=ca(t,e.query);const n=new Request(e.url,e);return!1===pa(n.url)?Ha(n.url):await Ka(n,await fetch(n))},Ka=async(t,e)=>{var i;if(!1===e.headers.get("Content-Type").includes("application/json"))return Ha(e.url);try{e.text=await e.text(),e.json=JSON.parse(e.text)}catch(n){throw new Ua("Invalid JSON response",{cause:n,request:t,response:e})}if(401===e.status)throw new Ya("Unauthenticated",{request:t,response:e});if("error"===(null==(i=e.json)?void 0:i.status))throw e.json;if(!1===e.ok)throw new Ra(`The request to ${e.url} failed`,{request:t,response:e});return{request:t,response:e}},Wa=t=>({blueprint:async e=>t.get("users/"+e+"/blueprint"),blueprints:async(e,i)=>t.get("users/"+e+"/blueprints",{section:i}),changeEmail:async(e,i)=>t.patch("users/"+e+"/email",{email:i}),changeLanguage:async(e,i)=>t.patch("users/"+e+"/language",{language:i}),changeName:async(e,i)=>t.patch("users/"+e+"/name",{name:i}),changePassword:async(e,i)=>t.patch("users/"+e+"/password",{password:i}),changeRole:async(e,i)=>t.patch("users/"+e+"/role",{role:i}),create:async e=>t.post("users",e),delete:async e=>t.delete("users/"+e),deleteAvatar:async e=>t.delete("users/"+e+"/avatar"),link(t,e){return"/"+this.url(t,e)},async list(e){return t.post(this.url(null,"search"),e)},get:async(e,i)=>t.get("users/"+e,i),async roles(e){return(await t.get(this.url(e,"roles"))).data.map((t=>({info:t.description??`(${window.panel.$t("role.description.placeholder")})`,text:t.title,value:t.name})))},search:async e=>t.post("users/search",e),update:async(e,i)=>t.patch("users/"+e,i),url(t,e){let i=t?"users/"+t:"users";return e&&(i+="/"+e),i}}),Ja=t=>{const e={csrf:t.system.csrf,endpoint:ia(t.urls.api,"/"),methodOverwrite:!0,ping:null,requests:[],running:0},i=()=>{clearInterval(e.ping),e.ping=setInterval(e.auth.ping,3e5)};return e.request=async(n,s={},o=!1)=>{const l=n+"/"+JSON.stringify(s);e.requests.push(l),!1===o&&(t.isLoading=!0),e.language=t.language.code;try{return await(t=>async(e,i={})=>{i={cache:"no-store",credentials:"same-origin",mode:"same-origin",headers:{"content-type":"application/json","x-csrf":t.csrf,"x-language":t.language,...$t(i.headers??{})},...i},t.methodOverwrite&&"GET"!==i.method&&"POST"!==i.method&&(i.headers["x-http-method-override"]=i.method,i.method="POST"),i.url=ia(t.endpoint,"/")+"/"+ea(e,"/");const n=new Request(i.url,i),{response:s}=await Ka(n,await fetch(n));let o=s.json;return o.data&&"model"===o.type&&(o=o.data),o})(e)(n,s)}finally{i(),e.requests=e.requests.filter((t=>t!==l)),0===e.requests.length&&(t.isLoading=!1)}},e.auth=(t=>({async login(e){const i={long:e.remember??!1,email:e.email,password:e.password};return t.post("auth/login",i)},logout:async()=>t.post("auth/logout"),ping:async()=>t.post("auth/ping"),user:async e=>t.get("auth",e),verifyCode:async e=>t.post("auth/code",{code:e})}))(e),e.delete=(t=>async(e,i,n,s=!1)=>t.post(e,i,n,"DELETE",s))(e),e.files=za(e),e.get=(t=>async(e,i,n,s=!1)=>(i&&(e+="?"+Object.keys(i).filter((t=>void 0!==i[t]&&null!==i[t])).map((t=>t+"="+i[t])).join("&")),t.request(e,Object.assign(n??{},{method:"GET"}),s)))(e),e.languages=(t=>({create:async e=>t.post("languages",e),delete:async e=>t.delete("languages/"+e),get:async e=>t.get("languages/"+e),list:async()=>t.get("languages"),update:async(e,i)=>t.patch("languages/"+e,i)}))(e),e.pages=Fa(e),e.patch=(t=>async(e,i,n,s=!1)=>t.post(e,i,n,"PATCH",s))(e),e.post=(t=>async(e,i,n,s="POST",o=!1)=>t.request(e,Object.assign(n??{},{method:s,body:JSON.stringify(i)}),o))(e),e.roles=(t=>({list:async e=>t.get("roles",e),get:async e=>t.get("roles/"+e)}))(e),e.system=(t=>({get:async(e={view:"panel"})=>t.get("system",e),install:async e=>(await t.post("system/install",e)).user,register:async e=>t.post("system/register",e)}))(e),e.site=(t=>({blueprint:async()=>t.get("site/blueprint"),blueprints:async()=>t.get("site/blueprints"),changeTitle:async e=>t.patch("site/title",{title:e}),children:async e=>t.post("site/children/search",e),get:async(e={view:"panel"})=>t.get("site",e),update:async e=>t.post("site",e)}))(e),e.translations=(t=>({list:async()=>t.get("translations"),get:async e=>t.get("translations/"+e)}))(e),e.users=Wa(e),i(),e},Ga=()=>({addEventListener(t,e){"function"==typeof e&&(this.on[t]=e)},addEventListeners(t){if(!1!==vt(t))for(const e in t)this.addEventListener(e,t[e])},emit(t,...e){return this.hasEventListener(t)?this.on[t](...e):()=>{}},hasEventListener(t){return"function"==typeof this.on[t]},listeners(){return this.on},on:{}}),Xa=(t,e={})=>({...e,key:()=>t,defaults:()=>e,reset(){return this.set(this.defaults())},set(t){this.validateState(t);for(const e in this.defaults())this[e]=t[e]??this.defaults()[e];return this.state()},state(){const t={};for(const e in this.defaults())t[e]=this[e]??this.defaults()[e];return t},validateState(t){if(!1===vt(t))throw new Error(`Invalid ${this.key()} state`);return!0}}),Za=(t,e,i)=>{const n=Xa(e,i);return{...n,...Ga(),async load(e,i={}){return!0!==i.silent&&(this.isLoading=!0),await t.open(e,i),this.isLoading=!1,this.addEventListeners(i.on),this.state()},async open(t,e={}){return"function"==typeof e&&(e={on:{submit:e}}),!0===ha(t)?this.load(t,e):(this.set(t),this.addEventListeners(e.on),this.emit("open",t,e),this.state())},async post(e,i={}){var n;if(!this.path)throw new Error(`The ${this.key()} cannot be posted`);this.isLoading=!0,e=e??(null==(n=this.props)?void 0:n.value)??{};try{return await t.post(this.path,e,i)}catch(s){t.error(s)}finally{this.isLoading=!1}return!1},async refresh(e={}){e.url=e.url??this.url();const i=(await t.get(e.url,e))["$"+this.key()];if(i&&i.component===this.component)return this.props=i.props,this.state()},async reload(t={}){if(!this.path)return!1;this.open(this.url(),t)},set(t){return n.set.call(this,t),this.on={},this.addEventListeners(t.on??{}),this.state()},url(){return t.url(this.path,this.query)}}},Qa=(t,e,i)=>{const n=Za(t,e,i);return{...n,async cancel(){this.isOpen&&this.emit("cancel"),this.close()},async close(){!1!==this.isOpen&&(this.isOpen=!1,this.emit("close"),this.reset(),0===t.overlays().length&&(document.documentElement.removeAttribute("data-overlay"),document.documentElement.style.removeProperty("--scroll-top")))},focus(t){Ur(`.k-${this.key()}-portal`,t)},input(t){!1!==this.isOpen&&(Vue.set(this.props,"value",t),this.emit("input",t))},isOpen:!1,listeners(){return{...this.on,cancel:this.cancel.bind(this),close:this.close.bind(this),input:this.input.bind(this),submit:this.submit.bind(this),success:this.success.bind(this)}},async open(e,i){return!1===this.isOpen&&t.notification.close(),document.documentElement.setAttribute("data-overlay","true"),document.documentElement.style.setProperty("--scroll-top",window.scrollY+"px"),await n.open.call(this,e,i),this.isOpen=!0,this.state()},async submit(t,e={}){if(t=t??this.props.value,this.hasEventListener("submit"))return this.emit("submit",t,e);if(!this.path)return this.close();const i=await this.post(t,e);return!1===vt(i)?i:this.success(i["$"+this.key()]??{})},success(e){return this.hasEventListener("success")?this.emit("success",e):("string"==typeof e&&t.notification.success(e),this.close(),this.successNotification(e),this.successEvents(e),this.successDispatch(e),e.route||e.redirect?this.successRedirect(e):t.view.reload(e.reload),e)},successDispatch(e){if(!1!==vt(e.dispatch))for(const i in e.dispatch){const n=e.dispatch[i];t.app.$store.dispatch(i,!0===Array.isArray(n)?[...n]:n)}},successEvents(e){if(e.event){const i=Array.wrap(e.event);for(const n of i)"string"==typeof n&&t.events.emit(n,e)}!1!==e.emit&&t.events.emit("success",e)},successNotification(e){e.message&&t.notification.success(e.message)},successRedirect(e){const i=e.route??e.redirect;return!!i&&("string"==typeof i?t.open(i):t.open(i.url,i.options))},get value(){var t;return null==(t=this.props)?void 0:t.value}}},tu=t=>{t.events.on("dialog.save",(e=>{var i;null==(i=null==e?void 0:e.preventDefault)||i.call(e),t.dialog.submit()}));const e=Qa(t,"dialog",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null,legacy:!1,ref:null});return{...e,async close(){this.ref&&(this.ref.visible=!1),e.close.call(this)},async open(t,i={}){return t instanceof window.Vue?this.openComponent(t):("string"==typeof t&&(t=`/dialogs/${t}`),e.open.call(this,t,i))},async openComponent(i){t.deprecated("Dialog components should no longer be used in your templates");const n=await e.open.call(this,{component:i.$options._componentTag,legacy:!0,props:{...i.$attrs,...i.$props},ref:i}),s=this.listeners();for(const t in s)i.$on(t,s[t]);return i.visible=!0,n}}},eu=()=>({...Xa("drag",{type:null,data:{}}),get isDragging(){return null!==this.type},start(t,e){this.type=t,this.data=e},stop(){this.type=null,this.data={}}}),iu=()=>({add(t){if(!t.id)throw new Error("The state needs an ID");!0!==this.has(t.id)&&this.milestones.push(t)},at(t){return this.milestones.at(t)},get(t=null){return null===t?this.milestones:this.milestones.find((e=>e.id===t))},goto(t){const e=this.index(t);if(-1!==e)return this.milestones=this.milestones.slice(0,e+1),this.milestones[e]},has(t){return void 0!==this.get(t)},index(t){return this.milestones.findIndex((e=>e.id===t))},isEmpty(){return 0===this.milestones.length},last(){return this.milestones.at(-1)},milestones:[],remove(t=null){return null===t?this.removeLast():this.milestones=this.milestones.filter((e=>e.id!==t))},removeLast(){return this.milestones=this.milestones.slice(0,-1)},replace(t,e){-1===t&&(t=this.milestones.length-1),Vue.set(this.milestones,t,e)}}),nu=t=>{const e=Qa(t,"drawer",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null,id:null});return t.events.on("drawer.save",(e=>{e.preventDefault(),t.drawer.submit()})),{...e,get breadcrumb(){return this.history.milestones},async close(t){if(!1!==this.isOpen&&(void 0===t||t===this.id)){if(this.history.removeLast(),!0!==this.history.isEmpty())return this.open(this.history.last());e.close.call(this)}},goTo(t){const e=this.history.goto(t);void 0!==e&&this.open(e)},history:iu(),get icon(){return this.props.icon??"box"},input(t){Vue.set(this.props,"value",t),this.emit("input",this.props.value)},listeners(){return{...this.on,cancel:this.cancel.bind(this),close:this.close.bind(this),crumb:this.goTo.bind(this),input:this.input.bind(this),submit:this.submit.bind(this),success:this.success.bind(this),tab:this.tab.bind(this)}},async open(t,i={}){"string"==typeof t&&(t=`/drawers/${t}`),await e.open.call(this,t,i),this.tab(t.tab);const n=this.state();return!0===t.replace?this.history.replace(-1,n):this.history.add(n),this.focus(),n},set(t){return e.set.call(this,t),this.id=this.id??oa(),this.state()},tab(t){const e=this.props.tabs??{};if(!(t=t??Object.keys(e??{})[0]))return!1;Vue.set(this.props,"fields",e[t].fields),Vue.set(this.props,"tab",t),this.emit("tab",t),setTimeout((()=>{this.focus()}))}}},su=t=>{const e=Za(t,"dropdown",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null});return{...e,close(){this.emit("close"),this.reset()},open(t,i={}){return"string"==typeof t&&(t=`/dropdowns/${t}`),e.open.call(this,t,i)},openAsync(t,e={}){return async i=>{await this.open(t,e);const n=this.options();if(0===n.length)throw Error("The dropdown is empty");i(n)}},options(){return!1===Array.isArray(this.props.options)?[]:this.props.options.map((e=>e.dialog?(e.click=()=>{const i="string"==typeof e.dialog?e.dialog:e.dialog.url,n="object"==typeof e.dialog?e.dialog:{};return t.app.$dialog(i,n)},e):e))},set(t){return t.options&&(t.props={options:t.options}),e.set.call(this,t)}}},ou=t=>{const e=q();e.on("online",(()=>{t.isOffline=!1})),e.on("offline",(()=>{t.isOffline=!0})),e.on("keydown.cmd.s",(i=>{e.emit(t.context+".save",i)})),e.on("keydown.cmd.shift.f",(()=>t.search())),e.on("keydown.cmd./",(()=>t.search()));const i={document:{blur:!0,click:!1,copy:!0,focus:!0,paste:!0},window:{dragenter:!1,dragexit:!1,dragleave:!1,dragover:!1,drop:!1,keydown:!1,keyup:!1,offline:!1,online:!1,popstate:!1}};return{blur(t){this.emit("blur",t)},click(t){this.emit("click",t)},copy(t){this.emit("copy",t)},dragenter(t){this.entered=t.target,this.prevent(t),this.emit("dragenter",t)},dragexit(t){this.prevent(t),this.entered=null,this.emit("dragexit",t)},dragleave(t){this.prevent(t),this.entered===t.target&&(this.entered=null,this.emit("dragleave",t))},dragover(t){this.prevent(t),this.emit("dragover",t)},drop(t){this.prevent(t),this.entered=null,this.emit("drop",t)},emit:e.emit,entered:null,focus(t){this.emit("focus",t)},keychain(t,e){let i=[t];(e.metaKey||e.ctrlKey)&&i.push("cmd"),!0===e.altKey&&i.push("alt"),!0===e.shiftKey&&i.push("shift");let n=e.key?ta(e.key):null;const s={escape:"esc",arrowUp:"up",arrowDown:"down",arrowLeft:"left",arrowRight:"right"};return s[n]&&(n=s[n]),n&&!1===["alt","control","shift","meta"].includes(n)&&i.push(n),i.join(".")},keydown(t){this.emit(this.keychain("keydown",t),t),this.emit("keydown",t)},keyup(t){this.emit(this.keychain("keyup",t),t),this.emit("keyup",t)},off:e.off,offline(t){this.emit("offline",t)},on:e.on,online(t){this.emit("online",t)},paste(t){this.emit("paste",t)},popstate(t){this.emit("popstate",t)},prevent(t){t.stopPropagation(),t.preventDefault()},subscribe(){for(const t in i.document)document.addEventListener(t,this[t].bind(this),i.document[t]);for(const t in i.window)window.addEventListener(t,this[t].bind(this),i.window[t])},unsubscribe(){for(const t in i.document)document.removeEventListener(t,this[t]);for(const t in i.window)window.removeEventListener(t,this[t])},$on(...t){window.panel.deprecated("`events.$on` will be removed in a future version. Use `events.on` instead."),e.on(...t)},$emit(...t){window.panel.deprecated("`events.$emit` will be removed in a future version. Use `events.emit` instead."),e.emit(...t)},$off(...t){window.panel.deprecated("`events.$off` will be removed in a future version. Use `events.off` instead."),e.off(...t)}}},lu={interval:null,start(t,e){this.stop(),t&&(this.interval=setInterval(e,t))},stop(){clearInterval(this.interval),this.interval=null}},ru=(t={})=>({...Xa("notification",{context:null,details:null,icon:null,isOpen:!1,message:null,timeout:null,type:null}),close(){return this.timer.stop(),this.reset(),this.state()},deprecated(t){console.warn("Deprecated: "+t)},error(e){if(e instanceof Ya&&t.user.id)return t.redirect("logout");if(e instanceof Ua)return this.fatal(e);if(e instanceof Ra){const t=Object.values(e.response.json).find((t=>"string"==typeof(null==t?void 0:t.error)));t&&(e.message=t.error)}return"string"==typeof e&&(e={message:e,type:"error"}),e={message:e.message??"Something went wrong",details:e.details??{}},"view"===t.context&&t.dialog.open({component:"k-error-dialog",props:e,type:"error"}),this.open({message:e.message,type:"error",icon:"alert"})},get isFatal(){return"fatal"===this.type},fatal(t){return"string"==typeof t?this.open({message:t,type:"fatal"}):t instanceof Ua?this.open({message:t.response.text,type:"fatal"}):this.open({message:t.message??"Something went wrong",type:"fatal"})},open(e){return this.timer.stop(),"string"==typeof e?this.success(e):(this.set({context:t.context,...e}),this.isOpen=!0,this.timer.start(this.timeout,(()=>this.close())),this.state())},success(t){return t||(t={}),"string"==typeof t&&(t={message:t}),this.open({timeout:4e3,type:"success",icon:"check",...t})},get theme(){return"error"===this.type?"negative":"positive"},timer:lu}),au=()=>({...Xa("language",{code:null,default:!1,direction:"ltr",name:null,rules:null}),get isDefault(){return this.default}}),uu=(t,e,i)=>{if(!i.template&&!i.render&&!i.extends)throw new Error(`Neither template nor render method provided. Nor extending a component when loading plugin component "${e}". The component has not been registered.`);return(i=cu(t,e,i)).template&&(i.render=null),i=du(i),!0===Vr(e)&&window.console.warn(`Plugin is replacing "${e}"`),t.component(e,i),i},cu=(t,e,i)=>"string"!=typeof(null==i?void 0:i.extends)?i:!1===Vr(i.extends)?(window.console.warn(`Problem with plugin trying to register component "${e}": cannot extend non-existent component "${i.extends}"`),i.extends=null,i):(i.extends=t.options.components[i.extends].extend({options:i,components:{...t.options.components,...i.components??{}}}),i),du=t=>{if(!1===Array.isArray(t.mixins))return t;const e={dialog:Et,drawer:me,section:Fl};return t.mixins=t.mixins.map((t=>"string"==typeof t?e[t]:t)),t},pu=(t,e={})=>((e={components:{},created:[],icons:{},login:null,textareaButtons:{},use:[],thirdParty:{},writerMarks:{},writerNodes:{},...e}).use=((t,e)=>{if(!1===Array.isArray(e))return[];for(const i of e)t.use(i);return e})(t,e.use),e.components=((t,e)=>{if(!1===vt(e))return;const i={};for(const[s,o]of Object.entries(e))try{i[s]=uu(t,s,o)}catch(n){window.console.warn(n.message)}return i})(t,e.components),e),hu=t=>{var e;const i=Xa("menu",{entries:[],hover:!1,isOpen:!1}),n=null==(e=window.matchMedia)?void 0:e.call(window,"(max-width: 60rem)"),s={...i,blur(t){if(!1===n.matches)return!1;const e=document.querySelector(".k-panel-menu");!1===document.querySelector(".k-panel-menu-proxy").contains(t.target)&&!1===e.contains(t.target)&&this.close()},close(){this.isOpen=!1,!1===n.matches&&localStorage.setItem("kirby$menu",!0)},escape(){if(!1===n.matches)return!1;this.close()},open(){this.isOpen=!0,!1===n.matches&&localStorage.removeItem("kirby$menu")},resize(){if(n.matches)return this.close();null!==localStorage.getItem("kirby$menu")?this.isOpen=!1:this.isOpen=!0},set(t){return this.entries=t,this.resize(),this.state()},toggle(){this.isOpen?this.close():this.open()}};return t.events.on("keydown.esc",s.escape.bind(s)),t.events.on("click",s.blur.bind(s)),null==n||n.addEventListener("change",s.resize.bind(s)),s},mu=()=>{const t=Xa("translation",{code:null,data:{},direction:"ltr",name:null});return{...t,set(e){return t.set.call(this,e),document.documentElement.lang=this.code,document.body.dir=this.direction,this.state()},translate(t,e,i=null){if("string"!=typeof t)return;const n=this.data[t]??i;return"string"!=typeof n?n:na(n,e)}}};const fu=t=>{const e=Xa("upload",{accept:"*",attributes:{},files:[],max:null,multiple:!0,replacing:null,url:null});return{...e,...Ga(),input:null,cancel(){this.emit("cancel"),this.completed.length>0&&(this.emit("complete",this.completed),t.view.reload()),this.reset()},get completed(){return this.files.filter((t=>t.completed)).map((t=>t.model))},done(){t.dialog.close(),this.completed.length>0&&(this.emit("done",this.completed),!1===t.drawer.isOpen&&(t.notification.success({context:"view"}),t.view.reload())),this.reset()},findDuplicate(t){return this.files.findLastIndex((e=>e.src.name===t.src.name&&e.src.type===t.src.type&&e.src.size===t.src.size&&e.src.lastModified===t.src.lastModified))},hasUniqueName(t){return this.files.filter((e=>e.name===t.name&&e.extension===t.extension)).length<2},file(t){const e=URL.createObjectURL(t);return{completed:!1,error:null,extension:zr(t.name),filename:t.name,id:oa(),model:null,name:Fr(t.name),niceSize:Rr(t.size),progress:0,size:t.size,src:t,type:t.type,url:e}},open(e,i){e instanceof FileList?(this.set(i),this.select(e)):this.set(e);const n={component:"k-upload-dialog",on:{cancel:()=>this.cancel(),submit:async()=>{t.dialog.isLoading=!0,await this.submit(),t.dialog.isLoading=!1}}};this.replacing&&(n.component="k-upload-replace-dialog",n.props={original:this.replacing}),t.dialog.open(n)},pick(t){this.set(t),this.input=document.createElement("input"),this.input.type="file",this.input.classList.add("sr-only"),this.input.value=null,this.input.accept=this.accept,this.input.multiple=this.multiple,this.input.click(),this.input.addEventListener("change",(e=>{!0===(null==t?void 0:t.immediate)?(this.set(t),this.select(e.target.files),this.submit()):this.open(e.target.files,t),this.input.remove()}))},remove(t){this.files=this.files.filter((e=>e.id!==t))},replace(e,i){this.pick({...i,url:t.urls.api+"/"+e.link,accept:"."+e.extension+","+e.mime,multiple:!1,replacing:e})},reset(){e.reset.call(this),this.files.splice(0)},select(t,e){if(this.set(e),t instanceof Event&&(t=t.target.files),t instanceof FileList==!1)throw new Error("Please provide a FileList");t=(t=[...t]).map((t=>this.file(t))),this.files=[...this.files,...t],this.files=this.files.filter(((t,e)=>this.findDuplicate(t)===e)),null!==this.max&&(this.files=this.files.slice(-1*this.max)),this.emit("select",this.files)},set(t){if(t)return e.set.call(this,t),this.on={},this.addEventListeners(t.on??{}),1===this.max&&(this.multiple=!1),!1===this.multiple&&(this.max=1),this.state()},async submit(){var e;if(!this.url)throw new Error("The upload URL is missing");const i=[];for(const n of this.files)!0!==n.completed&&(!1!==this.hasUniqueName(n)?(n.error=null,n.progress=0,i.push((async()=>await this.upload(n))),void 0!==(null==(e=this.attributes)?void 0:e.sort)&&this.attributes.sort++):n.error=t.t("error.file.name.unique"));if(await async function(t,e=20){let i=0,n=0;return new Promise((s=>{const o=e=>n=>{t[e]=n,i--,l()},l=()=>{if(i{e.progress=n}});e.completed=!0,e.model=i.data}catch(i){t.error(i,!1),e.error=i.message,e.progress=0}}}},gu=t=>{const e=Za(t,"view",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null,breadcrumb:[],breadcrumbLabel:null,icon:null,id:null,link:null,search:"pages",title:null});return{...e,set(i){e.set.call(this,i),t.title=this.title;const n=this.url().toString();window.location.toString()!==n&&(window.history.pushState(null,null,n),window.scrollTo(0,0))},async submit(){throw new Error("Not yet implemented")}}},ku={config:{},languages:[],license:!1,multilang:!1,permissions:{},searches:{},urls:{}},bu=["dialog","drawer"],vu=["dropdown","language","menu","notification","system","translation","user"],yu={create(t={}){return this.isLoading=!1,this.isOffline=!1,this.drag=eu(),this.events=ou(this),this.upload=fu(this),this.language=au(),this.menu=hu(this),this.notification=ru(this),this.system=Xa("system",{ascii:{},csrf:null,isLocal:null,locales:{},slugs:[],title:null}),this.translation=mu(),this.user=Xa("user",{email:null,id:null,language:null,role:null,username:null}),this.dropdown=su(this),this.view=gu(this),this.drawer=nu(this),this.dialog=tu(this),this.redirect=Ha,this.reload=this.view.reload.bind(this.view),this.t=this.translation.translate.bind(this.translation),this.plugins=pu(window.Vue,t),this.set(window.fiber),this.api=Ja(this),Vue.reactive(this)},get context(){return this.dialog.isOpen?"dialog":this.drawer.isOpen?"drawer":"view"},get debug(){return!0===this.config.debug},deprecated(t){this.notification.deprecated(t)},get direction(){return this.translation.direction},error(t,e=!0){if(!0===this.debug&&console.error(t),!0===e)return this.notification.error(t)},async get(t,e={}){const{response:i}=await this.request(t,{method:"GET",...e});return(null==i?void 0:i.json)??{}},async open(t,e={}){try{if(!1===ha(t))this.set(t);else{this.isLoading=!0;const i=await this.get(t,e);this.set(i),this.isLoading=!1}return this.state()}catch(i){return this.error(i)}},overlays(){const t=[];return!0===this.drawer.isOpen&&t.push("drawer"),!0===this.dialog.isOpen&&t.push("dialog"),t},async post(t,e={},i={}){const{response:n}=await this.request(t,{method:"POST",body:e,...i});return n.json},async request(t,e={}){return Va(t,{referrer:this.view.path,csrf:this.system.csrf,...e})},async search(t,e,i){if(!t&&!e)return this.menu.escape(),this.dialog.open({component:"k-search-dialog"});const{$search:n}=await this.get(`/search/${t}`,{query:{query:e,...i}});return n},set(t={}){t=Object.fromEntries(Object.entries(t).map((([t,e])=>[t.replace("$",""),e])));for(const e in ku){const i=t[e]??this[e]??ku[e];typeof i==typeof ku[e]&&(this[e]=i)}for(const e of vu)(vt(t[e])||Array.isArray(t[e]))&&this[e].set(t[e]);for(const e of bu)!0===vt(t[e])?this[e].open(t[e]):void 0!==t[e]&&this[e].close();!0===vt(t.dropdown)?this.dropdown.open(t.dropdown):void 0!==t.dropdown&&this.dropdown.close(),!0===vt(t.view)&&this.view.open(t.view)},state(){const t={};for(const e in ku)t[e]=this[e]??ku[e];for(const e of vu)t[e]=this[e].state();for(const e of bu)t[e]=this[e].state();return t.dropdown=this.dropdown.state(),t.view=this.view.state(),t},get title(){return document.title},set title(t){!1===Qr(this.system.title)&&(t+=" | "+this.system.title),document.title=t},url:(t="",e={},i)=>ca(t,e,i)},$u=(t,e)=>{localStorage.setItem("kirby$content$"+t,JSON.stringify(e))},wu={namespaced:!0,state:{current:null,models:{},status:{enabled:!0}},getters:{exists:t=>e=>Object.hasOwn(t.models,e),hasChanges:(t,e)=>t=>yt(e.model(t).changes)>0,isCurrent:t=>e=>t.current===e,id:t=>e=>(e=e??t.current)+"?language="+window.panel.language.code,model:(t,e)=>i=>(i=i??t.current,!0===e.exists(i)?t.models[i]:{api:null,originals:{},values:{},changes:{}}),originals:(t,e)=>t=>bt(e.model(t).originals),values:(t,e)=>t=>({...e.originals(t),...e.changes(t)}),changes:(t,e)=>t=>bt(e.model(t).changes)},mutations:{CLEAR(t){for(const e in t.models)t.models[e].changes={};for(const e in localStorage)e.startsWith("kirby$content$")&&localStorage.removeItem(e)},CREATE(t,[e,i]){if(!i)return!1;let n=t.models[e]?t.models[e].changes:i.changes;Vue.set(t.models,e,{api:i.api,originals:i.originals,changes:n??{}})},CURRENT(t,e){t.current=e},MOVE(t,[e,i]){const n=bt(t.models[e]);Vue.del(t.models,e),Vue.set(t.models,i,n);const s=localStorage.getItem("kirby$content$"+e);localStorage.removeItem("kirby$content$"+e),localStorage.setItem("kirby$content$"+i,s)},REMOVE(t,e){Vue.del(t.models,e),localStorage.removeItem("kirby$content$"+e)},REVERT(t,e){t.models[e]&&(Vue.set(t.models[e],"changes",{}),localStorage.removeItem("kirby$content$"+e))},STATUS(t,e){Vue.set(t.status,"enabled",e)},UPDATE(t,[e,i,n]){if(!t.models[e])return!1;void 0===n&&(n=null),n=bt(n);const s=JSON.stringify(n);JSON.stringify(t.models[e].originals[i]??null)==s?Vue.del(t.models[e].changes,i):Vue.set(t.models[e].changes,i,n),$u(e,{api:t.models[e].api,originals:t.models[e].originals,changes:t.models[e].changes})}},actions:{init(t){for(const i in localStorage)if(i.startsWith("kirby$content$")){const e=i.split("kirby$content$")[1],n=localStorage.getItem("kirby$content$"+e);t.commit("CREATE",[e,JSON.parse(n)])}else if(i.startsWith("kirby$form$")){const n=i.split("kirby$form$")[1],s=localStorage.getItem("kirby$form$"+n);let o=null;try{o=JSON.parse(s)}catch(e){}if(!o||!o.api)return localStorage.removeItem("kirby$form$"+n),!1;const l={api:o.api,originals:o.originals,changes:o.values};t.commit("CREATE",[n,l]),$u(n,l),localStorage.removeItem("kirby$form$"+n)}},clear(t){t.commit("CLEAR")},create(t,e){const i=bt(e.content);if(Array.isArray(e.ignore))for(const s of e.ignore)delete i[s];e.id=t.getters.id(e.id);const n={api:e.api,originals:i,changes:{}};t.commit("CREATE",[e.id,n]),t.dispatch("current",e.id)},current(t,e){t.commit("CURRENT",e)},disable(t){t.commit("STATUS",!1)},enable(t){t.commit("STATUS",!0)},move(t,[e,i]){e=t.getters.id(e),i=t.getters.id(i),t.commit("MOVE",[e,i])},remove(t,e){t.commit("REMOVE",e),t.getters.isCurrent(e)&&t.commit("CURRENT",null)},revert(t,e){e=e??t.state.current,t.commit("REVERT",e)},async save(t,e){if(e=e??t.state.current,t.getters.isCurrent(e)&&!1===t.state.status.enabled)return!1;t.dispatch("disable");const i=t.getters.model(e),n={...i.originals,...i.changes};try{await window.panel.api.patch(i.api,n),t.commit("CREATE",[e,{...i,originals:n}]),t.dispatch("revert",e)}finally{t.dispatch("enable")}},update(t,[e,i,n]){if(n=n??t.state.current,null===e)for(const s in i)t.commit("UPDATE",[n,s,i[s]]);else t.commit("UPDATE",[n,e,i])}}},xu={namespaced:!0,actions:{close(t,e){window.panel.deprecated("`$store.drawer` will be removed in a future version. Use `$panel.drawer` instead."),window.panel.drawer.close(e)},goto(t,e){window.panel.deprecated("`$store.drawer` will be removed in a future version. Use `$panel.drawer` instead."),window.panel.drawer.goto(e)},open(t,e){window.panel.deprecated("`$store.drawer` will be removed in a future version. Use `$panel.drawer` instead."),window.panel.drawer.goto(e)}}},_u={namespaced:!0,actions:{close(){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.close()},deprecated(t,e){window.panel.deprecated("`$store.notification.deprecated` will be removed in a future version. Use `$panel.deprecated` instead."),window.panel.notification.deprecated(e)},error(t,e){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.error(e)},open(t,e){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.open(e)},success(t,e){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.success(e)}}};Vue.use(P);const Su=new P.Store({strict:!1,actions:{dialog(t,e){window.panel.deprecated("`$store.dialog` will be removed in a future version. Use `$panel.dialog.open()` instead."),window.panel.dialog.open(e)},drag(t,e){window.panel.deprecated("`$store.drag` will be removed in a future version. Use `$panel.drag.start(type, data)` instead."),window.panel.drag.start(...e)},fatal(t,e){window.panel.deprecated("`$store.fatal` will be removed in a future version. Use `$panel.notification.fatal()` instead."),window.panel.notification.fatal(e)},isLoading(t,e){window.panel.deprecated("`$store.isLoading` will be removed in a future version. Use `$panel.isLoading` instead."),window.panel.isLoading=e},navigate(){window.panel.deprecated("`$store.navigate` will be removed in a future version."),window.panel.dialog.close(),window.panel.drawer.close()}},modules:{content:wu,drawers:xu,notification:_u}});Vue.config.productionTip=!1,Vue.config.devtools=!0,Vue.use(ka),Vue.use(Na),Vue.use(N),Vue.use(Mr),window.panel=Vue.prototype.$panel=yu.create(window.panel.plugins),Vue.prototype.$dialog=window.panel.dialog.open.bind(window.panel.dialog),Vue.prototype.$drawer=window.panel.drawer.open.bind(window.panel.drawer),Vue.prototype.$dropdown=window.panel.dropdown.openAsync.bind(window.panel.dropdown),Vue.prototype.$go=window.panel.view.open.bind(window.panel.view),Vue.prototype.$reload=window.panel.reload.bind(window.panel),window.panel.app=new Vue({store:Su,render:()=>Vue.h(R)}),Vue.use(ba),Vue.use(jr),Vue.use(va),!1===CSS.supports("container","foo / inline-size")&&F((()=>import("./container-query-polyfill.modern.min.js")),[],import.meta.url),window.panel.app.$mount("#app");export{F as _,at as n}; +import{v as t,I as e,P as i,S as n,F as s,N as o,s as l,l as r,w as a,a as u,b as c,c as d,e as p,t as h,d as m,f,g,h as k,i as b,k as v,D as y,j as $,E as w,m as x,n as _,o as S,T as C,u as O,p as A,q as M,r as j,x as I,y as T,z as E,A as L,B as D,C as B,G as q,H as P,V as N,J as z}from"./vendor.min.js";const F={},R=function(t,e,i){if(!e||0===e.length)return t();const n=document.getElementsByTagName("link");return Promise.all(e.map((t=>{if(t=function(t,e){return new URL(t,e).href}(t,i),t in F)return;F[t]=!0;const e=t.endsWith(".css"),s=e?'[rel="stylesheet"]':"";if(!!i)for(let i=n.length-1;i>=0;i--){const s=n[i];if(s.href===t&&(!e||"stylesheet"===s.rel))return}else if(document.querySelector(`link[href="${t}"]${s}`))return;const o=document.createElement("link");return o.rel=e?"stylesheet":"modulepreload",e||(o.as="script",o.crossOrigin=""),o.href=t,document.head.appendChild(o),e?new Promise(((e,i)=>{o.addEventListener("load",e),o.addEventListener("error",(()=>i(new Error(`Unable to preload CSS for ${t}`))))})):void 0}))).then((()=>t())).catch((t=>{const e=new Event("vite:preloadError",{cancelable:!0});if(e.payload=t,window.dispatchEvent(e),!e.defaultPrevented)throw t}))},Y={created(){this.$panel.events.subscribe();for(const t of this.$panel.plugins.created)t(this);this.$panel.events.on("popstate",(()=>{this.$panel.open(window.location.href)})),this.$panel.events.on("drop",(()=>{this.$panel.drag.stop()})),this.$store.dispatch("content/init")},destroyed(){this.$panel.events.unsubscribe()},render(t){if(this.$panel.view.component)return t(this.$panel.view.component,{key:this.$panel.view.component,props:this.$panel.view.props})}},U={props:{after:String}},H={props:{autocomplete:String}},V={props:{autofocus:Boolean}},K={props:{before:String}},W={props:{disabled:Boolean}},J={props:{font:String}},G={props:{help:String}},X={props:{id:{type:[Number,String],default(){return this._uid}}}},Z={props:{invalid:Boolean}},Q={props:{label:String}},tt={props:{layout:{type:String,default:"list"}}},et={props:{maxlength:Number}},it={props:{minlength:Number}},nt={props:{name:[Number,String]}},st={props:{options:{default:()=>[],type:Array}}},ot={props:{pattern:String}},lt={props:{placeholder:[Number,String]}},rt={props:{required:Boolean}},at={props:{spellcheck:{type:Boolean,default:!0}}};function ut(t,e,i,n,s,o,l,r){var a,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=i,u._compiled=!0),n&&(u.functional=!0),o&&(u._scopeId="data-v-"+o),l?(a=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),s&&s.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(l)},u._ssrRegister=a):s&&(a=r?function(){s.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:s),a)if(u.functional){u._injectStyles=a;var c=u.render;u.render=function(t,e){return a.call(e),c(t,e)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,a):[a]}return{exports:t,options:u}}const ct={mixins:[tt],inheritAttrs:!1,props:{columns:{type:[Object,Array],default:()=>({})},items:{type:Array,default:()=>[]},link:{type:Boolean,default:!0},sortable:Boolean,size:{type:String,default:"medium"}}};const dt=ut({mixins:[ct],props:{image:{type:[Object,Boolean],default:()=>({})}},computed:{dragOptions(){return{sort:this.sortable,disabled:!1===this.sortable,draggable:".k-draggable-item"}},table(){return{columns:this.columns,rows:this.items,sortable:this.sortable}}},methods:{onDragStart(t,e){this.$panel.drag.start("text",e)},onOption(t,e,i){this.$emit("option",t,e,i)},imageOptions(t){let e=this.image,i=t.image;return!1!==e&&!1!==i&&("object"!=typeof e&&(e={}),"object"!=typeof i&&(i={}),{...i,...e})}}},(function(){var t=this,e=t._self._c;return"table"===t.layout?e("k-table",t._b({on:{change:function(e){return t.$emit("change",e)},sort:function(e){return t.$emit("sort",e)},option:t.onOption},scopedSlots:t._u([t.$scopedSlots.options?{key:"options",fn:function({row:e,rowIndex:i}){return[t._t("options",null,null,{item:e,index:i})]}}:null],null,!0)},"k-table",t.table,!1)):e("k-draggable",{staticClass:"k-items",class:"k-"+t.layout+"-items",attrs:{"data-layout":t.layout,"data-size":t.size,handle:!0,list:t.items,options:t.dragOptions},on:{change:function(e){return t.$emit("change",e)},end:function(e){return t.$emit("sort",t.items,e)}}},[t._l(t.items,(function(i,n){return[t._t("default",(function(){return[e("k-item",t._b({key:i.id??n,class:{"k-draggable-item":t.sortable&&i.sortable},attrs:{image:t.imageOptions(i),layout:t.layout,link:!!t.link&&i.link,sortable:t.sortable&&i.sortable,width:i.column},on:{click:function(e){return t.$emit("item",i,n)},drag:function(e){return t.onDragStart(e,i.dragText)},option:function(e){return t.onOption(e,i,n)}},nativeOn:{mouseover:function(e){return t.$emit("hover",e,i,n)}},scopedSlots:t._u([{key:"options",fn:function(){return[t._t("options",null,null,{item:i,index:n})]},proxy:!0}],null,!0)},"k-item",i,!1))]}),null,{item:i,itemIndex:n})]}))],2)}),[],!1,null,null,null,null).exports;const pt=ut({mixins:[ct],props:{empty:{type:Object,default:()=>({})},help:String,pagination:{type:[Boolean,Object],default:!1}},computed:{hasPagination(){return!1!==this.pagination&&(!0!==this.paginationOptions.hide&&!(this.pagination.total<=this.pagination.limit))},paginationOptions(){return{limit:10,details:!0,keys:!1,total:0,hide:!1,..."object"!=typeof this.pagination?{}:this.pagination}}},watch:{$props(){this.$forceUpdate()}},methods:{onEmpty(t){t.stopPropagation(),this.$emit("empty")},onOption(...t){this.$emit("action",...t),this.$emit("option",...t)}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-collection"},[0===t.items.length?e("k-empty",t._g(t._b({attrs:{layout:t.layout}},"k-empty",t.empty,!1),t.$listeners.empty?{click:t.onEmpty}:{})):e("k-items",{attrs:{columns:t.columns,items:t.items,layout:t.layout,link:t.link,size:t.size,sortable:t.sortable},on:{change:function(e){return t.$emit("change",e)},item:function(e){return t.$emit("item",e)},option:t.onOption,sort:function(e){return t.$emit("sort",e)}},scopedSlots:t._u([{key:"options",fn:function({item:e,index:i}){return[t._t("options",null,null,{item:e,index:i})]}}],null,!0)}),t.help||t.hasPagination?e("footer",{staticClass:"k-bar k-collection-footer"},[e("k-text",{staticClass:"k-help k-collection-help",attrs:{html:t.help}}),t.hasPagination?e("k-pagination",t._b({on:{paginate:function(e){return t.$emit("paginate",e)}}},"k-pagination",t.paginationOptions,!1)):t._e()],1):t._e()],1)}),[],!1,null,null,null,null).exports;const ht=ut({mixins:[tt],props:{text:String,icon:String},computed:{attrs(){const t={button:void 0!==this.$listeners.click,icon:this.icon,theme:"empty"};return"cardlets"!==this.layout&&"cards"!==this.layout||(t.align="center",t.height="var(--item-height-cardlet)"),t}}},(function(){var t=this;return(0,t._self._c)("k-box",t._b({staticClass:"k-empty",nativeOn:{click:function(e){return t.$emit("click",e)}}},"k-box",t.attrs,!1),[t._t("default",(function(){return[t._v(" "+t._s(t.text)+" ")]}))],2)}),[],!1,null,null,null,null).exports,mt={mixins:[tt],props:{image:[Object,Boolean],width:{type:String,default:"1/1"}}};const ft=ut({mixins:[mt],inheritAttrs:!1,computed:{attrs(){return{back:this.image.back??"gray-500",cover:!0,...this.image,ratio:"list"===this.layout?"auto":this.image.ratio,size:this.sizes}},sizes(){switch(this.width){case"1/2":case"2/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 44em, 27em";case"1/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 29.333em, 27em";case"1/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 22em, 27em";case"2/3":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 27em, 27em";case"3/4":return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 66em, 27em";default:return"(min-width: 30em) and (max-width: 65em) 59em, (min-width: 65em) 88em, 27em"}}}},(function(){var t=this,e=t._self._c;return t.image.src?e("k-image-frame",t._b({staticClass:"k-item-image"},"k-image-frame",t.attrs,!1)):e("k-icon-frame",t._b({staticClass:"k-item-image"},"k-icon-frame",t.attrs,!1))}),[],!1,null,null,null,null).exports;const gt=ut({mixins:[mt,tt],inheritAttrs:!1,props:{buttons:{type:Array,default:()=>[]},data:Object,info:String,link:{type:[Boolean,String,Function]},options:{type:[Array,Function,String]},sortable:Boolean,target:String,text:String},computed:{hasFigure(){return!1!==this.image&&this.$helper.object.length(this.image)>0},title(){return this.$helper.string.stripHTML(this.$helper.string.unescapeHTML(this.text)).trim()}},methods:{onOption(t){this.$emit("action",t),this.$emit("option",t)}}},(function(){var t,e=this,i=e._self._c;return i("div",e._b({staticClass:"k-item",class:!!e.layout&&"k-"+e.layout+"-item",attrs:{"data-has-image":e.hasFigure,"data-layout":e.layout},on:{click:function(t){return e.$emit("click",t)},dragstart:function(t){return e.$emit("drag",t)}}},"div",e.data,!1),[e._t("image",(function(){return[e.hasFigure?i("k-item-image",{attrs:{image:e.image,layout:e.layout,width:e.width}}):e._e()]})),e.sortable?i("k-sort-handle",{staticClass:"k-item-sort-handle",attrs:{tabindex:"-1"}}):e._e(),i("div",{staticClass:"k-item-content"},[i("h3",{staticClass:"k-item-title",attrs:{title:e.title}},[!1!==e.link?i("k-link",{attrs:{target:e.target,to:e.link}},[i("span",{domProps:{innerHTML:e._s(e.text??"–")}})]):i("span",{domProps:{innerHTML:e._s(e.text??"–")}})],1),e.info?i("p",{staticClass:"k-item-info",domProps:{innerHTML:e._s(e.info)}}):e._e()]),i("div",{staticClass:"k-item-options",attrs:{"data-only-option":!(null==(t=e.buttons)?void 0:t.length)||!e.options&&!e.$slots.options}},[e._l(e.buttons,(function(t,n){return i("k-button",e._b({key:"button-"+n},"k-button",t,!1))})),e._t("options",(function(){return[e.options?i("k-options-dropdown",{staticClass:"k-item-options-dropdown",attrs:{options:e.options},on:{option:e.onOption}}):e._e()]}))],2)],2)}),[],!1,null,null,null,null).exports,kt={install(t){t.component("k-collection",pt),t.component("k-empty",ht),t.component("k-item",gt),t.component("k-item-image",ft),t.component("k-items",dt)}};const bt=ut({},(function(){return(0,this._self._c)("div",{staticClass:"k-dialog-body"},[this._t("default")],2)}),[],!1,null,null,null,null).exports;function vt(t){if(void 0!==t)return JSON.parse(JSON.stringify(t))}function yt(t){return"object"==typeof t&&(null==t?void 0:t.constructor)===Object}function $t(t){return Object.keys(t??{}).length}function wt(t){return Object.keys(t).reduce(((e,i)=>(e[i.toLowerCase()]=t[i],e)),{})}const xt={clone:vt,isEmpty:function(t){return null==t||""===t||(!(!yt(t)||0!==$t(t))||0===t.length)},isObject:yt,length:$t,merge:function t(e,i={}){for(const n in i)i[n]instanceof Object&&Object.assign(i[n],t(e[n]??{},i[n]));return Object.assign(e??{},i),e},same:function(t,e){return JSON.stringify(t)===JSON.stringify(e)},toLowerKeys:wt},_t={props:{cancelButton:{default:!0,type:[Boolean,String,Object]},disabled:{default:!1,type:Boolean},icon:{default:"check",type:String},submitButton:{type:[Boolean,String,Object],default:!0},theme:{default:"positive",type:String}}};const St=ut({mixins:[_t],emits:["cancel"],computed:{cancel(){return this.button(this.cancelButton,{click:()=>this.$emit("cancel"),class:"k-dialog-button-cancel",icon:"cancel",text:this.$t("cancel"),variant:"filled"})},submit(){return this.button(this.submitButton,{class:"k-dialog-button-submit",disabled:this.disabled||this.$panel.dialog.isLoading,icon:this.icon,text:this.$t("confirm"),theme:this.theme,type:"submit",variant:"filled"})}},methods:{button:(t,e)=>"string"==typeof t?{...e,text:t}:!1!==t&&(!1===yt(t)?e:{...e,...t})}},(function(){var t=this,e=t._self._c;return e("k-button-group",{staticClass:"k-dialog-buttons"},[t.cancel?e("k-button",t._b({},"k-button",t.cancel,!1)):t._e(),t.submit?e("k-button",t._b({attrs:{icon:t.$panel.dialog.isLoading?"loader":t.submit.icon}},"k-button",t.submit,!1)):t._e()],1)}),[],!1,null,null,null,null).exports,Ct={props:{empty:{default:()=>window.panel.$t("dialog.fields.empty"),type:String},fields:{default:()=>[],type:[Array,Object]},novalidate:{default:!0,type:Boolean},value:{default:()=>({}),type:Object}}};const Ot=ut({mixins:[Ct],emits:["input","submit"],computed:{hasFields(){return this.$helper.object.length(this.fields)>0}}},(function(){var t=this,e=t._self._c;return t.hasFields?e("k-fieldset",{staticClass:"k-dialog-fields",attrs:{novalidate:t.novalidate,fields:t.fields,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports;const At=ut({},(function(){return(0,this._self._c)("footer",{staticClass:"k-dialog-footer"},[this._t("default")],2)}),[],!1,null,null,null,null).exports;const Mt=ut({},(function(){var t=this,e=t._self._c;return"dialog"===t.$panel.notification.context?e("k-notification",{staticClass:"k-dialog-notification"}):t._e()}),[],!1,null,null,null,null).exports;const jt=ut({props:{autofocus:{default:!0,type:Boolean},placeholder:{default:()=>window.panel.$t("search")+" …",type:String},value:{type:String}},emits:["search"]},(function(){var t=this;return(0,t._self._c)("k-input",{staticClass:"k-dialog-search",attrs:{autofocus:t.autofocus,placeholder:t.placeholder,spellcheck:!1,value:t.value,icon:"search",type:"text"},on:{input:function(e){return t.$emit("search",e)}}})}),[],!1,null,null,null,null).exports,It={props:{empty:{type:String,default:()=>window.panel.$t("dialog.text.empty")},text:{type:String}}};const Tt=ut({mixins:[It]},(function(){var t=this,e=t._self._c;return t.text?e("k-text",{attrs:{html:t.text}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports,Et={install(t){t.component("k-dialog-body",bt),t.component("k-dialog-buttons",St),t.component("k-dialog-fields",Ot),t.component("k-dialog-footer",At),t.component("k-dialog-notification",Mt),t.component("k-dialog-search",jt),t.component("k-dialog-text",Tt)}},Lt={mixins:[_t],props:{size:{default:"default",type:String},visible:{default:!1,type:Boolean}},emits:["cancel","submit"],methods:{cancel(){this.$emit("cancel")},close(){this.$emit("close")},error(t){this.$panel.notification.error(t)},focus(t){this.$panel.dialog.focus(t)},input(t){this.$emit("input",t)},open(){this.$panel.dialog.open(this)},submit(){this.$emit("submit",this.value)},success(t){this.$emit("success",t)}}};const Dt=ut({mixins:[Lt],emits:["cancel","submit"]},(function(){var t=this,e=t._self._c;return t.visible?e("portal",{attrs:{to:"dialog"}},[e("form",{staticClass:"k-dialog",class:t.$vnode.data.staticClass,attrs:{"data-has-footer":t.cancelButton||t.submitButton,"data-size":t.size,method:"dialog"},on:{click:function(t){t.stopPropagation()},submit:function(e){return e.preventDefault(),t.$emit("submit")}}},[t._t("header",(function(){return[e("k-dialog-notification")]})),t.$slots.default?e("k-dialog-body",[t._t("default")],2):t._e(),t._t("footer",(function(){return[t.cancelButton||t.submitButton?e("k-dialog-footer",[e("k-dialog-buttons",{attrs:{"cancel-button":t.cancelButton,disabled:t.disabled,icon:t.icon,"submit-button":t.submitButton,theme:t.theme},on:{cancel:function(e){return t.$emit("cancel")}}})],1):t._e()]}))],2)]):t._e()}),[],!1,null,null,null,null).exports;const Bt=ut({mixins:[Lt],props:{cancelButton:{default:!1},changes:{type:Array},loading:{type:Boolean},size:{default:"medium"},submitButton:{default:!1}},computed:{ids(){return Object.keys(this.store).filter((t=>{var e;return this.$helper.object.length(null==(e=this.store[t])?void 0:e.changes)>0}))},store(){return this.$store.state.content.models}},watch:{ids:{handler(t){this.$panel.dialog.refresh({method:"POST",body:{ids:t}})},immediate:!0}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({staticClass:"k-changes-dialog"},"k-dialog",t.$props,!1),[!1===t.loading?[e("k-headline",[t._v(t._s(t.$t("lock.unsaved")))]),t.changes.length?e("k-items",{attrs:{items:t.changes,layout:"list"}}):e("k-empty",{attrs:{icon:"edit-line"}},[t._v(t._s(t.$t("lock.unsaved.empty")))])]:[e("k-icon",{attrs:{type:"loader"}})]],2)}),[],!1,null,null,null,null).exports;const qt=ut({mixins:[Lt,Ct],props:{fields:{default:()=>({href:{label:window.panel.$t("email"),type:"email",icon:"email"},title:{label:window.panel.$t("link.text"),type:"text",icon:"title"}})},size:{default:"medium"},submitButton:{default:()=>window.panel.$t("insert")}},data(){return{values:{href:"",title:null,...this.value}}},methods:{submit(){this.$emit("submit",this.values)}}},(function(){var t=this;return(0,t._self._c)("k-form-dialog",t._b({attrs:{value:t.values},on:{cancel:function(e){return t.$emit("cancel")},input:function(e){t.values=e},submit:t.submit}},"k-form-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const Pt=ut({mixins:[Lt],props:{details:[Object,Array],message:String,size:{default:"medium",type:String}},emits:["cancel"],computed:{detailsList(){return Array.fromObject(this.details)}}},(function(){var t=this,e=t._self._c;return e("k-dialog",{ref:"dialog",staticClass:"k-error-dialog",attrs:{"cancel-button":!1,"submit-button":!1,size:t.size,visible:t.visible},on:{cancel:function(e){return t.$emit("cancel")}}},[e("k-text",[t._v(t._s(t.message))]),t.detailsList.length?e("dl",{staticClass:"k-error-details"},[t._l(t.detailsList,(function(i,n){return[e("dt",{key:"detail-label-"+n},[t._v(" "+t._s(i.label)+" ")]),e("dd",{key:"detail-message-"+n},["object"==typeof i.message?[e("ul",t._l(i.message,(function(i,n){return e("li",{key:n},[t._v(" "+t._s(i)+" ")])})),0)]:[t._v(" "+t._s(i.message)+" ")]],2)]}))],2):t._e()],1)}),[],!1,null,null,null,null).exports;const Nt=ut({},(function(){var t=this;return(0,t._self._c)(t.$panel.dialog.component,t._g(t._b({key:t.$panel.dialog.timestamp,tag:"component",attrs:{visible:!0}},"component",t.$panel.dialog.props,!1),t.$panel.dialog.listeners()))}),[],!1,null,null,null,null).exports,zt=(t,e)=>{let i=null;return(...n)=>{clearTimeout(i),i=setTimeout((()=>t.apply(globalThis,n)),e)}},Ft={props:{delay:{default:200,type:Number},hasSearch:{default:!0,type:Boolean}},data:()=>({query:null}),watch:{query(){!1!==this.hasSearch&&this.search()}},created(){this.search=zt(this.search,this.delay)},methods:{async search(){console.warn("Search mixin: Please implement a `search` method.")}}},Rt={props:{endpoint:String,empty:Object,fetchParams:Object,item:{type:Function,default:t=>t},max:Number,multiple:{type:Boolean,default:!0},size:{type:String,default:"medium"},value:{type:Array,default:()=>[]}}};const Yt=ut({mixins:[Lt,Ft,Rt],data(){return{models:[],selected:this.value.reduce(((t,e)=>({...t,[e]:{id:e}})),{}),pagination:{limit:20,page:1,total:0}}},computed:{items(){return this.models.map(this.item)}},watch:{fetchParams(t,e){!1===this.$helper.object.same(t,e)&&(this.pagination.page=1,this.fetch())}},created(){this.fetch()},methods:{async fetch(){const t={page:this.pagination.page,search:this.query,...this.fetchParams};try{this.$panel.dialog.isLoading=!0;const e=await this.$api.get(this.endpoint,t);this.models=e.data,this.pagination=e.pagination,this.$emit("fetched",e)}catch(e){this.$panel.error(e),this.models=[]}finally{this.$panel.dialog.isLoading=!1}},isSelected(t){return void 0!==this.selected[t.id]},paginate(t){this.pagination.page=t.page,this.pagination.limit=t.limit,this.fetch()},submit(){this.$emit("submit",Object.values(this.selected))},async search(){this.pagination.page=0,await this.fetch()},toggle(t){if(!1!==this.multiple&&1!==this.max||(this.selected={}),this.isSelected(t))return Vue.del(this.selected,t.id);this.max&&this.max<=this.$helper.object.length(this.selected)||Vue.set(this.selected,t.id,t)}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({staticClass:"k-models-dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:t.submit}},"k-dialog",t.$props,!1),[t._t("header"),t.hasSearch?e("k-dialog-search",{attrs:{value:t.query},on:{search:function(e){t.query=e}}}):t._e(),e("k-collection",{attrs:{empty:{...t.empty,text:t.$panel.dialog.isLoading?t.$t("loading"):t.empty.text},items:t.items,link:!1,pagination:{details:!0,dropdown:!1,align:"center",...t.pagination},sortable:!1,layout:"list"},on:{item:t.toggle,paginate:t.paginate},scopedSlots:t._u([{key:"options",fn:function({item:i}){return[t.isSelected(i)?e("k-button",{attrs:{icon:t.multiple&&1!==t.max?"check":"circle-nested",title:t.$t("remove"),theme:"info"},on:{click:function(e){return e.stopPropagation(),t.toggle(i)}}}):e("k-button",{attrs:{title:t.$t("select"),icon:"circle-outline"},on:{click:function(e){return e.stopPropagation(),t.toggle(i)}}}),t._t("options",null,null,{item:i})]}}],null,!0)})],2)}),[],!1,null,null,null,null).exports;const Ut=ut({mixins:[Lt,Rt],props:{empty:{type:Object,default:()=>({icon:"image",text:window.panel.$t("dialog.files.empty")})}}},(function(){var t=this;return(0,t._self._c)("k-models-dialog",t._b({on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",e)}}},"k-models-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const Ht=ut({mixins:[Lt,Ct],props:{size:{default:"medium"},submitButton:{default:()=>window.panel.$t("save")},text:{type:String}},emits:["cancel","input","submit"]},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-dialog",t.$props,!1),[t._t("default",(function(){return[t.text?e("k-dialog-text",{attrs:{text:t.text}}):t._e(),e("k-dialog-fields",{attrs:{fields:t.fields,novalidate:t.novalidate,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})]}))],2)}),[],!1,null,null,null,null).exports;const Vt=ut({extends:Ht,watch:{"value.name"(t){this.fields.code.disabled||this.onNameChanges(t)},"value.code"(t){this.fields.code.disabled||(this.value.code=this.$helper.slug(t,[this.$panel.system.ascii]),this.onCodeChanges(this.value.code))}},methods:{onCodeChanges(t){if(!t)return this.value.locale=null;if(t.length>=2)if(-1!==t.indexOf("-")){let e=t.split("-"),i=[e[0],e[1].toUpperCase()];this.value.locale=i.join("_")}else{let e=this.$panel.system.locales??[];this.value.locale=null==e?void 0:e[t]}},onNameChanges(t){this.value.code=this.$helper.slug(t,[this.value.rules,this.$panel.system.ascii]).substr(0,2)}}},null,null,!1,null,null,null,null).exports;const Kt=ut({mixins:[Lt,Ct],props:{fields:{default:()=>({href:{label:window.panel.$t("link"),type:"link",placeholder:window.panel.$t("url.placeholder"),icon:"url"},title:{label:window.panel.$t("title"),type:"text",icon:"title"},target:{label:window.panel.$t("open.newWindow"),type:"toggle",text:[window.panel.$t("no"),window.panel.$t("yes")]}})},size:{default:"medium"},submitButton:{default:()=>window.panel.$t("insert")}},data(){return{values:{href:"",title:null,...this.value,target:Boolean(this.value.target??!1)}}},methods:{submit(){const t=this.values.href.replace("file://","/@/file/").replace("page://","/@/page/");this.$emit("submit",{...this.values,href:t,target:this.values.target?"_blank":null})}}},(function(){var t=this;return(0,t._self._c)("k-form-dialog",t._b({attrs:{value:t.values},on:{cancel:function(e){return t.$emit("cancel")},input:function(e){t.values=e},submit:t.submit}},"k-form-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const Wt=ut({mixins:[Ht],props:{blueprints:{type:Array},size:{default:"medium",type:String},submitButton:{type:[String,Boolean],default:()=>window.panel.$t("save")},template:{type:String}},computed:{templates(){return this.blueprints.map((t=>({text:t.title,value:t.name})))}},methods:{pick(t){this.$panel.dialog.reload({query:{...this.$panel.dialog.query,slug:this.value.slug,template:t,title:this.value.title}})}}},(function(){var t=this,e=t._self._c;return e("k-form-dialog",t._b({ref:"dialog",staticClass:"k-page-create-dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-form-dialog",t.$props,!1),[t.templates.length>1?e("k-select-field",{staticClass:"k-page-template-switch",attrs:{empty:!1,label:t.$t("template"),options:t.templates,required:!0,value:t.template},on:{input:function(e){return t.pick(e)}}}):t._e(),e("k-dialog-fields",{attrs:{fields:t.fields,novalidate:t.novalidate,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})],1)}),[],!1,null,null,null,null).exports;const Jt=ut({mixins:[Lt],props:{value:{default:()=>({}),type:Object}},emits:["cancel","input","submit"],methods:{select(t){this.$emit("input",{...this.value,parent:t.value})}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",staticClass:"k-page-move-dialog",attrs:{"submit-button":{icon:"parent",text:t.$t("move")},size:"medium"},on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-dialog",t.$props,!1),[e("k-headline",[t._v(t._s(t.$t("page.move")))]),e("div",{staticClass:"k-page-move-parent",attrs:{tabindex:"0","data-autofocus":""}},[e("k-page-tree",{attrs:{current:t.value.parent,move:t.value.move,identifier:"id"},on:{select:t.select}})],1)],1)}),[],!1,null,null,null,null).exports;const Gt=ut({mixins:[Lt,Rt],props:{empty:{type:Object,default:()=>({icon:"page",text:window.panel.$t("dialog.pages.empty")})}},data:()=>({model:null,parent:null})},(function(){var t=this,e=t._self._c;return e("k-models-dialog",t._b({attrs:{"fetch-params":{parent:t.parent}},on:{cancel:function(e){return t.$emit("cancel")},fetched:function(e){t.model=e.model},submit:function(e){return t.$emit("submit",e)}},scopedSlots:t._u([t.model?{key:"header",fn:function(){return[e("header",{staticClass:"k-pages-dialog-navbar"},[e("k-button",{attrs:{disabled:!t.model.id,title:t.$t("back"),icon:"angle-left"},on:{click:function(e){t.parent=t.model.parent}}}),e("k-headline",[t._v(t._s(t.model.title))])],1)]},proxy:!0}:null,t.model?{key:"options",fn:function({item:i}){return[e("k-button",{staticClass:"k-pages-dialog-option",attrs:{disabled:!i.hasChildren,title:t.$t("open"),icon:"angle-right"},on:{click:function(e){e.stopPropagation(),t.parent=i.id}}})]}}:null],null,!0)},"k-models-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports;const Xt=ut({mixins:[{mixins:[Lt,It]}]},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-dialog",t.$props,!1),[t._t("default",(function(){return[e("k-dialog-text",{attrs:{text:t.text}})]}))],2)}),[],!1,null,null,null,null).exports;const Zt=ut({mixins:[Xt],props:{icon:{default:"trash"},submitButton:{default:()=>window.panel.$t("delete")},theme:{default:"negative"}}},(function(){var t=this;return(0,t._self._c)("k-text-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-text-dialog",t.$props,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Qt=ut({mixins:[Lt,Ft],emits:["cancel"],data(){return{isLoading:!1,items:[],pagination:{},selected:-1,type:this.$panel.searches[this.$panel.view.search]?this.$panel.view.search:Object.keys(this.$panel.searches)[0]}},computed:{currentType(){return this.$panel.searches[this.type]??this.types[0]},types(){return Object.values(this.$panel.searches).map((t=>({...t,current:this.type===t.id,click:()=>{this.type=t.id,this.focus()}})))}},watch:{type(){this.search()}},methods:{clear(){this.items=[],this.query=null},focus(){var t;null==(t=this.$refs.input)||t.focus()},navigate(t){t&&(this.$go(t.link),this.close())},onDown(){this.selected=0&&this.select(this.selected-1)},async search(){var t,e;this.isLoading=!0,null==(t=this.$refs.types)||t.close(),null==(e=this.select)||e.call(this,-1);try{if(null===this.query||this.query.length<2)throw Error("Empty query");const t=await this.$search(this.type,this.query);this.items=t.results,this.pagination=t.pagination}catch(i){this.items=[],this.pagination={}}finally{this.isLoading=!1}},select(t){var e;this.selected=t;const i=(null==(e=this.$refs.items)?void 0:e.$el.querySelectorAll(".k-item"))??[];for(const n of i)delete n.dataset.selected;t>=0&&(i[t].dataset.selected=!0)}}},(function(){var t,e=this,i=e._self._c;return i("k-dialog",e._b({staticClass:"k-search-dialog",attrs:{"cancel-button":!1,"submit-button":!1,role:"search",size:"medium"},on:{cancel:function(t){return e.$emit("cancel")},submit:e.submit}},"k-dialog",e.$props,!1),[i("div",{staticClass:"k-search-dialog-input"},[i("k-button",{staticClass:"k-search-dialog-types",attrs:{dropdown:!0,icon:e.currentType.icon,text:e.currentType.label,variant:"dimmed"},on:{click:function(t){return e.$refs.types.toggle()}}}),i("k-dropdown-content",{ref:"types",attrs:{options:e.types}}),i("k-search-input",{ref:"input",attrs:{"aria-label":e.$t("search"),autofocus:!0,value:e.query},on:{input:function(t){e.query=t}},nativeOn:{keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])?null:(t.preventDefault(),e.onDown.apply(null,arguments))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])?null:(t.preventDefault(),e.onUp.apply(null,arguments))},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.onEnter.apply(null,arguments)}]}}),i("k-button",{staticClass:"k-search-dialog-close",attrs:{icon:e.isLoading?"loader":"cancel",title:e.$t("close")},on:{click:e.close}})],1),(null==(t=e.query)?void 0:t.length)>1?i("div",{staticClass:"k-search-dialog-results"},[e.items.length?i("k-collection",{ref:"items",attrs:{items:e.items},nativeOn:{mouseout:function(t){return e.select(-1)}}}):e._e(),i("footer",{staticClass:"k-search-dialog-footer"},[e.items.length?e.items.length({text:window.panel.$t("activate"),icon:"lock",theme:"notice"})}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-dialog",t.$props,!1),[e("k-dialog-text",{staticClass:"k-totp-dialog-intro",attrs:{text:t.$t("login.totp.enable.intro")}}),e("div",{staticClass:"k-totp-dialog-grid"},[e("div",{staticClass:"k-totp-qrcode"},[e("k-info-field",{attrs:{label:t.$t("login.totp.enable.qr.label"),text:t.qr,help:t.$t("login.totp.enable.qr.help",{secret:t.value.secret}),theme:"passive"}})],1),e("k-dialog-fields",{staticClass:"k-totp-dialog-fields",attrs:{fields:{info:{label:t.$t("login.totp.enable.confirm.headline"),type:"info",text:t.$t("login.totp.enable.confirm.text"),theme:"none"},confirm:{label:t.$t("login.totp.enable.confirm.label"),type:"text",counter:!1,font:"monospace",required:!0,placeholder:t.$t("login.code.placeholder.totp"),help:t.$t("login.totp.enable.confirm.help")},secret:{type:"hidden"}},novalidate:!0,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})],1)],1)}),[],!1,null,null,null,null).exports;const ee=ut({mixins:[Lt],props:{submitButton:{type:[String,Boolean,Object],default:()=>({icon:"upload",text:window.panel.$t("upload")})}},methods:{isPreviewable:t=>["image/jpeg","image/jpg","image/gif","image/png","image/webp","image/avif","image/svg+xml"].includes(t)}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({ref:"dialog",staticClass:"k-upload-dialog",attrs:{disabled:t.disabled||0===t.$panel.upload.files.length},on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},"k-dialog",t.$props,!1),[e("k-dropzone",{on:{drop:function(e){return t.$panel.upload.select(e)}}},[0===t.$panel.upload.files.length?[e("k-empty",{attrs:{icon:"upload",layout:"cards"},on:{click:function(e){return t.$panel.upload.pick()}}},[t._v(" "+t._s(t.$t("files.empty"))+" ")])]:[e("ul",{staticClass:"k-upload-items"},t._l(t.$panel.upload.files,(function(i){return e("li",{key:i.id,staticClass:"k-upload-item",attrs:{"data-completed":i.completed}},[e("a",{staticClass:"k-upload-item-preview",attrs:{href:i.url,target:"_blank"}},[t.isPreviewable(i.type)?e("k-image-frame",{attrs:{cover:!0,src:i.url,back:"pattern"}}):e("k-icon-frame",{attrs:{back:"black",color:"white",ratio:"1/1",icon:"file"}})],1),e("k-input",{staticClass:"k-upload-item-input",attrs:{disabled:i.completed,after:"."+i.extension,novalidate:!0,required:!0,type:"slug"},model:{value:i.name,callback:function(e){t.$set(i,"name",e)},expression:"file.name"}}),e("div",{staticClass:"k-upload-item-body"},[e("p",{staticClass:"k-upload-item-meta"},[t._v(" "+t._s(i.niceSize)+" "),i.progress?[t._v(" - "+t._s(i.progress)+"% ")]:t._e()],2),i.error?e("p",{staticClass:"k-upload-item-error"},[t._v(" "+t._s(i.error)+" ")]):i.progress?e("k-progress",{staticClass:"k-upload-item-progress",attrs:{value:i.progress}}):t._e()],1),e("div",{staticClass:"k-upload-item-toggle"},[i.completed||i.progress?i.completed?e("k-button",{attrs:{icon:"check",theme:"positive"},on:{click:function(e){return t.$panel.upload.remove(i.id)}}}):e("div",[e("k-icon",{attrs:{type:"loader"}})],1):e("k-button",{attrs:{icon:"remove"},on:{click:function(e){return t.$panel.upload.remove(i.id)}}})],1)],1)})),0)]],2)],1)}),[],!1,null,null,null,null).exports;const ie=ut({extends:ee,props:{original:Object,submitButton:{type:[String,Boolean,Object],default:()=>({icon:"upload",text:window.panel.$t("replace")})}}},(function(){var t,e,i=this,n=i._self._c;return n("k-dialog",i._b({ref:"dialog",staticClass:"k-upload-dialog k-upload-replace-dialog",on:{cancel:function(t){return i.$emit("cancel")},submit:function(t){return i.$emit("submit")}}},"k-dialog",i.$props,!1),[n("ul",{staticClass:"k-upload-items"},[n("li",{staticClass:"k-upload-original"},[i.isPreviewable(i.original.mime)?n("k-image",{attrs:{cover:!0,src:i.original.url,back:"pattern"}}):n("k-icon-frame",{attrs:{color:(null==(t=i.original.image)?void 0:t.color)??"white",icon:(null==(e=i.original.image)?void 0:e.icon)??"file",back:"black",ratio:"1/1"}})],1),n("li",[i._v("←")]),i._l(i.$panel.upload.files,(function(t){var e,s;return n("li",{key:t.id,staticClass:"k-upload-item",attrs:{"data-completed":t.completed}},[n("a",{staticClass:"k-upload-item-preview",attrs:{href:t.url,target:"_blank"}},[i.isPreviewable(t.type)?n("k-image",{attrs:{cover:!0,src:t.url,back:"pattern"}}):n("k-icon-frame",{attrs:{color:(null==(e=i.original.image)?void 0:e.color)??"white",icon:(null==(s=i.original.image)?void 0:s.icon)??"file",back:"black",ratio:"1/1"}})],1),n("k-input",{staticClass:"k-upload-item-input",attrs:{value:i.$helper.file.name(i.original.filename),disabled:!0,after:"."+t.extension,type:"text"}}),n("div",{staticClass:"k-upload-item-body"},[n("p",{staticClass:"k-upload-item-meta"},[i._v(" "+i._s(t.niceSize)+" "),t.progress?[i._v(" - "+i._s(t.progress)+"% ")]:i._e()],2),n("p",{staticClass:"k-upload-item-error"},[i._v(i._s(t.error))])]),n("div",{staticClass:"k-upload-item-progress"},[t.progress>0&&!t.error?n("k-progress",{attrs:{value:t.progress}}):i._e()],1),n("div",{staticClass:"k-upload-item-toggle"},[t.completed?n("k-button",{attrs:{icon:"check",theme:"positive"},on:{click:function(e){return i.$panel.upload.remove(t.id)}}}):t.progress?n("div",[n("k-icon",{attrs:{type:"loader"}})],1):i._e()],1)],1)}))],2)])}),[],!1,null,null,null,null).exports;const ne=ut({mixins:[Lt,Rt],props:{empty:{type:Object,default:()=>({icon:"users",text:window.panel.$t("dialog.users.empty")})},item:{type:Function,default:t=>({...t,key:t.email,info:t.info!==t.text?t.info:null})}}},(function(){var t=this;return(0,t._self._c)("k-models-dialog",t._b({on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",e)}}},"k-models-dialog",t.$props,!1))}),[],!1,null,null,null,null).exports,se={install(t){t.use(Et),t.component("k-dialog",Dt),t.component("k-changes-dialog",Bt),t.component("k-email-dialog",qt),t.component("k-error-dialog",Pt),t.component("k-fiber-dialog",Nt),t.component("k-files-dialog",Ut),t.component("k-form-dialog",Ht),t.component("k-link-dialog",Kt),t.component("k-language-dialog",Vt),t.component("k-models-dialog",Yt),t.component("k-page-create-dialog",Wt),t.component("k-page-move-dialog",Jt),t.component("k-pages-dialog",Gt),t.component("k-remove-dialog",Zt),t.component("k-search-dialog",Qt),t.component("k-text-dialog",Xt),t.component("k-totp-dialog",te),t.component("k-upload-dialog",ee),t.component("k-upload-replace-dialog",ie),t.component("k-users-dialog",ne)}};const oe=ut({},(function(){return(0,this._self._c)("div",{staticClass:"k-drawer-body scroll-y-auto"},[this._t("default")],2)}),[],!1,null,null,null,null).exports,le={props:{empty:{type:String,default:()=>window.panel.$t("drawer.fields.empty")},fields:Object,novalidate:{type:Boolean,default:!0},value:Object}};const re=ut({mixins:[le],emits:["input","submit"],computed:{hasFields(){return this.$helper.object.length(this.fields)>0}}},(function(){var t=this,e=t._self._c;return t.hasFields?e("k-fieldset",{staticClass:"k-drawer-fields",attrs:{novalidate:t.novalidate,fields:t.fields,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports,ae={props:{breadcrumb:{default:()=>[],type:Array},tab:{type:String},tabs:{default:()=>({}),type:Object}}};const ue=ut({mixins:[ae],emits:["crumb","tab"]},(function(){var t=this,e=t._self._c;return e("header",{staticClass:"k-drawer-header"},[e("nav",{staticClass:"k-breadcrumb k-drawer-breadcrumb"},[e("ol",t._l(t.breadcrumb,(function(i,n){return e("li",{key:i.id},[e("k-button",{staticClass:"k-breadcrumb-link",attrs:{icon:i.props.icon,text:i.props.title,current:n===t.breadcrumb.length-1,variant:"dimmed"},on:{click:function(e){return t.$emit("crumb",i.id)}}})],1)})),0)]),e("k-drawer-tabs",{attrs:{tab:t.tab,tabs:t.tabs},on:{open:function(e){return t.$emit("tab",e)}}}),e("nav",{staticClass:"k-drawer-options"},[t._t("default"),e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"check",type:"submit"}})],2)],1)}),[],!1,null,null,null,null).exports;const ce=ut({},(function(){var t=this,e=t._self._c;return"drawer"===t.$panel.notification.context?e("k-notification",{staticClass:"k-drawer-notification"}):t._e()}),[],!1,null,null,null,null).exports;const de=ut({mixins:[{props:{tab:{type:String},tabs:{default:()=>({}),type:[Array,Object]}}}],emits:["open"],computed:{hasTabs(){return this.$helper.object.length(this.tabs)>1}}},(function(){var t=this,e=t._self._c;return t.hasTabs?e("nav",{staticClass:"k-drawer-tabs"},t._l(t.tabs,(function(i){return e("k-button",{key:i.name,staticClass:"k-drawer-tab",attrs:{current:t.tab===i.name,text:i.label},on:{click:function(e){return t.$emit("open",i.name)}}})})),1):t._e()}),[],!1,null,null,null,null).exports,pe={props:{empty:{type:String,default:()=>window.panel.$t("drawer.text.empty")},text:{type:String}}};const he=ut({mixins:[pe]},(function(){var t=this,e=t._self._c;return t.text?e("k-text",{attrs:{html:t.text}}):e("k-box",{attrs:{theme:"info"}},[t._v(t._s(t.empty))])}),[],!1,null,null,null,null).exports,me={install(t){t.component("k-drawer-body",oe),t.component("k-drawer-fields",re),t.component("k-drawer-header",ue),t.component("k-drawer-notification",ce),t.component("k-drawer-tabs",de),t.component("k-drawer-text",he)}},fe={mixins:[ae],props:{disabled:{default:!1,type:Boolean},icon:String,id:String,options:{type:Array},title:String,visible:{default:!1,type:Boolean}}};const ge=ut({mixins:[fe],emits:["cancel","crumb","submit","tab"]},(function(){var t=this,e=t._self._c;return t.visible?e("portal",{attrs:{to:"drawer"}},[e("form",{staticClass:"k-drawer",class:t.$vnode.data.staticClass,attrs:{"aria-disabled":t.disabled,method:"dialog"},on:{submit:function(e){return e.preventDefault(),t.$emit("submit")}}},[e("k-drawer-notification"),e("k-drawer-header",{attrs:{breadcrumb:t.breadcrumb,tab:t.tab,tabs:t.tabs},on:{crumb:function(e){return t.$emit("crumb",e)},tab:function(e){return t.$emit("tab",e)}}},[t._t("options",(function(){return[t._l(t.options,(function(i,n){return[i.dropdown?[e("k-button",t._b({key:"btn-"+n,staticClass:"k-drawer-option",on:{click:function(e){t.$refs["dropdown-"+n][0].toggle()}}},"k-button",i,!1)),e("k-dropdown-content",{key:"dropdown-"+n,ref:"dropdown-"+n,refInFor:!0,attrs:{options:i.dropdown,"align-x":"end",theme:"light"}})]:e("k-button",t._b({key:n,staticClass:"k-drawer-option"},"k-button",i,!1))]}))]}))],2),e("k-drawer-body",[t._t("default")],2)],1)]):t._e()}),[],!1,null,null,null,null).exports,ke={props:{hidden:{type:Boolean},next:{type:Object},prev:{type:Object}}};const be=ut({mixins:[fe,le,ke],emits:["cancel","crumb","input","next","prev","remove","show","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-form-drawer",t._b({ref:"drawer",staticClass:"k-block-drawer",on:{cancel:function(e){return t.$emit("cancel",e)},crumb:function(e){return t.$emit("crumb",e)},input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)},tab:function(e){return t.$emit("tab",e)}},scopedSlots:t._u([{key:"options",fn:function(){return[t.hidden?e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"hidden"},on:{click:function(e){return t.$emit("show")}}}):t._e(),e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.prev,icon:"angle-left"},on:{click:function(e){return t.$emit("prev")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.next,icon:"angle-right"},on:{click:function(e){return t.$emit("next")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"trash"},on:{click:function(e){return t.$emit("remove")}}})]},proxy:!0}])},"k-form-drawer",t.$props,!1))}),[],!1,null,null,null,null).exports;const ve=ut({methods:{isCurrent(t){return this.$panel.drawer.id===t}}},(function(){var t=this,e=t._self._c;return e("div",t._l(t.$panel.drawer.history.milestones,(function(i){return e(i.component,t._g(t._b({key:i.id,tag:"component",attrs:{breadcrumb:t.$panel.drawer.breadcrumb,disabled:!1===t.isCurrent(i.id),visible:!0}},"component",t.isCurrent(i.id)?t.$panel.drawer.props:i.props,!1),t.isCurrent(i.id)?t.$panel.drawer.listeners():i.on))})),1)}),[],!1,null,null,null,null).exports;const ye=ut({mixins:[fe,le],emits:["cancel","crumb","input","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-drawer",t._b({ref:"drawer",staticClass:"k-form-drawer",on:{cancel:function(e){return t.$emit("cancel")},crumb:function(e){return t.$emit("crumb",e)},submit:function(e){return t.$emit("submit",t.value)},tab:function(e){return t.$emit("tab",e)}}},"k-drawer",t.$props,!1),[t._t("options",null,{slot:"options"}),e("k-drawer-fields",{attrs:{fields:t.fields,value:t.value},on:{input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)}}})],2)}),[],!1,null,null,null,null).exports;const $e=ut({mixins:[fe,le,{props:{next:{type:Object},prev:{type:Object}}}],emits:["cancel","crumb","input","next","prev","remove","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-form-drawer",t._b({ref:"drawer",staticClass:"k-structure-drawer",on:{cancel:function(e){return t.$emit("cancel",e)},crumb:function(e){return t.$emit("crumb",e)},input:function(e){return t.$emit("input",e)},submit:function(e){return t.$emit("submit",e)},tab:function(e){return t.$emit("tab",e)}},scopedSlots:t._u([{key:"options",fn:function(){return[e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.prev,icon:"angle-left"},on:{click:function(e){return t.$emit("prev")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{disabled:!t.next,icon:"angle-right"},on:{click:function(e){return t.$emit("next")}}}),e("k-button",{staticClass:"k-drawer-option",attrs:{icon:"trash"},on:{click:function(e){return t.$emit("remove")}}})]},proxy:!0}])},"k-form-drawer",t.$props,!1))}),[],!1,null,null,null,null).exports;const we=ut({mixins:[fe,pe],emits:["cancel","crumb","input","submit","tab"]},(function(){var t=this,e=t._self._c;return e("k-drawer",t._b({ref:"drawer",staticClass:"k-text-drawer",on:{cancel:function(e){return t.$emit("cancel")},crumb:function(e){return t.$emit("crumb",e)},submit:function(e){return t.$emit("submit",t.value)},tab:function(e){return t.$emit("tab",e)}}},"k-drawer",t.$props,!1),[t._t("options",null,{slot:"options"}),e("k-dialog-text",{attrs:{text:t.text}})],2)}),[],!1,null,null,null,null).exports,xe={install(t){t.use(me),t.component("k-drawer",ge),t.component("k-block-drawer",be),t.component("k-fiber-drawer",ve),t.component("k-form-drawer",ye),t.component("k-structure-drawer",$e),t.component("k-text-drawer",we)}};const _e=ut({created(){window.panel.deprecated(" will be removed in a future version. Since Kirby 4.0, you don't need it anymore as wrapper element. Use `` as standalone instead.")}},(function(){return(0,this._self._c)("span",{staticClass:"k-dropdown",on:{click:function(t){t.stopPropagation()}}},[this._t("default")],2)}),[],!1,null,null,null,null).exports;let Se=null;const Ce=ut({props:{align:{type:String},alignX:{type:String,default:"start"},alignY:{type:String,default:"bottom"},disabled:{type:Boolean,default:!1},navigate:{default:!0,type:Boolean},options:[Array,Function,String],theme:{type:String,default:"dark"}},emits:["action","close","open"],data(){return{axis:{x:this.alignX,y:this.alignY},position:{x:0,y:0},isOpen:!1,items:[],opener:null}},created(){this.align&&window.panel.deprecated(": `align` prop will be removed in a future version. Use the `alignX` prop instead.")},methods:{close(){var t;null==(t=this.$refs.dropdown)||t.close()},async fetchOptions(t){return this.options?"string"==typeof this.options?this.$dropdown(this.options)(t):"function"==typeof this.options?this.options(t):Array.isArray(this.options)?t(this.options):void 0:t(this.items)},focus(t=0){this.$refs.navigate.focus(t)},onClick(){this.close()},onClose(){this.resetPosition(),this.isOpen=Se=!1,this.$emit("close"),window.removeEventListener("resize",this.setPosition)},async onOpen(){this.isOpen=!0;const t=window.scrollY;Se=this,await this.$nextTick(),this.$el&&this.opener&&(window.addEventListener("resize",this.setPosition),await this.setPosition(),window.scrollTo(0,t),this.$emit("open"))},onOptionClick(t){this.close(),"function"==typeof t.click?t.click.call(this):t.click&&this.$emit("action",t.click)},open(t){var e,i;if(!0===this.disabled)return!1;Se&&Se!==this&&Se.close(),this.opener=t??(null==(e=window.event)?void 0:e.target.closest("button"))??(null==(i=window.event)?void 0:i.target),this.fetchOptions((t=>{this.items=t,this.onOpen()}))},async setPosition(){this.axis={x:this.alignX??this.align,y:this.alignY},"right"===this.axis.x?this.axis.x="end":"left"===this.axis.x&&(this.axis.x="start"),"rtl"===this.$panel.direction&&("start"===this.axis.x?this.axis.x="end":"end"===this.axis.x&&(this.axis.x="start")),this.opener instanceof Vue&&(this.opener=this.opener.$el);const t=this.opener.getBoundingClientRect();this.position.x=t.left+window.scrollX+t.width,this.position.y=t.top+window.scrollY+t.height,!0!==this.$el.open&&this.$el.showModal(),await this.$nextTick();const e=this.$el.getBoundingClientRect(),i=10;"end"===this.axis.x?t.left-e.widthwindow.innerWidth-i&&e.width+ie.top&&(this.axis.y="bottom"):t.top+e.height>window.innerHeight-i&&e.height+i!0===t.default));t.push(this.item(e)),t.push("-");const i=this.languages.filter((t=>!1===t.default));for(const n of i)t.push(this.item(n));return t}},methods:{change(t){this.$reload({query:{language:t.code}})},item(t){return{click:()=>this.change(t),current:t.code===this.language.code,text:t.name}}}},(function(){var t=this,e=t._self._c;return t.languages.length>1?e("div",{staticClass:"k-languages-dropdown"},[e("k-button",{attrs:{dropdown:!0,text:t.code,icon:"translate",responsive:"text",size:"sm",variant:"filled"},on:{click:function(e){return t.$refs.languages.toggle()}}}),e("k-dropdown-content",{ref:"languages",attrs:{options:t.options}})],1):t._e()}),[],!1,null,null,null,null).exports;const Me=ut({props:{align:{type:String,default:"right"},disabled:{type:Boolean},icon:{type:String,default:"dots"},options:{type:[Array,Function,String],default:()=>[]},text:{type:[Boolean,String],default:!0},theme:{type:String,default:"dark"},size:String,variant:String},computed:{hasSingleOption(){return Array.isArray(this.options)&&1===this.options.length}},methods:{onAction(t,e,i){"function"==typeof t?t.call(this):(this.$emit("action",t,e,i),this.$emit("option",t,e,i))},toggle(t=this.$el){this.$refs.options.toggle(t)}}},(function(){var t=this,e=t._self._c;return t.hasSingleOption?e("k-button",{staticClass:"k-options-dropdown-toggle",attrs:{disabled:t.disabled,icon:t.options[0].icon??t.icon,size:t.options[0].size??t.size,title:t.options[0].title??t.options[0].tooltip??t.options[0].text,variant:t.options[0].variant??t.variant},on:{click:function(e){return t.onAction(t.options[0].option??t.options[0].click,t.options[0],0)}}},[!0===t.text?[t._v(" "+t._s(t.options[0].text)+" ")]:!1!==t.text?[t._v(" "+t._s(t.text)+" ")]:t._e()],2):t.options.length?e("div",{staticClass:"k-options-dropdown"},[e("k-button",{staticClass:"k-options-dropdown-toggle",attrs:{disabled:t.disabled,dropdown:!0,icon:t.icon,size:t.size,text:!0!==t.text&&!1!==t.text?t.text:null,title:t.$t("options"),variant:t.variant},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",staticClass:"k-options-dropdown-content",attrs:{"align-x":t.align,options:t.options},on:{action:t.onAction}})],1):t._e()}),[],!1,null,null,null,null).exports,je={mixins:[V,W,X,nt,rt]},Ie={mixins:[je],inheritAttrs:!1,emits:["input"],methods:{focus(){this.$el.focus()}}},Te={mixins:[V,W,st,rt],props:{ignore:{default:()=>[],type:Array},max:Number,min:Number,search:{default:!0,type:[Object,Boolean]}}},Ee={mixins:[je,Te],props:{create:{type:[Boolean,Object],default:!1},multiple:{type:Boolean,default:!0},value:{type:[Array,String],default:()=>[]}}};const Le=ut({mixins:[Ie,Ee],data(){return{display:this.search.display??!0,query:""}},computed:{choices(){let t=this.filteredOptions;return!0!==this.display&&(t=t.slice(0,this.display)),t.map((t=>({...t,disabled:t.disabled||this.isFull&&!1===this.value.includes(t.value),text:this.highlight(t.text)})))},filteredOptions(){if(!(this.query.length<(this.search.min??0)))return this.$helper.array.search(this.options,this.query,{field:"text"})},isFull(){return this.max&&this.value.length>=this.max},placeholder(){return this.search.placeholder?this.search.placeholder:this.options.length>0?this.$t("filter")+"…":this.$t("enter")+"…"},showCreate(){var t;if(!1===this.create)return!1;if(this.isFull)return!1;if(0===this.query.trim().length)return!1;if(!0===this.ignore.includes(this.query))return!1;if(!0===(null==(t=this.create.ignore)?void 0:t.includes(this.query)))return!1;return 0===this.options.filter((t=>t.text===this.query||t.value===this.query)).length},showEmpty(){return!1===this.create&&0===this.filteredOptions.length}},watch:{value:{handler(){this.$emit("invalid",this.$v.$invalid,this.$v)},immediate:!0}},methods:{add(){this.showCreate&&this.$emit("create",this.query)},enter(t){var e;null==(e=t.target)||e.click()},escape(){0===this.query.length?this.$emit("escape"):this.query=""},focus(){var t;this.$refs.search?this.$refs.search.focus():null==(t=this.$refs.options)||t.focus()},highlight(t){if(t=this.$helper.string.stripHTML(t),this.query.length>0){const e=new RegExp(`(${RegExp.escape(this.query)})`,"ig");return t.replace(e,"$1")}return t},input(t){this.$emit("input",t)}},validations(){return{value:{required:!this.required||t.required,minLength:!this.min||t.minLength(this.min),maxLength:!this.max||t.maxLength(this.max)}}}},(function(){var t=this,e=t._self._c;return e("k-navigate",{staticClass:"k-picklist-input",attrs:{element:"nav",axis:"y",select:"input[type=search], label, .k-picklist-input-body button"},on:{prev:function(e){return t.$emit("escape")}}},[t.search?e("header",{staticClass:"k-picklist-input-header"},[e("div",{staticClass:"k-picklist-input-search"},[e("k-search-input",{ref:"search",attrs:{autofocus:t.autofocus,disabled:t.disabled,placeholder:t.placeholder,value:t.query},on:{input:function(e){t.query=e}},nativeOn:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"escape",void 0,e.key,void 0)?null:(e.preventDefault(),t.escape.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.add.apply(null,arguments))}]}}),t.showCreate?e("k-button",{staticClass:"k-picklist-input-create",attrs:{icon:"add",size:"xs"},on:{click:t.add}}):t._e()],1)]):t._e(),t.filteredOptions.length?[e("div",{staticClass:"k-picklist-input-body"},[e(t.multiple?"k-checkboxes-input":"k-radio-input",{ref:"options",tag:"component",staticClass:"k-picklist-input-options",attrs:{disabled:t.disabled,options:t.choices,value:t.value},on:{input:t.input},nativeOn:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.enter.apply(null,arguments))}}}),!0!==t.display&&t.filteredOptions.length>t.display?e("k-button",{staticClass:"k-picklist-input-more",attrs:{icon:"angle-down"},on:{click:function(e){t.display=!0}}},[t._v(" "+t._s(t.$t("options.all",{count:t.filteredOptions.length}))+" ")]):t._e()],1)]:t.showEmpty?[e("div",{staticClass:"k-picklist-input-body"},[e("p",{staticClass:"k-picklist-input-empty"},[t._v(" "+t._s(t.$t("options.none"))+" ")])])]:t._e()],2)}),[],!1,null,null,null,null).exports;const De=ut({mixins:[Ee],methods:{close(){this.$refs.dropdown.close()},add(t){this.$emit("create",t)},input(t){this.$emit("input",t)},open(t){this.$refs.dropdown.open(t)},toggle(){this.$refs.dropdown.toggle()}}},(function(){var t=this,e=t._self._c;return e("k-dropdown-content",{ref:"dropdown",staticClass:"k-picklist-dropdown",attrs:{"align-x":"start",disabled:t.disabled,navigate:!1},nativeOn:{click:function(t){t.stopPropagation()}}},[e("k-picklist-input",t._b({on:{create:t.add,input:t.input,escape:function(e){return t.$refs.dropdown.close()}},nativeOn:{click:function(t){t.stopPropagation()}}},"k-picklist-input",t.$props,!1))],1)}),[],!1,null,null,null,null).exports,Be={install(t){t.component("k-dropdown",_e),t.component("k-dropdown-content",Ce),t.component("k-dropdown-item",Oe),t.component("k-languages-dropdown",Ae),t.component("k-options-dropdown",Me),t.component("k-picklist-dropdown",De)}};const qe=ut({props:{html:{type:Boolean,default:!1},limit:{type:Number,default:10},skip:{type:Array,default:()=>[]},options:Array,query:String},emits:["leave","search","select"],data:()=>({matches:[],selected:{text:null}}),created(){window.panel.deprecated(" will be removed in a future version.")},methods:{close(){this.$refs.dropdown.close()},onSelect(t){this.$emit("select",t),this.$refs.dropdown.close()},search(t){const e=this.options.filter((t=>-1!==this.skip.indexOf(t.value)));this.matches=this.$helper.array.search(e,t,{field:"text",limit:this.limit}),this.$emit("search",t,this.matches),this.$refs.dropdown.open()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-autocomplete"},[t._t("default"),e("k-dropdown-content",{ref:"dropdown",attrs:{autofocus:!0},on:{leave:function(e){return t.$emit("leave")}}},t._l(t.matches,(function(i,n){return e("k-dropdown-item",t._b({key:n,nativeOn:{mousedown:function(e){return t.onSelect(i)},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:(e.preventDefault(),t.onSelect(i))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.onSelect(i))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])||"button"in e&&0!==e.button?null:(e.preventDefault(),t.close.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"backspace",void 0,e.key,void 0)?null:(e.preventDefault(),t.close.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:(e.preventDefault(),t.close.apply(null,arguments))}]}},"k-dropdown-item",i,!1),[e("span",{domProps:{innerHTML:t._s(t.html?i.text:t.$esc(i.text))}})])})),1),t._v(" "+t._s(t.query)+" ")],2)}),[],!1,null,null,null,null).exports;const Pe=ut({props:{count:Number,min:Number,max:Number,required:{type:Boolean,default:!1}},computed:{valid(){return!1===this.required&&0===this.count||(!0!==this.required||0!==this.count)&&(!(this.min&&this.countthis.max))}}},(function(){var t=this,e=t._self._c;return e("span",{staticClass:"k-counter",attrs:{"data-invalid":!t.valid}},[e("span",[t._v(t._s(t.count))]),t.min&&t.max?e("span",{staticClass:"k-counter-rules"},[t._v("("+t._s(t.min)+"–"+t._s(t.max)+")")]):t.min?e("span",{staticClass:"k-counter-rules"},[t._v("≥ "+t._s(t.min))]):t.max?e("span",{staticClass:"k-counter-rules"},[t._v("≤ "+t._s(t.max))]):t._e()])}),[],!1,null,null,null,null).exports;const Ne=ut({props:{disabled:Boolean,config:Object,fields:{type:[Array,Object],default:()=>[]},novalidate:{type:Boolean,default:!1},value:{type:Object,default:()=>({})}},emits:["input","submit"],data:()=>({errors:{}}),methods:{focus(t){var e,i;null==(i=null==(e=this.$refs.fields)?void 0:e.focus)||i.call(e,t)},onFocus(t,e,i){this.$emit("focus",t,e,i)},onInput(t,e,i){this.$emit("input",t,e,i)},onInvalid(t){this.$emit("invalid",t)},onSubmit(){this.$emit("submit",this.value)},submit(){this.$refs.submitter.click()}}},(function(){var t=this,e=t._self._c;return e("form",{ref:"form",staticClass:"k-form",attrs:{method:"POST",autocomplete:"off",novalidate:""},on:{submit:function(e){return e.preventDefault(),t.onSubmit.apply(null,arguments)}}},[t._t("header"),t._t("default",(function(){return[e("k-fieldset",{ref:"fields",attrs:{disabled:t.disabled,fields:t.fields,novalidate:t.novalidate,value:t.value},on:{focus:t.onFocus,input:t.onInput,invalid:t.onInvalid,submit:t.onSubmit}})]})),t._t("footer"),e("input",{ref:"submitter",staticClass:"k-form-submitter",attrs:{type:"submit"}})],2)}),[],!1,null,null,null,null).exports;const ze=ut({props:{lock:[Boolean,Object]},data:()=>({isLoading:null,isLocking:null}),computed:{api(){return[this.$panel.view.path+"/lock",null,null,!0]},buttons(){return"unlock"===this.mode?[{icon:"check",text:this.$t("lock.isUnlocked"),click:()=>this.resolve()},{icon:"download",text:this.$t("download"),click:()=>this.download()}]:"lock"===this.mode?[{icon:this.lock.data.unlockable?"unlock":"loader",text:this.$t("lock.isLocked",{email:this.$esc(this.lock.data.email)}),title:this.$t("lock.unlock"),disabled:!this.lock.data.unlockable,click:()=>this.unlock()}]:"changes"===this.mode?[{icon:"undo",text:this.$t("revert"),click:()=>this.revert()},{icon:"check",text:this.$t("save"),click:()=>this.save()}]:[]},disabled(){return"unlock"!==this.mode&&("lock"===this.mode?!this.lock.data.unlockable:"changes"===this.mode&&this.isDisabled)},hasChanges(){return this.$store.getters["content/hasChanges"]()},isDisabled(){return!1===this.$store.state.content.status.enabled},isLocked(){return"lock"===this.lockState},isUnlocked(){return"unlock"===this.lockState},mode(){return null!==this.lockState?this.lockState:!0===this.hasChanges?"changes":null},lockState(){return this.supportsLocking&&this.lock?this.lock.state:null},supportsLocking(){return!1!==this.lock},theme(){return"lock"===this.mode?"negative":"unlock"===this.mode?"info":"changes"===this.mode?"notice":null}},watch:{hasChanges:{handler(t,e){!0===this.supportsLocking&&!1===this.isLocked&&!1===this.isUnlocked&&(!0===t?(this.locking(),this.isLocking=setInterval(this.locking,3e4)):e&&(clearInterval(this.isLocking),this.locking(!1)))},immediate:!0},isLocked(t){!1===t&&this.$events.emit("model.reload")}},created(){this.supportsLocking&&(this.isLoading=setInterval(this.check,1e4)),this.$events.on("view.save",this.save)},destroyed(){clearInterval(this.isLoading),clearInterval(this.isLocking),this.$events.off("view.save",this.save)},methods:{async check(){if(!1===this.$panel.isOffline){const{lock:t}=await this.$api.get(...this.api);Vue.set(this.$panel.view.props,"lock",t)}},download(){let t="";const e=this.$store.getters["content/changes"]();for(const n in e){const i=e[n];t+=n+": \n\n","object"==typeof i&&Object.keys(i).length||Array.isArray(i)&&i.length?t+=JSON.stringify(i,null,2):t+=i,t+="\n\n----\n\n"}let i=document.createElement("a");i.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(t)),i.setAttribute("download",this.$panel.view.path+".txt"),i.style.display="none",document.body.appendChild(i),i.click(),document.body.removeChild(i)},async locking(t=!0){if(!0!==this.$panel.isOffline)if(!0===t)try{await this.$api.patch(...this.api)}catch(e){clearInterval(this.isLocking),this.$store.dispatch("content/revert")}else clearInterval(this.isLocking),await this.$api.delete(...this.api)},async resolve(){await this.unlock(!1),this.$store.dispatch("content/revert")},revert(){this.$panel.dialog.open({component:"k-remove-dialog",props:{submitButton:{icon:"undo",text:this.$t("revert")},text:this.$t("revert.confirm")},on:{submit:()=>{this.$store.dispatch("content/revert"),this.$panel.dialog.close()}}})},async save(t){var e;null==(e=null==t?void 0:t.preventDefault)||e.call(t),await this.$store.dispatch("content/save"),this.$events.emit("model.update"),this.$panel.notification.success()},async unlock(t=!0){const e=[this.$panel.view.path+"/unlock",null,null,!0];!0!==t?(await this.$api.delete(...e),this.$reload({silent:!0})):this.$panel.dialog.open({component:"k-remove-dialog",props:{submitButton:{icon:"unlock",text:this.$t("lock.unlock")},text:this.$t("lock.unlock.submit",{email:this.$esc(this.lock.data.email)})},on:{submit:async()=>{await this.$api.patch(...e),this.$panel.dialog.close(),this.$reload({silent:!0})}}})}}},(function(){var t=this,e=t._self._c;return t.buttons.length>0?e("k-button-group",{staticClass:"k-form-buttons",attrs:{layout:"collapsed"}},t._l(t.buttons,(function(i){return e("k-button",t._b({key:i.icon,attrs:{size:"sm",variant:"filled",disabled:t.isDisabled,responsive:!0,theme:t.theme}},"k-button",i,!1))})),1):t._e()}),[],!1,null,null,null,null).exports,Fe={mixins:[W,G,Q,nt,rt],props:{counter:[Boolean,Object],endpoints:Object,input:[String,Number],translate:Boolean,type:String}};const Re=ut({mixins:[Fe],inheritAttrs:!1},(function(){var t=this,e=t._self._c;return e("div",{class:"k-field k-field-name-"+t.name,attrs:{"data-disabled":t.disabled,"data-translate":t.translate},on:{focusin:function(e){return t.$emit("focus",e)},focusout:function(e){return t.$emit("blur",e)}}},[t._t("header",(function(){return[e("header",{staticClass:"k-bar k-field-header"},[t._t("label",(function(){return[e("k-label",{attrs:{input:t.input,required:t.required,type:"field"}},[t._v(" "+t._s(t.label)+" ")])]})),t._t("options"),t._t("counter",(function(){return[t.counter?e("k-counter",t._b({staticClass:"k-field-counter",attrs:{required:t.required}},"k-counter",t.counter,!1)):t._e()]}))],2)]})),t._t("default"),t._t("footer",(function(){return[t.help||t.$slots.help?e("footer",{staticClass:"k-field-footer"},[t._t("help",(function(){return[t.help?e("k-text",{staticClass:"k-help k-field-help",attrs:{html:t.help}}):t._e()]}))],2):t._e()]}))],2)}),[],!1,null,null,null,null).exports;const Ye=ut({props:{config:Object,disabled:Boolean,fields:{type:[Array,Object],default:()=>({})},novalidate:{type:Boolean,default:!1},value:{type:Object,default:()=>({})}},emits:["focus","input","invalid","submit"],data:()=>({errors:{}}),methods:{focus(t){if(t)return void(this.hasField(t)&&"function"==typeof this.$refs[t][0].focus&&this.$refs[t][0].focus());const e=Object.keys(this.$refs)[0];this.focus(e)},hasFieldType(t){return this.$helper.isComponent(`k-${t}-field`)},hasField(t){var e;return null==(e=this.$refs[t])?void 0:e[0]},onInvalid(t,e,i,n){this.errors[n]=e,this.$emit("invalid",this.errors)},onInput(t,e,i){const n=this.value;this.$set(n,i,t),this.$emit("input",n,e,i)},hasErrors(){return this.$helper.object.length(this.errors)>0}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-fieldset"},[e("k-grid",{attrs:{variant:"fields"}},[t._l(t.fields,(function(i,n){return[t.$helper.field.isVisible(i,t.value)?e("k-column",{key:i.signature,attrs:{width:i.width}},[t.hasFieldType(i.type)?e("k-"+i.type+"-field",t._b({ref:n,refInFor:!0,tag:"component",attrs:{disabled:t.disabled||i.disabled,"form-data":t.value,name:n,novalidate:t.novalidate,value:t.value[n]},on:{input:function(e){return t.onInput(e,i,n)},focus:function(e){return t.$emit("focus",e,i,n)},invalid:(e,s)=>t.onInvalid(e,s,i,n),submit:function(e){return t.$emit("submit",e,i,n)}}},"component",i,!1)):e("k-box",{attrs:{theme:"negative"}},[e("k-text",{attrs:{size:"small"}},[t._v(" "+t._s(t.$t("error.field.type.missing",{name:n,type:i.type}))+" ")])],1)],1):t._e()]}))],2)],1)}),[],!1,null,null,null,null).exports,Ue={mixins:[U,K,W,Z],inheritAttrs:!1,props:{autofocus:Boolean,type:String,icon:[String,Boolean],novalidate:{type:Boolean,default:!1},value:{type:[String,Boolean,Number,Object,Array],default:null}}};const He=ut({mixins:[Ue],data(){return{isInvalid:this.invalid,listeners:{...this.$listeners,invalid:(t,e)=>{this.isInvalid=t,this.$emit("invalid",t,e)}}}},computed:{inputProps(){return{...this.$props,...this.$attrs}}},watch:{invalid(){this.isInvalid=this.invalid}},methods:{blur(t){(null==t?void 0:t.relatedTarget)&&!1===this.$el.contains(t.relatedTarget)&&this.trigger(null,"blur")},focus(t){this.trigger(t,"focus")},select(t){this.trigger(t,"select")},trigger(t,e){var i,n,s;if("INPUT"===(null==(i=null==t?void 0:t.target)?void 0:i.tagName)&&"function"==typeof(null==(n=null==t?void 0:t.target)?void 0:n[e]))return void t.target[e]();if("function"==typeof(null==(s=this.$refs.input)?void 0:s[e]))return void this.$refs.input[e]();const o=this.$el.querySelector("input, select, textarea");"function"==typeof(null==o?void 0:o[e])&&o[e]()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-input",attrs:{"data-disabled":t.disabled,"data-invalid":!t.novalidate&&t.isInvalid,"data-type":t.type}},[t.$slots.before||t.before?e("span",{staticClass:"k-input-description k-input-before",on:{click:t.focus}},[t._t("before",(function(){return[t._v(t._s(t.before))]}))],2):t._e(),e("span",{staticClass:"k-input-element",on:{click:function(e){return e.stopPropagation(),t.focus.apply(null,arguments)}}},[t._t("default",(function(){return[e("k-"+t.type+"-input",t._g(t._b({ref:"input",tag:"component",attrs:{value:t.value}},"component",t.inputProps,!1),t.listeners))]}))],2),t.$slots.after||t.after?e("span",{staticClass:"k-input-description k-input-after",on:{click:t.focus}},[t._t("after",(function(){return[t._v(t._s(t.after))]}))],2):t._e(),t.$slots.icon||t.icon?e("span",{staticClass:"k-input-icon",on:{click:t.focus}},[t._t("icon",(function(){return[e("k-icon",{attrs:{type:t.icon}})]}))],2):t._e()])}),[],!1,null,null,null,null).exports;const Ve=ut({props:{methods:Array},data:()=>({currentForm:null,isLoading:!1,user:{email:"",password:"",remember:!1}}),computed:{canToggle(){return null!==this.codeMode&&!0===this.methods.includes("password")&&(!0===this.methods.includes("password-reset")||!0===this.methods.includes("code"))},codeMode(){return!0===this.methods.includes("password-reset")?"password-reset":!0===this.methods.includes("code")?"code":null},fields(){let t={email:{autofocus:!0,label:this.$t("email"),type:"email",required:!0,link:!1}};return"email-password"===this.form&&(t.password={label:this.$t("password"),type:"password",minLength:8,required:!0,autocomplete:"current-password",counter:!1}),t},form(){return this.currentForm?this.currentForm:"password"===this.methods[0]?"email-password":"email"},isResetForm(){return"password-reset"===this.codeMode&&"email"===this.form},toggleText(){return this.$t("login.toggleText."+this.codeMode+"."+this.formOpposite(this.form))}},methods:{formOpposite:t=>"email-password"===t?"email":"email-password",async login(){this.$emit("error",null),this.isLoading=!0;let t=Object.assign({},this.user);"email"===this.currentForm&&(t.password=null),!0===this.isResetForm&&(t.remember=!1);try{await this.$api.auth.login(t),this.$reload({globals:["$system","$translation"]}),this.$panel.notification.success({message:this.$t("welcome")+"!",icon:"smile"})}catch(e){this.$emit("error",e)}finally{this.isLoading=!1}},toggleForm(){this.currentForm=this.formOpposite(this.form),this.$refs.fieldset.focus("email")}}},(function(){var t=this,e=t._self._c;return e("form",{staticClass:"k-login-form",on:{submit:function(e){return e.preventDefault(),t.login.apply(null,arguments)}}},[e("div",{staticClass:"k-login-fields"},[!0===t.canToggle?e("button",{staticClass:"k-login-toggler",attrs:{type:"button"},on:{click:t.toggleForm}},[t._v(" "+t._s(t.toggleText)+" ")]):t._e(),e("k-fieldset",{ref:"fieldset",attrs:{novalidate:!0,fields:t.fields,value:t.user},on:{input:function(e){t.user=e}}})],1),e("div",{staticClass:"k-login-buttons"},[!1===t.isResetForm?e("span",{staticClass:"k-login-checkbox"},[e("k-checkbox-input",{attrs:{value:t.user.remember,label:t.$t("login.remember")},on:{input:function(e){t.user.remember=e}}})],1):t._e(),e("k-button",{staticClass:"k-login-button",attrs:{icon:"check",size:"lg",theme:"positive",type:"submit",variant:"filled"}},[t._v(" "+t._s(t.$t("login"+(t.isResetForm?".reset":"")))+" "),t.isLoading?[t._v(" … ")]:t._e()],2)],1)])}),[],!1,null,null,null,null).exports;const Ke=ut({props:{methods:Array,pending:Object},data:()=>({code:"",isLoadingBack:!1,isLoadingLogin:!1}),computed:{mode(){return!0===this.methods.includes("password-reset")?"password-reset":"login"}},methods:{async back(){this.isLoadingBack=!0,this.$go("/logout")},async login(){this.$emit("error",null),this.isLoadingLogin=!0;try{await this.$api.auth.verifyCode(this.code),this.$panel.notification.success({message:this.$t("welcome")+"!",icon:"smile"}),"password-reset"===this.mode?this.$go("reset-password"):this.$reload()}catch(t){this.$emit("error",t)}finally{this.isLoadingLogin=!1}}}},(function(){var t=this,e=t._self._c;return e("form",{staticClass:"k-login-form k-login-code-form",on:{submit:function(e){return e.preventDefault(),t.login.apply(null,arguments)}}},[e("k-user-info",{attrs:{user:t.pending.email}}),e("k-text-field",{attrs:{autofocus:!0,counter:!1,help:t.$t("login.code.text."+t.pending.challenge),label:t.$t("login.code.label."+t.mode),novalidate:!0,placeholder:t.$t("login.code.placeholder."+t.pending.challenge),required:!0,value:t.code,autocomplete:"one-time-code",icon:"unlock",name:"code"},on:{input:function(e){t.code=e}}}),e("div",{staticClass:"k-login-buttons"},[e("k-button",{staticClass:"k-login-button k-login-back-button",attrs:{icon:"angle-left",size:"lg",variant:"filled"},on:{click:t.back}},[t._v(" "+t._s(t.$t("back"))+" "),t.isLoadingBack?[t._v(" … ")]:t._e()],2),e("k-button",{staticClass:"k-login-button",attrs:{icon:"check",size:"lg",type:"submit",theme:"positive",variant:"filled"}},[t._v(" "+t._s(t.$t("login"+("password-reset"===t.mode?".reset":"")))+" "),t.isLoadingLogin?[t._v(" … ")]:t._e()],2)],1)],1)}),[],!1,null,null,null,null).exports;const We=ut({props:{accept:{type:String,default:"*"},attributes:{type:Object},max:{type:Number},method:{type:String,default:"POST"},multiple:{type:Boolean,default:!0},url:{type:String}},methods:{open(t){window.panel.deprecated(" will be removed in a future version. Use `$panel.upload.open()` instead."),this.$panel.upload.pick(this.params(t))},params(t){return{...this.$props,...t??{},on:{complete:(t,e)=>{this.$emit("success",t,e)}}}},select(t){this.$panel.upload.select(t.target.files)},drop(t,e){window.panel.deprecated(" will be removed in a future version. Use `$panel.upload.select()` instead."),this.$panel.upload.open(t,this.params(e))},upload(t,e){window.panel.deprecated(" will be removed in a future version. Use `$panel.upload.select()` instead."),this.$panel.upload.select(t,this.params(e)),this.$panel.upload.start()}},render:()=>""},null,null,!1,null,null,null,null).exports;const Je=ut({},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-notification k-login-alert",attrs:{"data-theme":"error"}},[e("p",[t._t("default")],2),e("k-button",{attrs:{icon:"cancel"},on:{click:function(e){return t.$emit("click")}}})],1)}),[],!1,null,null,null,null).exports;const Ge=ut({props:{fields:Object,index:[Number,String],total:Number,value:Object},mounted(){this.$store.dispatch("content/disable"),this.$events.on("keydown.cmd.s",this.onSubmit),this.$events.on("keydown.esc",this.onDiscard)},destroyed(){this.$events.off("keydown.cmd.s",this.onSubmit),this.$events.off("keydown.esc",this.onDiscard),this.$store.dispatch("content/enable")},methods:{focus(t){this.$refs.form.focus(t)},onDiscard(){this.$emit("discard")},onInput(t){this.$emit("input",t)},onSubmit(){this.$emit("submit")}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-structure-form"},[e("div",{staticClass:"k-structure-backdrop",on:{click:t.onDiscard}}),e("section",[e("k-form",{ref:"form",staticClass:"k-structure-form-fields",attrs:{value:t.value,fields:t.fields},on:{input:t.onInput,submit:t.onSubmit}}),e("footer",{staticClass:"k-structure-form-buttons"},[e("k-button",{staticClass:"k-structure-form-cancel-button",attrs:{text:t.$t("cancel"),icon:"cancel",size:"xs",variant:"filled"},on:{click:function(e){return t.$emit("close")}}}),"new"!==t.index?e("k-pagination",{attrs:{dropdown:!1,total:t.total,limit:1,page:t.index+1,details:!0},on:{paginate:function(e){return t.$emit("paginate",e)}}}):t._e(),e("k-button",{staticClass:"k-structure-form-submit-button",attrs:{text:t.$t("new"!==t.index?"confirm":"add"),icon:"check",size:"xs",variant:"filled"},on:{click:t.onSubmit}})],1)],1)])}),[],!1,null,null,null,null).exports;const Xe=ut({computed:{placeholder(){return this.field("code",{}).placeholder},languages(){return this.field("language",{options:[]}).options}},methods:{focus(){this.$refs.code.focus()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-type-code-editor"},[e("k-input",{ref:"code",attrs:{buttons:!1,placeholder:t.placeholder,spellcheck:!1,value:t.content.code,font:"monospace",type:"textarea"},on:{input:function(e){return t.update({code:e})}}}),t.languages.length?e("div",{staticClass:"k-block-type-code-editor-language"},[e("k-input",{ref:"language",attrs:{empty:!1,options:t.languages,value:t.content.language,icon:"code",type:"select"},on:{input:function(e){return t.update({language:e})}}})],1):t._e()],1)}),[],!1,null,null,null,null).exports,Ze=Object.freeze(Object.defineProperty({__proto__:null,default:Xe},Symbol.toStringTag,{value:"Module"}));const Qe=ut({},(function(){var t=this;return(0,t._self._c)("k-block-title",{attrs:{content:t.content,fieldset:t.fieldset},nativeOn:{dblclick:function(e){return t.$emit("open")}}})}),[],!1,null,null,null,null).exports,ti=Object.freeze(Object.defineProperty({__proto__:null,default:Qe},Symbol.toStringTag,{value:"Module"}));const ei=ut({props:{endpoints:Object,tabs:Object},data(){return{collapsed:this.state(),tab:Object.keys(this.tabs)[0]}},computed:{fields(){var t;return null==(t=this.tabs[this.tab])?void 0:t.fields},values(){return Object.assign({},this.content)}},methods:{open(){this.$emit("open",this.tab)},state(t){const e=`kirby.fieldsBlock.${this.endpoints.field}.${this.id}`;if(void 0===t)return JSON.parse(sessionStorage.getItem(e));sessionStorage.setItem(e,t)},toggle(){this.collapsed=!this.collapsed,this.state(this.collapsed)}}},(function(){var t=this,e=t._self._c;return e("div",{attrs:{"data-collapsed":t.collapsed},on:{dblclick:function(e){!t.fieldset.wysiwyg&&t.$emit("open")}}},[e("header",{staticClass:"k-block-type-fields-header"},[e("k-block-title",{attrs:{content:t.values,fieldset:t.fieldset},nativeOn:{click:function(e){return t.toggle.apply(null,arguments)}}}),t.collapsed?t._e():e("k-drawer-tabs",{attrs:{tab:t.tab,tabs:t.fieldset.tabs},on:{open:function(e){t.tab=e}}})],1),t.collapsed?t._e():e("k-form",{ref:"form",staticClass:"k-block-type-fields-form",attrs:{autofocus:!0,disabled:!t.fieldset.wysiwyg,fields:t.fields,value:t.values},on:{input:function(e){return t.$emit("update",e)}}})],1)}),[],!1,null,null,null,null).exports,ii=Object.freeze(Object.defineProperty({__proto__:null,default:ei},Symbol.toStringTag,{value:"Module"}));const ni=ut({computed:{captionMarks(){return this.field("caption",{marks:!0}).marks},crop(){return this.content.crop},ratio(){return this.content.ratio}}},(function(){var t,e=this,i=e._self._c;return i("figure",[i("ul",{on:{dblclick:e.open}},[(null==(t=e.content.images)?void 0:t.length)?e._l(e.content.images,(function(t){return i("li",{key:t.id},[i("k-image-frame",{attrs:{ratio:e.ratio,cover:e.crop,src:t.url,srcset:t.image.srcset,alt:t.alt}})],1)})):e._l(3,(function(t){return i("li",{key:t,staticClass:"k-block-type-gallery-placeholder"},[i("k-image-frame",{attrs:{ratio:e.ratio}})],1)}))],2),e.content.caption?i("figcaption",[i("k-writer",{attrs:{inline:!0,marks:e.captionMarks,value:e.content.caption},on:{input:function(t){return e.$emit("update",{caption:t})}}})],1):e._e()])}),[],!1,null,null,null,null).exports,si=Object.freeze(Object.defineProperty({__proto__:null,default:ni},Symbol.toStringTag,{value:"Module"}));const oi=ut({computed:{isSplitable(){return this.content.text.length>0&&!1===this.$refs.input.isCursorAtStart&&!1===this.$refs.input.isCursorAtEnd},keys(){return{Enter:()=>!0===this.$refs.input.isCursorAtEnd?this.$emit("append","text"):this.split(),"Mod-Enter":this.split}},levels(){return this.field("level",{options:[]}).options},textField(){return this.field("text",{marks:!0})}},methods:{focus(){this.$refs.input.focus()},merge(t){this.update({text:t.map((t=>t.content.text)).join(" ")})},split(){var t,e;const i=null==(e=(t=this.$refs.input).getSplitContent)?void 0:e.call(t);i&&this.$emit("split",[{text:i[0]},{level:"h"+Math.min(parseInt(this.content.level.slice(1))+1,6),text:i[1]}])}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-type-heading-input",attrs:{"data-level":t.content.level}},[e("k-writer",t._b({ref:"input",attrs:{inline:!0,keys:t.keys,value:t.content.text},on:{input:function(e){return t.update({text:e})}}},"k-writer",t.textField,!1)),t.levels.length>1?e("k-input",{ref:"level",staticClass:"k-block-type-heading-level",attrs:{empty:!1,options:t.levels,value:t.content.level,type:"select"},on:{input:function(e){return t.update({level:e})}}}):t._e()],1)}),[],!1,null,null,null,null).exports,li=Object.freeze(Object.defineProperty({__proto__:null,default:oi},Symbol.toStringTag,{value:"Module"}));const ri=ut({computed:{captionMarks(){return this.field("caption",{marks:!0}).marks},crop(){return this.content.crop??!1},src(){var t,e;return"web"===this.content.location?this.content.src:!!(null==(e=null==(t=this.content.image)?void 0:t[0])?void 0:e.url)&&this.content.image[0].url},ratio(){return this.content.ratio??!1}}},(function(){var t=this,e=t._self._c;return e("k-block-figure",{attrs:{caption:t.content.caption,"caption-marks":t.captionMarks,"empty-text":t.$t("field.blocks.image.placeholder")+" …","is-empty":!t.src,"empty-icon":"image"},on:{open:t.open,update:t.update}},[t.src?[t.ratio?e("k-image-frame",{attrs:{ratio:t.ratio,cover:t.crop,alt:t.content.alt,src:t.src}}):e("img",{staticClass:"k-block-type-image-auto",attrs:{alt:t.content.alt,src:t.src}})]:t._e()],2)}),[],!1,null,null,null,null).exports,ai=Object.freeze(Object.defineProperty({__proto__:null,default:ri},Symbol.toStringTag,{value:"Module"}));const ui=ut({},(function(){return this._self._c,this._m(0)}),[function(){var t=this._self._c;return t("div",[t("hr")])}],!1,null,null,null,null).exports,ci=Object.freeze(Object.defineProperty({__proto__:null,default:ui},Symbol.toStringTag,{value:"Module"}));const di=ut({computed:{isSplitable(){return this.content.text.length>0&&!1===this.input().isCursorAtStart&&!1===this.input().isCursorAtEnd},keys(){return{"Mod-Enter":this.split}},marks(){return this.field("text",{}).marks}},methods:{focus(){this.$refs.input.focus()},input(){return this.$refs.input.$refs.input.$refs.input},merge(t){this.update({text:t.map((t=>t.content.text)).join("").replaceAll("

      ","")})},split(){var t,e;const i=null==(e=(t=this.input()).getSplitContent)?void 0:e.call(t);i&&this.$emit("split",[{text:i[0].replace(/(
    • <\/p><\/li><\/ul>)$/,"

    ")},{text:i[1].replace(/^(
    • <\/p><\/li>)/,"

        ")}])}}},(function(){var t=this;return(0,t._self._c)("k-input",{ref:"input",staticClass:"k-block-type-list-input",attrs:{keys:t.keys,marks:t.marks,value:t.content.text,type:"list"},on:{input:function(e){return t.update({text:e})}}})}),[],!1,null,null,null,null).exports,pi=Object.freeze(Object.defineProperty({__proto__:null,default:di},Symbol.toStringTag,{value:"Module"}));const hi=ut({computed:{placeholder(){return this.field("text",{}).placeholder}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this;return(0,t._self._c)("k-input",{ref:"input",staticClass:"k-block-type-markdown-input",attrs:{buttons:!1,placeholder:t.placeholder,spellcheck:!1,value:t.content.text,font:"monospace",type:"textarea"},on:{input:function(e){return t.update({text:e})}}})}),[],!1,null,null,null,null).exports,mi=Object.freeze(Object.defineProperty({__proto__:null,default:hi},Symbol.toStringTag,{value:"Module"}));const fi=ut({computed:{citationField(){return this.field("citation",{})},textField(){return this.field("text",{})}},methods:{focus(){this.$refs.text.focus()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-type-quote-editor"},[e("k-writer",{ref:"text",staticClass:"k-block-type-quote-text",attrs:{inline:t.textField.inline??!1,marks:t.textField.marks,placeholder:t.textField.placeholder,value:t.content.text},on:{input:function(e){return t.update({text:e})}}}),e("k-writer",{ref:"citation",staticClass:"k-block-type-quote-citation",attrs:{inline:t.citationField.inline??!0,marks:t.citationField.marks,placeholder:t.citationField.placeholder,value:t.content.citation},on:{input:function(e){return t.update({citation:e})}}})],1)}),[],!1,null,null,null,null).exports,gi=Object.freeze(Object.defineProperty({__proto__:null,default:fi},Symbol.toStringTag,{value:"Module"}));const ki=ut({inheritAttrs:!1,computed:{columns(){return this.table.columns??this.fields},fields(){return this.table.fields??{}},rows(){return this.content.rows??[]},table(){let t=null;for(const e of Object.values(this.fieldset.tabs??{}))e.fields.rows&&(t=e.fields.rows);return t??{}}}},(function(){var t=this;return(0,t._self._c)("k-table",{staticClass:"k-block-type-table-preview",attrs:{columns:t.columns,empty:t.$t("field.structure.empty"),rows:t.rows},nativeOn:{dblclick:function(e){return t.open.apply(null,arguments)}}})}),[],!1,null,null,null,null).exports,bi=Object.freeze(Object.defineProperty({__proto__:null,default:ki},Symbol.toStringTag,{value:"Module"}));const vi=ut({computed:{component(){const t="k-"+this.textField.type+"-input";return this.$helper.isComponent(t)?t:"k-writer-input"},isSplitable(){return this.content.text.length>0&&!1===this.input().isCursorAtStart&&!1===this.input().isCursorAtEnd},keys(){const t={"Mod-Enter":this.split};return!0===this.textField.inline&&(t.Enter=this.split),t},textField(){return this.field("text",{})}},methods:{focus(){this.$refs.input.focus()},input(){return this.$refs.input.$refs.input},merge(t){this.update({text:t.map((t=>t.content.text)).join(this.textField.inline?" ":"")})},split(){var t,e;const i=null==(e=(t=this.input()).getSplitContent)?void 0:e.call(t);i&&("writer"===this.textField.type&&(i[0]=i[0].replace(/(

        <\/p>)$/,""),i[1]=i[1].replace(/^(

        <\/p>)/,"")),this.$emit("split",i.map((t=>({text:t})))))}}},(function(){var t=this;return(0,t._self._c)(t.component,t._b({ref:"input",tag:"component",staticClass:"k-block-type-text-input",attrs:{keys:t.keys,value:t.content.text},on:{input:function(e){return t.update({text:e})}}},"component",t.textField,!1))}),[],!1,null,null,null,null).exports,yi=Object.freeze(Object.defineProperty({__proto__:null,default:vi},Symbol.toStringTag,{value:"Module"}));const $i=ut({computed:{captionMarks(){return this.field("caption",{marks:!0}).marks},video(){return this.$helper.embed.video(this.content.url??"",!0)}}},(function(){var t=this,e=t._self._c;return e("k-block-figure",{attrs:{caption:t.content.caption,"caption-marks":t.captionMarks,"empty-text":t.$t("field.blocks.video.placeholder")+" …","is-empty":!t.video,"empty-icon":"video"},on:{open:t.open,update:t.update}},[e("k-frame",{attrs:{ratio:"16/9"}},[t.video?e("iframe",{attrs:{src:t.video,referrerpolicy:"strict-origin-when-cross-origin"}}):t._e()])],1)}),[],!1,null,null,null,null).exports,wi=Object.freeze(Object.defineProperty({__proto__:null,default:$i},Symbol.toStringTag,{value:"Module"}));const xi=ut({inheritAttrs:!1,props:{attrs:{default:()=>({}),type:[Array,Object]},content:{default:()=>({}),type:[Array,Object]},endpoints:{default:()=>({}),type:[Array,Object]},fieldset:{default:()=>({}),type:Object},id:String,isBatched:Boolean,isFull:Boolean,isHidden:Boolean,isLastSelected:Boolean,isMergable:Boolean,isSelected:Boolean,name:String,next:Object,prev:Object,type:String},emits:["append","chooseToAppend","chooseToConvert","chooseToPrepend","close","copy","duplicate","focus","hide","merge","open","paste","prepend","remove","selectDown","selectUp","show","sortDown","sortUp","split","submit","update"],computed:{className(){let t=["k-block-type-"+this.type];return this.fieldset.preview!==this.type&&t.push("k-block-type-"+this.fieldset.preview),!1===this.wysiwyg&&t.push("k-block-type-default"),t},containerType(){const t=this.fieldset.preview;return!1!==t&&(t&&this.$helper.isComponent("k-block-type-"+t)?t:!!this.$helper.isComponent("k-block-type-"+this.type)&&this.type)},customComponent(){return this.wysiwyg?this.wysiwygComponent:"k-block-type-default"},isEditable(){return!1!==this.fieldset.editable},listeners(){return{append:t=>this.$emit("append",t),chooseToAppend:t=>this.$emit("chooseToAppend",t),chooseToConvert:t=>this.$emit("chooseToConvert",t),chooseToPrepend:t=>this.$emit("chooseToPrepend",t),close:()=>this.$emit("close"),copy:()=>this.$emit("copy"),duplicate:()=>this.$emit("duplicate"),focus:()=>this.$emit("focus"),hide:()=>this.$emit("hide"),merge:()=>this.$emit("merge"),open:t=>this.open(t),paste:()=>this.$emit("paste"),prepend:t=>this.$emit("prepend",t),remove:()=>this.remove(),removeSelected:()=>this.$emit("removeSelected"),show:()=>this.$emit("show"),sortDown:()=>this.$emit("sortDown"),sortUp:()=>this.$emit("sortUp"),split:t=>this.$emit("split",t),update:t=>this.$emit("update",t)}},tabs(){const t=this.fieldset.tabs??{};for(const[e,i]of Object.entries(t))for(const[n]of Object.entries(i.fields??{}))t[e].fields[n].section=this.name,t[e].fields[n].endpoints={field:this.endpoints.field+"/fieldsets/"+this.type+"/fields/"+n,section:this.endpoints.section,model:this.endpoints.model};return t},wysiwyg(){return!1!==this.wysiwygComponent},wysiwygComponent(){return!!this.containerType&&"k-block-type-"+this.containerType}},methods:{backspace(t){if(t.target.matches("[contenteditable], input, textarea"))return!1;t.preventDefault(),this.remove()},close(){this.$panel.drawer.close(this.id)},focus(){var t,e;"function"==typeof(null==(t=this.$refs.editor)?void 0:t.focus)?this.$refs.editor.focus():null==(e=this.$refs.container)||e.focus()},goTo(t){var e;t&&(null==(e=t.$refs.container)||e.focus(),t.open(null,!0))},isSplitable(){var t;return!0!==this.isFull&&(!!this.$refs.editor&&((this.$refs.editor.isSplitable??!0)&&"function"==typeof(null==(t=this.$refs.editor)?void 0:t.split)))},onClose(){this.$emit("close"),this.focus()},onFocusIn(t){var e,i;(null==(i=null==(e=this.$refs.options)?void 0:e.$el)?void 0:i.contains(t.target))||this.$emit("focus",t)},onInput(t){this.$emit("update",t)},open(t,e=!1){this.isEditable&&!this.isBatched&&(this.$panel.drawer.open({component:"k-block-drawer",id:this.id,tab:t,on:{close:this.onClose,input:this.onInput,next:()=>this.goTo(this.next),prev:()=>this.goTo(this.prev),remove:this.remove,show:this.show,submit:this.submit},props:{hidden:this.isHidden,icon:this.fieldset.icon??"box",next:this.next,prev:this.prev,tabs:this.tabs,title:this.fieldset.name,value:this.content},replace:e}),this.$emit("open"))},remove(){if(this.isBatched)return this.$emit("removeSelected");this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.blocks.delete.confirm")},on:{submit:()=>{this.$panel.dialog.close(),this.close(),this.$emit("remove",this.id)}}})},show(){this.$emit("show")},submit(){this.close(),this.$emit("submit")}}},(function(){var t=this,e=t._self._c;return e("div",{ref:"container",staticClass:"k-block-container",class:["k-block-container-fieldset-"+t.type,t.containerType?"k-block-container-type-"+t.containerType:""],attrs:{"data-batched":t.isBatched,"data-disabled":t.fieldset.disabled,"data-hidden":t.isHidden,"data-id":t.id,"data-last-selected":t.isLastSelected,"data-selected":t.isSelected,"data-translate":t.fieldset.translate,tabindex:"0"},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"j",void 0,e.key,void 0)?null:e.ctrlKey?(e.preventDefault(),e.stopPropagation(),t.$emit("merge")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:e.ctrlKey&&e.altKey?(e.preventDefault(),e.stopPropagation(),t.$emit("selectDown")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:e.ctrlKey&&e.altKey?(e.preventDefault(),e.stopPropagation(),t.$emit("selectUp")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:e.ctrlKey&&e.shiftKey?(e.preventDefault(),e.stopPropagation(),t.$emit("sortDown")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:e.ctrlKey&&e.shiftKey?(e.preventDefault(),e.stopPropagation(),t.$emit("sortUp")):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"backspace",void 0,e.key,void 0)?null:e.ctrlKey?(e.stopPropagation(),t.backspace.apply(null,arguments)):null}],focus:function(e){return e.stopPropagation(),t.$emit("focus")},focusin:function(e){return e.stopPropagation(),t.onFocusIn.apply(null,arguments)}}},[e("div",{staticClass:"k-block",class:t.className},[e(t.customComponent,t._g(t._b({ref:"editor",tag:"component",attrs:{tabs:t.tabs}},"component",t.$props,!1),t.listeners))],1),e("k-block-options",t._g({ref:"options",attrs:{"is-batched":t.isBatched,"is-editable":t.isEditable,"is-full":t.isFull,"is-hidden":t.isHidden,"is-mergable":t.isMergable,"is-splitable":t.isSplitable()}},{...t.listeners,split:()=>t.$refs.editor.split(),open:()=>{"function"==typeof t.$refs.editor.open?t.$refs.editor.open():t.open()}}))],1)}),[],!1,null,null,null,null).exports;const _i=ut({inheritAttrs:!1,props:{autofocus:Boolean,disabled:Boolean,empty:String,endpoints:Object,fieldsets:Object,fieldsetGroups:Object,group:String,max:{type:Number,default:null},value:{type:Array,default:()=>[]}},data(){return{blocks:this.value??[],isEditing:!1,isMultiSelectKey:!1,selected:[]}},computed:{draggableOptions(){return{id:this._uid,handle:".k-sort-handle",list:this.blocks,move:this.move,delay:10,data:{fieldsets:this.fieldsets,isFull:this.isFull},options:{group:this.group}}},hasFieldsets(){return this.$helper.object.length(this.fieldsets)>0},isEmpty(){return 0===this.blocks.length},isFull(){return null!==this.max&&this.blocks.length>=this.max},isMergable(){if(this.selected.length<2)return!1;const t=this.selected.map((t=>this.find(t)));return!(new Set(t.map((t=>t.type))).size>1)&&"function"==typeof this.ref(t[0]).$refs.editor.merge}},watch:{value(){this.blocks=this.value}},created(){this.$events.on("blur",this.onBlur),this.$events.on("click",this.onClickGlobal),this.$events.on("copy",this.onCopy),this.$events.on("keydown",this.onKey),this.$events.on("keyup",this.onKey),this.$events.on("paste",this.onPaste)},destroyed(){this.$events.off("blur",this.onBlur),this.$events.off("click",this.onClickGlobal),this.$events.off("copy",this.onCopy),this.$events.off("keydown",this.onKey),this.$events.off("keyup",this.onKey),this.$events.off("paste",this.onPaste)},mounted(){!0===this.$props.autofocus&&setTimeout(this.focus,100)},methods:{async add(t="text",e){const i=await this.$api.get(this.endpoints.field+"/fieldsets/"+t);this.blocks.splice(e,0,i),this.save(),await this.$nextTick(),this.focusOrOpen(i)},choose(t){if(1===this.$helper.object.length(this.fieldsets))return this.add(Object.values(this.fieldsets)[0].type,t);this.$panel.dialog.open({component:"k-block-selector",props:{fieldsetGroups:this.fieldsetGroups,fieldsets:this.fieldsets},on:{submit:e=>{this.add(e,t),this.$panel.dialog.close()},paste:e=>{this.paste(e,t)}}})},chooseToConvert(t){this.$panel.dialog.open({component:"k-block-selector",props:{disabledFieldsets:[t.type],fieldsetGroups:this.fieldsetGroups,fieldsets:this.fieldsets,headline:this.$t("field.blocks.changeType")},on:{submit:e=>{this.convert(e,t),this.$panel.dialog.close()},paste:this.paste}})},copy(t){if(0===this.blocks.length)return!1;if(0===this.selected.length)return!1;let e=[];for(const i of this.blocks)this.selected.includes(i.id)&&e.push(i);if(0===e.length)return!1;this.$helper.clipboard.write(e,t),this.selected=e.map((t=>t.id)),this.$panel.notification.success({message:this.$t("copy.success",{count:e.length}),icon:"template"})},copyAll(){this.selectAll(),this.copy(),this.deselectAll()},async convert(t,e){var i;const n=this.findIndex(e.id);if(-1===n)return!1;const s=t=>{let e={};for(const i of Object.values((null==t?void 0:t.tabs)??{}))e={...e,...i.fields};return e},o=this.blocks[n],l=await this.$api.get(this.endpoints.field+"/fieldsets/"+t),r=this.fieldsets[o.type],a=this.fieldsets[t];if(!a)return!1;let u=l.content;const c=s(a),d=s(r);for(const[p,h]of Object.entries(c)){const t=d[p];(null==t?void 0:t.type)===h.type&&(null==(i=null==o?void 0:o.content)?void 0:i[p])&&(u[p]=o.content[p])}this.blocks[n]={...l,id:o.id,content:u},this.save()},deselect(t){const e=this.selected.findIndex((e=>e===t.id));-1!==e&&this.selected.splice(e,1)},deselectAll(){this.selected=[]},async duplicate(t,e){const i={...this.$helper.clone(t),id:this.$helper.uuid()};this.blocks.splice(e+1,0,i),this.save()},fieldset(t){return this.fieldsets[t.type]??{icon:"box",name:t.type,tabs:{content:{fields:{}}},type:t.type}},find(t){return this.blocks.find((e=>e.id===t))},findIndex(t){return this.blocks.findIndex((e=>e.id===t))},focus(t){const e=this.ref(t);this.selected=[(null==t?void 0:t.id)??this.blocks[0]],null==e||e.focus(),null==e||e.$el.scrollIntoView({block:"nearest"})},focusOrOpen(t){this.fieldsets[t.type].wysiwyg?this.focus(t):this.open(t)},hide(t){Vue.set(t,"isHidden",!0),this.save()},isInputEvent(){const t=document.querySelector(":focus");return null==t?void 0:t.matches("input, textarea, [contenteditable], .k-writer")},isLastSelected(t){const[e]=this.selected.slice(-1);return e&&t.id===e},isOnlyInstance:()=>1===document.querySelectorAll(".k-blocks").length,isSelected(t){return this.selected.includes(t.id)},async merge(){if(this.isMergable){const t=this.selected.map((t=>this.find(t)));this.ref(t[0]).$refs.editor.merge(t);for(const e of t.slice(1))this.remove(e);await this.$nextTick(),this.focus(t[0])}},move(t){if(t.from!==t.to){const e=t.draggedContext.element,i=t.relatedContext.component.componentData||t.relatedContext.component.$parent.componentData;if(!1===Object.keys(i.fieldsets).includes(e.type))return!1;if(!0===i.isFull)return!1}return!0},onBlur(){0===this.selected.length&&(this.isMultiSelectKey=!1)},onClickBlock(t,e){e&&this.isMultiSelectKey&&this.onKey(e),this.isMultiSelectKey&&(e.preventDefault(),e.stopPropagation(),this.isSelected(t)?this.deselect(t):this.select(t))},onClickGlobal(t){var e;if("function"==typeof t.target.closest&&(t.target.closest(".k-dialog")||t.target.closest(".k-drawer")))return;const i=document.querySelector(".k-overlay:last-of-type");!1!==this.$el.contains(t.target)||!1!==(null==i?void 0:i.contains(t.target))?i&&!1===(null==(e=this.$el.closest(".k-layout-column"))?void 0:e.contains(t.target))&&this.deselectAll():this.deselectAll()},onCopy(t){return!1!==this.$el.contains(t.target)&&!0!==this.isEditing&&!0!==this.$panel.dialog.isOpen&&!0!==this.isInputEvent(t)&&this.copy(t)},onFocus(t){!1===this.isMultiSelectKey&&(this.selected=[t.id])},async onKey(t){if(this.isMultiSelectKey=t.metaKey||t.ctrlKey||t.altKey,"Escape"===t.code&&this.selected.length>1){const t=this.find(this.selected[0]);await this.$nextTick(),this.focus(t)}},onPaste(t){return!0!==this.isInputEvent(t)&&(!0!==this.isEditing&&!0!==this.$panel.dialog.isOpen&&((0!==this.selected.length||!1!==this.$el.contains(t.target))&&this.paste(t)))},open(t){var e;null==(e=this.$refs["block-"+t.id])||e[0].open()},async paste(t,e){const i=this.$helper.clipboard.read(t);let n=await this.$api.post(this.endpoints.field+"/paste",{html:i});if(void 0===e){let t=this.selected[this.selected.length-1];-1===(e=this.findIndex(t))&&(e=this.blocks.length),e++}if(this.max){const t=this.max-this.blocks.length;n=n.slice(0,t)}this.blocks.splice(e,0,...n),this.save(),this.$panel.notification.success({message:this.$t("paste.success",{count:n.length}),icon:"download"})},pasteboard(){this.$panel.dialog.open({component:"k-block-pasteboard",on:{paste:this.paste}})},prevNext(t){var e;if(this.blocks[t])return null==(e=this.$refs["block-"+this.blocks[t].id])?void 0:e[0]},ref(t){var e,i;return null==(i=this.$refs["block-"+((null==t?void 0:t.id)??(null==(e=this.blocks[0])?void 0:e.id))])?void 0:i[0]},remove(t){const e=this.findIndex(t.id);-1!==e&&(this.deselect(t),this.$delete(this.blocks,e),this.save())},removeAll(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.blocks.delete.confirm.all"),submitButton:this.$t("delete.all")},on:{submit:()=>{this.selected=[],this.blocks=[],this.save(),this.$panel.dialog.close()}}})},removeSelected(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.blocks.delete.confirm.selected")},on:{submit:()=>{for(const t of this.selected){const e=this.findIndex(t);-1!==e&&this.$delete(this.blocks,e)}this.deselectAll(),this.save(),this.$panel.dialog.close()}}})},save(){this.$emit("input",this.blocks)},select(t){!1===this.isSelected(t)&&(this.selected.push(t.id),this.selected.sort(((t,e)=>this.findIndex(t)-this.findIndex(e))))},selectDown(){const t=this.selected[this.selected.length-1],e=this.findIndex(t)+1;e=0&&this.select(this.blocks[e])},selectAll(){this.selected=Object.values(this.blocks).map((t=>t.id))},show(t){Vue.set(t,"isHidden",!1),this.save()},async sort(t,e,i){if(i<0)return;let n=this.$helper.clone(this.blocks);n.splice(e,1),n.splice(i,0,t),this.blocks=n,this.save(),await this.$nextTick(),this.focus(t)},async split(t,e,i){const n=this.$helper.clone(t);n.content={...n.content,...i[0]};const s=await this.$api.get(this.endpoints.field+"/fieldsets/"+t.type);s.content={...s.content,...n.content,...i[1]},this.blocks.splice(e,1,n,s),this.save(),await this.$nextTick(),this.focus(s)},update(t,e){const i=this.findIndex(t.id);if(-1!==i)for(const n in e)Vue.set(this.blocks[i].content,n,e[n]);this.save()}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-blocks",attrs:{"data-disabled":t.disabled,"data-empty":0===t.blocks.length}},[t.hasFieldsets?[e("k-draggable",t._b({staticClass:"k-blocks-list",attrs:{"data-multi-select-key":t.isMultiSelectKey},on:{sort:t.save},scopedSlots:t._u([0===t.blocks.length?{key:"footer",fn:function(){return[e("k-empty",{staticClass:"k-blocks-empty",attrs:{icon:"box"},on:{click:function(e){return t.choose(t.blocks.length)}}},[t._v(" "+t._s(t.empty??t.$t("field.blocks.empty"))+" ")])]},proxy:!0}:null],null,!0)},"k-draggable",t.draggableOptions,!1),t._l(t.blocks,(function(i,n){return e("k-block",t._b({key:i.id,ref:"block-"+i.id,refInFor:!0,attrs:{endpoints:t.endpoints,fieldset:t.fieldset(i),"is-batched":t.isSelected(i)&&t.selected.length>1,"is-last-selected":t.isLastSelected(i),"is-full":t.isFull,"is-hidden":!0===i.isHidden,"is-mergable":t.isMergable,"is-selected":t.isSelected(i),next:t.prevNext(n+1),prev:t.prevNext(n-1)},on:{append:function(e){return t.add(e,n+1)},chooseToAppend:function(e){return t.choose(n+1)},chooseToConvert:function(e){return t.chooseToConvert(i)},chooseToPrepend:function(e){return t.choose(n)},close:function(e){t.isEditing=!1},copy:function(e){return t.copy()},duplicate:function(e){return t.duplicate(i,n)},focus:function(e){return t.onFocus(i)},hide:function(e){return t.hide(i)},merge:function(e){return t.merge()},open:function(e){t.isEditing=!0},paste:function(e){return t.pasteboard()},prepend:function(e){return t.add(e,n)},remove:function(e){return t.remove(i)},removeSelected:t.removeSelected,show:function(e){return t.show(i)},selectDown:t.selectDown,selectUp:t.selectUp,sortDown:function(e){return t.sort(i,n,n+1)},sortUp:function(e){return t.sort(i,n,n-1)},split:function(e){return t.split(i,n,e)},update:function(e){return t.update(i,e)}},nativeOn:{click:function(e){return t.onClickBlock(i,e)}}},"k-block",i,!1))})),1)]:e("k-empty",{attrs:{icon:"box"}},[t._v(" "+t._s(t.$t("field.blocks.fieldsets.empty"))+" ")])],2)}),[],!1,null,null,null,null).exports;const Si=ut({inheritAttrs:!1,props:{caption:String,captionMarks:{default:!0,type:[Boolean,Array]},isEmpty:Boolean,emptyIcon:String,emptyText:String}},(function(){var t=this,e=t._self._c;return e("figure",{staticClass:"k-block-figure"},[t.isEmpty?e("k-button",{staticClass:"k-block-figure-empty",attrs:{icon:t.emptyIcon,text:t.emptyText},on:{click:function(e){return t.$emit("open")}}}):e("span",{staticClass:"k-block-figure-container",on:{dblclick:function(e){return t.$emit("open")}}},[t._t("default")],2),t.caption?e("figcaption",[e("k-writer",{attrs:{inline:!0,marks:t.captionMarks,value:t.caption},on:{input:function(e){return t.$emit("update",{caption:e})}}})],1):t._e()],1)}),[],!1,null,null,null,null).exports;const Ci=ut({props:{isBatched:Boolean,isEditable:Boolean,isFull:Boolean,isHidden:Boolean,isMergable:Boolean,isSplitable:Boolean},computed:{buttons(){return this.isBatched?[{icon:"template",title:this.$t("copy"),click:()=>this.$emit("copy")},{when:this.isMergable,icon:"merge",title:this.$t("merge"),click:()=>this.$emit("merge")},{icon:"trash",title:this.$t("remove"),click:()=>this.$emit("removeSelected")}]:[{when:this.isEditable,icon:"edit",title:this.$t("edit"),click:()=>this.$emit("open")},{icon:"add",title:this.$t("insert.after"),disabled:this.isFull,click:()=>this.$emit("chooseToAppend")},{icon:"trash",title:this.$t("delete"),click:()=>this.$emit("remove")},{icon:"sort",title:this.$t("sort.drag"),class:"k-sort-handle",key:t=>this.sort(t)},{icon:"dots",title:this.$t("more"),dropdown:[{icon:"angle-up",label:this.$t("insert.before"),disabled:this.isFull,click:()=>this.$emit("chooseToPrepend")},{icon:"angle-down",label:this.$t("insert.after"),disabled:this.isFull,click:()=>this.$emit("chooseToAppend")},"-",{when:this.isEditable,icon:"edit",label:this.$t("edit"),click:()=>this.$emit("open")},{icon:"refresh",label:this.$t("field.blocks.changeType"),click:()=>this.$emit("chooseToConvert")},{when:this.isSplitable,icon:"split",label:this.$t("split"),click:()=>this.$emit("split")},"-",{icon:"template",label:this.$t("copy"),click:()=>this.$emit("copy")},{icon:"download",label:this.$t("paste.after"),disabled:this.isFull,click:()=>this.$emit("paste")},"-",{icon:this.isHidden?"preview":"hidden",label:this.isHidden?this.$t("show"):this.$t("hide"),click:()=>this.$emit(this.isHidden?"show":"hide")},{icon:"copy",label:this.$t("duplicate"),click:()=>this.$emit("duplicate")},"-",{icon:"trash",label:this.$t("delete"),click:()=>this.$emit("remove")}]}]}},methods:{open(){this.$refs.options.open()},sort(t){switch(t.preventDefault(),t.key){case"ArrowUp":this.$emit("sortUp");break;case"ArrowDown":this.$emit("sortDown")}}}},(function(){return(0,this._self._c)("k-toolbar",{staticClass:"k-block-options",attrs:{buttons:this.buttons},nativeOn:{mousedown:function(t){t.preventDefault()}}})}),[],!1,null,null,null,null).exports;const Oi=ut({inheritAttrs:!1,computed:{shortcut(){return this.$helper.keyboard.metaKey()+"+v"}},methods:{paste(t){this.$emit("close"),this.$emit("paste",t)}}},(function(){var t=this,e=t._self._c;return e("k-dialog",{ref:"dialog",staticClass:"k-block-importer",attrs:{"cancel-button":!1,"submit-button":!1,visible:!0,size:"large"},on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit")}}},[e("label",{attrs:{for:"pasteboard"},domProps:{innerHTML:t._s(t.$t("field.blocks.fieldsets.paste",{shortcut:t.shortcut}))}}),e("textarea",{attrs:{id:"pasteboard"},on:{paste:function(e){return e.preventDefault(),t.paste.apply(null,arguments)}}})])}),[],!1,null,null,null,null).exports;const Ai=ut({mixins:[Lt],inheritAttrs:!1,props:{cancelButton:{default:!1},disabledFieldsets:{default:()=>[],type:Array},fieldsets:{type:Object},fieldsetGroups:{type:Object},headline:{type:String},size:{default:"medium"},submitButton:{default:!1},value:{default:null,type:String}},data:()=>({selected:null}),computed:{groups(){const t={};let e=0;const i=this.fieldsetGroups??{blocks:{label:this.$t("field.blocks.fieldsets.label"),sets:Object.keys(this.fieldsets)}};for(const n in i){let s=i[n];if(s.open=!1!==s.open,s.fieldsets=s.sets.filter((t=>this.fieldsets[t])).map((t=>(e++,{...this.fieldsets[t],index:e}))),0===s.fieldsets.length)return;t[n]=s}return t},shortcut(){return this.$helper.keyboard.metaKey()+"+v"}},created(){this.$events.on("paste",this.paste)},destroyed(){this.$events.off("paste",this.paste)},methods:{paste(t){this.$emit("paste",t),this.close()}}},(function(){var t=this,e=t._self._c;return e("k-dialog",t._b({staticClass:"k-block-selector",on:{cancel:function(e){return t.$emit("cancel")},submit:function(e){return t.$emit("submit",t.value)}}},"k-dialog",t.$props,!1),[t.headline?e("k-headline",[t._v(" "+t._s(t.headline)+" ")]):t._e(),t._l(t.groups,(function(i,n){return e("details",{key:n,attrs:{open:i.open}},[e("summary",[t._v(t._s(i.label))]),e("k-navigate",{staticClass:"k-block-types"},t._l(i.fieldsets,(function(i){return e("k-button",{key:i.name,attrs:{disabled:t.disabledFieldsets.includes(i.type),icon:i.icon??"box",text:i.name,size:"lg"},on:{click:function(e){return t.$emit("submit",i.type)}},nativeOn:{focus:function(e){return t.$emit("input",i.type)}}})})),1)],1)})),e("p",{staticClass:"k-clipboard-hint",domProps:{innerHTML:t._s(t.$t("field.blocks.fieldsets.paste",{shortcut:t.shortcut}))}})],2)}),[],!1,null,null,null,null).exports;const Mi=ut({inheritAttrs:!1,props:{fieldset:{default:()=>({}),type:Object},content:{default:()=>({}),type:Object}},computed:{icon(){return this.fieldset.icon??"box"},label(){if(!this.fieldset.label||0===this.fieldset.label.length)return!1;if(this.fieldset.label===this.fieldset.name)return!1;let t=this.$helper.string.template(this.fieldset.label,this.content);return"…"!==t&&(t=this.$helper.string.stripHTML(t),this.$helper.string.unescapeHTML(t))},name(){return this.fieldset.name}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-block-title"},[e("k-icon",{staticClass:"k-block-icon",attrs:{type:t.icon}}),t.name?e("span",{staticClass:"k-block-name"},[t._v(" "+t._s(t.name)+" ")]):t._e(),t.label?e("span",{staticClass:"k-block-label"},[t._v(" "+t._s(t.label)+" ")]):t._e()],1)}),[],!1,null,null,null,null).exports;const ji=ut({inheritAttrs:!1,props:{content:[Object,Array],fieldset:Object,id:String},methods:{field(t,e=null){let i=null;for(const n of Object.values(this.fieldset.tabs??{}))n.fields[t]&&(i=n.fields[t]);return i??e},open(){this.$emit("open")},update(t){this.$emit("update",{...this.content,...t})}}},null,null,!1,null,null,null,null).exports,Ii={install(t){t.component("k-block",xi),t.component("k-blocks",_i),t.component("k-block-figure",Si),t.component("k-block-options",Ci),t.component("k-block-pasteboard",Oi),t.component("k-block-selector",Ai),t.component("k-block-title",Mi),t.component("k-block-type",ji);const e=Object.assign({"./Types/Code.vue":Ze,"./Types/Default.vue":ti,"./Types/Fields.vue":ii,"./Types/Gallery.vue":si,"./Types/Heading.vue":li,"./Types/Image.vue":ai,"./Types/Line.vue":ci,"./Types/List.vue":pi,"./Types/Markdown.vue":mi,"./Types/Quote.vue":gi,"./Types/Table.vue":bi,"./Types/Text.vue":yi,"./Types/Video.vue":wi});for(const i in e){const n=i.match(/\/([a-zA-Z]*)\.vue/)[1].toLowerCase();let s=e[i].default;s.extends=ji,t.component("k-block-type-"+n,s)}}};const Ti=ut({mixins:[Fe],inheritAttrs:!1,props:{autofocus:Boolean,empty:String,fieldsets:Object,fieldsetGroups:Object,group:String,max:{type:Number,default:null},value:{type:Array,default:()=>[]}},data:()=>({opened:[]}),computed:{hasFieldsets(){return this.$helper.object.length(this.fieldsets)>0},isEmpty(){return 0===this.value.length},isFull(){return null!==this.max&&this.value.length>=this.max},options(){return[{click:()=>this.$refs.blocks.copyAll(),disabled:this.isEmpty,icon:"template",text:this.$t("copy.all")},{click:()=>this.$refs.blocks.pasteboard(),disabled:this.isFull,icon:"download",text:this.$t("paste")},"-",{click:()=>this.$refs.blocks.removeAll(),disabled:this.isEmpty,icon:"trash",text:this.$t("delete.all")}]}},methods:{focus(){this.$refs.blocks.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-blocks-field",scopedSlots:t._u([!t.disabled&&t.hasFieldsets?{key:"options",fn:function(){return[e("k-button-group",{attrs:{layout:"collapsed"}},[e("k-button",{attrs:{autofocus:t.autofocus,disabled:t.isFull,responsive:!0,text:t.$t("add"),icon:"add",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.blocks.choose(t.value.length)}}}),e("k-button",{attrs:{icon:"dots",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:t.options,"align-x":"end"}})],1)]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[e("k-blocks",t._g({ref:"blocks",attrs:{autofocus:t.autofocus,compact:!1,disabled:t.disabled,empty:t.empty,endpoints:t.endpoints,fieldsets:t.fieldsets,"fieldset-groups":t.fieldsetGroups,group:t.group,max:t.max,value:t.value},on:{close:function(e){t.opened=e},open:function(e){t.opened=e}}},t.$listeners)),t.disabled||t.isEmpty||t.isFull||!t.hasFieldsets?t._e():e("footer",{staticClass:"k-bar",attrs:{"data-align":"center"}},[e("k-button",{attrs:{title:t.$t("add"),icon:"add",size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.blocks.choose(t.value.length)}}})],1)],1)}),[],!1,null,null,null,null).exports,Ei={mixins:[je,st],props:{columns:{default:1,type:Number},max:Number,min:Number,theme:String,value:{type:Array,default:()=>[]}}};const Li=ut({mixins:[Ie,Ei],data:()=>({selected:[]}),computed:{choices(){return this.options.map(((t,e)=>({autofocus:this.autofocus&&0===e,checked:this.selected.includes(t.value),disabled:this.disabled||t.disabled,info:t.info,label:t.text,name:this.name??this.id,type:"checkbox",value:t.value})))}},watch:{value:{handler(t){this.selected=Array.isArray(t)?t:[],this.validate()},immediate:!0}},methods:{focus(){var t;null==(t=this.$el.querySelector("input"))||t.focus()},input(t,e){if(!0===e)this.selected.push(t);else{const e=this.selected.indexOf(t);-1!==e&&this.selected.splice(e,1)}this.$emit("input",this.selected)},select(){this.focus()},validate(){this.$emit("invalid",this.$v.$invalid,this.$v)}},validations(){return{selected:{required:!this.required||t.required,min:!this.min||t.minLength(this.min),max:!this.max||t.maxLength(this.max)}}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-checkboxes-input k-grid",style:"--columns:"+t.columns,attrs:{"data-variant":"choices"}},t._l(t.choices,(function(i,n){return e("li",{key:n},[e("k-choice-input",t._b({on:{input:function(e){return t.input(i.value,e)}}},"k-choice-input",i,!1))],1)})),0)}),[],!1,null,null,null,null).exports,Di={props:{counter:{type:Boolean,default:!0}},computed:{counterOptions(){const t=this.counterValue??this.value;if(null===t||this.disabled||!1===this.counter)return!1;let e=0;return t&&(e=Array.isArray(t)?t.length:String(t).length),{count:e,min:this.min??this.minlength,max:this.max??this.maxlength}}}};const Bi=ut({mixins:[Fe,Ue,Ei,Di],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t,e=this,i=e._self._c;return i("k-field",e._b({staticClass:"k-checkboxes-field",attrs:{counter:e.counterOptions}},"k-field",e.$props,!1),[(null==(t=e.options)?void 0:t.length)?i("k-checkboxes-input",e._g(e._b({ref:"input",attrs:{id:e._uid,theme:"field"}},"k-checkboxes-input",e.$props,!1),e.$listeners)):i("k-empty",{attrs:{text:e.$t("options.none"),icon:"checklist"}})],1)}),[],!1,null,null,null,null).exports,qi={mixins:[je,H,J,et,it,ot,lt,at],props:{ariaLabel:String,type:{default:"text",type:String},value:{type:String}}};const Pi=ut({mixins:[Ie,qi]},(function(){var t=this;return(0,t._self._c)("input",t._b({directives:[{name:"direction",rawName:"v-direction"}],staticClass:"k-string-input",attrs:{"aria-label":t.ariaLabel,"data-font":t.font},on:{input:function(e){return t.$emit("input",e.target.value)}}},"input",{autocomplete:t.autocomplete,autofocus:t.autofocus,disabled:t.disabled,id:t.id,maxlength:t.maxlength,minlength:t.minlength,name:t.name,pattern:t.pattern,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,type:t.type,value:t.value},!1))}),[],!1,null,null,null,null).exports,Ni={mixins:[qi],props:{alpha:{type:Boolean,default:!0},autocomplete:{default:"off",type:String},format:{type:String,default:"hex",validator:t=>["hex","rgb","hsl"].includes(t)},spellcheck:{default:!1,type:Boolean}}};const zi=ut({mixins:[Pi,Ni],watch:{value(){this.validate()}},mounted(){this.validate()},methods:{convert(t){if(!t)return t;const e=document.createElement("div");e.style.color=t,document.body.append(e),t=window.getComputedStyle(e).color,e.remove();try{return this.$library.colors.toString(t,this.format,this.alpha)}catch(i){return t}},convertAndEmit(t){this.emit(this.convert(t))},emit(t){this.$emit("input",t)},onBlur(){this.convertAndEmit(this.value)},onPaste(t){t instanceof ClipboardEvent&&(t=this.$helper.clipboard.read(t,!0)),this.convertAndEmit(t)},async onSave(){var t;this.convertAndEmit(this.value),await this.$nextTick(),null==(t=this.$el.form)||t.requestSubmit()},validate(){let t="";null===this.$library.colors.parse(this.value)&&(t=this.$t("error.validation.color",{format:this.format})),this.$el.setCustomValidity(t)}}},(function(){var t=this;return(0,t._self._c)("k-string-input",t._b({staticClass:"k-colorname-input",attrs:{type:"text"},on:{input:function(e){return t.$emit("input",e)}},nativeOn:{blur:function(e){return t.onBlur.apply(null,arguments)},paste:function(e){return t.onPaste.apply(null,arguments)},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.metaKey?(e.stopPropagation(),e.preventDefault(),t.onSave.apply(null,arguments)):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.onSave.apply(null,arguments)}]}},"k-string-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const Fi=ut({mixins:[Fe,Ue,Ni],inheritAttrs:!1,props:{icon:{type:String,default:"pipette"},mode:{type:String,default:"picker",validator:t=>["picker","input","options"].includes(t)},options:{type:Array,default:()=>[]}},data:()=>({isInvalid:!1}),computed:{convertedOptions(){return this.options.map((t=>({...t,value:this.convert(t.value)})))},currentOption(){return this.convertedOptions.find((t=>t.value===this.value))}},methods:{convert(t){return this.$library.colors.toString(t,this.format,this.alpha)}}},(function(){var t,e=this,i=e._self._c;return i("k-field",e._b({staticClass:"k-color-field",attrs:{input:e._uid}},"k-field",e.$props,!1),["options"===e.mode?i("k-coloroptions-input",e._b({staticClass:"k-color-field-options",attrs:{options:e.convertedOptions},on:{input:function(t){return e.$emit("input",t)}}},"k-coloroptions-input",e.$props,!1)):i("k-input",e._b({attrs:{theme:"field",type:"color"},scopedSlots:e._u([{key:"before",fn:function(){return["picker"===e.mode?[i("button",{staticClass:"k-color-field-picker-toggle",attrs:{disabled:e.disabled,type:"button"},on:{click:function(t){return e.$refs.picker.toggle()}}},[i("k-color-frame",{attrs:{color:e.value}})],1),i("k-dropdown-content",{ref:"picker",staticClass:"k-color-field-picker"},[i("k-colorpicker-input",e._b({ref:"color",attrs:{options:e.convertedOptions},on:{input:function(t){return e.$emit("input",t)}},nativeOn:{click:function(t){t.stopPropagation()}}},"k-colorpicker-input",e.$props,!1))],1)]:i("k-color-frame",{attrs:{color:e.value}})]},proxy:!0},{key:"default",fn:function(){return[i("k-colorname-input",e._b({on:{input:function(t){return e.$emit("input",t)}}},"k-colorname-input",e.$props,!1))]},proxy:!0},(null==(t=e.currentOption)?void 0:t.text)?{key:"after",fn:function(){return[e._v(" "+e._s(e.currentOption.text)+" ")]},proxy:!0}:null,"picker"===e.mode?{key:"icon",fn:function(){return[i("k-button",{staticClass:"k-input-icon-button",attrs:{icon:e.icon},on:{click:function(t){return t.stopPropagation(),e.$refs.picker.toggle()}}})]},proxy:!0}:null],null,!0)},"k-input",e.$props,!1))],1)}),[],!1,null,null,null,null).exports,Ri={mixins:[je],props:{display:{type:String,default:"DD.MM.YYYY"},max:String,min:String,step:{type:Object,default:()=>({size:1,unit:"day"})},type:{type:String,default:"date"},value:String}};const Yi=ut({mixins:[Ie,Ri],data:()=>({dt:null,formatted:null}),computed:{inputType:()=>"date",pattern(){return this.$library.dayjs.pattern(this.display)},rounding(){return{...this.$options.props.step.default(),...this.step}}},watch:{value:{handler(t,e){if(t!==e){const e=this.toDatetime(t);this.commit(e)}},immediate:!0}},created(){this.$events.on("keydown.cmd.s",this.onBlur)},destroyed(){this.$events.off("keydown.cmd.s",this.onBlur)},methods:{async alter(t){let e=this.parse()??this.round(this.$library.dayjs()),i=this.rounding.unit,n=this.rounding.size;const s=this.selection();null!==s&&("meridiem"===s.unit?(t="pm"===e.format("a")?"subtract":"add",i="hour",n=12):(i=s.unit,i!==this.rounding.unit&&(n=1))),e=e[t](n,i).round(this.rounding.unit,this.rounding.size),this.commit(e),this.emit(e),await this.$nextTick(),this.select(s)},commit(t){this.dt=t,this.formatted=this.pattern.format(t),this.$emit("invalid",this.$v.$invalid,this.$v)},emit(t){this.$emit("input",this.toISO(t))},onArrowDown(){this.alter("subtract")},onArrowUp(){this.alter("add")},onBlur(){const t=this.parse();this.commit(t),this.emit(t)},async onEnter(){this.onBlur(),await this.$nextTick(),this.$emit("submit")},onInput(t){const e=this.parse(),i=this.pattern.format(e);if(!t||i==t)return this.commit(e),this.emit(e)},async onTab(t){if(""==this.$refs.input.value)return;this.onBlur(),await this.$nextTick();const e=this.selection();if(this.$refs.input&&e.start===this.$refs.input.selectionStart&&e.end===this.$refs.input.selectionEnd-1)if(t.shiftKey){if(0===e.index)return;this.selectPrev(e.index)}else{if(e.index===this.pattern.parts.length-1)return;this.selectNext(e.index)}else{if(this.$refs.input&&this.$refs.input.selectionStart==e.end+1&&e.index==this.pattern.parts.length-1)return;if(this.$refs.input&&this.$refs.input.selectionEnd-1>e.end){const t=this.pattern.at(this.$refs.input.selectionEnd,this.$refs.input.selectionEnd);this.select(this.pattern.parts[t.index])}else this.select(this.pattern.parts[e.index])}t.preventDefault()},parse(){let t=this.$refs.input.value;return t=this.$library.dayjs.interpret(t,this.inputType),this.round(t)},round(t){return null==t?void 0:t.round(this.rounding.unit,this.rounding.size)},select(t){var e;t||(t=this.selection()),null==(e=this.$refs.input)||e.setSelectionRange(t.start,t.end+1)},selectFirst(){this.select(this.pattern.parts[0])},selectLast(){this.select(this.pattern.parts[this.pattern.parts.length-1])},selectNext(t){this.select(this.pattern.parts[t+1])},selectPrev(t){this.select(this.pattern.parts[t-1])},selection(){return this.pattern.at(this.$refs.input.selectionStart,this.$refs.input.selectionEnd)},toDatetime(t){return this.round(this.$library.dayjs.iso(t,this.inputType))},toISO(t){return null==t?void 0:t.toISO(this.inputType)}},validations(){return{value:{min:!this.dt||!this.min||(()=>this.dt.validate(this.min,"min",this.rounding.unit)),max:!this.dt||!this.max||(()=>this.dt.validate(this.max,"max",this.rounding.unit)),required:!this.required||(()=>!!this.dt)}}}},(function(){var t=this;return(0,t._self._c)("input",{directives:[{name:"direction",rawName:"v-direction"}],ref:"input",class:`k-text-input k-${t.type}-input`,attrs:{id:t.id,autofocus:t.autofocus,disabled:t.disabled,placeholder:t.display,required:t.required,autocomplete:"off",spellcheck:"false",type:"text"},domProps:{value:t.formatted},on:{blur:t.onBlur,focus:function(e){return t.$emit("focus")},input:function(e){return t.onInput(e.target.value)},keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"down",40,e.key,["Down","ArrowDown"])?null:(e.stopPropagation(),e.preventDefault(),t.onArrowDown.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"up",38,e.key,["Up","ArrowUp"])?null:(e.stopPropagation(),e.preventDefault(),t.onArrowUp.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.stopPropagation(),e.preventDefault(),t.onEnter.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"tab",9,e.key,"Tab")?null:t.onTab.apply(null,arguments)}]}})}),[],!1,null,null,null,null).exports;const Ui=ut({mixins:[Fe,Ue,Ri],inheritAttrs:!1,props:{calendar:{type:Boolean,default:!0},icon:{type:String,default:"calendar"},time:{type:[Boolean,Object],default:()=>({})},times:{type:Boolean,default:!0}},data(){return{isInvalid:!1,iso:this.toIso(this.value)}},computed:{isEmpty(){return this.time?null===this.iso.date&&this.iso.time:null===this.iso.date}},watch:{value(t,e){t!==e&&(this.iso=this.toIso(t))}},methods:{focus(){this.$refs.dateInput.focus()},now(){const t=this.$library.dayjs();return{date:t.toISO("date"),time:this.time?t.toISO("time"):"00:00:00"}},onInput(){if(this.isEmpty)return this.$emit("input","");const t=this.$library.dayjs.iso(this.iso.date+" "+this.iso.time);(t||null!==this.iso.date&&null!==this.iso.time)&&this.$emit("input",(null==t?void 0:t.toISO())??"")},onDateInput(t){t&&!this.iso.time&&(this.iso.time=this.now().time),this.iso.date=t,this.onInput()},onDateInvalid(t){this.isInvalid=t},onTimeInput(t){t&&!this.iso.date&&(this.iso.date=this.now().date),this.iso.time=t,this.onInput()},onTimesInput(t){var e;null==(e=this.$refs.times)||e.close(),this.onTimeInput(t+":00")},toIso(t){const e=this.$library.dayjs.iso(t);return{date:(null==e?void 0:e.toISO("date"))??null,time:(null==e?void 0:e.toISO("time"))??null}}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-date-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("div",{ref:"body",staticClass:"k-date-field-body",attrs:{"data-has-time":Boolean(t.time),"data-invalid":!t.novalidate&&t.isInvalid}},[e("k-input",t._b({ref:"dateInput",attrs:{id:t._uid,autofocus:t.autofocus,disabled:t.disabled,display:t.display,max:t.max,min:t.min,required:t.required,value:t.value,theme:"field",type:"date"},on:{invalid:t.onDateInvalid,input:t.onDateInput,submit:function(e){return t.$emit("submit")}},scopedSlots:t._u([t.calendar?{key:"icon",fn:function(){return[e("k-button",{staticClass:"k-input-icon-button",attrs:{disabled:t.disabled,icon:t.icon,title:t.$t("date.select")},on:{click:function(e){return t.$refs.calendar.toggle()}}}),e("k-dropdown-content",{ref:"calendar",attrs:{"align-x":"end"}},[e("k-calendar",{attrs:{value:t.iso.date,min:t.min,max:t.max},on:{input:t.onDateInput}})],1)]},proxy:!0}:null],null,!0)},"k-input",t.$props,!1)),t.time?e("k-input",{ref:"timeInput",attrs:{disabled:t.disabled,display:t.time.display,required:t.required,step:t.time.step,value:t.iso.time,icon:t.time.icon,theme:"field",type:"time"},on:{input:t.onTimeInput,submit:function(e){return t.$emit("submit")}},scopedSlots:t._u([t.times?{key:"icon",fn:function(){return[e("k-button",{staticClass:"k-input-icon-button",attrs:{disabled:t.disabled,icon:t.time.icon??"clock",title:t.$t("time.select")},on:{click:function(e){return t.$refs.times.toggle()}}}),e("k-dropdown-content",{ref:"times",attrs:{"align-x":"end"}},[e("k-timeoptions-input",{attrs:{display:t.time.display,value:t.value},on:{input:t.onTimesInput}})],1)]},proxy:!0}:null],null,!0)}):t._e()],1)])}),[],!1,null,null,null,null).exports,Hi={mixins:[je,J,et,it,ot,lt,at],props:{autocomplete:{type:[Boolean,String],default:"off"},preselect:Boolean,type:{type:String,default:"text"},value:String}};const Vi=ut({mixins:[Ie,Hi],data(){return{listeners:{...this.$listeners,input:t=>this.onInput(t.target.value)}}},watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{onInput(t){this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},select(){this.$refs.input.select()}},validations(){return{value:{required:!this.required||t.required,minLength:!this.minlength||t.minLength(this.minlength),maxLength:!this.maxlength||t.maxLength(this.maxlength),email:"email"!==this.type||t.email,url:"url"!==this.type||t.url,pattern:!this.pattern||(t=>!this.required&&!t||!this.$refs.input.validity.patternMismatch)}}}},(function(){var t=this;return(0,t._self._c)("input",t._g(t._b({directives:[{name:"direction",rawName:"v-direction"}],ref:"input",staticClass:"k-text-input",attrs:{"data-font":t.font}},"input",{autocomplete:t.autocomplete,autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,pattern:t.pattern,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,type:t.type,value:t.value},!1),t.listeners))}),[],!1,null,null,null,null).exports,Ki={mixins:[Hi],props:{autocomplete:{type:String,default:"email"},placeholder:{type:String,default:()=>window.panel.$t("email.placeholder")},type:{type:String,default:"email"}}};const Wi=ut({extends:Vi,mixins:[Ki]},null,null,!1,null,null,null,null).exports;const Ji=ut({mixins:[Fe,Ue,Ki],inheritAttrs:!1,props:{link:{type:Boolean,default:!0},icon:{type:String,default:"email"}},computed:{mailto(){var t;return(null==(t=this.value)?void 0:t.length)>0?"mailto:"+this.value:null}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-email-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"email"},scopedSlots:t._u([{key:"icon",fn:function(){return[t.link?e("k-button",{staticClass:"k-input-icon-button",attrs:{icon:t.icon,link:t.mailto,title:t.$t("open"),tabindex:"-1",target:"_blank"}}):t._e()]},proxy:!0}])},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const Gi=ut({type:"model",mixins:[Fe,V,tt],inheritAttrs:!1,props:{empty:String,info:String,link:Boolean,max:Number,multiple:Boolean,parent:String,search:Boolean,size:String,text:String,value:{type:Array,default:()=>[]}},data(){return{selected:this.value}},computed:{buttons(){return[{autofocus:this.autofocus,text:this.$t("select"),icon:"checklist",responsive:!0,click:()=>this.open()}]},collection(){return{empty:this.emptyProps,items:this.selected,layout:this.layout,link:this.link,size:this.size,sortable:!this.disabled&&this.selected.length>1}},hasDropzone:()=>!1,isInvalid(){return this.required&&0===this.selected.length||this.min&&this.selected.lengththis.max},more(){return!this.max||this.max>this.selected.length}},watch:{value(t){this.selected=t}},methods:{drop(){},focus(){},onInput(){this.$emit("input",this.selected)},open(){if(this.disabled)return!1;this.$panel.dialog.open({component:`k-${this.$options.type}-dialog`,props:{endpoint:this.endpoints.field,hasSearch:this.search,max:this.max,multiple:this.multiple,value:this.selected.map((t=>t.id))},on:{submit:t=>{this.select(t),this.$panel.dialog.close()}}})},remove(t){this.selected.splice(t,1),this.onInput()},removeById(t){this.selected=this.selected.filter((e=>e.id!==t)),this.onInput()},select(t){if(0===t.length)return this.selected=[],void this.onInput();this.selected=this.selected.filter((e=>t.find((t=>t.id===e.id))));for(const e of t)this.selected.find((t=>e.id===t.id))||this.selected.push(e);this.onInput()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({class:`k-models-field k-${t.$options.type}-field`,scopedSlots:t._u([t.disabled?null:{key:"options",fn:function(){return[e("k-button-group",{ref:"buttons",staticClass:"k-field-options",attrs:{buttons:t.buttons,layout:"collapsed",size:"xs",variant:"filled"}})]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-dropzone",{attrs:{disabled:!t.hasDropzone},on:{drop:t.drop}},[e("k-collection",t._b({on:{empty:t.open,sort:t.onInput,sortChange:function(e){return t.$emit("change",e)}},scopedSlots:t._u([t.disabled?null:{key:"options",fn:function({index:i}){return[e("k-button",{attrs:{title:t.$t("remove"),icon:"remove"},on:{click:function(e){return t.remove(i)}}})]}}],null,!0)},"k-collection",t.collection,!1))],1)],1)}),[],!1,null,null,null,null).exports;const Xi=ut({extends:Gi,type:"files",props:{uploads:[Boolean,Object,Array]},computed:{buttons(){const t=Gi.computed.buttons.call(this);return this.hasDropzone&&t.unshift({autofocus:this.autofocus,text:this.$t("upload"),responsive:!0,icon:"upload",click:()=>this.$panel.upload.pick(this.uploadOptions)}),t},emptyProps(){return{icon:"image",text:this.empty??this.$t("field.files.empty")}},hasDropzone(){return!this.disabled&&this.more&&this.uploads},uploadOptions(){return{accept:this.uploads.accept,max:this.max,multiple:this.multiple,url:this.$panel.urls.api+"/"+this.endpoints.field+"/upload",on:{done:t=>{!1===this.multiple&&(this.selected=[]);for(const e of t)void 0===this.selected.find((t=>t.id===e.id))&&this.selected.push(e);this.onInput(),this.$events.emit("model.update")}}}}},created(){this.$events.on("file.delete",this.removeById)},destroyed(){this.$events.off("file.delete",this.removeById)},methods:{drop(t){return!1!==this.uploads&&this.$panel.upload.open(t,this.uploadOptions)}}},null,null,!1,null,null,null,null).exports;const Zi=ut({},(function(){return(0,this._self._c)("div",{staticClass:"k-field k-gap-field"})}),[],!1,null,null,null,null).exports;const Qi=ut({mixins:[G,Q],inheritAttrs:!1},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-headline-field"},[e("k-headline",{staticClass:"h2"},[t._v(" "+t._s(t.label)+" ")]),t.help?e("footer",{staticClass:"k-field-footer"},[e("k-text",{staticClass:"k-help k-field-help",attrs:{html:t.help}})],1):t._e()],1)}),[],!1,null,null,null,null).exports;const tn=ut({mixins:[G,Q],props:{icon:String,text:String,theme:{type:String,default:"info"}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-field k-info-field"},[t.label?e("k-headline",[t._v(t._s(t.label))]):t._e(),e("k-box",{attrs:{icon:t.icon,theme:t.theme}},[e("k-text",{attrs:{html:t.text}})],1),t.help?e("footer",{staticClass:"k-field-footer"},[e("k-text",{staticClass:"k-help k-field-help",attrs:{html:t.help}})],1):t._e()],1)}),[],!1,null,null,null,null).exports;const en=ut({mixins:[Fe],inheritAttrs:!1,props:{autofocus:Boolean,empty:String,fieldsetGroups:Object,fieldsets:Object,layouts:{type:Array,default:()=>[["1/1"]]},selector:Object,settings:Object,value:{type:Array,default:()=>[]}},computed:{isEmpty(){return 0===this.value.length},options(){return[{click:()=>this.$refs.layouts.copy(),disabled:this.isEmpty,icon:"template",text:this.$t("copy.all")},{click:()=>this.$refs.layouts.pasteboard(),icon:"download",text:this.$t("paste")},"-",{click:()=>this.$refs.layouts.removeAll(),disabled:this.isEmpty,icon:"trash",text:this.$t("delete.all")}]}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-layout-field",scopedSlots:t._u([t.disabled?null:{key:"options",fn:function(){return[e("k-button-group",{attrs:{layout:"collapsed"}},[e("k-button",{attrs:{autofocus:t.autofocus,text:t.$t("add"),icon:"add",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.layouts.select(0)}}}),e("k-button",{attrs:{icon:"dots",variant:"filled",size:"xs"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:t.options,"align-x":"end"}})],1)]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-layouts",t._b({ref:"layouts",on:{input:function(e){return t.$emit("input",e)}}},"k-layouts",t.$props,!1)),t.disabled?t._e():e("footer",{staticClass:"k-bar",attrs:{"data-align":"center"}},[e("k-button",{attrs:{title:t.$t("add"),icon:"add",size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.layouts.select(t.value.length)}}})],1)],1)}),[],!1,null,null,null,null).exports;const nn=ut({},(function(){return(0,this._self._c)("hr",{staticClass:"k-line-field"})}),[],!1,null,null,null,null).exports;const sn=ut({mixins:[{mixins:[Fe,Ue,st],props:{value:{default:"",type:String}}}],inheritAttrs:!1,data:()=>({model:null,linkType:null,linkValue:null,expanded:!1,isInvalid:!1}),computed:{currentType(){return this.activeTypes[this.linkType]??Object.values(this.activeTypes)[0]},availableTypes(){return{url:{detect:t=>/^(http|https):\/\//.test(t),icon:"url",label:this.$t("url"),link:t=>t,placeholder:this.$t("url.placeholder"),input:"url",value:t=>t},page:{detect:t=>!0===this.isPageUUID(t),icon:"page",label:this.$t("page"),link:t=>t,placeholder:this.$t("select")+" …",input:"text",value:t=>t},file:{detect:t=>!0===this.isFileUUID(t),icon:"file",label:this.$t("file"),link:t=>t,placeholder:this.$t("select")+" …",value:t=>t},email:{detect:t=>t.startsWith("mailto:"),icon:"email",label:this.$t("email"),link:t=>t.replace(/^mailto:/,""),placeholder:this.$t("email.placeholder"),input:"email",value:t=>"mailto:"+t},tel:{detect:t=>t.startsWith("tel:"),icon:"phone",label:this.$t("tel"),link:t=>t.replace(/^tel:/,""),pattern:"[+]{0,1}[0-9]+",placeholder:this.$t("tel.placeholder"),input:"tel",value:t=>"tel:"+t},anchor:{detect:t=>t.startsWith("#"),icon:"anchor",label:"Anchor",link:t=>t,pattern:"^#.+",placeholder:"#element",input:"text",value:t=>t},custom:{detect:()=>!0,icon:"title",label:this.$t("custom"),link:t=>t,input:"text",value:t=>t}}},activeTypes(){var t;if(!(null==(t=this.options)?void 0:t.length))return this.availableTypes;const e={};for(const i of this.options)e[i]=this.availableTypes[i];return e},activeTypesOptions(){const t=[];for(const e in this.activeTypes)t.push({click:()=>this.switchType(e),current:e===this.linkType,icon:this.activeTypes[e].icon,label:this.activeTypes[e].label});return t}},watch:{value:{handler(t,e){if(t===e)return;const i=this.detect(t);this.linkType=this.linkType??i.type,this.linkValue=i.link,t!==e&&this.preview(i)},immediate:!0}},created(){this.$events.on("click",this.onOutsideClick)},destroyed(){this.$events.off("click",this.onOutsideClick)},methods:{clear(){this.$emit("input",""),this.expanded=!1},detect(t){if(0===(t=t??"").length)return{type:"url",link:""};for(const e in this.availableTypes)if(!0===this.availableTypes[e].detect(t))return{type:e,link:this.availableTypes[e].link(t)}},focus(){var t;null==(t=this.$refs.input)||t.focus()},getFileUUID:t=>t.replace("/@/file/","file://"),getPageUUID:t=>t.replace("/@/page/","page://"),isFileUUID:t=>!0===t.startsWith("file://")||!0===t.startsWith("/@/file/"),isPageUUID:t=>"site://"===t||!0===t.startsWith("page://")||!0===t.startsWith("/@/page/"),onInput(t){const e=(null==t?void 0:t.trim())??"";if(!e.length)return this.$emit("input","");this.$emit("input",this.currentType.value(e))},onInvalid(t){this.isInvalid=!!t},onOutsideClick(t){!1===this.$el.contains(t.target)&&(this.expanded=!1)},async preview({type:t,link:e}){this.model="page"===t&&e?await this.previewForPage(e):"file"===t&&e?await this.previewForFile(e):e?{label:e}:null},async previewForFile(t){try{const e=await this.$api.files.get(null,t,{select:"filename, panelImage"});return{label:e.filename,image:e.panelImage}}catch(e){return null}},async previewForPage(t){if("site://"===t)return{label:this.$t("view.site")};try{return{label:(await this.$api.pages.get(t,{select:"title"})).title}}catch(e){return null}},selectModel(t){t.uuid?this.onInput(t.uuid):(this.switchType("url"),this.onInput(t.url))},async switchType(t){t!==this.linkType&&(this.isInvalid=!1,this.linkType=t,this.linkValue="","page"===this.linkType||"file"===this.linkType?this.expanded=!0:this.expanded=!1,this.$emit("input",""),await this.$nextTick(),this.focus())},toggle(){this.expanded=!this.expanded}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-link-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._b({attrs:{invalid:t.isInvalid,icon:!1,theme:"field"}},"k-input",t.$props,!1),[e("div",{staticClass:"k-link-input-header"},[e("k-button",{staticClass:"k-link-input-toggle",attrs:{disabled:t.disabled,dropdown:!0,icon:t.currentType.icon,variant:"filled"},on:{click:function(e){return t.$refs.types.toggle()}}},[t._v(" "+t._s(t.currentType.label)+" ")]),e("k-dropdown-content",{ref:"types",attrs:{options:t.activeTypesOptions}}),"page"===t.linkType||"file"===t.linkType?e("div",{staticClass:"k-link-input-model",on:{click:t.toggle}},[t.model?e("k-tag",{staticClass:"k-link-input-model-preview",attrs:{image:t.model.image?{...t.model.image,cover:!0,back:"gray-200"}:null,removable:!t.disabled},on:{remove:t.clear}},[t._v(" "+t._s(t.model.label)+" ")]):e("k-button",{staticClass:"k-link-input-model-placeholder"},[t._v(" "+t._s(t.currentType.placeholder)+" ")]),e("k-button",{staticClass:"k-link-input-model-toggle",attrs:{icon:"bars"}})],1):e("k-"+t.currentType.input+"-input",{ref:"input",tag:"component",attrs:{id:t._uid,pattern:t.currentType.pattern??null,placeholder:t.currentType.placeholder,value:t.linkValue},on:{invalid:t.onInvalid,input:t.onInput}})],1),"page"===t.linkType?e("div",{directives:[{name:"show",rawName:"v-show",value:t.expanded,expression:"expanded"}],staticClass:"k-link-input-body",attrs:{"data-type":"page"}},[e("div",{staticClass:"k-page-browser"},[e("k-page-tree",{attrs:{current:t.getPageUUID(t.value),root:!1},on:{select:function(e){return t.selectModel(e)}}})],1)]):"file"===t.linkType?e("div",{directives:[{name:"show",rawName:"v-show",value:t.expanded,expression:"expanded"}],staticClass:"k-link-input-body",attrs:{"data-type":"file"}},[e("k-file-browser",{attrs:{selected:t.getFileUUID(t.value)},on:{select:function(e){return t.selectModel(e)}}})],1):t._e()])],1)}),[],!1,null,null,null,null).exports;const on=t=>({$from:e})=>((t,e)=>{for(let i=t.depth;i>0;i--){const n=t.node(i);if(e(n))return{pos:i>0?t.before(i):0,start:t.start(i),depth:i,node:n}}})(e,t),ln=t=>e=>{if((t=>t instanceof o)(e)){const{node:i,$from:n}=e;if(((t,e)=>Array.isArray(t)&&t.indexOf(e.type)>-1||e.type===t)(t,i))return{node:i,pos:n.pos,depth:n.depth}}},rn=(t,e,i={})=>{const n=ln(e)(t.selection)||on((t=>t.type===e))(t.selection);return 0!==$t(i)&&n?n.node.hasMarkup(e,{...n.node.attrs,...i}):!!n};function an(t=null,e=null){if(!t||!e)return!1;const i=t.parent.childAfter(t.parentOffset);if(!i.node)return!1;const n=i.node.marks.find((t=>t.type===e));if(!n)return!1;let s=t.index(),o=t.start()+i.offset,l=s+1,r=o+i.node.nodeSize;for(;s>0&&n.isInSet(t.parent.child(s-1).marks);)s-=1,o-=t.parent.child(s).nodeSize;for(;l{s=[...s,...t.marks]}));const o=s.find((t=>t.type.name===e.name));return o?o.attrs:{}},getNodeAttrs:function(t,e){const{from:i,to:n}=t.selection;let s=[];t.doc.nodesBetween(i,n,(t=>{s=[...s,t]}));const o=s.reverse().find((t=>t.type.name===e.name));return o?o.attrs:{}},markInputRule:function(t,i,n){return new e(t,((t,e,s,o)=>{const l=n instanceof Function?n(e):n,{tr:r}=t,a=e.length-1;let u=o,c=s;if(e[a]){const n=s+e[0].indexOf(e[a-1]),l=n+e[a-1].length-1,d=n+e[a-1].lastIndexOf(e[a]),p=d+e[a].length,h=function(t,e,i){let n=[];return i.doc.nodesBetween(t,e,((t,e)=>{n=[...n,...t.marks.map((i=>({start:e,end:e+t.nodeSize,mark:i})))]})),n}(s,o,t).filter((t=>{const{excluded:e}=t.mark.type;return e.find((t=>t.name===i.name))})).filter((t=>t.end>n));if(h.length)return!1;pn&&r.delete(n,d),c=n,u=c+e[a].length}return r.addMark(c,u,i.create(l)),r.removeStoredMark(i),r}))},markIsActive:function(t,e){const{from:i,$from:n,to:s,empty:o}=t.selection;return o?!!e.isInSet(t.storedMarks||n.marks()):!!t.doc.rangeHasMark(i,s,e)},markPasteRule:function(t,e,o){const l=(i,n)=>{const r=[];return i.forEach((i=>{var s;if(i.isText){const{text:l,marks:a}=i;let u,c=0;const d=!!a.filter((t=>"link"===t.type.name))[0];for(;!d&&null!==(u=t.exec(l));)if((null==(s=null==n?void 0:n.type)?void 0:s.allowsMarkType(e))&&u[1]){const t=u.index,n=t+u[0].length,s=t+u[0].indexOf(u[1]),l=s+u[1].length,a=o instanceof Function?o(u):o;t>0&&r.push(i.cut(c,t)),r.push(i.cut(s,l).mark(e.create(a).addToSet(i.marks))),c=n}cnew n(l(t.content),t.openStart,t.openEnd)}})},minMax:function(t=0,e=0,i=0){return Math.min(Math.max(parseInt(t,10),e),i)},nodeIsActive:rn,nodeInputRule:function(t,i,n){return new e(t,((t,e,s,o)=>{const l=n instanceof Function?n(e):n,{tr:r}=t;return e[0]&&r.replaceWith(s-1,o,i.create(l)),r}))},pasteRule:function(t,e,o){const l=i=>{const n=[];return i.forEach((i=>{if(i.isText){const{text:s}=i;let l,r=0;do{if(l=t.exec(s),l){const t=l.index,s=t+l[0].length,a=o instanceof Function?o(l[0]):o;t>0&&n.push(i.cut(r,t)),n.push(i.cut(t,s).mark(e.create(a).addToSet(i.marks))),r=s}}while(l);rnew n(l(t.content),t.openStart,t.openEnd)}})},removeMark:function(t){return(e,i)=>{const{tr:n,selection:s}=e;let{from:o,to:l}=s;const{$from:r,empty:a}=s;if(a){const e=an(r,t);o=e.from,l=e.to}return n.removeMark(o,l,t),i(n)}},toggleBlockType:function(t,e,i={}){return(n,s,o)=>rn(n,t,i)?l(e)(n,s,o):l(t,i)(n,s,o)},toggleList:function(t,e){return(i,n,s)=>{const{schema:o,selection:l}=i,{$from:u,$to:c}=l,d=u.blockRange(c);if(!d)return!1;const p=on((t=>un(t,o)))(l);if(d.depth>=1&&p&&d.depth-p.depth<=1){if(p.node.type===t)return r(e)(i,n,s);if(un(p.node,o)&&t.validContent(p.node.content)){const{tr:e}=i;return e.setNodeMarkup(p.pos,t),n&&n(e),!1}}return a(t)(i,n,s)}},toggleWrap:function(t,e={}){return(i,n,s)=>rn(i,t,e)?u(i,n):c(t,e)(i,n,s)},updateMark:function(t,e){return(i,n)=>{const{tr:s,selection:o,doc:l}=i,{ranges:r,empty:a}=o;if(a){const{from:i,to:n}=an(o.$from,t);l.rangeHasMark(i,n,t)&&s.removeMark(i,n,t),s.addMark(i,n,t.create(e))}else r.forEach((i=>{const{$to:n,$from:o}=i;l.rangeHasMark(o.pos,n.pos,t)&&s.removeMark(o.pos,n.pos,t),s.addMark(o.pos,n.pos,t.create(e))}));return n(s)}}};class dn{emit(t,...e){this._callbacks=this._callbacks??{};const i=this._callbacks[t]??[];for(const n of i)n.apply(this,e);return this}off(t,e){if(arguments.length){const i=this._callbacks?this._callbacks[t]:null;i&&(e?this._callbacks[t]=i.filter((t=>t!==e)):delete this._callbacks[t])}else this._callbacks={};return this}on(t,e){return this._callbacks=this._callbacks??{},this._callbacks[t]=this._callbacks[t]??[],this._callbacks[t].push(e),this}}class pn{constructor(t=[],e){for(const i of t)i.bindEditor(e),i.init();this.extensions=t}commands({schema:t,view:e}){return this.extensions.filter((t=>t.commands)).reduce(((i,n)=>{const{name:s,type:o}=n,l={},r=n.commands({schema:t,utils:cn,...["node","mark"].includes(o)?{type:t[`${o}s`][s]}:{}}),a=(t,i)=>{l[t]=t=>{if("function"!=typeof i||!e.editable)return!1;e.focus();const n=i(t);return"function"==typeof n?n(e.state,e.dispatch,e):n}};if("object"==typeof r)for(const[t,e]of Object.entries(r))a(t,e);else a(s,r);return{...i,...l}}),{})}buttons(t="mark"){const e={};for(const i of this.extensions)if(i.type===t&&i.button)if(Array.isArray(i.button))for(const t of i.button)e[t.id??t.name]=t;else e[i.name]=i.button;return e}getAllowedExtensions(t){return t instanceof Array||!t?t instanceof Array?this.extensions.filter((e=>!t.includes(e.name))):this.extensions:[]}getFromExtensions(t,e,i=this.extensions){return i.filter((t=>["extension"].includes(t.type))).filter((e=>e[t])).map((i=>i[t]({...e,utils:cn})))}getFromNodesAndMarks(t,e,i=this.extensions){return i.filter((t=>["node","mark"].includes(t.type))).filter((e=>e[t])).map((i=>i[t]({...e,type:e.schema[`${i.type}s`][i.name],utils:cn})))}inputRules({schema:t,excludedExtensions:e}){const i=this.getAllowedExtensions(e);return[...this.getFromExtensions("inputRules",{schema:t},i),...this.getFromNodesAndMarks("inputRules",{schema:t},i)].reduce(((t,e)=>[...t,...e]),[])}keymaps({schema:t}){return[...this.getFromExtensions("keys",{schema:t}),...this.getFromNodesAndMarks("keys",{schema:t})].map((t=>v(t)))}get marks(){return this.extensions.filter((t=>"mark"===t.type)).reduce(((t,{name:e,schema:i})=>({...t,[e]:i})),{})}get nodes(){return this.extensions.filter((t=>"node"===t.type)).reduce(((t,{name:e,schema:i})=>({...t,[e]:i})),{})}get options(){const{view:t}=this;return this.extensions.reduce(((e,i)=>({...e,[i.name]:new Proxy(i.options,{set(e,i,n){const s=e[i]!==n;return Object.assign(e,{[i]:n}),s&&t.updateState(t.state),!0}})})),{})}pasteRules({schema:t,excludedExtensions:e}){const i=this.getAllowedExtensions(e);return[...this.getFromExtensions("pasteRules",{schema:t},i),...this.getFromNodesAndMarks("pasteRules",{schema:t},i)].reduce(((t,e)=>[...t,...e]),[])}plugins({schema:t}){return[...this.getFromExtensions("plugins",{schema:t}),...this.getFromNodesAndMarks("plugins",{schema:t})].reduce(((t,e)=>[...t,...e]),[]).map((t=>t instanceof i?t:new i(t)))}}class hn{constructor(t={}){this.options={...this.defaults,...t}}init(){return null}bindEditor(t=null){this.editor=t}get name(){return null}get type(){return"extension"}get defaults(){return{}}plugins(){return[]}inputRules(){return[]}pasteRules(){return[]}keys(){return{}}}class mn extends hn{constructor(t={}){super(t)}get type(){return"node"}get schema(){return{}}commands(){return{}}}class fn extends mn{get defaults(){return{inline:!1}}get name(){return"doc"}get schema(){return{content:this.options.inline?"inline*":"block+"}}}class gn extends mn{get button(){return{id:this.name,icon:"paragraph",label:window.panel.$t("toolbar.button.paragraph"),name:this.name,separator:!0}}commands({utils:t,schema:e,type:i}){return{paragraph:()=>this.editor.activeNodes.includes("bulletList")?t.toggleList(e.nodes.bulletList,e.nodes.listItem):this.editor.activeNodes.includes("orderedList")?t.toggleList(e.nodes.orderedList,e.nodes.listItem):this.editor.activeNodes.includes("quote")?t.toggleWrap(e.nodes.quote):t.setBlockType(i)}}get schema(){return{content:"inline*",group:"block",draggable:!1,parseDOM:[{tag:"p"}],toDOM:()=>["p",0]}}get name(){return"paragraph"}}let kn=class extends mn{get name(){return"text"}get schema(){return{group:"inline"}}};class bn extends dn{constructor(t={}){super(),this.defaults={autofocus:!1,content:"",disableInputRules:!1,disablePasteRules:!1,editable:!0,element:null,extensions:[],emptyDocument:{type:"doc",content:[]},events:{},inline:!1,parseOptions:{},topNode:"doc",useBuiltInExtensions:!0},this.init(t)}blur(){this.view.dom.blur()}get builtInExtensions(){return!0!==this.options.useBuiltInExtensions?[]:[new fn({inline:this.options.inline}),new kn,new gn]}buttons(t){return this.extensions.buttons(t)}clearContent(t=!1){this.setContent(this.options.emptyDocument,t)}command(t,...e){var i,n;null==(n=(i=this.commands)[t])||n.call(i,...e)}createCommands(){return this.extensions.commands({schema:this.schema,view:this.view})}createDocument(t,e=this.options.parseOptions){if(null===t)return this.schema.nodeFromJSON(this.options.emptyDocument);if("object"==typeof t)try{return this.schema.nodeFromJSON(t)}catch(i){return window.console.warn("Invalid content.","Passed value:",t,"Error:",i),this.schema.nodeFromJSON(this.options.emptyDocument)}if("string"==typeof t){const i=`

        ${t}
        `,n=(new window.DOMParser).parseFromString(i,"text/html").body.firstElementChild;return y.fromSchema(this.schema).parse(n,e)}return!1}createEvents(){const t=this.options.events??{};for(const[e,i]of Object.entries(t))this.on(e,i);return t}createExtensions(){return new pn([...this.builtInExtensions,...this.options.extensions],this)}createFocusEvents(){const t=(t,e,i=!0)=>{this.focused=i,this.emit(i?"focus":"blur",{event:e,state:t.state,view:t});const n=this.state.tr.setMeta("focused",i);this.view.dispatch(n)};return new i({props:{attributes:{tabindex:0},handleDOMEvents:{focus:(e,i)=>t(e,i,!0),blur:(e,i)=>t(e,i,!1)}}})}createInputRules(){return this.extensions.inputRules({schema:this.schema,excludedExtensions:this.options.disableInputRules})}createKeymaps(){return this.extensions.keymaps({schema:this.schema})}createMarks(){return this.extensions.marks}createNodes(){return this.extensions.nodes}createPasteRules(){return this.extensions.pasteRules({schema:this.schema,excludedExtensions:this.options.disablePasteRules})}createPlugins(){return this.extensions.plugins({schema:this.schema})}createSchema(){return new $({topNode:this.options.topNode,nodes:this.nodes,marks:this.marks})}createState(){return w.create({schema:this.schema,doc:this.createDocument(this.options.content),plugins:[...this.plugins,x({rules:this.inputRules}),...this.pasteRules,...this.keymaps,v({Backspace:O}),v(A),this.createFocusEvents()]})}createView(){return new _(this.element,{dispatchTransaction:this.dispatchTransaction.bind(this),attributes:{class:"k-text"},editable:()=>this.options.editable,handlePaste:(t,e)=>{if("function"==typeof this.events.paste){const t=e.clipboardData.getData("text/html"),i=e.clipboardData.getData("text/plain");if(!0===this.events.paste(e,t,i))return!0}},handleDrop:(...t)=>{this.emit("drop",...t)},state:this.createState()})}destroy(){this.view&&this.view.destroy()}dispatchTransaction(t){const e=this.state,i=this.state.apply(t);this.view.updateState(i),this.setActiveNodesAndMarks();const n={editor:this,getHTML:this.getHTML.bind(this),getJSON:this.getJSON.bind(this),state:this.state,transaction:t};this.emit("transaction",n),!t.docChanged&&t.getMeta("preventUpdate")||this.emit("update",n);const{from:s,to:o}=this.state.selection,l=!e||!e.selection.eq(i.selection);this.emit(i.selection.empty?"deselect":"select",{...n,from:s,hasChanged:l,to:o})}focus(t=null){if(this.view.focused&&null===t||!1===t)return;const{from:e,to:i}=this.selectionAtPosition(t);this.setSelection(e,i),setTimeout((()=>this.view.focus()),10)}getHTML(t=this.state.doc.content){const e=document.createElement("div"),i=S.fromSchema(this.schema).serializeFragment(t);return e.appendChild(i),this.options.inline&&e.querySelector("p")?e.querySelector("p").innerHTML:e.innerHTML}getHTMLStartToSelection(){const t=this.state.doc.slice(0,this.selection.head).content;return this.getHTML(t)}getHTMLSelectionToEnd(){const t=this.state.doc.slice(this.selection.head).content;return this.getHTML(t)}getHTMLStartToSelectionToEnd(){return[this.getHTMLStartToSelection(),this.getHTMLSelectionToEnd()]}getJSON(){return this.state.doc.toJSON()}getMarkAttrs(t=null){return this.activeMarkAttrs[t]}getSchemaJSON(){return JSON.parse(JSON.stringify({nodes:this.nodes,marks:this.marks}))}init(t={}){this.options={...this.defaults,...t},this.element=this.options.element,this.focused=!1,this.events=this.createEvents(),this.extensions=this.createExtensions(),this.nodes=this.createNodes(),this.marks=this.createMarks(),this.schema=this.createSchema(),this.keymaps=this.createKeymaps(),this.inputRules=this.createInputRules(),this.pasteRules=this.createPasteRules(),this.plugins=this.createPlugins(),this.view=this.createView(),this.commands=this.createCommands(),this.setActiveNodesAndMarks(),!1!==this.options.autofocus&&this.focus(this.options.autofocus),this.emit("init",{view:this.view,state:this.state}),this.extensions.view=this.view,this.setContent(this.options.content,!0)}insertText(t,e=!1){const{tr:i}=this.state,n=i.insertText(t);if(this.view.dispatch(n),e){const e=i.selection.from,n=e-t.length;this.setSelection(n,e)}}isEditable(){return this.options.editable}isEmpty(){if(this.state)return 0===this.state.doc.textContent.length}get isActive(){return Object.entries({...this.activeMarks,...this.activeNodes}).reduce(((t,[e,i])=>({...t,[e]:(t={})=>i(t)})),{})}removeMark(t){if(this.schema.marks[t])return cn.removeMark(this.schema.marks[t])(this.state,this.view.dispatch)}get selection(){return this.state.selection}get selectionAtEnd(){return C.atEnd(this.state.doc)}get selectionIsAtEnd(){return this.selection.head===this.selectionAtEnd.head}get selectionAtStart(){return C.atStart(this.state.doc)}get selectionIsAtStart(){return this.selection.head===this.selectionAtStart.head}selectionAtPosition(t=null){return null===t?this.selection:"start"===t||!0===t?this.selectionAtStart:"end"===t?this.selectionAtEnd:{from:t,to:t}}setActiveNodesAndMarks(){this.activeMarks=Object.values(this.schema.marks).filter((t=>cn.markIsActive(this.state,t))).map((t=>t.name)),this.activeMarkAttrs=Object.entries(this.schema.marks).reduce(((t,[e,i])=>({...t,[e]:cn.getMarkAttrs(this.state,i)})),{}),this.activeNodes=Object.values(this.schema.nodes).filter((t=>cn.nodeIsActive(this.state,t))).map((t=>t.name)),this.activeNodeAttrs=Object.entries(this.schema.nodes).reduce(((t,[e,i])=>({...t,[e]:cn.getNodeAttrs(this.state,i)})),{})}setContent(t={},e=!1,i){const{doc:n,tr:s}=this.state,o=this.createDocument(t,i),l=s.replaceWith(0,n.content.size,o).setMeta("preventUpdate",!e);this.view.dispatch(l)}setSelection(t=0,e=0){const{doc:i,tr:n}=this.state,s=cn.minMax(t,0,i.content.size),o=cn.minMax(e,0,i.content.size),l=C.create(i,s,o),r=n.setSelection(l);this.view.dispatch(r)}get state(){var t;return null==(t=this.view)?void 0:t.state}toggleMark(t){if(this.schema.marks[t])return cn.toggleMark(this.schema.marks[t])(this.state,this.view.dispatch)}updateMark(t,e){if(this.schema.marks[t])return cn.updateMark(this.schema.marks[t],e)(this.state,this.view.dispatch)}}class vn extends hn{command(){return()=>{}}remove(){this.editor.removeMark(this.name)}get schema(){return{}}get type(){return"mark"}toggle(){return this.editor.toggleMark(this.name)}update(t){this.editor.updateMark(this.name,t)}}class yn extends vn{get button(){return{icon:"bold",label:window.panel.$t("toolbar.button.bold")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/(?:\*\*|__)([^*_]+)(?:\*\*|__)$/,t)]}keys(){return{"Mod-b":()=>this.toggle()}}get name(){return"bold"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/(?:\*\*|__)([^*_]+)(?:\*\*|__)/g,t)]}get schema(){return{parseDOM:[{tag:"strong"},{tag:"b",getAttrs:t=>"normal"!==t.style.fontWeight&&null},{style:"font-weight",getAttrs:t=>/^(bold(er)?|[5-9]\d{2,})$/.test(t)&&null}],toDOM:()=>["strong",0]}}}class $n extends vn{get button(){return{icon:"clear",label:window.panel.$t("toolbar.button.clear")}}commands(){return()=>this.clear()}clear(){const{state:t}=this.editor,{from:e,to:i}=t.tr.selection;for(const n of this.editor.activeMarks){const s=t.schema.marks[n],o=this.editor.state.tr.removeMark(e,i,s);this.editor.view.dispatch(o)}}get name(){return"clear"}}let wn=class extends vn{get button(){return{icon:"code",label:window.panel.$t("toolbar.button.code")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/(?:`)([^`]+)(?:`)$/,t)]}keys(){return{"Mod-`":()=>this.toggle()}}get name(){return"code"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/(?:`)([^`]+)(?:`)/g,t)]}get schema(){return{excludes:"_",parseDOM:[{tag:"code"}],toDOM:()=>["code",0]}}};class xn extends vn{get button(){return{icon:"email",label:window.panel.$t("toolbar.button.email")}}commands(){return{email:t=>{if(t.altKey||t.metaKey)return this.remove();this.editor.emit("email",this.editor)},insertEmail:(t={})=>{const{selection:e}=this.editor.state;if(e.empty&&this.editor.insertText(t.href,!0),t.href)return this.update(t)},removeEmail:()=>this.remove(),toggleEmail:(t={})=>{var e;(null==(e=t.href)?void 0:e.length)>0?this.editor.command("insertEmail",t):this.editor.command("removeEmail")}}}get defaults(){return{target:null}}get name(){return"email"}pasteRules({type:t,utils:e}){return[e.pasteRule(/^[\w-.]+@([\w-]+\.)+[\w-]{2,4}$/gi,t,(t=>({href:t})))]}plugins(){return[{props:{handleClick:(t,e,i)=>{const n=this.editor.getMarkAttrs("email");n.href&&!0===i.altKey&&i.target instanceof HTMLAnchorElement&&(i.stopPropagation(),window.open(n.href))}}}]}get schema(){return{attrs:{href:{default:null},title:{default:null}},inclusive:!1,parseDOM:[{tag:"a[href^='mailto:']",getAttrs:t=>({href:t.getAttribute("href").replace("mailto:",""),title:t.getAttribute("title")})}],toDOM:t=>["a",{...t.attrs,href:"mailto:"+t.attrs.href},0]}}}class _n extends vn{get button(){return{icon:"italic",label:window.panel.$t("toolbar.button.italic")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/(?:^|\s)((?:\*)((?:[^*]+))(?:\*))$/,t),e.markInputRule(/(?:^|\s)((?:_)((?:[^_]+))(?:_))$/,t)]}keys(){return{"Mod-i":()=>this.toggle()}}get name(){return"italic"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/_([^_]+)_/g,t),e.markPasteRule(/\*([^*]+)\*/g,t)]}get schema(){return{parseDOM:[{tag:"i"},{tag:"em"},{style:"font-style=italic"}],toDOM:()=>["em",0]}}}let Sn=class extends vn{get button(){return{icon:"url",label:window.panel.$t("toolbar.button.link")}}commands(){return{link:t=>{if(t.altKey||t.metaKey)return this.remove();this.editor.emit("link",this.editor)},insertLink:(t={})=>{const{selection:e}=this.editor.state;if(e.empty&&!1===this.editor.activeMarks.includes("link")&&this.editor.insertText(t.href,!0),t.href)return this.update(t)},removeLink:()=>this.remove(),toggleLink:(t={})=>{var e;(null==(e=t.href)?void 0:e.length)>0?this.editor.command("insertLink",t):this.editor.command("removeLink")}}}get defaults(){return{target:null}}get name(){return"link"}pasteRules({type:t,utils:e}){return[e.pasteRule(/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z]{2,}\b([-a-zA-Z0-9@:%_+.~#?&//=,]*)/gi,t,(t=>({href:t})))]}plugins(){return[{props:{handleClick:(t,e,i)=>{const n=this.editor.getMarkAttrs("link");n.href&&!0===i.altKey&&i.target instanceof HTMLAnchorElement&&(i.stopPropagation(),window.open(n.href,n.target))}}}]}get schema(){return{attrs:{href:{default:null},target:{default:null},title:{default:null}},inclusive:!1,parseDOM:[{tag:"a[href]:not([href^='mailto:'])",getAttrs:t=>({href:t.getAttribute("href"),target:t.getAttribute("target"),title:t.getAttribute("title")})}],toDOM:t=>["a",{...t.attrs},0]}}};class Cn extends vn{get button(){return{icon:"strikethrough",label:window.panel.$t("toolbar.button.strike")}}commands(){return()=>this.toggle()}inputRules({type:t,utils:e}){return[e.markInputRule(/~([^~]+)~$/,t)]}keys(){return{"Mod-d":()=>this.toggle()}}get name(){return"strike"}pasteRules({type:t,utils:e}){return[e.markPasteRule(/~([^~]+)~/g,t)]}get schema(){return{parseDOM:[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration",getAttrs:t=>"line-through"===t}],toDOM:()=>["s",0]}}}let On=class extends vn{get button(){return{icon:"superscript",label:window.panel.$t("toolbar.button.sup")}}commands(){return()=>this.toggle()}get name(){return"sup"}get schema(){return{parseDOM:[{tag:"sup"}],toDOM:()=>["sup",0]}}};class An extends vn{get button(){return{icon:"subscript",label:window.panel.$t("toolbar.button.sub")}}commands(){return()=>this.toggle()}get name(){return"sub"}get schema(){return{parseDOM:[{tag:"sub"}],toDOM:()=>["sub",0]}}}class Mn extends vn{get button(){return{icon:"underline",label:window.panel.$t("toolbar.button.underline")}}commands(){return()=>this.toggle()}keys(){return{"Mod-u":()=>this.toggle()}}get name(){return"underline"}get schema(){return{parseDOM:[{tag:"u"},{style:"text-decoration",getAttrs:t=>"underline"===t}],toDOM:()=>["u",0]}}}class jn extends mn{get button(){return{id:this.name,icon:"list-bullet",label:window.panel.$t("toolbar.button.ul"),name:this.name,when:["listItem","bulletList","orderedList","paragraph"]}}commands({type:t,schema:e,utils:i}){return()=>i.toggleList(t,e.nodes.listItem)}inputRules({type:t,utils:e}){return[e.wrappingInputRule(/^\s*([-+*])\s$/,t)]}keys({type:t,schema:e,utils:i}){return{"Shift-Ctrl-8":i.toggleList(t,e.nodes.listItem)}}get name(){return"bulletList"}get schema(){return{content:"listItem+",group:"block",parseDOM:[{tag:"ul"}],toDOM:()=>["ul",0]}}}class In extends mn{commands({utils:t,type:e}){return()=>this.createHardBreak(t,e)}createHardBreak(t,e){return t.chainCommands(t.exitCode,((t,i)=>(i(t.tr.replaceSelectionWith(e.create()).scrollIntoView()),!0)))}get defaults(){return{enter:!1,text:!1}}keys({utils:t,type:e}){const i=this.createHardBreak(t,e);let n={"Mod-Enter":i,"Shift-Enter":i};return this.options.enter&&(n.Enter=i),n}get name(){return"hardBreak"}get schema(){return{inline:!0,group:"inline",selectable:!1,parseDOM:[{tag:"br"}],toDOM:()=>["br"]}}}class Tn extends mn{get button(){const t=this.options.levels.map((t=>({id:`h${t}`,command:`h${t}`,icon:`h${t}`,label:window.panel.$t("toolbar.button.heading."+t),attrs:{level:t},name:this.name,when:["heading","paragraph"]})));return t[t.length-1].separator=!0,t}commands({type:t,schema:e,utils:i}){let n={toggleHeading:n=>i.toggleBlockType(t,e.nodes.paragraph,n)};for(const s of this.options.levels)n[`h${s}`]=()=>i.toggleBlockType(t,e.nodes.paragraph,{level:s});return n}get defaults(){return{levels:[1,2,3,4,5,6]}}inputRules({type:t,utils:e}){return this.options.levels.map((i=>e.textblockTypeInputRule(new RegExp(`^(#{1,${i}})\\s$`),t,(()=>({level:i})))))}keys({type:t,utils:e}){return this.options.levels.reduce(((i,n)=>({...i,[`Shift-Ctrl-${n}`]:e.setBlockType(t,{level:n})})),{})}get name(){return"heading"}get schema(){return{attrs:{level:{default:1}},content:"inline*",group:"block",defining:!0,draggable:!1,parseDOM:this.options.levels.map((t=>({tag:`h${t}`,attrs:{level:t}}))),toDOM:t=>[`h${t.attrs.level}`,0]}}}class En extends mn{commands({type:t}){return()=>(e,i)=>i(e.tr.replaceSelectionWith(t.create()))}inputRules({type:t,utils:e}){return[e.nodeInputRule(/^(?:---|___\s|\*\*\*\s)$/,t)]}get name(){return"horizontalRule"}get schema(){return{group:"block",parseDOM:[{tag:"hr"}],toDOM:()=>["hr"]}}}class Ln extends mn{keys({type:t,utils:e}){return{Enter:e.splitListItem(t),"Shift-Tab":e.liftListItem(t),Tab:e.sinkListItem(t)}}get name(){return"listItem"}get schema(){return{content:"paragraph block*",defining:!0,draggable:!1,parseDOM:[{tag:"li"}],toDOM:()=>["li",0]}}}class Dn extends mn{get button(){return{id:this.name,icon:"list-numbers",label:window.panel.$t("toolbar.button.ol"),name:this.name,when:["listItem","bulletList","orderedList","paragraph"],separator:!0}}commands({type:t,schema:e,utils:i}){return()=>i.toggleList(t,e.nodes.listItem)}inputRules({type:t,utils:e}){return[e.wrappingInputRule(/^(\d+)\.\s$/,t,(t=>({order:+t[1]})),((t,e)=>e.childCount+e.attrs.order===+t[1]))]}keys({type:t,schema:e,utils:i}){return{"Shift-Ctrl-9":i.toggleList(t,e.nodes.listItem)}}get name(){return"orderedList"}get schema(){return{attrs:{order:{default:1}},content:"listItem+",group:"block",parseDOM:[{tag:"ol",getAttrs:t=>({order:t.hasAttribute("start")?+t.getAttribute("start"):1})}],toDOM:t=>1===t.attrs.order?["ol",0]:["ol",{start:t.attrs.order},0]}}}class Bn extends mn{get button(){return{id:this.name,icon:"quote",label:window.panel.$t("field.blocks.quote.name"),name:this.name}}commands({type:t,utils:e}){return()=>e.toggleWrap(t)}inputRules({type:t,utils:e}){return[e.wrappingInputRule(/^\s*>\s$/,t)]}keys({utils:t}){return{"Shift-Tab":(e,i)=>t.lift(e,i)}}get name(){return"quote"}get schema(){return{content:"block+",group:"block",defining:!0,draggable:!1,parseDOM:[{tag:"blockquote"}],toDOM:()=>["blockquote",0]}}}let qn=class extends hn{commands(){return{undo:()=>M,redo:()=>j,undoDepth:()=>I,redoDepth:()=>T}}get defaults(){return{depth:"",newGroupDelay:""}}keys(){return{"Mod-z":M,"Mod-y":j,"Shift-Mod-z":j,"Mod-я":M,"Shift-Mod-я":j}}get name(){return"history"}plugins(){return[E({depth:this.options.depth,newGroupDelay:this.options.newGroupDelay})]}};class Pn extends hn{commands(){return{insertHtml:t=>(e,i)=>{let n=document.createElement("div");n.innerHTML=t.trim();const s=y.fromSchema(e.schema).parse(n);i(e.tr.replaceSelectionWith(s).scrollIntoView())}}}}class Nn extends hn{keys(){const t={};for(const e in this.options)t[e]=()=>(this.options[e](),!0);return t}}let zn=class extends hn{constructor(t){super(),this.writer=t}get component(){return this.writer.$refs.toolbar}init(){this.editor.on("deselect",(({event:t})=>{var e;return null==(e=this.component)?void 0:e.close(t)})),this.editor.on("select",(({hasChanged:t})=>{var e;!1!==t&&(null==(e=this.component)||e.open())}))}get type(){return"toolbar"}};const Fn={mixins:[V,W,lt,at],props:{breaks:Boolean,code:Boolean,emptyDocument:{type:Object,default:()=>({type:"doc",content:[]})},extensions:Array,headings:{default:()=>[1,2,3,4,5,6],type:[Array,Boolean]},inline:Boolean,keys:Object,marks:{type:[Array,Boolean],default:!0},nodes:{type:[Array,Boolean],default:()=>["heading","bulletList","orderedList"]},paste:{type:Function,default:()=>()=>!1},toolbar:{type:Object,default:()=>({inline:!0})},value:{type:String,default:""}}};const Rn=ut({mixins:[Fn],data(){return{editor:null,json:{},html:this.value,isEmpty:!0}},computed:{isCursorAtEnd(){return this.editor.selectionIsAtEnd},isCursorAtStart(){return this.editor.selectionIsAtStart},toolbarOptions(){return{marks:Array.isArray(this.marks)?this.marks:void 0,...this.toolbar,editor:this.editor}}},watch:{value(t,e){t!==e&&t!==this.html&&(this.html=t,this.editor.setContent(this.html))}},mounted(){this.editor=new bn({autofocus:this.autofocus,content:this.value,editable:!this.disabled,element:this.$el,emptyDocument:this.emptyDocument,parseOptions:{preserveWhitespace:!0},events:{link:t=>{this.$panel.dialog.open({component:"k-link-dialog",props:{value:t.getMarkAttrs("link")},on:{cancel:()=>t.focus(),submit:e=>{this.$panel.dialog.close(),t.command("toggleLink",e)}}})},email:t=>{this.$panel.dialog.open({component:"k-email-dialog",props:{value:this.editor.getMarkAttrs("email")},on:{cancel:()=>t.focus(),submit:e=>{this.$panel.dialog.close(),t.command("toggleEmail",e)}}})},paste:this.paste,update:t=>{if(!this.editor)return;const e=JSON.stringify(this.editor.getJSON());e!==JSON.stringify(this.json)&&(this.json=e,this.isEmpty=t.editor.isEmpty(),this.html=t.editor.getHTML(),this.isEmpty&&(0===t.editor.activeNodes.length||t.editor.activeNodes.includes("paragraph"))&&(this.html=""),this.$emit("input",this.html))}},extensions:[...this.createMarks(),...this.createNodes(),new Nn(this.keys),new qn,new Pn,new zn(this),...this.extensions||[]],inline:this.inline}),this.isEmpty=this.editor.isEmpty(),this.json=this.editor.getJSON(),this.$panel.events.on("click",this.onBlur),this.$panel.events.on("focus",this.onBlur)},beforeDestroy(){this.editor.destroy(),this.$panel.events.off("click",this.onBlur),this.$panel.events.off("focus",this.onBlur)},methods:{command(t,...e){this.editor.command(t,...e)},createMarks(){return this.filterExtensions({clear:new $n,code:new wn,underline:new Mn,strike:new Cn,link:new Sn,email:new xn,bold:new yn,italic:new _n,sup:new On,sub:new An,...this.createMarksFromPanelPlugins()},this.marks)},createMarksFromPanelPlugins(){const t=window.panel.plugins.writerMarks??{},e={};for(const i in t)e[i]=Object.create(vn.prototype,Object.getOwnPropertyDescriptors({name:i,...t[i]}));return e},createNodes(){const t=new In({text:!0,enter:this.inline});return!0===this.inline?[t]:this.filterExtensions({bulletList:new jn,orderedList:new Dn,heading:new Tn({levels:this.headings}),horizontalRule:new En,listItem:new Ln,quote:new Bn,...this.createNodesFromPanelPlugins()},this.nodes,((e,i)=>((e.includes("bulletList")||e.includes("orderedList"))&&i.push(new Ln),i.push(t),i)))},createNodesFromPanelPlugins(){const t=window.panel.plugins.writerNodes??{},e={};for(const i in t)e[i]=Object.create(mn.prototype,Object.getOwnPropertyDescriptors({name:i,...t[i]}));return e},getHTML(){return this.editor.getHTML()},filterExtensions(t,e,i){!1===e?e=[]:!0!==e&&!1!==Array.isArray(e)||(e=Object.keys(t));let n=[];for(const s in t)e.includes(s)&&n.push(t[s]);return"function"==typeof i&&(n=i(e,n)),n},focus(){this.editor.focus()},getSplitContent(){return this.editor.getHTMLStartToSelectionToEnd()},onBlur(t){var e;!1===this.$el.contains(t.target)&&(null==(e=this.$refs.toolbar)||e.close())},onCommand(t,...e){this.editor.command(t,...e)}}},(function(){var t=this,e=t._self._c;return e("div",{directives:[{name:"direction",rawName:"v-direction"}],ref:"editor",staticClass:"k-writer",attrs:{"data-disabled":t.disabled,"data-empty":t.isEmpty,"data-placeholder":t.placeholder,"data-toolbar-inline":Boolean(t.toolbar.inline),spellcheck:t.spellcheck}},[t.editor&&!t.disabled?e("k-writer-toolbar",t._b({ref:"toolbar",on:{command:t.onCommand}},"k-writer-toolbar",t.toolbarOptions,!1)):t._e()],1)}),[],!1,null,null,null,null).exports,Yn={mixins:[je,Fn,et,it],computed:{counterValue(){const t=this.$helper.string.stripHTML(this.value);return this.$helper.string.unescapeHTML(t)}}};const Un=ut({mixins:[Ie,Yn],watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){this.$refs.input.focus()},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)}},validations(){return{counterValue:{required:!this.required||t.required,minLength:!this.minlength||t.minLength(this.minlength),maxLength:!this.maxlength||t.maxLength(this.maxlength)}}}},(function(){var t=this;return(0,t._self._c)("k-writer",t._b({ref:"input",staticClass:"k-writer-input",on:{input:function(e){return t.$emit("input",e)}}},"k-writer",t.$props,!1))}),[],!1,null,null,null,null).exports;class Hn extends fn{get schema(){return{content:this.options.nodes.join("|")}}}const Vn={mixins:[Yn],inheritAttrs:!1,props:{nodes:{type:Array,default:()=>["bulletList","orderedList"]}}};const Kn=ut({mixins:[Ie,Vn],data(){return{list:this.value,html:this.value}},computed:{listExtensions(){return[new Hn({inline:!0,nodes:this.nodes})]}},watch:{value(t){t!==this.html&&(this.list=t,this.html=t)}},methods:{focus(){this.$refs.input.focus()},onInput(t){let e=(new DOMParser).parseFromString(t,"text/html").querySelector("ul, ol");e&&0!==e.textContent.trim().length?(this.list=t,this.html=t.replace(/(

        |<\/p>)/gi,""),this.$emit("input",this.html)):this.$emit("input",this.list="")}}},(function(){var t=this;return(0,t._self._c)("k-writer",t._b({ref:"input",staticClass:"k-list-input",attrs:{extensions:t.listExtensions,value:t.list},on:{input:t.onInput}},"k-writer",t.$props,!1))}),[],!1,null,null,null,null).exports;const Wn=ut({mixins:[Fe,Ue,Vn],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-list-field",attrs:{input:t._uid,counter:!1}},"k-field",t.$props,!1),[e("k-input",t._b({ref:"input",attrs:{id:t._uid,type:"list",theme:"field"},on:{input:function(e){return t.$emit("input",e)}}},"k-input",t.$props,!1))],1)}),[],!1,null,null,null,null).exports,Jn={mixins:[W,X,st],inheritAttrs:!1,props:{layout:String,sort:{default:!1,type:Boolean},value:{default:()=>[],type:Array}}};const Gn=ut({mixins:[Jn],props:{draggable:{default:!0,type:Boolean}},data:()=>({tags:[]}),computed:{dragOptions(){return{delay:1,disabled:!this.isDraggable,draggable:".k-tag",handle:".k-tag-text"}},isDraggable(){return!0!==this.sort&&!1!==this.draggable&&0!==this.tags.length&&!0!==this.disabled}},watch:{value:{handler(){let t=this.$helper.object.clone(this.value);if(!0===this.sort){const e=[];for(const i of this.options){const n=t.indexOf(i.value);-1!==n&&(e.push(i),t.splice(n,1))}e.push(...t),t=e}this.tags=t.map(this.tag).filter((t=>t))},immediate:!0}},methods:{edit(t,e,i){!1===this.disabled&&this.$emit("edit",t,e,i)},focus(t="last"){this.$refs.navigate.move(t)},index(t){return this.tags.findIndex((e=>e.value===t.value))},input(){this.$emit("input",this.tags.map((t=>t.value)))},navigate(t){this.focus(t)},remove(t){this.tags.length<=1?this.navigate("last"):this.navigate("prev"),this.tags.splice(t,1),this.input()},option(t){return this.options.find((e=>e.value===t.value))},select(){this.focus()},tag(t){"object"!=typeof t&&(t={value:t});const e=this.option(t);return e||{text:this.$helper.string.escapeHTML(t.text??t.value),value:t.value}}}},(function(){var t=this,e=t._self._c;return e("k-navigate",{ref:"navigate",attrs:{axis:"list"===t.layout?"y":"x",select:":where(.k-tag, .k-tags-navigatable):not(:disabled)"}},[e("k-draggable",{staticClass:"k-tags",attrs:{list:t.tags,options:t.dragOptions,"data-layout":t.layout},on:{end:t.input},scopedSlots:t._u([{key:"footer",fn:function(){return[t._t("default")]},proxy:!0}],null,!0)},t._l(t.tags,(function(i,n){return e("k-tag",{key:n,attrs:{disabled:t.disabled,image:i.image,removable:!t.disabled,name:"tag"},on:{remove:function(e){return t.remove(n,i)}},nativeOn:{click:function(t){t.stopPropagation()},keypress:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.edit(n,i,e)},dblclick:function(e){return t.edit(n,i,e)}}},[e("span",{domProps:{innerHTML:t._s(i.text)}})])})),1)],1)}),[],!1,null,null,null,null).exports,Xn={mixins:[nt,rt,Jn,Te],props:{value:{default:()=>[],type:Array}},watch:{value:{handler(){this.$emit("invalid",this.$v.$invalid,this.$v)},immediate:!0}},validations(){return{value:{required:!this.required||t.required,minLength:!this.min||t.minLength(this.min),maxLength:!this.max||t.maxLength(this.max)}}},methods:{open(){this.$refs.dropdown.open(this.$el)}}};const Zn=ut({mixins:[Ie,Xn]},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-multiselect-input"},[e("k-tags",t._b({ref:"tags",on:{input:function(e){return t.$emit("input",e)}},nativeOn:{click:function(e){return e.stopPropagation(),t.open.apply(null,arguments)}}},"k-tags",t.$props,!1),[!t.max||t.value.length({editing:null}),computed:{creatableOptions(){return this.options.filter((t=>!1===this.value.includes(t.value)))},picklist(){return{disabled:this.disabled,create:this.showCreate,ignore:this.ignore,min:this.min,max:this.max,search:this.showSearch}},replacableOptions(){return this.options.filter((t=>{var e;return!1===this.value.includes(t.value)||t.value===(null==(e=this.editing)?void 0:e.tag.value)}))},showCreate(){return"options"!==this.accept&&(!this.editing||{submit:this.$t("replace.with")})},showSearch(){return!1!==this.search&&(this.editing?{placeholder:this.$t("replace.with"),...this.search}:"options"===this.accept?{placeholder:this.$t("filter"),...this.search}:this.search)}},methods:{create(t){const e=this.$refs.tags.tag(t);if(!0===this.isAllowed(e)){const t=this.$helper.object.clone(this.value);t.push(e.value),this.$emit("input",t)}this.$refs.create.close()},async edit(t,e){this.editing={index:t,tag:e},this.$refs.replace.open()},focus(){this.$refs.create.open()},isAllowed(t){return"object"==typeof t&&0!==t.value.trim().length&&(!("options"===this.accept&&!this.$refs.tags.option(t))&&!0!==this.value.includes(t.value))},pick(t){this.$emit("input",t),this.$refs.create.close()},replace(t){const{index:e}=this.editing,i=this.$refs.tags.tag(t);if(this.$refs.replace.close(),this.editing=null,!1===this.isAllowed(i))return!1;const n=this.$helper.object.clone(this.value);n.splice(e,1,i.value),this.$emit("input",n),this.$refs.tags.navigate(e)},toggle(t){return!(t.metaKey||t.altKey||t.ctrlKey)&&("ArrowDown"===t.key?(this.$refs.create.open(),void t.preventDefault()):void(String.fromCharCode(t.keyCode).match(/(\w)/g)&&this.$refs.create.open()))}}},(function(){var t,e=this,i=e._self._c;return i("div",{staticClass:"k-tags-input"},[i("k-tags",e._b({ref:"tags",on:{edit:e.edit,input:function(t){return e.$emit("input",t)}},nativeOn:{click:function(t){var i,n;t.stopPropagation(),null==(n=null==(i=e.$refs.toggle)?void 0:i.$el)||n.click()}}},"k-tags",e.$props,!1),[!e.max||e.value.lengththis.onInput(t.target.value),blur:this.onBlur}}},watch:{value(t){this.number=t},number:{immediate:!0,handler(){this.onInvalid()}}},mounted(){this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{decimals(){const t=Number(this.step??0);return Math.floor(t)===t?0:-1!==t.toString().indexOf("e")?parseInt(t.toFixed(16).split(".")[1].split("").reverse().join("")).toString().length:t.toString().split(".")[1].length??0},format(t){if(isNaN(t)||""===t)return"";const e=this.decimals();return t=e?parseFloat(t).toFixed(e):Number.isInteger(this.step)?parseInt(t):parseFloat(t)},clean(){this.number=this.format(this.number)},emit(t){t=parseFloat(t),isNaN(t)&&(t=""),t!==this.value&&this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput(t){this.number=t,this.emit(t)},onBlur(){this.clean(),this.emit(this.number)},select(){this.$refs.input.select()}},validations(){return{value:{required:!this.required||t.required,min:!this.min||t.minValue(this.min),max:!this.max||t.maxValue(this.max)}}}},(function(){var t=this;return(0,t._self._c)("input",t._g(t._b({ref:"input",staticClass:"k-number-input",attrs:{step:t.stepNumber,type:"number"},domProps:{value:t.number},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.ctrlKey?t.clean.apply(null,arguments):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"s",void 0,e.key,void 0)?null:e.metaKey?t.clean.apply(null,arguments):null}]}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,max:t.max,min:t.min,name:t.name,placeholder:t.placeholder,required:t.required},!1),t.listeners))}),[],!1,null,null,null,null).exports;const os=ut({mixins:[Fe,Ue,ns],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-number-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"number"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const ls=ut({mixins:[Fe,Ue],props:{empty:String,fields:[Object,Array],value:[String,Object]},data:()=>({object:{}}),computed:{hasFields(){return this.$helper.object.length(this.fields)>0},isEmpty(){return null===this.object||0===this.$helper.object.length(this.object)},isInvalid(){return!0===this.required&&this.isEmpty}},watch:{value:{handler(t){this.object=this.valueToObject(t)},immediate:!0}},methods:{add(){this.object=this.$helper.field.form(this.fields),this.save(),this.open()},cell(t,e){this.$set(this.object,t,e),this.save()},form(t){const e=this.$helper.field.subfields(this,this.fields);if(t)for(const i in e)e[i].autofocus=i===t;return e},remove(){this.object={},this.save()},open(t){if(this.disabled)return!1;this.$panel.drawer.open({component:"k-form-drawer",props:{breadcrumb:[],icon:"box",tab:"object",tabs:{object:{fields:this.form(t)}},title:this.label,value:this.object},on:{input:t=>{for(const e in t)this.$set(this.object,e,t[e]);this.save()}}})},save(){this.$emit("input",this.object)},valueToObject:t=>"object"!=typeof t?{}:t}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-object-field",scopedSlots:t._u([!t.disabled&&t.hasFields?{key:"options",fn:function(){return[t.isEmpty?e("k-button",{attrs:{icon:"add",size:"xs",variant:"filled"},on:{click:t.add}}):e("k-button",{attrs:{icon:"remove",size:"xs",variant:"filled"},on:{click:t.remove}})]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[t.hasFields?[t.isEmpty?e("k-empty",{attrs:{"data-invalid":t.isInvalid,icon:"box"},on:{click:t.add}},[t._v(" "+t._s(t.empty??t.$t("field.object.empty"))+" ")]):e("table",{staticClass:"k-table k-object-field-table",attrs:{"data-invalid":t.isInvalid}},[e("tbody",[t._l(t.fields,(function(i){return[i.saveable&&t.$helper.field.isVisible(i,t.value)?e("tr",{key:i.name,on:{click:function(e){return t.open(i.name)}}},[e("th",{attrs:{"data-has-button":"","data-mobile":"true"}},[e("button",{attrs:{type:"button"}},[t._v(t._s(i.label))])]),e("k-table-cell",{attrs:{column:i,field:i,mobile:!0,value:t.object[i.name]},on:{input:function(e){return t.cell(i.name,e)}}})],1):t._e()]}))],2)])]:[e("k-empty",{attrs:{icon:"box"}},[t._v(t._s(t.$t("fields.empty")))])]],2)}),[],!1,null,null,null,null).exports;const rs=ut({extends:Gi,type:"pages",computed:{emptyProps(){return{icon:"page",text:this.empty??this.$t("field.pages.empty")}}}},null,null,!1,null,null,null,null).exports,as={mixins:[Hi],props:{autocomplete:{type:String,default:"new-password"},type:{type:String,default:"password"}}};const us=ut({extends:Vi,mixins:[as]},null,null,!1,null,null,null,null).exports;const cs=ut({mixins:[Fe,Ue,as,Di],inheritAttrs:!1,props:{minlength:{type:Number,default:8},icon:{type:String,default:"key"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-password-field",attrs:{input:t._uid,counter:t.counterOptions},scopedSlots:t._u([{key:"options",fn:function(){return[t._t("options")]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"password"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,ds={mixins:[je,st],props:{columns:Number,reset:{default:!0,type:Boolean},theme:String,value:[String,Number,Boolean]}};const ps=ut({mixins:[Ie,ds],computed:{choices(){return this.options.map(((t,e)=>({autofocus:this.autofocus&&0===e,checked:this.value===t.value,disabled:this.disabled||t.disabled,info:t.info,label:t.text,name:this.name??this.id,type:"radio",value:t.value})))}},watch:{value:{handler(){this.validate()},immediate:!0}},methods:{focus(){var t;null==(t=this.$el.querySelector("input"))||t.focus()},select(){this.focus()},toggle(t){t===this.value&&this.reset&&!this.required&&this.$emit("input","")},validate(){this.$emit("invalid",this.$v.$invalid,this.$v)}},validations(){return{value:{required:!this.required||t.required}}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-radio-input k-grid",style:"--columns:"+t.columns,attrs:{"data-variant":"choices"}},t._l(t.choices,(function(i,n){return e("li",{key:n},[e("k-choice-input",t._b({on:{input:function(e){return t.$emit("input",i.value)}},nativeOn:{click:function(e){return e.stopPropagation(),t.toggle(i.value)}}},"k-choice-input",i,!1))],1)})),0)}),[],!1,null,null,null,null).exports;const hs=ut({mixins:[Fe,Ue,ds],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t,e=this,i=e._self._c;return i("k-field",e._b({staticClass:"k-radio-field"},"k-field",e.$props,!1),[(null==(t=e.options)?void 0:t.length)?i("k-radio-input",e._g(e._b({ref:"input",attrs:{id:e._uid,theme:"field"}},"k-radio-input",e.$props,!1),e.$listeners)):i("k-empty",{attrs:{text:e.$t("options.none"),icon:"checklist"}})],1)}),[],!1,null,null,null,null).exports,ms={mixins:[je],props:{default:[Number,String],max:{type:Number,default:100},min:{type:Number,default:0},step:{type:[Number,String],default:1},tooltip:{type:[Boolean,Object],default:()=>({before:null,after:null})},value:[Number,String]}};const fs=ut({mixins:[Ie,ms],computed:{baseline(){return this.min<0?0:this.min},label(){return this.required||this.value||0===this.value?this.format(this.position):"–"},position(){return this.value||0===this.value?this.value:this.default??this.baseline}},watch:{position(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){var t;null==(t=this.$el.querySelector("input"))||t.focus()},format(t){const e=document.lang?document.lang.replace("_","-"):"en",i=this.step.toString().split("."),n=i.length>1?i[1].length:0;return new Intl.NumberFormat(e,{minimumFractionDigits:n}).format(t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput(t){this.$emit("input",t)}},validations(){return{position:{required:!this.required||t.required,min:!this.min||t.minValue(this.min),max:!this.max||t.maxValue(this.max)}}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-range-input",attrs:{"data-disabled":t.disabled}},[e("input",t._b({ref:"range",attrs:{type:"range"},domProps:{value:t.position},on:{input:function(e){return t.$emit("input",e.target.valueAsNumber)}}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,max:t.max,min:t.min,name:t.name,required:t.required,step:t.step},!1)),t.tooltip?e("output",{staticClass:"k-range-input-tooltip",attrs:{for:t.id}},[t.tooltip.before?e("span",{staticClass:"k-range-input-tooltip-before"},[t._v(t._s(t.tooltip.before))]):t._e(),e("span",{staticClass:"k-range-input-tooltip-text"},[t._v(t._s(t.label))]),t.tooltip.after?e("span",{staticClass:"k-range-input-tooltip-after"},[t._v(t._s(t.tooltip.after))]):t._e()]):t._e()])}),[],!1,null,null,null,null).exports;const gs=ut({mixins:[Ue,Fe,ms],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-range-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"range"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,ks={mixins:[je,st,lt],props:{ariaLabel:String,default:String,empty:{type:[Boolean,String],default:!0},value:{type:[String,Number,Boolean],default:""}}};const bs=ut({mixins:[Ie,ks],data(){return{selected:this.value,listeners:{...this.$listeners,click:t=>this.onClick(t),change:t=>this.onInput(t.target.value),input:()=>{}}}},computed:{emptyOption(){return this.placeholder??"—"},hasEmptyOption(){return!1!==this.empty&&!(this.required&&this.default)},isEmpty(){return null===this.selected||void 0===this.selected||""===this.selected},label(){const t=this.text(this.selected);return""===this.selected||null===this.selected||null===t?this.emptyOption:t}},watch:{value(t){this.selected=t,this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){this.$refs.input.focus()},onClick(t){t.stopPropagation(),this.$emit("click",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onInput(t){this.selected=t,this.$emit("input",this.selected)},select(){this.focus()},text(t){let e=null;for(const i of this.options)i.value==t&&(e=i.text);return e}},validations(){return{selected:{required:!this.required||t.required}}}},(function(){var t=this,e=t._self._c;return e("span",{staticClass:"k-select-input",attrs:{"data-disabled":t.disabled,"data-empty":t.isEmpty}},[e("select",t._g({ref:"input",staticClass:"k-select-input-native",attrs:{id:t.id,autofocus:t.autofocus,"aria-label":t.ariaLabel,disabled:t.disabled,name:t.name,required:t.required},domProps:{value:t.selected}},t.listeners),[t.hasEmptyOption?e("option",{attrs:{disabled:t.required,value:""}},[t._v(" "+t._s(t.emptyOption)+" ")]):t._e(),t._l(t.options,(function(i){return e("option",{key:i.value,attrs:{disabled:i.disabled},domProps:{value:i.value}},[t._v(" "+t._s(i.text)+" ")])}))],2),t._v(" "+t._s(t.label)+" ")])}),[],!1,null,null,null,null).exports;const vs=ut({mixins:[Fe,Ue,ks],inheritAttrs:!1,props:{icon:{type:String,default:"angle-down"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-select-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"select"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,ys={mixins:[Hi],props:{allow:{type:String,default:""},formData:{type:Object,default:()=>({})},sync:{type:String}}};const $s=ut({extends:Vi,mixins:[ys],data(){return{slug:this.sluggify(this.value),slugs:this.$panel.language.rules??this.$panel.system.slugs,syncValue:null}},watch:{formData:{handler(t){return!this.disabled&&(!(!this.sync||void 0===t[this.sync])&&(t[this.sync]!=this.syncValue&&(this.syncValue=t[this.sync],void this.onInput(this.sluggify(this.syncValue)))))},deep:!0,immediate:!0},value(t){(t=this.sluggify(t))!==this.slug&&(this.slug=t,this.$emit("input",this.slug))}},methods:{sluggify(t){return this.$helper.slug(t,[this.slugs,this.$panel.system.ascii],this.allow)},onInput(t){this.slug=this.sluggify(t),this.$emit("input",this.slug)}}},(function(){var t=this;return(0,t._self._c)("input",t._g(t._b({directives:[{name:"direction",rawName:"v-direction"}],ref:"input",staticClass:"k-text-input",attrs:{autocomplete:"off",spellcheck:"false",type:"text"},domProps:{value:t.slug}},"input",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,pattern:t.pattern,placeholder:t.placeholder,required:t.required},!1),t.listeners))}),[],!1,null,null,null,null).exports;const ws=ut({mixins:[Fe,Ue,ys],inheritAttrs:!1,props:{icon:{type:String,default:"url"},path:{type:String},wizard:{type:[Boolean,Object],default:!1}},data(){return{slug:this.value}},computed:{preview(){return void 0!==this.help?this.help:void 0!==this.path?this.path+this.value:null}},watch:{value(){this.slug=this.value}},methods:{focus(){this.$refs.input.focus()},onWizard(){var t;this.formData[null==(t=this.wizard)?void 0:t.field]&&(this.slug=this.formData[this.wizard.field])}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-slug-field",attrs:{input:t._uid,help:t.preview},scopedSlots:t._u([t.wizard&&t.wizard.text?{key:"options",fn:function(){return[e("k-button",{attrs:{text:t.wizard.text,icon:"sparkling"},on:{click:t.onWizard}})]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,value:t.slug,theme:"field",type:"slug"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const xs=ut({mixins:[Fe],inheritAttrs:!1,props:{autofocus:Boolean,columns:Object,duplicate:{type:Boolean,default:!0},empty:String,fields:[Array,Object],limit:Number,max:Number,min:Number,prepend:{type:Boolean,default:!1},sortable:{type:Boolean,default:!0},sortBy:String,value:{type:Array,default:()=>[]}},data:()=>({items:[],page:1}),computed:{dragOptions(){return{disabled:!this.isSortable,fallbackClass:"k-sortable-row-fallback"}},index(){return this.limit?(this.page-1)*this.limit+1:1},more(){return!0!==this.disabled&&!(this.max&&this.items.length>=this.max)},hasFields(){return this.$helper.object.length(this.fields)>0},isInvalid(){return!0!==this.disabled&&(!!(this.min&&this.items.lengththis.max))},isSortable(){return!this.sortBy&&(!this.limit&&(!0!==this.disabled&&(!(this.items.length<=1)&&!1!==this.sortable)))},pagination(){let t=0;return this.limit&&(t=(this.page-1)*this.limit),{page:this.page,offset:t,limit:this.limit,total:this.items.length,align:"center",details:!0}},options(){if(this.disabled)return[];let t=[],e=this.duplicate&&this.more;return t.push({icon:"edit",text:this.$t("edit"),click:"edit"}),t.push({disabled:!e,icon:"copy",text:this.$t("duplicate"),click:"duplicate"}),t.push("-"),t.push({icon:"trash",text:e?this.$t("delete"):null,click:"remove"}),t},paginatedItems(){return this.limit?this.items.slice(this.pagination.offset,this.pagination.offset+this.limit):this.items}},watch:{value:{handler(t){t!==this.items&&(this.items=this.toItems(t))},immediate:!0}},methods:{add(t=null){if(!1===this.more)return!1;(t=t??this.$helper.field.form(this.fields))._id=t._id??this.$helper.uuid(),!0===this.prepend?this.items.unshift(t):this.items.push(t),this.save(),this.open(t)},close(){this.$panel.drawer.close(this._uid)},focus(){var t,e;null==(e=null==(t=this.$refs.add)?void 0:t.focus)||e.call(t)},form(t){const e=this.$helper.field.subfields(this,this.fields);if(t)for(const i in e)e[i].autofocus=i===t;return e},findIndex(t){return this.items.findIndex((e=>e._id===t._id))},navigate(t,e){const i=this.findIndex(t);!0!==this.disabled&&-1!==i&&this.open(this.items[i+e],null,!0)},open(t,e,i=!1){const n=this.findIndex(t);if(!0===this.disabled||-1===n)return!1;this.$panel.drawer.open({component:"k-structure-drawer",id:this._uid,props:{icon:this.icon??"list-bullet",next:this.items[n+1],prev:this.items[n-1],tabs:{content:{fields:this.form(e)}},title:this.label,value:t},replace:i,on:{input:e=>{const i=this.findIndex(t);this.$panel.drawer.props.next=this.items[i+1],this.$panel.drawer.props.prev=this.items[i-1],this.$set(this.items,i,e),this.save()},next:()=>{this.navigate(t,1)},prev:()=>{this.navigate(t,-1)},remove:()=>{this.remove(t)}}})},option(t,e){switch(t){case"remove":this.remove(e);break;case"duplicate":this.add({...e,_id:this.$helper.uuid()});break;case"edit":this.open(e)}},paginate({page:t}){this.page=t},remove(t){const e=this.findIndex(t);this.disabled||-1===e||this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.structure.delete.confirm")},on:{submit:()=>{this.items.splice(e,1),this.save(),this.$panel.dialog.close(),this.close(),0===this.paginatedItems.length&&this.page>1&&this.page--}}})},removeAll(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.structure.delete.confirm.all")},on:{submit:()=>{this.page=1,this.items=[],this.save(),this.$panel.dialog.close()}}})},save(t=this.items){this.$emit("input",t)},sort(t){return this.sortBy?t.sortBy(this.sortBy):t},toItems(t){return!1===Array.isArray(t)?[]:(t=t.map((t=>({_id:t._id??this.$helper.uuid(),...t}))),this.sort(t))}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-structure-field",nativeOn:{click:function(t){t.stopPropagation()}},scopedSlots:t._u([t.hasFields&&!t.disabled?{key:"options",fn:function(){return[e("k-button-group",{attrs:{layout:"collapsed"}},[e("k-button",{attrs:{autofocus:t.autofocus,disabled:!t.more,responsive:!0,text:t.$t("add"),icon:"add",variant:"filled",size:"xs"},on:{click:function(e){return t.add()}}}),e("k-button",{attrs:{icon:"dots",size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:[{click:()=>t.add(),disabled:!t.more,icon:"add",text:t.$t("add")},{click:()=>t.removeAll(),disabled:0===t.items.length||t.disabled,icon:"trash",text:t.$t("delete.all")}],"align-x":"end"}})],1)]},proxy:!0}:null],null,!0)},"k-field",t.$props,!1),[t.hasFields?[0===t.items.length?e("k-empty",{attrs:{"data-invalid":t.isInvalid,icon:"list-bullet"},on:{click:function(e){return t.add()}}},[t._v(" "+t._s(t.empty??t.$t("field.structure.empty"))+" ")]):[e("k-table",{attrs:{columns:t.columns,disabled:t.disabled,fields:t.fields,empty:t.$t("field.structure.empty"),index:t.index,options:t.options,pagination:!!t.limit&&t.pagination,rows:t.paginatedItems,sortable:t.isSortable,"data-invalid":t.isInvalid},on:{cell:function(e){return t.open(e.row,e.columnIndex)},input:t.save,option:t.option,paginate:t.paginate}}),t.more?e("footer",{staticClass:"k-bar",attrs:{"data-align":"center"}},[e("k-button",{attrs:{title:t.$t("add"),icon:"add",size:"xs",variant:"filled"},on:{click:function(e){return t.add()}}})],1):t._e()]]:[e("k-empty",{attrs:{icon:"list-bullet"}},[t._v(t._s(t.$t("fields.empty")))])]],2)}),[],!1,null,null,null,null).exports,_s={mixins:[Hi],props:{autocomplete:{default:"tel"},placeholder:{default:()=>window.panel.$t("tel.placeholder")},type:{default:"tel"}}};const Ss=ut({extends:Vi,mixins:[_s]},null,null,!1,null,null,null,null).exports;const Cs=ut({mixins:[Fe,Ue,_s],inheritAttrs:!1,props:{icon:{type:String,default:"phone"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-tel-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"tel"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const Os=ut({mixins:[Fe,Ue,Hi,Di],inheritAttrs:!1,computed:{inputType(){return this.$helper.isComponent(`k-${this.type}-input`)?this.type:"text"}},methods:{focus(){this.$refs.input.focus()},select(){this.$refs.input.select()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-text-field",attrs:{input:t._uid,counter:t.counterOptions},scopedSlots:t._u([{key:"options",fn:function(){return[t._t("options")]},proxy:!0}],null,!0)},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,type:t.inputType,theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,As={props:{buttons:{type:[Array,Boolean],default:!0},uploads:[Boolean,Object,Array]}};const Ms=ut({mixins:[As],computed:{commands(){return{headlines:{label:this.$t("toolbar.button.headings"),icon:"title",dropdown:[{label:this.$t("toolbar.button.heading.1"),icon:"h1",click:()=>this.command("prepend","#")},{label:this.$t("toolbar.button.heading.2"),icon:"h2",click:()=>this.command("prepend","##")},{label:this.$t("toolbar.button.heading.3"),icon:"h3",click:()=>this.command("prepend","###")}]},bold:{label:this.$t("toolbar.button.bold"),icon:"bold",click:()=>this.command("toggle","**"),shortcut:"b"},italic:{label:this.$t("toolbar.button.italic"),icon:"italic",click:()=>this.command("toggle","*"),shortcut:"i"},link:{label:this.$t("toolbar.button.link"),icon:"url",click:()=>this.command("dialog","link"),shortcut:"k"},email:{label:this.$t("toolbar.button.email"),icon:"email",click:()=>this.command("dialog","email"),shortcut:"e"},file:{label:this.$t("toolbar.button.file"),icon:"attachment",click:()=>this.command("file"),dropdown:this.uploads?[{label:this.$t("toolbar.button.file.select"),icon:"check",click:()=>this.command("file")},{label:this.$t("toolbar.button.file.upload"),icon:"upload",click:()=>this.command("upload")}]:void 0},code:{label:this.$t("toolbar.button.code"),icon:"code",click:()=>this.command("toggle","`")},ul:{label:this.$t("toolbar.button.ul"),icon:"list-bullet",click:()=>this.command("insert",((t,e)=>e.split("\n").map((t=>"- "+t)).join("\n")))},ol:{label:this.$t("toolbar.button.ol"),icon:"list-numbers",click:()=>this.command("insert",((t,e)=>e.split("\n").map(((t,e)=>e+1+". "+t)).join("\n")))}}},default:()=>["headlines","|","bold","italic","code","|","link","email","file","|","ul","ol"],layout(){var t;if(!1===this.buttons)return[];const e=[],i=Array.isArray(this.buttons)?this.buttons:this.default,n={...this.commands,...window.panel.plugins.textareaButtons??{}};for(const s of i)if("|"===s)e.push("|");else if(n[s]){const i=n[s];i.click=null==(t=i.click)?void 0:t.bind(this),e.push(i)}return e}},methods:{close(){this.$refs.toolbar.close()},command(t,...e){this.$emit("command",t,...e)},shortcut(t,e){var i;const n=this.layout.find((e=>e.shortcut===t));n&&(e.preventDefault(),null==(i=n.click)||i.call(n))}}},(function(){return(0,this._self._c)("k-toolbar",{ref:"toolbar",staticClass:"k-textarea-toolbar",attrs:{buttons:this.layout}})}),[],!1,null,null,null,null).exports,js={mixins:[As,je,J,et,it,lt,at],props:{endpoints:Object,preselect:Boolean,size:String,theme:String,value:String}};const Is=ut({mixins:[Ie,js],data:()=>({over:!1}),computed:{uploadOptions(){const t=this.restoreSelectionCallback();return{url:this.$panel.urls.api+"/"+this.endpoints.field+"/upload",multiple:!1,on:{cancel:t,done:e=>{t((()=>this.insertUpload(e)))}}}}},watch:{async value(){this.onInvalid(),await this.$nextTick(),this.$library.autosize.update(this.$refs.input)}},async mounted(){await this.$nextTick(),this.$library.autosize(this.$refs.input),this.onInvalid(),this.$props.autofocus&&this.focus(),this.$props.preselect&&this.select()},methods:{dialog(t){const e=this.restoreSelectionCallback();this.$panel.dialog.open({component:"k-toolbar-"+t+"-dialog",props:{value:this.parseSelection()},on:{cancel:e,submit:t=>{this.$panel.dialog.close(),e((()=>this.insert(t)))}}})},file(){const t=this.restoreSelectionCallback();this.$panel.dialog.open({component:"k-files-dialog",props:{endpoint:this.endpoints.field+"/files",multiple:!1},on:{cancel:t,submit:e=>{t((()=>this.insertFile(e))),this.$panel.dialog.close()}}})},focus(){this.$refs.input.focus()},insert(t){const e=this.$refs.input,i=e.value;"function"==typeof t&&(t=t(this.$refs.input,this.selection())),setTimeout((()=>{if(e.focus(),document.execCommand("insertText",!1,t),e.value===i){const i=e.selectionStart,n=e.selectionEnd,s=i===n?"end":"select";e.setRangeText(t,i,n,s)}this.$emit("input",e.value)}))},insertFile(t){(null==t?void 0:t.length)>0&&this.insert(t.map((t=>t.dragText)).join("\n\n"))},insertUpload(t){this.insertFile(t),this.$events.emit("model.update")},onCommand(t,...e){if("function"!=typeof this[t])return console.warn(t+" is not a valid command");this[t](...e)},onDrop(t){if(this.uploads&&this.$helper.isUploadEvent(t))return this.$panel.upload.open(t.dataTransfer.files,this.uploadOptions);"text"===this.$panel.drag.type&&(this.focus(),this.insert(this.$panel.drag.data))},onFocus(t){this.$emit("focus",t)},onInput(t){this.$emit("input",t.target.value)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},onOut(){this.$refs.input.blur(),this.over=!1},onOver(t){if(this.uploads&&this.$helper.isUploadEvent(t))return t.dataTransfer.dropEffect="copy",this.focus(),void(this.over=!0);"text"===this.$panel.drag.type&&(t.dataTransfer.dropEffect="copy",this.focus(),this.over=!0)},onShortcut(t){var e;!1!==this.buttons&&"Meta"!==t.key&&"Control"!==t.key&&(null==(e=this.$refs.toolbar)||e.shortcut(t.key,t))},onSubmit(t){return this.$emit("submit",t)},parseSelection(){const t=this.selection();if(0===(null==t?void 0:t.length))return{href:null,title:null};let e;e=this.$panel.config.kirbytext?/^\(link:\s*(?.*?)(?:\s*text:\s*(?.*?))?\)$/is:/^(\[(?.*?)\]\((?.*?)\))|(<(?.*?)>)$/is;const i=e.exec(t);return null!==i?{href:i.groups.url??i.groups.link,title:i.groups.text??null}:{href:null,title:t}},prepend(t){this.insert(t+" "+this.selection())},restoreSelectionCallback(){const t=this.$refs.input.selectionStart,e=this.$refs.input.selectionEnd;return i=>{setTimeout((()=>{this.$refs.input.setSelectionRange(t,e),i&&i()}))}},select(){this.$refs.select()},selection(){return this.$refs.input.value.substring(this.$refs.input.selectionStart,this.$refs.input.selectionEnd)},toggle(t,e){e=e??t;const i=this.selection();return i.startsWith(t)&&i.endsWith(e)?this.insert(i.slice(t.length).slice(0,i.length-t.length-e.length)):this.wrap(t,e)},upload(){this.$panel.upload.pick(this.uploadOptions)},wrap(t,e){this.insert(t+this.selection()+(e??t))}},validations(){return{value:{required:!this.required||t.required,minLength:!this.minlength||t.minLength(this.minlength),maxLength:!this.maxlength||t.maxLength(this.maxlength)}}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-textarea-input",attrs:{"data-over":t.over,"data-size":t.size}},[e("div",{staticClass:"k-textarea-input-wrapper"},[t.buttons&&!t.disabled?e("k-textarea-toolbar",{ref:"toolbar",attrs:{buttons:t.buttons,disabled:t.disabled,uploads:t.uploads},on:{command:t.onCommand},nativeOn:{mousedown:function(t){t.preventDefault()}}}):t._e(),e("textarea",t._b({directives:[{name:"direction",rawName:"v-direction"}],ref:"input",staticClass:"k-textarea-input-native",attrs:{"data-font":t.font},on:{click:function(e){var i;null==(i=t.$refs.toolbar)||i.close()},focus:t.onFocus,input:t.onInput,keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.metaKey?t.onSubmit.apply(null,arguments):null},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:e.ctrlKey?t.onSubmit.apply(null,arguments):null},function(e){return e.metaKey?e.ctrlKey||e.shiftKey||e.altKey?null:t.onShortcut.apply(null,arguments):null},function(e){return e.ctrlKey?e.shiftKey||e.altKey||e.metaKey?null:t.onShortcut.apply(null,arguments):null}],dragover:t.onOver,dragleave:t.onOut,drop:t.onDrop}},"textarea",{autofocus:t.autofocus,disabled:t.disabled,id:t.id,minlength:t.minlength,name:t.name,placeholder:t.placeholder,required:t.required,spellcheck:t.spellcheck,value:t.value},!1))],1)])}),[],!1,null,null,null,null).exports;const Ts=ut({mixins:[Fe,Ue,js,Di],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-textarea-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,type:"textarea",theme:"field"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,Es={props:{display:{type:String,default:"HH:mm"},max:String,min:String,step:{type:Object,default:()=>({size:5,unit:"minute"})},type:{type:String,default:"time"},value:String}};const Ls=ut({mixins:[Yi,Es],computed:{inputType:()=>"time"}},null,null,!1,null,null,null,null).exports;const Ds=ut({mixins:[Fe,Ue,Es],inheritAttrs:!1,props:{icon:{type:String,default:"clock"},times:{type:Boolean,default:!0}},methods:{focus(){this.$refs.input.focus()},select(t){var e;this.$emit("input",t),null==(e=this.$refs.times)||e.close()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-time-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"time"},on:{input:function(e){return t.$emit("input",e??"")}},scopedSlots:t._u([t.times?{key:"icon",fn:function(){return[e("k-button",{staticClass:"k-input-icon-button",attrs:{disabled:t.disabled,icon:t.icon??"clock",title:t.$t("time.select")},on:{click:function(e){return t.$refs.times.toggle()}}}),e("k-dropdown-content",{ref:"times",attrs:{"align-x":"end"}},[e("k-timeoptions-input",{attrs:{display:t.display,value:t.value},on:{input:t.select}})],1)]},proxy:!0}:null],null,!0)},"k-input",t.$props,!1))],1)}),[],!1,null,null,null,null).exports,Bs={props:{autofocus:Boolean,disabled:Boolean,id:[Number,String],text:{type:[Array,String]},required:Boolean,value:Boolean}};const qs=ut({mixins:[Ie,Bs],computed:{label(){const t=this.text??[this.$t("off"),this.$t("on")];return Array.isArray(t)?this.value?t[1]:t[0]:t}},watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{onEnter(t){"Enter"===t.key&&this.$refs.input.click()},onInput(t){this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},select(){this.$refs.input.focus()}},validations(){return{value:{required:!this.required||t.required}}}},(function(){var t=this;return(0,t._self._c)("k-choice-input",{ref:"input",staticClass:"k-toggle-input",attrs:{id:t.id,checked:t.value,disabled:t.disabled,label:t.label,type:"checkbox",variant:"toggle"},on:{input:function(e){return t.$emit("input",e)}}})}),[],!1,null,null,null,null).exports;const Ps=ut({mixins:[Fe,Ue,Bs],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-toggle-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"toggle"}},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports,Ns={mixins:[je],props:{columns:Number,grow:Boolean,labels:Boolean,options:Array,reset:Boolean,value:[String,Number,Boolean]}};const zs=ut({mixins:[Ie,Ns],watch:{value(){this.onInvalid()}},mounted(){this.onInvalid(),this.$props.autofocus&&this.focus()},methods:{focus(){var t;null==(t=this.$el.querySelector("input[checked]")||this.$el.querySelector("input"))||t.focus()},onClick(t){t===this.value&&this.reset&&!this.required&&this.$emit("input","")},onInput(t){this.$emit("input",t)},onInvalid(){this.$emit("invalid",this.$v.$invalid,this.$v)},select(){this.focus()}},validations(){return{value:{required:!this.required||t.required}}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-toggles-input",style:"--options:"+(t.columns??t.options.length),attrs:{"data-invalid":t.$v.$invalid,"data-labels":t.labels}},t._l(t.options,(function(i,n){return e("li",{key:n,attrs:{"data-disabled":t.disabled}},[e("input",{staticClass:"input-hidden",attrs:{id:t.id+"-"+n,"aria-label":i.text,disabled:t.disabled,name:t.id,type:"radio"},domProps:{value:i.value,checked:t.value===i.value},on:{click:function(e){return t.onClick(i.value)},change:function(e){return t.onInput(i.value)}}}),e("label",{attrs:{for:t.id+"-"+n,title:i.text}},[i.icon?e("k-icon",{attrs:{type:i.icon}}):t._e(),t.labels||!i.icon?e("span",{staticClass:"k-toggles-text",domProps:{innerHTML:t._s(i.text)}}):t._e()],1)])})),0)}),[],!1,null,null,null,null).exports;const Fs=ut({mixins:[Fe,Ue,Ns],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()},onInput(t){this.$emit("input",t)}}},(function(){var t,e=this,i=e._self._c;return i("k-field",e._b({staticClass:"k-toggles-field"},"k-field",e.$props,!1),[(null==(t=e.options)?void 0:t.length)?i("k-input",e._g(e._b({ref:"input",class:{grow:e.grow},attrs:{id:e._uid,theme:"field",type:"toggles"}},"k-input",e.$props,!1),e.$listeners)):i("k-empty",{attrs:{text:e.$t("options.none"),icon:"checklist"}})],1)}),[],!1,null,null,null,null).exports,Rs={mixins:[Hi],props:{autocomplete:{type:String,default:"url"},placeholder:{type:String,default:()=>window.panel.$t("url.placeholder")},type:{type:String,default:"url"}}};const Ys=ut({extends:Vi,mixins:[Rs]},null,null,!1,null,null,null,null).exports;const Us=ut({mixins:[Fe,Ue,Rs],inheritAttrs:!1,props:{link:{type:Boolean,default:!0},icon:{type:String,default:"url"}},methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-url-field",attrs:{input:t._uid}},"k-field",t.$props,!1),[e("k-input",t._g(t._b({ref:"input",attrs:{id:t._uid,theme:"field",type:"url"},scopedSlots:t._u([{key:"icon",fn:function(){return[t.link?e("k-button",{staticClass:"k-input-icon-button",attrs:{icon:t.icon,link:t.value,title:t.$t("open"),tabindex:"-1",target:"_blank"}}):t._e()]},proxy:!0}])},"k-input",t.$props,!1),t.$listeners))],1)}),[],!1,null,null,null,null).exports;const Hs=ut({extends:Gi,type:"users",computed:{emptyProps(){return{icon:"users",text:this.empty??this.$t("field.users.empty")}}}},null,null,!1,null,null,null,null).exports;const Vs=ut({mixins:[Fe,Ue,Yn,Di],inheritAttrs:!1,methods:{focus(){this.$refs.input.focus()}}},(function(){var t=this,e=t._self._c;return e("k-field",t._b({staticClass:"k-writer-field",attrs:{input:t._uid,counter:t.counterOptions}},"k-field",t.$props,!1),[e("k-input",t._b({ref:"input",attrs:{after:t.after,before:t.before,icon:t.icon,theme:"field",type:"writer"},on:{input:function(e){return t.$emit("input",e)}}},"k-input",t.$props,!1))],1)}),[],!1,null,null,null,null).exports,Ks={install(t){t.component("k-blocks-field",Ti),t.component("k-checkboxes-field",Bi),t.component("k-color-field",Fi),t.component("k-date-field",Ui),t.component("k-email-field",Ji),t.component("k-files-field",Xi),t.component("k-gap-field",Zi),t.component("k-headline-field",Qi),t.component("k-info-field",tn),t.component("k-layout-field",en),t.component("k-line-field",nn),t.component("k-link-field",sn),t.component("k-list-field",Wn),t.component("k-multiselect-field",is),t.component("k-number-field",os),t.component("k-object-field",ls),t.component("k-pages-field",rs),t.component("k-password-field",cs),t.component("k-radio-field",hs),t.component("k-range-field",gs),t.component("k-select-field",vs),t.component("k-slug-field",ws),t.component("k-structure-field",xs),t.component("k-tags-field",es),t.component("k-text-field",Os),t.component("k-textarea-field",Ts),t.component("k-tel-field",Cs),t.component("k-time-field",Ds),t.component("k-toggle-field",Ps),t.component("k-toggles-field",Fs),t.component("k-url-field",Us),t.component("k-users-field",Hs),t.component("k-writer-field",Vs)}},Ws={mixins:[ms],props:{max:{default:1,type:Number},min:{default:0,type:Number},step:{default:.01,type:Number},tooltip:{default:!1,type:[Boolean,Object]}}};const Js=ut({mixins:[fs,Ws]},(function(){var t=this;return(0,t._self._c)("k-range-input",t._b({staticClass:"k-alpha-input",on:{input:function(e){return t.$emit("input",e)}}},"k-range-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const Gs=ut({mixins:[je],props:{max:String,min:String,value:{default:"",type:String}},data(){return{maxdate:null,mindate:null,month:null,selected:null,today:this.$library.dayjs(),year:null}},computed:{numberOfDays(){return this.toDate().daysInMonth()},firstWeekday(){const t=this.toDate().day();return t>0?t:7},weekdays(){return["mon","tue","wed","thu","fri","sat","sun"].map((t=>this.$t("days."+t)))},weeks(){const t=this.firstWeekday-1;return Math.ceil((this.numberOfDays+t)/7)},monthnames(){return["january","february","march","april","may","june","july","august","september","october","november","december"].map((t=>this.$t("months."+t)))},months(){var t=[];return this.monthnames.forEach(((e,i)=>{t.push({value:i,text:e})})),t},years(){const t=this.year-20,e=this.year+20;return this.toOptions(t,e)}},watch:{max:{handler(t,e){t!==e&&(this.maxdate=this.$library.dayjs.interpret(t,"date"))},immediate:!0},min:{handler(t,e){t!==e&&(this.mindate=this.$library.dayjs.interpret(t,"date"))},immediate:!0},value:{handler(t,e){t!==e&&(this.selected=this.$library.dayjs.interpret(t,"date"),this.show(this.selected))},immediate:!0}},methods:{days(t){let e=[];const i=7*(t-1)+1,n=i+7;for(let s=i;sthis.numberOfDays;e.push(i?"":t)}return e},isDisabled(t){const e=this.toDate(t);return this.disabled||e.isBefore(this.mindate,"day")||e.isAfter(this.maxdate,"day")},isSelected(t){return this.toDate(t).isSame(this.selected,"day")},isToday(t){return this.toDate(t).isSame(this.today,"day")},onNext(){const t=this.toDate().add(1,"month");this.show(t)},onPrev(){const t=this.toDate().subtract(1,"month");this.show(t)},select(t){this.$emit("input",(null==t?void 0:t.toISO("date"))??null)},show(t){this.month=(t??this.today).month(),this.year=(t??this.today).year()},toDate(t=1,e=this.month){return this.$library.dayjs(`${this.year}-${e+1}-${t}`)},toOptions(t,e){for(var i=[],n=t;n<=e;n++)i.push({value:n,text:this.$helper.pad(n)});return i}}},(function(){var t=this,e=t._self._c;return e("fieldset",{staticClass:"k-calendar-input",on:{click:function(t){t.stopPropagation()}}},[e("legend",{staticClass:"sr-only"},[t._v(t._s(t.$t("date.select")))]),e("nav",[e("k-button",{attrs:{title:t.$t("prev"),icon:"angle-left"},on:{click:t.onPrev}}),e("span",{staticClass:"k-calendar-selects"},[e("k-select-input",{attrs:{"aria-label":t.$t("month"),autofocus:t.autofocus,options:t.months,empty:!1,required:!0,value:t.month},on:{input:function(e){t.month=Number(e)}}}),e("k-select-input",{attrs:{"aria-label":t.$t("year"),options:t.years,empty:!1,required:!0,value:t.year},on:{input:function(e){t.year=Number(e)}}})],1),e("k-button",{attrs:{title:t.$t("next"),icon:"angle-right"},on:{click:t.onNext}})],1),e("table",{key:t.year+"-"+t.month,staticClass:"k-calendar-table"},[e("thead",[e("tr",t._l(t.weekdays,(function(i){return e("th",{key:"weekday_"+i},[t._v(" "+t._s(i)+" ")])})),0)]),e("tbody",t._l(t.weeks,(function(i){return e("tr",{key:"week_"+i},t._l(t.days(i),(function(i,n){return e("td",{key:"day_"+n,staticClass:"k-calendar-day",attrs:{"aria-current":!!t.isToday(i)&&"date","aria-selected":!!t.isSelected(i)&&"date"}},[i?e("k-button",{attrs:{disabled:t.isDisabled(i),text:i},on:{click:function(e){t.select(t.toDate(i))}}}):t._e()],1)})),0)})),0),e("tfoot",[e("tr",[e("td",{staticClass:"k-calendar-today",attrs:{colspan:"7"}},[e("k-button",{attrs:{disabled:t.disabled,text:t.$t("today")},on:{click:function(e){t.show(t.today),t.select(t.today)}}})],1)])])]),e("input",{staticClass:"sr-only",attrs:{id:t.id,disabled:t.disabled,min:t.min,max:t.max,name:t.name,required:t.required,tabindex:"-1",type:"date"},domProps:{value:t.value}})])}),[],!1,null,null,null,null).exports;const Xs=ut({mixins:[Ie,{mixins:[je],props:{checked:{type:Boolean},info:{type:String},label:{type:String},type:{default:"checkbox",type:String},value:{type:[Boolean,Number,String]},variant:{type:String}}}]},(function(){var t=this,e=t._self._c;return e("label",{staticClass:"k-choice-input",attrs:{"aria-disabled":t.disabled}},[e("input",t._b({class:{"sr-only":"invisible"===t.variant},attrs:{"data-variant":t.variant},on:{input:function(e){return t.$emit("input",e.target.checked)}}},"input",{autofocus:t.autofocus,id:t.id,checked:t.checked,disabled:t.disabled,name:t.name,required:t.required,type:t.type,value:t.value},!1)),t.label||t.info?e("span",{staticClass:"k-choice-input-label"},[e("span",{staticClass:"k-choice-input-label-text",domProps:{innerHTML:t._s(t.label)}}),t.info?e("span",{staticClass:"k-choice-input-label-info",domProps:{innerHTML:t._s(t.info)}}):t._e()]):t._e()])}),[],!1,null,null,null,null).exports;const Zs=ut({extends:Xs},null,null,!1,null,null,null,null).exports;const Qs=ut({mixins:[ps,{mixins:[ds],props:{format:{type:String,default:"hex",validator:t=>["hex","rgb","hsl"].includes(t)},value:{type:String}}}],computed:{choices(){return this.options.map((t=>({...t,title:t.text??t.value,value:this.colorToString(t.value)})))}},methods:{colorToString(t){try{return this.$library.colors.toString(t,this.format)}catch{return t}}}},(function(){var t=this,e=t._self._c;return t.choices.length?e("fieldset",{staticClass:"k-coloroptions-input",attrs:{disabled:t.disabled}},[e("legend",{staticClass:"sr-only"},[t._v(t._s(t.$t("options")))]),e("ul",t._l(t.choices,(function(i,n){return e("li",{key:n},[e("label",{attrs:{title:i.title}},[e("input",{staticClass:"input-hidden",attrs:{autofocus:t.autofocus&&0===n,disabled:t.disabled,name:t.name??t._uid,required:t.required,type:"radio"},domProps:{checked:i.value===t.value,value:i.value},on:{click:function(e){return t.toggle(i.value)},input:function(e){return t.$emit("input",i.value)}}}),e("k-color-frame",{attrs:{color:i.value}})],1)])})),0)]):t._e()}),[],!1,null,null,null,null).exports;const to=ut({mixins:[Ie,{mixins:[je,st],props:{alpha:{default:!0,type:Boolean},format:{default:"hex",type:String,validator:t=>["hex","rgb","hsl"].includes(t)},value:{type:[Object,String]}}}],data:()=>({color:{h:0,s:0,v:1,a:1},formatted:null}),computed:{coords(){return this.value?{x:100*this.color.s,y:100*(1-this.color.v)}:null},hsl(){try{const t=this.$library.colors.convert(this.color,"hsl");return{h:t.h,s:(100*t.s).toFixed()+"%",l:(100*t.l).toFixed()+"%",a:t.a}}catch{return{h:0,s:"0%",l:"0%",a:1}}}},watch:{value:{handler(t,e){if(t===e||t===this.formatted)return;const i=this.$library.colors.parseAs(t??"","hsv");i?(this.formatted=this.$library.colors.toString(i,this.format),this.color=i):(this.formatted=null,this.color={h:0,s:0,v:1,a:1})},immediate:!0}},methods:{between:(t,e,i)=>Math.min(Math.max(t,e),i),emit(){return this.formatted=this.$library.colors.toString(this.color,this.format),this.$emit("input",this.formatted)},focus(){this.$refs.coords.focus()},setAlpha(t){this.color.a=this.alpha?this.between(Number(t),0,1):1,this.emit()},setCoords(t){if(!t)return this.$emit("input","");const e=Math.round(t.x),i=Math.round(t.y);this.color.s=this.between(e/100,0,1),this.color.v=this.between(1-i/100,0,1),this.emit()},setHue(t){this.color.h=this.between(Number(t),0,360),this.emit()}}},(function(){var t=this,e=t._self._c;return e("fieldset",{staticClass:"k-colorpicker-input",style:{"--h":t.hsl.h,"--s":t.hsl.s,"--l":t.hsl.l,"--a":t.hsl.a}},[e("legend",{staticClass:"sr-only"},[t._v(t._s(t.$t("color")))]),e("k-coords-input",{ref:"coords",attrs:{autofocus:t.autofocus,disabled:t.disabled,required:t.required,value:t.coords},on:{input:function(e){return t.setCoords(e)}}}),e("label",{attrs:{"aria-label":t.$t("hue")}},[e("k-hue-input",{attrs:{disabled:t.disabled,required:t.required,value:t.color.h},on:{input:function(e){return t.setHue(e)}}})],1),t.alpha?e("label",{attrs:{"aria-label":t.$t("alpha")}},[e("k-alpha-input",{attrs:{disabled:t.disabled,required:t.required,value:t.color.a},on:{input:function(e){return t.setAlpha(e)}}})],1):t._e(),e("k-coloroptions-input",{attrs:{disabled:t.disabled,format:t.format,options:t.options,required:t.required,value:t.value},on:{input:function(e){return t.$emit("input",e)}}}),e("input",{staticClass:"input-hidden",attrs:{name:t.name,required:t.required,tabindex:"-1",type:"text"},domProps:{value:t.formatted}})],1)}),[],!1,null,null,null,null).exports;const eo=ut({mixins:[Ie,{mixins:[je],props:{reset:{default:!0,type:Boolean},value:{default:()=>({x:0,y:0}),type:Object}}}],data:()=>({x:0,y:0}),watch:{value:{handler(t){const e=this.parse(t);this.x=(null==e?void 0:e.x)??0,this.y=(null==e?void 0:e.y)??0},immediate:!0}},methods:{focus(){var t;null==(t=this.$el.querySelector("button"))||t.focus()},getCoords:(t,e)=>({x:Math.min(Math.max(t.clientX-e.left,0),e.width),y:Math.min(Math.max(t.clientY-e.top,0),e.height)}),onDelete(){this.reset&&!this.required&&this.$emit("input",null)},onDrag(t){if(0!==t.button)return;const e=t=>this.onMove(t),i=()=>{window.removeEventListener("mousemove",e),window.removeEventListener("mouseup",i)};window.addEventListener("mousemove",e),window.addEventListener("mouseup",i)},onEnter(){var t;null==(t=this.$el.form)||t.requestSubmit()},onInput(t,e){if(t.preventDefault(),t.stopPropagation(),this.disabled)return!1;this.x=Math.min(Math.max(parseFloat(e.x??this.x??0),0),100),this.y=Math.min(Math.max(parseFloat(e.y??this.y??0),0),100),this.$emit("input",{x:this.x,y:this.y})},onKeys(t){const e=t.shiftKey?10:1,i={ArrowUp:{y:this.y-e},ArrowDown:{y:this.y+e},ArrowLeft:{x:this.x-e},ArrowRight:{x:this.x+e}};i[t.key]&&this.onInput(t,i[t.key])},async onMove(t){const e=this.$el.getBoundingClientRect(),i=this.getCoords(t,e),n=i.x/e.width*100,s=i.y/e.height*100;this.onInput(t,{x:n,y:s}),await this.$nextTick(),this.focus()},parse(t){if("object"==typeof t)return t;const e={"top left":{x:0,y:0},"top center":{x:50,y:0},"top right":{x:100,y:0},"center left":{x:0,y:50},center:{x:50,y:50},"center center":{x:50,y:50},"center right":{x:100,y:50},"bottom left":{x:0,y:100},"bottom center":{x:50,y:100},"bottom right":{x:100,y:100}};if(e[t])return e[t];const i=t.split(",").map((t=>t.trim()));return{x:i[0],y:i[1]??0}}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-coords-input",attrs:{"aria-disabled":t.disabled,"data-empty":!t.value},on:{mousedown:t.onDrag,click:t.onMove,keydown:t.onKeys}},[t._t("default"),e("button",{staticClass:"k-coords-input-thumb",style:{left:`${t.x}%`,top:`${t.y}%`},attrs:{id:t.id,autofocus:t.autofocus,disabled:t.disabled},on:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:(e.preventDefault(),t.onEnter.apply(null,arguments))},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:t.onDelete.apply(null,arguments)}]}}),e("input",{staticClass:"input-hidden",attrs:{name:t.name,required:t.required,tabindex:"-1",type:"text"},domProps:{value:t.value?[t.value.x,t.value.y]:null}})],2)}),[],!1,null,null,null,null).exports,io={mixins:[ms],props:{max:{default:360,type:Number},min:{default:0,type:Number},step:{default:1,type:Number},tooltip:{default:!1,type:[Boolean,Object]}}};const no=ut({mixins:[fs,io]},(function(){var t=this;return(0,t._self._c)("k-range-input",t._b({staticClass:"k-hue-input",on:{input:function(e){return t.$emit("input",e)}}},"k-range-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const so=ut({mixins:[Pi,{mixins:[qi],props:{autocomplete:{default:"off"},placeholder:{default:()=>window.panel.$t("search")+" …",type:String},spellcheck:{default:!1}}}]},(function(){var t=this;return(0,t._self._c)("k-string-input",t._b({staticClass:"k-search-input",attrs:{type:"search"},on:{input:function(e){return t.$emit("input",e)}}},"k-string-input",t.$props,!1))}),[],!1,null,null,null,null).exports;const oo=ut({mixins:[Ie,{mixins:[je]}],props:{display:{type:String,default:"HH:mm"},value:String},computed:{day(){return this.formatTimes([6,7,8,9,10,11,"-",12,13,14,15,16,17])},night(){return this.formatTimes([18,19,20,21,22,23,"-",0,1,2,3,4,5])}},methods:{focus(){this.$el.querySelector("button").focus()},formatTimes(t){return t.map((t=>{if("-"===t)return t;const e=this.$library.dayjs(t+":00","H:mm");return{display:e.format(this.display),select:e.toISO("time")}}))},select(t){this.$emit("input",t)}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-timeoptions-input"},[e("div",[e("h3",[e("k-icon",{attrs:{type:"sun"}}),t._v(" "),e("span",{staticClass:"sr-only"},[t._v(t._s(t.$t("day")))])],1),e("ul",t._l(t.day,(function(i,n){return e("li",{key:i.select},["-"===i?e("hr"):e("k-button",{attrs:{autofocus:t.autofocus&&0===n,disabled:t.disabled,selected:i.select===t.value&&"time"},on:{click:function(e){return t.select(i.select)}}},[t._v(" "+t._s(i.display)+" ")])],1)})),0)]),e("div",[e("h3",[e("k-icon",{attrs:{type:"moon"}}),t._v(" "),e("span",{staticClass:"sr-only"},[t._v(t._s(t.$t("night")))])],1),e("ul",t._l(t.night,(function(i){return e("li",{key:i.select},["-"===i?e("hr"):e("k-button",{attrs:{disabled:t.disabled,selected:i.select===t.value&&"time"},on:{click:function(e){return t.select(i.select)}}},[t._v(" "+t._s(i.display)+" ")])],1)})),0)])])}),[],!1,null,null,null,null).exports,lo={install(t){t.component("k-alpha-input",Js),t.component("k-calendar-input",Gs),t.component("k-checkbox-input",Zs),t.component("k-checkboxes-input",Li),t.component("k-choice-input",Xs),t.component("k-colorname-input",zi),t.component("k-coloroptions-input",Qs),t.component("k-colorpicker-input",to),t.component("k-coords-input",eo),t.component("k-date-input",Yi),t.component("k-email-input",Wi),t.component("k-hue-input",no),t.component("k-list-input",Kn),t.component("k-multiselect-input",Zn),t.component("k-number-input",ss),t.component("k-password-input",us),t.component("k-picklist-input",Le),t.component("k-radio-input",ps),t.component("k-range-input",fs),t.component("k-search-input",so),t.component("k-select-input",bs),t.component("k-slug-input",$s),t.component("k-string-input",Pi),t.component("k-tags-input",ts),t.component("k-tel-input",Ss),t.component("k-text-input",Vi),t.component("k-textarea-input",Is),t.component("k-time-input",Ls),t.component("k-timeoptions-input",oo),t.component("k-toggle-input",qs),t.component("k-toggles-input",zs),t.component("k-url-input",Ys),t.component("k-writer-input",Un),t.component("k-calendar",Gs),t.component("k-times",oo)}};const ro=ut({props:{attrs:[Array,Object],columns:Array,disabled:Boolean,endpoints:Object,fieldsetGroups:Object,fieldsets:Object,id:String,isSelected:Boolean,layouts:Array,settings:Object},computed:{options(){return[{click:()=>this.$emit("prepend"),icon:"angle-up",text:this.$t("insert.before")},{click:()=>this.$emit("append"),icon:"angle-down",text:this.$t("insert.after")},"-",{click:()=>this.openSettings(),icon:"settings",text:this.$t("settings"),when:!1===this.$helper.object.isEmpty(this.settings)},{click:()=>this.$emit("duplicate"),icon:"copy",text:this.$t("duplicate")},{click:()=>this.$emit("change"),disabled:1===this.layouts.length,icon:"dashboard",text:this.$t("field.layout.change")},"-",{click:()=>this.$emit("copy"),icon:"template",text:this.$t("copy")},{click:()=>this.$emit("paste"),icon:"download",text:this.$t("paste.after")},"-",{click:()=>this.remove(),icon:"trash",text:this.$t("field.layout.delete")}]},tabs(){let t=this.settings.tabs;for(const[e,i]of Object.entries(t))for(const n in i.fields)t[e].fields[n].endpoints={field:this.endpoints.field+"/fields/"+n,section:this.endpoints.section,model:this.endpoints.model};return t}},methods:{openSettings(){this.$panel.drawer.open({component:"k-form-drawer",props:{icon:"settings",tabs:this.tabs,title:this.$t("settings"),value:this.attrs},on:{input:t=>this.$emit("updateAttrs",t)}})},remove(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.layout.delete.confirm")},on:{submit:()=>{this.$emit("remove"),this.$panel.dialog.close()}}})}}},(function(){var t=this,e=t._self._c;return e("section",{staticClass:"k-layout",attrs:{"data-selected":t.isSelected,tabindex:"0"},on:{click:function(e){return t.$emit("select")}}},[e("k-grid",{staticClass:"k-layout-columns"},t._l(t.columns,(function(i,n){return e("k-layout-column",t._b({key:i.id,attrs:{endpoints:t.endpoints,"fieldset-groups":t.fieldsetGroups,fieldsets:t.fieldsets},on:{input:function(e){return t.$emit("updateColumn",{column:i,columnIndex:n,blocks:e})}}},"k-layout-column",i,!1))})),1),t.disabled?t._e():e("nav",{staticClass:"k-layout-toolbar"},[t.settings?e("k-button",{staticClass:"k-layout-toolbar-button",attrs:{title:t.$t("settings"),icon:"settings"},on:{click:t.openSettings}}):t._e(),e("k-button",{staticClass:"k-layout-toolbar-button",attrs:{icon:"angle-down"},on:{click:function(e){return t.$refs.options.toggle()}}}),e("k-dropdown-content",{ref:"options",attrs:{options:t.options,"align-x":"end"}}),e("k-sort-handle")],1)],1)}),[],!1,null,null,null,null).exports;const ao=ut({props:{blocks:Array,endpoints:Object,fieldsetGroups:Object,fieldsets:Object,id:String,isSelected:Boolean,width:{type:String,default:"1/1"}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-column k-layout-column",style:"--width: "+t.width,attrs:{id:t.id,tabindex:"0"},on:{dblclick:function(e){return t.$refs.blocks.choose(t.blocks.length)}}},[e("k-blocks",{ref:"blocks",attrs:{endpoints:t.endpoints,"fieldset-groups":t.fieldsetGroups,fieldsets:t.fieldsets,value:t.blocks,group:"layout"},on:{input:function(e){return t.$emit("input",e)}},nativeOn:{dblclick:function(t){t.stopPropagation()}}})],1)}),[],!1,null,null,null,null).exports;const uo=ut({props:{disabled:Boolean,empty:String,endpoints:Object,fieldsetGroups:Object,fieldsets:Object,layouts:Array,max:Number,selector:Object,settings:Object,value:Array},data(){return{current:null,nextIndex:null,rows:this.value,selected:null}},computed:{draggableOptions(){return{id:this._uid,handle:!0,list:this.rows}}},watch:{value(){this.rows=this.value}},methods:{copy(t,e){if(0===this.rows.length)return!1;const i=void 0!==e?this.rows[e]:this.rows;this.$helper.clipboard.write(JSON.stringify(i),t),this.$panel.notification.success({message:this.$t("copy.success",{count:i.length??1}),icon:"template"})},change(t,e){const i=e.columns.map((t=>t.width)),n=this.layouts.findIndex((t=>t.toString()===i.toString()));this.$panel.dialog.open({component:"k-layout-selector",props:{label:this.$t("field.layout.change"),layouts:this.layouts,selector:this.selector,value:this.layouts[n]},on:{submit:i=>{this.onChange(i,n,{rowIndex:t,layoutIndex:n,layout:e}),this.$panel.dialog.close()}}})},duplicate(t,e){const i=this.$helper.clone(e),n=this.updateIds(i);this.rows.splice(t+1,0,...n),this.save()},async onAdd(t){let e=await this.$api.post(this.endpoints.field+"/layout",{columns:t});this.rows.splice(this.nextIndex,0,e),this.save()},async onChange(t,e,i){if(e===this.layouts[i.layoutIndex])return;const n=i.layout,s=await this.$api.post(this.endpoints.field+"/layout",{attrs:n.attrs,columns:t}),o=n.columns.filter((t=>{var e;return(null==(e=null==t?void 0:t.blocks)?void 0:e.length)>0})),l=[];if(0===o.length)l.push(s);else{const t=Math.ceil(o.length/s.columns.length)*s.columns.length;for(let e=0;e{var n;return t.blocks=(null==(n=o[i+e])?void 0:n.blocks)??[],t})),t.columns.filter((t=>{var e;return null==(e=null==t?void 0:t.blocks)?void 0:e.length})).length&&l.push(t)}}this.rows.splice(i.rowIndex,1,...l),this.save()},async paste(t,e=this.rows.length){let i=await this.$api.post(this.endpoints.field+"/layout/paste",{json:this.$helper.clipboard.read(t)});i.length&&(this.rows.splice(e,0,...i),this.save()),this.$panel.notification.success({message:this.$t("paste.success",{count:i.length}),icon:"download"})},pasteboard(t){this.$panel.dialog.open({component:"k-block-pasteboard",on:{paste:e=>this.paste(e,t)}})},remove(t){const e=this.rows.findIndex((e=>e.id===t.id));-1!==e&&this.$delete(this.rows,e),this.save()},removeAll(){this.$panel.dialog.open({component:"k-remove-dialog",props:{text:this.$t("field.layout.delete.confirm.all")},on:{submit:()=>{this.rows=[],this.save(),this.$panel.dialog.close()}}})},save(){this.$emit("input",this.rows)},select(t){if(this.nextIndex=t,1===this.layouts.length)return this.onAdd(this.layouts[0]);this.$panel.dialog.open({component:"k-layout-selector",props:{layouts:this.layouts,selector:this.selector,value:null},on:{submit:t=>{this.onAdd(t),this.$panel.dialog.close()}}})},updateAttrs(t,e){this.rows[t].attrs=e,this.save()},updateColumn(t){this.rows[t.index].columns[t.columnIndex].blocks=t.blocks,this.save()},updateIds(t){return!1===Array.isArray(t)&&(t=[t]),t.map((t=>(t.id=this.$helper.uuid(),t.columns=t.columns.map((t=>(t.id=this.$helper.uuid(),t.blocks=t.blocks.map((t=>(t.id=this.$helper.uuid(),t))),t))),t)))}}},(function(){var t=this,e=t._self._c;return e("div",[t.rows.length?[e("k-draggable",t._b({staticClass:"k-layouts",on:{sort:t.save}},"k-draggable",t.draggableOptions,!1),t._l(t.rows,(function(i,n){return e("k-layout",t._b({key:i.id,attrs:{disabled:t.disabled,endpoints:t.endpoints,"fieldset-groups":t.fieldsetGroups,fieldsets:t.fieldsets,"is-selected":t.selected===i.id,layouts:t.layouts,settings:t.settings},on:{append:function(e){return t.select(n+1)},change:function(e){return t.change(n,i)},copy:function(e){return t.copy(e,n)},duplicate:function(e){return t.duplicate(n,i)},paste:function(e){return t.pasteboard(n+1)},prepend:function(e){return t.select(n)},remove:function(e){return t.remove(i)},select:function(e){t.selected=i.id},updateAttrs:function(e){return t.updateAttrs(n,e)},updateColumn:function(e){return t.updateColumn({layout:i,index:n,...e})}}},"k-layout",i,!1))})),1)]:e("k-empty",{staticClass:"k-layout-empty",attrs:{icon:"dashboard"},on:{click:function(e){return t.select(0)}}},[t._v(" "+t._s(t.empty??t.$t("field.layout.empty"))+" ")])],2)}),[],!1,null,null,null,null).exports;const co=ut({mixins:[Lt],inheritAttrs:!1,props:{cancelButton:{default:!1},label:{default(){return this.$t("field.layout.select")},type:String},layouts:{type:Array},selector:Object,submitButton:{default:!1},value:{type:Array}}},(function(){var t,e,i=this,n=i._self._c;return n("k-dialog",i._b({staticClass:"k-layout-selector",attrs:{size:(null==(t=i.selector)?void 0:t.size)??"medium"},on:{cancel:function(t){return i.$emit("cancel")},submit:function(t){return i.$emit("submit",i.value)}}},"k-dialog",i.$props,!1),[n("h3",{staticClass:"k-label"},[i._v(i._s(i.label))]),n("k-navigate",{staticClass:"k-layout-selector-options",style:"--columns:"+Number((null==(e=i.selector)?void 0:e.columns)??3),attrs:{axis:"x"}},i._l(i.layouts,(function(t,e){return n("button",{key:e,staticClass:"k-layout-selector-option",attrs:{"aria-current":i.value===t,"aria-label":t.join(","),value:t},on:{click:function(e){return i.$emit("input",t)}}},[n("k-grid",{attrs:{"aria-hidden":""}},i._l(t,(function(t,e){return n("k-column",{key:e,attrs:{width:t}})})),1)],1)})),0)],1)}),[],!1,null,null,null,null).exports,po={install(t){t.component("k-layout",ro),t.component("k-layout-column",ao),t.component("k-layouts",uo),t.component("k-layout-selector",co)}},ho={inheritAttrs:!1,props:{column:{default:()=>({}),type:Object},field:{default:()=>({}),type:Object},value:{}}},mo={props:{html:{type:Boolean}}};const fo=ut({mixins:[mo],inheritAttrs:!1,props:{bubbles:[Array,String]},computed:{items(){let t=this.bubbles;return"string"==typeof t&&(t=t.split(",")),t.map((t=>"string"===t?{text:t}:t))}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-bubbles"},t._l(t.items,(function(i,n){return e("li",{key:n},[e("k-bubble",t._b({attrs:{html:t.html}},"k-bubble",i,!1))],1)})),0)}),[],!1,null,null,null,null).exports;const go=ut({mixins:[ho,mo],props:{value:{default:()=>[],type:[Array,String]}},computed:{bubbles(){let t=this.value;const e=this.column.options??this.field.options??[];return"string"==typeof t&&(t=t.split(",")),(t??[]).map((t=>{"string"==typeof t&&(t={value:t,text:t});for(const i of e)i.value===t.value&&(t.text=i.text);return t}))}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-bubbles-field-preview",class:t.$options.class},[e("k-bubbles",{attrs:{bubbles:t.bubbles,html:t.html}})],1)}),[],!1,null,null,null,null).exports;const ko=ut({extends:go,inheritAttrs:!1,class:"k-array-field-preview",computed:{bubbles(){return[{text:1===this.value.length?`1 ${this.$t("entry")}`:`${this.value.length} ${this.$t("entries")}`}]}}},null,null,!1,null,null,null,null).exports;const bo=ut({mixins:[ho],props:{value:String},computed:{text(){var t;if(!this.value)return;const e=this.$library.colors.toString(this.value,this.field.format,this.field.alpha),i=null==(t=this.field.options)?void 0:t.find((t=>this.$library.colors.toString(t.value,this.field.format,this.field.alpha)===e));return i?i.text:null}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-color-field-preview"},[e("k-color-frame",{attrs:{color:t.value}}),t.text?[t._v(" "+t._s(t.text)+" ")]:t._e()],2)}),[],!1,null,null,null,null).exports;const vo=ut({mixins:[ho],inheritAttrs:!1,computed:{text(){return this.value}}},(function(){var t=this;return(0,t._self._c)("p",{staticClass:"k-text-field-preview",class:t.$options.class},[t._v(" "+t._s(t.column.before)+" "),t._t("default",(function(){return[t._v(t._s(t.text))]})),t._v(" "+t._s(t.column.after)+" ")],2)}),[],!1,null,null,null,null).exports;const yo=ut({extends:vo,props:{value:String},class:"k-date-field-preview",computed:{display(){return this.column.display??this.field.display},format(){var t;let e=this.display??"YYYY-MM-DD";return(null==(t=this.time)?void 0:t.display)&&(e+=" "+this.time.display),e},parsed(){return this.$library.dayjs(this.value)},text(){var t;return null==(t=this.parsed)?void 0:t.format(this.format)},time(){return this.column.time??this.field.time}}},null,null,!1,null,null,null,null).exports;const $o=ut({mixins:[ho],props:{value:[String,Object]},computed:{link(){return"object"==typeof this.value?this.value.href:this.value},text(){return"object"==typeof this.value?this.value.text:this.link}}},(function(){var t=this,e=t._self._c;return e("p",{staticClass:"k-url-field-preview",class:t.$options.class,attrs:{"data-link":t.link}},[t._v(" "+t._s(t.column.before)+" "),e("k-link",{attrs:{to:t.link},nativeOn:{click:function(t){t.stopPropagation()}}},[e("span",[t._v(t._s(t.text))])]),t._v(" "+t._s(t.column.after)+" ")],1)}),[],!1,null,null,null,null).exports;const wo=ut({extends:$o,class:"k-email-field-preview"},null,null,!1,null,null,null,null).exports;const xo=ut({extends:go,class:"k-files-field-preview",props:{html:{type:Boolean,default:!0}},computed:{bubbles(){return this.value.map((t=>({text:t.filename,link:t.link,image:t.image})))}}},null,null,!1,null,null,null,null).exports;const _o=ut({mixins:[ho],props:{value:Object},computed:{status(){var t;return{...this.$helper.page.status(null==(t=this.value)?void 0:t.status),...this.value}}}},(function(){var t=this,e=t._self._c;return t.value?e("k-button",t._b({staticClass:"k-flag-field-preview",attrs:{size:"md"}},"k-button",t.status,!1)):t._e()}),[],!1,null,null,null,null).exports;const So=ut({mixins:[ho],props:{value:String},computed:{html(){return this.value}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-html-field-preview",class:t.$options.class},[t._v(" "+t._s(t.column.before)+" "),e("k-text",{attrs:{html:t.html}}),t._v(" "+t._s(t.column.after)+" ")],1)}),[],!1,null,null,null,null).exports;const Co=ut({mixins:[ho],props:{value:[Object]}},(function(){var t=this,e=t._self._c;return t.value?e("k-item-image",{staticClass:"k-image-field-preview",attrs:{image:t.value}}):t._e()}),[],!1,null,null,null,null).exports;const Oo=ut({extends:go,class:"k-object-field-preview",props:{value:[Array,Object]},computed:{bubbles(){return this.value?[{text:"{ ... }"}]:[]}}},null,null,!1,null,null,null,null).exports;const Ao=ut({extends:go,inheritAttrs:!1,class:"k-pages-field-preview",props:{html:{type:Boolean,default:!0}}},null,null,!1,null,null,null,null).exports;const Mo=ut({extends:yo,class:"k-time-field-preview",computed:{format(){return this.display??"HH:mm"},parsed(){return this.$library.dayjs.iso(this.value,"time")},text(){var t;return null==(t=this.parsed)?void 0:t.format(this.format)}}},null,null,!1,null,null,null,null).exports;const jo=ut({mixins:[ho],computed:{text(){return!1!==this.column.text?this.field.text:null}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-toggle-field-preview"},[e("k-toggle-input",{attrs:{text:t.text,value:t.value},on:{input:function(e){return t.$emit("input",e)}},nativeOn:{click:function(t){t.stopPropagation()}}})],1)}),[],!1,null,null,null,null).exports;const Io=ut({extends:go,class:"k-users-field-preview",computed:{bubble(){return this.value.map((t=>({text:t.username,link:t.link,image:t.image})))}}},null,null,!1,null,null,null,null).exports,To={install(t){t.component("k-array-field-preview",ko),t.component("k-bubbles-field-preview",go),t.component("k-color-field-preview",bo),t.component("k-date-field-preview",yo),t.component("k-email-field-preview",wo),t.component("k-files-field-preview",xo),t.component("k-flag-field-preview",_o),t.component("k-html-field-preview",So),t.component("k-image-field-preview",Co),t.component("k-object-field-preview",Oo),t.component("k-pages-field-preview",Ao),t.component("k-text-field-preview",vo),t.component("k-toggle-field-preview",jo),t.component("k-time-field-preview",Mo),t.component("k-url-field-preview",$o),t.component("k-users-field-preview",Io),t.component("k-list-field-preview",So),t.component("k-writer-field-preview",So),t.component("k-checkboxes-field-preview",go),t.component("k-multiselect-field-preview",go),t.component("k-radio-field-preview",go),t.component("k-select-field-preview",go),t.component("k-tags-field-preview",go),t.component("k-toggles-field-preview",go)}};const Eo=ut({mixins:[{props:{buttons:{type:Array,default:()=>[]},theme:{type:String,default:"light"}}}],methods:{close(){for(const t in this.$refs){const e=this.$refs[t][0];"function"==typeof(null==e?void 0:e.close)&&e.close()}}}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-toolbar",attrs:{"data-theme":t.theme}},[t._l(t.buttons,(function(i,n){var s;return["|"===i?e("hr",{key:n}):i.when??1?e("k-button",{key:n,class:["k-toolbar-button",i.class],attrs:{current:i.current,disabled:i.disabled,icon:i.icon,title:i.label,tabindex:"0"},on:{click:function(e){var s,o;(null==(s=i.dropdown)?void 0:s.length)?t.$refs[n+"-dropdown"][0].toggle():null==(o=i.click)||o.call(i,e)}},nativeOn:{keydown:function(t){var e;null==(e=i.key)||e.call(i,t)}}}):t._e(),(i.when??1)&&(null==(s=i.dropdown)?void 0:s.length)?e("k-dropdown-content",{key:n+"-dropdown",ref:n+"-dropdown",refInFor:!0,attrs:{options:i.dropdown,theme:"dark"===t.theme?"light":"dark"}}):t._e()]}))],2)}),[],!1,null,null,null,null).exports;const Lo=ut({extends:qt,methods:{submit(){const t=this.values.href??"",e=this.values.title??"";return this.$panel.config.kirbytext?(null==e?void 0:e.length)>0?this.$emit("submit",`(email: ${t} text: ${e})`):this.$emit("submit",`(email: ${t})`):(null==e?void 0:e.length)>0?this.$emit("submit",`[${e}](mailto:${t})`):this.$emit("submit",`<${t}>`)}}},null,null,!1,null,null,null,null).exports;const Do=ut({extends:Kt,props:{fields:{default:()=>({href:{label:window.panel.$t("link"),type:"link",placeholder:window.panel.$t("url.placeholder"),icon:"url"},title:{label:window.panel.$t("link.text"),type:"text",icon:"title"}})}},methods:{submit(){const t=this.values.href??"",e=this.values.title??"";return this.$panel.config.kirbytext?(null==e?void 0:e.length)>0?this.$emit("submit",`(link: ${t} text: ${e})`):this.$emit("submit",`(link: ${t})`):(null==e?void 0:e.length)>0?this.$emit("submit",`[${e}](${t})`):this.$emit("submit",`<${t}>`)}}},null,null,!1,null,null,null,null).exports,Bo={install(t){t.component("k-toolbar",Eo),t.component("k-textarea-toolbar",Ms),t.component("k-toolbar-email-dialog",Lo),t.component("k-toolbar-link-dialog",Do)}};const qo=ut({props:{editor:{required:!0,type:Object},inline:{default:!0,type:Boolean},marks:{default:()=>["bold","italic","underline","strike","code","|","link","email","|","clear"],type:[Array,Boolean]},nodes:{default:!0,type:[Array,Boolean]}},data:()=>({isOpen:!1,position:{x:0,y:0}}),computed:{activeNode(){return Object.values(this.nodeButtons).find((t=>this.isNodeActive(t)))??!1},buttons(){var t,e,i;const n=[];if(this.hasNodes){const s=[];let o=0;for(const n in this.nodeButtons){const l=this.nodeButtons[n];s.push({current:(null==(t=this.activeNode)?void 0:t.id)===l.id,disabled:!1===(null==(i=null==(e=this.activeNode)?void 0:e.when)?void 0:i.includes(l.name)),icon:l.icon,label:l.label,click:()=>this.command(l.command??n)}),!0===l.separator&&o!==Object.keys(this.nodeButtons).length-1&&s.push("-"),o++}n.push({current:Boolean(this.activeNode),icon:this.activeNode.icon??"title",dropdown:s})}if(this.hasNodes&&this.hasMarks&&n.push("|"),this.hasMarks)for(const s in this.markButtons){const t=this.markButtons[s];"|"!==t?n.push({current:this.editor.activeMarks.includes(s),icon:t.icon,label:t.label,click:e=>this.command(t.command??s,e)}):n.push("|")}return n},hasMarks(){return this.$helper.object.length(this.markButtons)>0},hasNodes(){return this.$helper.object.length(this.nodeButtons)>1},markButtons(){const t=this.editor.buttons("mark");if(!1===this.marks||0===this.$helper.object.length(t))return{};if(!0===this.marks)return t;const e={};for(const[i,n]of this.marks.entries())"|"===n?e["divider"+i]="|":t[n]&&(e[n]=t[n]);return e},nodeButtons(){const t=this.editor.buttons("node");if(!1===this.nodes||0===this.$helper.object.length(t))return{};if("block+"!==this.editor.nodes.doc.content&&t.paragraph&&delete t.paragraph,!0===this.nodes)return t;const e={};for(const i of this.nodes)t[i]&&(e[i]=t[i]);return e}},methods:{close(t){t&&!1!==this.$el.contains(t.relatedTarget)||(this.isOpen=!1)},command(t,...e){this.$emit("command",t,...e)},isNodeActive(t){if(!1===this.editor.activeNodes.includes(t.name))return!1;if("paragraph"===t.name)return!1===this.editor.activeNodes.includes("listItem")&&!1===this.editor.activeNodes.includes("quote");if(t.attrs){if(void 0===Object.values(this.editor.activeNodeAttrs).find((e=>JSON.stringify(e)===JSON.stringify(t.attrs))))return!1}return!0},open(){this.isOpen=!0,this.inline&&this.$nextTick(this.setPosition)},setPosition(){const t=this.$el.getBoundingClientRect(),e=this.editor.element.getBoundingClientRect(),i=document.querySelector(".k-panel-menu").getBoundingClientRect(),{from:n,to:s}=this.editor.selection,o=this.editor.view.coordsAtPos(n),l=this.editor.view.coordsAtPos(s,!0),r=new DOMRect(o.left,o.top,l.right-o.left,l.bottom-o.top);let a=r.x-e.x+r.width/2-t.width/2,u=r.y-e.y-t.height-5;if(t.widthe.width&&(a=e.width-t.width);else{const n=e.x+a,s=n+t.width,o=i.width+20,l=20;nwindow.innerWidth-l&&(a-=s-(window.innerWidth-l))}this.position={x:a,y:u}}}},(function(){var t=this,e=t._self._c;return t.isOpen||!t.inline?e("k-toolbar",{ref:"toolbar",staticClass:"k-writer-toolbar",style:{top:t.position.y+"px",left:t.position.x+"px"},attrs:{buttons:t.buttons,"data-inline":t.inline,theme:t.inline?"dark":"light"}}):t._e()}),[],!1,null,null,null,null).exports,Po={install(t){t.component("k-writer-toolbar",qo),t.component("k-writer",Rn)}},No={install(t){t.component("k-counter",Pe),t.component("k-autocomplete",qe),t.component("k-form",Ne),t.component("k-form-buttons",ze),t.component("k-field",Re),t.component("k-fieldset",Ye),t.component("k-input",He),t.component("k-login",Ve),t.component("k-login-code",Ke),t.component("k-upload",We),t.component("k-login-alert",Je),t.component("k-structure-form",Ge),t.use(Ii),t.use(lo),t.use(Ks),t.use(po),t.use(To),t.use(Bo),t.use(Po)}},zo=()=>R((()=>import("./IndexView.min.js")),["./IndexView.min.js","./vendor.min.js"],import.meta.url),Fo=()=>R((()=>import("./DocsView.min.js")),["./DocsView.min.js","./Docs.min.js","./vendor.min.js"],import.meta.url),Ro=()=>R((()=>import("./PlaygroundView.min.js")),["./PlaygroundView.min.js","./Docs.min.js","./vendor.min.js"],import.meta.url),Yo={install(t){t.component("k-lab-index-view",zo),t.component("k-lab-docs-view",Fo),t.component("k-lab-playground-view",Ro)}};const Uo=ut({props:{cover:Boolean,ratio:String},computed:{ratioPadding(){return this.$helper.ratio(this.ratio)}},created(){window.panel.deprecated(" will be removed in a future version. Use the instead.")}},(function(){var t=this;return(0,t._self._c)("span",{staticClass:"k-aspect-ratio",style:{"padding-bottom":t.ratioPadding},attrs:{"data-cover":t.cover}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Ho=ut({props:{align:{type:String,default:"start"}},mounted(){(this.$slots.left||this.$slots.center||this.$slots.right)&&window.panel.deprecated(": left/centre/right slots will be removed in a future version. Use with default slot only instead.")}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-bar",attrs:{"data-align":t.align}},[t.$slots.left||t.$slots.center||t.$slots.right?[t.$slots.left?e("div",{staticClass:"k-bar-slot",attrs:{"data-position":"left"}},[t._t("left")],2):t._e(),t.$slots.center?e("div",{staticClass:"k-bar-slot",attrs:{"data-position":"center"}},[t._t("center")],2):t._e(),t.$slots.right?e("div",{staticClass:"k-bar-slot",attrs:{"data-position":"right"}},[t._t("right")],2):t._e()]:t._t("default")],2)}),[],!1,null,null,null,null).exports;const Vo=ut({props:{align:{type:String,default:"start"},button:Boolean,height:String,icon:String,theme:{type:String},text:String,html:{type:Boolean}},computed:{element(){return this.button?"button":"div"},type(){return this.button?"button":null}}},(function(){var t=this,e=t._self._c;return e(t.element,{tag:"component",staticClass:"k-box",style:t.height?"--box-height: "+t.height:null,attrs:{"data-align":t.align,"data-theme":t.theme,type:t.type}},[t.icon?e("k-icon",{attrs:{type:t.icon}}):t._e(),t._t("default",(function(){return[t.html?e("k-text",{attrs:{html:t.text}}):e("k-text",[t._v(" "+t._s(t.text)+" ")])]}),null,{html:t.html,text:t.text})],2)}),[],!1,null,null,null,null).exports;const Ko=ut({inheritAttrs:!1,props:{back:String,color:String,element:{type:String,default:"li"},html:{type:Boolean},image:Object,link:String,text:String},created(){this.back&&window.panel.deprecated(": `back` prop will be removed in a future version. Use the `--bubble-back` CSS property instead."),this.color&&window.panel.deprecated(": `color` prop will be removed in a future version. Use the `--bubble-text` CSS property instead.")}},(function(){var t=this,e=t._self._c;return e(t.link?"k-link":"p",{tag:"component",staticClass:"k-bubble",style:{color:t.$helper.color(t.color),background:t.$helper.color(t.back)},attrs:{to:t.link,"data-has-text":Boolean(t.text)},nativeOn:{click:function(t){t.stopPropagation()}}},[t._t("image",(function(){var i;return[(null==(i=t.image)?void 0:i.src)?e("k-image-frame",t._b({},"k-image-frame",t.image,!1)):t.image?e("k-icon-frame",t._b({},"k-icon-frame",t.image,!1)):e("span")]})),t.text?[t.html?e("span",{staticClass:"k-bubble-text",domProps:{innerHTML:t._s(t.text)}}):e("span",{staticClass:"k-bubble-text"},[t._v(t._s(t.text))])]:t._e()],2)}),[],!1,null,null,null,null).exports;const Wo=ut({props:{width:{type:String,default:"1/1"},sticky:Boolean}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-column",style:"--width:"+t.width,attrs:{"data-sticky":t.sticky}},[t.sticky?e("div",[t._t("default")],2):t._t("default")],2)}),[],!1,null,null,null,null).exports,Jo={props:{element:{type:String,default:"div"},fit:String,ratio:String,cover:Boolean,back:String,theme:String}};const Go=ut({mixins:[Jo],inheritAttrs:!1,computed:{background(){return this.$helper.color(this.back)}}},(function(){var t=this;return(0,t._self._c)(t.element,{tag:"compontent",staticClass:"k-frame",style:{"--fit":t.fit??(t.cover?"cover":"contain"),"--ratio":t.ratio,"--back":t.background},attrs:{"data-theme":t.theme}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Xo=ut({mixins:[{mixins:[Jo],props:{color:String}}],inheritAttrs:!1},(function(){var t=this;return(0,t._self._c)("k-frame",t._b({staticClass:"k-color-frame",style:`color: ${t.color}`},"k-frame",t.$props,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Zo=ut({props:{disabled:{type:Boolean}},emits:["drop"],data:()=>({files:[],dragging:!1,over:!1}),methods:{cancel(){this.reset()},reset(){this.dragging=!1,this.over=!1},onDrop(t){return!0===this.disabled||!1===this.$helper.isUploadEvent(t)?this.reset():(this.$events.emit("dropzone.drop"),this.files=t.dataTransfer.files,this.$emit("drop",this.files),void this.reset())},onEnter(t){!1===this.disabled&&this.$helper.isUploadEvent(t)&&(this.dragging=!0)},onLeave(){this.reset()},onOver(t){!1===this.disabled&&this.$helper.isUploadEvent(t)&&(t.dataTransfer.dropEffect="copy",this.over=!0)}}},(function(){var t=this;return(0,t._self._c)("div",{staticClass:"k-dropzone",attrs:{"data-dragging":t.dragging,"data-over":t.over},on:{dragenter:t.onEnter,dragleave:t.onLeave,dragover:t.onOver,drop:t.onDrop}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Qo=ut({props:{gutter:String,variant:String},created(){this.gutter&&window.panel.deprecated(': the `gutter` prop will be removed in a future version. Use `style="gap: "` or `variant` prop instead.')}},(function(){var t=this;return(0,t._self._c)("div",{staticClass:"k-grid",attrs:{"data-gutter":t.gutter,"data-variant":t.variant}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const tl=ut({props:{editable:{type:Boolean},tabs:Array},created(){this.tabs&&window.panel.deprecated(": `tabs` prop isn't supported anymore and has no effect. Use `` as standalone component instead."),(this.$slots.left||this.$slots.right)&&window.panel.deprecated(": left/right slots will be removed in a future version. Use `buttons` slot instead.")}},(function(){var t=this,e=t._self._c;return e("header",{staticClass:"k-header",attrs:{"data-has-buttons":Boolean(t.$slots.buttons||t.$slots.left||t.$slots.right)}},[e("h1",{staticClass:"k-header-title"},[t.editable?e("button",{staticClass:"k-header-title-button",attrs:{type:"button"},on:{click:function(e){return t.$emit("edit")}}},[e("span",{staticClass:"k-header-title-text"},[t._t("default")],2),e("span",{staticClass:"k-header-title-icon"},[e("k-icon",{attrs:{type:"edit"}})],1)]):e("span",{staticClass:"k-header-title-text"},[t._t("default")],2)]),t.$slots.buttons||t.$slots.left||t.$slots.right?e("div",{staticClass:"k-header-buttons"},[t._t("buttons"),t._t("left"),t._t("right")],2):t._e()])}),[],!1,null,null,null,null).exports,el={props:{alt:String,color:String,type:String}};const il=ut({mixins:[el]},(function(){var t=this,e=t._self._c;return e("svg",{staticClass:"k-icon",style:{color:t.$helper.color(t.color)},attrs:{"aria-label":t.alt,role:t.alt?"img":null,"aria-hidden":!t.alt,"data-type":t.type}},[e("use",{attrs:{"xlink:href":"#icon-"+t.type}})])}),[],!1,null,null,null,null).exports;const nl=ut({mixins:[{mixins:[Jo,el],props:{type:null,icon:String}}],inheritAttrs:!1,computed:{isEmoji(){return this.$helper.string.hasEmoji(this.icon)}}},(function(){var t=this,e=t._self._c;return e("k-frame",t._b({staticClass:"k-icon-frame",attrs:{element:"figure"}},"k-frame",t.$props,!1),[t.isEmoji?e("span",{attrs:{"data-type":"emoji"}},[t._v(t._s(t.icon))]):e("k-icon",t._b({},"k-icon",{color:t.color,type:t.icon,alt:t.alt},!1))],1)}),[],!1,null,null,null,null).exports;const sl=ut({mixins:[{mixins:[Jo],props:{alt:String,sizes:String,src:String,srcset:String}}],inheritAttrs:!1},(function(){var t=this,e=t._self._c;return e("k-frame",t._g(t._b({staticClass:"k-image-frame k-image",attrs:{element:"figure"}},"k-frame",t.$props,!1),t.$listeners),[t.src?e("img",{key:t.src,attrs:{alt:t.alt??"",src:t.src,srcset:t.srcset,sizes:t.sizes},on:{dragstart:function(t){t.preventDefault()}}}):t._e()])}),[],!1,null,null,null,null).exports;const ol=ut({mixins:[{props:{autofocus:{default:!0,type:Boolean},nested:{default:!1,type:Boolean},type:{default:"overlay",type:String},visible:{default:!1,type:Boolean}}}],inheritAttrs:!0,watch:{visible(t,e){t!==e&&this.toggle()}},mounted(){this.toggle()},methods:{cancel(){this.$emit("cancel"),this.close()},close(){if(!1!==this.$refs.overlay.open)return this.nested?this.onClose():void this.$refs.overlay.close()},focus(){this.$helper.focus(this.$refs.overlay)},onCancel(t){this.nested&&(t.preventDefault(),this.cancel())},onClick(t){t.target.matches(".k-portal")&&this.cancel()},onClose(){this.$emit("close")},open(){!0!==this.$refs.overlay.open&&this.$refs.overlay.showModal(),setTimeout((()=>{!0===this.autofocus&&this.focus(),this.$emit("open")}))},toggle(){!0===this.visible?this.open():this.close()}}},(function(){var t=this;return(0,t._self._c)("dialog",{ref:"overlay",staticClass:"k-overlay",attrs:{"data-type":t.type},on:{cancel:t.onCancel,mousedown:t.onClick,touchdown:t.onClick,close:t.onClose}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const ll=ut({props:{label:String,value:String,icon:String,info:String,theme:String,link:String,click:Function,dialog:{type:[String,Object]}},computed:{component(){return null!==this.target?"k-link":"div"},target(){return this.link?this.link:this.click?this.click:this.dialog?()=>this.$dialog(this.dialog):null}}},(function(){var t=this,e=t._self._c;return e(t.component,{tag:"component",staticClass:"k-stat",attrs:{"data-theme":t.theme,to:t.target}},[t.label?e("dt",{staticClass:"k-stat-label"},[t.icon?e("k-icon",{attrs:{type:t.icon}}):t._e(),t._v(" "+t._s(t.label)+" ")],1):t._e(),t.value?e("dd",{staticClass:"k-stat-value"},[t._v(t._s(t.value))]):t._e(),t.info?e("dd",{staticClass:"k-stat-info"},[t._v(t._s(t.info))]):t._e()])}),[],!1,null,null,null,null).exports;const rl=ut({props:{reports:{type:Array,default:()=>[]},size:{type:String,default:"large"}},methods:{component(t){return null!==this.target(t)?"k-link":"div"},target(t){return t.link?t.link:t.click?t.click:t.dialog?()=>this.$dialog(t.dialog):null}}},(function(){var t=this,e=t._self._c;return e("dl",{staticClass:"k-stats",attrs:{"data-size":t.size}},t._l(t.reports,(function(i,n){return e("k-stat",t._b({key:n},"k-stat",i,!1))})),1)}),[],!1,null,null,null,null).exports;const al=ut({inheritAttrs:!1,props:{columns:{type:Object,default:()=>({})},disabled:Boolean,fields:{type:Object,default:()=>({})},empty:String,index:{type:[Number,Boolean],default:1},rows:Array,options:{default:()=>[],type:[Array,Function]},pagination:[Object,Boolean],sortable:Boolean},data(){return{values:this.rows}},computed:{colspan(){let t=this.columnsCount;return this.hasIndexColumn&&t++,this.hasOptions&&t++,t},columnsCount(){return this.$helper.object.length(this.columns)},dragOptions(){return{disabled:!this.sortable,fallbackClass:"k-table-row-fallback",ghostClass:"k-table-row-ghost"}},hasIndexColumn(){return this.sortable||!1!==this.index},hasOptions(){var t;return this.$scopedSlots.options||(null==(t=this.options)?void 0:t.length)>0||Object.values(this.values).filter((t=>null==t?void 0:t.options)).length>0}},watch:{rows(){this.values=this.rows}},methods:{isColumnEmpty(t){return 0===this.rows.filter((e=>!1===this.$helper.object.isEmpty(e[t]))).length},label(t,e){return t.label??this.$helper.string.ucfirst(e)},onChange(t){this.$emit("change",t)},onCell(t){this.$emit("cell",t)},onCellUpdate({columnIndex:t,rowIndex:e,value:i}){this.values[e][t]=i,this.$emit("input",this.values)},onHeader(t){this.$emit("header",t)},onOption(t,e,i){this.$emit("option",t,e,i)},onSort(){this.$emit("input",this.values),this.$emit("sort",this.values)},width(t){return"string"!=typeof t?"auto":!1===t.includes("/")?t:this.$helper.ratio(t,"auto",!1)}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-table",attrs:{"aria-disabled":t.disabled}},[e("table",{attrs:{"data-disabled":t.disabled,"data-indexed":t.hasIndexColumn}},[e("thead",[e("tr",[t.hasIndexColumn?e("th",{staticClass:"k-table-index-column",attrs:{"data-mobile":""}},[t._v(" # ")]):t._e(),t._l(t.columns,(function(i,n){return e("th",{key:n+"-header",staticClass:"k-table-column",style:"width:"+t.width(i.width),attrs:{"data-align":i.align,"data-mobile":i.mobile},on:{click:function(e){return t.onHeader({column:i,columnIndex:n})}}},[t._t("header",(function(){return[t._v(" "+t._s(t.label(i,n))+" ")]}),null,{column:i,columnIndex:n,label:t.label(i,n)})],2)})),t.hasOptions?e("th",{staticClass:"k-table-options-column",attrs:{"data-mobile":""}}):t._e()],2)]),e("k-draggable",{attrs:{list:t.values,options:t.dragOptions,handle:!0,element:"tbody"},on:{change:t.onChange,end:t.onSort}},[0===t.rows.length?e("tr",[e("td",{staticClass:"k-table-empty",attrs:{colspan:t.colspan}},[t._v(" "+t._s(t.empty)+" ")])]):t._l(t.values,(function(i,n){return e("tr",{key:n},[t.hasIndexColumn?e("td",{staticClass:"k-table-index-column",attrs:{"data-sortable":t.sortable&&!1!==i.sortable,"data-mobile":""}},[t._t("index",(function(){return[e("div",{staticClass:"k-table-index",domProps:{textContent:t._s(t.index+n)}})]}),null,{row:i,rowIndex:n}),t.sortable&&!1!==i.sortable?e("k-sort-handle",{staticClass:"k-table-sort-handle"}):t._e()],2):t._e(),t._l(t.columns,(function(s,o){return e("k-table-cell",{key:n+"-"+o,staticClass:"k-table-column",style:"width:"+t.width(s.width),attrs:{column:s,field:t.fields[o],row:i,mobile:s.mobile,value:i[o]},on:{input:function(e){return t.onCellUpdate({columnIndex:o,rowIndex:n,value:e})}},nativeOn:{click:function(e){return t.onCell({row:i,rowIndex:n,column:s,columnIndex:o})}}})})),t.hasOptions?e("td",{staticClass:"k-table-options-column",attrs:{"data-mobile":""}},[t._t("options",(function(){return[e("k-options-dropdown",{attrs:{options:i.options??t.options,text:(i.options??t.options).length>1},on:{option:function(e){return t.onOption(e,i,n)}}})]}),null,{row:i,rowIndex:n})],2):t._e()],2)}))],2)],1),t.pagination?e("k-pagination",t._b({staticClass:"k-table-pagination",on:{paginate:function(e){return t.$emit("paginate",e)}}},"k-pagination",t.pagination,!1)):t._e()],1)}),[],!1,null,null,null,null).exports;const ul=ut({inheritAttrs:!1,props:{column:Object,field:Object,mobile:{type:Boolean,default:!1},row:Object,value:{default:""}},computed:{component(){return this.$helper.isComponent(`k-${this.type}-field-preview`)?`k-${this.type}-field-preview`:this.$helper.isComponent(`k-table-${this.type}-cell`)?`k-table-${this.type}-cell`:Array.isArray(this.value)?"k-array-field-preview":"object"==typeof this.value?"k-object-field-preview":"k-text-field-preview"},type(){var t;return this.column.type??(null==(t=this.field)?void 0:t.type)}}},(function(){var t=this,e=t._self._c;return e("td",{staticClass:"k-table-cell",attrs:{"data-align":t.column.align,"data-mobile":t.mobile}},[!1===t.$helper.object.isEmpty(t.value)?e(t.component,{tag:"component",attrs:{column:t.column,field:t.field,row:t.row,value:t.value},on:{input:function(e){return t.$emit("input",e)}}}):t._e()],1)}),[],!1,null,null,null,null).exports;const cl=ut({props:{tab:String,tabs:{type:Array,default:()=>[]},theme:String},data(){return{observer:null,visible:this.tabs,invisible:[]}},computed:{current(){const t=this.tabs.find((t=>t.name===this.tab))??this.tabs[0];return null==t?void 0:t.name},dropdown(){return this.invisible.map(this.button)}},watch:{tabs:{async handler(){var t;null==(t=this.observer)||t.disconnect(),await this.$nextTick(),this.$el instanceof Element&&(this.observer=new ResizeObserver(this.resize),this.observer.observe(this.$el))},immediate:!0}},destroyed(){var t;null==(t=this.observer)||t.disconnect()},methods:{button(t){return{link:t.link,current:t.name===this.current,icon:t.icon,title:t.label,text:t.label??t.text??t.name}},async resize(){const t=this.$el.offsetWidth;this.visible=this.tabs,this.invisible=[],await this.$nextTick();const e=[...this.$refs.visible].map((t=>t.$el.offsetWidth));let i=32;for(let n=0;nt)return this.visible=this.tabs.slice(0,n),void(this.invisible=this.tabs.slice(n))}}},(function(){var t=this,e=t._self._c;return t.tabs.length>1?e("nav",{staticClass:"k-tabs"},[t._l(t.visible,(function(i){return e("k-button",t._b({key:i.name,ref:"visible",refInFor:!0,staticClass:"k-tab-button",attrs:{variant:"dimmed"}},"k-button",i=t.button(i),!1),[t._v(" "+t._s(i.text)+" "),i.badge?e("span",{staticClass:"k-tabs-badge",attrs:{"data-theme":t.theme}},[t._v(" "+t._s(i.badge)+" ")]):t._e()])})),t.invisible.length?[e("k-button",{staticClass:"k-tab-button k-tabs-dropdown-button",attrs:{current:!!t.invisible.find((e=>t.tab===e.name)),title:t.$t("more"),icon:"dots",variant:"dimmed"},on:{click:function(e){return e.stopPropagation(),t.$refs.more.toggle()}}}),e("k-dropdown-content",{ref:"more",staticClass:"k-tabs-dropdown",attrs:{options:t.dropdown,"align-x":"end"}})]:t._e()],2):t._e()}),[],!1,null,null,null,null).exports;const dl=ut({props:{align:String},created(){window.panel.deprecated(" will be removed in a future version.")}},(function(){var t=this;return(0,t._self._c)("div",{staticClass:"k-view",attrs:{"data-align":t.align}},[t._t("default")],2)}),[],!1,null,null,null,null).exports,pl={install(t){t.component("k-aspect-ratio",Uo),t.component("k-bar",Ho),t.component("k-box",Vo),t.component("k-bubble",Ko),t.component("k-bubbles",fo),t.component("k-color-frame",Xo),t.component("k-column",Wo),t.component("k-dropzone",Zo),t.component("k-frame",Go),t.component("k-grid",Qo),t.component("k-header",tl),t.component("k-icon-frame",nl),t.component("k-image-frame",sl),t.component("k-image",sl),t.component("k-overlay",ol),t.component("k-stat",ll),t.component("k-stats",rl),t.component("k-table",al),t.component("k-table-cell",ul),t.component("k-tabs",cl),t.component("k-view",dl)}};const hl=ut({components:{draggable:()=>R((()=>import("./vuedraggable.min.js")),[],import.meta.url)},props:{data:Object,element:{type:String,default:"div"},handle:[String,Boolean],list:[Array,Object],move:Function,options:Object},emits:["change","end","sort","start"],computed:{dragOptions(){let t=this.handle;return!0===t&&(t=".k-sort-handle"),{fallbackClass:"k-sortable-fallback",fallbackOnBody:!0,forceFallback:!0,ghostClass:"k-sortable-ghost",handle:t,scroll:document.querySelector(".k-panel-main"),...this.options}}},methods:{onStart(t){this.$panel.drag.start("data",{}),this.$emit("start",t)},onEnd(t){this.$panel.drag.stop(),this.$emit("end",t)}}},(function(){var t=this;return(0,t._self._c)("draggable",t._b({staticClass:"k-draggable",attrs:{"component-data":t.data,tag:t.element,list:t.list,move:t.move},on:{change:function(e){return t.$emit("change",e)},end:t.onEnd,sort:function(e){return t.$emit("sort",e)},start:t.onStart},scopedSlots:t._u([{key:"footer",fn:function(){return[t._t("footer")]},proxy:!0}],null,!0)},"draggable",t.dragOptions,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports;const ml=ut({data:()=>({error:null}),errorCaptured(t){return this.$panel.debug&&window.console.warn(t),this.error=t,!1},render(){return this.error?this.$slots.error?this.$slots.error[0]:this.$scopedSlots.error?this.$scopedSlots.error({error:this.error}):Vue.h("k-box",{attrs:{theme:"negative"}},this.error.message??this.error):this.$slots.default[0]}},null,null,!1,null,null,null,null).exports;const fl=ut({props:{html:String},mounted(){try{let t=this.$refs.iframe.contentWindow.document;t.open(),t.write(this.html),t.close()}catch(t){console.error(t)}}},(function(){var t=this,e=t._self._c;return e("k-overlay",{staticClass:"k-fatal",attrs:{visible:!0}},[e("div",{staticClass:"k-fatal-box"},[e("div",{staticClass:"k-notification",attrs:{"data-theme":"negative"}},[e("p",[t._v("The JSON response could not be parsed")]),e("k-button",{attrs:{icon:"cancel"},on:{click:function(e){return e.stopPropagation(),t.$panel.notification.close()}}})],1),e("iframe",{ref:"iframe",staticClass:"k-fatal-iframe"})])])}),[],!1,null,null,null,null).exports;const gl=ut({icons:window.panel.plugins.icons,methods:{viewbox(t,e){const i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.innerHTML=e,document.body.appendChild(i);const n=i.getBBox(),s=(n.width+2*n.x+(n.height+2*n.y))/2,o=Math.abs(s-16),l=Math.abs(s-24);return document.body.removeChild(i),o element with the corresponding viewBox attribute.`),"0 0 16 16"):"0 0 24 24"}}},(function(){var t=this,e=t._self._c;return e("svg",{staticClass:"k-icons",attrs:{"aria-hidden":"true",xmlns:"http://www.w3.org/2000/svg",overflow:"hidden"}},[e("defs",t._l(t.$options.icons,(function(i,n){return e("symbol",{key:n,attrs:{id:"icon-"+n,viewBox:t.viewbox(n,i)},domProps:{innerHTML:t._s(i)}})})),0)])}),[],!1,null,null,null,null).exports;const kl=ut({created(){window.panel.deprecated(' will be removed in a future version. Use instead.')}},(function(){var t=this._self._c;return t("span",{staticClass:"k-loader"},[t("k-icon",{staticClass:"k-loader-icon",attrs:{type:"loader"}})],1)}),[],!1,null,null,null,null).exports;const bl=ut({},(function(){var t=this,e=t._self._c;return t.$panel.notification.isOpen?e("div",{staticClass:"k-notification",attrs:{"data-theme":t.$panel.notification.theme}},[e("p",[t._v(t._s(t.$panel.notification.message))]),e("k-button",{attrs:{icon:"cancel"},on:{click:function(e){return t.$panel.notification.close()}}})],1):t._e()}),[],!1,null,null,null,null).exports;const vl=ut({},(function(){var t=this,e=t._self._c;return t.$panel.isOffline?e("div",{staticClass:"k-offline-warning"},[e("p",[e("k-icon",{attrs:{type:"bolt"}}),t._v(" "+t._s(t.$t("error.offline")))],1)]):t._e()}),[],!1,null,null,null,null).exports,yl=(t,e=!1)=>{if(t>=0&&t<=100)return!0;if(e)throw new Error("value has to be between 0 and 100");return!1};const $l=ut({props:{value:{type:Number,default:0,validator:yl}},data(){return{state:this.value}},watch:{value(t){this.state=t}},methods:{set(t){window.panel.deprecated(": `set` method will be removed in a future version. Use the `value` prop instead."),yl(t,!0),this.state=t}}},(function(){var t=this;return(0,t._self._c)("progress",{staticClass:"k-progress",attrs:{max:"100"},domProps:{value:t.state}},[t._v(t._s(t.state)+"%")])}),[],!1,null,null,null,null).exports;const wl=ut({},(function(){return(0,this._self._c)("k-button",{staticClass:"k-sort-handle k-sort-button",attrs:{title:this.$t("sort.drag"),icon:"sort","aria-hidden":"true"}})}),[],!1,null,null,null,null).exports,xl={install(t){t.component("k-draggable",hl),t.component("k-error-boundary",ml),t.component("k-fatal",fl),t.component("k-icon",il),t.component("k-icons",gl),t.component("k-loader",kl),t.component("k-notification",bl),t.component("k-offline-warning",vl),t.component("k-progress",$l),t.component("k-sort-handle",wl)}};const _l=ut({props:{crumbs:{type:Array,default:()=>[]},label:{type:String,default:"Breadcrumb"},view:Object},computed:{dropdown(){return this.segments.map((t=>({...t,text:t.label,icon:"angle-right"})))},segments(){const t=[];return this.view&&t.push({link:this.view.link,label:this.view.label??this.view.breadcrumbLabel,icon:this.view.icon,loading:this.$panel.isLoading}),[...t,...this.crumbs]}},created(){this.view&&window.panel.deprecated(": `view` prop will be removed in a future version. Use `crumbs` instead.")}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-breadcrumb",attrs:{"aria-label":t.label}},[t.segments.length>1?e("div",{staticClass:"k-breadcrumb-dropdown"},[e("k-button",{attrs:{icon:"home"},on:{click:function(e){return t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",attrs:{options:t.dropdown}})],1):t._e(),e("ol",t._l(t.segments,(function(i,n){return e("li",{key:n},[e("k-button",{staticClass:"k-breadcrumb-link",attrs:{icon:i.loading?"loader":i.icon,link:i.link,disabled:!i.link,text:i.text??i.label,title:i.text??i.label,current:n===t.segments.length-1&&"page",variant:"dimmed",size:"sm"}})],1)})),0)])}),[],!1,null,null,null,null).exports;const Sl=ut({props:{items:{type:Array},name:{default:"items",type:String},selected:{type:String},type:{default:"radio",type:String}}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-browser"},[e("div",{staticClass:"k-browser-items"},t._l(t.items,(function(i){return e("label",{key:i.value,staticClass:"k-browser-item",attrs:{"aria-selected":t.selected===i.value}},[e("input",{attrs:{name:t.name,type:t.type},domProps:{checked:t.selected===i.value},on:{change:function(e){return t.$emit("select",i)}}}),i.image?e("k-item-image",{staticClass:"k-browser-item-image",attrs:{image:{...i.image,cover:!0,back:"black"}}}):t._e(),e("span",{staticClass:"k-browser-item-info"},[t._v(" "+t._s(i.label)+" ")])],1)})),0)])}),[],!1,null,null,null,null).exports;const Cl=ut({inheritAttrs:!1,props:{autofocus:Boolean,click:{type:Function,default:()=>{}},current:[String,Boolean],dialog:String,disabled:Boolean,drawer:String,dropdown:Boolean,element:String,icon:String,id:[String,Number],link:String,responsive:[Boolean,String],rel:String,role:String,selected:[String,Boolean],size:String,target:String,tabindex:String,text:[String,Number],theme:String,title:String,tooltip:String,type:{type:String,default:"button"},variant:String},computed:{attrs(){const t={"aria-current":this.current,"aria-disabled":this.disabled,"aria-selected":this.selected,"data-responsive":this.responsive,"data-size":this.size,"data-theme":this.theme,"data-variant":this.variant,id:this.id,tabindex:this.tabindex,title:this.title??this.tooltip};return"k-link"===this.component?(t.disabled=this.disabled,t.to=this.link,t.rel=this.rel,t.role=this.role,t.target=this.target):"button"===this.component&&(t.autofocus=this.autofocus,t.type=this.type),this.dropdown&&(t["aria-haspopup"]="menu",t["data-dropdown"]=this.dropdown),t},component(){return this.element?this.element:this.link?"k-link":"button"}},created(){this.tooltip&&window.panel.deprecated(": the `tooltip` prop will be removed in a future version. Use the `title` prop instead.")},methods:{focus(){var t,e;null==(e=(t=this.$el).focus)||e.call(t)},onClick(t){var e;return this.disabled?(t.preventDefault(),!1):this.dialog?this.$dialog(this.dialog):this.drawer?this.$drawer(this.drawer):(null==(e=this.click)||e.call(this,t),void this.$emit("click",t))}}},(function(){var t=this,e=t._self._c;return e(t.component,t._b({tag:"component",staticClass:"k-button",attrs:{"data-has-icon":Boolean(t.icon),"data-has-text":Boolean(t.text||t.$slots.default)},on:{click:t.onClick}},"component",t.attrs,!1),[t.icon?e("span",{staticClass:"k-button-icon"},[e("k-icon",{attrs:{type:t.icon}})],1):t._e(),t.text||t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default",(function(){return[t._v(" "+t._s(t.text)+" ")]}))],2):t._e(),t.dropdown&&(t.text||t.$slots.default)?e("span",{staticClass:"k-button-arrow"},[e("k-icon",{attrs:{type:"angle-down"}})],1):t._e()])}),[],!1,null,null,null,null).exports;const Ol=ut({props:{buttons:Array,layout:String,variant:String,theme:String,size:String,responsive:Boolean}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-button-group",attrs:{"data-layout":t.layout}},[t.$slots.default?t._t("default"):t._l(t.buttons,(function(i,n){return e("k-button",t._b({key:n},"k-button",{variant:t.variant,theme:t.theme,size:t.size,responsive:t.responsive,...i},!1))}))],2)}),[],!1,null,null,null,null).exports;const Al=ut({props:{selected:{type:String}},data:()=>({files:[],page:null,view:"tree"}),methods:{selectFile(t){this.$emit("select",t)},async selectPage(t){this.page=t;const e="/"===t.id?"/site/files":"/pages/"+this.$api.pages.id(t.id)+"/files",{data:i}=await this.$api.get(e,{select:"filename,id,panelImage,url,uuid"});this.files=i.map((t=>({label:t.filename,image:t.panelImage,id:t.id,url:t.url,uuid:t.uuid,value:t.uuid??t.url}))),this.view="files"},async togglePage(){await this.$nextTick(),this.$refs.tree.scrollIntoView({behaviour:"smooth",block:"nearest",inline:"nearest"})}}},(function(){var t,e,i=this,n=i._self._c;return n("div",{staticClass:"k-file-browser",attrs:{"data-view":i.view}},[n("div",{staticClass:"k-file-browser-layout"},[n("aside",{ref:"tree",staticClass:"k-file-browser-tree"},[n("k-page-tree",{attrs:{current:null==(t=i.page)?void 0:t.value},on:{select:i.selectPage,toggleBranch:i.togglePage}})],1),n("div",{ref:"items",staticClass:"k-file-browser-items"},[n("k-button",{staticClass:"k-file-browser-back-button",attrs:{icon:"angle-left",text:null==(e=i.page)?void 0:e.label},on:{click:function(t){i.view="tree"}}}),i.files.length?n("k-browser",{attrs:{items:i.files,selected:i.selected},on:{select:i.selectFile}}):i._e()],1)])])}),[],!1,null,null,null,null).exports;const Ml=ut({props:{disabled:Boolean,rel:String,tabindex:[String,Number],target:String,title:String,to:[String,Function]},emits:["click"],computed:{href(){return"function"==typeof this.to?"":"/"!==this.to[0]||this.target?!0===this.to.includes("@")&&!1===this.to.includes("/")&&!1===this.to.startsWith("mailto:")?"mailto:"+this.to:this.to:this.$url(this.to)},relAttr(){return"_blank"===this.target?"noreferrer noopener":this.rel}},methods:{isRoutable(t){if(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)return!1;if(t.defaultPrevented)return!1;if(void 0!==t.button&&0!==t.button)return!1;if(this.target)return!1;if("string"==typeof this.href){if(this.href.includes("://")||this.href.startsWith("//"))return!1;if(this.href.includes("mailto:"))return!1}return!0},onClick(t){if(!0===this.disabled)return t.preventDefault(),!1;"function"==typeof this.to&&(t.preventDefault(),this.to()),this.isRoutable(t)&&(t.preventDefault(),this.$go(this.to)),this.$emit("click",t)}}},(function(){var t=this,e=t._self._c;return t.to&&!t.disabled?e("a",{ref:"link",staticClass:"k-link",attrs:{href:t.href,rel:t.relAttr,tabindex:t.tabindex,target:t.target,title:t.title},on:{click:t.onClick}},[t._t("default")],2):e("span",{staticClass:"k-link",attrs:{title:t.title,"aria-disabled":""}},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const jl=ut({props:{tab:String,tabs:{type:Array,default:()=>[]}},computed:{withBadges(){const t=Object.keys(this.$store.getters["content/changes"]());return this.tabs.map((e=>{const i=[];for(const t in e.columns)for(const n in e.columns[t].sections)if("fields"===e.columns[t].sections[n].type)for(const s in e.columns[t].sections[n].fields)i.push(s);return e.badge=i.filter((e=>t.includes(e.toLowerCase()))).length,e}))}}},(function(){var t=this;return(0,t._self._c)("k-tabs",{staticClass:"k-model-tabs",attrs:{tab:t.tab,tabs:t.withBadges,theme:"notice"}})}),[],!1,null,null,null,null).exports;const Il=ut({props:{axis:String,disabled:Boolean,element:{type:String,default:"div"},select:{type:String,default:":where(button, a):not(:disabled)"}},computed:{keys(){switch(this.axis){case"x":return{ArrowLeft:this.prev,ArrowRight:this.next};case"y":return{ArrowUp:this.prev,ArrowDown:this.next};default:return{ArrowLeft:this.prev,ArrowRight:this.next,ArrowUp:this.prev,ArrowDown:this.next}}}},mounted(){this.$el.addEventListener("keydown",this.keydown)},destroyed(){this.$el.removeEventListener("keydown",this.keydown)},methods:{focus(t=0,e){this.move(t,e)},keydown(t){var e;if(this.disabled)return!1;null==(e=this.keys[t.key])||e.apply(this,[t])},move(t=0,e){var i;const n=[...this.$el.querySelectorAll(this.select)];let s=n.findIndex((t=>t===document.activeElement||t.contains(document.activeElement)));switch(-1===s&&(s=0),t){case"first":t=0;break;case"next":t=s+1;break;case"last":t=n.length-1;break;case"prev":t=s-1}t<0?this.$emit("prev"):t>=n.length?this.$emit("next"):null==(i=n[t])||i.focus(),null==e||e.preventDefault()},next(t){this.move("next",t)},prev(t){this.move("prev",t)}}},(function(){var t=this;return(0,t._self._c)(t.element,{tag:"component",staticClass:"k-navigate"},[t._t("default")],2)}),[],!1,null,null,null,null).exports;const Tl=ut({name:"k-tree",inheritAttrs:!1,props:{element:{type:String,default:"k-tree"},current:{type:String},items:{type:[Array,Object]},level:{default:0,type:Number}},data(){return{state:this.items}},methods:{arrow:t=>!0===t.loading?"loader":t.open?"angle-down":"angle-right",close(t){this.$set(t,"open",!1),this.$emit("close",t)},open(t){this.$set(t,"open",!0),this.$emit("open",t)},select(t){this.$emit("select",t)},toggle(t){this.$emit("toggle",t),!0===t.open?this.close(t):this.open(t)}}},(function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-tree",class:t.$options.name,style:{"--tree-level":t.level}},t._l(t.state,(function(i,n){return e("li",{key:n,attrs:{"aria-expanded":i.open,"aria-current":i.value===t.current}},[e("p",{staticClass:"k-tree-branch",attrs:{"data-has-subtree":i.hasChildren&&i.open}},[e("button",{staticClass:"k-tree-toggle",attrs:{disabled:!i.hasChildren,type:"button"},on:{click:function(e){return t.toggle(i)}}},[e("k-icon",{attrs:{type:t.arrow(i)}})],1),e("button",{staticClass:"k-tree-folder",attrs:{disabled:i.disabled,type:"button"},on:{click:function(e){return t.select(i)},dblclick:function(e){return t.toggle(i)}}},[e("k-icon-frame",{attrs:{icon:i.icon??"folder"}}),e("span",{staticClass:"k-tree-folder-label"},[t._v(t._s(i.label))])],1)]),i.hasChildren&&i.open?[e(t.$options.name,t._b({tag:"component",attrs:{items:i.children,level:t.level+1},on:{close:function(e){return t.$emit("close",e)},open:function(e){return t.$emit("open",e)},select:function(e){return t.$emit("select",e)},toggle:function(e){return t.$emit("toggle",e)}}},"component",t.$props,!1))]:t._e()],2)})),0)}),[],!1,null,null,null,null).exports;const El=ut({name:"k-page-tree",extends:Tl,inheritAttrs:!1,props:{root:{default:!0,type:Boolean},current:{type:String},move:{type:String}},data:()=>({state:[]}),async created(){if(this.items)this.state=this.items;else{const t=await this.load(null);await this.open(t[0]),this.state=this.root?t:t[0].children}},methods:{async load(t){return await this.$panel.get("site/tree",{query:{move:this.move??null,parent:t}})},async open(t){if(!1===t.hasChildren)return!1;this.$set(t,"loading",!0),"string"==typeof t.children&&(t.children=await this.load(t.children)),this.$set(t,"open",!0),this.$set(t,"loading",!1)}}},null,null,!1,null,null,null,null).exports;const Ll=ut({props:{details:Boolean,limit:{type:Number,default:10},page:{type:Number,default:1},total:{type:Number,default:0},validate:{type:Function,default:()=>Promise.resolve()}},computed:{end(){return Math.min(this.start-1+this.limit,this.total)},detailsText(){return 1===this.limit?this.start:this.start+"-"+this.end},offset(){return this.start-1},pages(){return Math.ceil(this.total/this.limit)},start(){return(this.page-1)*this.limit+1}},methods:{async goTo(t){var e;try{await this.validate(t),null==(e=this.$refs.dropdown)||e.close();const i=((t=Math.max(1,Math.min(t,this.pages)))-1)*this.limit+1;this.$emit("paginate",{page:t,start:i,end:Math.min(i-1+this.limit,this.total),limit:this.limit,offset:i-1,total:this.total})}catch(i){}},prev(){this.goTo(this.page-1)},next(){this.goTo(this.page+1)}}},(function(){var t=this,e=t._self._c;return t.pages>1?e("k-button-group",{staticClass:"k-pagination",attrs:{layout:"collapsed"},nativeOn:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])||"button"in e&&0!==e.button?null:t.prev.apply(null,arguments)},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"right",39,e.key,["Right","ArrowRight"])||"button"in e&&2!==e.button?null:t.next.apply(null,arguments)}]}},[e("k-button",{attrs:{disabled:t.start<=1,title:t.$t("prev"),icon:"angle-left",size:"xs",variant:"filled"},on:{click:t.prev}}),t.details?[e("k-button",{staticClass:"k-pagination-details",attrs:{disabled:t.total<=t.limit,text:t.total>1?`${t.detailsText} / ${t.total}`:t.total,size:"xs",variant:"filled"},on:{click:function(e){return t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",staticClass:"k-pagination-selector",attrs:{"align-x":"end"},nativeOn:{keydown:[function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"left",37,e.key,["Left","ArrowLeft"])||"button"in e&&0!==e.button?null:void e.stopPropagation()},function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"right",39,e.key,["Right","ArrowRight"])||"button"in e&&2!==e.button?null:void e.stopPropagation()}]}},[e("form",{attrs:{method:"dialog"},on:{click:function(t){t.stopPropagation()},submit:function(e){return t.goTo(t.$refs.page.value)}}},[e("label",{attrs:{for:t._uid}},[t._v(t._s(t.$t("pagination.page"))+":")]),e("select",{ref:"page",attrs:{id:t._uid,autofocus:!0}},t._l(t.pages,(function(i){return e("option",{key:i,domProps:{selected:t.page===i,value:i}},[t._v(" "+t._s(i)+" ")])})),0),e("k-button",{attrs:{type:"submit",icon:"check"}})],1)])]:t._e(),e("k-button",{attrs:{disabled:t.end>=t.total,title:t.$t("next"),icon:"angle-right",size:"xs",variant:"filled"},on:{click:t.next}})],2):t._e()}),[],!1,null,null,null,null).exports;const Dl=ut({props:{prev:{type:[Boolean,Object],default:!1},next:{type:[Boolean,Object],default:!1}},computed:{buttons(){return[{...this.button(this.prev),icon:"angle-left"},{...this.button(this.next),icon:"angle-right"}]},isFullyDisabled(){return 0===this.buttons.filter((t=>!t.disabled)).length}},methods:{button:t=>t||{disabled:!0,link:"#"}}},(function(){var t=this,e=t._self._c;return t.isFullyDisabled?t._e():e("k-button-group",{staticClass:"k-prev-next",attrs:{buttons:t.buttons,layout:"collapsed",size:"xs"}})}),[],!1,null,null,null,null).exports;const Bl=ut({props:{disabled:Boolean,image:{type:Object},removable:Boolean},computed:{isRemovable(){return this.removable&&!this.disabled}},methods:{remove(){this.isRemovable&&this.$emit("remove")},focus(){this.$refs.button.focus()}}},(function(){var t=this,e=t._self._c;return e("button",{ref:"button",staticClass:"k-tag",attrs:{"aria-disabled":t.disabled,"data-has-image":Boolean(t.image),"data-has-toggle":t.isRemovable,type:"button"},on:{keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"delete",[8,46],e.key,["Backspace","Delete","Del"])?null:(e.preventDefault(),t.remove.apply(null,arguments))}}},[t._t("image",(function(){var i;return[(null==(i=t.image)?void 0:i.src)?e("k-image-frame",t._b({staticClass:"k-tag-image"},"k-image-frame",t.image,!1)):t.image?e("k-icon-frame",t._b({staticClass:"k-tag-image"},"k-icon-frame",t.image,!1)):t._e()]})),t.$slots.default?e("span",{staticClass:"k-tag-text"},[t._t("default")],2):t._e(),t.isRemovable?e("k-icon-frame",{staticClass:"k-tag-toggle",attrs:{icon:"cancel-small"},nativeOn:{click:function(e){return e.stopPropagation(),t.remove.apply(null,arguments)}}}):t._e()],2)}),[],!1,null,null,null,null).exports;const ql=ut({inheritAttrs:!1,props:{icon:String,id:[String,Number],responsive:Boolean,theme:String,tooltip:String},created(){window.panel.deprecated(' will be removed in a future version. Use instead.')}},(function(){var t=this,e=t._self._c;return e("span",{staticClass:"k-button",attrs:{id:t.id,"data-disabled":!0,"data-responsive":t.responsive,"data-theme":t.theme,title:t.tooltip}},[t.icon?e("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)}),[],!1,null,null,null,null).exports;const Pl=ut({inheritAttrs:!1,props:{autofocus:Boolean,current:[String,Boolean],icon:String,id:[String,Number],link:String,rel:String,responsive:Boolean,role:String,target:String,tabindex:String,theme:String,tooltip:String},created(){window.panel.deprecated(' will be removed in a future version. Use instead.')},methods:{focus(){this.$el.focus()}}},(function(){var t=this,e=t._self._c;return e("k-link",{staticClass:"k-button",attrs:{id:t.id,"aria-current":t.current,autofocus:t.autofocus,"data-theme":t.theme,"data-responsive":t.responsive,rel:t.rel,role:t.role,tabindex:t.tabindex,target:t.target,title:t.tooltip,to:t.link}},[t.icon?e("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)}),[],!1,null,null,null,null).exports;const Nl=ut({inheritAttrs:!1,props:{autofocus:Boolean,click:{type:Function,default:()=>{}},current:[String,Boolean],icon:String,id:[String,Number],responsive:Boolean,role:String,tabindex:String,theme:String,tooltip:String,type:{type:String,default:"button"}},created(){window.panel.deprecated(" will be removed in a future version. Use instead.")}},(function(){var t=this,e=t._self._c;return e("button",{staticClass:"k-button",attrs:{id:t.id,"aria-current":t.current,autofocus:t.autofocus,"data-theme":t.theme,"data-responsive":t.responsive,role:t.role,tabindex:t.tabindex,title:t.tooltip,type:t.type},on:{click:t.click}},[t.icon?e("k-icon",{staticClass:"k-button-icon",attrs:{type:t.icon,alt:t.tooltip}}):t._e(),t.$slots.default?e("span",{staticClass:"k-button-text"},[t._t("default")],2):t._e()],1)}),[],!1,null,null,null,null).exports,zl={install(t){t.component("k-breadcrumb",_l),t.component("k-browser",Sl),t.component("k-button",Cl),t.component("k-button-group",Ol),t.component("k-file-browser",Al),t.component("k-link",Ml),t.component("k-model-tabs",jl),t.component("k-navigate",Il),t.component("k-page-tree",El),t.component("k-pagination",Ll),t.component("k-prev-next",Dl),t.component("k-tag",Bl),t.component("k-tags",Gn),t.component("k-tree",Tl),t.component("k-button-disabled",ql),t.component("k-button-link",Pl),t.component("k-button-native",Nl)}};const Fl=ut({props:{buttons:Array,headline:String,invalid:Boolean,link:String,required:Boolean}},(function(){var t=this,e=t._self._c;return e("section",{staticClass:"k-section",attrs:{"data-invalid":t.invalid}},[t.headline||t.buttons?e("header",{staticClass:"k-bar k-section-header"},[e("k-label",{attrs:{invalid:t.invalid,link:t.link,required:t.required,type:"section"}},[t._v(" "+t._s(t.headline)+" ")]),t.buttons?e("k-button-group",{attrs:{buttons:t.buttons,size:"xs",variant:"filled"}}):t._e()],1):t._e(),t._t("default")],2)}),[],!1,null,null,null,null).exports;const Rl=ut({props:{empty:String,blueprint:String,lock:[Boolean,Object],parent:String,tab:Object},computed:{content(){return this.$store.getters["content/values"]()}},methods:{exists(t){return this.$helper.isComponent(`k-${t}-section`)}}},(function(){var t=this,e=t._self._c;return 0===t.tab.columns.length?e("k-box",{attrs:{html:!0,text:t.empty,theme:"info"}}):e("k-grid",{staticClass:"k-sections",attrs:{variant:"columns"}},t._l(t.tab.columns,(function(i,n){return e("k-column",{key:t.parent+"-column-"+n,attrs:{width:i.width,sticky:i.sticky}},[t._l(i.sections,(function(s,o){return[t.$helper.field.isVisible(s,t.content)?[t.exists(s.type)?e("k-"+s.type+"-section",t._b({key:t.parent+"-column-"+n+"-section-"+o+"-"+t.blueprint,tag:"component",class:"k-section-name-"+s.name,attrs:{column:i.width,lock:t.lock,name:s.name,parent:t.parent,timestamp:t.$panel.view.timestamp},on:{submit:function(e){return t.$emit("submit",e)}}},"component",s,!1)):[e("k-box",{key:t.parent+"-column-"+n+"-section-"+o,attrs:{text:t.$t("error.section.type.invalid",{type:s.type}),icon:"alert",theme:"negative"}})]]:t._e()]}))],2)})),1)}),[],!1,null,null,null,null).exports,Yl={props:{blueprint:String,lock:[Boolean,Object],help:String,name:String,parent:String,timestamp:Number},methods:{load(){return this.$api.get(this.parent+"/sections/"+this.name)}}};const Ul=ut({mixins:[Yl],inheritAttrs:!1,data:()=>({fields:{},isLoading:!0,issue:null}),computed:{values(){return this.$store.getters["content/values"]()}},watch:{timestamp(){this.fetch()}},created(){this.onInput=zt(this.onInput,50),this.fetch()},methods:{async fetch(){try{const t=await this.load();this.fields=t.fields;for(const e in this.fields)this.fields[e].section=this.name,this.fields[e].endpoints={field:this.parent+"/fields/"+e,section:this.parent+"/sections/"+this.name,model:this.parent}}catch(t){this.issue=t}finally{this.isLoading=!1}},onInput(t,e,i){this.$store.dispatch("content/update",[i,t[i]])},onSubmit(t){this.$store.dispatch("content/update",[null,t]),this.$events.emit("keydown.cmd.s",t)}}},(function(){var t=this,e=t._self._c;return t.isLoading?t._e():e("k-section",{staticClass:"k-fields-section",attrs:{headline:t.issue?"Error":null}},[t.issue?e("k-box",{attrs:{text:t.issue.message,html:!1,icon:"alert",theme:"negative"}}):t._e(),e("k-form",{attrs:{fields:t.fields,validate:!0,value:t.values,disabled:t.lock&&"lock"===t.lock.state},on:{input:t.onInput,submit:t.onSubmit}})],1)}),[],!1,null,null,null,null).exports;const Hl=ut({inheritAttrs:!1,props:{blueprint:String,column:String,parent:String,name:String,timestamp:Number},data:()=>({data:[],error:null,isLoading:!1,isProcessing:!1,options:{columns:{},empty:null,headline:null,help:null,layout:"list",link:null,max:null,min:null,size:null,sortable:null},pagination:{page:null},searchterm:null,searching:!1}),computed:{addIcon:()=>"add",buttons(){let t=[];return this.canSearch&&t.push({icon:"filter",text:this.$t("filter"),click:this.onSearchToggle,responsive:!0}),this.canAdd&&t.push({icon:this.addIcon,text:this.$t("add"),click:this.onAdd,responsive:!0}),t},canAdd:()=>!0,canDrop:()=>!1,canSearch(){return this.options.search},collection(){return{columns:this.options.columns,empty:this.emptyPropsWithSearch,layout:this.options.layout,help:this.options.help,items:this.items,pagination:this.pagination,sortable:!this.isProcessing&&this.options.sortable,size:this.options.size}},emptyProps(){return{icon:"page",text:this.$t("pages.empty")}},emptyPropsWithSearch(){return{...this.emptyProps,text:this.searching?this.$t("search.results.none"):this.options.empty??this.emptyProps.text}},items(){return this.data},isInvalid(){var t;return!((null==(t=this.searchterm)?void 0:t.length)>0)&&(!!(this.options.min&&this.data.lengththis.options.max))},paginationId(){return"kirby$pagination$"+this.parent+"/"+this.name},type:()=>"models"},watch:{searchterm(){this.search()},timestamp(){this.reload()}},created(){this.search=zt(this.search,200),this.load()},methods:{async load(t){this.isProcessing=!0,t||(this.isLoading=!0);const e=this.pagination.page??localStorage.getItem(this.paginationId)??1;try{const t=await this.$api.get(this.parent+"/sections/"+this.name,{page:e,searchterm:this.searchterm});this.options=t.options,this.pagination=t.pagination,this.data=t.data}catch(i){this.error=i.message}finally{this.isProcessing=!1,this.isLoading=!1}},onAction(){},onAdd(){},onChange(){},onDrop(){},onSort(){},onPaginate(t){localStorage.setItem(this.paginationId,t.page),this.pagination=t,this.reload()},onSearchToggle(){this.searching=!this.searching,this.searchterm=null},async reload(){await this.load(!0)},async search(){this.pagination.page=0,await this.reload()},update(){this.reload(),this.$events.emit("model.update")}}},(function(){var t=this,e=t._self._c;return!1===t.isLoading?e("k-section",{class:`k-models-section k-${t.type}-section`,attrs:{buttons:t.buttons,"data-processing":t.isProcessing,headline:t.options.headline??" ",invalid:t.isInvalid,link:t.options.link,required:Boolean(t.options.min)}},[t.error?e("k-box",{attrs:{icon:"alert",theme:"negative"}},[e("k-text",{attrs:{size:"small"}},[e("strong",[t._v(" "+t._s(t.$t("error.section.notLoaded",{name:t.name}))+": ")]),t._v(" "+t._s(t.error)+" ")])],1):[e("k-dropzone",{attrs:{disabled:!t.canDrop},on:{drop:t.onDrop}},[t.searching&&t.options.search?e("k-input",{staticClass:"k-models-section-search",attrs:{autofocus:!0,placeholder:t.$t("filter")+" …",value:t.searchterm,icon:"search",type:"text"},on:{input:function(e){t.searchterm=e},keydown:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"])?null:t.onSearchToggle.apply(null,arguments)}}}):t._e(),e("k-collection",t._g(t._b({on:{action:t.onAction,change:t.onChange,sort:t.onSort,paginate:t.onPaginate}},"k-collection",t.collection,!1),t.canAdd?{empty:t.onAdd}:{}))],1)]],2):t._e()}),[],!1,null,null,null,null).exports;const Vl=ut({extends:Hl,computed:{addIcon:()=>"upload",canAdd(){return this.$panel.permissions.files.create&&!1!==this.options.upload},canDrop(){return!1!==this.canAdd},emptyProps(){return{icon:"image",text:this.$t("files.empty")}},items(){return this.data.map((t=>(t.sortable=this.options.sortable,t.column=this.column,t.options=this.$dropdown(t.link,{query:{view:"list",update:this.options.sortable,delete:this.data.length>this.options.min}}),t.data={"data-id":t.id,"data-template":t.template},t)))},type:()=>"files",uploadOptions(){return{...this.options.upload,url:this.$panel.urls.api+"/"+this.options.upload.api,on:{complete:()=>{this.$panel.notification.success({context:"view"})}}}}},created(){this.$events.on("model.update",this.reload),this.$events.on("file.sort",this.reload)},destroyed(){this.$events.off("model.update",this.reload),this.$events.off("file.sort",this.reload)},methods:{onAction(t,e){"replace"===t&&this.replace(e)},onAdd(){this.canAdd&&this.$panel.upload.pick(this.uploadOptions)},onDrop(t){this.canAdd&&this.$panel.upload.open(t,this.uploadOptions)},async onSort(t){if(!1===this.options.sortable)return!1;this.isProcessing=!0;try{await this.$api.patch(this.options.apiUrl+"/files/sort",{files:t.map((t=>t.id)),index:this.pagination.offset}),this.$panel.notification.success(),this.$events.emit("file.sort")}catch(e){this.$panel.error(e),this.reload()}finally{this.isProcessing=!1}},replace(t){this.$panel.upload.replace(t,this.uploadOptions)}}},null,null,!1,null,null,null,null).exports;const Kl=ut({mixins:[Yl],inheritAttrs:!1,data:()=>({icon:null,label:null,text:null,theme:null}),async created(){const t=await this.load();this.icon=t.icon,this.label=t.label,this.text=t.text,this.theme=t.theme??"info"}},(function(){var t=this,e=t._self._c;return e("k-section",{staticClass:"k-info-section",attrs:{headline:t.label}},[e("k-box",{attrs:{html:!0,icon:t.icon,text:t.text,theme:t.theme}})],1)}),[],!1,null,null,null,null).exports;const Wl=ut({extends:Hl,computed:{canAdd(){return this.options.add&&this.$panel.permissions.pages.create},items(){return this.data.map((t=>{const e=!1===t.permissions.changeStatus,i=this.$helper.page.status(t.status,e);return i.click=()=>this.$dialog(t.link+"/changeStatus"),t.flag={status:t.status,disabled:e,click:()=>this.$dialog(t.link+"/changeStatus")},t.sortable=t.permissions.sort&&this.options.sortable,t.deletable=this.data.length>this.options.min,t.column=this.column,t.buttons=[i,...t.buttons??[]],t.options=this.$dropdown(t.link,{query:{view:"list",delete:t.deletable,sort:t.sortable}}),t.data={"data-id":t.id,"data-status":t.status,"data-template":t.template},t}))},type:()=>"pages"},created(){this.$events.on("page.changeStatus",this.reload),this.$events.on("page.sort",this.reload)},destroyed(){this.$events.off("page.changeStatus",this.reload),this.$events.off("page.sort",this.reload)},methods:{onAdd(){this.canAdd&&this.$dialog("pages/create",{query:{parent:this.options.link??this.parent,view:this.parent,section:this.name}})},async onChange(t){let e=null;if(t.added&&(e="added"),t.moved&&(e="moved"),e){this.isProcessing=!0;const n=t[e].element,s=t[e].newIndex+1+this.pagination.offset;try{await this.$api.pages.changeStatus(n.id,"listed",s),this.$panel.notification.success(),this.$events.emit("page.sort",n)}catch(i){this.$panel.error({message:i.message,details:i.details}),await this.reload()}finally{this.isProcessing=!1}}}}},null,null,!1,null,null,null,null).exports;const Jl=ut({mixins:[Yl],data:()=>({headline:null,isLoading:!0,reports:null,size:null}),async created(){const t=await this.load();this.isLoading=!1,this.headline=t.headline,this.reports=t.reports,this.size=t.size},methods:{}},(function(){var t=this,e=t._self._c;return!1===t.isLoading?e("k-section",{staticClass:"k-stats-section",attrs:{headline:t.headline}},[t.reports.length>0?e("k-stats",{attrs:{reports:t.reports,size:t.size}}):e("k-empty",{attrs:{icon:"chart"}},[t._v(" "+t._s(t.$t("stats.empty")))])],1):t._e()}),[],!1,null,null,null,null).exports,Gl={install(t){t.component("k-section",Fl),t.component("k-sections",Rl),t.component("k-fields-section",Ul),t.component("k-files-section",Vl),t.component("k-info-section",Kl),t.component("k-pages-section",Wl),t.component("k-stats-section",Jl)}};const Xl=ut({components:{"k-highlight":()=>R((()=>import("./Highlight.min.js")),["./Highlight.min.js","./vendor.min.js"],import.meta.url)},props:{language:{type:String}}},(function(){var t=this,e=t._self._c;return e("k-highlight",[e("div",[e("pre",{staticClass:"k-code",attrs:{"data-language":t.language}},[e("code",{key:t.$slots.default[0].text+"-"+t.language,class:t.language?`language-${t.language}`:null},[t._t("default")],2)])])])}),[],!1,null,null,null,null).exports;const Zl=ut({props:{link:String,size:{type:String},tag:{type:String,default:"h2"},theme:{type:String}},emits:["click"],created(){this.size&&window.panel.deprecated(": the `size` prop will be removed in a future version. Use the `tag` prop instead."),this.theme&&window.panel.deprecated(": the `theme` prop will be removed in a future version.")}},(function(){var t=this,e=t._self._c;return e(t.tag,{tag:"component",staticClass:"k-headline",attrs:{"data-theme":t.theme,"data-size":t.size},on:{click:function(e){return t.$emit("click",e)}}},[t.link?e("k-link",{attrs:{to:t.link}},[t._t("default")],2):t._t("default")],2)}),[],!1,null,null,null,null).exports;const Ql=ut({props:{input:{type:[String,Number]},invalid:{type:Boolean},link:{type:String},required:{default:!1,type:Boolean},type:{default:"field",type:String}},computed:{element(){return"section"===this.type?"h2":"label"}}},(function(){var t=this,e=t._self._c;return e(t.element,{tag:"component",staticClass:"k-label",class:"k-"+t.type+"-label",attrs:{for:t.input,"data-invalid":t.invalid}},[t.link?e("k-link",{attrs:{to:t.link}},[e("span",{staticClass:"k-label-text"},[t._t("default")],2)]):e("span",{staticClass:"k-label-text"},[t._t("default")],2),t.required&&!t.invalid?e("abbr",{attrs:{title:t.$t(t.type+".required")}},[t._v("✶")]):t._e(),e("abbr",{staticClass:"k-label-invalid",attrs:{title:t.$t(t.type+".invalid")}},[t._v("×")])],1)}),[],!1,null,null,null,null).exports;const tr=ut({props:{align:String,html:String,size:String,theme:String},computed:{attrs(){return{class:"k-text","data-align":this.align,"data-size":this.size,"data-theme":this.theme}}},created(){this.theme&&window.panel.deprecated(': the `theme` prop will be removed in a future version. For help text, add `.k-help "` CSS class instead.')}},(function(){var t=this,e=t._self._c;return t.html?e("div",t._b({domProps:{innerHTML:t._s(t.html)}},"div",t.attrs,!1)):e("div",t._b({},"div",t.attrs,!1),[t._t("default")],2)}),[],!1,null,null,null,null).exports,er={install(t){t.component("k-code",Xl),t.component("k-headline",Zl),t.component("k-label",Ql),t.component("k-text",tr)}};const ir=ut({},(function(){var t=this,e=t._self._c;return t.$panel.activation.isOpen?e("div",{staticClass:"k-activation"},[e("p",[e("strong",[t._v(t._s(t.$t("license.ready")))]),e("a",{attrs:{href:"https://getkirby.com/buy",target:"_blank"}},[t._v(t._s(t.$t("license.buy")))]),t._v(" & "),e("button",{attrs:{type:"button"},on:{click:function(e){return t.$dialog("registration")}}},[t._v(" "+t._s(t.$t("license.activate"))+" ")])]),e("k-button",{staticClass:"k-activation-toggle",attrs:{icon:"cancel-small"},on:{click:function(e){return t.$panel.activation.close()}}})],1):t._e()}),[],!1,null,null,null,null).exports;const nr=ut({computed:{notification(){return"view"!==this.$panel.notification.context||this.$panel.notification.isFatal?null:this.$panel.notification}}},(function(){var t=this,e=t._self._c;return e("k-panel",{staticClass:"k-panel-inside"},[e("k-panel-menu"),e("main",{staticClass:"k-panel-main"},[e("k-topbar",{attrs:{breadcrumb:t.$panel.view.breadcrumb,view:t.$panel.view}},[t._t("topbar")],2),t._t("default")],2),t.notification&&"error"!==t.notification.type?e("k-button",{staticClass:"k-panel-notification",attrs:{icon:t.notification.icon,text:t.notification.message,theme:t.notification.theme,variant:"filled"},on:{click:function(e){return t.notification.close()}}}):t._e()],1)}),[],!1,null,null,null,null).exports;const sr=ut({data:()=>({over:!1}),computed:{hasSearch(){return this.$helper.object.length(this.$panel.searches)>0},menus(){return this.$panel.menu.entries.split("-")}}},(function(){var t=this,e=t._self._c;return e("nav",{staticClass:"k-panel-menu",attrs:{"aria-label":t.$t("menu"),"data-hover":t.$panel.menu.hover},on:{mouseenter:function(e){t.$panel.menu.hover=!0},mouseleave:function(e){t.$panel.menu.hover=!1}}},[e("div",{staticClass:"k-panel-menu-body"},[t.hasSearch?e("k-button",{staticClass:"k-panel-menu-search k-panel-menu-button",attrs:{text:t.$t("search"),icon:"search"},on:{click:function(e){return t.$panel.search()}}}):t._e(),t._l(t.menus,(function(i,n){return e("menu",{key:n,staticClass:"k-panel-menu-buttons",attrs:{"data-second-last":n===t.menus.length-2}},t._l(i,(function(i){return e("k-button",t._b({key:i.id,staticClass:"k-panel-menu-button",attrs:{title:i.title??i.text}},"k-button",i,!1))})),1)})),!1===t.$panel.license?e("menu",[e("k-button",{staticClass:"k-activation-button k-panel-menu-button",attrs:{text:t.$t("activate"),icon:"key",variant:"filled"},on:{click:function(e){return t.$dialog("registration")}}}),e("k-activation")],1):t._e()],2),e("k-button",{staticClass:"k-panel-menu-toggle",attrs:{icon:t.$panel.menu.isOpen?"angle-left":"angle-right",title:t.$panel.menu.isOpen?t.$t("collapse"):t.$t("expand"),size:"xs"},on:{click:function(e){return t.$panel.menu.toggle()}}})],1)}),[],!1,null,null,null,null).exports;const or=ut({},(function(){return(0,this._self._c)("k-panel",{staticClass:"k-panel-outside",attrs:{tabindex:"0"}},[this._t("default")],2)}),[],!1,null,null,null,null).exports;const lr=ut({},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-panel",attrs:{"data-dragging":t.$panel.drag.isDragging,"data-loading":t.$panel.isLoading,"data-language":t.$panel.language.code,"data-language-default":t.$panel.language.isDefault,"data-menu":t.$panel.menu.isOpen?"true":"false","data-role":t.$panel.user.role,"data-translation":t.$panel.translation.code,"data-user":t.$panel.user.id,dir:t.$panel.direction}},[t._t("default"),t.$panel.dialog.isOpen&&!t.$panel.dialog.legacy?e("k-fiber-dialog"):t._e(),t.$panel.drawer.isOpen&&!t.$panel.drawer.legacy?e("k-fiber-drawer"):t._e(),t.$panel.notification.isFatal&&t.$panel.notification.isOpen?e("k-fatal",{attrs:{html:t.$panel.notification.message}}):t._e(),e("k-offline-warning"),e("k-icons"),e("k-overlay",{attrs:{nested:t.$panel.drawer.history.milestones.length>1,visible:t.$panel.drawer.isOpen,type:"drawer"},on:{close:function(e){return t.$panel.drawer.close()}}},[e("portal-target",{staticClass:"k-drawer-portal k-portal",attrs:{name:"drawer",multiple:""}})],1),e("k-overlay",{attrs:{visible:t.$panel.dialog.isOpen,type:"dialog"},on:{close:function(e){return t.$panel.dialog.close()}}},[e("portal-target",{staticClass:"k-dialog-portal k-portal",attrs:{name:"dialog",multiple:""}})],1),e("portal-target",{staticClass:"k-overlay-portal k-portal",attrs:{name:"overlay",multiple:""}})],2)}),[],!1,null,null,null,null).exports;const rr=ut({props:{breadcrumb:Array,view:Object},computed:{crumbs(){return[{link:this.view.link,label:this.view.label??this.view.breadcrumbLabel,icon:this.view.icon,loading:this.$panel.isLoading},...this.breadcrumb]}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-topbar"},[e("k-button",{staticClass:"k-panel-menu-proxy",attrs:{icon:"bars"},on:{click:function(e){return t.$panel.menu.toggle()}}}),e("k-breadcrumb",{staticClass:"k-topbar-breadcrumb",attrs:{crumbs:t.crumbs}}),e("div",{staticClass:"k-topbar-spacer"}),e("div",{staticClass:"k-topbar-signals"},[t._t("default")],2)],1)}),[],!1,null,null,null,null).exports,ar={install(t){t.component("k-activation",ir),t.component("k-panel",lr),t.component("k-panel-inside",nr),t.component("k-panel-menu",sr),t.component("k-panel-outside",or),t.component("k-topbar",rr),t.component("k-inside",nr),t.component("k-outside",or)}};const ur=ut({props:{error:String,layout:String}},(function(){var t=this,e=t._self._c;return e(`k-panel-${t.layout}`,{tag:"component",staticClass:"k-error-view"},["outside"===t.layout?[e("div",[e("k-box",{attrs:{icon:"alert",theme:"negative"}},[t._v(t._s(t.error))])],1)]:[e("k-header",[t._v(t._s(t.$t("error")))]),e("k-box",{attrs:{icon:"alert",theme:"negative"}},[t._v(t._s(t.error))])]],2)}),[],!1,null,null,null,null).exports;const cr=ut({mixins:[Ft],props:{type:{default:"pages",type:String}},data:()=>({items:[],query:new URLSearchParams(window.location.search).get("query"),pagination:{}}),computed:{currentType(){return this.$panel.searches[this.type]??Object.values(this.$panel.searches)[0]},tabs(){const t=[];for(const e in this.$panel.searches){const i=this.$panel.searches[e];t.push({label:i.label,link:"/search/?type="+e+"&query="+this.query,name:e})}return t}},watch:{query:{handler(){this.search(1)},immediate:!0},type(){this.search()}},methods:{focus(){var t;null==(t=this.$refs.input)||t.focus()},onPaginate(t){this.search(t.page)},async search(t){this.$panel.isLoading=!0,t||(t=new URLSearchParams(window.location.search).get("page")??1);const e=this.$panel.url(window.location,{type:this.currentType.id,query:this.query,page:t});window.history.pushState("","",e.toString());try{if(null===this.query||this.query.length<2)throw Error("Empty query");const e=await this.$search(this.currentType.id,this.query,{page:t,limit:15});this.items=e.results,this.pagination=e.pagination}catch(i){this.items=[],this.pagination={}}finally{this.$panel.isLoading=!1}}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-search-view"},[e("k-header",[t._v(" "+t._s(t.$t("search"))+" "),e("k-input",{ref:"input",staticClass:"k-search-view-input",attrs:{slot:"buttons","aria-label":t.$t("search"),autofocus:!0,placeholder:t.$t("search")+" …",spellcheck:!1,value:t.query,icon:"search",type:"text"},on:{input:function(e){t.query=e}},slot:"buttons"})],1),e("k-tabs",{attrs:{tab:t.currentType.id,tabs:t.tabs}}),e("div",{staticClass:"k-search-view-results"},[e("k-collection",{attrs:{items:t.items,empty:{icon:"search",text:t.$t("search.results.none")},pagination:t.pagination},on:{paginate:t.onPaginate}})],1)],1)}),[],!1,null,null,null,null).exports;const dr=ut({props:{blueprint:String,next:Object,prev:Object,permissions:{type:Object,default:()=>({})},lock:{type:[Boolean,Object]},model:{type:Object,default:()=>({})},tab:{type:Object,default:()=>({columns:[]})},tabs:{type:Array,default:()=>[]}},computed:{id(){return this.model.link},isLocked(){var t;return"lock"===(null==(t=this.lock)?void 0:t.state)},protectedFields:()=>[]},watch:{"$panel.view.timestamp":{handler(){this.$store.dispatch("content/create",{id:this.id,api:this.id,content:this.model.content,ignore:this.protectedFields})},immediate:!0}},created(){this.$events.on("model.reload",this.$reload),this.$events.on("keydown.left",this.toPrev),this.$events.on("keydown.right",this.toNext)},destroyed(){this.$events.off("model.reload",this.$reload),this.$events.off("keydown.left",this.toPrev),this.$events.off("keydown.right",this.toNext)},methods:{toPrev(t){this.prev&&"body"===t.target.localName&&this.$go(this.prev.link)},toNext(t){this.next&&"body"===t.target.localName&&this.$go(this.next.link)}}},null,null,!1,null,null,null,null).exports;const pr=ut({extends:dr,props:{preview:Object},computed:{focus(){const t=this.$store.getters["content/values"]().focus;if(!t)return;const[e,i]=t.replaceAll("%","").split(" ");return{x:parseFloat(e),y:parseFloat(i)}},isFocusable(){return!this.isLocked&&this.preview.image.src&&this.permissions.update&&(!window.panel.multilang||0===window.panel.languages.length||window.panel.language.default)}},methods:{action(t){if("replace"===t)return this.$panel.upload.replace({...this.preview,...this.model})},setFocus(t){!0===this.$helper.object.isObject(t)&&(t=`${t.x}% ${t.y}%`),this.$store.dispatch("content/update",["focus",t])}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-file-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-id":t.model.id,"data-locked":t.isLocked,"data-template":t.blueprint},scopedSlots:t._u([{key:"topbar",fn:function(){return[e("k-prev-next",{attrs:{prev:t.prev,next:t.next}})]},proxy:!0}])},[e("k-header",{staticClass:"k-file-view-header",attrs:{editable:t.permissions.changeName&&!t.isLocked},on:{edit:function(e){return t.$dialog(t.id+"/changeName")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[e("k-button",{staticClass:"k-file-view-options",attrs:{link:t.preview.url,responsive:!0,title:t.$t("open"),icon:"open",size:"sm",target:"_blank",variant:"filled"}}),e("k-button",{staticClass:"k-file-view-options",attrs:{disabled:t.isLocked,dropdown:!0,title:t.$t("settings"),icon:"cog",size:"sm",variant:"filled"},on:{click:function(e){return t.$refs.settings.toggle()}}}),e("k-dropdown-content",{ref:"settings",attrs:{options:t.$dropdown(t.id),"align-x":"end"},on:{action:t.action}}),e("k-languages-dropdown")],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t._v(" "+t._s(t.model.filename)+" ")]),e("k-file-preview",t._b({attrs:{focus:t.focus},on:{focus:t.setFocus}},"k-file-preview",t.preview,!1)),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("file.blueprint",{blueprint:t.$esc(t.blueprint)}),lock:t.lock,parent:t.id,tab:t.tab}})],1)}),[],!1,null,null,null,null).exports;const hr=ut({props:{details:{default:()=>[],type:Array},focus:{type:Object},focusable:Boolean,image:{default:()=>({}),type:Object},url:String},computed:{options(){return[{icon:"open",text:this.$t("open"),link:this.url,target:"_blank"},{icon:"cancel",text:this.$t("file.focus.reset"),click:()=>this.$refs.focus.reset(),when:this.focusable&&this.focus},{icon:"preview",text:this.$t("file.focus.placeholder"),click:()=>this.$refs.focus.set(),when:this.focusable&&!this.focus}]}},methods:{setFocus(t){if(!t)return this.$emit("focus",null);this.$emit("focus",{x:t.x.toFixed(1),y:t.y.toFixed(1)})}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-file-preview",attrs:{"data-has-focus":Boolean(t.focus)}},[e("div",{staticClass:"k-file-preview-thumb-column"},[e("div",{staticClass:"k-file-preview-thumb"},[t.image.src?[e("k-coords-input",{attrs:{disabled:!t.focusable,value:t.focus},on:{input:function(e){return t.setFocus(e)}}},[e("img",t._b({on:{dragstart:function(t){t.preventDefault()}}},"img",t.image,!1))]),e("k-button",{staticStyle:{color:"var(--color-gray-500)"},attrs:{icon:"dots",size:"xs"},on:{click:function(e){return t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",attrs:{options:t.options,theme:"light"}})]:e("k-icon",{staticClass:"k-item-icon",attrs:{color:t.$helper.color(t.image.color),type:t.image.icon}})],2)]),e("div",{staticClass:"k-file-preview-details"},[e("dl",[t._l(t.details,(function(i){return e("div",{key:i.title},[e("dt",[t._v(t._s(i.title))]),e("dd",[i.link?e("k-link",{attrs:{to:i.link,tabindex:"-1",target:"_blank"}},[t._v(" /"+t._s(i.text)+" ")]):[t._v(" "+t._s(i.text)+" ")]],2)])})),t.image.src?e("div",{staticClass:"k-file-preview-focus-info"},[e("dt",[t._v(t._s(t.$t("file.focus.title")))]),e("dd",[t.focusable?e("k-file-focus-button",{ref:"focus",attrs:{focus:t.focus},on:{set:t.setFocus}}):t.focus?[t._v(" "+t._s(t.focus.x)+"% "+t._s(t.focus.y)+"% ")]:[t._v("–")]],2)]):t._e()],2)])])}),[],!1,null,null,null,null).exports;const mr=ut({props:{focus:Object},methods:{set(){this.$emit("set",{x:50,y:50})},reset(){this.$emit("set",void 0)}}},(function(){var t=this;return(0,t._self._c)("k-button",{attrs:{icon:t.focus?"cancel-small":"preview",title:t.focus?t.$t("file.focus.reset"):void 0,size:"xs",variant:"filled"},on:{click:function(e){t.focus?t.reset():t.set()}}},[t.focus?[t._v(t._s(t.focus.x)+"% "+t._s(t.focus.y)+"%")]:[t._v(t._s(t.$t("file.focus.placeholder")))]],2)}),[],!1,null,null,null,null).exports;const fr=ut({props:{languages:{type:Array,default:()=>[]},variables:{type:Boolean,default:!0}},computed:{languagesCollection(){return this.languages.map((t=>({...t,image:{back:"black",color:"gray",icon:"translate"},link:()=>{if(!1===this.variables)return null;this.$go(`languages/${t.id}`)},options:[{icon:"edit",text:this.$t("edit"),disabled:!1===this.variables,click:()=>this.$go(`languages/${t.id}`)},{icon:"cog",text:this.$t("settings"),click:()=>this.$dialog(`languages/${t.id}/update`)},{icon:"trash",text:this.$t("delete"),disabled:!1===t.deletable,click:()=>this.$dialog(`languages/${t.id}/delete`)}]})))},primaryLanguage(){return this.languagesCollection.filter((t=>t.default))},secondaryLanguages(){return this.languagesCollection.filter((t=>!1===t.default))}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-languages-view"},[e("k-header",[t._v(" "+t._s(t.$t("view.languages"))+" "),e("k-button-group",{attrs:{slot:"buttons"},slot:"buttons"},[e("k-button",{attrs:{text:t.$t("language.create"),icon:"add",size:"sm",variant:"filled"},on:{click:function(e){return t.$dialog("languages/create")}}})],1)],1),t.languages.length>0?[e("k-section",{attrs:{headline:t.$t("languages.default")}},[e("k-collection",{attrs:{items:t.primaryLanguage}})],1),e("k-section",{attrs:{headline:t.$t("languages.secondary")}},[t.secondaryLanguages.length?e("k-collection",{attrs:{items:t.secondaryLanguages}}):e("k-empty",{attrs:{icon:"translate"},on:{click:function(e){return t.$dialog("languages/create")}}},[t._v(" "+t._s(t.$t("languages.secondary.empty"))+" ")])],1)]:0===t.languages.length?[e("k-empty",{attrs:{icon:"translate"},on:{click:function(e){return t.$dialog("languages/create")}}},[t._v(" "+t._s(t.$t("languages.empty"))+" ")])]:t._e()],2)}),[],!1,null,null,null,null).exports;const gr=ut({props:{code:String,deletable:Boolean,direction:String,id:String,info:Array,next:Object,name:String,prev:Object,translations:Array,url:String},methods:{createTranslation(){this.$dialog(`languages/${this.id}/translations/create`)},option(t,e){this.$dialog(`languages/${this.id}/translations/${window.btoa(encodeURIComponent(e.key))}/${t}`)},remove(){this.$dialog(`languages/${this.id}/delete`)},update(t){this.$dialog(`languages/${this.id}/update`,{on:{ready:()=>{this.$panel.dialog.focus(t)}}})},updateTranslation({row:t}){this.$dialog(`languages/${this.id}/translations/${window.btoa(encodeURIComponent(t.key))}/update`)}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-language-view",scopedSlots:t._u([{key:"topbar",fn:function(){return[e("k-prev-next",{attrs:{prev:t.prev,next:t.next}})]},proxy:!0}])},[e("k-header",{attrs:{editable:!0},on:{edit:function(e){return t.update()}}},[t._v(" "+t._s(t.name)+" "),e("k-button-group",{attrs:{slot:"buttons"},slot:"buttons"},[e("k-button",{attrs:{link:t.url,title:t.$t("open"),icon:"open",size:"sm",target:"_blank",variant:"filled"}}),e("k-button",{attrs:{title:t.$t("settings"),icon:"cog",size:"sm",variant:"filled"},on:{click:function(e){return t.update()}}}),t.deletable?e("k-button",{attrs:{title:t.$t("delete"),icon:"trash",size:"sm",variant:"filled"},on:{click:function(e){return t.remove()}}}):t._e()],1)],1),e("k-section",{attrs:{headline:t.$t("language.settings")}},[e("k-stats",{attrs:{reports:t.info,size:"small"}})],1),e("k-section",{attrs:{buttons:[{click:t.createTranslation,icon:"add",text:t.$t("add")}],headline:t.$t("language.variables")}},[t.translations.length?[e("k-table",{attrs:{columns:{key:{label:t.$t("language.variable.key"),mobile:!0,width:"1/4"},value:{label:t.$t("language.variable.value"),mobile:!0}},rows:t.translations},on:{cell:t.updateTranslation,option:t.option}})]:[e("k-empty",{attrs:{icon:"translate"},on:{click:t.createTranslation}},[t._v(" "+t._s(t.$t("language.variables.empty"))+" ")])]],2)],1)}),[],!1,null,null,null,null).exports;const kr=ut({components:{"k-login-plugin":window.panel.plugins.login??Ve},props:{methods:Array,pending:Object},data:()=>({issue:""}),computed:{form(){return this.pending.email?"code":"login"},viewClass(){return"code"===this.form?"k-login-code-view":"k-login-view"}},created(){this.$store.dispatch("content/clear")},methods:{async onError(t){null!==t?(!0===t.details.challengeDestroyed&&await this.$reload({globals:["$system"]}),this.issue=t.message):this.issue=null}}},(function(){var t=this,e=t._self._c;return e("k-panel-outside",{class:t.viewClass},[e("div",{staticClass:"k-dialog k-login-dialog"},[e("h1",{staticClass:"sr-only"},[t._v(" "+t._s(t.$t("login"))+" ")]),t.issue?e("k-login-alert",{nativeOn:{click:function(e){t.issue=null}}},[t._v(" "+t._s(t.issue)+" ")]):t._e(),e("k-dialog-body",["code"===t.form?e("k-login-code",t._b({on:{error:t.onError}},"k-login-code",t.$props,!1)):e("k-login-plugin",{attrs:{methods:t.methods},on:{error:t.onError}})],1)],1)])}),[],!1,null,null,null,null).exports;const br=ut({props:{isInstallable:Boolean,isInstalled:Boolean,isOk:Boolean,requirements:Object,translations:Array},data(){return{user:{name:"",email:"",language:this.$panel.translation.code,password:"",role:"admin"}}},computed:{fields(){return{email:{label:this.$t("email"),type:"email",link:!1,autofocus:!0,required:!0},password:{label:this.$t("password"),type:"password",placeholder:this.$t("password")+" …",required:!0},language:{label:this.$t("language"),type:"select",options:this.translations,icon:"translate",empty:!1,required:!0}}},isReady(){return this.isOk&&this.isInstallable},isComplete(){return this.isOk&&this.isInstalled}},methods:{async install(){try{await this.$api.system.install(this.user),await this.$reload({globals:["$system","$translation"]}),this.$panel.notification.success({message:this.$t("welcome")+"!",icon:"smile"})}catch(t){this.$panel.error(t)}}}},(function(){var t=this,e=t._self._c;return e("k-panel-outside",{staticClass:"k-installation-view"},[e("div",{staticClass:"k-dialog k-installation-dialog"},[e("k-dialog-body",[t.isComplete?e("k-text",[e("k-headline",[t._v(t._s(t.$t("installation.completed")))]),e("k-link",{attrs:{to:"/login"}},[t._v(" "+t._s(t.$t("login"))+" ")])],1):t.isReady?e("form",{on:{submit:function(e){return e.preventDefault(),t.install.apply(null,arguments)}}},[e("h1",{staticClass:"sr-only"},[t._v(" "+t._s(t.$t("installation"))+" ")]),e("k-fieldset",{attrs:{fields:t.fields,novalidate:!0,value:t.user},on:{input:function(e){t.user=e}}}),e("k-button",{attrs:{text:t.$t("install"),icon:"check",size:"lg",theme:"positive",type:"submit",variant:"filled"}})],1):e("div",[e("k-headline",[t._v(" "+t._s(t.$t("installation.issues.headline"))+" ")]),e("ul",{staticClass:"k-installation-issues"},[!1===t.isInstallable?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.disabled"))}})],1):t._e(),!1===t.requirements.php?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.php"))}})],1):t._e(),!1===t.requirements.server?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.server"))}})],1):t._e(),!1===t.requirements.mbstring?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.mbstring"))}})],1):t._e(),!1===t.requirements.curl?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.curl"))}})],1):t._e(),!1===t.requirements.accounts?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.accounts"))}})],1):t._e(),!1===t.requirements.content?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.content"))}})],1):t._e(),!1===t.requirements.media?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.media"))}})],1):t._e(),!1===t.requirements.sessions?e("li",[e("k-icon",{attrs:{type:"alert"}}),e("span",{domProps:{innerHTML:t._s(t.$t("installation.issues.sessions"))}})],1):t._e()]),e("k-button",{attrs:{text:t.$t("retry"),icon:"refresh",size:"lg",theme:"positive",variant:"filled"},on:{click:t.$reload}})],1)],1)],1)])}),[],!1,null,null,null,null).exports;const vr=ut({data:()=>({isLoading:!1,values:{password:null,passwordConfirmation:null}}),computed:{fields(){return{password:{autofocus:!0,label:this.$t("user.changePassword.new"),icon:"key",type:"password",width:"1/2"},passwordConfirmation:{label:this.$t("user.changePassword.new.confirm"),icon:"key",type:"password",width:"1/2"}}}},mounted(){this.$panel.title=this.$t("view.resetPassword")},methods:{async submit(){if(!this.values.password||this.values.password.length<8)return this.$panel.notification.error(this.$t("error.user.password.invalid"));if(this.values.password!==this.values.passwordConfirmation)return this.$panel.notification.error(this.$t("error.user.password.notSame"));this.isLoading=!0;try{await this.$api.users.changePassword(this.$panel.user.id,this.values.password),this.$panel.notification.success(),this.$go("/")}catch(t){this.$panel.notification.error(t)}finally{this.isLoading=!1}}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-password-reset-view"},[e("form",{on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[e("k-header",{scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button",{attrs:{icon:"check",theme:"notice",type:"submit",variant:"filled",size:"sm"}},[t._v(" "+t._s(t.$t("change"))+" "),t.isLoading?[t._v(" … ")]:t._e()],2)]},proxy:!0}])},[t._v(" "+t._s(t.$t("view.resetPassword"))+" ")]),e("k-user-info",{attrs:{user:t.$panel.user}}),e("k-fieldset",{attrs:{fields:t.fields,value:t.values}})],1)])}),[],!1,null,null,null,null).exports;const yr=ut({props:{user:[Object,String]}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-user-info"},[t.user.avatar?e("k-image-frame",{attrs:{cover:!0,src:t.user.avatar.url,ratio:"1/1"}}):e("k-icon-frame",{attrs:{color:"white",back:"black",icon:"user"}}),t._v(" "+t._s(t.user.name??t.user.email??t.user)+" ")],1)}),[],!1,null,null,null,null).exports;const $r=ut({extends:dr,props:{status:Object},computed:{protectedFields:()=>["title"],statusBtn(){return{...this.$helper.page.status.call(this,this.model.status,!this.permissions.changeStatus||this.isLocked),responsive:!0,size:"sm",text:this.status.label,variant:"filled"}}}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-page-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-id":t.model.id,"data-locked":t.isLocked,"data-template":t.blueprint},scopedSlots:t._u([{key:"topbar",fn:function(){return[t.model.id?e("k-prev-next",{attrs:{prev:t.prev,next:t.next}}):t._e()]},proxy:!0}])},[e("k-header",{staticClass:"k-page-view-header",attrs:{editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.$dialog(t.id+"/changeTitle")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[t.permissions.preview&&t.model.previewUrl?e("k-button",{staticClass:"k-page-view-preview",attrs:{link:t.model.previewUrl,title:t.$t("open"),icon:"open",target:"_blank",variant:"filled",size:"sm"}}):t._e(),e("k-button",{staticClass:"k-page-view-options",attrs:{disabled:!0===t.isLocked,dropdown:!0,title:t.$t("settings"),icon:"cog",variant:"filled",size:"sm"},on:{click:function(e){return t.$refs.settings.toggle()}}}),e("k-dropdown-content",{ref:"settings",attrs:{options:t.$dropdown(t.id),"align-x":"end"}}),e("k-languages-dropdown"),t.status?e("k-button",t._b({staticClass:"k-page-view-status",attrs:{variant:"filled"},on:{click:function(e){return t.$dialog(t.id+"/changeStatus")}}},"k-button",t.statusBtn,!1)):t._e()],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t._v(" "+t._s(t.model.title)+" ")]),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("page.blueprint",{blueprint:t.$esc(t.blueprint)}),lock:t.lock,parent:t.id,tab:t.tab}})],1)}),[],!1,null,null,null,null).exports;const wr=ut({extends:dr,computed:{protectedFields:()=>["title"]}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-site-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-locked":t.isLocked,"data-id":"/","data-template":"site"}},[e("k-header",{staticClass:"k-site-view-header",attrs:{editable:t.permissions.changeTitle&&!t.isLocked},on:{edit:function(e){return t.$dialog("site/changeTitle")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[e("k-button",{staticClass:"k-site-view-preview",attrs:{link:t.model.previewUrl,title:t.$t("open"),icon:"open",target:"_blank",variant:"filled",size:"sm"}}),e("k-languages-dropdown")],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t._v(" "+t._s(t.model.title)+" ")]),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("site.blueprint"),lock:t.lock,tab:t.tab,parent:"site"},on:{submit:function(e){return t.$emit("submit",e)}}})],1)}),[],!1,null,null,null,null).exports;const xr=ut({components:{Plugins:ut({props:{plugins:Array}},(function(){var t=this,e=t._self._c;return t.plugins.length?e("k-section",{attrs:{headline:t.$t("plugins"),link:"https://getkirby.com/plugins"}},[e("k-table",{attrs:{index:!1,columns:{name:{label:t.$t("name"),type:"url",mobile:!0},author:{label:t.$t("author")},license:{label:t.$t("license")},version:{label:t.$t("version"),type:"update-status",mobile:!0,width:"10rem"}},rows:t.plugins}})],1):t._e()}),[],!1,null,null,null,null).exports,Security:ut({props:{exceptions:Array,security:Array,urls:Object},data(){return{issues:vt(this.security)}},async created(){console.info("Running system health checks for the Panel system view; failed requests in the following console output are expected behavior.");const t=(Promise.allSettled??Promise.all).bind(Promise),e=Object.entries(this.urls).map(this.check);await t(e),console.info(`System health checks ended. ${this.issues.length-this.security.length} issues with accessible files/folders found (see the security list in the system view).`)},methods:{async check([t,e]){if(!e)return;const{status:i}=await fetch(e,{cache:"no-store"});i<400&&this.issues.push({id:t,text:this.$t("system.issues."+t),link:"https://getkirby.com/security/"+t,icon:"folder"})},retry(){this.$go(window.location.href)}}},(function(){var t=this,e=t._self._c;return t.issues.length?e("k-section",{attrs:{headline:t.$t("security"),buttons:[{title:t.$t("retry"),icon:"refresh",click:t.retry}]}},[e("k-items",{attrs:{items:t.issues.map((t=>({image:{back:"var(--color-red-200)",icon:t.icon??"alert",color:"var(--color-red)"},target:"_blank",...t})))}})],1):t._e()}),[],!1,null,null,null,null).exports},props:{environment:Array,exceptions:Array,plugins:Array,security:Array,urls:Object},created(){this.exceptions.length>0&&(console.info("The following errors occurred during the update check of Kirby and/or plugins:"),this.exceptions.map((t=>console.warn(t))),console.info("End of errors from the update check."))}},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-system-view"},[e("k-header",[t._v(" "+t._s(t.$t("view.system"))+" ")]),e("k-section",{attrs:{headline:t.$t("environment")}},[e("k-stats",{staticClass:"k-system-info",attrs:{reports:t.environment,size:"medium"}})],1),e("security",{attrs:{security:t.security,urls:t.urls}}),e("plugins",{attrs:{plugins:t.plugins}})],1)}),[],!1,null,null,null,null).exports;const _r=ut({props:{value:[String,Object]}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-table-update-status-cell"},["string"==typeof t.value?e("span",{staticClass:"k-table-update-status-cell-version"},[t._v(" "+t._s(t.value)+" ")]):[e("k-button",{staticClass:"k-table-update-status-cell-button",attrs:{dropdown:!0,icon:t.value.icon,href:t.value.url,text:t.value.currentVersion,theme:t.value.theme,size:"xs",variant:"filled"},on:{click:function(e){return e.stopPropagation(),t.$refs.dropdown.toggle()}}}),e("k-dropdown-content",{ref:"dropdown",attrs:{"align-x":"end"}},[e("dl",{staticClass:"k-plugin-info"},[e("dt",[t._v(t._s(t.$t("plugin")))]),e("dd",[t._v(t._s(t.value.pluginName))]),e("dt",[t._v(t._s(t.$t("version.current")))]),e("dd",[t._v(t._s(t.value.currentVersion))]),e("dt",[t._v(t._s(t.$t("version.latest")))]),e("dd",[t._v(t._s(t.value.latestVersion))]),e("dt",[t._v(t._s(t.$t("system.updateStatus")))]),e("dd",{attrs:{"data-theme":t.value.theme}},[t._v(t._s(t.value.label))])]),t.value.url?[e("hr"),e("k-button",{attrs:{icon:"open",link:t.value.url}},[t._v(" "+t._s(t.$t("versionInformation"))+" ")])]:t._e()],2)]],2)}),[],!1,null,null,null,null).exports;const Sr=ut({extends:dr},(function(){var t=this,e=t._self._c;return e("k-panel-inside",{staticClass:"k-user-view",attrs:{"data-has-tabs":t.tabs.length>1,"data-id":t.model.id,"data-locked":t.isLocked,"data-template":t.blueprint},scopedSlots:t._u([{key:"topbar",fn:function(){return[t.model.account?e("k-prev-next",{attrs:{prev:t.prev,next:t.next}}):t._e()]},proxy:!0}])},[e("k-header",{staticClass:"k-user-view-header",attrs:{editable:t.permissions.changeName&&!t.isLocked},on:{edit:function(e){return t.$dialog(t.id+"/changeName")}},scopedSlots:t._u([{key:"buttons",fn:function(){return[e("k-button-group",[e("k-button",{staticClass:"k-user-view-options",attrs:{disabled:t.isLocked,dropdown:!0,title:t.$t("settings"),icon:"cog",size:"sm",variant:"filled"},on:{click:function(e){return t.$refs.settings.toggle()}}}),e("k-dropdown-content",{ref:"settings",attrs:{"align-x":"end",options:t.$dropdown(t.id)}}),e("k-languages-dropdown")],1),e("k-form-buttons",{attrs:{lock:t.lock}})]},proxy:!0}])},[t.model.name&&0!==t.model.name.length?[t._v(" "+t._s(t.model.name)+" ")]:e("span",{staticClass:"k-user-name-placeholder"},[t._v(" "+t._s(t.$t("name"))+" … ")])],2),e("k-user-profile",{attrs:{"is-locked":t.isLocked,model:t.model,permissions:t.permissions}}),e("k-model-tabs",{attrs:{tab:t.tab.name,tabs:t.tabs}}),e("k-sections",{attrs:{blueprint:t.blueprint,empty:t.$t("user.blueprint",{blueprint:t.$esc(t.blueprint)}),lock:t.lock,parent:t.id,tab:t.tab}})],1)}),[],!1,null,null,null,null).exports;const Cr=ut({extends:Sr,prevnext:!1},null,null,!1,null,null,null,null).exports;const Or=ut({props:{model:Object},methods:{async deleteAvatar(){await this.$api.users.deleteAvatar(this.model.id),this.$panel.notification.success(),this.$reload()},uploadAvatar(){this.$panel.upload.pick({url:this.$panel.urls.api+"/"+this.model.link+"/avatar",accept:"image/*",immediate:!0,multiple:!1})}}},(function(){var t=this,e=t._self._c;return e("div",[e("k-button",{staticClass:"k-user-view-image",attrs:{title:t.$t("avatar"),variant:"filled"},on:{click:function(e){t.model.avatar?t.$refs.avatar.toggle():t.uploadAvatar()}}},[t.model.avatar?e("k-image-frame",{attrs:{cover:!0,src:t.model.avatar}}):e("k-icon-frame",{attrs:{icon:"user"}})],1),t.model.avatar?e("k-dropdown-content",{ref:"avatar",attrs:{options:[{icon:"upload",text:t.$t("change"),click:t.uploadAvatar},{icon:"trash",text:t.$t("delete"),click:t.deleteAvatar}]}}):t._e()],1)}),[],!1,null,null,null,null).exports;const Ar=ut({props:{isLocked:Boolean,model:Object,permissions:Object}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"k-user-profile"},[e("k-user-avatar",{attrs:{model:t.model,"aria-disabled":t.isLocked}}),e("k-button-group",{attrs:{buttons:[{icon:"email",text:`${t.model.email}`,title:`${t.$t("email")}: ${t.model.email}`,disabled:!t.permissions.changeEmail||t.isLocked,click:()=>t.$dialog(t.model.link+"/changeEmail")},{icon:"bolt",text:`${t.model.role}`,title:`${t.$t("role")}: ${t.model.role}`,disabled:!t.permissions.changeRole||t.isLocked,click:()=>t.$dialog(t.model.link+"/changeRole")},{icon:"translate",text:`${t.model.language}`,title:`${t.$t("language")}: ${t.model.language}`,disabled:!t.permissions.changeLanguage||t.isLocked,click:()=>t.$dialog(t.model.link+"/changeLanguage")}]}})],1)}),[],!1,null,null,null,null).exports;const Mr=ut({props:{role:Object,roles:Array,search:String,title:String,users:Object},computed:{empty(){return{icon:"users",text:this.$t("role.empty")}},items(){return this.users.data.map((t=>(t.options=this.$dropdown(t.link),t)))},tabs(){const t=[{name:"all",label:this.$t("role.all"),link:"/users"}];for(const e of this.roles)t.push({name:e.id,label:e.title,link:"/users?role="+e.id});return t}},methods:{create(){var t;this.$dialog("users/create",{query:{role:null==(t=this.role)?void 0:t.id}})},paginate(t){this.$reload({query:{page:t.page}})}}},(function(){var t,e=this,i=e._self._c;return i("k-panel-inside",{staticClass:"k-users-view"},[i("k-header",{staticClass:"k-users-view-header",scopedSlots:e._u([{key:"buttons",fn:function(){return[i("k-button",{attrs:{disabled:!e.$panel.permissions.users.create,text:e.$t("user.create"),icon:"add",size:"sm",variant:"filled"},on:{click:e.create}})]},proxy:!0}])},[e._v(" "+e._s(e.$t("view.users"))+" ")]),i("k-tabs",{attrs:{tab:(null==(t=e.role)?void 0:t.id)??"all",tabs:e.tabs}}),i("k-collection",{attrs:{empty:e.empty,items:e.items,pagination:e.users.pagination},on:{paginate:e.paginate}})],1)}),[],!1,null,null,null,null).exports;const jr=ut({props:{id:String},created(){window.panel.deprecated(" will be removed in a future version.")}},(function(){var t=this._self._c;return t("k-panel-inside",[t("k-"+this.id+"-plugin-view",{tag:"component"})],1)}),[],!1,null,null,null,null).exports,Ir={install(t){t.component("k-error-view",ur),t.component("k-search-view",cr),t.component("k-file-view",pr),t.component("k-file-preview",hr),t.component("k-file-focus-button",mr),t.component("k-languages-view",fr),t.component("k-language-view",gr),t.component("k-login-view",kr),t.component("k-installation-view",br),t.component("k-reset-password-view",vr),t.component("k-user-info",yr),t.component("k-page-view",$r),t.component("k-site-view",wr),t.component("k-system-view",xr),t.component("k-table-update-status-cell",_r),t.component("k-account-view",Cr),t.component("k-user-avatar",Or),t.component("k-user-profile",Ar),t.component("k-user-view",Sr),t.component("k-users-view",Mr),t.component("k-plugin-view",jr)}},Tr={install(t){t.use(kt),t.use(se),t.use(xe),t.use(Be),t.use(No),t.use(Yo),t.use(pl),t.use(xl),t.use(zl),t.use(er),t.use(Gl),t.use(er),t.use(ar),t.use(Ir),t.use(L)}},Er={install(t){window.onunhandledrejection=t=>{t.preventDefault(),window.panel.error(t.reason)},t.config.errorHandler=window.panel.error.bind(window.panel)}},Lr=(t={})=>{var e=t.desc?-1:1,i=-e,n=/^0/,s=/\s+/g,o=/^\s+|\s+$/g,l=/[^\x00-\x80]/,r=/^0x[0-9a-f]+$/i,a=/(0x[\da-fA-F]+|(^[\+\-]?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?(?=\D|\s|$))|\d+)/g,u=/(^([\w ]+,?[\w ]+)?[\w ]+,?[\w ]+\d+:\d+(:\d+)?[\w ]?|^\d{1,4}[\/\-]\d{1,4}[\/\-]\d{1,4}|^\w+, \w+ \d+, \d{4})/,c=t.insensitive?function(t){return function(t){if(t.toLocaleLowerCase)return t.toLocaleLowerCase();return t.toLowerCase()}(""+t).replace(o,"")}:function(t){return(""+t).replace(o,"")};function d(t){return t.replace(a,"\0$1\0").replace(/\0$/,"").replace(/^\0/,"").split("\0")}function p(t,e){return(!t.match(n)||1===e)&&parseFloat(t)||t.replace(s," ").replace(o,"")||0}return function(t,n){var s=c(t),o=c(n);if(!s&&!o)return 0;if(!s&&o)return i;if(s&&!o)return e;var a=d(s),h=d(o),m=parseInt(s.match(r),16)||1!==a.length&&Date.parse(s),f=parseInt(o.match(r),16)||m&&o.match(u)&&Date.parse(o)||null;if(f){if(mf)return e}for(var g=a.length,k=h.length,b=0,v=Math.max(g,k);b0)return e;if(w<0)return i;if(b===v-1)return 0}else{if(y<$)return i;if(y>$)return e}}return 0}};RegExp.escape=function(t){return t.replace(new RegExp("[-/\\\\^$*+?.()[\\]{}]","gu"),"\\$&")},Array.fromObject=function(t){return Array.isArray(t)?t:Object.values(t??{})};Array.prototype.sortBy=function(t){const e=t.split(" "),i=e[0],n=e[1]??"asc",s=Lr({desc:"desc"===n,insensitive:!0});return this.sort(((t,e)=>{const n=String(t[i]??""),o=String(e[i]??"");return s(n,o)}))},Array.prototype.split=function(t){return this.reduce(((e,i)=>(i===t?e.push([]):e[e.length-1].push(i),e)),[[]])},Array.wrap=function(t){return Array.isArray(t)?t:[t]};const Dr={search:(t,e,i={})=>{if((e??"").length<=(i.min??0))return t;const n=new RegExp(RegExp.escape(e),"ig"),s=i.field??"text",o=t.filter((t=>!!t[s]&&null!==t[s].match(n)));return i.limit?o.slice(0,i.limit):o}};const Br={read:function(t,e=!1){if(!t)return null;if("string"==typeof t)return t;if(t instanceof ClipboardEvent){if(t.preventDefault(),!0===e)return t.clipboardData.getData("text/plain");const i=t.clipboardData.getData("text/html")||t.clipboardData.getData("text/plain")||null;if(i)return i.replace(/\u00a0/g," ")}return null},write:function(t,e){if("string"!=typeof t&&(t=JSON.stringify(t,null,2)),e&&e instanceof ClipboardEvent)return e.preventDefault(),e.clipboardData.setData("text/plain",t),!0;const i=document.createElement("textarea");if(i.value=t,document.body.append(i),navigator.userAgent.match(/ipad|ipod|iphone/i)){i.contentEditable=!0,i.readOnly=!0;const t=document.createRange();t.selectNodeContents(i);const e=window.getSelection();e.removeAllRanges(),e.addRange(t),i.setSelectionRange(0,999999)}else i.select();return document.execCommand("copy"),i.remove(),!0}};function qr(t){if("string"==typeof t){if("pattern"===(t=t.toLowerCase()))return"var(--pattern)";if(!1===t.startsWith("#")&&!1===t.startsWith("var(")){const e="--color-"+t;if(window.getComputedStyle(document.documentElement).getPropertyValue(e))return`var(${e})`}return t}}function Pr(t,e=!1){if(!t.match("youtu"))return!1;let i=null;try{i=new URL(t)}catch(d){return!1}const n=i.pathname.split("/").filter((t=>""!==t)),s=n[0],o=n[1],l="https://"+(!0===e?"www.youtube-nocookie.com":i.host)+"/embed",r=t=>!!t&&null!==t.match(/^[a-zA-Z0-9_-]+$/);let a=i.searchParams,u=null;switch(n.join("/")){case"embed/videoseries":case"playlist":r(a.get("list"))&&(u=l+"/videoseries");break;case"watch":r(a.get("v"))&&(u=l+"/"+a.get("v"),a.has("t")&&a.set("start",a.get("t")),a.delete("v"),a.delete("t"));break;default:i.host.includes("youtu.be")&&r(s)?(u=!0===e?"https://www.youtube-nocookie.com/embed/"+s:"https://www.youtube.com/embed/"+s,a.has("t")&&a.set("start",a.get("t")),a.delete("t")):["embed","shorts"].includes(s)&&r(o)&&(u=l+"/"+o)}if(!u)return!1;const c=a.toString();return c.length&&(u+="?"+c),u}function Nr(t,e=!1){let i=null;try{i=new URL(t)}catch(a){return!1}const n=i.pathname.split("/").filter((t=>""!==t));let s=i.searchParams,o=null;switch(!0===e&&s.append("dnt",1),i.host){case"vimeo.com":case"www.vimeo.com":o=n[0];break;case"player.vimeo.com":o=n[1]}if(!o||!o.match(/^[0-9]*$/))return!1;let l="https://player.vimeo.com/video/"+o;const r=s.toString();return r.length&&(l+="?"+r),l}const zr={youtube:Pr,vimeo:Nr,video:function(t,e=!1){return!0===t.includes("youtu")?Pr(t,e):!0===t.includes("vimeo")&&Nr(t,e)}};function Fr(t){var e;if(void 0!==t.default)return vt(t.default);const i=window.panel.app.$options.components[`k-${t.type}-field`],n=null==(e=null==i?void 0:i.options.props)?void 0:e.value;if(void 0===n)return;const s=null==n?void 0:n.default;return"function"==typeof s?s():void 0!==s?s:null}const Rr={defaultValue:Fr,form:function(t){const e={};for(const i in t){const n=Fr(t[i]);void 0!==n&&(e[i]=n)}return e},isVisible:function(t,e){if("hidden"===t.type||!0===t.hidden)return!1;if(!t.when)return!0;for(const i in t.when){const n=e[i.toLowerCase()],s=t.when[i];if((void 0!==n||""!==s&&s!==[])&&n!==s)return!1}return!0},subfields:function(t,e){let i={};for(const n in e){const s=e[n];s.section=t.name,t.endpoints&&(s.endpoints={field:t.endpoints.field+"+"+n,section:t.endpoints.section,model:t.endpoints.model}),i[n]=s}return i}},Yr=t=>t.split(".").slice(-1).join(""),Ur=t=>t.split(".").slice(0,-1).join("."),Hr=t=>Intl.NumberFormat("en",{notation:"compact",style:"unit",unit:"byte",unitDisplay:"narrow"}).format(t),Vr={extension:Yr,name:Ur,niceSize:Hr};function Kr(t,e){if("string"==typeof t&&(t=document.querySelector(t)),!t)return!1;if(!e&&t.contains(document.activeElement)&&t!==document.activeElement)return!1;const i=["[autofocus]","[data-autofocus]","input","textarea","select","[contenteditable=true]","[type=submit]","button"];e&&i.unshift(`[name="${e}"]`);const n=function(t,e){for(const i of e){const e=t.querySelector(i);if(!0===Wr(e))return e}return null}(t,i);return n?(n.focus(),n):!0===Wr(t)&&(t.focus(),t)}function Wr(t){return!!t&&(!t.matches("[disabled], [aria-disabled], input[type=hidden]")&&(!t.closest("[aria-disabled]")&&!t.closest("[disabled]")&&"function"==typeof t.focus))}const Jr=t=>"function"==typeof window.Vue.options.components[t],Gr=t=>!!t.dataTransfer&&(!!t.dataTransfer.types&&(!0===t.dataTransfer.types.includes("Files")&&!1===t.dataTransfer.types.includes("text/plain")));const Xr={metaKey:function(){return window.navigator.userAgent.indexOf("Mac")>-1?"cmd":"ctrl"}};const Zr={status:function(t,e=!1){const i={class:"k-status-icon",icon:"status-"+t,title:window.panel.$t("page.status")+": "+window.panel.$t("page.status."+t),disabled:e,size:"xs",style:"--icon-size: 15px"};return e&&(i.title+=` (${window.panel.$t("disabled")})`),i.theme="draft"===t?"negative":"unlisted"===t?"info":"positive",i}},Qr=(t="3/2",e="100%",i=!0)=>{const n=String(t).split("/");if(2!==n.length)return e;const s=Number(n[0]),o=Number(n[1]);let l=100;return 0!==s&&0!==o&&(l=i?l/s*o:l/o*s,l=parseFloat(String(l)).toFixed(2)),l+"%"},ta={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};function ea(t){return String(t).replace(/[&<>"'`=/]/g,(t=>ta[t]))}function ia(t){return!t||0===String(t).length}function na(t){const e=String(t);return e.charAt(0).toLowerCase()+e.slice(1)}function sa(t="",e=""){const i=new RegExp(`^(${e})+`,"g");return t.replace(i,"")}function oa(t="",e=""){const i=new RegExp(`(${e})+$`,"g");return t.replace(i,"")}function la(t,e={}){const i=(t,e={})=>{const n=e[ea(t.shift())]??"…";return"…"===n||0===t.length?n:i(t,n)},n="[{]{1,2}[\\s]?",s="[\\s]?[}]{1,2}";return(t=t.replace(new RegExp(`${n}(.*?)${s}`,"gi"),((t,n)=>i(n.split("."),e)))).replace(new RegExp(`${n}.*${s}`,"gi"),"…")}function ra(t){const e=String(t);return e.charAt(0).toUpperCase()+e.slice(1)}function aa(){let t,e,i="";for(t=0;t<32;t++)e=16*Math.random()|0,8!=t&&12!=t&&16!=t&&20!=t||(i+="-"),i+=(12==t?4:16==t?3&e|8:e).toString(16);return i}const ua={camelToKebab:function(t){return t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()},escapeHTML:ea,hasEmoji:function(t){if("string"!=typeof t)return!1;const e=t.match(/(?:[\u2700-\u27bf]|(?:\ud83c[\udde6-\uddff]){2}|[\ud800-\udbff][\udc00-\udfff]|[\u0023-\u0039]\ufe0f?\u20e3|\u3299|\u3297|\u303d|\u3030|\u24c2|\ud83c[\udd70-\udd71]|\ud83c[\udd7e-\udd7f]|\ud83c\udd8e|\ud83c[\udd91-\udd9a]|\ud83c[\udde6-\uddff]|[\ud83c\ude01-\ude02]|\ud83c\ude1a|\ud83c\ude2f|[\ud83c\ude32-\ude3a]|[\ud83c\ude50-\ude51]|\u203c|\u2049|[\u25aa-\u25ab]|\u25b6|\u25c0|[\u25fb-\u25fe]|\u00a9|\u00ae|\u2122|\u2139|\ud83c\udc04|[\u2600-\u26FF]|\u2b05|\u2b06|\u2b07|\u2b1b|\u2b1c|\u2b50|\u2b55|\u231a|\u231b|\u2328|\u23cf|[\u23e9-\u23f3]|[\u23f8-\u23fa]|\ud83c\udccf|\u2934|\u2935|[\u2190-\u21ff])/i);return null!==e&&null!==e.length},isEmpty:ia,lcfirst:na,ltrim:sa,pad:function(t,e=2){t=String(t);let i="";for(;i.length]+)>)/gi,"")},template:la,ucfirst:ra,ucwords:function(t){return String(t).split(/ /g).map((t=>ra(t))).join(" ")},unescapeHTML:function(t){for(const e in ta)t=String(t).replaceAll(ta[e],e);return t},uuid:aa},ca=async(t,e)=>new Promise(((i,n)=>{const s={url:"/",field:"file",method:"POST",filename:t.name,headers:{},attributes:{},complete:()=>{},error:()=>{},success:()=>{},progress:()=>{}},o=Object.assign(s,e),l=new XMLHttpRequest,r=new FormData;r.append(o.field,t,o.filename);for(const t in o.attributes)r.append(t,o.attributes[t]);const a=e=>{if(e.lengthComputable&&o.progress){const i=Math.max(0,Math.min(100,Math.ceil(e.loaded/e.total*100)));o.progress(l,t,i)}};l.upload.addEventListener("loadstart",a),l.upload.addEventListener("progress",a),l.addEventListener("load",(e=>{let s=null;try{s=JSON.parse(e.target.response)}catch(r){s={status:"error",message:"The file could not be uploaded"}}"error"===s.status?(o.error(l,t,s),n(s)):(o.progress(l,t,100),o.success(l,t,s),i(s))})),l.addEventListener("error",(e=>{const i=JSON.parse(e.target.response);o.progress(l,t,100),o.error(l,t,i),n(i)})),l.open(o.method,o.url,!0);for(const t in o.headers)l.setRequestHeader(t,o.headers[t]);l.send(r)}));function da(){var t;return new URL((null==(t=document.querySelector("base"))?void 0:t.href)??window.location.origin)}function pa(t={},e={}){e instanceof URL&&(e=e.search);const i=new URLSearchParams(e);for(const[n,s]of Object.entries(t))null!==s&&i.set(n,s);return i}function ha(t="",e={},i){return(t=ba(t,i)).search=pa(e,t.search),t}function ma(t){return null!==String(t).match(/^https?:\/\//)}function fa(t){return ba(t).origin===window.location.origin}function ga(t){if(t instanceof URL||t instanceof Location)return!0;if("string"!=typeof t)return!1;try{return new URL(t,window.location),!0}catch(e){return!1}}function ka(t,e){return!0===ma(t)?t:(e=e??da(),(e=String(e).replaceAll(/\/$/g,""))+"/"+(t=String(t).replaceAll(/^\//g,"")))}function ba(t,e){return t instanceof URL?t:new URL(ka(t,e))}const va={base:da,buildUrl:ha,buildQuery:pa,isAbsolute:ma,isSameOrigin:fa,isUrl:ga,makeAbsolute:ka,toObject:ba},ya={install(t){t.prototype.$helper={array:Dr,clipboard:Br,clone:xt.clone,color:qr,embed:zr,focus:Kr,isComponent:Jr,isUploadEvent:Gr,debounce:zt,field:Rr,file:Vr,keyboard:Xr,object:xt,page:Zr,pad:ua.pad,ratio:Qr,slug:ua.slug,sort:Lr,string:ua,upload:ca,url:va,uuid:ua.uuid},t.prototype.$esc=ua.escapeHTML}},$a={install(t){t.directive("direction",{inserted(t,e,i){!0!==i.context.disabled?t.dir=window.panel.translation.direction:t.dir=null}})}},wa={install(t){window.panel.redirect=window.panel.redirect.bind(window.panel),window.panel.reload=window.panel.reload.bind(window.panel),window.panel.request=window.panel.request.bind(window.panel),window.panel.search=window.panel.search.bind(window.panel);const e=["api","config","direction","events","language","languages","license","menu","multilang","permissions","search","searches","system","t","translation","url","urls","user","view"];for(const i of e){const e=`$${i}`;t.prototype[e]=window.panel[e]=window.panel[i]}window.panel.$vue=window.panel.app}},xa=/^#([\da-f]{3}){1,2}$/i,_a=/^#([\da-f]{4}){1,2}$/i,Sa=/^rgba?\(\s*(\d{1,3})(%?)(?:,|\s)+(\d{1,3})(%?)(?:,|\s)+(\d{1,3})(%?)(?:,|\s|\/)*(\d*(?:\.\d+)?)(%?)\s*\)?$/i,Ca=/^hsla?\(\s*(\d{1,3}\.?\d*)(deg|rad|grad|turn)?(?:,|\s)+(\d{1,3})%(?:,|\s)+(\d{1,3})%(?:,|\s|\/)*(\d*(?:\.\d+)?)(%?)\s*\)?$/i;function Oa(t){return"string"==typeof t&&(xa.test(t)||_a.test(t))}function Aa(t){return yt(t)&&"r"in t&&"g"in t&&"b"in t}function Ma(t){return yt(t)&&"h"in t&&"s"in t&&"l"in t}function ja({h:t,s:e,v:i,a:n}){if(0===i)return{h:t,s:0,l:0,a:n};if(0===e&&1===i)return{h:t,s:1,l:1,a:n};const s=i*(2-e)/2;return{h:t,s:e=i*e/(1-Math.abs(2*s-1)),l:s,a:n}}function Ia({h:t,s:e,l:i,a:n}){const s=e*(i<.5?i:1-i);return{h:t,s:e=0===s?0:2*s/(i+s),v:i+s,a:n}}function Ta(t){if(!0===xa.test(t)){3===(t=t.slice(1)).length&&(t=t.split("").reduce(((t,e)=>t+e+e),""));const e=parseInt(t,16);return{r:e>>16,g:e>>8&255,b:255&e,a:1}}if(!0===_a.test(t)){4===(t=t.slice(1)).length&&(t=t.split("").reduce(((t,e)=>t+e+e),""));const e=parseInt(t,16);return{r:e>>24&255,g:e>>16&255,b:e>>8&255,a:Math.round((255&e)/255*100)/100}}throw new Error(`unknown hex color: ${t}`)}function Ea({r:t,g:e,b:i,a:n=1}){let s="#"+(1<<24|t<<16|e<<8|i).toString(16).slice(1);return n<1&&(s+=(256|Math.round(255*n)).toString(16).slice(1)),s}function La({h:t,s:e,l:i,a:n}){const s=e*Math.min(i,1-i),o=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return{r:255*o(0),g:255*o(8),b:255*o(4),a:n}}function Da({r:t,g:e,b:i,a:n}){t/=255,e/=255,i/=255;const s=Math.max(t,e,i),o=s-Math.min(t,e,i),l=1-Math.abs(s+s-o-1);let r=o&&(s==t?(e-i)/o:s==e?2+(i-t)/o:4+(t-e)/o);return r=60*(r<0?r+6:r),{h:r,s:l?o/l:0,l:(s+s-o)/2,a:n}}function Ba(t){return Ea(La(t))}function qa(t){return Da(Ta(t))}function Pa(t,e){return t=Number(t),"grad"===e?t*=.9:"rad"===e?t*=180/Math.PI:"turn"===e&&(t*=360),parseInt(t%360)}function Na(t,e){if(!0===Oa(t))switch(e){case"hex":return t;case"rgb":return Ta(t);case"hsl":return qa(t);case"hsv":return Ia(qa(t))}if(!0===Aa(t))switch(e){case"hex":return Ea(t);case"rgb":return t;case"hsl":return Da(t);case"hsv":return function({r:t,g:e,b:i,a:n}){t/=255,e/=255,i/=255;const s=Math.max(t,e,i),o=s-Math.min(t,e,i);let l=o&&(s==t?(e-i)/o:s==e?2+(i-t)/o:4+(t-e)/o);return l=60*(l<0?l+6:l),{h:l,s:s&&o/s,v:s,a:n}}(t)}if(!0===Ma(t))switch(e){case"hex":return Ba(t);case"rgb":return La(t);case"hsl":return t;case"hsv":return Ia(t)}if(!0===function(t){return yt(t)&&"h"in t&&"s"in t&&"v"in t}(t))switch(e){case"hex":return Ba(ja(t));case"rgb":return function({h:t,s:e,v:i,a:n}){const s=(n,s=(n+t/60)%6)=>i-i*e*Math.max(Math.min(s,4-s,1),0);return{r:255*s(5),g:255*s(3),b:255*s(1),a:n}}(t);case"hsl":return ja(t);case"hsv":return t}throw new Error(`Invalid color conversion: ${JSON.stringify(t)} -> ${e}`)}function za(t){let e;if(!t||"string"!=typeof t)return!1;if(Oa(t))return t;if(e=t.match(Sa)){const t={r:Number(e[1]),g:Number(e[3]),b:Number(e[5]),a:Number(e[7]||1)};return"%"===e[2]&&(t.r=Math.ceil(2.55*t.r)),"%"===e[4]&&(t.g=Math.ceil(2.55*t.g)),"%"===e[6]&&(t.b=Math.ceil(2.55*t.b)),"%"===e[8]&&(t.a=t.a/100),t}if(e=t.match(Ca)){let[t,i,n,s,o]=e.slice(1);const l={h:Pa(t,i),s:Number(n)/100,l:Number(s)/100,a:Number(o||1)};return"%"===e[6]&&(l.a=l.a/100),l}return null}const Fa={convert:Na,parse:za,parseAs:function(t,e){const i=za(t);return i&&e?Na(i,e):i},toString:function(t,e,i=!0){var n,s;let o=t;if("string"==typeof o&&(o=za(t)),o&&e&&(o=Na(o,e)),!0===Oa(o))return!0!==i&&(5===o.length?o=o.slice(0,4):o.length>7&&(o=o.slice(0,7))),o.toLowerCase();if(!0===Aa(o)){const t=o.r.toFixed(),e=o.g.toFixed(),s=o.b.toFixed(),l=null==(n=o.a)?void 0:n.toFixed(2);return i&&l&&l<1?`rgb(${t} ${e} ${s} / ${l})`:`rgb(${t} ${e} ${s})`}if(!0===Ma(o)){const t=o.h.toFixed(),e=(100*o.s).toFixed(),n=(100*o.l).toFixed(),l=null==(s=o.a)?void 0:s.toFixed(2);return i&&l&&l<1?`hsl(${t} ${e}% ${n}% / ${l})`:`hsl(${t} ${e}% ${n}%)`}throw new Error(`Unsupported color: ${JSON.stringify(t)}`)}};D.extend(B),D.extend(((t,e,i)=>{i.interpret=(t,e="date")=>{const n={date:{"YYYY-MM-DD":!0,"YYYY-MM-D":!0,"YYYY-MM-":!0,"YYYY-MM":!0,"YYYY-M-DD":!0,"YYYY-M-D":!0,"YYYY-M-":!0,"YYYY-M":!0,"YYYY-":!0,YYYYMMDD:!0,"MMM DD YYYY":!1,"MMM D YYYY":!1,"MMM DD YY":!1,"MMM D YY":!1,"MMM YYYY":!0,"MMM DD":!1,"MMM D":!1,"MM YYYY":!0,"M YYYY":!0,"DD MMMM YYYY":!1,"DD MMMM YY":!1,"DD MMMM":!1,"D MMMM YYYY":!1,"D MMMM YY":!1,"D MMMM":!1,"DD MMM YYYY":!1,"D MMM YYYY":!1,"DD MMM YY":!1,"D MMM YY":!1,"DD MMM":!1,"D MMM":!1,"DD MM YYYY":!1,"DD M YYYY":!1,"D MM YYYY":!1,"D M YYYY":!1,"DD MM YY":!1,"D MM YY":!1,"DD M YY":!1,"D M YY":!1,YYYY:!0,MMMM:!0,MMM:!0,"DD MM":!1,"DD M":!1,"D MM":!1,"D M":!1,DD:!1,D:!1},time:{"HH:mm:ss a":!1,"HH:mm:ss":!1,"HH:mm a":!1,"HH:mm":!1,"HH a":!1,HH:!1}};if("string"==typeof t&&""!==t)for(const s in n[e]){const o=i(t,s,n[e][s]);if(!0===o.isValid())return o}return null}})),D.extend(((t,e,i)=>{const n=t=>"date"===t?"YYYY-MM-DD":"time"===t?"HH:mm:ss":"YYYY-MM-DD HH:mm:ss";e.prototype.toISO=function(t="datetime"){return this.format(n(t))},i.iso=function(t,e="datetime"){const s=i(t,n(e));return s&&s.isValid()?s:null}})),D.extend(((t,e)=>{e.prototype.merge=function(t,e="date"){let i=this.clone();if(!t||!t.isValid())return this;if("string"==typeof e){const t={date:["year","month","date"],time:["hour","minute","second"]};if(!1===Object.hasOwn(t,e))throw new Error("Invalid merge unit alias");e=t[e]}for(const n of e)i=i.set(n,t.get(n));return i}})),D.extend(((t,e,i)=>{i.pattern=t=>new class{constructor(t,e){this.dayjs=t,this.pattern=e;const i={year:["YY","YYYY"],month:["M","MM","MMM","MMMM"],day:["D","DD"],hour:["h","hh","H","HH"],minute:["m","mm"],second:["s","ss"],meridiem:["a"]};this.parts=this.pattern.split(/\W/).map(((t,e)=>{const n=this.pattern.indexOf(t);return{index:e,unit:Object.keys(i)[Object.values(i).findIndex((e=>e.includes(t)))],start:n,end:n+(t.length-1)}}))}at(t,e=t){const i=this.parts.filter((i=>i.start<=t&&i.end>=e-1));return i[0]?i[0]:this.parts.filter((e=>e.start<=t)).pop()}format(t){return t&&t.isValid()?t.format(this.pattern):null}}(i,t)})),D.extend(((t,e)=>{e.prototype.round=function(t="date",e=1){const i=["second","minute","hour","date","month","year"];if("day"===t&&(t="date"),!1===i.includes(t))throw new Error("Invalid rounding unit");if(["date","month","year"].includes(t)&&1!==e||"hour"===t&&24%e!=0||["second","minute"].includes(t)&&60%e!=0)throw"Invalid rounding size for "+t;let n=this.clone();const s=i.indexOf(t),o=i.slice(0,s),l=o.pop();for(const r of o)n=n.startOf(r);if(l){const e={month:12,date:n.daysInMonth(),hour:24,minute:60,second:60}[l];Math.round(n.get(l)/e)*e===e&&(n=n.add(1,"date"===t?"day":t)),n=n.startOf(t)}return n=n.set(t,Math.round(n.get(t)/e)*e),n}})),D.extend(((t,e,i)=>{e.prototype.validate=function(t,e,n="day"){if(!this.isValid())return!1;if(!t)return!0;t=i.iso(t);const s={min:"isAfter",max:"isBefore"}[e];return this.isSame(t,n)||this[s](t,n)}}));const Ra={install(t){t.prototype.$library={autosize:q,colors:Fa,dayjs:D}}},Ya=()=>({close(){sessionStorage.setItem("kirby$activation$card","true"),this.isOpen=!1},isOpen:"true"!==sessionStorage.getItem("kirby$activation$card"),open(){sessionStorage.removeItem("kirby$activation$card"),this.isOpen=!0}}),Ua=t=>({async changeName(e,i,n){return t.patch(this.url(e,i,"name"),{name:n})},async delete(e,i){return t.delete(this.url(e,i))},async get(e,i,n){let s=await t.get(this.url(e,i),n);return!0===Array.isArray(s.content)&&(s.content={}),s},id:t=>!0===t.startsWith("/@/file/")?t.replace("/@/file/","@"):!0===t.startsWith("file://")?t.replace("file://","@"):t,link(t,e,i){return"/"+this.url(t,e,i)},async update(e,i,n){return t.patch(this.url(e,i),n)},url(t,e,i){let n="files/"+this.id(e);return t&&(n=t+"/"+n),i&&(n+="/"+i),n}}),Ha=t=>({async blueprint(e){return t.get("pages/"+this.id(e)+"/blueprint")},async blueprints(e,i){return t.get("pages/"+this.id(e)+"/blueprints",{section:i})},async changeSlug(e,i){return t.patch("pages/"+this.id(e)+"/slug",{slug:i})},async changeStatus(e,i,n){return t.patch("pages/"+this.id(e)+"/status",{status:i,position:n})},async changeTemplate(e,i){return t.patch("pages/"+this.id(e)+"/template",{template:i})},async changeTitle(e,i){return t.patch("pages/"+this.id(e)+"/title",{title:i})},async children(e,i){return t.post("pages/"+this.id(e)+"/children/search",i)},async create(e,i){return null===e||"/"===e?t.post("site/children",i):t.post("pages/"+this.id(e)+"/children",i)},async delete(e,i){return t.delete("pages/"+this.id(e),i)},async duplicate(e,i,n){return t.post("pages/"+this.id(e)+"/duplicate",{slug:i,children:n.children??!1,files:n.files??!1})},async get(e,i){let n=await t.get("pages/"+this.id(e),i);return!0===Array.isArray(n.content)&&(n.content={}),n},id:t=>!0===t.startsWith("/@/page/")?t.replace("/@/page/","@"):!0===t.startsWith("page://")?t.replace("page://","@"):t.replace(/\//g,"+"),async files(e,i){return t.post("pages/"+this.id(e)+"/files/search",i)},link(t){return"/"+this.url(t)},async preview(t){return(await this.get(this.id(t),{select:"previewUrl"})).previewUrl},async search(e,i){return e?t.post("pages/"+this.id(e)+"/children/search?select=id,title,hasChildren",i):t.post("site/children/search?select=id,title,hasChildren",i)},async update(e,i){return t.patch("pages/"+this.id(e),i)},url(t,e){let i=null===t?"pages":"pages/"+String(t).replace(/\//g,"+");return e&&(i+="/"+e),i}});class Va extends Error{constructor(t,{request:e,response:i,cause:n}){super(i.json.message??t,{cause:n}),this.request=e,this.response=i}state(){return this.response.json}}class Ka extends Va{}class Wa extends Va{state(){return{message:this.message,text:this.response.text}}}const Ja=t=>(window.location.href=ka(t),!1),Ga=async(t,e={})=>{var i;(e={cache:"no-store",credentials:"same-origin",mode:"same-origin",...e}).body=((i=e.body)instanceof HTMLFormElement&&(i=new FormData(i)),i instanceof FormData&&(i=Object.fromEntries(i)),"object"==typeof i?JSON.stringify(i):i),e.headers=((t={},e={})=>{return{"content-type":"application/json","x-csrf":e.csrf??!1,"x-fiber":!0,"x-fiber-globals":(i=e.globals,!!i&&(!1===Array.isArray(i)?String(i):i.join(","))),"x-fiber-referrer":e.referrer??!1,...wt(t)};var i})(e.headers,e),e.url=ha(t,e.query);const n=new Request(e.url,e);return!1===fa(n.url)?Ja(n.url):await Xa(n,await fetch(n))},Xa=async(t,e)=>{var i;if(!1===e.headers.get("Content-Type").includes("application/json"))return Ja(e.url);try{e.text=await e.text(),e.json=JSON.parse(e.text)}catch(n){throw new Wa("Invalid JSON response",{cause:n,request:t,response:e})}if(401===e.status)throw new Ka("Unauthenticated",{request:t,response:e});if("error"===(null==(i=e.json)?void 0:i.status))throw e.json;if(!1===e.ok)throw new Va(`The request to ${e.url} failed`,{request:t,response:e});return{request:t,response:e}},Za=t=>({blueprint:async e=>t.get("users/"+e+"/blueprint"),blueprints:async(e,i)=>t.get("users/"+e+"/blueprints",{section:i}),changeEmail:async(e,i)=>t.patch("users/"+e+"/email",{email:i}),changeLanguage:async(e,i)=>t.patch("users/"+e+"/language",{language:i}),changeName:async(e,i)=>t.patch("users/"+e+"/name",{name:i}),changePassword:async(e,i)=>t.patch("users/"+e+"/password",{password:i}),changeRole:async(e,i)=>t.patch("users/"+e+"/role",{role:i}),create:async e=>t.post("users",e),delete:async e=>t.delete("users/"+e),deleteAvatar:async e=>t.delete("users/"+e+"/avatar"),link(t,e){return"/"+this.url(t,e)},async list(e){return t.post(this.url(null,"search"),e)},get:async(e,i)=>t.get("users/"+e,i),async roles(e){return(await t.get(this.url(e,"roles"))).data.map((t=>({info:t.description??`(${window.panel.$t("role.description.placeholder")})`,text:t.title,value:t.name})))},search:async e=>t.post("users/search",e),update:async(e,i)=>t.patch("users/"+e,i),url(t,e){let i=t?"users/"+t:"users";return e&&(i+="/"+e),i}}),Qa=t=>{const e={csrf:t.system.csrf,endpoint:oa(t.urls.api,"/"),methodOverwrite:!0,ping:null,requests:[],running:0},i=()=>{clearInterval(e.ping),e.ping=setInterval(e.auth.ping,3e5)};return e.request=async(n,s={},o=!1)=>{const l=n+"/"+JSON.stringify(s);e.requests.push(l),!1===o&&(t.isLoading=!0),e.language=t.language.code;try{return await(t=>async(e,i={})=>{i={cache:"no-store",credentials:"same-origin",mode:"same-origin",headers:{"content-type":"application/json","x-csrf":t.csrf,"x-language":t.language,...wt(i.headers??{})},...i},t.methodOverwrite&&"GET"!==i.method&&"POST"!==i.method&&(i.headers["x-http-method-override"]=i.method,i.method="POST"),i.url=oa(t.endpoint,"/")+"/"+sa(e,"/");const n=new Request(i.url,i),{response:s}=await Xa(n,await fetch(n));let o=s.json;return o.data&&"model"===o.type&&(o=o.data),o})(e)(n,s)}finally{i(),e.requests=e.requests.filter((t=>t!==l)),0===e.requests.length&&(t.isLoading=!1)}},e.auth=(t=>({async login(e){const i={long:e.remember??!1,email:e.email,password:e.password};return t.post("auth/login",i)},logout:async()=>t.post("auth/logout"),ping:async()=>t.post("auth/ping"),user:async e=>t.get("auth",e),verifyCode:async e=>t.post("auth/code",{code:e})}))(e),e.delete=(t=>async(e,i,n,s=!1)=>t.post(e,i,n,"DELETE",s))(e),e.files=Ua(e),e.get=(t=>async(e,i,n,s=!1)=>(i&&(e+="?"+Object.keys(i).filter((t=>void 0!==i[t]&&null!==i[t])).map((t=>t+"="+i[t])).join("&")),t.request(e,Object.assign(n??{},{method:"GET"}),s)))(e),e.languages=(t=>({create:async e=>t.post("languages",e),delete:async e=>t.delete("languages/"+e),get:async e=>t.get("languages/"+e),list:async()=>t.get("languages"),update:async(e,i)=>t.patch("languages/"+e,i)}))(e),e.pages=Ha(e),e.patch=(t=>async(e,i,n,s=!1)=>t.post(e,i,n,"PATCH",s))(e),e.post=(t=>async(e,i,n,s="POST",o=!1)=>t.request(e,Object.assign(n??{},{method:s,body:JSON.stringify(i)}),o))(e),e.roles=(t=>({list:async e=>t.get("roles",e),get:async e=>t.get("roles/"+e)}))(e),e.system=(t=>({get:async(e={view:"panel"})=>t.get("system",e),install:async e=>(await t.post("system/install",e)).user,register:async e=>t.post("system/register",e)}))(e),e.site=(t=>({blueprint:async()=>t.get("site/blueprint"),blueprints:async()=>t.get("site/blueprints"),changeTitle:async e=>t.patch("site/title",{title:e}),children:async e=>t.post("site/children/search",e),get:async(e={view:"panel"})=>t.get("site",e),update:async e=>t.post("site",e)}))(e),e.translations=(t=>({list:async()=>t.get("translations"),get:async e=>t.get("translations/"+e)}))(e),e.users=Za(e),i(),e},tu=()=>({addEventListener(t,e){"function"==typeof e&&(this.on[t]=e)},addEventListeners(t){if(!1!==yt(t))for(const e in t)this.addEventListener(e,t[e])},emit(t,...e){return this.hasEventListener(t)?this.on[t](...e):()=>{}},hasEventListener(t){return"function"==typeof this.on[t]},listeners(){return this.on},on:{}}),eu=(t,e={})=>({...e,key:()=>t,defaults:()=>e,reset(){return this.set(this.defaults())},set(t){this.validateState(t);for(const e in this.defaults())this[e]=t[e]??this.defaults()[e];return this.state()},state(){const t={};for(const e in this.defaults())t[e]=this[e]??this.defaults()[e];return t},validateState(t){if(!1===yt(t))throw new Error(`Invalid ${this.key()} state`);return!0}}),iu=(t,e,i)=>{const n=eu(e,i);return{...n,...tu(),async load(e,i={}){return!0!==i.silent&&(this.isLoading=!0),await t.open(e,i),this.isLoading=!1,this.addEventListeners(i.on),this.state()},async open(t,e={}){return"function"==typeof e&&(e={on:{submit:e}}),!0===ga(t)?this.load(t,e):(this.set(t),this.addEventListeners(e.on),this.emit("open",t,e),this.state())},async post(e,i={}){var n;if(!this.path)throw new Error(`The ${this.key()} cannot be posted`);this.isLoading=!0,e=e??(null==(n=this.props)?void 0:n.value)??{};try{return await t.post(this.path,e,i)}catch(s){t.error(s)}finally{this.isLoading=!1}return!1},async refresh(e={}){e.url=e.url??this.url();const i=(await t.get(e.url,e))["$"+this.key()];if(i&&i.component===this.component)return this.props=i.props,this.state()},async reload(t={}){if(!this.path)return!1;this.open(this.url(),t)},set(t){return n.set.call(this,t),this.on={},this.addEventListeners(t.on??{}),this.state()},url(){return t.url(this.path,this.query)}}},nu=(t,e,i)=>{const n=iu(t,e,i);return{...n,async cancel(){this.isOpen&&this.emit("cancel"),this.close()},async close(){!1!==this.isOpen&&(this.isOpen=!1,this.emit("close"),this.reset(),0===t.overlays().length&&(document.documentElement.removeAttribute("data-overlay"),document.documentElement.style.removeProperty("--scroll-top")))},focus(t){Kr(`.k-${this.key()}-portal`,t)},input(t){!1!==this.isOpen&&(Vue.set(this.props,"value",t),this.emit("input",t))},isOpen:!1,listeners(){return{...this.on,cancel:this.cancel.bind(this),close:this.close.bind(this),input:this.input.bind(this),submit:this.submit.bind(this),success:this.success.bind(this)}},async open(e,i){return!1===this.isOpen&&t.notification.close(),document.documentElement.setAttribute("data-overlay","true"),document.documentElement.style.setProperty("--scroll-top",window.scrollY+"px"),await n.open.call(this,e,i),this.isOpen=!0,this.state()},async submit(t,e={}){if(t=t??this.props.value,this.hasEventListener("submit"))return this.emit("submit",t,e);if(!this.path)return this.close();const i=await this.post(t,e);return!1===yt(i)?i:this.success(i["$"+this.key()]??{})},success(e){return this.hasEventListener("success")?this.emit("success",e):("string"==typeof e&&t.notification.success(e),this.close(),this.successNotification(e),this.successEvents(e),this.successDispatch(e),e.route||e.redirect?this.successRedirect(e):t.view.reload(e.reload),e)},successDispatch(e){if(!1!==yt(e.dispatch))for(const i in e.dispatch){const n=e.dispatch[i];t.app.$store.dispatch(i,!0===Array.isArray(n)?[...n]:n)}},successEvents(e){if(e.event){const i=Array.wrap(e.event);for(const n of i)"string"==typeof n&&t.events.emit(n,e)}!1!==e.emit&&t.events.emit("success",e)},successNotification(e){e.message&&t.notification.success(e.message)},successRedirect(e){const i=e.route??e.redirect;return!!i&&("string"==typeof i?t.open(i):t.open(i.url,i.options))},get value(){var t;return null==(t=this.props)?void 0:t.value}}},su=t=>{t.events.on("dialog.save",(e=>{var i;null==(i=null==e?void 0:e.preventDefault)||i.call(e),t.dialog.submit()}));const e=nu(t,"dialog",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null,legacy:!1,ref:null});return{...e,async close(){this.ref&&(this.ref.visible=!1),e.close.call(this)},async open(t,i={}){return t instanceof window.Vue?this.openComponent(t):("string"==typeof t&&(t=`/dialogs/${t}`),e.open.call(this,t,i))},async openComponent(i){t.deprecated("Dialog components should no longer be used in your templates");const n=await e.open.call(this,{component:i.$options._componentTag,legacy:!0,props:{...i.$attrs,...i.$props},ref:i}),s=this.listeners();for(const t in s)i.$on(t,s[t]);return i.visible=!0,n}}},ou=()=>({...eu("drag",{type:null,data:{}}),get isDragging(){return null!==this.type},start(t,e){this.type=t,this.data=e},stop(){this.type=null,this.data={}}}),lu=()=>({add(t){if(!t.id)throw new Error("The state needs an ID");!0!==this.has(t.id)&&this.milestones.push(t)},at(t){return this.milestones.at(t)},get(t=null){return null===t?this.milestones:this.milestones.find((e=>e.id===t))},goto(t){const e=this.index(t);if(-1!==e)return this.milestones=this.milestones.slice(0,e+1),this.milestones[e]},has(t){return void 0!==this.get(t)},index(t){return this.milestones.findIndex((e=>e.id===t))},isEmpty(){return 0===this.milestones.length},last(){return this.milestones.at(-1)},milestones:[],remove(t=null){return null===t?this.removeLast():this.milestones=this.milestones.filter((e=>e.id!==t))},removeLast(){return this.milestones=this.milestones.slice(0,-1)},replace(t,e){-1===t&&(t=this.milestones.length-1),Vue.set(this.milestones,t,e)}}),ru=t=>{const e=nu(t,"drawer",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null,id:null});return t.events.on("drawer.save",(e=>{e.preventDefault(),t.drawer.submit()})),{...e,get breadcrumb(){return this.history.milestones},async close(t){if(!1!==this.isOpen&&(void 0===t||t===this.id)){if(this.history.removeLast(),!0!==this.history.isEmpty())return this.open(this.history.last());e.close.call(this)}},goTo(t){const e=this.history.goto(t);void 0!==e&&this.open(e)},history:lu(),get icon(){return this.props.icon??"box"},input(t){Vue.set(this.props,"value",t),this.emit("input",this.props.value)},listeners(){return{...this.on,cancel:this.cancel.bind(this),close:this.close.bind(this),crumb:this.goTo.bind(this),input:this.input.bind(this),submit:this.submit.bind(this),success:this.success.bind(this),tab:this.tab.bind(this)}},async open(t,i={}){"string"==typeof t&&(t=`/drawers/${t}`),await e.open.call(this,t,i),this.tab(t.tab);const n=this.state();return!0===t.replace?this.history.replace(-1,n):this.history.add(n),this.focus(),n},set(t){return e.set.call(this,t),this.id=this.id??aa(),this.state()},tab(t){const e=this.props.tabs??{};if(!(t=t??Object.keys(e??{})[0]))return!1;Vue.set(this.props,"fields",e[t].fields),Vue.set(this.props,"tab",t),this.emit("tab",t),setTimeout((()=>{this.focus()}))}}},au=t=>{const e=iu(t,"dropdown",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null});return{...e,close(){this.emit("close"),this.reset()},open(t,i={}){return"string"==typeof t&&(t=`/dropdowns/${t}`),e.open.call(this,t,i)},openAsync(t,e={}){return async i=>{await this.open(t,e);const n=this.options();if(0===n.length)throw Error("The dropdown is empty");i(n)}},options(){return!1===Array.isArray(this.props.options)?[]:this.props.options.map((e=>e.dialog?(e.click=()=>{const i="string"==typeof e.dialog?e.dialog:e.dialog.url,n="object"==typeof e.dialog?e.dialog:{};return t.app.$dialog(i,n)},e):e))},set(t){return t.options&&(t.props={options:t.options}),e.set.call(this,t)}}},uu=t=>{const e=P();e.on("online",(()=>{t.isOffline=!1})),e.on("offline",(()=>{t.isOffline=!0})),e.on("keydown.cmd.s",(i=>{e.emit(t.context+".save",i)})),e.on("keydown.cmd.shift.f",(()=>t.search())),e.on("keydown.cmd./",(()=>t.search()));const i={document:{blur:!0,click:!1,copy:!0,focus:!0,paste:!0},window:{dragenter:!1,dragexit:!1,dragleave:!1,dragover:!1,drop:!1,keydown:!1,keyup:!1,offline:!1,online:!1,popstate:!1}};return{blur(t){this.emit("blur",t)},click(t){this.emit("click",t)},copy(t){this.emit("copy",t)},dragenter(t){this.entered=t.target,this.prevent(t),this.emit("dragenter",t)},dragexit(t){this.prevent(t),this.entered=null,this.emit("dragexit",t)},dragleave(t){this.prevent(t),this.entered===t.target&&(this.entered=null,this.emit("dragleave",t))},dragover(t){this.prevent(t),this.emit("dragover",t)},drop(t){this.prevent(t),this.entered=null,this.emit("drop",t)},emit:e.emit,entered:null,focus(t){this.emit("focus",t)},keychain(t,e){let i=[t];(e.metaKey||e.ctrlKey)&&i.push("cmd"),!0===e.altKey&&i.push("alt"),!0===e.shiftKey&&i.push("shift");let n=e.key?na(e.key):null;const s={escape:"esc",arrowUp:"up",arrowDown:"down",arrowLeft:"left",arrowRight:"right"};return s[n]&&(n=s[n]),n&&!1===["alt","control","shift","meta"].includes(n)&&i.push(n),i.join(".")},keydown(t){this.emit(this.keychain("keydown",t),t),this.emit("keydown",t)},keyup(t){this.emit(this.keychain("keyup",t),t),this.emit("keyup",t)},off:e.off,offline(t){this.emit("offline",t)},on:e.on,online(t){this.emit("online",t)},paste(t){this.emit("paste",t)},popstate(t){this.emit("popstate",t)},prevent(t){t.stopPropagation(),t.preventDefault()},subscribe(){for(const t in i.document)document.addEventListener(t,this[t].bind(this),i.document[t]);for(const t in i.window)window.addEventListener(t,this[t].bind(this),i.window[t])},unsubscribe(){for(const t in i.document)document.removeEventListener(t,this[t]);for(const t in i.window)window.removeEventListener(t,this[t])},$on(...t){window.panel.deprecated("`events.$on` will be removed in a future version. Use `events.on` instead."),e.on(...t)},$emit(...t){window.panel.deprecated("`events.$emit` will be removed in a future version. Use `events.emit` instead."),e.emit(...t)},$off(...t){window.panel.deprecated("`events.$off` will be removed in a future version. Use `events.off` instead."),e.off(...t)}}},cu={interval:null,start(t,e){this.stop(),t&&(this.interval=setInterval(e,t))},stop(){clearInterval(this.interval),this.interval=null}},du=(t={})=>({...eu("notification",{context:null,details:null,icon:null,isOpen:!1,message:null,timeout:null,type:null}),close(){return this.timer.stop(),this.reset(),this.state()},deprecated(t){console.warn("Deprecated: "+t)},error(e){if(e instanceof Ka&&t.user.id)return t.redirect("logout");if(e instanceof Wa)return this.fatal(e);if(e instanceof Va){const t=Object.values(e.response.json).find((t=>"string"==typeof(null==t?void 0:t.error)));t&&(e.message=t.error)}return"string"==typeof e&&(e={message:e,type:"error"}),e={message:e.message??"Something went wrong",details:e.details??{}},"view"===t.context&&t.dialog.open({component:"k-error-dialog",props:e,type:"error"}),this.open({message:e.message,type:"error",icon:"alert"})},get isFatal(){return"fatal"===this.type},fatal(t){return"string"==typeof t?this.open({message:t,type:"fatal"}):t instanceof Wa?this.open({message:t.response.text,type:"fatal"}):this.open({message:t.message??"Something went wrong",type:"fatal"})},open(e){return this.timer.stop(),"string"==typeof e?this.success(e):(this.set({context:t.context,...e}),this.isOpen=!0,this.timer.start(this.timeout,(()=>this.close())),this.state())},success(t){return t||(t={}),"string"==typeof t&&(t={message:t}),this.open({timeout:4e3,type:"success",icon:"check",...t})},get theme(){return"error"===this.type?"negative":"positive"},timer:cu}),pu=()=>({...eu("language",{code:null,default:!1,direction:"ltr",name:null,rules:null}),get isDefault(){return this.default}}),hu=(t,e,i)=>{if(!i.template&&!i.render&&!i.extends)throw new Error(`Neither template nor render method provided. Nor extending a component when loading plugin component "${e}". The component has not been registered.`);return(i=mu(t,e,i)).template&&(i.render=null),i=fu(i),!0===Jr(e)&&window.console.warn(`Plugin is replacing "${e}"`),t.component(e,i),i},mu=(t,e,i)=>"string"!=typeof(null==i?void 0:i.extends)?i:!1===Jr(i.extends)?(window.console.warn(`Problem with plugin trying to register component "${e}": cannot extend non-existent component "${i.extends}"`),i.extends=null,i):(i.extends=t.options.components[i.extends].extend({options:i,components:{...t.options.components,...i.components??{}}}),i),fu=t=>{if(!1===Array.isArray(t.mixins))return t;const e={dialog:Lt,drawer:fe,section:Yl};return t.mixins=t.mixins.map((t=>"string"==typeof t?e[t]:t)),t},gu=(t,e={})=>((e={components:{},created:[],icons:{},login:null,textareaButtons:{},use:[],thirdParty:{},writerMarks:{},writerNodes:{},...e}).use=((t,e)=>{if(!1===Array.isArray(e))return[];for(const i of e)t.use(i);return e})(t,e.use),e.components=((t,e)=>{if(!1===yt(e))return;const i={};for(const[s,o]of Object.entries(e))try{i[s]=hu(t,s,o)}catch(n){window.console.warn(n.message)}return i})(t,e.components),e),ku=t=>{var e;const i=eu("menu",{entries:[],hover:!1,isOpen:!1}),n=null==(e=window.matchMedia)?void 0:e.call(window,"(max-width: 60rem)"),s={...i,blur(t){if(!1===n.matches)return!1;const e=document.querySelector(".k-panel-menu");!1===document.querySelector(".k-panel-menu-proxy").contains(t.target)&&!1===e.contains(t.target)&&this.close()},close(){this.isOpen=!1,!1===n.matches&&localStorage.setItem("kirby$menu",!0)},escape(){if(!1===n.matches)return!1;this.close()},open(){this.isOpen=!0,!1===n.matches&&localStorage.removeItem("kirby$menu")},resize(){if(n.matches)return this.close();null!==localStorage.getItem("kirby$menu")?this.isOpen=!1:this.isOpen=!0},set(t){return this.entries=t,this.resize(),this.state()},toggle(){this.isOpen?this.close():this.open()}};return t.events.on("keydown.esc",s.escape.bind(s)),t.events.on("click",s.blur.bind(s)),null==n||n.addEventListener("change",s.resize.bind(s)),s},bu=()=>{const t=eu("translation",{code:null,data:{},direction:"ltr",name:null});return{...t,set(e){return t.set.call(this,e),document.documentElement.lang=this.code,document.body.dir=this.direction,this.state()},translate(t,e,i=null){if("string"!=typeof t)return;const n=this.data[t]??i;return"string"!=typeof n?n:la(n,e)}}};const vu=t=>{const e=eu("upload",{accept:"*",attributes:{},files:[],max:null,multiple:!0,replacing:null,url:null});return{...e,...tu(),input:null,cancel(){this.emit("cancel"),this.completed.length>0&&(this.emit("complete",this.completed),t.view.reload()),this.reset()},get completed(){return this.files.filter((t=>t.completed)).map((t=>t.model))},done(){t.dialog.close(),this.completed.length>0&&(this.emit("done",this.completed),!1===t.drawer.isOpen&&(t.notification.success({context:"view"}),t.view.reload())),this.reset()},findDuplicate(t){return this.files.findLastIndex((e=>e.src.name===t.src.name&&e.src.type===t.src.type&&e.src.size===t.src.size&&e.src.lastModified===t.src.lastModified))},hasUniqueName(t){return this.files.filter((e=>e.name===t.name&&e.extension===t.extension)).length<2},file(t){const e=URL.createObjectURL(t);return{completed:!1,error:null,extension:Yr(t.name),filename:t.name,id:aa(),model:null,name:Ur(t.name),niceSize:Hr(t.size),progress:0,size:t.size,src:t,type:t.type,url:e}},open(e,i){e instanceof FileList?(this.set(i),this.select(e)):this.set(e);const n={component:"k-upload-dialog",on:{cancel:()=>this.cancel(),submit:async()=>{t.dialog.isLoading=!0,await this.submit(),t.dialog.isLoading=!1}}};this.replacing&&(n.component="k-upload-replace-dialog",n.props={original:this.replacing}),t.dialog.open(n)},pick(t){this.set(t),this.input=document.createElement("input"),this.input.type="file",this.input.classList.add("sr-only"),this.input.value=null,this.input.accept=this.accept,this.input.multiple=this.multiple,this.input.click(),this.input.addEventListener("change",(e=>{!0===(null==t?void 0:t.immediate)?(this.set(t),this.select(e.target.files),this.submit()):this.open(e.target.files,t),this.input.remove()}))},remove(t){this.files=this.files.filter((e=>e.id!==t))},replace(e,i){this.pick({...i,url:t.urls.api+"/"+e.link,accept:"."+e.extension+","+e.mime,multiple:!1,replacing:e})},reset(){e.reset.call(this),this.files.splice(0)},select(t,e){if(this.set(e),t instanceof Event&&(t=t.target.files),t instanceof FileList==!1)throw new Error("Please provide a FileList");t=(t=[...t]).map((t=>this.file(t))),this.files=[...this.files,...t],this.files=this.files.filter(((t,e)=>this.findDuplicate(t)===e)),null!==this.max&&(this.files=this.files.slice(-1*this.max)),this.emit("select",this.files)},set(t){if(t)return e.set.call(this,t),this.on={},this.addEventListeners(t.on??{}),1===this.max&&(this.multiple=!1),!1===this.multiple&&(this.max=1),this.state()},async submit(){var e;if(!this.url)throw new Error("The upload URL is missing");const i=[];for(const n of this.files)!0!==n.completed&&(!1!==this.hasUniqueName(n)?(n.error=null,n.progress=0,i.push((async()=>await this.upload(n))),void 0!==(null==(e=this.attributes)?void 0:e.sort)&&this.attributes.sort++):n.error=t.t("error.file.name.unique"));if(await async function(t,e=20){let i=0,n=0;return new Promise((s=>{const o=e=>n=>{t[e]=n,i--,l()},l=()=>{if(i{e.progress=n}});e.completed=!0,e.model=i.data}catch(i){t.error(i,!1),e.error=i.message,e.progress=0}}}},yu=t=>{const e=iu(t,"view",{component:null,isLoading:!1,on:{},path:null,props:{},query:{},referrer:null,timestamp:null,breadcrumb:[],breadcrumbLabel:null,icon:null,id:null,link:null,search:"pages",title:null});return{...e,set(i){e.set.call(this,i),t.title=this.title;const n=this.url().toString();window.location.toString()!==n&&(window.history.pushState(null,null,n),window.scrollTo(0,0))},async submit(){throw new Error("Not yet implemented")}}},$u={config:{},languages:[],license:!1,multilang:!1,permissions:{},searches:{},urls:{}},wu=["dialog","drawer"],xu=["dropdown","language","menu","notification","system","translation","user"],_u={create(t={}){return this.isLoading=!1,this.isOffline=!1,this.activation=Ya(),this.drag=ou(),this.events=uu(this),this.upload=vu(this),this.language=pu(),this.menu=ku(this),this.notification=du(this),this.system=eu("system",{ascii:{},csrf:null,isLocal:null,locales:{},slugs:[],title:null}),this.translation=bu(),this.user=eu("user",{email:null,id:null,language:null,role:null,username:null}),this.dropdown=au(this),this.view=yu(this),this.drawer=ru(this),this.dialog=su(this),this.redirect=Ja,this.reload=this.view.reload.bind(this.view),this.t=this.translation.translate.bind(this.translation),this.plugins=gu(window.Vue,t),this.set(window.fiber),this.api=Qa(this),Vue.reactive(this)},get context(){return this.dialog.isOpen?"dialog":this.drawer.isOpen?"drawer":"view"},get debug(){return!0===this.config.debug},deprecated(t){this.notification.deprecated(t)},get direction(){return this.translation.direction},error(t,e=!0){if(!0===this.debug&&console.error(t),!0===e)return this.notification.error(t)},async get(t,e={}){const{response:i}=await this.request(t,{method:"GET",...e});return(null==i?void 0:i.json)??{}},async open(t,e={}){try{if(!1===ga(t))this.set(t);else{this.isLoading=!0;const i=await this.get(t,e);this.set(i),this.isLoading=!1}return this.state()}catch(i){return this.error(i)}},overlays(){const t=[];return!0===this.drawer.isOpen&&t.push("drawer"),!0===this.dialog.isOpen&&t.push("dialog"),t},async post(t,e={},i={}){const{response:n}=await this.request(t,{method:"POST",body:e,...i});return n.json},async request(t,e={}){return Ga(t,{referrer:this.view.path,csrf:this.system.csrf,...e})},async search(t,e,i){if(!t&&!e)return this.menu.escape(),this.dialog.open({component:"k-search-dialog"});const{$search:n}=await this.get(`/search/${t}`,{query:{query:e,...i}});return n},set(t={}){t=Object.fromEntries(Object.entries(t).map((([t,e])=>[t.replace("$",""),e])));for(const e in $u){const i=t[e]??this[e]??$u[e];typeof i==typeof $u[e]&&(this[e]=i)}for(const e of xu)(yt(t[e])||Array.isArray(t[e]))&&this[e].set(t[e]);for(const e of wu)!0===yt(t[e])?this[e].open(t[e]):void 0!==t[e]&&this[e].close();!0===yt(t.dropdown)?this.dropdown.open(t.dropdown):void 0!==t.dropdown&&this.dropdown.close(),!0===yt(t.view)&&this.view.open(t.view)},state(){const t={};for(const e in $u)t[e]=this[e]??$u[e];for(const e of xu)t[e]=this[e].state();for(const e of wu)t[e]=this[e].state();return t.dropdown=this.dropdown.state(),t.view=this.view.state(),t},get title(){return document.title},set title(t){!1===ia(this.system.title)&&(t+=" | "+this.system.title),document.title=t},url:(t="",e={},i)=>ha(t,e,i)},Su=(t,e)=>{localStorage.setItem("kirby$content$"+t,JSON.stringify(e))},Cu={namespaced:!0,state:{current:null,models:{},status:{enabled:!0}},getters:{exists:t=>e=>Object.hasOwn(t.models,e),hasChanges:(t,e)=>t=>$t(e.model(t).changes)>0,isCurrent:t=>e=>t.current===e,id:t=>e=>(e=e??t.current)+"?language="+window.panel.language.code,model:(t,e)=>i=>(i=i??t.current,!0===e.exists(i)?t.models[i]:{api:null,originals:{},values:{},changes:{}}),originals:(t,e)=>t=>vt(e.model(t).originals),values:(t,e)=>t=>({...e.originals(t),...e.changes(t)}),changes:(t,e)=>t=>vt(e.model(t).changes)},mutations:{CLEAR(t){for(const e in t.models)t.models[e].changes={};for(const e in localStorage)e.startsWith("kirby$content$")&&localStorage.removeItem(e)},CREATE(t,[e,i]){if(!i)return!1;let n=t.models[e]?t.models[e].changes:i.changes;Vue.set(t.models,e,{api:i.api,originals:i.originals,changes:n??{}})},CURRENT(t,e){t.current=e},MOVE(t,[e,i]){const n=vt(t.models[e]);Vue.del(t.models,e),Vue.set(t.models,i,n);const s=localStorage.getItem("kirby$content$"+e);localStorage.removeItem("kirby$content$"+e),localStorage.setItem("kirby$content$"+i,s)},REMOVE(t,e){Vue.del(t.models,e),localStorage.removeItem("kirby$content$"+e)},REVERT(t,e){t.models[e]&&(Vue.set(t.models[e],"changes",{}),localStorage.removeItem("kirby$content$"+e))},STATUS(t,e){Vue.set(t.status,"enabled",e)},UPDATE(t,[e,i,n]){if(!t.models[e])return!1;void 0===n&&(n=null),n=vt(n);const s=JSON.stringify(n);JSON.stringify(t.models[e].originals[i]??null)==s?Vue.del(t.models[e].changes,i):Vue.set(t.models[e].changes,i,n),Su(e,{api:t.models[e].api,originals:t.models[e].originals,changes:t.models[e].changes})}},actions:{init(t){for(const i in localStorage)if(i.startsWith("kirby$content$")){const e=i.split("kirby$content$")[1],n=localStorage.getItem("kirby$content$"+e);t.commit("CREATE",[e,JSON.parse(n)])}else if(i.startsWith("kirby$form$")){const n=i.split("kirby$form$")[1],s=localStorage.getItem("kirby$form$"+n);let o=null;try{o=JSON.parse(s)}catch(e){}if(!o||!o.api)return localStorage.removeItem("kirby$form$"+n),!1;const l={api:o.api,originals:o.originals,changes:o.values};t.commit("CREATE",[n,l]),Su(n,l),localStorage.removeItem("kirby$form$"+n)}},clear(t){t.commit("CLEAR")},create(t,e){const i=vt(e.content);if(Array.isArray(e.ignore))for(const s of e.ignore)delete i[s];e.id=t.getters.id(e.id);const n={api:e.api,originals:i,changes:{}};t.commit("CREATE",[e.id,n]),t.dispatch("current",e.id)},current(t,e){t.commit("CURRENT",e)},disable(t){t.commit("STATUS",!1)},enable(t){t.commit("STATUS",!0)},move(t,[e,i]){e=t.getters.id(e),i=t.getters.id(i),t.commit("MOVE",[e,i])},remove(t,e){t.commit("REMOVE",e),t.getters.isCurrent(e)&&t.commit("CURRENT",null)},revert(t,e){e=e??t.state.current,t.commit("REVERT",e)},async save(t,e){if(e=e??t.state.current,t.getters.isCurrent(e)&&!1===t.state.status.enabled)return!1;t.dispatch("disable");const i=t.getters.model(e),n={...i.originals,...i.changes};try{await window.panel.api.patch(i.api,n),t.commit("CREATE",[e,{...i,originals:n}]),t.dispatch("revert",e)}finally{t.dispatch("enable")}},update(t,[e,i,n]){if(n=n??t.state.current,null===e)for(const s in i)t.commit("UPDATE",[n,s,i[s]]);else t.commit("UPDATE",[n,e,i])}}},Ou={namespaced:!0,actions:{close(t,e){window.panel.deprecated("`$store.drawer` will be removed in a future version. Use `$panel.drawer` instead."),window.panel.drawer.close(e)},goto(t,e){window.panel.deprecated("`$store.drawer` will be removed in a future version. Use `$panel.drawer` instead."),window.panel.drawer.goto(e)},open(t,e){window.panel.deprecated("`$store.drawer` will be removed in a future version. Use `$panel.drawer` instead."),window.panel.drawer.goto(e)}}},Au={namespaced:!0,actions:{close(){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.close()},deprecated(t,e){window.panel.deprecated("`$store.notification.deprecated` will be removed in a future version. Use `$panel.deprecated` instead."),window.panel.notification.deprecated(e)},error(t,e){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.error(e)},open(t,e){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.open(e)},success(t,e){window.panel.deprecated("`$store.notification` will be removed in a future version. Use `$panel.notification` instead."),window.panel.notification.success(e)}}};Vue.use(N);const Mu=new N.Store({strict:!1,actions:{dialog(t,e){window.panel.deprecated("`$store.dialog` will be removed in a future version. Use `$panel.dialog.open()` instead."),window.panel.dialog.open(e)},drag(t,e){window.panel.deprecated("`$store.drag` will be removed in a future version. Use `$panel.drag.start(type, data)` instead."),window.panel.drag.start(...e)},fatal(t,e){window.panel.deprecated("`$store.fatal` will be removed in a future version. Use `$panel.notification.fatal()` instead."),window.panel.notification.fatal(e)},isLoading(t,e){window.panel.deprecated("`$store.isLoading` will be removed in a future version. Use `$panel.isLoading` instead."),window.panel.isLoading=e},navigate(){window.panel.deprecated("`$store.navigate` will be removed in a future version."),window.panel.dialog.close(),window.panel.drawer.close()}},modules:{content:Cu,drawers:Ou,notification:Au}});Vue.config.productionTip=!1,Vue.config.devtools=!0,Vue.use(ya),Vue.use(Ra),Vue.use(z),Vue.use(Tr),window.panel=Vue.prototype.$panel=_u.create(window.panel.plugins),Vue.prototype.$dialog=window.panel.dialog.open.bind(window.panel.dialog),Vue.prototype.$drawer=window.panel.drawer.open.bind(window.panel.drawer),Vue.prototype.$dropdown=window.panel.dropdown.openAsync.bind(window.panel.dropdown),Vue.prototype.$go=window.panel.view.open.bind(window.panel.view),Vue.prototype.$reload=window.panel.reload.bind(window.panel),window.panel.app=new Vue({store:Mu,render:()=>Vue.h(Y)}),Vue.use($a),Vue.use(Er),Vue.use(wa),!1===CSS.supports("container","foo / inline-size")&&R((()=>import("./container-query-polyfill.modern.min.js")),[],import.meta.url),window.panel.app.$mount("#app");export{R as _,ut as n}; diff --git a/panel/dist/js/vendor.min.js b/panel/dist/js/vendor.min.js index 2b40334fa1..5a65d807b9 100644 --- a/panel/dist/js/vendor.min.js +++ b/panel/dist/js/vendor.min.js @@ -1,4 +1,4 @@ -var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function e(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var n={},r={},i={},o={},s={};function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function a(t){for(var e=1;e=+n}))};var O={};Object.defineProperty(O,"__esModule",{value:!0}),O.default=void 0;var C=(0,i.regex)("email",/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i);O.default=C;var D={};Object.defineProperty(D,"__esModule",{value:!0}),D.default=void 0;var N=i,T=(0,N.withParams)({type:"ipAddress"},(function(t){if(!(0,N.req)(t))return!0;if("string"!=typeof t)return!1;var e=t.split(".");return 4===e.length&&e.every(A)}));D.default=T;var A=function(t){if(t.length>3||0===t.length)return!1;if("0"===t[0]&&"0"!==t)return!1;if(!t.match(/^\d+$/))return!1;var e=0|+t;return e>=0&&e<=255},$={};Object.defineProperty($,"__esModule",{value:!0}),$.default=void 0;var E=i;$.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:":";return(0,E.withParams)({type:"macAddress"},(function(e){if(!(0,E.req)(e))return!0;if("string"!=typeof e)return!1;var n="string"==typeof t&&""!==t?e.split(t):12===e.length||16===e.length?e.match(/.{2}/g):null;return null!==n&&(6===n.length||8===n.length)&&n.every(P)}))};var P=function(t){return t.toLowerCase().match(/^[0-9a-f]{2}$/)},I={};Object.defineProperty(I,"__esModule",{value:!0}),I.default=void 0;var R=i;I.default=function(t){return(0,R.withParams)({type:"maxLength",max:t},(function(e){return!(0,R.req)(e)||(0,R.len)(e)<=t}))};var _={};Object.defineProperty(_,"__esModule",{value:!0}),_.default=void 0;var z=i;_.default=function(t){return(0,z.withParams)({type:"minLength",min:t},(function(e){return!(0,z.req)(e)||(0,z.len)(e)>=t}))};var j={};Object.defineProperty(j,"__esModule",{value:!0}),j.default=void 0;var B=i,V=(0,B.withParams)({type:"required"},(function(t){return(0,B.req)("string"==typeof t?t.trim():t)}));j.default=V;var F={};Object.defineProperty(F,"__esModule",{value:!0}),F.default=void 0;var L=i;F.default=function(t){return(0,L.withParams)({type:"requiredIf",prop:t},(function(e,n){return!(0,L.ref)(t,this,n)||(0,L.req)(e)}))};var q={};Object.defineProperty(q,"__esModule",{value:!0}),q.default=void 0;var W=i;q.default=function(t){return(0,W.withParams)({type:"requiredUnless",prop:t},(function(e,n){return!!(0,W.ref)(t,this,n)||(0,W.req)(e)}))};var J={};Object.defineProperty(J,"__esModule",{value:!0}),J.default=void 0;var K=i;J.default=function(t){return(0,K.withParams)({type:"sameAs",eq:t},(function(e,n){return e===(0,K.ref)(t,this,n)}))};var H={};Object.defineProperty(H,"__esModule",{value:!0}),H.default=void 0;var Y=(0,i.regex)("url",/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[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]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i);H.default=Y;var U={};Object.defineProperty(U,"__esModule",{value:!0}),U.default=void 0;var G=i;U.default=function(){for(var t=arguments.length,e=new Array(t),n=0;n0&&e.reduce((function(e,n){return e||n.apply(t,r)}),!1)}))};var Z={};Object.defineProperty(Z,"__esModule",{value:!0}),Z.default=void 0;var X=i;Z.default=function(){for(var t=arguments.length,e=new Array(t),n=0;n0&&e.reduce((function(e,n){return e&&n.apply(t,r)}),!0)}))};var Q={};Object.defineProperty(Q,"__esModule",{value:!0}),Q.default=void 0;var tt=i;Q.default=function(t){return(0,tt.withParams)({type:"not"},(function(e,n){return!(0,tt.req)(e)||!t.call(this,e,n)}))};var et={};Object.defineProperty(et,"__esModule",{value:!0}),et.default=void 0;var nt=i;et.default=function(t){return(0,nt.withParams)({type:"minValue",min:t},(function(e){return!(0,nt.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e>=+t}))};var rt={};Object.defineProperty(rt,"__esModule",{value:!0}),rt.default=void 0;var it=i;rt.default=function(t){return(0,it.withParams)({type:"maxValue",max:t},(function(e){return!(0,it.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e<=+t}))};var ot={};Object.defineProperty(ot,"__esModule",{value:!0}),ot.default=void 0;var st=(0,i.regex)("integer",/(^[0-9]*$)|(^-[0-9]+$)/);ot.default=st;var lt={};Object.defineProperty(lt,"__esModule",{value:!0}),lt.default=void 0;var at=(0,i.regex)("decimal",/^[-]?\d*(\.\d+)?$/);function ct(t){this.content=t}function ht(t,e,n){for(let r=0;;r++){if(r==t.childCount||r==e.childCount)return t.childCount==e.childCount?null:n;let i=t.child(r),o=e.child(r);if(i!=o){if(!i.sameMarkup(o))return n;if(i.isText&&i.text!=o.text){for(let t=0;i.text[t]==o.text[t];t++)n++;return n}if(i.content.size||o.content.size){let t=ht(i.content,o.content,n+1);if(null!=t)return t}n+=i.nodeSize}else n+=i.nodeSize}}function ut(t,e,n,r){for(let i=t.childCount,o=e.childCount;;){if(0==i||0==o)return i==o?null:{a:n,b:r};let s=t.child(--i),l=e.child(--o),a=s.nodeSize;if(s!=l){if(!s.sameMarkup(l))return{a:n,b:r};if(s.isText&&s.text!=l.text){let t=0,e=Math.min(s.text.length,l.text.length);for(;t>1}},ct.from=function(t){if(t instanceof ct)return t;var e=[];if(t)for(var n in t)e.push(n,t[n]);return new ct(e)};class dt{constructor(t,e){if(this.content=t,this.size=e||0,null==e)for(let n=0;nt&&!1!==n(l,r+s,i||null,o)&&l.content.size){let i=s+1;l.nodesBetween(Math.max(0,t-i),Math.min(l.content.size,e-i),n,r+i)}s=a}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,n,r){let i="",o=!0;return this.nodesBetween(t,e,((s,l)=>{s.isText?(i+=s.text.slice(Math.max(t,l)-l,e-l),o=!n):s.isLeaf?(r?i+="function"==typeof r?r(s):r:s.type.spec.leafText&&(i+=s.type.spec.leafText(s)),o=!n):!o&&s.isBlock&&(i+=n,o=!0)}),0),i}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,n=t.firstChild,r=this.content.slice(),i=0;for(e.isText&&e.sameMarkup(n)&&(r[r.length-1]=e.withText(e.text+n.text),i=1);it)for(let i=0,o=0;ot&&((oe)&&(s=s.isText?s.cut(Math.max(0,t-o),Math.min(s.text.length,e-o)):s.cut(Math.max(0,t-o-1),Math.min(s.content.size,e-o-1))),n.push(s),r+=s.nodeSize),o=l}return new dt(n,r)}cutByIndex(t,e){return t==e?dt.empty:0==t&&e==this.content.length?this:new dt(this.content.slice(t,e))}replaceChild(t,e){let n=this.content[t];if(n==e)return this;let r=this.content.slice(),i=this.size+e.nodeSize-n.nodeSize;return r[t]=e,new dt(r,i)}addToStart(t){return new dt([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new dt(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return!1;for(let e=0;ethis.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let n=0,r=0;;n++){let i=r+this.child(n).nodeSize;if(i>=t)return i==t||e>0?pt(n+1,i):pt(n,r);r=i}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((t=>t.toJSON())):null}static fromJSON(t,e){if(!e)return dt.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new dt(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return dt.empty;let e,n=0;for(let r=0;rthis.type.rank&&(e||(e=t.slice(0,r)),e.push(this),n=!0),e&&e.push(i)}}return e||(e=t.slice()),n||e.push(this),e}removeFromSet(t){for(let e=0;et.type.rank-e.type.rank)),e}}gt.none=[];class yt extends Error{}class vt{constructor(t,e,n){this.content=t,this.openStart=e,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let n=bt(this.content,t+this.openStart,e);return n&&new vt(n,this.openStart,this.openEnd)}removeBetween(t,e){return new vt(wt(this.content,t+this.openStart,e+this.openStart),this.openStart,this.openEnd)}eq(t){return this.content.eq(t.content)&&this.openStart==t.openStart&&this.openEnd==t.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let t={content:this.content.toJSON()};return this.openStart>0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t}static fromJSON(t,e){if(!e)return vt.empty;let n=e.openStart||0,r=e.openEnd||0;if("number"!=typeof n||"number"!=typeof r)throw new RangeError("Invalid input for Slice.fromJSON");return new vt(dt.fromJSON(t,e.content),n,r)}static maxOpen(t,e=!0){let n=0,r=0;for(let i=t.firstChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.firstChild)n++;for(let i=t.lastChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.lastChild)r++;return new vt(t,n,r)}}function wt(t,e,n){let{index:r,offset:i}=t.findIndex(e),o=t.maybeChild(r),{index:s,offset:l}=t.findIndex(n);if(i==e||o.isText){if(l!=n&&!t.child(s).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(n))}if(r!=s)throw new RangeError("Removing non-flat range");return t.replaceChild(r,o.copy(wt(o.content,e-i-1,n-i-1)))}function bt(t,e,n,r){let{index:i,offset:o}=t.findIndex(e),s=t.maybeChild(i);if(o==e||s.isText)return r&&!r.canReplace(i,i,n)?null:t.cut(0,e).append(n).append(t.cut(e));let l=bt(s.content,e-o-1,n);return l&&t.replaceChild(i,s.copy(l))}function xt(t,e,n){if(n.openStart>t.depth)throw new yt("Inserted content deeper than insertion position");if(t.depth-n.openStart!=e.depth-n.openEnd)throw new yt("Inconsistent open depths");return St(t,e,n,0)}function St(t,e,n,r){let i=t.index(r),o=t.node(r);if(i==e.index(r)&&r=0;i--)r=e.node(i).copy(dt.from(r));return{start:r.resolveNoCache(t.openStart+n),end:r.resolveNoCache(r.content.size-t.openEnd-n)}}(n,t);return Dt(o,Nt(t,i,s,e,r))}{let r=t.parent,i=r.content;return Dt(r,i.cut(0,t.parentOffset).append(n.content).append(i.cut(e.parentOffset)))}}return Dt(o,Tt(t,e,r))}function kt(t,e){if(!e.type.compatibleContent(t.type))throw new yt("Cannot join "+e.type.name+" onto "+t.type.name)}function Mt(t,e,n){let r=t.node(n);return kt(r,e.node(n)),r}function Ot(t,e){let n=e.length-1;n>=0&&t.isText&&t.sameMarkup(e[n])?e[n]=t.withText(e[n].text+t.text):e.push(t)}function Ct(t,e,n,r){let i=(e||t).node(n),o=0,s=e?e.index(n):i.childCount;t&&(o=t.index(n),t.depth>n?o++:t.textOffset&&(Ot(t.nodeAfter,r),o++));for(let l=o;li&&Mt(t,e,i+1),s=r.depth>i&&Mt(n,r,i+1),l=[];return Ct(null,t,i,l),o&&s&&e.index(i)==n.index(i)?(kt(o,s),Ot(Dt(o,Nt(t,e,n,r,i+1)),l)):(o&&Ot(Dt(o,Tt(t,e,i+1)),l),Ct(e,n,i,l),s&&Ot(Dt(s,Tt(n,r,i+1)),l)),Ct(r,null,i,l),new dt(l)}function Tt(t,e,n){let r=[];if(Ct(null,t,n,r),t.depth>n){Ot(Dt(Mt(t,e,n+1),Tt(t,e,n+1)),r)}return Ct(e,null,n,r),new dt(r)}vt.empty=new vt(dt.empty,0,0);class At{constructor(t,e,n){this.pos=t,this.path=e,this.parentOffset=n,this.depth=e.length/3-1}resolveDepth(t){return null==t?this.depth:t<0?this.depth+t:t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[3*this.resolveDepth(t)]}index(t){return this.path[3*this.resolveDepth(t)+1]}indexAfter(t){return t=this.resolveDepth(t),this.index(t)+(t!=this.depth||this.textOffset?1:0)}start(t){return 0==(t=this.resolveDepth(t))?0:this.path[3*t-1]+1}end(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size}before(t){if(!(t=this.resolveDepth(t)))throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[3*t-1]}after(t){if(!(t=this.resolveDepth(t)))throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[3*t-1]+this.path[3*t].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,e=this.index(this.depth);if(e==t.childCount)return null;let n=this.pos-this.path[this.path.length-1],r=t.child(e);return n?t.child(e).cut(n):r}get nodeBefore(){let t=this.index(this.depth),e=this.pos-this.path[this.path.length-1];return e?this.parent.child(t).cut(0,e):0==t?null:this.parent.child(t-1)}posAtIndex(t,e){e=this.resolveDepth(e);let n=this.path[3*e],r=0==e?0:this.path[3*e-1]+1;for(let i=0;i0;e--)if(this.start(e)<=t&&this.end(e)>=t)return e;return 0}blockRange(t=this,e){if(t.pos=0;n--)if(t.pos<=this.end(n)&&(!e||e(this.node(n))))return new It(this,t,n);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos=0&&e<=t.content.size))throw new RangeError("Position "+e+" out of range");let n=[],r=0,i=e;for(let o=t;;){let{index:t,offset:e}=o.content.findIndex(i),s=i-e;if(n.push(o,t,r+e),!s)break;if(o=o.child(t),o.isText)break;i=s-1,r+=e+1}return new At(e,n,i)}static resolveCached(t,e){for(let r=0;r<$t.length;r++){let n=$t[r];if(n.pos==e&&n.doc==t)return n}let n=$t[Et]=At.resolve(t,e);return Et=(Et+1)%Pt,n}}let $t=[],Et=0,Pt=12;class It{constructor(t,e,n){this.$from=t,this.$to=e,this.depth=n}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const Rt=Object.create(null);class _t{constructor(t,e,n,r=gt.none){this.type=t,this.attrs=e,this.marks=r,this.content=n||dt.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(t){return this.content.child(t)}maybeChild(t){return this.content.maybeChild(t)}forEach(t){this.content.forEach(t)}nodesBetween(t,e,n,r=0){this.content.nodesBetween(t,e,n,r,this)}descendants(t){this.nodesBetween(0,this.content.size,t)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(t,e,n,r){return this.content.textBetween(t,e,n,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(t){return this==t||this.sameMarkup(t)&&this.content.eq(t.content)}sameMarkup(t){return this.hasMarkup(t.type,t.attrs,t.marks)}hasMarkup(t,e,n){return this.type==t&&mt(this.attrs,e||t.defaultAttrs||Rt)&>.sameSet(this.marks,n||gt.none)}copy(t=null){return t==this.content?this:new _t(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new _t(this.type,this.attrs,this.content,t)}cut(t,e=this.content.size){return 0==t&&e==this.content.size?this:this.copy(this.content.cut(t,e))}slice(t,e=this.content.size,n=!1){if(t==e)return vt.empty;let r=this.resolve(t),i=this.resolve(e),o=n?0:r.sharedDepth(e),s=r.start(o),l=r.node(o).content.cut(r.pos-s,i.pos-s);return new vt(l,r.depth-o,i.depth-o)}replace(t,e,n){return xt(this.resolve(t),this.resolve(e),n)}nodeAt(t){for(let e=this;;){let{index:n,offset:r}=e.content.findIndex(t);if(e=e.maybeChild(n),!e)return null;if(r==t||e.isText)return e;t-=r+1}}childAfter(t){let{index:e,offset:n}=this.content.findIndex(t);return{node:this.content.maybeChild(e),index:e,offset:n}}childBefore(t){if(0==t)return{node:null,index:0,offset:0};let{index:e,offset:n}=this.content.findIndex(t);if(nt&&this.nodesBetween(t,e,(t=>(n.isInSet(t.marks)&&(r=!0),!r))),r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),jt(this.marks,t)}contentMatchAt(t){let e=this.type.contentMatch.matchFragment(this.content,0,t);if(!e)throw new Error("Called contentMatchAt on a node with invalid content");return e}canReplace(t,e,n=dt.empty,r=0,i=n.childCount){let o=this.contentMatchAt(t).matchFragment(n,r,i),s=o&&o.matchFragment(this.content,e);if(!s||!s.validEnd)return!1;for(let l=r;lt.type.name))}`);this.content.forEach((t=>t.check()))}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}return this.content.size&&(t.content=this.content.toJSON()),this.marks.length&&(t.marks=this.marks.map((t=>t.toJSON()))),t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Node.fromJSON");let n=null;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");n=e.marks.map(t.markFromJSON)}if("text"==e.type){if("string"!=typeof e.text)throw new RangeError("Invalid text node in JSON");return t.text(e.text,n)}let r=dt.fromJSON(t,e.content);return t.nodeType(e.type).create(e.attrs,r,n)}}_t.prototype.text=void 0;class zt extends _t{constructor(t,e,n,r){if(super(t,e,null,r),!n)throw new RangeError("Empty text nodes are not allowed");this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):jt(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(t,e){return this.text.slice(t,e)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new zt(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new zt(this.type,this.attrs,t,this.marks)}cut(t=0,e=this.text.length){return 0==t&&e==this.text.length?this:this.withText(this.text.slice(t,e))}eq(t){return this.sameMarkup(t)&&this.text==t.text}toJSON(){let t=super.toJSON();return t.text=this.text,t}}function jt(t,e){for(let n=t.length-1;n>=0;n--)e=t[n].type.name+"("+e+")";return e}class Bt{constructor(t){this.validEnd=t,this.next=[],this.wrapCache=[]}static parse(t,e){let n=new Vt(t,e);if(null==n.next)return Bt.empty;let r=Ft(n);n.next&&n.err("Unexpected trailing text");let i=function(t){let e=Object.create(null);return n(Ht(t,0));function n(r){let i=[];r.forEach((e=>{t[e].forEach((({term:e,to:n})=>{if(!e)return;let r;for(let t=0;t{r||i.push([e,r=[]]),-1==r.indexOf(t)&&r.push(t)}))}))}));let o=e[r.join(",")]=new Bt(r.indexOf(t.length-1)>-1);for(let t=0;tt.to=e))}function o(t,e){if("choice"==t.type)return t.exprs.reduce(((t,n)=>t.concat(o(n,e))),[]);if("seq"!=t.type){if("star"==t.type){let s=n();return r(e,s),i(o(t.expr,s),s),[r(s)]}if("plus"==t.type){let s=n();return i(o(t.expr,e),s),i(o(t.expr,s),s),[r(s)]}if("opt"==t.type)return[r(e)].concat(o(t.expr,e));if("range"==t.type){let s=e;for(let e=0;et.createAndFill())));for(let t=0;t=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];return function e(n){t.push(n);for(let r=0;r{let r=n+(e.validEnd?"*":" ")+" ";for(let i=0;i"+t.indexOf(e.next[i].next);return r})).join("\n")}}Bt.empty=new Bt(!0);class Vt{constructor(t,e){this.string=t,this.nodeTypes=e,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),""==this.tokens[this.tokens.length-1]&&this.tokens.pop(),""==this.tokens[0]&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||!0)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function Ft(t){let e=[];do{e.push(Lt(t))}while(t.eat("|"));return 1==e.length?e[0]:{type:"choice",exprs:e}}function Lt(t){let e=[];do{e.push(qt(t))}while(t.next&&")"!=t.next&&"|"!=t.next);return 1==e.length?e[0]:{type:"seq",exprs:e}}function qt(t){let e=function(t){if(t.eat("(")){let e=Ft(t);return t.eat(")")||t.err("Missing closing paren"),e}if(!/\W/.test(t.next)){let e=function(t,e){let n=t.nodeTypes,r=n[e];if(r)return[r];let i=[];for(let o in n){let t=n[o];t.groups.indexOf(e)>-1&&i.push(t)}0==i.length&&t.err("No node type or group '"+e+"' found");return i}(t,t.next).map((e=>(null==t.inline?t.inline=e.isInline:t.inline!=e.isInline&&t.err("Mixing inline and block content"),{type:"name",value:e})));return t.pos++,1==e.length?e[0]:{type:"choice",exprs:e}}t.err("Unexpected token '"+t.next+"'")}(t);for(;;)if(t.eat("+"))e={type:"plus",expr:e};else if(t.eat("*"))e={type:"star",expr:e};else if(t.eat("?"))e={type:"opt",expr:e};else{if(!t.eat("{"))break;e=Jt(t,e)}return e}function Wt(t){/\D/.test(t.next)&&t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);return t.pos++,e}function Jt(t,e){let n=Wt(t),r=n;return t.eat(",")&&(r="}"!=t.next?Wt(t):-1),t.eat("}")||t.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:e}}function Kt(t,e){return e-t}function Ht(t,e){let n=[];return function e(r){let i=t[r];if(1==i.length&&!i[0].term)return e(i[0].to);n.push(r);for(let t=0;t-1}allowsMarks(t){if(null==this.markSet)return!0;for(let e=0;er[e]=new t(e,n,i)));let i=n.spec.topNode||"doc";if(!r[i])throw new RangeError("Schema is missing its top node type ('"+i+"')");if(!r.text)throw new RangeError("Every schema needs a 'text' type");for(let t in r.text.attrs)throw new RangeError("The text node type should not have attributes");return r}};class Xt{constructor(t){this.hasDefault=Object.prototype.hasOwnProperty.call(t,"default"),this.default=t.default}get isRequired(){return!this.hasDefault}}class Qt{constructor(t,e,n,r){this.name=t,this.rank=e,this.schema=n,this.spec=r,this.attrs=Gt(r.attrs),this.excluded=null;let i=Yt(this.attrs);this.instance=i?new gt(this,i):null}create(t=null){return!t&&this.instance?this.instance:new gt(this,Ut(this.attrs,t))}static compile(t,e){let n=Object.create(null),r=0;return t.forEach(((t,i)=>n[t]=new Qt(t,r++,e,i))),n}removeFromSet(t){for(var e=0;e-1}}class te{constructor(t){this.cached=Object.create(null);let e=this.spec={};for(let r in t)e[r]=t[r];e.nodes=ct.from(t.nodes),e.marks=ct.from(t.marks||{}),this.nodes=Zt.compile(this.spec.nodes,this),this.marks=Qt.compile(this.spec.marks,this);let n=Object.create(null);for(let r in this.nodes){if(r in this.marks)throw new RangeError(r+" can not be both a node and a mark");let t=this.nodes[r],e=t.spec.content||"",i=t.spec.marks;t.contentMatch=n[e]||(n[e]=Bt.parse(e,this.nodes)),t.inlineContent=t.contentMatch.inlineContent,t.markSet="_"==i?null:i?ee(this,i.split(" ")):""!=i&&t.inlineContent?null:[]}for(let r in this.marks){let t=this.marks[r],e=t.spec.excludes;t.excluded=null==e?[t]:""==e?[]:ee(this,e.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(t,e=null,n,r){if("string"==typeof t)t=this.nodeType(t);else{if(!(t instanceof Zt))throw new RangeError("Invalid node type: "+t);if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")")}return t.createChecked(e,n,r)}text(t,e){let n=this.nodes.text;return new zt(n,n.defaultAttrs,t,gt.setFrom(e))}mark(t,e){return"string"==typeof t&&(t=this.marks[t]),t.create(e)}nodeFromJSON(t){return _t.fromJSON(this,t)}markFromJSON(t){return gt.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function ee(t,e){let n=[];for(let r=0;r-1)&&n.push(s=r)}if(!s)throw new SyntaxError("Unknown mark type: '"+e[r]+"'")}return n}class ne{constructor(t,e){this.schema=t,this.rules=e,this.tags=[],this.styles=[],e.forEach((t=>{t.tag?this.tags.push(t):t.style&&this.styles.push(t)})),this.normalizeLists=!this.tags.some((e=>{if(!/^(ul|ol)\b/.test(e.tag)||!e.node)return!1;let n=t.nodes[e.node];return n.contentMatch.matchType(n)}))}parse(t,e={}){let n=new ae(this,e,!1);return n.addAll(t,e.from,e.to),n.finish()}parseSlice(t,e={}){let n=new ae(this,e,!0);return n.addAll(t,e.from,e.to),vt.maxOpen(n.finish())}matchTag(t,e,n){for(let r=n?this.tags.indexOf(n)+1:0;rt.length&&(61!=o.charCodeAt(t.length)||o.slice(t.length+1)!=e))){if(r.getAttrs){let t=r.getAttrs(e);if(!1===t)continue;r.attrs=t||void 0}return r}}}static schemaRules(t){let e=[];function n(t){let n=null==t.priority?50:t.priority,r=0;for(;r{n(t=he(t)),t.mark||t.ignore||t.clearMark||(t.mark=r)}))}for(let r in t.nodes){let e=t.nodes[r].spec.parseDOM;e&&e.forEach((t=>{n(t=he(t)),t.node||t.ignore||t.mark||(t.node=r)}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new ne(t,ne.schemaRules(t)))}}const re={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},ie={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},oe={ol:!0,ul:!0};function se(t,e,n){return null!=e?(e?1:0)|("full"===e?2:0):t&&"pre"==t.whitespace?3:-5&n}class le{constructor(t,e,n,r,i,o,s){this.type=t,this.attrs=e,this.marks=n,this.pendingMarks=r,this.solid=i,this.options=s,this.content=[],this.activeMarks=gt.none,this.stashMarks=[],this.match=o||(4&s?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(dt.from(t));if(!e){let e,n=this.type.contentMatch;return(e=n.findWrapping(t.type))?(this.match=n,e):null}this.match=this.type.contentMatch.matchFragment(e)}return this.match.findWrapping(t.type)}finish(t){if(!(1&this.options)){let t,e=this.content[this.content.length-1];if(e&&e.isText&&(t=/[ \t\r\n\u000c]+$/.exec(e.text))){let n=e;e.text.length==t[0].length?this.content.pop():this.content[this.content.length-1]=n.withText(n.text.slice(0,n.text.length-t[0].length))}}let e=dt.from(this.content);return!t&&this.match&&(e=e.append(this.match.fillBefore(dt.empty,!0))),this.type?this.type.create(this.attrs,e,this.marks):e}popFromStashMark(t){for(let e=this.stashMarks.length-1;e>=0;e--)if(t.eq(this.stashMarks[e]))return this.stashMarks.splice(e,1)[0]}applyPending(t){for(let e=0,n=this.pendingMarks;ethis.addAll(t))),e&&this.sync(n),this.needsBlock=o}else this.withStyleRules(t,(()=>{this.addElementByRule(t,i,!1===i.consuming?n:void 0)}))}leafFallback(t){"BR"==t.nodeName&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(t.ownerDocument.createTextNode("\n"))}ignoreFallback(t){"BR"!=t.nodeName||this.top.type&&this.top.type.inlineContent||this.findPlace(this.parser.schema.text("-"))}readStyles(t){let e=gt.none,n=gt.none;for(let r=0;r{o.clearMark(t)&&(n=t.addToSet(n))})):e=this.parser.schema.marks[o.mark].create(o.attrs).addToSet(e),!1!==o.consuming)break;i=o}return[e,n]}addElementByRule(t,e,n){let r,i,o;if(e.node)i=this.parser.schema.nodes[e.node],i.isLeaf?this.insertNode(i.create(e.attrs))||this.leafFallback(t):r=this.enter(i,e.attrs||null,e.preserveWhitespace);else{o=this.parser.schema.marks[e.mark].create(e.attrs),this.addPendingMark(o)}let s=this.top;if(i&&i.isLeaf)this.findInside(t);else if(n)this.addElement(t,n);else if(e.getContent)this.findInside(t),e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t)));else{let n=t;"string"==typeof e.contentElement?n=t.querySelector(e.contentElement):"function"==typeof e.contentElement?n=e.contentElement(t):e.contentElement&&(n=e.contentElement),this.findAround(t,n,!0),this.addAll(n)}r&&this.sync(s)&&this.open--,o&&this.removePendingMark(o,s)}addAll(t,e,n){let r=e||0;for(let i=e?t.childNodes[e]:t.firstChild,o=null==n?null:t.childNodes[n];i!=o;i=i.nextSibling,++r)this.findAtPoint(t,r),this.addDOM(i);this.findAtPoint(t,r)}findPlace(t){let e,n;for(let r=this.open;r>=0;r--){let i=this.nodes[r],o=i.findWrapping(t);if(o&&(!e||e.length>o.length)&&(e=o,n=i,!o.length))break;if(i.solid)break}if(!e)return!1;this.sync(n);for(let r=0;rthis.open){for(;e>this.open;e--)this.nodes[e-1].content.push(this.nodes[e].finish(t));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(this.isOpen||this.options.topOpen)}sync(t){for(let e=this.open;e>=0;e--)if(this.nodes[e]==t)return this.open=e,!0;return!1}get currentPos(){this.closeExtra();let t=0;for(let e=this.open;e>=0;e--){let n=this.nodes[e].content;for(let e=n.length-1;e>=0;e--)t+=n[e].nodeSize;e&&t++}return t}findAtPoint(t,e){if(this.find)for(let n=0;n-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let e=t.split("/"),n=this.options.context,r=!(this.isOpen||n&&n.parent.type!=this.nodes[0].type),i=-(n?n.depth+1:0)+(r?0:1),o=(t,s)=>{for(;t>=0;t--){let l=e[t];if(""==l){if(t==e.length-1||0==t)continue;for(;s>=i;s--)if(o(t-1,s))return!0;return!1}{let t=s>0||0==s&&r?this.nodes[s].type:n&&s>=i?n.node(s-i).type:null;if(!t||t.name!=l&&-1==t.groups.indexOf(l))return!1;s--}}return!0};return o(e.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let e=t.depth;e>=0;e--){let n=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let e in this.parser.schema.nodes){let t=this.parser.schema.nodes[e];if(t.isTextblock&&t.defaultAttrs)return t}}addPendingMark(t){let e=function(t,e){for(let n=0;n=0;n--){let r=this.nodes[n];if(r.pendingMarks.lastIndexOf(t)>-1)r.pendingMarks=t.removeFromSet(r.pendingMarks);else{r.activeMarks=t.removeFromSet(r.activeMarks);let e=r.popFromStashMark(t);e&&r.type&&r.type.allowsMarkType(e.type)&&(r.activeMarks=e.addToSet(r.activeMarks))}if(r==e)break}}}function ce(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function he(t){let e={};for(let n in t)e[n]=t[n];return e}function ue(t,e){let n=e.schema.nodes;for(let r in n){let i=n[r];if(!i.allowsMarkType(t))continue;let o=[],s=t=>{o.push(t);for(let n=0;n{if(i.length||t.marks.length){let n=0,o=0;for(;n=0;r--){let i=this.serializeMark(t.marks[r],t.isInline,e);i&&((i.contentDOM||i.dom).appendChild(n),n=i.dom)}return n}serializeMark(t,e,n={}){let r=this.marks[t.type.name];return r&&de.renderSpec(pe(n),r(t,e))}static renderSpec(t,e,n=null){if("string"==typeof e)return{dom:t.createTextNode(e)};if(null!=e.nodeType)return{dom:e};if(e.dom&&null!=e.dom.nodeType)return e;let r,i=e[0],o=i.indexOf(" ");o>0&&(n=i.slice(0,o),i=i.slice(o+1));let s=n?t.createElementNS(n,i):t.createElement(i),l=e[1],a=1;if(l&&"object"==typeof l&&null==l.nodeType&&!Array.isArray(l)){a=2;for(let t in l)if(null!=l[t]){let e=t.indexOf(" ");e>0?s.setAttributeNS(t.slice(0,e),t.slice(e+1),l[t]):s.setAttribute(t,l[t])}}for(let c=a;ca)throw new RangeError("Content hole must be the only child of its parent node");return{dom:s,contentDOM:s}}{let{dom:e,contentDOM:o}=de.renderSpec(t,i,n);if(s.appendChild(e),o){if(r)throw new RangeError("Multiple content holes");r=o}}}return{dom:s,contentDOM:r}}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new de(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=fe(t.nodes);return e.text||(e.text=t=>t.text),e}static marksFromSchema(t){return fe(t.marks)}}function fe(t){let e={};for(let n in t){let r=t[n].spec.toDOM;r&&(e[n]=r)}return e}function pe(t){return t.document||window.document}const me=Math.pow(2,16);function ge(t){return 65535&t}class ye{constructor(t,e,n){this.pos=t,this.delInfo=e,this.recover=n}get deleted(){return(8&this.delInfo)>0}get deletedBefore(){return(5&this.delInfo)>0}get deletedAfter(){return(6&this.delInfo)>0}get deletedAcross(){return(4&this.delInfo)>0}}class ve{constructor(t,e=!1){if(this.ranges=t,this.inverted=e,!t.length&&ve.empty)return ve.empty}recover(t){let e=0,n=ge(t);if(!this.inverted)for(let r=0;rt)break;let a=this.ranges[s+i],c=this.ranges[s+o],h=l+a;if(t<=h){let i=l+r+((a?t==l?-1:t==h?1:e:e)<0?0:c);if(n)return i;let o=t==(e<0?l:h)?null:s/3+(t-l)*me,u=t==l?2:t==h?1:4;return(e<0?t!=l:t!=h)&&(u|=8),new ye(i,u,o)}r+=c-a}return n?t+r:new ye(t+r,0,null)}touches(t,e){let n=0,r=ge(e),i=this.inverted?2:1,o=this.inverted?1:2;for(let s=0;st)break;let l=this.ranges[s+i];if(t<=e+l&&s==3*r)return!0;n+=this.ranges[s+o]-l}return!1}forEach(t){let e=this.inverted?2:1,n=this.inverted?1:2;for(let r=0,i=0;r=0;e--){let r=t.getMirror(e);this.appendMap(t.maps[e].invert(),null!=r&&r>e?n-r-1:void 0)}}invert(){let t=new we;return t.appendMappingInverted(this),t}map(t,e=1){if(this.mirror)return this._map(t,e,!0);for(let n=this.from;ni&&et.isAtom&&e.type.allowsMarkType(this.mark.type)?t.mark(this.mark.addToSet(t.marks)):t),r),e.openStart,e.openEnd);return Se.fromReplace(t,this.from,this.to,i)}invert(){return new Oe(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),n=t.mapResult(this.to,-1);return e.deleted&&n.deleted||e.pos>=n.pos?null:new Me(e.pos,n.pos,this.mark)}merge(t){return t instanceof Me&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new Me(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,e){if("number"!=typeof e.from||"number"!=typeof e.to)throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new Me(e.from,e.to,t.markFromJSON(e.mark))}}xe.jsonID("addMark",Me);class Oe extends xe{constructor(t,e,n){super(),this.from=t,this.to=e,this.mark=n}apply(t){let e=t.slice(this.from,this.to),n=new vt(ke(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Se.fromReplace(t,this.from,this.to,n)}invert(){return new Me(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),n=t.mapResult(this.to,-1);return e.deleted&&n.deleted||e.pos>=n.pos?null:new Oe(e.pos,n.pos,this.mark)}merge(t){return t instanceof Oe&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new Oe(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,e){if("number"!=typeof e.from||"number"!=typeof e.to)throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new Oe(e.from,e.to,t.markFromJSON(e.mark))}}xe.jsonID("removeMark",Oe);class Ce extends xe{constructor(t,e){super(),this.pos=t,this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Se.fail("No node at mark step's position");let n=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Se.fromReplace(t,this.pos,this.pos+1,new vt(dt.from(n),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(e){let t=this.mark.addToSet(e.marks);if(t.length==e.marks.length){for(let n=0;nn.pos?null:new Te(e.pos,n.pos,r,i,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(t.slice=this.slice.toJSON()),this.structure&&(t.structure=!0),t}static fromJSON(t,e){if("number"!=typeof e.from||"number"!=typeof e.to||"number"!=typeof e.gapFrom||"number"!=typeof e.gapTo||"number"!=typeof e.insert)throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Te(e.from,e.to,e.gapFrom,e.gapTo,vt.fromJSON(t,e.slice),e.insert,!!e.structure)}}function Ae(t,e,n){let r=t.resolve(e),i=n-e,o=r.depth;for(;i>0&&o>0&&r.indexAfter(o)==r.node(o).childCount;)o--,i--;if(i>0){let t=r.node(o).maybeChild(r.indexAfter(o));for(;i>0;){if(!t||t.isLeaf)return!0;t=t.firstChild,i--}}return!1}function $e(t,e,n){return(0==e||t.canReplace(e,t.childCount))&&(n==t.childCount||t.canReplace(0,n))}function Ee(t){let e=t.parent.content.cutByIndex(t.startIndex,t.endIndex);for(let n=t.depth;;--n){let r=t.$from.node(n),i=t.$from.index(n),o=t.$to.indexAfter(n);if(no;c--,h--){let t=i.node(c),e=i.index(c);if(t.type.spec.isolating)return!1;let n=t.content.cutByIndex(e,t.childCount),o=r&&r[h+1];o&&(n=n.replaceChild(0,o.type.create(o.attrs)));let s=r&&r[h]||t;if(!t.canReplace(e+1,t.childCount)||!s.type.validContent(n))return!1}let l=i.indexAfter(o),a=r&&r[0];return i.node(o).canReplaceWith(l,l,a?a.type:i.node(o+1).type)}function _e(t,e){let n=t.resolve(e),r=n.index();return i=n.nodeBefore,o=n.nodeAfter,!(!i||!o||i.isLeaf||!i.canAppend(o))&&n.parent.canReplace(r,r+1);var i,o}function ze(t,e,n=e,r=vt.empty){if(e==n&&!r.size)return null;let i=t.resolve(e),o=t.resolve(n);return je(i,o,r)?new Ne(e,n,r):new Be(i,o,r).fit()}function je(t,e,n){return!n.openStart&&!n.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),n.content)}xe.jsonID("replaceAround",Te);class Be{constructor(t,e,n){this.$from=t,this.$to=e,this.unplaced=n,this.frontier=[],this.placed=dt.empty;for(let r=0;r<=t.depth;r++){let e=t.node(r);this.frontier.push({type:e.type,match:e.contentMatchAt(t.indexAfter(r))})}for(let r=t.depth;r>0;r--)this.placed=dt.from(t.node(r).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let t=this.findFittable();t?this.placeNodes(t):this.openMore()||this.dropNode()}let t=this.mustMoveInline(),e=this.placed.size-this.depth-this.$from.depth,n=this.$from,r=this.close(t<0?this.$to:n.doc.resolve(t));if(!r)return null;let i=this.placed,o=n.depth,s=r.depth;for(;o&&s&&1==i.childCount;)i=i.firstChild.content,o--,s--;let l=new vt(i,o,s);return t>-1?new Te(n.pos,t,this.$to.pos,this.$to.end(),l,e):l.size||n.pos!=this.$to.pos?new Ne(n.pos,r.pos,l):null}findFittable(){let t=this.unplaced.openStart;for(let e=this.unplaced.content,n=0,r=this.unplaced.openEnd;n1&&(r=0),i.type.spec.isolating&&r<=n){t=n;break}e=i.content}for(let e=1;e<=2;e++)for(let n=1==e?t:this.unplaced.openStart;n>=0;n--){let t,r=null;n?(r=Le(this.unplaced.content,n-1).firstChild,t=r.content):t=this.unplaced.content;let i=t.firstChild;for(let o=this.depth;o>=0;o--){let t,{type:s,match:l}=this.frontier[o],a=null;if(1==e&&(i?l.matchType(i.type)||(a=l.fillBefore(dt.from(i),!1)):r&&s.compatibleContent(r.type)))return{sliceDepth:n,frontierDepth:o,parent:r,inject:a};if(2==e&&i&&(t=l.findWrapping(i.type)))return{sliceDepth:n,frontierDepth:o,parent:r,wrap:t};if(r&&l.matchType(r.type))break}}}openMore(){let{content:t,openStart:e,openEnd:n}=this.unplaced,r=Le(t,e);return!(!r.childCount||r.firstChild.isLeaf)&&(this.unplaced=new vt(t,e+1,Math.max(n,r.size+e>=t.size-n?e+1:0)),!0)}dropNode(){let{content:t,openStart:e,openEnd:n}=this.unplaced,r=Le(t,e);if(r.childCount<=1&&e>0){let i=t.size-e<=e+r.size;this.unplaced=new vt(Ve(t,e-1,1),e-1,i?e-1:n)}else this.unplaced=new vt(Ve(t,e,1),e,n)}placeNodes({sliceDepth:t,frontierDepth:e,parent:n,inject:r,wrap:i}){for(;this.depth>e;)this.closeFrontierNode();if(i)for(let p=0;p1||0==l||t.content.size)&&(h=e,c.push(qe(t.mark(u.allowedMarks(t.marks)),1==a?l:0,a==s.childCount?d:-1)))}let f=a==s.childCount;f||(d=-1),this.placed=Fe(this.placed,e,dt.from(c)),this.frontier[e].match=h,f&&d<0&&n&&n.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let p=0,m=s;p1&&r==this.$to.end(--n);)++r;return r}findCloseLevel(t){t:for(let e=Math.min(this.depth,t.depth);e>=0;e--){let{match:n,type:r}=this.frontier[e],i=e=0;n--){let{match:e,type:r}=this.frontier[n],i=We(t,n,r,e,!0);if(!i||i.childCount)continue t}return{depth:e,fit:o,move:i?t.doc.resolve(t.after(e+1)):t}}}}close(t){let e=this.findCloseLevel(t);if(!e)return null;for(;this.depth>e.depth;)this.closeFrontierNode();e.fit.childCount&&(this.placed=Fe(this.placed,e.depth,e.fit)),t=e.move;for(let n=e.depth+1;n<=t.depth;n++){let e=t.node(n),r=e.type.contentMatch.fillBefore(e.content,!0,t.index(n));this.openFrontierNode(e.type,e.attrs,r)}return t}openFrontierNode(t,e=null,n){let r=this.frontier[this.depth];r.match=r.match.matchType(t),this.placed=Fe(this.placed,this.depth,dt.from(t.create(e,n))),this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop().match.fillBefore(dt.empty,!0);t.childCount&&(this.placed=Fe(this.placed,this.frontier.length,t))}}function Ve(t,e,n){return 0==e?t.cutByIndex(n,t.childCount):t.replaceChild(0,t.firstChild.copy(Ve(t.firstChild.content,e-1,n)))}function Fe(t,e,n){return 0==e?t.append(n):t.replaceChild(t.childCount-1,t.lastChild.copy(Fe(t.lastChild.content,e-1,n)))}function Le(t,e){for(let n=0;n1&&(r=r.replaceChild(0,qe(r.firstChild,e-1,1==r.childCount?n-1:0))),e>0&&(r=t.type.contentMatch.fillBefore(r).append(r),n<=0&&(r=r.append(t.type.contentMatch.matchFragment(r).fillBefore(dt.empty,!0)))),t.copy(r)}function We(t,e,n,r,i){let o=t.node(e),s=i?t.indexAfter(e):t.index(e);if(s==o.childCount&&!n.compatibleContent(o.type))return null;let l=r.fillBefore(o.content,!0,s);return l&&!function(t,e,n){for(let r=n;rr){let e=i.contentMatchAt(0),n=e.fillBefore(t).append(t);t=n.append(e.matchFragment(n).fillBefore(dt.empty,!0))}return t}function He(t,e){let n=[];for(let r=Math.min(t.depth,e.depth);r>=0;r--){let i=t.start(r);if(ie.pos+(e.depth-r)||t.node(r).type.spec.isolating||e.node(r).type.spec.isolating)break;(i==e.start(r)||r==t.depth&&r==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&r&&e.start(r-1)==i-1)&&n.push(r)}return n}class Ye extends xe{constructor(t,e,n){super(),this.pos=t,this.attr=e,this.value=n}apply(t){let e=t.nodeAt(this.pos);if(!e)return Se.fail("No node at attribute step's position");let n=Object.create(null);for(let i in e.attrs)n[i]=e.attrs[i];n[this.attr]=this.value;let r=e.type.create(n,null,e.marks);return Se.fromReplace(t,this.pos,this.pos+1,new vt(dt.from(r),0,e.isLeaf?0:1))}getMap(){return ve.empty}invert(t){return new Ye(this.pos,this.attr,t.nodeAt(this.pos).attrs[this.attr])}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Ye(e.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(t,e){if("number"!=typeof e.pos||"string"!=typeof e.attr)throw new RangeError("Invalid input for AttrStep.fromJSON");return new Ye(e.pos,e.attr,e.value)}}xe.jsonID("attr",Ye);let Ue=class extends Error{};Ue=function t(e){let n=Error.call(this,e);return n.__proto__=t.prototype,n},(Ue.prototype=Object.create(Error.prototype)).constructor=Ue,Ue.prototype.name="TransformError";class Ge{constructor(t){this.doc=t,this.steps=[],this.docs=[],this.mapping=new we}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new Ue(e.failed);return this}maybeStep(t){let e=t.apply(this.doc);return e.failed||this.addStep(t,e.doc),e}get docChanged(){return this.steps.length>0}addStep(t,e){this.docs.push(this.doc),this.steps.push(t),this.mapping.appendMap(t.getMap()),this.doc=e}replace(t,e=t,n=vt.empty){let r=ze(this.doc,t,e,n);return r&&this.step(r),this}replaceWith(t,e,n){return this.replace(t,e,new vt(dt.from(n),0,0))}delete(t,e){return this.replace(t,e,vt.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,n){return function(t,e,n,r){if(!r.size)return t.deleteRange(e,n);let i=t.doc.resolve(e),o=t.doc.resolve(n);if(je(i,o,r))return t.step(new Ne(e,n,r));let s=He(i,t.doc.resolve(n));0==s[s.length-1]&&s.pop();let l=-(i.depth+1);s.unshift(l);for(let d=i.depth,f=i.pos-1;d>0;d--,f--){let t=i.node(d).type.spec;if(t.defining||t.definingAsContext||t.isolating)break;s.indexOf(d)>-1?l=d:i.before(d)==f&&s.splice(1,0,-d)}let a=s.indexOf(l),c=[],h=r.openStart;for(let d=r.content,f=0;;f++){let t=d.firstChild;if(c.push(t),f==r.openStart)break;d=t.content}for(let d=h-1;d>=0;d--){let t=c[d].type,e=Je(t);if(e&&i.node(a).type!=t)h=d;else if(e||!t.isTextblock)break}for(let d=r.openStart;d>=0;d--){let e=(d+h+1)%(r.openStart+1),l=c[e];if(l)for(let c=0;c=0&&(t.replace(e,n,r),!(t.steps.length>u));d--){let t=s[d];t<0||(e=i.before(t),n=o.after(t))}}(this,t,e,n),this}replaceRangeWith(t,e,n){return function(t,e,n,r){if(!r.isInline&&e==n&&t.doc.resolve(e).parent.content.size){let i=function(t,e,n){let r=t.resolve(e);if(r.parent.canReplaceWith(r.index(),r.index(),n))return e;if(0==r.parentOffset)for(let i=r.depth-1;i>=0;i--){let t=r.index(i);if(r.node(i).canReplaceWith(t,t,n))return r.before(i+1);if(t>0)return null}if(r.parentOffset==r.parent.content.size)for(let i=r.depth-1;i>=0;i--){let t=r.indexAfter(i);if(r.node(i).canReplaceWith(t,t,n))return r.after(i+1);if(t0&&(n||r.node(e-1).canReplace(r.index(e-1),i.indexAfter(e-1))))return t.delete(r.before(e),i.after(e))}for(let s=1;s<=r.depth&&s<=i.depth;s++)if(e-r.start(s)==r.depth-s&&n>r.end(s)&&i.end(s)-n!=i.depth-s)return t.delete(r.before(s),n);t.delete(e,n)}(this,t,e),this}lift(t,e){return function(t,e,n){let{$from:r,$to:i,depth:o}=e,s=r.before(o+1),l=i.after(o+1),a=s,c=l,h=dt.empty,u=0;for(let p=o,m=!1;p>n;p--)m||r.index(p)>0?(m=!0,h=dt.from(r.node(p).copy(h)),u++):a--;let d=dt.empty,f=0;for(let p=o,m=!1;p>n;p--)m||i.after(p+1)=0;s--){if(r.size){let t=n[s].type.contentMatch.matchFragment(r);if(!t||!t.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=dt.from(n[s].type.create(n[s].attrs,r))}let i=e.start,o=e.end;t.step(new Te(i,o,i,o,new vt(r,0,0),n.length,!0))}(this,t,e),this}setBlockType(t,e=t,n,r=null){return function(t,e,n,r,i){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let o=t.steps.length;t.doc.nodesBetween(e,n,((e,n)=>{if(e.isTextblock&&!e.hasMarkup(r,i)&&function(t,e,n){let r=t.resolve(e),i=r.index();return r.parent.canReplaceWith(i,i+1,n)}(t.doc,t.mapping.slice(o).map(n),r)){t.clearIncompatible(t.mapping.slice(o).map(n,1),r);let s=t.mapping.slice(o),l=s.map(n,1),a=s.map(n+e.nodeSize,1);return t.step(new Te(l,a,l+1,a-1,new vt(dt.from(r.create(i,null,e.marks)),0,0),1,!0)),!1}}))}(this,t,e,n,r),this}setNodeMarkup(t,e,n=null,r){return function(t,e,n,r,i){let o=t.doc.nodeAt(e);if(!o)throw new RangeError("No node at given position");n||(n=o.type);let s=n.create(r,null,i||o.marks);if(o.isLeaf)return t.replaceWith(e,e+o.nodeSize,s);if(!n.validContent(o.content))throw new RangeError("Invalid content for node type "+n.name);t.step(new Te(e,e+o.nodeSize,e+1,e+o.nodeSize-1,new vt(dt.from(s),0,0),1,!0))}(this,t,e,n,r),this}setNodeAttribute(t,e,n){return this.step(new Ye(t,e,n)),this}addNodeMark(t,e){return this.step(new Ce(t,e)),this}removeNodeMark(t,e){if(!(e instanceof gt)){let n=this.doc.nodeAt(t);if(!n)throw new RangeError("No node at position "+t);if(!(e=e.isInSet(n.marks)))return this}return this.step(new De(t,e)),this}split(t,e=1,n){return function(t,e,n=1,r){let i=t.doc.resolve(e),o=dt.empty,s=dt.empty;for(let l=i.depth,a=i.depth-n,c=n-1;l>a;l--,c--){o=dt.from(i.node(l).copy(o));let t=r&&r[c];s=dt.from(t?t.type.create(t.attrs,s):i.node(l).copy(s))}t.step(new Ne(e,e,new vt(o.append(s),n,n),!0))}(this,t,e,n),this}addMark(t,e,n){return function(t,e,n,r){let i,o,s=[],l=[];t.doc.nodesBetween(e,n,((t,a,c)=>{if(!t.isInline)return;let h=t.marks;if(!r.isInSet(h)&&c.type.allowsMarkType(r.type)){let c=Math.max(a,e),u=Math.min(a+t.nodeSize,n),d=r.addToSet(h);for(let t=0;tt.step(e))),l.forEach((e=>t.step(e)))}(this,t,e,n),this}removeMark(t,e,n){return function(t,e,n,r){let i=[],o=0;t.doc.nodesBetween(e,n,((t,s)=>{if(!t.isInline)return;o++;let l=null;if(r instanceof Qt){let e,n=t.marks;for(;e=r.isInSet(n);)(l||(l=[])).push(e),n=e.removeFromSet(n)}else r?r.isInSet(t.marks)&&(l=[r]):l=t.marks;if(l&&l.length){let r=Math.min(s+t.nodeSize,n);for(let t=0;tt.step(new Oe(e.from,e.to,e.style))))}(this,t,e,n),this}clearIncompatible(t,e,n){return function(t,e,n,r=n.contentMatch){let i=t.doc.nodeAt(e),o=[],s=e+1;for(let l=0;l=0;l--)t.step(o[l])}(this,t,e,n),this}}const Ze=Object.create(null);class Xe{constructor(t,e,n){this.$anchor=t,this.$head=e,this.ranges=n||[new Qe(t.min(e),t.max(e))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let t=this.ranges;for(let e=0;e=0;i--){let r=e<0?cn(t.node(0),t.node(i),t.before(i+1),t.index(i),e,n):cn(t.node(0),t.node(i),t.after(i+1),t.index(i)+1,e,n);if(r)return r}return null}static near(t,e=1){return this.findFrom(t,e)||this.findFrom(t,-e)||new ln(t.node(0))}static atStart(t){return cn(t,t,0,0,1)||new ln(t)}static atEnd(t){return cn(t,t,t.content.size,t.childCount,-1)||new ln(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let n=Ze[e.type];if(!n)throw new RangeError(`No selection type ${e.type} defined`);return n.fromJSON(t,e)}static jsonID(t,e){if(t in Ze)throw new RangeError("Duplicate use of selection JSON ID "+t);return Ze[t]=e,e.prototype.jsonID=t,e}getBookmark(){return nn.between(this.$anchor,this.$head).getBookmark()}}Xe.prototype.visible=!0;class Qe{constructor(t,e){this.$from=t,this.$to=e}}let tn=!1;function en(t){tn||t.parent.inlineContent||(tn=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")"))}class nn extends Xe{constructor(t,e=t){en(t),en(e),super(t,e)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,e){let n=t.resolve(e.map(this.head));if(!n.parent.inlineContent)return Xe.near(n);let r=t.resolve(e.map(this.anchor));return new nn(r.parent.inlineContent?r:n,n)}replace(t,e=vt.empty){if(super.replace(t,e),e==vt.empty){let e=this.$from.marksAcross(this.$to);e&&t.ensureMarks(e)}}eq(t){return t instanceof nn&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new rn(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(t,e){if("number"!=typeof e.anchor||"number"!=typeof e.head)throw new RangeError("Invalid input for TextSelection.fromJSON");return new nn(t.resolve(e.anchor),t.resolve(e.head))}static create(t,e,n=e){let r=t.resolve(e);return new this(r,n==e?r:t.resolve(n))}static between(t,e,n){let r=t.pos-e.pos;if(n&&!r||(n=r>=0?1:-1),!e.parent.inlineContent){let t=Xe.findFrom(e,n,!0)||Xe.findFrom(e,-n,!0);if(!t)return Xe.near(e,n);e=t.$head}return t.parent.inlineContent||(0==r||(t=(Xe.findFrom(t,-n,!0)||Xe.findFrom(t,n,!0)).$anchor).posnew ln(t)};function cn(t,e,n,r,i,o=!1){if(e.inlineContent)return nn.create(t,n);for(let s=r-(i>0?0:1);i>0?s=0;s+=i){let r=e.child(s);if(r.isAtom){if(!o&&on.isSelectable(r))return on.create(t,n-(i<0?r.nodeSize:0))}else{let e=cn(t,r,n+i,i<0?r.childCount:0,i,o);if(e)return e}n+=r.nodeSize*i}return null}function hn(t,e,n){let r=t.steps.length-1;if(r{null==i&&(i=r)})),t.setSelection(Xe.near(t.doc.resolve(i),n)))}class un extends Ge{constructor(t){super(t.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=t.selection,this.storedMarks=t.storedMarks}get selection(){return this.curSelectionFor0}setStoredMarks(t){return this.storedMarks=t,this.updated|=2,this}ensureMarks(t){return gt.sameSet(this.storedMarks||this.selection.$from.marks(),t)||this.setStoredMarks(t),this}addStoredMark(t){return this.ensureMarks(t.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(t){return this.ensureMarks(t.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(2&this.updated)>0}addStep(t,e){super.addStep(t,e),this.updated=-3&this.updated,this.storedMarks=null}setTime(t){return this.time=t,this}replaceSelection(t){return this.selection.replace(this,t),this}replaceSelectionWith(t,e=!0){let n=this.selection;return e&&(t=t.mark(this.storedMarks||(n.empty?n.$from.marks():n.$from.marksAcross(n.$to)||gt.none))),n.replaceWith(this,t),this}deleteSelection(){return this.selection.replace(this),this}insertText(t,e,n){let r=this.doc.type.schema;if(null==e)return t?this.replaceSelectionWith(r.text(t),!0):this.deleteSelection();{if(null==n&&(n=e),n=null==n?e:n,!t)return this.deleteRange(e,n);let i=this.storedMarks;if(!i){let t=this.doc.resolve(e);i=n==e?t.marks():t.marksAcross(this.doc.resolve(n))}return this.replaceRangeWith(e,n,r.text(t,i)),this.selection.empty||this.setSelection(Xe.near(this.selection.$to)),this}}setMeta(t,e){return this.meta["string"==typeof t?t:t.key]=e,this}getMeta(t){return this.meta["string"==typeof t?t:t.key]}get isGeneric(){for(let t in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=4,this}get scrolledIntoView(){return(4&this.updated)>0}}function dn(t,e){return e&&t?t.bind(e):t}class fn{constructor(t,e,n){this.name=t,this.init=dn(e.init,n),this.apply=dn(e.apply,n)}}const pn=[new fn("doc",{init:t=>t.doc||t.schema.topNodeType.createAndFill(),apply:t=>t.doc}),new fn("selection",{init:(t,e)=>t.selection||Xe.atStart(e.doc),apply:t=>t.selection}),new fn("storedMarks",{init:t=>t.storedMarks||null,apply:(t,e,n,r)=>r.selection.$cursor?t.storedMarks:null}),new fn("scrollToSelection",{init:()=>0,apply:(t,e)=>t.scrolledIntoView?e+1:e})];class mn{constructor(t,e){this.schema=t,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=pn.slice(),e&&e.forEach((t=>{if(this.pluginsByKey[t.key])throw new RangeError("Adding different instances of a keyed plugin ("+t.key+")");this.plugins.push(t),this.pluginsByKey[t.key]=t,t.spec.state&&this.fields.push(new fn(t.key,t.spec.state,t))}))}}class gn{constructor(t){this.config=t}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(t){return this.applyTransaction(t).state}filterTransaction(t,e=-1){for(let n=0;nt.toJSON()))),t&&"object"==typeof t)for(let n in t){if("doc"==n||"selection"==n)throw new RangeError("The JSON fields `doc` and `selection` are reserved");let r=t[n],i=r.spec.state;i&&i.toJSON&&(e[n]=i.toJSON.call(r,this[r.key]))}return e}static fromJSON(t,e,n){if(!e)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let r=new mn(t.schema,t.plugins),i=new gn(r);return r.fields.forEach((r=>{if("doc"==r.name)i.doc=_t.fromJSON(t.schema,e.doc);else if("selection"==r.name)i.selection=Xe.fromJSON(i.doc,e.selection);else if("storedMarks"==r.name)e.storedMarks&&(i.storedMarks=e.storedMarks.map(t.schema.markFromJSON));else{if(n)for(let o in n){let s=n[o],l=s.spec.state;if(s.key==r.name&&l&&l.fromJSON&&Object.prototype.hasOwnProperty.call(e,o))return void(i[r.name]=l.fromJSON.call(s,t,e[o],i))}i[r.name]=r.init(t,i)}})),i}}function yn(t,e,n){for(let r in t){let i=t[r];i instanceof Function?i=i.bind(e):"handleDOMEvents"==r&&(i=yn(i,e,{})),n[r]=i}return n}class vn{constructor(t){this.spec=t,this.props={},t.props&&yn(t.props,this,this.props),this.key=t.key?t.key.key:bn("plugin")}getState(t){return t[this.key]}}const wn=Object.create(null);function bn(t){return t in wn?t+"$"+ ++wn[t]:(wn[t]=0,t+"$")}class xn{constructor(t="key"){this.key=bn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const Sn=function(t){for(var e=0;;e++)if(!(t=t.previousSibling))return e},kn=function(t){let e=t.assignedSlot||t.parentNode;return e&&11==e.nodeType?e.host:e};let Mn=null;const On=function(t,e,n){let r=Mn||(Mn=document.createRange());return r.setEnd(t,null==n?t.nodeValue.length:n),r.setStart(t,e||0),r},Cn=function(t,e,n,r){return n&&(Nn(t,e,n,r,-1)||Nn(t,e,n,r,1))},Dn=/^(img|br|input|textarea|hr)$/i;function Nn(t,e,n,r,i){for(;;){if(t==n&&e==r)return!0;if(e==(i<0?0:Tn(t))){let n=t.parentNode;if(!n||1!=n.nodeType||An(t)||Dn.test(t.nodeName)||"false"==t.contentEditable)return!1;e=Sn(t)+(i<0?0:1),t=n}else{if(1!=t.nodeType)return!1;if("false"==(t=t.childNodes[e+(i<0?-1:0)]).contentEditable)return!1;e=i<0?Tn(t):0}}}function Tn(t){return 3==t.nodeType?t.nodeValue.length:t.childNodes.length}function An(t){let e;for(let n=t;n&&!(e=n.pmViewDesc);n=n.parentNode);return e&&e.node&&e.node.isBlock&&(e.dom==t||e.contentDOM==t)}const $n=function(t){return t.focusNode&&Cn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function En(t,e){let n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=t,n.key=n.code=e,n}const Pn="undefined"!=typeof navigator?navigator:null,In="undefined"!=typeof document?document:null,Rn=Pn&&Pn.userAgent||"",_n=/Edge\/(\d+)/.exec(Rn),zn=/MSIE \d/.exec(Rn),jn=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Rn),Bn=!!(zn||jn||_n),Vn=zn?document.documentMode:jn?+jn[1]:_n?+_n[1]:0,Fn=!Bn&&/gecko\/(\d+)/i.test(Rn);Fn&&(/Firefox\/(\d+)/.exec(Rn)||[0,0])[1];const Ln=!Bn&&/Chrome\/(\d+)/.exec(Rn),qn=!!Ln,Wn=Ln?+Ln[1]:0,Jn=!Bn&&!!Pn&&/Apple Computer/.test(Pn.vendor),Kn=Jn&&(/Mobile\/\w+/.test(Rn)||!!Pn&&Pn.maxTouchPoints>2),Hn=Kn||!!Pn&&/Mac/.test(Pn.platform),Yn=!!Pn&&/Win/.test(Pn.platform),Un=/Android \d/.test(Rn),Gn=!!In&&"webkitFontSmoothing"in In.documentElement.style,Zn=Gn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Xn(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function Qn(t,e){return"number"==typeof t?t:t[e]}function tr(t){let e=t.getBoundingClientRect(),n=e.width/t.offsetWidth||1,r=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*n,top:e.top,bottom:e.top+t.clientHeight*r}}function er(t,e,n){let r=t.someProp("scrollThreshold")||0,i=t.someProp("scrollMargin")||5,o=t.dom.ownerDocument;for(let s=n||t.dom;s;s=kn(s)){if(1!=s.nodeType)continue;let t=s,n=t==o.body,l=n?Xn(o):tr(t),a=0,c=0;if(e.topl.bottom-Qn(r,"bottom")&&(c=e.bottom-e.top>l.bottom-l.top?e.top+Qn(i,"top")-l.top:e.bottom-l.bottom+Qn(i,"bottom")),e.leftl.right-Qn(r,"right")&&(a=e.right-l.right+Qn(i,"right")),a||c)if(n)o.defaultView.scrollBy(a,c);else{let n=t.scrollLeft,r=t.scrollTop;c&&(t.scrollTop+=c),a&&(t.scrollLeft+=a);let i=t.scrollLeft-n,o=t.scrollTop-r;e={left:e.left-i,top:e.top-o,right:e.right-i,bottom:e.bottom-o}}if(n||/^(fixed|sticky)$/.test(getComputedStyle(s).position))break}}function nr(t){let e=[],n=t.ownerDocument;for(let r=t;r&&(e.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),t!=n);r=kn(r));return e}function rr(t,e){for(let n=0;n=c){a=Math.max(f.bottom,a),c=Math.min(f.top,c);let t=f.left>e.left?f.left-e.left:f.right=(f.left+f.right)/2?1:0));continue}}else f.top>e.top&&!i&&f.left<=e.left&&f.right>=e.left&&(i=h,o={left:Math.max(f.left,Math.min(f.right,e.left)),top:f.top});!n&&(e.left>=f.right&&e.top>=f.top||e.left>=f.left&&e.top>=f.bottom)&&(l=u+1)}}return!n&&i&&(n=i,r=o,s=0),n&&3==n.nodeType?function(t,e){let n=t.nodeValue.length,r=document.createRange();for(let i=0;i=(n.left+n.right)/2?1:0)}}return{node:t,offset:0}}(n,r):!n||s&&1==n.nodeType?{node:t,offset:l}:or(n,r)}function sr(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function lr(t,e,n){let r=t.childNodes.length;if(r&&n.tope.top&&i++}let r;Gn&&i&&1==n.nodeType&&1==(r=n.childNodes[i-1]).nodeType&&"false"==r.contentEditable&&r.getBoundingClientRect().top>=e.top&&i--,n==t.dom&&i==n.childNodes.length-1&&1==n.lastChild.nodeType&&e.top>n.lastChild.getBoundingClientRect().bottom?s=t.state.doc.content.size:0!=i&&1==n.nodeType&&"BR"==n.childNodes[i-1].nodeName||(s=function(t,e,n,r){let i=-1;for(let o=e,s=!1;o!=t.dom;){let e=t.docView.nearestDesc(o,!0);if(!e)return null;if(1==e.dom.nodeType&&(e.node.isBlock&&e.parent&&!s||!e.contentDOM)){let t=e.dom.getBoundingClientRect();if(e.node.isBlock&&e.parent&&!s&&(s=!0,t.left>r.left||t.top>r.top?i=e.posBefore:(t.right-1?i:t.docView.posFromDOM(e,n,-1)}(t,n,i,e))}null==s&&(s=function(t,e,n){let{node:r,offset:i}=or(e,n),o=-1;if(1==r.nodeType&&!r.firstChild){let t=r.getBoundingClientRect();o=t.left!=t.right&&n.left>(t.left+t.right)/2?1:-1}return t.docView.posFromDOM(r,i,o)}(t,l,e));let a=t.docView.nearestDesc(l,!0);return{pos:s,inside:a?a.posAtStart-a.border:-1}}function cr(t){return t.top=0&&i==r.nodeValue.length?(t--,o=1):n<0?t--:e++,fr(hr(On(r,t,e),o),o<0)}{let t=hr(On(r,i,i),n);if(Fn&&i&&/\s/.test(r.nodeValue[i-1])&&i=0)}if(null==o&&i&&(n<0||i==Tn(r))){let t=r.childNodes[i-1],e=3==t.nodeType?On(t,Tn(t)-(s?0:1)):1!=t.nodeType||"BR"==t.nodeName&&t.nextSibling?null:t;if(e)return fr(hr(e,1),!1)}if(null==o&&i=0)}function fr(t,e){if(0==t.width)return t;let n=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:n,right:n}}function pr(t,e){if(0==t.height)return t;let n=e?t.top:t.bottom;return{top:n,bottom:n,left:t.left,right:t.right}}function mr(t,e,n){let r=t.state,i=t.root.activeElement;r!=e&&t.updateState(e),i!=t.dom&&t.focus();try{return n()}finally{r!=e&&t.updateState(r),i!=t.dom&&i&&i.focus()}}const gr=/[\u0590-\u08ac]/;let yr=null,vr=null,wr=!1;function br(t,e,n){return yr==e&&vr==n?wr:(yr=e,vr=n,wr="up"==n||"down"==n?function(t,e,n){let r=e.selection,i="up"==n?r.$from:r.$to;return mr(t,e,(()=>{let{node:e}=t.docView.domFromPos(i.pos,"up"==n?-1:1);for(;;){let n=t.docView.nearestDesc(e,!0);if(!n)break;if(n.node.isBlock){e=n.contentDOM||n.dom;break}e=n.dom.parentNode}let r=dr(t,i.pos,1);for(let t=e.firstChild;t;t=t.nextSibling){let e;if(1==t.nodeType)e=t.getClientRects();else{if(3!=t.nodeType)continue;e=On(t,0,t.nodeValue.length).getClientRects()}for(let t=0;ti.top+1&&("up"==n?r.top-i.top>2*(i.bottom-r.top):i.bottom-r.bottom>2*(r.bottom-i.top)))return!1}}return!0}))}(t,e,n):function(t,e,n){let{$head:r}=e.selection;if(!r.parent.isTextblock)return!1;let i=r.parentOffset,o=!i,s=i==r.parent.content.size,l=t.domSelection();return gr.test(r.parent.textContent)&&l.modify?mr(t,e,(()=>{let{focusNode:e,focusOffset:i,anchorNode:o,anchorOffset:s}=t.domSelectionRange(),a=l.caretBidiLevel;l.modify("move",n,"character");let c=r.depth?t.docView.domAfterPos(r.before()):t.dom,{focusNode:h,focusOffset:u}=t.domSelectionRange(),d=h&&!c.contains(1==h.nodeType?h:h.parentNode)||e==h&&i==u;try{l.collapse(o,s),e&&(e!=o||i!=s)&&l.extend&&l.extend(e,i)}catch(f){}return null!=a&&(l.caretBidiLevel=a),d})):"left"==n||"backward"==n?o:s}(t,e,n))}class xr{constructor(t,e,n,r){this.parent=t,this.children=e,this.dom=n,this.contentDOM=r,this.dirty=0,n.pmViewDesc=this}matchesWidget(t){return!1}matchesMark(t){return!1}matchesNode(t,e,n){return!1}matchesHack(t){return!1}parseRule(){return null}stopEvent(t){return!1}get size(){let t=0;for(let e=0;eSn(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))r=2&t.compareDocumentPosition(this.contentDOM);else if(this.dom.firstChild){if(0==e)for(let e=t;;e=e.parentNode){if(e==this.dom){r=!1;break}if(e.previousSibling)break}if(null==r&&e==t.childNodes.length)for(let e=t;;e=e.parentNode){if(e==this.dom){r=!0;break}if(e.nextSibling)break}}return(null==r?n>0:r)?this.posAtEnd:this.posAtStart}nearestDesc(t,e=!1){for(let n=!0,r=t;r;r=r.parentNode){let i,o=this.getDesc(r);if(o&&(!e||o.node)){if(!n||!(i=o.nodeDOM)||(1==i.nodeType?i.contains(1==t.nodeType?t:t.parentNode):i==t))return o;n=!1}}}getDesc(t){let e=t.pmViewDesc;for(let n=e;n;n=n.parent)if(n==this)return e}posFromDOM(t,e,n){for(let r=t;r;r=r.parentNode){let i=this.getDesc(r);if(i)return i.localPosFromDOM(t,e,n)}return-1}descAt(t){for(let e=0,n=0;et||e instanceof Nr){r=t-i;break}i=o}if(r)return this.children[n].domFromPos(r-this.children[n].border,e);for(let i;n&&!(i=this.children[n-1]).size&&i instanceof Sr&&i.side>=0;n--);if(e<=0){let t,r=!0;for(;t=n?this.children[n-1]:null,t&&t.dom.parentNode!=this.contentDOM;n--,r=!1);return t&&e&&r&&!t.border&&!t.domAtom?t.domFromPos(t.size,e):{node:this.contentDOM,offset:t?Sn(t.dom)+1:0}}{let t,r=!0;for(;t=n=i&&e<=l-n.border&&n.node&&n.contentDOM&&this.contentDOM.contains(n.contentDOM))return n.parseRange(t,e,i);t=o;for(let e=s;e>0;e--){let n=this.children[e-1];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(1)){r=Sn(n.dom)+1;break}t-=n.size}-1==r&&(r=0)}if(r>-1&&(l>e||s==this.children.length-1)){e=l;for(let t=s+1;tf&&oe){let t=s;s=l,l=t}let n=document.createRange();n.setEnd(l.node,l.offset),n.setStart(s.node,s.offset),a.removeAllRanges(),a.addRange(n)}}ignoreMutation(t){return!this.contentDOM&&"selection"!=t.type}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(t,e){for(let n=0,r=0;r=n:tn){let r=n+i.border,s=o-i.border;if(t>=r&&e<=s)return this.dirty=t==n||e==o?2:1,void(t!=r||e!=s||!i.contentLost&&i.dom.parentNode==this.contentDOM?i.markDirty(t-r,e-r):i.dirty=3);i.dirty=i.dom!=i.contentDOM||i.dom.parentNode!=this.contentDOM||i.children.length?3:2}n=o}this.dirty=2}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let n=1==t?2:1;e.dirtyi?i.parent?i.parent.posBeforeChild(i):void 0:r))),!e.type.spec.raw){if(1!=o.nodeType){let t=document.createElement("span");t.appendChild(o),o=t}o.contentEditable="false",o.classList.add("ProseMirror-widget")}super(t,[],o,null),this.widget=e,this.widget=e,i=this}matchesWidget(t){return 0==this.dirty&&t.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(t){let e=this.widget.spec.stopEvent;return!!e&&e(t)}ignoreMutation(t){return"selection"!=t.type||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class kr extends xr{constructor(t,e,n,r){super(t,[],e,null),this.textDOM=n,this.text=r}get size(){return this.text.length}localPosFromDOM(t,e){return t!=this.textDOM?this.posAtStart+(e?this.size:0):this.posAtStart+e}domFromPos(t){return{node:this.textDOM,offset:t}}ignoreMutation(t){return"characterData"===t.type&&t.target.nodeValue==t.oldValue}}class Mr extends xr{constructor(t,e,n,r){super(t,[],n,r),this.mark=e}static create(t,e,n,r){let i=r.nodeViews[e.type.name],o=i&&i(e,r,n);return o&&o.dom||(o=de.renderSpec(document,e.type.spec.toDOM(e,n))),new Mr(t,e,o.dom,o.contentDOM||o.dom)}parseRule(){return 3&this.dirty||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(t){return 3!=this.dirty&&this.mark.eq(t)}markDirty(t,e){if(super.markDirty(t,e),0!=this.dirty){let t=this.parent;for(;!t.node;)t=t.parent;t.dirty0&&(i=Fr(i,0,t,n));for(let s=0;ss?s.parent?s.parent.posBeforeChild(s):void 0:o),n,r),c=a&&a.dom,h=a&&a.contentDOM;if(e.isText)if(c){if(3!=c.nodeType)throw new RangeError("Text must be rendered as a DOM text node")}else c=document.createTextNode(e.text);else c||({dom:c,contentDOM:h}=de.renderSpec(document,e.type.spec.toDOM(e)));h||e.isText||"BR"==c.nodeName||(c.hasAttribute("contenteditable")||(c.contentEditable="false"),e.type.spec.draggable&&(c.draggable=!0));let u=c;return c=_r(c,n,e),a?s=new Tr(t,e,n,r,c,h||null,u,a,i,o+1):e.isText?new Dr(t,e,n,r,c,u,i):new Or(t,e,n,r,c,h||null,u,i,o+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let t={node:this.node.type.name,attrs:this.node.attrs};if("pre"==this.node.type.whitespace&&(t.preserveWhitespace="full"),this.contentDOM)if(this.contentLost){for(let e=this.children.length-1;e>=0;e--){let n=this.children[e];if(this.dom.contains(n.dom.parentNode)){t.contentElement=n.dom.parentNode;break}}t.contentElement||(t.getContent=()=>dt.empty)}else t.contentElement=this.contentDOM;else t.getContent=()=>this.node.content;return t}matchesNode(t,e,n){return 0==this.dirty&&t.eq(this.node)&&zr(e,this.outerDeco)&&n.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(t,e){let n=this.node.inlineContent,r=e,i=t.composing?this.localCompositionInfo(t,e):null,o=i&&i.pos>-1?i:null,s=i&&i.pos<0,l=new Br(this,o&&o.node,t);!function(t,e,n,r){let i=e.locals(t),o=0;if(0==i.length){for(let n=0;no;)l.push(i[s++]);let p=o+d.nodeSize;if(d.isText){let t=p;s!t.inline)):l.slice(),e.forChild(o,d),f),o=p}}(this.node,this.innerDeco,((e,i,o)=>{e.spec.marks?l.syncToMarks(e.spec.marks,n,t):e.type.side>=0&&!o&&l.syncToMarks(i==this.node.childCount?gt.none:this.node.child(i).marks,n,t),l.placeWidget(e,t,r)}),((e,o,a,c)=>{let h;l.syncToMarks(e.marks,n,t),l.findNodeMatch(e,o,a,c)||s&&t.state.selection.from>r&&t.state.selection.to-1&&l.updateNodeAt(e,o,a,h,t)||l.updateNextNode(e,o,a,t,c,r)||l.addNode(e,o,a,t,r),r+=e.nodeSize})),l.syncToMarks([],n,t),this.node.isTextblock&&l.addTextblockHacks(),l.destroyRest(),(l.changed||2==this.dirty)&&(o&&this.protectLocalComposition(t,o),Ar(this.contentDOM,this.children,t),Kn&&function(t){if("UL"==t.nodeName||"OL"==t.nodeName){let e=t.style.cssText;t.style.cssText=e+"; list-style: square !important",window.getComputedStyle(t).listStyle,t.style.cssText=e}}(this.dom))}localCompositionInfo(t,e){let{from:n,to:r}=t.state.selection;if(!(t.state.selection instanceof nn)||ne+this.node.content.size)return null;let i=t.domSelectionRange(),o=function(t,e){for(;;){if(3==t.nodeType)return t;if(1==t.nodeType&&e>0){if(t.childNodes.length>e&&3==t.childNodes[e].nodeType)return t.childNodes[e];e=Tn(t=t.childNodes[e-1])}else{if(!(1==t.nodeType&&e=n){if(o>=r&&a.slice(r-e.length-l,r-l)==e)return r-e.length;let t=l=0&&t+e.length+l>=n)return l+t;if(n==r&&a.length>=r+e.length-l&&a.slice(r-l,r-l+e.length)==e)return r}}return-1}(this.node.content,t,n-e,r-e);return i<0?null:{node:o,pos:i,text:t}}return{node:o,pos:-1,text:""}}protectLocalComposition(t,{node:e,pos:n,text:r}){if(this.getDesc(e))return;let i=e;for(;i.parentNode!=this.contentDOM;i=i.parentNode){for(;i.previousSibling;)i.parentNode.removeChild(i.previousSibling);for(;i.nextSibling;)i.parentNode.removeChild(i.nextSibling);i.pmViewDesc&&(i.pmViewDesc=void 0)}let o=new kr(this,i,e,r);t.input.compositionNodes.push(o),this.children=Fr(this.children,n,n+r.length,t,o)}update(t,e,n,r){return!(3==this.dirty||!t.sameMarkup(this.node))&&(this.updateInner(t,e,n,r),!0)}updateInner(t,e,n,r){this.updateOuterDeco(e),this.node=t,this.innerDeco=n,this.contentDOM&&this.updateChildren(r,this.posAtStart),this.dirty=0}updateOuterDeco(t){if(zr(t,this.outerDeco))return;let e=1!=this.nodeDOM.nodeType,n=this.dom;this.dom=Ir(this.dom,this.nodeDOM,Pr(this.outerDeco,this.node,e),Pr(t,this.node,e)),this.dom!=n&&(n.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=t}selectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.add("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||(this.dom.draggable=!0)}deselectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.remove("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||this.dom.removeAttribute("draggable")}get domAtom(){return this.node.isAtom}}function Cr(t,e,n,r,i){_r(r,e,t);let o=new Or(void 0,t,e,n,r,r,r,i,0);return o.contentDOM&&o.updateChildren(i,0),o}class Dr extends Or{constructor(t,e,n,r,i,o,s){super(t,e,n,r,i,null,o,s,0)}parseRule(){let t=this.nodeDOM.parentNode;for(;t&&t!=this.dom&&!t.pmIsDeco;)t=t.parentNode;return{skip:t||!0}}update(t,e,n,r){return!(3==this.dirty||0!=this.dirty&&!this.inParent()||!t.sameMarkup(this.node))&&(this.updateOuterDeco(e),0==this.dirty&&t.text==this.node.text||t.text==this.nodeDOM.nodeValue||(this.nodeDOM.nodeValue=t.text,r.trackWrites==this.nodeDOM&&(r.trackWrites=null)),this.node=t,this.dirty=0,!0)}inParent(){let t=this.parent.contentDOM;for(let e=this.nodeDOM;e;e=e.parentNode)if(e==t)return!0;return!1}domFromPos(t){return{node:this.nodeDOM,offset:t}}localPosFromDOM(t,e,n){return t==this.nodeDOM?this.posAtStart+Math.min(e,this.node.text.length):super.localPosFromDOM(t,e,n)}ignoreMutation(t){return"characterData"!=t.type&&"selection"!=t.type}slice(t,e,n){let r=this.node.cut(t,e),i=document.createTextNode(r.text);return new Dr(this.parent,r,this.outerDeco,this.innerDeco,i,i,n)}markDirty(t,e){super.markDirty(t,e),this.dom==this.nodeDOM||0!=t&&e!=this.nodeDOM.nodeValue.length||(this.dirty=3)}get domAtom(){return!1}}class Nr extends xr{parseRule(){return{ignore:!0}}matchesHack(t){return 0==this.dirty&&this.dom.nodeName==t}get domAtom(){return!0}get ignoreForCoords(){return"IMG"==this.dom.nodeName}}class Tr extends Or{constructor(t,e,n,r,i,o,s,l,a,c){super(t,e,n,r,i,o,s,a,c),this.spec=l}update(t,e,n,r){if(3==this.dirty)return!1;if(this.spec.update){let i=this.spec.update(t,e,n);return i&&this.updateInner(t,e,n,r),i}return!(!this.contentDOM&&!t.isLeaf)&&super.update(t,e,n,r)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(t,e,n,r){this.spec.setSelection?this.spec.setSelection(t,e,n):super.setSelection(t,e,n,r)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(t){return!!this.spec.stopEvent&&this.spec.stopEvent(t)}ignoreMutation(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):super.ignoreMutation(t)}}function Ar(t,e,n){let r=t.firstChild,i=!1;for(let o=0;o0;){let l;for(;;)if(r){let t=n.children[r-1];if(!(t instanceof Mr)){l=t,r--;break}n=t,r=t.children.length}else{if(n==e)break t;r=n.parent.children.indexOf(n),n=n.parent}let a=l.node;if(a){if(a!=t.child(i-1))break;--i,o.set(l,i),s.push(l)}}return{index:i,matched:o,matches:s.reverse()}}(t.node.content,t)}destroyBetween(t,e){if(t!=e){for(let n=t;n>1,o=Math.min(i,t.length);for(;r-1)r>this.index&&(this.changed=!0,this.destroyBetween(this.index,r)),this.top=this.top.children[this.index];else{let r=Mr.create(this.top,t[i],e,n);this.top.children.splice(this.index,0,r),this.top=r,this.changed=!0}this.index=0,i++}}findNodeMatch(t,e,n,r){let i,o=-1;if(r>=this.preMatch.index&&(i=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&i.matchesNode(t,e,n))o=this.top.children.indexOf(i,this.index);else for(let s=this.index,l=Math.min(this.top.children.length,s+5);s=n||h<=e?o.push(a):(cn&&o.push(a.slice(n-c,a.size,r)))}return o}function Lr(t,e=null){let n=t.domSelectionRange(),r=t.state.doc;if(!n.focusNode)return null;let i=t.docView.nearestDesc(n.focusNode),o=i&&0==i.size,s=t.docView.posFromDOM(n.focusNode,n.focusOffset,1);if(s<0)return null;let l,a,c=r.resolve(s);if($n(n)){for(l=c;i&&!i.node;)i=i.parent;let t=i.node;if(i&&t.isAtom&&on.isSelectable(t)&&i.parent&&(!t.isInline||!function(t,e,n){for(let r=0==e,i=e==Tn(t);r||i;){if(t==n)return!0;let e=Sn(t);if(!(t=t.parentNode))return!1;r=r&&0==e,i=i&&e==Tn(t)}}(n.focusNode,n.focusOffset,i.dom))){let t=i.posBefore;a=new on(s==t?c:r.resolve(t))}}else{let e=t.docView.posFromDOM(n.anchorNode,n.anchorOffset,1);if(e<0)return null;l=r.resolve(e)}if(!a){a=Zr(t,l,c,"pointer"==e||t.state.selection.head{n.anchorNode==r&&n.anchorOffset==i||(e.removeEventListener("selectionchange",t.input.hideSelectionGuard),setTimeout((()=>{qr(t)&&!t.state.selection.visible||t.dom.classList.remove("ProseMirror-hideselection")}),20))})}(t))}t.domObserver.setCurSelection(),t.domObserver.connectSelection()}}const Jr=Jn||qn&&Wn<63;function Kr(t,e){let{node:n,offset:r}=t.docView.domFromPos(e,0),i=rr(t,e,n)))||nn.between(e,n,r)}function Xr(t){return!(t.editable&&!t.hasFocus())&&Qr(t)}function Qr(t){let e=t.domSelectionRange();if(!e.anchorNode)return!1;try{return t.dom.contains(3==e.anchorNode.nodeType?e.anchorNode.parentNode:e.anchorNode)&&(t.editable||t.dom.contains(3==e.focusNode.nodeType?e.focusNode.parentNode:e.focusNode))}catch(n){return!1}}function ti(t,e){let{$anchor:n,$head:r}=t.selection,i=e>0?n.max(r):n.min(r),o=i.parent.inlineContent?i.depth?t.doc.resolve(e>0?i.after():i.before()):null:i;return o&&Xe.findFrom(o,e)}function ei(t,e){return t.dispatch(t.state.tr.setSelection(e).scrollIntoView()),!0}function ni(t,e,n){let r=t.state.selection;if(!(r instanceof nn)){if(r instanceof on&&r.node.isInline)return ei(t,new nn(e>0?r.$to:r.$from));{let n=ti(t.state,e);return!!n&&ei(t,n)}}if(!r.empty||n.indexOf("s")>-1)return!1;if(t.endOfTextblock(e>0?"forward":"backward")){let n=ti(t.state,e);return!!(n&&n instanceof on)&&ei(t,n)}if(!(Hn&&n.indexOf("m")>-1)){let n,i=r.$head,o=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter;if(!o||o.isText)return!1;let s=e<0?i.pos-o.nodeSize:i.pos;return!!(o.isAtom||(n=t.docView.descAt(s))&&!n.contentDOM)&&(on.isSelectable(o)?ei(t,new on(e<0?t.state.doc.resolve(i.pos-o.nodeSize):i)):!!Gn&&ei(t,new nn(t.state.doc.resolve(e<0?s:s+o.nodeSize))))}}function ri(t){return 3==t.nodeType?t.nodeValue.length:t.childNodes.length}function ii(t,e){if("false"==t.contentEditable)return!0;let n=t.pmViewDesc;return n&&0==n.size&&(e<0||t.nextSibling||"BR"!=t.nodeName)}function oi(t,e){return e<0?function(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let i,o,s=!1;Fn&&1==n.nodeType&&r0){if(1!=n.nodeType)break;{let t=n.childNodes[r-1];if(ii(t,-1))i=n,o=--r;else{if(3!=t.nodeType)break;n=t,r=n.nodeValue.length}}}else{if(si(n))break;{let e=n.previousSibling;for(;e&&ii(e,-1);)i=n.parentNode,o=Sn(e),e=e.previousSibling;if(e)n=e,r=ri(n);else{if(n=n.parentNode,n==t.dom)break;r=0}}}s?li(t,n,r):i&&li(t,i,o)}(t):function(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let i,o,s=ri(n);for(;;)if(r{t.state==i&&Wr(t)}),50)}function ai(t,e){let n=t.state.doc.resolve(e);if(!qn&&!Yn&&n.parent.inlineContent){let r=t.coordsAtPos(e);if(e>n.start()){let n=t.coordsAtPos(e-1),i=(n.top+n.bottom)/2;if(i>r.top&&i1)return n.leftr.top&&i1)return n.left>r.left?"ltr":"rtl"}}return"rtl"==getComputedStyle(t.dom).direction?"rtl":"ltr"}function ci(t,e,n){let r=t.state.selection;if(r instanceof nn&&!r.empty||n.indexOf("s")>-1)return!1;if(Hn&&n.indexOf("m")>-1)return!1;let{$from:i,$to:o}=r;if(!i.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let n=ti(t.state,e);if(n&&n instanceof on)return ei(t,n)}if(!i.parent.inlineContent){let n=e<0?i:o,s=r instanceof ln?Xe.near(n,e):Xe.findFrom(n,e);return!!s&&ei(t,s)}return!1}function hi(t,e){if(!(t.state.selection instanceof nn))return!0;let{$head:n,$anchor:r,empty:i}=t.state.selection;if(!n.sameParent(r))return!0;if(!i)return!1;if(t.endOfTextblock(e>0?"forward":"backward"))return!0;let o=!n.textOffset&&(e<0?n.nodeBefore:n.nodeAfter);if(o&&!o.isText){let r=t.state.tr;return e<0?r.delete(n.pos-o.nodeSize,n.pos):r.delete(n.pos,n.pos+o.nodeSize),t.dispatch(r),!0}return!1}function ui(t,e,n){t.domObserver.stop(),e.contentEditable=n,t.domObserver.start()}function di(t,e){let n=e.keyCode,r=function(t){let e="";return t.ctrlKey&&(e+="c"),t.metaKey&&(e+="m"),t.altKey&&(e+="a"),t.shiftKey&&(e+="s"),e}(e);if(8==n||Hn&&72==n&&"c"==r)return hi(t,-1)||oi(t,-1);if(46==n&&!e.shiftKey||Hn&&68==n&&"c"==r)return hi(t,1)||oi(t,1);if(13==n||27==n)return!0;if(37==n||Hn&&66==n&&"c"==r){let e=37==n?"ltr"==ai(t,t.state.selection.from)?-1:1:-1;return ni(t,e,r)||oi(t,e)}if(39==n||Hn&&70==n&&"c"==r){let e=39==n?"ltr"==ai(t,t.state.selection.from)?1:-1:1;return ni(t,e,r)||oi(t,e)}return 38==n||Hn&&80==n&&"c"==r?ci(t,-1,r)||oi(t,-1):40==n||Hn&&78==n&&"c"==r?function(t){if(!Jn||t.state.selection.$head.parentOffset>0)return!1;let{focusNode:e,focusOffset:n}=t.domSelectionRange();if(e&&1==e.nodeType&&0==n&&e.firstChild&&"false"==e.firstChild.contentEditable){let n=e.firstChild;ui(t,n,"true"),setTimeout((()=>ui(t,n,"false")),20)}return!1}(t)||ci(t,1,r)||oi(t,1):r==(Hn?"m":"c")&&(66==n||73==n||89==n||90==n)}function fi(t,e){t.someProp("transformCopied",(n=>{e=n(e,t)}));let n=[],{content:r,openStart:i,openEnd:o}=e;for(;i>1&&o>1&&1==r.childCount&&1==r.firstChild.childCount;){i--,o--;let t=r.firstChild;n.push(t.type.name,t.attrs!=t.type.defaultAttrs?t.attrs:null),r=t.content}let s=t.someProp("clipboardSerializer")||de.fromSchema(t.state.schema),l=ki(),a=l.createElement("div");a.appendChild(s.serializeFragment(r,{document:l}));let c,h=a.firstChild,u=0;for(;h&&1==h.nodeType&&(c=xi[h.nodeName.toLowerCase()]);){for(let t=c.length-1;t>=0;t--){let e=l.createElement(c[t]);for(;a.firstChild;)e.appendChild(a.firstChild);a.appendChild(e),u++}h=a.firstChild}return h&&1==h.nodeType&&h.setAttribute("data-pm-slice",`${i} ${o}${u?` -${u}`:""} ${JSON.stringify(n)}`),{dom:a,text:t.someProp("clipboardTextSerializer",(n=>n(e,t)))||e.content.textBetween(0,e.content.size,"\n\n")}}function pi(t,e,n,r,i){let o,s,l=i.parent.type.spec.code;if(!n&&!e)return null;let a=e&&(r||l||!n);if(a){if(t.someProp("transformPastedText",(n=>{e=n(e,l||r,t)})),l)return e?new vt(dt.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):vt.empty;let n=t.someProp("clipboardTextParser",(n=>n(e,i,r,t)));if(n)s=n;else{let n=i.marks(),{schema:r}=t.state,s=de.fromSchema(r);o=document.createElement("div"),e.split(/(?:\r\n?|\n)+/).forEach((t=>{let e=o.appendChild(document.createElement("p"));t&&e.appendChild(s.serializeNode(r.text(t,n)))}))}}else t.someProp("transformPastedHTML",(e=>{n=e(n,t)})),o=function(t){let e=/^(\s*]*>)*/.exec(t);e&&(t=t.slice(e[0].length));let n,r=ki().createElement("div"),i=/<([a-z][^>\s]+)/i.exec(t);(n=i&&xi[i[1].toLowerCase()])&&(t=n.map((t=>"<"+t+">")).join("")+t+n.map((t=>"")).reverse().join(""));if(r.innerHTML=t,n)for(let o=0;o0;u--){let t=o.firstChild;for(;t&&1!=t.nodeType;)t=t.nextSibling;if(!t)break;o=t}if(!s){let e=t.someProp("clipboardParser")||t.someProp("domParser")||ne.fromSchema(t.state.schema);s=e.parseSlice(o,{preserveWhitespace:!(!a&&!h),context:i,ruleFromNode:t=>"BR"!=t.nodeName||t.nextSibling||!t.parentNode||mi.test(t.parentNode.nodeName)?null:{ignore:!0}})}if(h)s=function(t,e){if(!t.size)return t;let n,r=t.content.firstChild.type.schema;try{n=JSON.parse(e)}catch(l){return t}let{content:i,openStart:o,openEnd:s}=t;for(let a=n.length-2;a>=0;a-=2){let t=r.nodes[n[a]];if(!t||t.hasRequiredAttrs())break;i=dt.from(t.create(n[a+1],i)),o++,s++}return new vt(i,o,s)}(bi(s,+h[1],+h[2]),h[4]);else if(s=vt.maxOpen(function(t,e){if(t.childCount<2)return t;for(let n=e.depth;n>=0;n--){let r,i=e.node(n).contentMatchAt(e.index(n)),o=[];if(t.forEach((t=>{if(!o)return;let e,n=i.findWrapping(t.type);if(!n)return o=null;if(e=o.length&&r.length&&yi(n,r,t,o[o.length-1],0))o[o.length-1]=e;else{o.length&&(o[o.length-1]=vi(o[o.length-1],r.length));let e=gi(t,n);o.push(e),i=i.matchType(e.type),r=n}})),o)return dt.from(o)}return t}(s.content,i),!0),s.openStart||s.openEnd){let t=0,e=0;for(let n=s.content.firstChild;t{s=e(s,t)})),s}const mi=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function gi(t,e,n=0){for(let r=e.length-1;r>=n;r--)t=e[r].create(null,dt.from(t));return t}function yi(t,e,n,r,i){if(i1&&(o=0),i=n&&(l=e<0?s.contentMatchAt(0).fillBefore(l,o<=i).append(l):l.append(s.contentMatchAt(s.childCount).fillBefore(dt.empty,!0))),t.replaceChild(e<0?0:t.childCount-1,s.copy(l))}function bi(t,e,n){return e{for(let n in e)t.input.eventHandlers[n]||t.dom.addEventListener(n,t.input.eventHandlers[n]=e=>Ai(t,e))}))}function Ai(t,e){return t.someProp("handleDOMEvents",(n=>{let r=n[e.type];return!!r&&(r(t,e)||e.defaultPrevented)}))}function $i(t,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let n=e.target;n!=t.dom;n=n.parentNode)if(!n||11==n.nodeType||n.pmViewDesc&&n.pmViewDesc.stopEvent(e))return!1;return!0}function Ei(t){return{left:t.clientX,top:t.clientY}}function Pi(t,e,n,r,i){if(-1==r)return!1;let o=t.state.doc.resolve(r);for(let s=o.depth+1;s>0;s--)if(t.someProp(e,(e=>s>o.depth?e(t,n,o.nodeAfter,o.before(s),i,!0):e(t,n,o.node(s),o.before(s),i,!1))))return!0;return!1}function Ii(t,e,n){t.focused||t.focus();let r=t.state.tr.setSelection(e);"pointer"==n&&r.setMeta("pointer",!0),t.dispatch(r)}function Ri(t,e,n,r,i){return Pi(t,"handleClickOn",e,n,r)||t.someProp("handleClick",(n=>n(t,e,r)))||(i?function(t,e){if(-1==e)return!1;let n,r,i=t.state.selection;i instanceof on&&(n=i.node);let o=t.state.doc.resolve(e);for(let s=o.depth+1;s>0;s--){let t=s>o.depth?o.nodeAfter:o.node(s);if(on.isSelectable(t)){r=n&&i.$from.depth>0&&s>=i.$from.depth&&o.before(i.$from.depth+1)==i.$from.pos?o.before(i.$from.depth):o.before(s);break}}return null!=r&&(Ii(t,on.create(t.state.doc,r),"pointer"),!0)}(t,n):function(t,e){if(-1==e)return!1;let n=t.state.doc.resolve(e),r=n.nodeAfter;return!!(r&&r.isAtom&&on.isSelectable(r))&&(Ii(t,new on(n),"pointer"),!0)}(t,n))}function _i(t,e,n,r){return Pi(t,"handleDoubleClickOn",e,n,r)||t.someProp("handleDoubleClick",(n=>n(t,e,r)))}function zi(t,e,n,r){return Pi(t,"handleTripleClickOn",e,n,r)||t.someProp("handleTripleClick",(n=>n(t,e,r)))||function(t,e,n){if(0!=n.button)return!1;let r=t.state.doc;if(-1==e)return!!r.inlineContent&&(Ii(t,nn.create(r,0,r.content.size),"pointer"),!0);let i=r.resolve(e);for(let o=i.depth+1;o>0;o--){let e=o>i.depth?i.nodeAfter:i.node(o),n=i.before(o);if(e.inlineContent)Ii(t,nn.create(r,n+1,n+1+e.content.size),"pointer");else{if(!on.isSelectable(e))continue;Ii(t,on.create(r,n),"pointer")}return!0}}(t,n,r)}function ji(t){return Ji(t)}Oi.keydown=(t,e)=>{let n=e;if(t.input.shiftKey=16==n.keyCode||n.shiftKey,!Fi(t,n)&&(t.input.lastKeyCode=n.keyCode,t.input.lastKeyCodeTime=Date.now(),!Un||!qn||13!=n.keyCode))if(229!=n.keyCode&&t.domObserver.forceFlush(),!Kn||13!=n.keyCode||n.ctrlKey||n.altKey||n.metaKey)t.someProp("handleKeyDown",(e=>e(t,n)))||di(t,n)?n.preventDefault():Ni(t,"key");else{let e=Date.now();t.input.lastIOSEnter=e,t.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{t.input.lastIOSEnter==e&&(t.someProp("handleKeyDown",(e=>e(t,En(13,"Enter")))),t.input.lastIOSEnter=0)}),200)}},Oi.keyup=(t,e)=>{16==e.keyCode&&(t.input.shiftKey=!1)},Oi.keypress=(t,e)=>{let n=e;if(Fi(t,n)||!n.charCode||n.ctrlKey&&!n.altKey||Hn&&n.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,n))))return void n.preventDefault();let r=t.state.selection;if(!(r instanceof nn&&r.$from.sameParent(r.$to))){let e=String.fromCharCode(n.charCode);/[\r\n]/.test(e)||t.someProp("handleTextInput",(n=>n(t,r.$from.pos,r.$to.pos,e)))||t.dispatch(t.state.tr.insertText(e).scrollIntoView()),n.preventDefault()}};const Bi=Hn?"metaKey":"ctrlKey";Mi.mousedown=(t,e)=>{let n=e;t.input.shiftKey=n.shiftKey;let r=ji(t),i=Date.now(),o="singleClick";i-t.input.lastClick.time<500&&function(t,e){let n=e.x-t.clientX,r=e.y-t.clientY;return n*n+r*r<100}(n,t.input.lastClick)&&!n[Bi]&&("singleClick"==t.input.lastClick.type?o="doubleClick":"doubleClick"==t.input.lastClick.type&&(o="tripleClick")),t.input.lastClick={time:i,x:n.clientX,y:n.clientY,type:o};let s=t.posAtCoords(Ei(n));s&&("singleClick"==o?(t.input.mouseDown&&t.input.mouseDown.done(),t.input.mouseDown=new Vi(t,s,n,!!r)):("doubleClick"==o?_i:zi)(t,s.pos,s.inside,n)?n.preventDefault():Ni(t,"pointer"))};class Vi{constructor(t,e,n,r){let i,o;if(this.view=t,this.pos=e,this.event=n,this.flushed=r,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=t.state.doc,this.selectNode=!!n[Bi],this.allowDefault=n.shiftKey,e.inside>-1)i=t.state.doc.nodeAt(e.inside),o=e.inside;else{let n=t.state.doc.resolve(e.pos);i=n.parent,o=n.depth?n.before():0}const s=r?null:n.target,l=s?t.docView.nearestDesc(s,!0):null;this.target=l?l.dom:null;let{selection:a}=t.state;(0==n.button&&i.type.spec.draggable&&!1!==i.type.spec.selectable||a instanceof on&&a.from<=o&&a.to>o)&&(this.mightDrag={node:i,pos:o,addAttr:!(!this.target||this.target.draggable),setUneditable:!(!this.target||!Fn||this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout((()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")}),20),this.view.domObserver.start()),t.root.addEventListener("mouseup",this.up=this.up.bind(this)),t.root.addEventListener("mousemove",this.move=this.move.bind(this)),Ni(t,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout((()=>Wr(this.view))),this.view.input.mouseDown=null}up(t){if(this.done(),!this.view.dom.contains(t.target))return;let e=this.pos;this.view.state.doc!=this.startDoc&&(e=this.view.posAtCoords(Ei(t))),this.updateAllowDefault(t),this.allowDefault||!e?Ni(this.view,"pointer"):Ri(this.view,e.pos,e.inside,t,this.selectNode)?t.preventDefault():0==t.button&&(this.flushed||Jn&&this.mightDrag&&!this.mightDrag.node.isAtom||qn&&!this.view.state.selection.visible&&Math.min(Math.abs(e.pos-this.view.state.selection.from),Math.abs(e.pos-this.view.state.selection.to))<=2)?(Ii(this.view,Xe.near(this.view.state.doc.resolve(e.pos)),"pointer"),t.preventDefault()):Ni(this.view,"pointer")}move(t){this.updateAllowDefault(t),Ni(this.view,"pointer"),0==t.buttons&&this.done()}updateAllowDefault(t){!this.allowDefault&&(Math.abs(this.event.x-t.clientX)>4||Math.abs(this.event.y-t.clientY)>4)&&(this.allowDefault=!0)}}function Fi(t,e){return!!t.composing||!!(Jn&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500)&&(t.input.compositionEndedAt=-2e8,!0)}Mi.touchstart=t=>{t.input.lastTouch=Date.now(),ji(t),Ni(t,"pointer")},Mi.touchmove=t=>{t.input.lastTouch=Date.now(),Ni(t,"pointer")},Mi.contextmenu=t=>ji(t);const Li=Un?5e3:-1;function qi(t,e){clearTimeout(t.input.composingTimeout),e>-1&&(t.input.composingTimeout=setTimeout((()=>Ji(t)),e))}function Wi(t){for(t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=function(){let t=document.createEvent("Event");return t.initEvent("event",!0,!0),t.timeStamp}());t.input.compositionNodes.length>0;)t.input.compositionNodes.pop().markParentsDirty()}function Ji(t,e=!1){if(!(Un&&t.domObserver.flushingSoon>=0)){if(t.domObserver.forceFlush(),Wi(t),e||t.docView&&t.docView.dirty){let e=Lr(t);return e&&!e.eq(t.state.selection)?t.dispatch(t.state.tr.setSelection(e)):t.updateState(t.state),!0}return!1}}Oi.compositionstart=Oi.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,n=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some((t=>!1===t.type.spec.inclusive))))t.markCursor=t.state.storedMarks||n.marks(),Ji(t,!0),t.markCursor=null;else if(Ji(t),Fn&&e.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length){let e=t.domSelectionRange();for(let n=e.focusNode,r=e.focusOffset;n&&1==n.nodeType&&0!=r;){let e=r<0?n.lastChild:n.childNodes[r-1];if(!e)break;if(3==e.nodeType){t.domSelection().collapse(e,e.nodeValue.length);break}n=e,r=-1}}t.input.composing=!0}qi(t,Li)},Oi.compositionend=(t,e)=>{t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=e.timeStamp,t.input.compositionPendingChanges=t.domObserver.pendingRecords().length?t.input.compositionID:0,t.input.compositionPendingChanges&&Promise.resolve().then((()=>t.domObserver.flush())),t.input.compositionID++,qi(t,20))};const Ki=Bn&&Vn<15||Kn&&Zn<604;function Hi(t,e,n,r,i){let o=pi(t,e,n,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,i,o||vt.empty))))return!0;if(!o)return!1;let s=function(t){return 0==t.openStart&&0==t.openEnd&&1==t.content.childCount?t.content.firstChild:null}(o),l=s?t.state.tr.replaceSelectionWith(s,r):t.state.tr.replaceSelection(o);return t.dispatch(l.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}Mi.copy=Oi.cut=(t,e)=>{let n=e,r=t.state.selection,i="cut"==n.type;if(r.empty)return;let o=Ki?null:n.clipboardData,s=r.content(),{dom:l,text:a}=fi(t,s);o?(n.preventDefault(),o.clearData(),o.setData("text/html",l.innerHTML),o.setData("text/plain",a)):function(t,e){if(!t.dom.parentNode)return;let n=t.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(e),n.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),i=document.createRange();i.selectNodeContents(e),t.dom.blur(),r.removeAllRanges(),r.addRange(i),setTimeout((()=>{n.parentNode&&n.parentNode.removeChild(n),t.focus()}),50)}(t,l),i&&t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))},Oi.paste=(t,e)=>{let n=e;if(t.composing&&!Un)return;let r=Ki?null:n.clipboardData,i=t.input.shiftKey&&45!=t.input.lastKeyCode;r&&Hi(t,r.getData("text/plain"),r.getData("text/html"),i,n)?n.preventDefault():function(t,e){if(!t.dom.parentNode)return;let n=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code,r=t.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus();let i=t.input.shiftKey&&45!=t.input.lastKeyCode;setTimeout((()=>{t.focus(),r.parentNode&&r.parentNode.removeChild(r),n?Hi(t,r.value,null,i,e):Hi(t,r.textContent,r.innerHTML,i,e)}),50)}(t,n)};class Yi{constructor(t,e){this.slice=t,this.move=e}}const Ui=Hn?"altKey":"ctrlKey";Mi.dragstart=(t,e)=>{let n=e,r=t.input.mouseDown;if(r&&r.done(),!n.dataTransfer)return;let i=t.state.selection,o=i.empty?null:t.posAtCoords(Ei(n));if(o&&o.pos>=i.from&&o.pos<=(i instanceof on?i.to-1:i.to));else if(r&&r.mightDrag)t.dispatch(t.state.tr.setSelection(on.create(t.state.doc,r.mightDrag.pos)));else if(n.target&&1==n.target.nodeType){let e=t.docView.nearestDesc(n.target,!0);e&&e.node.type.spec.draggable&&e!=t.docView&&t.dispatch(t.state.tr.setSelection(on.create(t.state.doc,e.posBefore)))}let s=t.state.selection.content(),{dom:l,text:a}=fi(t,s);n.dataTransfer.clearData(),n.dataTransfer.setData(Ki?"Text":"text/html",l.innerHTML),n.dataTransfer.effectAllowed="copyMove",Ki||n.dataTransfer.setData("text/plain",a),t.dragging=new Yi(s,!n[Ui])},Mi.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{t.dragging==e&&(t.dragging=null)}),50)},Oi.dragover=Oi.dragenter=(t,e)=>e.preventDefault(),Oi.drop=(t,e)=>{let n=e,r=t.dragging;if(t.dragging=null,!n.dataTransfer)return;let i=t.posAtCoords(Ei(n));if(!i)return;let o=t.state.doc.resolve(i.pos),s=r&&r.slice;s?t.someProp("transformPasted",(e=>{s=e(s,t)})):s=pi(t,n.dataTransfer.getData(Ki?"Text":"text/plain"),Ki?null:n.dataTransfer.getData("text/html"),!1,o);let l=!(!r||n[Ui]);if(t.someProp("handleDrop",(e=>e(t,n,s||vt.empty,l))))return void n.preventDefault();if(!s)return;n.preventDefault();let a=s?function(t,e,n){let r=t.resolve(e);if(!n.content.size)return e;let i=n.content;for(let o=0;o=0;t--){let e=t==r.depth?0:r.pos<=(r.start(t+1)+r.end(t+1))/2?-1:1,n=r.index(t)+(e>0?1:0),s=r.node(t),l=!1;if(1==o)l=s.canReplace(n,n,i);else{let t=s.contentMatchAt(n).findWrapping(i.firstChild.type);l=t&&s.canReplaceWith(n,n,t[0])}if(l)return 0==e?r.pos:e<0?r.before(t+1):r.after(t+1)}return null}(t.state.doc,o.pos,s):o.pos;null==a&&(a=o.pos);let c=t.state.tr;l&&c.deleteSelection();let h=c.mapping.map(a),u=0==s.openStart&&0==s.openEnd&&1==s.content.childCount,d=c.doc;if(u?c.replaceRangeWith(h,h,s.content.firstChild):c.replaceRange(h,h,s),c.doc.eq(d))return;let f=c.doc.resolve(h);if(u&&on.isSelectable(s.content.firstChild)&&f.nodeAfter&&f.nodeAfter.sameMarkup(s.content.firstChild))c.setSelection(new on(f));else{let e=c.mapping.map(a);c.mapping.maps[c.mapping.maps.length-1].forEach(((t,n,r,i)=>e=i)),c.setSelection(Zr(t,f,c.doc.resolve(e)))}t.focus(),t.dispatch(c.setMeta("uiEvent","drop"))},Mi.focus=t=>{t.input.lastFocus=Date.now(),t.focused||(t.domObserver.stop(),t.dom.classList.add("ProseMirror-focused"),t.domObserver.start(),t.focused=!0,setTimeout((()=>{t.docView&&t.hasFocus()&&!t.domObserver.currentSelection.eq(t.domSelectionRange())&&Wr(t)}),20))},Mi.blur=(t,e)=>{let n=e;t.focused&&(t.domObserver.stop(),t.dom.classList.remove("ProseMirror-focused"),t.domObserver.start(),n.relatedTarget&&t.dom.contains(n.relatedTarget)&&t.domObserver.currentSelection.clear(),t.focused=!1)},Mi.beforeinput=(t,e)=>{if(qn&&Un&&"deleteContentBackward"==e.inputType){t.domObserver.flushSoon();let{domChangeCount:e}=t.input;setTimeout((()=>{if(t.input.domChangeCount!=e)return;if(t.dom.blur(),t.focus(),t.someProp("handleKeyDown",(e=>e(t,En(8,"Backspace")))))return;let{$cursor:n}=t.state.selection;n&&n.pos>0&&t.dispatch(t.state.tr.delete(n.pos-1,n.pos).scrollIntoView())}),50)}};for(let os in Oi)Mi[os]=Oi[os];function Gi(t,e){if(t==e)return!0;for(let n in t)if(t[n]!==e[n])return!1;for(let n in e)if(!(n in t))return!1;return!0}class Zi{constructor(t,e){this.toDOM=t,this.spec=e||no,this.side=this.spec.side||0}map(t,e,n,r){let{pos:i,deleted:o}=t.mapResult(e.from+r,this.side<0?-1:1);return o?null:new to(i-n,i-n,this)}valid(){return!0}eq(t){return this==t||t instanceof Zi&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Gi(this.spec,t.spec))}destroy(t){this.spec.destroy&&this.spec.destroy(t)}}class Xi{constructor(t,e){this.attrs=t,this.spec=e||no}map(t,e,n,r){let i=t.map(e.from+r,this.spec.inclusiveStart?-1:1)-n,o=t.map(e.to+r,this.spec.inclusiveEnd?1:-1)-n;return i>=o?null:new to(i,o,this)}valid(t,e){return e.from=t&&(!i||i(s.spec))&&n.push(s.copy(s.from+r,s.to+r))}for(let o=0;ot){let s=this.children[o]+1;this.children[o+2].findInner(t-s,e-s,n,r+s,i)}}map(t,e,n){return this==io||0==t.maps.length?this:this.mapInner(t,e,0,0,n||no)}mapInner(t,e,n,r,i){let o;for(let s=0;s{let s=o-r-(n-e);for(let a=0;ao+h-t)continue;let c=l[a]+h-t;n>=c?l[a+1]=e<=c?-2:-1:r>=i&&s&&(l[a]+=s,l[a+1]+=s)}t+=s})),h=n.maps[c].map(h,-1)}let a=!1;for(let c=0;c=r.content.size){a=!0;continue}let u=n.map(t[c+1]+o,-1)-i,{index:d,offset:f}=r.content.findIndex(h),p=r.maybeChild(d);if(p&&f==h&&f+p.nodeSize==u){let r=l[c+2].mapInner(n,p,e+1,t[c]+o+1,s);r!=io?(l[c]=h,l[c+1]=u,l[c+2]=r):(l[c+1]=-2,a=!0)}else a=!0}if(a){let a=function(t,e,n,r,i,o,s){function l(t,e){for(let o=0;o{let s,l=o+n;if(s=lo(e,t,l)){for(r||(r=this.children.slice());io&&e.to=t){this.children[s]==t&&(n=this.children[s+2]);break}let i=t+1,o=i+e.content.size;for(let s=0;si&&t.type instanceof Xi){let e=Math.max(i,t.from)-i,n=Math.min(o,t.to)-i;en.map(t,e,no)));return oo.from(n)}forChild(t,e){if(e.isLeaf)return ro.empty;let n=[];for(let r=0;rt instanceof ro))?t:t.reduce(((t,e)=>t.concat(e instanceof ro?e:e.members)),[]))}}}function so(t,e){if(!e||!t.length)return t;let n=[];for(let r=0;rn&&o.to{let l=lo(t,e,s+n);if(l){o=!0;let t=co(l,e,n+s+1,r);t!=io&&i.push(s,s+e.nodeSize,t)}}));let s=so(o?ao(t):t,-n).sort(ho);for(let l=0;l0;)e++;t.splice(e,0,n)}function po(t){let e=[];return t.someProp("decorations",(n=>{let r=n(t.state);r&&r!=io&&e.push(r)})),t.cursorWrapper&&e.push(ro.create(t.state.doc,[t.cursorWrapper.deco])),oo.from(e)}const mo={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},go=Bn&&Vn<=11;class yo{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(t){this.anchorNode=t.anchorNode,this.anchorOffset=t.anchorOffset,this.focusNode=t.focusNode,this.focusOffset=t.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(t){return t.anchorNode==this.anchorNode&&t.anchorOffset==this.anchorOffset&&t.focusNode==this.focusNode&&t.focusOffset==this.focusOffset}}class vo{constructor(t,e){this.view=t,this.handleDOMChange=e,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new yo,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.observer=window.MutationObserver&&new window.MutationObserver((t=>{for(let e=0;e"childList"==t.type&&t.removedNodes.length||"characterData"==t.type&&t.oldValue.length>t.target.nodeValue.length))?this.flushSoon():this.flush()})),go&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout((()=>{this.flushingSoon=-1,this.flush()}),20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,mo)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let t=this.observer.takeRecords();if(t.length){for(let e=0;ethis.flush()),20)}this.observer.disconnect()}this.onCharData&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=!0,setTimeout((()=>this.suppressingSelectionUpdates=!1),50)}onSelectionChange(){if(Xr(this.view)){if(this.suppressingSelectionUpdates)return Wr(this.view);if(Bn&&Vn<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&Cn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(t){if(!t.focusNode)return!0;let e,n=new Set;for(let i=t.focusNode;i;i=kn(i))n.add(i);for(let i=t.anchorNode;i;i=kn(i))if(n.has(i)){e=i;break}let r=e&&this.view.docView.nearestDesc(e);return r&&r.ignoreMutation({type:"selection",target:3==e.nodeType?e.parentNode:e})?(this.setCurSelection(),!0):void 0}pendingRecords(){if(this.observer)for(let t of this.observer.takeRecords())this.queue.push(t);return this.queue}flush(){let{view:t}=this;if(!t.docView||this.flushingSoon>-1)return;let e=this.pendingRecords();e.length&&(this.queue=[]);let n=t.domSelectionRange(),r=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(n)&&Xr(t)&&!this.ignoreSelectionChange(n),i=-1,o=-1,s=!1,l=[];if(t.editable)for(let c=0;c1){let t=l.filter((t=>"BR"==t.nodeName));if(2==t.length){let e=t[0],n=t[1];e.parentNode&&e.parentNode.parentNode==n.parentNode?n.remove():e.remove()}}let a=null;i<0&&r&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)-1||r)&&(i>-1&&(t.docView.markDirty(i,o),function(t){if(wo.has(t))return;if(wo.set(t,null),-1!==["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)){if(t.requiresGeckoHackNode=Fn,bo)return;console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package."),bo=!0}}(t)),this.handleDOMChange(i,o,s,l),t.docView&&t.docView.dirty?t.updateState(t.state):this.currentSelection.eq(n)||Wr(t),this.currentSelection.set(n))}registerMutation(t,e){if(e.indexOf(t.target)>-1)return null;let n=this.view.docView.nearestDesc(t.target);if("attributes"==t.type&&(n==this.view.docView||"contenteditable"==t.attributeName||"style"==t.attributeName&&!t.oldValue&&!t.target.getAttribute("style")))return null;if(!n||n.ignoreMutation(t))return null;if("childList"==t.type){for(let n=0;nDate.now()-50?t.input.lastSelectionOrigin:null,n=Lr(t,e);if(n&&!t.state.selection.eq(n)){if(qn&&Un&&13===t.input.lastKeyCode&&Date.now()-100e(t,En(13,"Enter")))))return;let r=t.state.tr.setSelection(n);"pointer"==e?r.setMeta("pointer",!0):"key"==e&&r.scrollIntoView(),o&&r.setMeta("composition",o),t.dispatch(r)}return}let s=t.state.doc.resolve(e),l=s.sharedDepth(n);e=s.before(l+1),n=t.state.doc.resolve(n).after(l+1);let a,c,h=t.state.selection,u=function(t,e,n){let r,{node:i,fromOffset:o,toOffset:s,from:l,to:a}=t.docView.parseRange(e,n),c=t.domSelectionRange(),h=c.anchorNode;if(h&&t.dom.contains(1==h.nodeType?h:h.parentNode)&&(r=[{node:h,offset:c.anchorOffset}],$n(c)||r.push({node:c.focusNode,offset:c.focusOffset})),qn&&8===t.input.lastKeyCode)for(let g=s;g>o;g--){let t=i.childNodes[g-1],e=t.pmViewDesc;if("BR"==t.nodeName&&!e){s=g;break}if(!e||e.size)break}let u=t.state.doc,d=t.someProp("domParser")||ne.fromSchema(t.state.schema),f=u.resolve(l),p=null,m=d.parse(i,{topNode:f.parent,topMatch:f.parent.contentMatchAt(f.index()),topOpen:!0,from:o,to:s,preserveWhitespace:"pre"!=f.parent.type.whitespace||"full",findPositions:r,ruleFromNode:xo,context:f});if(r&&null!=r[0].pos){let t=r[0].pos,e=r[1]&&r[1].pos;null==e&&(e=t),p={anchor:t+l,head:e+l}}return{doc:m,sel:p,from:l,to:a}}(t,e,n),d=t.state.doc,f=d.slice(u.from,u.to);8===t.input.lastKeyCode&&Date.now()-100=s?o-r:0,l=o+(l-s),s=o}else if(l=l?o-r:0,s=o+(s-l),l=o}return{start:o,endA:s,endB:l}}(f.content,u.doc.content,u.from,a,c);if((Kn&&t.input.lastIOSEnter>Date.now()-225||Un)&&i.some((t=>1==t.nodeType&&!So.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,En(13,"Enter")))))return void(t.input.lastIOSEnter=0);if(!p){if(!(r&&h instanceof nn&&!h.empty&&h.$head.sameParent(h.$anchor))||t.composing||u.sel&&u.sel.anchor!=u.sel.head){if(u.sel){let e=Mo(t,t.state.doc,u.sel);if(e&&!e.eq(t.state.selection)){let n=t.state.tr.setSelection(e);o&&n.setMeta("composition",o),t.dispatch(n)}}return}p={start:h.from,endA:h.to,endB:h.to}}if(qn&&t.cursorWrapper&&u.sel&&u.sel.anchor==t.cursorWrapper.deco.from&&u.sel.head==u.sel.anchor){let t=p.endB-p.start;u.sel={anchor:u.sel.anchor+t,head:u.sel.anchor+t}}t.input.domChangeCount++,t.state.selection.fromt.state.selection.from&&p.start<=t.state.selection.from+2&&t.state.selection.from>=u.from?p.start=t.state.selection.from:p.endA=t.state.selection.to-2&&t.state.selection.to<=u.to&&(p.endB+=t.state.selection.to-p.endA,p.endA=t.state.selection.to)),Bn&&Vn<=11&&p.endB==p.start+1&&p.endA==p.start&&p.start>u.from&&"  "==u.doc.textBetween(p.start-u.from-1,p.start-u.from+1)&&(p.start--,p.endA--,p.endB--);let m,g=u.doc.resolveNoCache(p.start-u.from),y=u.doc.resolveNoCache(p.endB-u.from),v=d.resolve(p.start),w=g.sameParent(y)&&g.parent.inlineContent&&v.end()>=p.endA;if((Kn&&t.input.lastIOSEnter>Date.now()-225&&(!w||i.some((t=>"DIV"==t.nodeName||"P"==t.nodeName)))||!w&&g.pose(t,En(13,"Enter")))))return void(t.input.lastIOSEnter=0);if(t.state.selection.anchor>p.start&&function(t,e,n,r,i){if(!r.parent.isTextblock||n-e<=i.pos-r.pos||Oo(r,!0,!1)n||Oo(s,!0,!1)e(t,En(8,"Backspace")))))return void(Un&&qn&&t.domObserver.suppressSelectionUpdates());qn&&Un&&p.endB==p.start&&(t.input.lastAndroidDelete=Date.now()),Un&&!w&&g.start()!=y.start()&&0==y.parentOffset&&g.depth==y.depth&&u.sel&&u.sel.anchor==u.sel.head&&u.sel.head==p.endA&&(p.endB-=2,y=u.doc.resolveNoCache(p.endB-u.from),setTimeout((()=>{t.someProp("handleKeyDown",(function(e){return e(t,En(13,"Enter"))}))}),20));let b,x,S,k=p.start,M=p.endA;if(w)if(g.pos==y.pos)Bn&&Vn<=11&&0==g.parentOffset&&(t.domObserver.suppressSelectionUpdates(),setTimeout((()=>Wr(t)),20)),b=t.state.tr.delete(k,M),x=d.resolve(p.start).marksAcross(d.resolve(p.endA));else if(p.endA==p.endB&&(S=function(t,e){let n,r,i,o=t.firstChild.marks,s=e.firstChild.marks,l=o,a=s;for(let h=0;ht.mark(r.addToSet(t.marks));else{if(0!=l.length||1!=a.length)return null;r=a[0],n="remove",i=t=>t.mark(r.removeFromSet(t.marks))}let c=[];for(let h=0;hn(t,k,M,e))))return;b=t.state.tr.insertText(e,k,M)}if(b||(b=t.state.tr.replace(k,M,u.doc.slice(p.start-u.from,p.endB-u.from))),u.sel){let e=Mo(t,b.doc,u.sel);e&&!(qn&&Un&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDeletee.content.size?null:Zr(t,e.resolve(n.anchor),e.resolve(n.head))}function Oo(t,e,n){let r=t.depth,i=e?t.end():t.pos;for(;r>0&&(e||t.indexAfter(r)==t.node(r).childCount);)r--,i++,e=!1;if(n){let e=t.node(r).maybeChild(t.indexAfter(r));for(;e&&!e.isLeaf;)e=e.firstChild,i++}return i}class Co{constructor(t,e){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new Di,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=e,this.state=e.state,this.directPlugins=e.plugins||[],this.directPlugins.forEach($o),this.dispatch=this.dispatch.bind(this),this.dom=t&&t.mount||document.createElement("div"),t&&(t.appendChild?t.appendChild(this.dom):"function"==typeof t?t(this.dom):t.mount&&(this.mounted=!0)),this.editable=To(this),No(this),this.nodeViews=Ao(this),this.docView=Cr(this.state.doc,Do(this),po(this),this.dom,this),this.domObserver=new vo(this,((t,e,n,r)=>ko(this,t,e,n,r))),this.domObserver.start(),function(t){for(let e in Mi){let n=Mi[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{!$i(t,e)||Ai(t,e)||!t.editable&&e.type in Oi||n(t,e)},Ci[e]?{passive:!0}:void 0)}Jn&&t.dom.addEventListener("input",(()=>null)),Ti(t)}(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let t=this._props;this._props={};for(let e in t)this._props[e]=t[e];this._props.state=this.state}return this._props}update(t){t.handleDOMEvents!=this._props.handleDOMEvents&&Ti(this);let e=this._props;this._props=t,t.plugins&&(t.plugins.forEach($o),this.directPlugins=t.plugins),this.updateStateInner(t.state,e)}setProps(t){let e={};for(let n in this._props)e[n]=this._props[n];e.state=this.state;for(let n in t)e[n]=t[n];this.update(e)}updateState(t){this.updateStateInner(t,this._props)}updateStateInner(t,e){let n=this.state,r=!1,i=!1;t.storedMarks&&this.composing&&(Wi(this),i=!0),this.state=t;let o=n.plugins!=t.plugins||this._props.plugins!=e.plugins;if(o||this._props.plugins!=e.plugins||this._props.nodeViews!=e.nodeViews){let t=Ao(this);(function(t,e){let n=0,r=0;for(let i in t){if(t[i]!=e[i])return!0;n++}for(let i in e)r++;return n!=r})(t,this.nodeViews)&&(this.nodeViews=t,r=!0)}(o||e.handleDOMEvents!=this._props.handleDOMEvents)&&Ti(this),this.editable=To(this),No(this);let s=po(this),l=Do(this),a=n.plugins==t.plugins||n.doc.eq(t.doc)?t.scrollToSelection>n.scrollToSelection?"to selection":"preserve":"reset",c=r||!this.docView.matchesNode(t.doc,l,s);!c&&t.selection.eq(n.selection)||(i=!0);let h="preserve"==a&&i&&null==this.dom.style.overflowAnchor&&function(t){let e,n,r=t.dom.getBoundingClientRect(),i=Math.max(0,r.top);for(let o=(r.left+r.right)/2,s=i+1;s=i-20){e=r,n=l.top;break}}return{refDOM:e,refTop:n,stack:nr(t.dom)}}(this);if(i){this.domObserver.stop();let e=c&&(Bn||qn)&&!this.composing&&!n.selection.empty&&!t.selection.empty&&function(t,e){let n=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(n)!=e.$anchor.start(n)}(n.selection,t.selection);if(c){let n=qn?this.trackWrites=this.domSelectionRange().focusNode:null;!r&&this.docView.update(t.doc,l,s,this)||(this.docView.updateOuterDeco([]),this.docView.destroy(),this.docView=Cr(t.doc,l,s,this.dom,this)),n&&!this.trackWrites&&(e=!0)}e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&function(t){let e=t.docView.domFromPos(t.state.selection.anchor,0),n=t.domSelectionRange();return Cn(e.node,e.offset,n.anchorNode,n.anchorOffset)}(this))?Wr(this,e):(Ur(this,t.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(n),"reset"==a?this.dom.scrollTop=0:"to selection"==a?this.scrollToSelection():h&&function({refDOM:t,refTop:e,stack:n}){let r=t?t.getBoundingClientRect().top:0;rr(n,0==r?0:r-e)}(h)}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof on){let e=this.docView.domAfterPos(this.state.selection.from);1==e.nodeType&&er(this,e.getBoundingClientRect(),t)}else er(this,this.coordsAtPos(this.state.selection.head,1),t)}destroyPluginViews(){let t;for(;t=this.pluginViews.pop();)t.destroy&&t.destroy()}updatePluginViews(t){if(t&&t.plugins==this.state.plugins&&this.directPlugins==this.prevDirectPlugins)for(let e=0;ee.ownerDocument.getSelection()),this._root=e;return t||document}updateRoot(){this._root=null}posAtCoords(t){return ar(this,t)}coordsAtPos(t,e=1){return dr(this,t,e)}domAtPos(t,e=0){return this.docView.domFromPos(t,e)}nodeDOM(t){let e=this.docView.descAt(t);return e?e.nodeDOM:null}posAtDOM(t,e,n=-1){let r=this.docView.posFromDOM(t,e,n);if(null==r)throw new RangeError("DOM position not inside the editor");return r}endOfTextblock(t,e){return br(this,e||this.state,t)}pasteHTML(t,e){return Hi(this,"",t,!1,e||new ClipboardEvent("paste"))}pasteText(t,e){return Hi(this,t,null,!0,e||new ClipboardEvent("paste"))}destroy(){this.docView&&(!function(t){t.domObserver.stop();for(let e in t.input.eventHandlers)t.dom.removeEventListener(e,t.input.eventHandlers[e]);clearTimeout(t.input.composingTimeout),clearTimeout(t.input.lastIOSEnterFallbackTimeout)}(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],po(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null)}get isDestroyed(){return null==this.docView}dispatchEvent(t){return function(t,e){Ai(t,e)||!Mi[e.type]||!t.editable&&e.type in Oi||Mi[e.type](t,e)}(this,t)}dispatch(t){let e=this._props.dispatchTransaction;e?e.call(this,t):this.updateState(this.state.apply(t))}domSelectionRange(){return Jn&&11===this.root.nodeType&&function(t){let e=t.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}(this.dom.ownerDocument)==this.dom?function(t){let e;function n(t){t.preventDefault(),t.stopImmediatePropagation(),e=t.getTargetRanges()[0]}t.dom.addEventListener("beforeinput",n,!0),document.execCommand("indent"),t.dom.removeEventListener("beforeinput",n,!0);let r=e.startContainer,i=e.startOffset,o=e.endContainer,s=e.endOffset,l=t.domAtPos(t.state.selection.anchor);return Cn(l.node,l.offset,o,s)&&([r,i,o,s]=[o,s,r,i]),{anchorNode:r,anchorOffset:i,focusNode:o,focusOffset:s}}(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function Do(t){let e=Object.create(null);return e.class="ProseMirror",e.contenteditable=String(t.editable),t.someProp("attributes",(n=>{if("function"==typeof n&&(n=n(t.state)),n)for(let t in n)"class"==t?e.class+=" "+n[t]:"style"==t?e.style=(e.style?e.style+";":"")+n[t]:e[t]||"contenteditable"==t||"nodeName"==t||(e[t]=String(n[t]))})),e.translate||(e.translate="no"),[to.node(0,t.state.doc.content.size,e)]}function No(t){if(t.markCursor){let e=document.createElement("img");e.className="ProseMirror-separator",e.setAttribute("mark-placeholder","true"),e.setAttribute("alt",""),t.cursorWrapper={dom:e,deco:to.widget(t.state.selection.head,e,{raw:!0,marks:t.markCursor})}}else t.cursorWrapper=null}function To(t){return!t.someProp("editable",(e=>!1===e(t.state)))}function Ao(t){let e=Object.create(null);function n(t){for(let n in t)Object.prototype.hasOwnProperty.call(e,n)||(e[n]=t[n])}return t.someProp("nodeViews",n),t.someProp("markViews",n),e}function $o(t){if(t.spec.state||t.spec.filterTransaction||t.spec.appendTransaction)throw new RangeError("Plugins passed directly to the view must not have a state component")}for(var Eo={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Po={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Io="undefined"!=typeof navigator&&/Chrome\/(\d+)/.exec(navigator.userAgent),Ro="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),_o="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),zo=Ro||Io&&+Io[1]<57,jo=0;jo<10;jo++)Eo[48+jo]=Eo[96+jo]=String(jo);for(jo=1;jo<=24;jo++)Eo[jo+111]="F"+jo;for(jo=65;jo<=90;jo++)Eo[jo]=String.fromCharCode(jo+32),Po[jo]=String.fromCharCode(jo);for(var Bo in Eo)Po.hasOwnProperty(Bo)||(Po[Bo]=Eo[Bo]);const Vo="undefined"!=typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);function Fo(t){let e,n,r,i,o=t.split(/-(?!$)/),s=o[o.length-1];"Space"==s&&(s=" ");for(let l=0;l127)&&(r=Eo[n.keyCode])&&r!=i){let i=e[Lo(r,n)];if(i&&i(t.state,t.dispatch,t))return!0}}return!1}}const Jo=(t,e)=>!t.selection.empty&&(e&&e(t.tr.deleteSelection().scrollIntoView()),!0);function Ko(t,e,n=!1){for(let r=t;r;r="start"==e?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&1!=r.childCount)return!1}return!1}function Ho(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){if(t.index(e)>0)return t.doc.resolve(t.before(e+1));if(t.node(e).type.spec.isolating)break}return null}function Yo(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let n=t.node(e);if(t.index(e)+1{let{$from:n,$to:r}=t.selection,i=n.blockRange(r),o=i&&Ee(i);return null!=o&&(e&&e(t.tr.lift(i,o).scrollIntoView()),!0)};function Go(t){for(let e=0;e{let{$head:n,$anchor:r}=t.selection;if(!n.parent.type.spec.code||!n.sameParent(r))return!1;let i=n.node(-1),o=n.indexAfter(-1),s=Go(i.contentMatchAt(o));if(!s||!i.canReplaceWith(o,o,s))return!1;if(e){let r=n.after(),i=t.tr.replaceWith(r,r,s.createAndFill());i.setSelection(Xe.near(i.doc.resolve(r),1)),e(i.scrollIntoView())}return!0};const Xo=(t,e)=>{let{$from:n,$to:r}=t.selection;if(t.selection instanceof on&&t.selection.node.isBlock)return!(!n.parentOffset||!Re(t.doc,n.pos)||(e&&e(t.tr.split(n.pos).scrollIntoView()),0));if(!n.parent.isBlock)return!1;if(e){let i=r.parentOffset==r.parent.content.size,o=t.tr;(t.selection instanceof nn||t.selection instanceof ln)&&o.deleteSelection();let s=0==n.depth?null:Go(n.node(-1).contentMatchAt(n.indexAfter(-1))),l=Qo&&Qo(r.parent,i),a=l?[l]:i&&s?[{type:s}]:void 0,c=Re(o.doc,o.mapping.map(n.pos),1,a);if(a||c||!Re(o.doc,o.mapping.map(n.pos),1,s?[{type:s}]:void 0)||(s&&(a=[{type:s}]),c=!0),c&&(o.split(o.mapping.map(n.pos),1,a),!i&&!n.parentOffset&&n.parent.type!=s)){let t=o.mapping.map(n.before()),e=o.doc.resolve(t);s&&n.node(-1).canReplaceWith(e.index(),e.index()+1,s)&&o.setNodeMarkup(o.mapping.map(n.before()),s)}e(o.scrollIntoView())}return!0};var Qo;function ts(t,e,n){let r,i,o=e.nodeBefore,s=e.nodeAfter;if(o.type.spec.isolating||s.type.spec.isolating)return!1;if(function(t,e,n){let r=e.nodeBefore,i=e.nodeAfter,o=e.index();return!(!(r&&i&&r.type.compatibleContent(i.type))||(!r.content.size&&e.parent.canReplace(o-1,o)?(n&&n(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView()),0):!e.parent.canReplace(o,o+1)||!i.isTextblock&&!_e(t.doc,e.pos)||(n&&n(t.tr.clearIncompatible(e.pos,r.type,r.contentMatchAt(r.childCount)).join(e.pos).scrollIntoView()),0)))}(t,e,n))return!0;let l=e.parent.canReplace(e.index(),e.index()+1);if(l&&(r=(i=o.contentMatchAt(o.childCount)).findWrapping(s.type))&&i.matchType(r[0]||s.type).validEnd){if(n){let i=e.pos+s.nodeSize,l=dt.empty;for(let t=r.length-1;t>=0;t--)l=dt.from(r[t].create(null,l));l=dt.from(o.copy(l));let a=t.tr.step(new Te(e.pos-1,i,e.pos,i,new vt(l,1,0),r.length,!0)),c=i+2*r.length;_e(a.doc,c)&&a.join(c),n(a.scrollIntoView())}return!0}let a=Xe.findFrom(e,1),c=a&&a.$from.blockRange(a.$to),h=c&&Ee(c);if(null!=h&&h>=e.depth)return n&&n(t.tr.lift(c,h).scrollIntoView()),!0;if(l&&Ko(s,"start",!0)&&Ko(o,"end")){let r=o,i=[];for(;i.push(r),!r.isTextblock;)r=r.lastChild;let l=s,a=1;for(;!l.isTextblock;l=l.firstChild)a++;if(r.canReplace(r.childCount,r.childCount,l.content)){if(n){let r=dt.empty;for(let t=i.length-1;t>=0;t--)r=dt.from(i[t].copy(r));n(t.tr.step(new Te(e.pos-i.length,e.pos+s.nodeSize,e.pos+a,e.pos+s.nodeSize-a,new vt(r,i.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function es(t){return function(e,n){let r=e.selection,i=t<0?r.$from:r.$to,o=i.depth;for(;i.node(o).isInline;){if(!o)return!1;o--}return!!i.node(o).isTextblock&&(n&&n(e.tr.setSelection(nn.create(e.doc,t<0?i.start(o):i.end(o)))),!0)}}const ns=es(-1),rs=es(1);function is(t,e=null){return function(n,r){let{$from:i,$to:o}=n.selection,s=i.blockRange(o),l=s&&Pe(s,t,e);return!!l&&(r&&r(n.tr.wrap(s,l).scrollIntoView()),!0)}}function ss(t,e=null){return function(n,r){let i=!1;for(let o=0;o{if(i)return!1;if(r.isTextblock&&!r.hasMarkup(t,e))if(r.type==t)i=!0;else{let e=n.doc.resolve(o),r=e.index();i=e.parent.canReplaceWith(r,r+1,t)}}))}if(!i)return!1;if(r){let i=n.tr;for(let r=0;r{if(s)return!1;s=t.inlineContent&&t.type.allowsMarkType(n)})),s)return!0}return!1}(n.doc,s,t))return!1;if(r)if(o)t.isInSet(n.storedMarks||o.marks())?r(n.tr.removeStoredMark(t)):r(n.tr.addStoredMark(t.create(e)));else{let i=!1,o=n.tr;for(let e=0;!i&&e{let r=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("backward",t):n.parentOffset>0)?null:n}(t,n);if(!r)return!1;let i=Ho(r);if(!i){let n=r.blockRange(),i=n&&Ee(n);return null!=i&&(e&&e(t.tr.lift(n,i).scrollIntoView()),!0)}let o=i.nodeBefore;if(!o.type.spec.isolating&&ts(t,i,e))return!0;if(0==r.parent.content.size&&(Ko(o,"end")||on.isSelectable(o))){let n=ze(t.doc,r.before(),r.after(),vt.empty);if(n&&n.slice.size{let{$head:r,empty:i}=t.selection,o=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("backward",t):r.parentOffset>0)return!1;o=Ho(r)}let s=o&&o.nodeBefore;return!(!s||!on.isSelectable(s))&&(e&&e(t.tr.setSelection(on.create(t.doc,o.pos-s.nodeSize)).scrollIntoView()),!0)})),hs=as(Jo,((t,e,n)=>{let r=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("forward",t):n.parentOffset{let{$head:r,empty:i}=t.selection,o=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("forward",t):r.parentOffset{let{$head:n,$anchor:r}=t.selection;return!(!n.parent.type.spec.code||!n.sameParent(r))&&(e&&e(t.tr.insertText("\n").scrollIntoView()),!0)}),((t,e)=>{let n=t.selection,{$from:r,$to:i}=n;if(n instanceof ln||r.parent.inlineContent||i.parent.inlineContent)return!1;let o=Go(i.parent.contentMatchAt(i.indexAfter()));if(!o||!o.isTextblock)return!1;if(e){let n=(!r.parentOffset&&i.index(){let{$cursor:n}=t.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let r=n.before();if(Re(t.doc,r))return e&&e(t.tr.split(r).scrollIntoView()),!0}let r=n.blockRange(),i=r&&Ee(r);return null!=i&&(e&&e(t.tr.lift(r,i).scrollIntoView()),!0)}),Xo),"Mod-Enter":Zo,Backspace:cs,"Mod-Backspace":cs,"Shift-Backspace":cs,Delete:hs,"Mod-Delete":hs,"Mod-a":(t,e)=>(e&&e(t.tr.setSelection(new ln(t.doc))),!0)},ds={"Ctrl-h":us.Backspace,"Alt-Backspace":us["Mod-Backspace"],"Ctrl-d":us.Delete,"Ctrl-Alt-Backspace":us["Mod-Delete"],"Alt-Delete":us["Mod-Delete"],"Alt-d":us["Mod-Delete"],"Ctrl-a":ns,"Ctrl-e":rs};for(let os in us)ds[os]=us[os];const fs=("undefined"!=typeof navigator?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!("undefined"==typeof os||!os.platform)&&"darwin"==os.platform())?ds:us;class ps{constructor(t,e){var n;this.match=t,this.match=t,this.handler="string"==typeof e?(n=e,function(t,e,r,i){let o=n;if(e[1]){let t=e[0].lastIndexOf(e[1]);o+=e[0].slice(t+e[1].length);let n=(r+=t)-i;n>0&&(o=e[0].slice(t-n,t)+o,r=i)}return t.tr.insertText(o,r,i)}):e}}const ms=500;function gs({rules:t}){let e=new vn({state:{init:()=>null,apply(t,e){let n=t.getMeta(this);return n||(t.selectionSet||t.docChanged?null:e)}},props:{handleTextInput:(n,r,i,o)=>ys(n,r,i,o,t,e),handleDOMEvents:{compositionend:n=>{setTimeout((()=>{let{$cursor:r}=n.state.selection;r&&ys(n,r.pos,r.pos,"",t,e)}))}}},isInputRules:!0});return e}function ys(t,e,n,r,i,o){if(t.composing)return!1;let s=t.state,l=s.doc.resolve(e);if(l.parent.type.spec.code)return!1;let a=l.parent.textBetween(Math.max(0,l.parentOffset-ms),l.parentOffset,null,"")+r;for(let c=0;c{let n=t.plugins;for(let r=0;r=0;t--)n.step(r.steps[t].invert(r.docs[t]));if(i.text){let e=n.doc.resolve(i.from).marks();n.replaceWith(i.from,i.to,t.schema.text(i.text,e))}else n.delete(i.from,i.to);e(n)}return!0}}return!1};function ws(t,e,n=null,r){return new ps(t,((t,i,o,s)=>{let l=n instanceof Function?n(i):n,a=t.tr.delete(o,s),c=a.doc.resolve(o).blockRange(),h=c&&Pe(c,e,l);if(!h)return null;a.wrap(c,h);let u=a.doc.resolve(o-1).nodeBefore;return u&&u.type==e&&_e(a.doc,o-1)&&(!r||r(i,u))&&a.join(o-1),a}))}function bs(t,e,n=null){return new ps(t,((t,r,i,o)=>{let s=t.doc.resolve(i),l=n instanceof Function?n(r):n;return s.node(-1).canReplaceWith(s.index(-1),s.indexAfter(-1),e)?t.tr.delete(i,o).setBlockType(i,i,e,l):null}))}const xs=["ol",0],Ss=["ul",0],ks=["li",0],Ms={attrs:{order:{default:1}},parseDOM:[{tag:"ol",getAttrs:t=>({order:t.hasAttribute("start")?+t.getAttribute("start"):1})}],toDOM:t=>1==t.attrs.order?xs:["ol",{start:t.attrs.order},0]},Os={parseDOM:[{tag:"ul"}],toDOM:()=>Ss},Cs={parseDOM:[{tag:"li"}],toDOM:()=>ks,defining:!0};function Ds(t,e){let n={};for(let r in t)n[r]=t[r];for(let r in e)n[r]=e[r];return n}function Ns(t,e,n){return t.append({ordered_list:Ds(Ms,{content:"list_item+",group:n}),bullet_list:Ds(Os,{content:"list_item+",group:n}),list_item:Ds(Cs,{content:e})})}function Ts(t,e=null){return function(n,r){let{$from:i,$to:o}=n.selection,s=i.blockRange(o),l=!1,a=s;if(!s)return!1;if(s.depth>=2&&i.node(s.depth-1).type.compatibleContent(t)&&0==s.startIndex){if(0==i.index(s.depth-1))return!1;let t=n.doc.resolve(s.start-2);a=new It(t,t,s.depth),s.endIndex=0;h--)o=dt.from(n[h].type.create(n[h].attrs,o));t.step(new Te(e.start-(r?2:0),e.end,e.start,e.end,new vt(o,0,0),n.length,!0));let s=0;for(let h=0;h=i.depth-3;t--)e=dt.from(i.node(t).copy(e));let s=i.indexAfter(-1){if(c>-1)return!1;t.isTextblock&&0==t.content.size&&(c=e+1)})),c>-1&&a.setSelection(Xe.near(a.doc.resolve(c))),r(a.scrollIntoView())}return!0}let a=o.pos==i.end()?l.contentMatchAt(0).defaultType:null,c=n.tr.delete(i.pos,o.pos),h=a?[e?{type:t,attrs:e}:null,{type:a}]:void 0;return!!Re(c.doc,i.pos,2,h)&&(r&&r(c.split(i.pos,2,h).scrollIntoView()),!0)}}function $s(t){return function(e,n){let{$from:r,$to:i}=e.selection,o=r.blockRange(i,(e=>e.childCount>0&&e.firstChild.type==t));return!!o&&(!n||(r.node(o.depth-1).type==t?function(t,e,n,r){let i=t.tr,o=r.end,s=r.$to.end(r.depth);om;p--)f-=i.child(p).nodeSize,r.delete(f-1,f+1);let o=r.doc.resolve(n.start),s=o.nodeAfter;if(r.mapping.map(n.end)!=n.start+o.nodeAfter.nodeSize)return!1;let l=0==n.startIndex,a=n.endIndex==i.childCount,c=o.node(-1),h=o.index(-1);if(!c.canReplace(h+(l?0:1),h+1,s.content.append(a?dt.empty:dt.from(i))))return!1;let u=o.pos,d=u+s.nodeSize;return r.step(new Te(u-(l?1:0),d+(a?1:0),u+1,d-1,new vt((l?dt.empty:dt.from(i.copy(dt.empty))).append(a?dt.empty:dt.from(i.copy(dt.empty))),l?0:1,a?0:1),l?0:1)),e(r.scrollIntoView()),!0}(e,n,o)))}}function Es(t){return function(e,n){let{$from:r,$to:i}=e.selection,o=r.blockRange(i,(e=>e.childCount>0&&e.firstChild.type==t));if(!o)return!1;let s=o.startIndex;if(0==s)return!1;let l=o.parent,a=l.child(s-1);if(a.type!=t)return!1;if(n){let r=a.lastChild&&a.lastChild.type==l.type,i=dt.from(r?t.create():null),s=new vt(dt.from(t.create(null,dt.from(l.type.create(null,i)))),r?3:1,0),c=o.start,h=o.end;n(e.tr.step(new Te(c-(r?3:1),h,c,h,s,1,!0)).scrollIntoView())}return!0}}var Ps=200,Is=function(){};Is.prototype.append=function(t){return t.length?(t=Is.from(t),!this.length&&t||t.length=e?Is.empty:this.sliceInner(Math.max(0,t),Math.min(this.length,e))},Is.prototype.get=function(t){if(!(t<0||t>=this.length))return this.getInner(t)},Is.prototype.forEach=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length),e<=n?this.forEachInner(t,e,n,0):this.forEachInvertedInner(t,e,n,0)},Is.prototype.map=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length);var r=[];return this.forEach((function(e,n){return r.push(t(e,n))}),e,n),r},Is.from=function(t){return t instanceof Is?t:t&&t.length?new Rs(t):Is.empty};var Rs=function(t){function e(e){t.call(this),this.values=e}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(t,n){return 0==t&&n==this.length?this:new e(this.values.slice(t,n))},e.prototype.getInner=function(t){return this.values[t]},e.prototype.forEachInner=function(t,e,n,r){for(var i=e;i=n;i--)if(!1===t(this.values[i],r+i))return!1},e.prototype.leafAppend=function(t){if(this.length+t.length<=Ps)return new e(this.values.concat(t.flatten()))},e.prototype.leafPrepend=function(t){if(this.length+t.length<=Ps)return new e(t.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(e.prototype,n),e}(Is);Is.empty=new Rs([]);var _s=function(t){function e(e,n){t.call(this),this.left=e,this.right=n,this.length=e.length+n.length,this.depth=Math.max(e.depth,n.depth)+1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(t){return ti&&!1===this.right.forEachInner(t,Math.max(e-i,0),Math.min(this.length,n)-i,r+i))&&void 0)},e.prototype.forEachInvertedInner=function(t,e,n,r){var i=this.left.length;return!(e>i&&!1===this.right.forEachInvertedInner(t,e-i,Math.max(n,i)-i,r+i))&&(!(n=n?this.right.slice(t-n,e-n):this.left.slice(t,n).append(this.right.slice(0,e-n))},e.prototype.leafAppend=function(t){var n=this.right.leafAppend(t);if(n)return new e(this.left,n)},e.prototype.leafPrepend=function(t){var n=this.left.leafPrepend(t);if(n)return new e(n,this.right)},e.prototype.appendInner=function(t){return this.left.depth>=Math.max(this.right.depth,t.depth)+1?new e(this.left,new e(this.right,t)):new e(this,t)},e}(Is),zs=Is;class js{constructor(t,e){this.items=t,this.eventCount=e}popEvent(t,e){if(0==this.eventCount)return null;let n,r,i=this.items.length;for(;;i--){if(this.items.get(i-1).selection){--i;break}}e&&(n=this.remapping(i,this.items.length),r=n.maps.length);let o,s,l=t.tr,a=[],c=[];return this.items.forEach(((t,e)=>{if(!t.step)return n||(n=this.remapping(i,e+1),r=n.maps.length),r--,void c.push(t);if(n){c.push(new Bs(t.map));let e,i=t.step.map(n.slice(r));i&&l.maybeStep(i).doc&&(e=l.mapping.maps[l.mapping.maps.length-1],a.push(new Bs(e,void 0,void 0,a.length+c.length))),r--,e&&n.appendMap(e,r)}else l.maybeStep(t.step);return t.selection?(o=n?t.selection.map(n.slice(r)):t.selection,s=new js(this.items.slice(0,i).append(c.reverse().concat(a)),this.eventCount-1),!1):void 0}),this.items.length,0),{remaining:s,transform:l,selection:o}}addTransform(t,e,n,r){let i=[],o=this.eventCount,s=this.items,l=!r&&s.length?s.get(s.length-1):null;for(let c=0;cFs&&(s=function(t,e){let n;return t.forEach(((t,r)=>{if(t.selection&&0==e--)return n=r,!1})),t.slice(n)}(s,a),o-=a),new js(s.append(i),o)}remapping(t,e){let n=new we;return this.items.forEach(((e,r)=>{let i=null!=e.mirrorOffset&&r-e.mirrorOffset>=t?n.maps.length-e.mirrorOffset:void 0;n.appendMap(e.map,i)}),t,e),n}addMaps(t){return 0==this.eventCount?this:new js(this.items.append(t.map((t=>new Bs(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let n=[],r=Math.max(0,this.items.length-e),i=t.mapping,o=t.steps.length,s=this.eventCount;this.items.forEach((t=>{t.selection&&s--}),r);let l=e;this.items.forEach((e=>{let r=i.getMirror(--l);if(null==r)return;o=Math.min(o,r);let a=i.maps[r];if(e.step){let o=t.steps[r].invert(t.docs[r]),c=e.selection&&e.selection.map(i.slice(l+1,r));c&&s++,n.push(new Bs(a,o,c))}else n.push(new Bs(a))}),r);let a=[];for(let u=e;u500&&(h=h.compress(this.items.length-n.length)),h}emptyItemCount(){let t=0;return this.items.forEach((e=>{e.step||t++})),t}compress(t=this.items.length){let e=this.remapping(0,t),n=e.maps.length,r=[],i=0;return this.items.forEach(((o,s)=>{if(s>=t)r.push(o),o.selection&&i++;else if(o.step){let t=o.step.map(e.slice(n)),s=t&&t.getMap();if(n--,s&&e.appendMap(s,n),t){let l=o.selection&&o.selection.map(e.slice(n));l&&i++;let a,c=new Bs(s.invert(),t,l),h=r.length-1;(a=r.length&&r[h].merge(c))?r[h]=a:r.push(c)}}else o.map&&n--}),this.items.length,0),new js(zs.from(r.reverse()),i)}}js.empty=new js(zs.empty,0);class Bs{constructor(t,e,n,r){this.map=t,this.step=e,this.selection=n,this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new Bs(e.getMap().invert(),e,this.selection)}}}class Vs{constructor(t,e,n,r,i){this.done=t,this.undone=e,this.prevRanges=n,this.prevTime=r,this.prevComposition=i}}const Fs=20;function Ls(t){let e=[];return t.forEach(((t,n,r,i)=>e.push(r,i))),e}function qs(t,e){if(!t)return null;let n=[];for(let r=0;rnew Vs(js.empty,js.empty,null,0,-1),apply:(e,n,r)=>function(t,e,n,r){let i,o=n.getMeta(Ys);if(o)return o.historyState;n.getMeta(Us)&&(t=new Vs(t.done,t.undone,null,0,-1));let s=n.getMeta("appendedTransaction");if(0==n.steps.length)return t;if(s&&s.getMeta(Ys))return s.getMeta(Ys).redo?new Vs(t.done.addTransform(n,void 0,r,Hs(e)),t.undone,Ls(n.mapping.maps[n.steps.length-1]),t.prevTime,t.prevComposition):new Vs(t.done,t.undone.addTransform(n,void 0,r,Hs(e)),null,t.prevTime,t.prevComposition);if(!1===n.getMeta("addToHistory")||s&&!1===s.getMeta("addToHistory"))return(i=n.getMeta("rebased"))?new Vs(t.done.rebased(n,i),t.undone.rebased(n,i),qs(t.prevRanges,n.mapping),t.prevTime,t.prevComposition):new Vs(t.done.addMaps(n.mapping.maps),t.undone.addMaps(n.mapping.maps),qs(t.prevRanges,n.mapping),t.prevTime,t.prevComposition);{let i=n.getMeta("composition"),o=0==t.prevTime||!s&&t.prevComposition!=i&&(t.prevTime<(n.time||0)-r.newGroupDelay||!function(t,e){if(!e)return!1;if(!t.docChanged)return!0;let n=!1;return t.mapping.maps[0].forEach(((t,r)=>{for(let i=0;i=e[i]&&(n=!0)})),n}(n,t.prevRanges)),l=s?qs(t.prevRanges,n.mapping):Ls(n.mapping.maps[n.steps.length-1]);return new Vs(t.done.addTransform(n,o?e.selection.getBookmark():void 0,r,Hs(e)),js.empty,l,n.time,null==i?t.prevComposition:i)}}(n,r,e,t)},config:t,props:{handleDOMEvents:{beforeinput(t,e){let n=e.inputType,r="historyUndo"==n?Zs:"historyRedo"==n?Xs:null;return!!r&&(e.preventDefault(),r(t.state,t.dispatch))}}}})}const Zs=(t,e)=>{let n=Ys.getState(t);return!(!n||0==n.done.eventCount)&&(e&&Ws(n,t,e,!1),!0)},Xs=(t,e)=>{let n=Ys.getState(t);return!(!n||0==n.undone.eventCount)&&(e&&Ws(n,t,e,!0),!0)};function Qs(t){let e=Ys.getState(t);return e?e.done.eventCount:0}function tl(t){let e=Ys.getState(t);return e?e.undone.eventCount:0} +var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function e(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var n={},r={},i={},o={},s={};function l(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function a(t){for(var e=1;e=+n}))};var O={};Object.defineProperty(O,"__esModule",{value:!0}),O.default=void 0;var C=(0,i.regex)("email",/^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])$/i);O.default=C;var D={};Object.defineProperty(D,"__esModule",{value:!0}),D.default=void 0;var N=i,T=(0,N.withParams)({type:"ipAddress"},(function(t){if(!(0,N.req)(t))return!0;if("string"!=typeof t)return!1;var e=t.split(".");return 4===e.length&&e.every(A)}));D.default=T;var A=function(t){if(t.length>3||0===t.length)return!1;if("0"===t[0]&&"0"!==t)return!1;if(!t.match(/^\d+$/))return!1;var e=0|+t;return e>=0&&e<=255},E={};Object.defineProperty(E,"__esModule",{value:!0}),E.default=void 0;var $=i;E.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:":";return(0,$.withParams)({type:"macAddress"},(function(e){if(!(0,$.req)(e))return!0;if("string"!=typeof e)return!1;var n="string"==typeof t&&""!==t?e.split(t):12===e.length||16===e.length?e.match(/.{2}/g):null;return null!==n&&(6===n.length||8===n.length)&&n.every(P)}))};var P=function(t){return t.toLowerCase().match(/^[0-9a-f]{2}$/)},I={};Object.defineProperty(I,"__esModule",{value:!0}),I.default=void 0;var R=i;I.default=function(t){return(0,R.withParams)({type:"maxLength",max:t},(function(e){return!(0,R.req)(e)||(0,R.len)(e)<=t}))};var z={};Object.defineProperty(z,"__esModule",{value:!0}),z.default=void 0;var _=i;z.default=function(t){return(0,_.withParams)({type:"minLength",min:t},(function(e){return!(0,_.req)(e)||(0,_.len)(e)>=t}))};var B={};Object.defineProperty(B,"__esModule",{value:!0}),B.default=void 0;var j=i,V=(0,j.withParams)({type:"required"},(function(t){return(0,j.req)("string"==typeof t?t.trim():t)}));B.default=V;var F={};Object.defineProperty(F,"__esModule",{value:!0}),F.default=void 0;var L=i;F.default=function(t){return(0,L.withParams)({type:"requiredIf",prop:t},(function(e,n){return!(0,L.ref)(t,this,n)||(0,L.req)(e)}))};var W={};Object.defineProperty(W,"__esModule",{value:!0}),W.default=void 0;var q=i;W.default=function(t){return(0,q.withParams)({type:"requiredUnless",prop:t},(function(e,n){return!!(0,q.ref)(t,this,n)||(0,q.req)(e)}))};var J={};Object.defineProperty(J,"__esModule",{value:!0}),J.default=void 0;var K=i;J.default=function(t){return(0,K.withParams)({type:"sameAs",eq:t},(function(e,n){return e===(0,K.ref)(t,this,n)}))};var H={};Object.defineProperty(H,"__esModule",{value:!0}),H.default=void 0;var Y=(0,i.regex)("url",/^(?:(?:(?:https?|ftp):)?\/\/)(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[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]))|(?:(?:[a-z0-9\u00a1-\uffff][a-z0-9\u00a1-\uffff_-]{0,62})?[a-z0-9\u00a1-\uffff]\.)+(?:[a-z\u00a1-\uffff]{2,}\.?))(?::\d{2,5})?(?:[/?#]\S*)?$/i);H.default=Y;var U={};Object.defineProperty(U,"__esModule",{value:!0}),U.default=void 0;var G=i;U.default=function(){for(var t=arguments.length,e=new Array(t),n=0;n0&&e.reduce((function(e,n){return e||n.apply(t,r)}),!1)}))};var Z={};Object.defineProperty(Z,"__esModule",{value:!0}),Z.default=void 0;var X=i;Z.default=function(){for(var t=arguments.length,e=new Array(t),n=0;n0&&e.reduce((function(e,n){return e&&n.apply(t,r)}),!0)}))};var Q={};Object.defineProperty(Q,"__esModule",{value:!0}),Q.default=void 0;var tt=i;Q.default=function(t){return(0,tt.withParams)({type:"not"},(function(e,n){return!(0,tt.req)(e)||!t.call(this,e,n)}))};var et={};Object.defineProperty(et,"__esModule",{value:!0}),et.default=void 0;var nt=i;et.default=function(t){return(0,nt.withParams)({type:"minValue",min:t},(function(e){return!(0,nt.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e>=+t}))};var rt={};Object.defineProperty(rt,"__esModule",{value:!0}),rt.default=void 0;var it=i;rt.default=function(t){return(0,it.withParams)({type:"maxValue",max:t},(function(e){return!(0,it.req)(e)||(!/\s/.test(e)||e instanceof Date)&&+e<=+t}))};var ot={};Object.defineProperty(ot,"__esModule",{value:!0}),ot.default=void 0;var st=(0,i.regex)("integer",/(^[0-9]*$)|(^-[0-9]+$)/);ot.default=st;var lt={};Object.defineProperty(lt,"__esModule",{value:!0}),lt.default=void 0;var at=(0,i.regex)("decimal",/^[-]?\d*(\.\d+)?$/);function ct(t){this.content=t}function ht(t,e,n){for(let r=0;;r++){if(r==t.childCount||r==e.childCount)return t.childCount==e.childCount?null:n;let i=t.child(r),o=e.child(r);if(i!=o){if(!i.sameMarkup(o))return n;if(i.isText&&i.text!=o.text){for(let t=0;i.text[t]==o.text[t];t++)n++;return n}if(i.content.size||o.content.size){let t=ht(i.content,o.content,n+1);if(null!=t)return t}n+=i.nodeSize}else n+=i.nodeSize}}function ut(t,e,n,r){for(let i=t.childCount,o=e.childCount;;){if(0==i||0==o)return i==o?null:{a:n,b:r};let s=t.child(--i),l=e.child(--o),a=s.nodeSize;if(s!=l){if(!s.sameMarkup(l))return{a:n,b:r};if(s.isText&&s.text!=l.text){let t=0,e=Math.min(s.text.length,l.text.length);for(;t>1}},ct.from=function(t){if(t instanceof ct)return t;var e=[];if(t)for(var n in t)e.push(n,t[n]);return new ct(e)};class dt{constructor(t,e){if(this.content=t,this.size=e||0,null==e)for(let n=0;nt&&!1!==n(l,r+s,i||null,o)&&l.content.size){let i=s+1;l.nodesBetween(Math.max(0,t-i),Math.min(l.content.size,e-i),n,r+i)}s=a}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,e,n,r){let i="",o=!0;return this.nodesBetween(t,e,((s,l)=>{s.isText?(i+=s.text.slice(Math.max(t,l)-l,e-l),o=!n):s.isLeaf?(r?i+="function"==typeof r?r(s):r:s.type.spec.leafText&&(i+=s.type.spec.leafText(s)),o=!n):!o&&s.isBlock&&(i+=n,o=!0)}),0),i}append(t){if(!t.size)return this;if(!this.size)return t;let e=this.lastChild,n=t.firstChild,r=this.content.slice(),i=0;for(e.isText&&e.sameMarkup(n)&&(r[r.length-1]=e.withText(e.text+n.text),i=1);it)for(let i=0,o=0;ot&&((oe)&&(s=s.isText?s.cut(Math.max(0,t-o),Math.min(s.text.length,e-o)):s.cut(Math.max(0,t-o-1),Math.min(s.content.size,e-o-1))),n.push(s),r+=s.nodeSize),o=l}return new dt(n,r)}cutByIndex(t,e){return t==e?dt.empty:0==t&&e==this.content.length?this:new dt(this.content.slice(t,e))}replaceChild(t,e){let n=this.content[t];if(n==e)return this;let r=this.content.slice(),i=this.size+e.nodeSize-n.nodeSize;return r[t]=e,new dt(r,i)}addToStart(t){return new dt([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new dt(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return!1;for(let e=0;ethis.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let n=0,r=0;;n++){let i=r+this.child(n).nodeSize;if(i>=t)return i==t||e>0?pt(n+1,i):pt(n,r);r=i}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((t=>t.toJSON())):null}static fromJSON(t,e){if(!e)return dt.empty;if(!Array.isArray(e))throw new RangeError("Invalid input for Fragment.fromJSON");return new dt(e.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return dt.empty;let e,n=0;for(let r=0;rthis.type.rank&&(e||(e=t.slice(0,r)),e.push(this),n=!0),e&&e.push(i)}}return e||(e=t.slice()),n||e.push(this),e}removeFromSet(t){for(let e=0;et.type.rank-e.type.rank)),e}}gt.none=[];class yt extends Error{}class vt{constructor(t,e,n){this.content=t,this.openStart=e,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,e){let n=bt(this.content,t+this.openStart,e);return n&&new vt(n,this.openStart,this.openEnd)}removeBetween(t,e){return new vt(wt(this.content,t+this.openStart,e+this.openStart),this.openStart,this.openEnd)}eq(t){return this.content.eq(t.content)&&this.openStart==t.openStart&&this.openEnd==t.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let t={content:this.content.toJSON()};return this.openStart>0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t}static fromJSON(t,e){if(!e)return vt.empty;let n=e.openStart||0,r=e.openEnd||0;if("number"!=typeof n||"number"!=typeof r)throw new RangeError("Invalid input for Slice.fromJSON");return new vt(dt.fromJSON(t,e.content),n,r)}static maxOpen(t,e=!0){let n=0,r=0;for(let i=t.firstChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.firstChild)n++;for(let i=t.lastChild;i&&!i.isLeaf&&(e||!i.type.spec.isolating);i=i.lastChild)r++;return new vt(t,n,r)}}function wt(t,e,n){let{index:r,offset:i}=t.findIndex(e),o=t.maybeChild(r),{index:s,offset:l}=t.findIndex(n);if(i==e||o.isText){if(l!=n&&!t.child(s).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(n))}if(r!=s)throw new RangeError("Removing non-flat range");return t.replaceChild(r,o.copy(wt(o.content,e-i-1,n-i-1)))}function bt(t,e,n,r){let{index:i,offset:o}=t.findIndex(e),s=t.maybeChild(i);if(o==e||s.isText)return r&&!r.canReplace(i,i,n)?null:t.cut(0,e).append(n).append(t.cut(e));let l=bt(s.content,e-o-1,n);return l&&t.replaceChild(i,s.copy(l))}function xt(t,e,n){if(n.openStart>t.depth)throw new yt("Inserted content deeper than insertion position");if(t.depth-n.openStart!=e.depth-n.openEnd)throw new yt("Inconsistent open depths");return St(t,e,n,0)}function St(t,e,n,r){let i=t.index(r),o=t.node(r);if(i==e.index(r)&&r=0;i--)r=e.node(i).copy(dt.from(r));return{start:r.resolveNoCache(t.openStart+n),end:r.resolveNoCache(r.content.size-t.openEnd-n)}}(n,t);return Dt(o,Nt(t,i,s,e,r))}{let r=t.parent,i=r.content;return Dt(r,i.cut(0,t.parentOffset).append(n.content).append(i.cut(e.parentOffset)))}}return Dt(o,Tt(t,e,r))}function kt(t,e){if(!e.type.compatibleContent(t.type))throw new yt("Cannot join "+e.type.name+" onto "+t.type.name)}function Mt(t,e,n){let r=t.node(n);return kt(r,e.node(n)),r}function Ot(t,e){let n=e.length-1;n>=0&&t.isText&&t.sameMarkup(e[n])?e[n]=t.withText(e[n].text+t.text):e.push(t)}function Ct(t,e,n,r){let i=(e||t).node(n),o=0,s=e?e.index(n):i.childCount;t&&(o=t.index(n),t.depth>n?o++:t.textOffset&&(Ot(t.nodeAfter,r),o++));for(let l=o;li&&Mt(t,e,i+1),s=r.depth>i&&Mt(n,r,i+1),l=[];return Ct(null,t,i,l),o&&s&&e.index(i)==n.index(i)?(kt(o,s),Ot(Dt(o,Nt(t,e,n,r,i+1)),l)):(o&&Ot(Dt(o,Tt(t,e,i+1)),l),Ct(e,n,i,l),s&&Ot(Dt(s,Tt(n,r,i+1)),l)),Ct(r,null,i,l),new dt(l)}function Tt(t,e,n){let r=[];if(Ct(null,t,n,r),t.depth>n){Ot(Dt(Mt(t,e,n+1),Tt(t,e,n+1)),r)}return Ct(e,null,n,r),new dt(r)}vt.empty=new vt(dt.empty,0,0);class At{constructor(t,e,n){this.pos=t,this.path=e,this.parentOffset=n,this.depth=e.length/3-1}resolveDepth(t){return null==t?this.depth:t<0?this.depth+t:t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[3*this.resolveDepth(t)]}index(t){return this.path[3*this.resolveDepth(t)+1]}indexAfter(t){return t=this.resolveDepth(t),this.index(t)+(t!=this.depth||this.textOffset?1:0)}start(t){return 0==(t=this.resolveDepth(t))?0:this.path[3*t-1]+1}end(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size}before(t){if(!(t=this.resolveDepth(t)))throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[3*t-1]}after(t){if(!(t=this.resolveDepth(t)))throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[3*t-1]+this.path[3*t].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,e=this.index(this.depth);if(e==t.childCount)return null;let n=this.pos-this.path[this.path.length-1],r=t.child(e);return n?t.child(e).cut(n):r}get nodeBefore(){let t=this.index(this.depth),e=this.pos-this.path[this.path.length-1];return e?this.parent.child(t).cut(0,e):0==t?null:this.parent.child(t-1)}posAtIndex(t,e){e=this.resolveDepth(e);let n=this.path[3*e],r=0==e?0:this.path[3*e-1]+1;for(let i=0;i0;e--)if(this.start(e)<=t&&this.end(e)>=t)return e;return 0}blockRange(t=this,e){if(t.pos=0;n--)if(t.pos<=this.end(n)&&(!e||e(this.node(n))))return new It(this,t,n);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos=0&&e<=t.content.size))throw new RangeError("Position "+e+" out of range");let n=[],r=0,i=e;for(let o=t;;){let{index:t,offset:e}=o.content.findIndex(i),s=i-e;if(n.push(o,t,r+e),!s)break;if(o=o.child(t),o.isText)break;i=s-1,r+=e+1}return new At(e,n,i)}static resolveCached(t,e){for(let r=0;rt&&this.nodesBetween(t,e,(t=>(n.isInSet(t.marks)&&(r=!0),!r))),r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),Bt(this.marks,t)}contentMatchAt(t){let e=this.type.contentMatch.matchFragment(this.content,0,t);if(!e)throw new Error("Called contentMatchAt on a node with invalid content");return e}canReplace(t,e,n=dt.empty,r=0,i=n.childCount){let o=this.contentMatchAt(t).matchFragment(n,r,i),s=o&&o.matchFragment(this.content,e);if(!s||!s.validEnd)return!1;for(let l=r;lt.type.name))}`);this.content.forEach((t=>t.check()))}toJSON(){let t={type:this.type.name};for(let e in this.attrs){t.attrs=this.attrs;break}return this.content.size&&(t.content=this.content.toJSON()),this.marks.length&&(t.marks=this.marks.map((t=>t.toJSON()))),t}static fromJSON(t,e){if(!e)throw new RangeError("Invalid input for Node.fromJSON");let n=null;if(e.marks){if(!Array.isArray(e.marks))throw new RangeError("Invalid mark data for Node.fromJSON");n=e.marks.map(t.markFromJSON)}if("text"==e.type){if("string"!=typeof e.text)throw new RangeError("Invalid text node in JSON");return t.text(e.text,n)}let r=dt.fromJSON(t,e.content);return t.nodeType(e.type).create(e.attrs,r,n)}}zt.prototype.text=void 0;class _t extends zt{constructor(t,e,n,r){if(super(t,e,null,r),!n)throw new RangeError("Empty text nodes are not allowed");this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):Bt(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(t,e){return this.text.slice(t,e)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new _t(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new _t(this.type,this.attrs,t,this.marks)}cut(t=0,e=this.text.length){return 0==t&&e==this.text.length?this:this.withText(this.text.slice(t,e))}eq(t){return this.sameMarkup(t)&&this.text==t.text}toJSON(){let t=super.toJSON();return t.text=this.text,t}}function Bt(t,e){for(let n=t.length-1;n>=0;n--)e=t[n].type.name+"("+e+")";return e}class jt{constructor(t){this.validEnd=t,this.next=[],this.wrapCache=[]}static parse(t,e){let n=new Vt(t,e);if(null==n.next)return jt.empty;let r=Ft(n);n.next&&n.err("Unexpected trailing text");let i=function(t){let e=Object.create(null);return n(Ht(t,0));function n(r){let i=[];r.forEach((e=>{t[e].forEach((({term:e,to:n})=>{if(!e)return;let r;for(let t=0;t{r||i.push([e,r=[]]),-1==r.indexOf(t)&&r.push(t)}))}))}));let o=e[r.join(",")]=new jt(r.indexOf(t.length-1)>-1);for(let t=0;tt.to=e))}function o(t,e){if("choice"==t.type)return t.exprs.reduce(((t,n)=>t.concat(o(n,e))),[]);if("seq"!=t.type){if("star"==t.type){let s=n();return r(e,s),i(o(t.expr,s),s),[r(s)]}if("plus"==t.type){let s=n();return i(o(t.expr,e),s),i(o(t.expr,s),s),[r(s)]}if("opt"==t.type)return[r(e)].concat(o(t.expr,e));if("range"==t.type){let s=e;for(let e=0;et.createAndFill())));for(let t=0;t=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];return function e(n){t.push(n);for(let r=0;r{let r=n+(e.validEnd?"*":" ")+" ";for(let i=0;i"+t.indexOf(e.next[i].next);return r})).join("\n")}}jt.empty=new jt(!0);class Vt{constructor(t,e){this.string=t,this.nodeTypes=e,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),""==this.tokens[this.tokens.length-1]&&this.tokens.pop(),""==this.tokens[0]&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||!0)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function Ft(t){let e=[];do{e.push(Lt(t))}while(t.eat("|"));return 1==e.length?e[0]:{type:"choice",exprs:e}}function Lt(t){let e=[];do{e.push(Wt(t))}while(t.next&&")"!=t.next&&"|"!=t.next);return 1==e.length?e[0]:{type:"seq",exprs:e}}function Wt(t){let e=function(t){if(t.eat("(")){let e=Ft(t);return t.eat(")")||t.err("Missing closing paren"),e}if(!/\W/.test(t.next)){let e=function(t,e){let n=t.nodeTypes,r=n[e];if(r)return[r];let i=[];for(let o in n){let t=n[o];t.groups.indexOf(e)>-1&&i.push(t)}0==i.length&&t.err("No node type or group '"+e+"' found");return i}(t,t.next).map((e=>(null==t.inline?t.inline=e.isInline:t.inline!=e.isInline&&t.err("Mixing inline and block content"),{type:"name",value:e})));return t.pos++,1==e.length?e[0]:{type:"choice",exprs:e}}t.err("Unexpected token '"+t.next+"'")}(t);for(;;)if(t.eat("+"))e={type:"plus",expr:e};else if(t.eat("*"))e={type:"star",expr:e};else if(t.eat("?"))e={type:"opt",expr:e};else{if(!t.eat("{"))break;e=Jt(t,e)}return e}function qt(t){/\D/.test(t.next)&&t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);return t.pos++,e}function Jt(t,e){let n=qt(t),r=n;return t.eat(",")&&(r="}"!=t.next?qt(t):-1),t.eat("}")||t.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:e}}function Kt(t,e){return e-t}function Ht(t,e){let n=[];return function e(r){let i=t[r];if(1==i.length&&!i[0].term)return e(i[0].to);n.push(r);for(let t=0;t-1}allowsMarks(t){if(null==this.markSet)return!0;for(let e=0;er[e]=new t(e,n,i)));let i=n.spec.topNode||"doc";if(!r[i])throw new RangeError("Schema is missing its top node type ('"+i+"')");if(!r.text)throw new RangeError("Every schema needs a 'text' type");for(let t in r.text.attrs)throw new RangeError("The text node type should not have attributes");return r}};class Xt{constructor(t){this.hasDefault=Object.prototype.hasOwnProperty.call(t,"default"),this.default=t.default}get isRequired(){return!this.hasDefault}}class Qt{constructor(t,e,n,r){this.name=t,this.rank=e,this.schema=n,this.spec=r,this.attrs=Gt(r.attrs),this.excluded=null;let i=Yt(this.attrs);this.instance=i?new gt(this,i):null}create(t=null){return!t&&this.instance?this.instance:new gt(this,Ut(this.attrs,t))}static compile(t,e){let n=Object.create(null),r=0;return t.forEach(((t,i)=>n[t]=new Qt(t,r++,e,i))),n}removeFromSet(t){for(var e=0;e-1}}class te{constructor(t){this.cached=Object.create(null);let e=this.spec={};for(let r in t)e[r]=t[r];e.nodes=ct.from(t.nodes),e.marks=ct.from(t.marks||{}),this.nodes=Zt.compile(this.spec.nodes,this),this.marks=Qt.compile(this.spec.marks,this);let n=Object.create(null);for(let r in this.nodes){if(r in this.marks)throw new RangeError(r+" can not be both a node and a mark");let t=this.nodes[r],e=t.spec.content||"",i=t.spec.marks;t.contentMatch=n[e]||(n[e]=jt.parse(e,this.nodes)),t.inlineContent=t.contentMatch.inlineContent,t.markSet="_"==i?null:i?ee(this,i.split(" ")):""!=i&&t.inlineContent?null:[]}for(let r in this.marks){let t=this.marks[r],e=t.spec.excludes;t.excluded=null==e?[t]:""==e?[]:ee(this,e.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(t,e=null,n,r){if("string"==typeof t)t=this.nodeType(t);else{if(!(t instanceof Zt))throw new RangeError("Invalid node type: "+t);if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")")}return t.createChecked(e,n,r)}text(t,e){let n=this.nodes.text;return new _t(n,n.defaultAttrs,t,gt.setFrom(e))}mark(t,e){return"string"==typeof t&&(t=this.marks[t]),t.create(e)}nodeFromJSON(t){return zt.fromJSON(this,t)}markFromJSON(t){return gt.fromJSON(this,t)}nodeType(t){let e=this.nodes[t];if(!e)throw new RangeError("Unknown node type: "+t);return e}}function ee(t,e){let n=[];for(let r=0;r-1)&&n.push(s=r)}if(!s)throw new SyntaxError("Unknown mark type: '"+e[r]+"'")}return n}class ne{constructor(t,e){this.schema=t,this.rules=e,this.tags=[],this.styles=[],e.forEach((t=>{t.tag?this.tags.push(t):t.style&&this.styles.push(t)})),this.normalizeLists=!this.tags.some((e=>{if(!/^(ul|ol)\b/.test(e.tag)||!e.node)return!1;let n=t.nodes[e.node];return n.contentMatch.matchType(n)}))}parse(t,e={}){let n=new ae(this,e,!1);return n.addAll(t,e.from,e.to),n.finish()}parseSlice(t,e={}){let n=new ae(this,e,!0);return n.addAll(t,e.from,e.to),vt.maxOpen(n.finish())}matchTag(t,e,n){for(let r=n?this.tags.indexOf(n)+1:0;rt.length&&(61!=o.charCodeAt(t.length)||o.slice(t.length+1)!=e))){if(r.getAttrs){let t=r.getAttrs(e);if(!1===t)continue;r.attrs=t||void 0}return r}}}static schemaRules(t){let e=[];function n(t){let n=null==t.priority?50:t.priority,r=0;for(;r{n(t=he(t)),t.mark||t.ignore||t.clearMark||(t.mark=r)}))}for(let r in t.nodes){let e=t.nodes[r].spec.parseDOM;e&&e.forEach((t=>{n(t=he(t)),t.node||t.ignore||t.mark||(t.node=r)}))}return e}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new ne(t,ne.schemaRules(t)))}}const re={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},ie={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},oe={ol:!0,ul:!0};function se(t,e,n){return null!=e?(e?1:0)|("full"===e?2:0):t&&"pre"==t.whitespace?3:-5&n}class le{constructor(t,e,n,r,i,o,s){this.type=t,this.attrs=e,this.marks=n,this.pendingMarks=r,this.solid=i,this.options=s,this.content=[],this.activeMarks=gt.none,this.stashMarks=[],this.match=o||(4&s?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let e=this.type.contentMatch.fillBefore(dt.from(t));if(!e){let e,n=this.type.contentMatch;return(e=n.findWrapping(t.type))?(this.match=n,e):null}this.match=this.type.contentMatch.matchFragment(e)}return this.match.findWrapping(t.type)}finish(t){if(!(1&this.options)){let t,e=this.content[this.content.length-1];if(e&&e.isText&&(t=/[ \t\r\n\u000c]+$/.exec(e.text))){let n=e;e.text.length==t[0].length?this.content.pop():this.content[this.content.length-1]=n.withText(n.text.slice(0,n.text.length-t[0].length))}}let e=dt.from(this.content);return!t&&this.match&&(e=e.append(this.match.fillBefore(dt.empty,!0))),this.type?this.type.create(this.attrs,e,this.marks):e}popFromStashMark(t){for(let e=this.stashMarks.length-1;e>=0;e--)if(t.eq(this.stashMarks[e]))return this.stashMarks.splice(e,1)[0]}applyPending(t){for(let e=0,n=this.pendingMarks;ethis.addAll(t))),e&&this.sync(n),this.needsBlock=o}else this.withStyleRules(t,(()=>{this.addElementByRule(t,i,!1===i.consuming?n:void 0)}))}leafFallback(t){"BR"==t.nodeName&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(t.ownerDocument.createTextNode("\n"))}ignoreFallback(t){"BR"!=t.nodeName||this.top.type&&this.top.type.inlineContent||this.findPlace(this.parser.schema.text("-"))}readStyles(t){let e=gt.none,n=gt.none;for(let r=0;r{o.clearMark(t)&&(n=t.addToSet(n))})):e=this.parser.schema.marks[o.mark].create(o.attrs).addToSet(e),!1!==o.consuming)break;i=o}return[e,n]}addElementByRule(t,e,n){let r,i,o;if(e.node)i=this.parser.schema.nodes[e.node],i.isLeaf?this.insertNode(i.create(e.attrs))||this.leafFallback(t):r=this.enter(i,e.attrs||null,e.preserveWhitespace);else{o=this.parser.schema.marks[e.mark].create(e.attrs),this.addPendingMark(o)}let s=this.top;if(i&&i.isLeaf)this.findInside(t);else if(n)this.addElement(t,n);else if(e.getContent)this.findInside(t),e.getContent(t,this.parser.schema).forEach((t=>this.insertNode(t)));else{let n=t;"string"==typeof e.contentElement?n=t.querySelector(e.contentElement):"function"==typeof e.contentElement?n=e.contentElement(t):e.contentElement&&(n=e.contentElement),this.findAround(t,n,!0),this.addAll(n)}r&&this.sync(s)&&this.open--,o&&this.removePendingMark(o,s)}addAll(t,e,n){let r=e||0;for(let i=e?t.childNodes[e]:t.firstChild,o=null==n?null:t.childNodes[n];i!=o;i=i.nextSibling,++r)this.findAtPoint(t,r),this.addDOM(i);this.findAtPoint(t,r)}findPlace(t){let e,n;for(let r=this.open;r>=0;r--){let i=this.nodes[r],o=i.findWrapping(t);if(o&&(!e||e.length>o.length)&&(e=o,n=i,!o.length))break;if(i.solid)break}if(!e)return!1;this.sync(n);for(let r=0;rthis.open){for(;e>this.open;e--)this.nodes[e-1].content.push(this.nodes[e].finish(t));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(this.isOpen||this.options.topOpen)}sync(t){for(let e=this.open;e>=0;e--)if(this.nodes[e]==t)return this.open=e,!0;return!1}get currentPos(){this.closeExtra();let t=0;for(let e=this.open;e>=0;e--){let n=this.nodes[e].content;for(let e=n.length-1;e>=0;e--)t+=n[e].nodeSize;e&&t++}return t}findAtPoint(t,e){if(this.find)for(let n=0;n-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let e=t.split("/"),n=this.options.context,r=!(this.isOpen||n&&n.parent.type!=this.nodes[0].type),i=-(n?n.depth+1:0)+(r?0:1),o=(t,s)=>{for(;t>=0;t--){let l=e[t];if(""==l){if(t==e.length-1||0==t)continue;for(;s>=i;s--)if(o(t-1,s))return!0;return!1}{let t=s>0||0==s&&r?this.nodes[s].type:n&&s>=i?n.node(s-i).type:null;if(!t||t.name!=l&&-1==t.groups.indexOf(l))return!1;s--}}return!0};return o(e.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let e=t.depth;e>=0;e--){let n=t.node(e).contentMatchAt(t.indexAfter(e)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let e in this.parser.schema.nodes){let t=this.parser.schema.nodes[e];if(t.isTextblock&&t.defaultAttrs)return t}}addPendingMark(t){let e=function(t,e){for(let n=0;n=0;n--){let r=this.nodes[n];if(r.pendingMarks.lastIndexOf(t)>-1)r.pendingMarks=t.removeFromSet(r.pendingMarks);else{r.activeMarks=t.removeFromSet(r.activeMarks);let e=r.popFromStashMark(t);e&&r.type&&r.type.allowsMarkType(e.type)&&(r.activeMarks=e.addToSet(r.activeMarks))}if(r==e)break}}}function ce(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function he(t){let e={};for(let n in t)e[n]=t[n];return e}function ue(t,e){let n=e.schema.nodes;for(let r in n){let i=n[r];if(!i.allowsMarkType(t))continue;let o=[],s=t=>{o.push(t);for(let n=0;n{if(i.length||t.marks.length){let n=0,o=0;for(;n=0;r--){let i=this.serializeMark(t.marks[r],t.isInline,e);i&&((i.contentDOM||i.dom).appendChild(n),n=i.dom)}return n}serializeMark(t,e,n={}){let r=this.marks[t.type.name];return r&&de.renderSpec(pe(n),r(t,e))}static renderSpec(t,e,n=null){if("string"==typeof e)return{dom:t.createTextNode(e)};if(null!=e.nodeType)return{dom:e};if(e.dom&&null!=e.dom.nodeType)return e;let r,i=e[0],o=i.indexOf(" ");o>0&&(n=i.slice(0,o),i=i.slice(o+1));let s=n?t.createElementNS(n,i):t.createElement(i),l=e[1],a=1;if(l&&"object"==typeof l&&null==l.nodeType&&!Array.isArray(l)){a=2;for(let t in l)if(null!=l[t]){let e=t.indexOf(" ");e>0?s.setAttributeNS(t.slice(0,e),t.slice(e+1),l[t]):s.setAttribute(t,l[t])}}for(let c=a;ca)throw new RangeError("Content hole must be the only child of its parent node");return{dom:s,contentDOM:s}}{let{dom:e,contentDOM:o}=de.renderSpec(t,i,n);if(s.appendChild(e),o){if(r)throw new RangeError("Multiple content holes");r=o}}}return{dom:s,contentDOM:r}}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new de(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let e=fe(t.nodes);return e.text||(e.text=t=>t.text),e}static marksFromSchema(t){return fe(t.marks)}}function fe(t){let e={};for(let n in t){let r=t[n].spec.toDOM;r&&(e[n]=r)}return e}function pe(t){return t.document||window.document}const me=Math.pow(2,16);function ge(t){return 65535&t}class ye{constructor(t,e,n){this.pos=t,this.delInfo=e,this.recover=n}get deleted(){return(8&this.delInfo)>0}get deletedBefore(){return(5&this.delInfo)>0}get deletedAfter(){return(6&this.delInfo)>0}get deletedAcross(){return(4&this.delInfo)>0}}class ve{constructor(t,e=!1){if(this.ranges=t,this.inverted=e,!t.length&&ve.empty)return ve.empty}recover(t){let e=0,n=ge(t);if(!this.inverted)for(let r=0;rt)break;let a=this.ranges[s+i],c=this.ranges[s+o],h=l+a;if(t<=h){let i=l+r+((a?t==l?-1:t==h?1:e:e)<0?0:c);if(n)return i;let o=t==(e<0?l:h)?null:s/3+(t-l)*me,u=t==l?2:t==h?1:4;return(e<0?t!=l:t!=h)&&(u|=8),new ye(i,u,o)}r+=c-a}return n?t+r:new ye(t+r,0,null)}touches(t,e){let n=0,r=ge(e),i=this.inverted?2:1,o=this.inverted?1:2;for(let s=0;st)break;let l=this.ranges[s+i];if(t<=e+l&&s==3*r)return!0;n+=this.ranges[s+o]-l}return!1}forEach(t){let e=this.inverted?2:1,n=this.inverted?1:2;for(let r=0,i=0;r=0;e--){let r=t.getMirror(e);this.appendMap(t.maps[e].invert(),null!=r&&r>e?n-r-1:void 0)}}invert(){let t=new we;return t.appendMappingInverted(this),t}map(t,e=1){if(this.mirror)return this._map(t,e,!0);for(let n=this.from;ni&&et.isAtom&&e.type.allowsMarkType(this.mark.type)?t.mark(this.mark.addToSet(t.marks)):t),r),e.openStart,e.openEnd);return Se.fromReplace(t,this.from,this.to,i)}invert(){return new Oe(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),n=t.mapResult(this.to,-1);return e.deleted&&n.deleted||e.pos>=n.pos?null:new Me(e.pos,n.pos,this.mark)}merge(t){return t instanceof Me&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new Me(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,e){if("number"!=typeof e.from||"number"!=typeof e.to)throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new Me(e.from,e.to,t.markFromJSON(e.mark))}}xe.jsonID("addMark",Me);class Oe extends xe{constructor(t,e,n){super(),this.from=t,this.to=e,this.mark=n}apply(t){let e=t.slice(this.from,this.to),n=new vt(ke(e.content,(t=>t.mark(this.mark.removeFromSet(t.marks))),t),e.openStart,e.openEnd);return Se.fromReplace(t,this.from,this.to,n)}invert(){return new Me(this.from,this.to,this.mark)}map(t){let e=t.mapResult(this.from,1),n=t.mapResult(this.to,-1);return e.deleted&&n.deleted||e.pos>=n.pos?null:new Oe(e.pos,n.pos,this.mark)}merge(t){return t instanceof Oe&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new Oe(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,e){if("number"!=typeof e.from||"number"!=typeof e.to)throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new Oe(e.from,e.to,t.markFromJSON(e.mark))}}xe.jsonID("removeMark",Oe);class Ce extends xe{constructor(t,e){super(),this.pos=t,this.mark=e}apply(t){let e=t.nodeAt(this.pos);if(!e)return Se.fail("No node at mark step's position");let n=e.type.create(e.attrs,null,this.mark.addToSet(e.marks));return Se.fromReplace(t,this.pos,this.pos+1,new vt(dt.from(n),0,e.isLeaf?0:1))}invert(t){let e=t.nodeAt(this.pos);if(e){let t=this.mark.addToSet(e.marks);if(t.length==e.marks.length){for(let n=0;nn.pos?null:new Te(e.pos,n.pos,r,i,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(t.slice=this.slice.toJSON()),this.structure&&(t.structure=!0),t}static fromJSON(t,e){if("number"!=typeof e.from||"number"!=typeof e.to||"number"!=typeof e.gapFrom||"number"!=typeof e.gapTo||"number"!=typeof e.insert)throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Te(e.from,e.to,e.gapFrom,e.gapTo,vt.fromJSON(t,e.slice),e.insert,!!e.structure)}}function Ae(t,e,n){let r=t.resolve(e),i=n-e,o=r.depth;for(;i>0&&o>0&&r.indexAfter(o)==r.node(o).childCount;)o--,i--;if(i>0){let t=r.node(o).maybeChild(r.indexAfter(o));for(;i>0;){if(!t||t.isLeaf)return!0;t=t.firstChild,i--}}return!1}function Ee(t,e,n){return(0==e||t.canReplace(e,t.childCount))&&(n==t.childCount||t.canReplace(0,n))}function $e(t){let e=t.parent.content.cutByIndex(t.startIndex,t.endIndex);for(let n=t.depth;;--n){let r=t.$from.node(n),i=t.$from.index(n),o=t.$to.indexAfter(n);if(no;c--,h--){let t=i.node(c),e=i.index(c);if(t.type.spec.isolating)return!1;let n=t.content.cutByIndex(e,t.childCount),o=r&&r[h+1];o&&(n=n.replaceChild(0,o.type.create(o.attrs)));let s=r&&r[h]||t;if(!t.canReplace(e+1,t.childCount)||!s.type.validContent(n))return!1}let l=i.indexAfter(o),a=r&&r[0];return i.node(o).canReplaceWith(l,l,a?a.type:i.node(o+1).type)}function ze(t,e){let n=t.resolve(e),r=n.index();return i=n.nodeBefore,o=n.nodeAfter,!(!i||!o||i.isLeaf||!i.canAppend(o))&&n.parent.canReplace(r,r+1);var i,o}function _e(t,e,n=e,r=vt.empty){if(e==n&&!r.size)return null;let i=t.resolve(e),o=t.resolve(n);return Be(i,o,r)?new Ne(e,n,r):new je(i,o,r).fit()}function Be(t,e,n){return!n.openStart&&!n.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),n.content)}xe.jsonID("replaceAround",Te);class je{constructor(t,e,n){this.$from=t,this.$to=e,this.unplaced=n,this.frontier=[],this.placed=dt.empty;for(let r=0;r<=t.depth;r++){let e=t.node(r);this.frontier.push({type:e.type,match:e.contentMatchAt(t.indexAfter(r))})}for(let r=t.depth;r>0;r--)this.placed=dt.from(t.node(r).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let t=this.findFittable();t?this.placeNodes(t):this.openMore()||this.dropNode()}let t=this.mustMoveInline(),e=this.placed.size-this.depth-this.$from.depth,n=this.$from,r=this.close(t<0?this.$to:n.doc.resolve(t));if(!r)return null;let i=this.placed,o=n.depth,s=r.depth;for(;o&&s&&1==i.childCount;)i=i.firstChild.content,o--,s--;let l=new vt(i,o,s);return t>-1?new Te(n.pos,t,this.$to.pos,this.$to.end(),l,e):l.size||n.pos!=this.$to.pos?new Ne(n.pos,r.pos,l):null}findFittable(){let t=this.unplaced.openStart;for(let e=this.unplaced.content,n=0,r=this.unplaced.openEnd;n1&&(r=0),i.type.spec.isolating&&r<=n){t=n;break}e=i.content}for(let e=1;e<=2;e++)for(let n=1==e?t:this.unplaced.openStart;n>=0;n--){let t,r=null;n?(r=Le(this.unplaced.content,n-1).firstChild,t=r.content):t=this.unplaced.content;let i=t.firstChild;for(let o=this.depth;o>=0;o--){let t,{type:s,match:l}=this.frontier[o],a=null;if(1==e&&(i?l.matchType(i.type)||(a=l.fillBefore(dt.from(i),!1)):r&&s.compatibleContent(r.type)))return{sliceDepth:n,frontierDepth:o,parent:r,inject:a};if(2==e&&i&&(t=l.findWrapping(i.type)))return{sliceDepth:n,frontierDepth:o,parent:r,wrap:t};if(r&&l.matchType(r.type))break}}}openMore(){let{content:t,openStart:e,openEnd:n}=this.unplaced,r=Le(t,e);return!(!r.childCount||r.firstChild.isLeaf)&&(this.unplaced=new vt(t,e+1,Math.max(n,r.size+e>=t.size-n?e+1:0)),!0)}dropNode(){let{content:t,openStart:e,openEnd:n}=this.unplaced,r=Le(t,e);if(r.childCount<=1&&e>0){let i=t.size-e<=e+r.size;this.unplaced=new vt(Ve(t,e-1,1),e-1,i?e-1:n)}else this.unplaced=new vt(Ve(t,e,1),e,n)}placeNodes({sliceDepth:t,frontierDepth:e,parent:n,inject:r,wrap:i}){for(;this.depth>e;)this.closeFrontierNode();if(i)for(let p=0;p1||0==l||t.content.size)&&(h=e,c.push(We(t.mark(u.allowedMarks(t.marks)),1==a?l:0,a==s.childCount?d:-1)))}let f=a==s.childCount;f||(d=-1),this.placed=Fe(this.placed,e,dt.from(c)),this.frontier[e].match=h,f&&d<0&&n&&n.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let p=0,m=s;p1&&r==this.$to.end(--n);)++r;return r}findCloseLevel(t){t:for(let e=Math.min(this.depth,t.depth);e>=0;e--){let{match:n,type:r}=this.frontier[e],i=e=0;n--){let{match:e,type:r}=this.frontier[n],i=qe(t,n,r,e,!0);if(!i||i.childCount)continue t}return{depth:e,fit:o,move:i?t.doc.resolve(t.after(e+1)):t}}}}close(t){let e=this.findCloseLevel(t);if(!e)return null;for(;this.depth>e.depth;)this.closeFrontierNode();e.fit.childCount&&(this.placed=Fe(this.placed,e.depth,e.fit)),t=e.move;for(let n=e.depth+1;n<=t.depth;n++){let e=t.node(n),r=e.type.contentMatch.fillBefore(e.content,!0,t.index(n));this.openFrontierNode(e.type,e.attrs,r)}return t}openFrontierNode(t,e=null,n){let r=this.frontier[this.depth];r.match=r.match.matchType(t),this.placed=Fe(this.placed,this.depth,dt.from(t.create(e,n))),this.frontier.push({type:t,match:t.contentMatch})}closeFrontierNode(){let t=this.frontier.pop().match.fillBefore(dt.empty,!0);t.childCount&&(this.placed=Fe(this.placed,this.frontier.length,t))}}function Ve(t,e,n){return 0==e?t.cutByIndex(n,t.childCount):t.replaceChild(0,t.firstChild.copy(Ve(t.firstChild.content,e-1,n)))}function Fe(t,e,n){return 0==e?t.append(n):t.replaceChild(t.childCount-1,t.lastChild.copy(Fe(t.lastChild.content,e-1,n)))}function Le(t,e){for(let n=0;n1&&(r=r.replaceChild(0,We(r.firstChild,e-1,1==r.childCount?n-1:0))),e>0&&(r=t.type.contentMatch.fillBefore(r).append(r),n<=0&&(r=r.append(t.type.contentMatch.matchFragment(r).fillBefore(dt.empty,!0)))),t.copy(r)}function qe(t,e,n,r,i){let o=t.node(e),s=i?t.indexAfter(e):t.index(e);if(s==o.childCount&&!n.compatibleContent(o.type))return null;let l=r.fillBefore(o.content,!0,s);return l&&!function(t,e,n){for(let r=n;rr){let e=i.contentMatchAt(0),n=e.fillBefore(t).append(t);t=n.append(e.matchFragment(n).fillBefore(dt.empty,!0))}return t}function He(t,e){let n=[];for(let r=Math.min(t.depth,e.depth);r>=0;r--){let i=t.start(r);if(ie.pos+(e.depth-r)||t.node(r).type.spec.isolating||e.node(r).type.spec.isolating)break;(i==e.start(r)||r==t.depth&&r==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&r&&e.start(r-1)==i-1)&&n.push(r)}return n}class Ye extends xe{constructor(t,e,n){super(),this.pos=t,this.attr=e,this.value=n}apply(t){let e=t.nodeAt(this.pos);if(!e)return Se.fail("No node at attribute step's position");let n=Object.create(null);for(let i in e.attrs)n[i]=e.attrs[i];n[this.attr]=this.value;let r=e.type.create(n,null,e.marks);return Se.fromReplace(t,this.pos,this.pos+1,new vt(dt.from(r),0,e.isLeaf?0:1))}getMap(){return ve.empty}invert(t){return new Ye(this.pos,this.attr,t.nodeAt(this.pos).attrs[this.attr])}map(t){let e=t.mapResult(this.pos,1);return e.deletedAfter?null:new Ye(e.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(t,e){if("number"!=typeof e.pos||"string"!=typeof e.attr)throw new RangeError("Invalid input for AttrStep.fromJSON");return new Ye(e.pos,e.attr,e.value)}}xe.jsonID("attr",Ye);let Ue=class extends Error{};Ue=function t(e){let n=Error.call(this,e);return n.__proto__=t.prototype,n},(Ue.prototype=Object.create(Error.prototype)).constructor=Ue,Ue.prototype.name="TransformError";class Ge{constructor(t){this.doc=t,this.steps=[],this.docs=[],this.mapping=new we}get before(){return this.docs.length?this.docs[0]:this.doc}step(t){let e=this.maybeStep(t);if(e.failed)throw new Ue(e.failed);return this}maybeStep(t){let e=t.apply(this.doc);return e.failed||this.addStep(t,e.doc),e}get docChanged(){return this.steps.length>0}addStep(t,e){this.docs.push(this.doc),this.steps.push(t),this.mapping.appendMap(t.getMap()),this.doc=e}replace(t,e=t,n=vt.empty){let r=_e(this.doc,t,e,n);return r&&this.step(r),this}replaceWith(t,e,n){return this.replace(t,e,new vt(dt.from(n),0,0))}delete(t,e){return this.replace(t,e,vt.empty)}insert(t,e){return this.replaceWith(t,t,e)}replaceRange(t,e,n){return function(t,e,n,r){if(!r.size)return t.deleteRange(e,n);let i=t.doc.resolve(e),o=t.doc.resolve(n);if(Be(i,o,r))return t.step(new Ne(e,n,r));let s=He(i,t.doc.resolve(n));0==s[s.length-1]&&s.pop();let l=-(i.depth+1);s.unshift(l);for(let d=i.depth,f=i.pos-1;d>0;d--,f--){let t=i.node(d).type.spec;if(t.defining||t.definingAsContext||t.isolating)break;s.indexOf(d)>-1?l=d:i.before(d)==f&&s.splice(1,0,-d)}let a=s.indexOf(l),c=[],h=r.openStart;for(let d=r.content,f=0;;f++){let t=d.firstChild;if(c.push(t),f==r.openStart)break;d=t.content}for(let d=h-1;d>=0;d--){let t=c[d].type,e=Je(t);if(e&&i.node(a).type!=t)h=d;else if(e||!t.isTextblock)break}for(let d=r.openStart;d>=0;d--){let e=(d+h+1)%(r.openStart+1),l=c[e];if(l)for(let c=0;c=0&&(t.replace(e,n,r),!(t.steps.length>u));d--){let t=s[d];t<0||(e=i.before(t),n=o.after(t))}}(this,t,e,n),this}replaceRangeWith(t,e,n){return function(t,e,n,r){if(!r.isInline&&e==n&&t.doc.resolve(e).parent.content.size){let i=function(t,e,n){let r=t.resolve(e);if(r.parent.canReplaceWith(r.index(),r.index(),n))return e;if(0==r.parentOffset)for(let i=r.depth-1;i>=0;i--){let t=r.index(i);if(r.node(i).canReplaceWith(t,t,n))return r.before(i+1);if(t>0)return null}if(r.parentOffset==r.parent.content.size)for(let i=r.depth-1;i>=0;i--){let t=r.indexAfter(i);if(r.node(i).canReplaceWith(t,t,n))return r.after(i+1);if(t0&&(n||r.node(e-1).canReplace(r.index(e-1),i.indexAfter(e-1))))return t.delete(r.before(e),i.after(e))}for(let s=1;s<=r.depth&&s<=i.depth;s++)if(e-r.start(s)==r.depth-s&&n>r.end(s)&&i.end(s)-n!=i.depth-s)return t.delete(r.before(s),n);t.delete(e,n)}(this,t,e),this}lift(t,e){return function(t,e,n){let{$from:r,$to:i,depth:o}=e,s=r.before(o+1),l=i.after(o+1),a=s,c=l,h=dt.empty,u=0;for(let p=o,m=!1;p>n;p--)m||r.index(p)>0?(m=!0,h=dt.from(r.node(p).copy(h)),u++):a--;let d=dt.empty,f=0;for(let p=o,m=!1;p>n;p--)m||i.after(p+1)=0;s--){if(r.size){let t=n[s].type.contentMatch.matchFragment(r);if(!t||!t.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=dt.from(n[s].type.create(n[s].attrs,r))}let i=e.start,o=e.end;t.step(new Te(i,o,i,o,new vt(r,0,0),n.length,!0))}(this,t,e),this}setBlockType(t,e=t,n,r=null){return function(t,e,n,r,i){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let o=t.steps.length;t.doc.nodesBetween(e,n,((e,n)=>{if(e.isTextblock&&!e.hasMarkup(r,i)&&function(t,e,n){let r=t.resolve(e),i=r.index();return r.parent.canReplaceWith(i,i+1,n)}(t.doc,t.mapping.slice(o).map(n),r)){t.clearIncompatible(t.mapping.slice(o).map(n,1),r);let s=t.mapping.slice(o),l=s.map(n,1),a=s.map(n+e.nodeSize,1);return t.step(new Te(l,a,l+1,a-1,new vt(dt.from(r.create(i,null,e.marks)),0,0),1,!0)),!1}}))}(this,t,e,n,r),this}setNodeMarkup(t,e,n=null,r){return function(t,e,n,r,i){let o=t.doc.nodeAt(e);if(!o)throw new RangeError("No node at given position");n||(n=o.type);let s=n.create(r,null,i||o.marks);if(o.isLeaf)return t.replaceWith(e,e+o.nodeSize,s);if(!n.validContent(o.content))throw new RangeError("Invalid content for node type "+n.name);t.step(new Te(e,e+o.nodeSize,e+1,e+o.nodeSize-1,new vt(dt.from(s),0,0),1,!0))}(this,t,e,n,r),this}setNodeAttribute(t,e,n){return this.step(new Ye(t,e,n)),this}addNodeMark(t,e){return this.step(new Ce(t,e)),this}removeNodeMark(t,e){if(!(e instanceof gt)){let n=this.doc.nodeAt(t);if(!n)throw new RangeError("No node at position "+t);if(!(e=e.isInSet(n.marks)))return this}return this.step(new De(t,e)),this}split(t,e=1,n){return function(t,e,n=1,r){let i=t.doc.resolve(e),o=dt.empty,s=dt.empty;for(let l=i.depth,a=i.depth-n,c=n-1;l>a;l--,c--){o=dt.from(i.node(l).copy(o));let t=r&&r[c];s=dt.from(t?t.type.create(t.attrs,s):i.node(l).copy(s))}t.step(new Ne(e,e,new vt(o.append(s),n,n),!0))}(this,t,e,n),this}addMark(t,e,n){return function(t,e,n,r){let i,o,s=[],l=[];t.doc.nodesBetween(e,n,((t,a,c)=>{if(!t.isInline)return;let h=t.marks;if(!r.isInSet(h)&&c.type.allowsMarkType(r.type)){let c=Math.max(a,e),u=Math.min(a+t.nodeSize,n),d=r.addToSet(h);for(let t=0;tt.step(e))),l.forEach((e=>t.step(e)))}(this,t,e,n),this}removeMark(t,e,n){return function(t,e,n,r){let i=[],o=0;t.doc.nodesBetween(e,n,((t,s)=>{if(!t.isInline)return;o++;let l=null;if(r instanceof Qt){let e,n=t.marks;for(;e=r.isInSet(n);)(l||(l=[])).push(e),n=e.removeFromSet(n)}else r?r.isInSet(t.marks)&&(l=[r]):l=t.marks;if(l&&l.length){let r=Math.min(s+t.nodeSize,n);for(let t=0;tt.step(new Oe(e.from,e.to,e.style))))}(this,t,e,n),this}clearIncompatible(t,e,n){return function(t,e,n,r=n.contentMatch){let i=t.doc.nodeAt(e),o=[],s=e+1;for(let l=0;l=0;l--)t.step(o[l])}(this,t,e,n),this}}const Ze=Object.create(null);class Xe{constructor(t,e,n){this.$anchor=t,this.$head=e,this.ranges=n||[new Qe(t.min(e),t.max(e))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let t=this.ranges;for(let e=0;e=0;i--){let r=e<0?cn(t.node(0),t.node(i),t.before(i+1),t.index(i),e,n):cn(t.node(0),t.node(i),t.after(i+1),t.index(i)+1,e,n);if(r)return r}return null}static near(t,e=1){return this.findFrom(t,e)||this.findFrom(t,-e)||new ln(t.node(0))}static atStart(t){return cn(t,t,0,0,1)||new ln(t)}static atEnd(t){return cn(t,t,t.content.size,t.childCount,-1)||new ln(t)}static fromJSON(t,e){if(!e||!e.type)throw new RangeError("Invalid input for Selection.fromJSON");let n=Ze[e.type];if(!n)throw new RangeError(`No selection type ${e.type} defined`);return n.fromJSON(t,e)}static jsonID(t,e){if(t in Ze)throw new RangeError("Duplicate use of selection JSON ID "+t);return Ze[t]=e,e.prototype.jsonID=t,e}getBookmark(){return nn.between(this.$anchor,this.$head).getBookmark()}}Xe.prototype.visible=!0;class Qe{constructor(t,e){this.$from=t,this.$to=e}}let tn=!1;function en(t){tn||t.parent.inlineContent||(tn=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")"))}class nn extends Xe{constructor(t,e=t){en(t),en(e),super(t,e)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,e){let n=t.resolve(e.map(this.head));if(!n.parent.inlineContent)return Xe.near(n);let r=t.resolve(e.map(this.anchor));return new nn(r.parent.inlineContent?r:n,n)}replace(t,e=vt.empty){if(super.replace(t,e),e==vt.empty){let e=this.$from.marksAcross(this.$to);e&&t.ensureMarks(e)}}eq(t){return t instanceof nn&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new rn(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(t,e){if("number"!=typeof e.anchor||"number"!=typeof e.head)throw new RangeError("Invalid input for TextSelection.fromJSON");return new nn(t.resolve(e.anchor),t.resolve(e.head))}static create(t,e,n=e){let r=t.resolve(e);return new this(r,n==e?r:t.resolve(n))}static between(t,e,n){let r=t.pos-e.pos;if(n&&!r||(n=r>=0?1:-1),!e.parent.inlineContent){let t=Xe.findFrom(e,n,!0)||Xe.findFrom(e,-n,!0);if(!t)return Xe.near(e,n);e=t.$head}return t.parent.inlineContent||(0==r||(t=(Xe.findFrom(t,-n,!0)||Xe.findFrom(t,n,!0)).$anchor).posnew ln(t)};function cn(t,e,n,r,i,o=!1){if(e.inlineContent)return nn.create(t,n);for(let s=r-(i>0?0:1);i>0?s=0;s+=i){let r=e.child(s);if(r.isAtom){if(!o&&on.isSelectable(r))return on.create(t,n-(i<0?r.nodeSize:0))}else{let e=cn(t,r,n+i,i<0?r.childCount:0,i,o);if(e)return e}n+=r.nodeSize*i}return null}function hn(t,e,n){let r=t.steps.length-1;if(r{null==i&&(i=r)})),t.setSelection(Xe.near(t.doc.resolve(i),n)))}class un extends Ge{constructor(t){super(t.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=t.selection,this.storedMarks=t.storedMarks}get selection(){return this.curSelectionFor0}setStoredMarks(t){return this.storedMarks=t,this.updated|=2,this}ensureMarks(t){return gt.sameSet(this.storedMarks||this.selection.$from.marks(),t)||this.setStoredMarks(t),this}addStoredMark(t){return this.ensureMarks(t.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(t){return this.ensureMarks(t.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(2&this.updated)>0}addStep(t,e){super.addStep(t,e),this.updated=-3&this.updated,this.storedMarks=null}setTime(t){return this.time=t,this}replaceSelection(t){return this.selection.replace(this,t),this}replaceSelectionWith(t,e=!0){let n=this.selection;return e&&(t=t.mark(this.storedMarks||(n.empty?n.$from.marks():n.$from.marksAcross(n.$to)||gt.none))),n.replaceWith(this,t),this}deleteSelection(){return this.selection.replace(this),this}insertText(t,e,n){let r=this.doc.type.schema;if(null==e)return t?this.replaceSelectionWith(r.text(t),!0):this.deleteSelection();{if(null==n&&(n=e),n=null==n?e:n,!t)return this.deleteRange(e,n);let i=this.storedMarks;if(!i){let t=this.doc.resolve(e);i=n==e?t.marks():t.marksAcross(this.doc.resolve(n))}return this.replaceRangeWith(e,n,r.text(t,i)),this.selection.empty||this.setSelection(Xe.near(this.selection.$to)),this}}setMeta(t,e){return this.meta["string"==typeof t?t:t.key]=e,this}getMeta(t){return this.meta["string"==typeof t?t:t.key]}get isGeneric(){for(let t in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=4,this}get scrolledIntoView(){return(4&this.updated)>0}}function dn(t,e){return e&&t?t.bind(e):t}class fn{constructor(t,e,n){this.name=t,this.init=dn(e.init,n),this.apply=dn(e.apply,n)}}const pn=[new fn("doc",{init:t=>t.doc||t.schema.topNodeType.createAndFill(),apply:t=>t.doc}),new fn("selection",{init:(t,e)=>t.selection||Xe.atStart(e.doc),apply:t=>t.selection}),new fn("storedMarks",{init:t=>t.storedMarks||null,apply:(t,e,n,r)=>r.selection.$cursor?t.storedMarks:null}),new fn("scrollToSelection",{init:()=>0,apply:(t,e)=>t.scrolledIntoView?e+1:e})];class mn{constructor(t,e){this.schema=t,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=pn.slice(),e&&e.forEach((t=>{if(this.pluginsByKey[t.key])throw new RangeError("Adding different instances of a keyed plugin ("+t.key+")");this.plugins.push(t),this.pluginsByKey[t.key]=t,t.spec.state&&this.fields.push(new fn(t.key,t.spec.state,t))}))}}class gn{constructor(t){this.config=t}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(t){return this.applyTransaction(t).state}filterTransaction(t,e=-1){for(let n=0;nt.toJSON()))),t&&"object"==typeof t)for(let n in t){if("doc"==n||"selection"==n)throw new RangeError("The JSON fields `doc` and `selection` are reserved");let r=t[n],i=r.spec.state;i&&i.toJSON&&(e[n]=i.toJSON.call(r,this[r.key]))}return e}static fromJSON(t,e,n){if(!e)throw new RangeError("Invalid input for EditorState.fromJSON");if(!t.schema)throw new RangeError("Required config field 'schema' missing");let r=new mn(t.schema,t.plugins),i=new gn(r);return r.fields.forEach((r=>{if("doc"==r.name)i.doc=zt.fromJSON(t.schema,e.doc);else if("selection"==r.name)i.selection=Xe.fromJSON(i.doc,e.selection);else if("storedMarks"==r.name)e.storedMarks&&(i.storedMarks=e.storedMarks.map(t.schema.markFromJSON));else{if(n)for(let o in n){let s=n[o],l=s.spec.state;if(s.key==r.name&&l&&l.fromJSON&&Object.prototype.hasOwnProperty.call(e,o))return void(i[r.name]=l.fromJSON.call(s,t,e[o],i))}i[r.name]=r.init(t,i)}})),i}}function yn(t,e,n){for(let r in t){let i=t[r];i instanceof Function?i=i.bind(e):"handleDOMEvents"==r&&(i=yn(i,e,{})),n[r]=i}return n}class vn{constructor(t){this.spec=t,this.props={},t.props&&yn(t.props,this,this.props),this.key=t.key?t.key.key:bn("plugin")}getState(t){return t[this.key]}}const wn=Object.create(null);function bn(t){return t in wn?t+"$"+ ++wn[t]:(wn[t]=0,t+"$")}class xn{constructor(t="key"){this.key=bn(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}const Sn=function(t){for(var e=0;;e++)if(!(t=t.previousSibling))return e},kn=function(t){let e=t.assignedSlot||t.parentNode;return e&&11==e.nodeType?e.host:e};let Mn=null;const On=function(t,e,n){let r=Mn||(Mn=document.createRange());return r.setEnd(t,null==n?t.nodeValue.length:n),r.setStart(t,e||0),r},Cn=function(t,e,n,r){return n&&(Nn(t,e,n,r,-1)||Nn(t,e,n,r,1))},Dn=/^(img|br|input|textarea|hr)$/i;function Nn(t,e,n,r,i){for(;;){if(t==n&&e==r)return!0;if(e==(i<0?0:Tn(t))){let n=t.parentNode;if(!n||1!=n.nodeType||An(t)||Dn.test(t.nodeName)||"false"==t.contentEditable)return!1;e=Sn(t)+(i<0?0:1),t=n}else{if(1!=t.nodeType)return!1;if("false"==(t=t.childNodes[e+(i<0?-1:0)]).contentEditable)return!1;e=i<0?Tn(t):0}}}function Tn(t){return 3==t.nodeType?t.nodeValue.length:t.childNodes.length}function An(t){let e;for(let n=t;n&&!(e=n.pmViewDesc);n=n.parentNode);return e&&e.node&&e.node.isBlock&&(e.dom==t||e.contentDOM==t)}const En=function(t){return t.focusNode&&Cn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function $n(t,e){let n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=t,n.key=n.code=e,n}const Pn="undefined"!=typeof navigator?navigator:null,In="undefined"!=typeof document?document:null,Rn=Pn&&Pn.userAgent||"",zn=/Edge\/(\d+)/.exec(Rn),_n=/MSIE \d/.exec(Rn),Bn=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(Rn),jn=!!(_n||Bn||zn),Vn=_n?document.documentMode:Bn?+Bn[1]:zn?+zn[1]:0,Fn=!jn&&/gecko\/(\d+)/i.test(Rn);Fn&&(/Firefox\/(\d+)/.exec(Rn)||[0,0])[1];const Ln=!jn&&/Chrome\/(\d+)/.exec(Rn),Wn=!!Ln,qn=Ln?+Ln[1]:0,Jn=!jn&&!!Pn&&/Apple Computer/.test(Pn.vendor),Kn=Jn&&(/Mobile\/\w+/.test(Rn)||!!Pn&&Pn.maxTouchPoints>2),Hn=Kn||!!Pn&&/Mac/.test(Pn.platform),Yn=!!Pn&&/Win/.test(Pn.platform),Un=/Android \d/.test(Rn),Gn=!!In&&"webkitFontSmoothing"in In.documentElement.style,Zn=Gn?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function Xn(t){return{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function Qn(t,e){return"number"==typeof t?t:t[e]}function tr(t){let e=t.getBoundingClientRect(),n=e.width/t.offsetWidth||1,r=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*n,top:e.top,bottom:e.top+t.clientHeight*r}}function er(t,e,n){let r=t.someProp("scrollThreshold")||0,i=t.someProp("scrollMargin")||5,o=t.dom.ownerDocument;for(let s=n||t.dom;s;s=kn(s)){if(1!=s.nodeType)continue;let t=s,n=t==o.body,l=n?Xn(o):tr(t),a=0,c=0;if(e.topl.bottom-Qn(r,"bottom")&&(c=e.bottom-e.top>l.bottom-l.top?e.top+Qn(i,"top")-l.top:e.bottom-l.bottom+Qn(i,"bottom")),e.leftl.right-Qn(r,"right")&&(a=e.right-l.right+Qn(i,"right")),a||c)if(n)o.defaultView.scrollBy(a,c);else{let n=t.scrollLeft,r=t.scrollTop;c&&(t.scrollTop+=c),a&&(t.scrollLeft+=a);let i=t.scrollLeft-n,o=t.scrollTop-r;e={left:e.left-i,top:e.top-o,right:e.right-i,bottom:e.bottom-o}}if(n||/^(fixed|sticky)$/.test(getComputedStyle(s).position))break}}function nr(t){let e=[],n=t.ownerDocument;for(let r=t;r&&(e.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),t!=n);r=kn(r));return e}function rr(t,e){for(let n=0;n=c){a=Math.max(f.bottom,a),c=Math.min(f.top,c);let t=f.left>e.left?f.left-e.left:f.right=(f.left+f.right)/2?1:0));continue}}else f.top>e.top&&!i&&f.left<=e.left&&f.right>=e.left&&(i=h,o={left:Math.max(f.left,Math.min(f.right,e.left)),top:f.top});!n&&(e.left>=f.right&&e.top>=f.top||e.left>=f.left&&e.top>=f.bottom)&&(l=u+1)}}return!n&&i&&(n=i,r=o,s=0),n&&3==n.nodeType?function(t,e){let n=t.nodeValue.length,r=document.createRange();for(let i=0;i=(n.left+n.right)/2?1:0)}}return{node:t,offset:0}}(n,r):!n||s&&1==n.nodeType?{node:t,offset:l}:or(n,r)}function sr(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function lr(t,e,n){let r=t.childNodes.length;if(r&&n.tope.top&&i++}let r;Gn&&i&&1==n.nodeType&&1==(r=n.childNodes[i-1]).nodeType&&"false"==r.contentEditable&&r.getBoundingClientRect().top>=e.top&&i--,n==t.dom&&i==n.childNodes.length-1&&1==n.lastChild.nodeType&&e.top>n.lastChild.getBoundingClientRect().bottom?s=t.state.doc.content.size:0!=i&&1==n.nodeType&&"BR"==n.childNodes[i-1].nodeName||(s=function(t,e,n,r){let i=-1;for(let o=e,s=!1;o!=t.dom;){let e=t.docView.nearestDesc(o,!0);if(!e)return null;if(1==e.dom.nodeType&&(e.node.isBlock&&e.parent&&!s||!e.contentDOM)){let t=e.dom.getBoundingClientRect();if(e.node.isBlock&&e.parent&&!s&&(s=!0,t.left>r.left||t.top>r.top?i=e.posBefore:(t.right-1?i:t.docView.posFromDOM(e,n,-1)}(t,n,i,e))}null==s&&(s=function(t,e,n){let{node:r,offset:i}=or(e,n),o=-1;if(1==r.nodeType&&!r.firstChild){let t=r.getBoundingClientRect();o=t.left!=t.right&&n.left>(t.left+t.right)/2?1:-1}return t.docView.posFromDOM(r,i,o)}(t,l,e));let a=t.docView.nearestDesc(l,!0);return{pos:s,inside:a?a.posAtStart-a.border:-1}}function cr(t){return t.top=0&&i==r.nodeValue.length?(t--,o=1):n<0?t--:e++,fr(hr(On(r,t,e),o),o<0)}{let t=hr(On(r,i,i),n);if(Fn&&i&&/\s/.test(r.nodeValue[i-1])&&i=0)}if(null==o&&i&&(n<0||i==Tn(r))){let t=r.childNodes[i-1],e=3==t.nodeType?On(t,Tn(t)-(s?0:1)):1!=t.nodeType||"BR"==t.nodeName&&t.nextSibling?null:t;if(e)return fr(hr(e,1),!1)}if(null==o&&i=0)}function fr(t,e){if(0==t.width)return t;let n=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:n,right:n}}function pr(t,e){if(0==t.height)return t;let n=e?t.top:t.bottom;return{top:n,bottom:n,left:t.left,right:t.right}}function mr(t,e,n){let r=t.state,i=t.root.activeElement;r!=e&&t.updateState(e),i!=t.dom&&t.focus();try{return n()}finally{r!=e&&t.updateState(r),i!=t.dom&&i&&i.focus()}}const gr=/[\u0590-\u08ac]/;let yr=null,vr=null,wr=!1;function br(t,e,n){return yr==e&&vr==n?wr:(yr=e,vr=n,wr="up"==n||"down"==n?function(t,e,n){let r=e.selection,i="up"==n?r.$from:r.$to;return mr(t,e,(()=>{let{node:e}=t.docView.domFromPos(i.pos,"up"==n?-1:1);for(;;){let n=t.docView.nearestDesc(e,!0);if(!n)break;if(n.node.isBlock){e=n.contentDOM||n.dom;break}e=n.dom.parentNode}let r=dr(t,i.pos,1);for(let t=e.firstChild;t;t=t.nextSibling){let e;if(1==t.nodeType)e=t.getClientRects();else{if(3!=t.nodeType)continue;e=On(t,0,t.nodeValue.length).getClientRects()}for(let t=0;ti.top+1&&("up"==n?r.top-i.top>2*(i.bottom-r.top):i.bottom-r.bottom>2*(r.bottom-i.top)))return!1}}return!0}))}(t,e,n):function(t,e,n){let{$head:r}=e.selection;if(!r.parent.isTextblock)return!1;let i=r.parentOffset,o=!i,s=i==r.parent.content.size,l=t.domSelection();return gr.test(r.parent.textContent)&&l.modify?mr(t,e,(()=>{let{focusNode:e,focusOffset:i,anchorNode:o,anchorOffset:s}=t.domSelectionRange(),a=l.caretBidiLevel;l.modify("move",n,"character");let c=r.depth?t.docView.domAfterPos(r.before()):t.dom,{focusNode:h,focusOffset:u}=t.domSelectionRange(),d=h&&!c.contains(1==h.nodeType?h:h.parentNode)||e==h&&i==u;try{l.collapse(o,s),e&&(e!=o||i!=s)&&l.extend&&l.extend(e,i)}catch(f){}return null!=a&&(l.caretBidiLevel=a),d})):"left"==n||"backward"==n?o:s}(t,e,n))}class xr{constructor(t,e,n,r){this.parent=t,this.children=e,this.dom=n,this.contentDOM=r,this.dirty=0,n.pmViewDesc=this}matchesWidget(t){return!1}matchesMark(t){return!1}matchesNode(t,e,n){return!1}matchesHack(t){return!1}parseRule(){return null}stopEvent(t){return!1}get size(){let t=0;for(let e=0;eSn(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))r=2&t.compareDocumentPosition(this.contentDOM);else if(this.dom.firstChild){if(0==e)for(let e=t;;e=e.parentNode){if(e==this.dom){r=!1;break}if(e.previousSibling)break}if(null==r&&e==t.childNodes.length)for(let e=t;;e=e.parentNode){if(e==this.dom){r=!0;break}if(e.nextSibling)break}}return(null==r?n>0:r)?this.posAtEnd:this.posAtStart}nearestDesc(t,e=!1){for(let n=!0,r=t;r;r=r.parentNode){let i,o=this.getDesc(r);if(o&&(!e||o.node)){if(!n||!(i=o.nodeDOM)||(1==i.nodeType?i.contains(1==t.nodeType?t:t.parentNode):i==t))return o;n=!1}}}getDesc(t){let e=t.pmViewDesc;for(let n=e;n;n=n.parent)if(n==this)return e}posFromDOM(t,e,n){for(let r=t;r;r=r.parentNode){let i=this.getDesc(r);if(i)return i.localPosFromDOM(t,e,n)}return-1}descAt(t){for(let e=0,n=0;et||e instanceof Nr){r=t-i;break}i=o}if(r)return this.children[n].domFromPos(r-this.children[n].border,e);for(let i;n&&!(i=this.children[n-1]).size&&i instanceof Sr&&i.side>=0;n--);if(e<=0){let t,r=!0;for(;t=n?this.children[n-1]:null,t&&t.dom.parentNode!=this.contentDOM;n--,r=!1);return t&&e&&r&&!t.border&&!t.domAtom?t.domFromPos(t.size,e):{node:this.contentDOM,offset:t?Sn(t.dom)+1:0}}{let t,r=!0;for(;t=n=i&&e<=l-n.border&&n.node&&n.contentDOM&&this.contentDOM.contains(n.contentDOM))return n.parseRange(t,e,i);t=o;for(let e=s;e>0;e--){let n=this.children[e-1];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(1)){r=Sn(n.dom)+1;break}t-=n.size}-1==r&&(r=0)}if(r>-1&&(l>e||s==this.children.length-1)){e=l;for(let t=s+1;tf&&oe){let t=s;s=l,l=t}let n=document.createRange();n.setEnd(l.node,l.offset),n.setStart(s.node,s.offset),a.removeAllRanges(),a.addRange(n)}}ignoreMutation(t){return!this.contentDOM&&"selection"!=t.type}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(t,e){for(let n=0,r=0;r=n:tn){let r=n+i.border,s=o-i.border;if(t>=r&&e<=s)return this.dirty=t==n||e==o?2:1,void(t!=r||e!=s||!i.contentLost&&i.dom.parentNode==this.contentDOM?i.markDirty(t-r,e-r):i.dirty=3);i.dirty=i.dom!=i.contentDOM||i.dom.parentNode!=this.contentDOM||i.children.length?3:2}n=o}this.dirty=2}markParentsDirty(){let t=1;for(let e=this.parent;e;e=e.parent,t++){let n=1==t?2:1;e.dirtyi?i.parent?i.parent.posBeforeChild(i):void 0:r))),!e.type.spec.raw){if(1!=o.nodeType){let t=document.createElement("span");t.appendChild(o),o=t}o.contentEditable="false",o.classList.add("ProseMirror-widget")}super(t,[],o,null),this.widget=e,this.widget=e,i=this}matchesWidget(t){return 0==this.dirty&&t.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(t){let e=this.widget.spec.stopEvent;return!!e&&e(t)}ignoreMutation(t){return"selection"!=t.type||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class kr extends xr{constructor(t,e,n,r){super(t,[],e,null),this.textDOM=n,this.text=r}get size(){return this.text.length}localPosFromDOM(t,e){return t!=this.textDOM?this.posAtStart+(e?this.size:0):this.posAtStart+e}domFromPos(t){return{node:this.textDOM,offset:t}}ignoreMutation(t){return"characterData"===t.type&&t.target.nodeValue==t.oldValue}}class Mr extends xr{constructor(t,e,n,r){super(t,[],n,r),this.mark=e}static create(t,e,n,r){let i=r.nodeViews[e.type.name],o=i&&i(e,r,n);return o&&o.dom||(o=de.renderSpec(document,e.type.spec.toDOM(e,n))),new Mr(t,e,o.dom,o.contentDOM||o.dom)}parseRule(){return 3&this.dirty||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(t){return 3!=this.dirty&&this.mark.eq(t)}markDirty(t,e){if(super.markDirty(t,e),0!=this.dirty){let t=this.parent;for(;!t.node;)t=t.parent;t.dirty0&&(i=Fr(i,0,t,n));for(let s=0;ss?s.parent?s.parent.posBeforeChild(s):void 0:o),n,r),c=a&&a.dom,h=a&&a.contentDOM;if(e.isText)if(c){if(3!=c.nodeType)throw new RangeError("Text must be rendered as a DOM text node")}else c=document.createTextNode(e.text);else c||({dom:c,contentDOM:h}=de.renderSpec(document,e.type.spec.toDOM(e)));h||e.isText||"BR"==c.nodeName||(c.hasAttribute("contenteditable")||(c.contentEditable="false"),e.type.spec.draggable&&(c.draggable=!0));let u=c;return c=zr(c,n,e),a?s=new Tr(t,e,n,r,c,h||null,u,a,i,o+1):e.isText?new Dr(t,e,n,r,c,u,i):new Or(t,e,n,r,c,h||null,u,i,o+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let t={node:this.node.type.name,attrs:this.node.attrs};if("pre"==this.node.type.whitespace&&(t.preserveWhitespace="full"),this.contentDOM)if(this.contentLost){for(let e=this.children.length-1;e>=0;e--){let n=this.children[e];if(this.dom.contains(n.dom.parentNode)){t.contentElement=n.dom.parentNode;break}}t.contentElement||(t.getContent=()=>dt.empty)}else t.contentElement=this.contentDOM;else t.getContent=()=>this.node.content;return t}matchesNode(t,e,n){return 0==this.dirty&&t.eq(this.node)&&_r(e,this.outerDeco)&&n.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(t,e){let n=this.node.inlineContent,r=e,i=t.composing?this.localCompositionInfo(t,e):null,o=i&&i.pos>-1?i:null,s=i&&i.pos<0,l=new jr(this,o&&o.node,t);!function(t,e,n,r){let i=e.locals(t),o=0;if(0==i.length){for(let n=0;no;)l.push(i[s++]);let p=o+d.nodeSize;if(d.isText){let t=p;s!t.inline)):l.slice(),e.forChild(o,d),f),o=p}}(this.node,this.innerDeco,((e,i,o)=>{e.spec.marks?l.syncToMarks(e.spec.marks,n,t):e.type.side>=0&&!o&&l.syncToMarks(i==this.node.childCount?gt.none:this.node.child(i).marks,n,t),l.placeWidget(e,t,r)}),((e,o,a,c)=>{let h;l.syncToMarks(e.marks,n,t),l.findNodeMatch(e,o,a,c)||s&&t.state.selection.from>r&&t.state.selection.to-1&&l.updateNodeAt(e,o,a,h,t)||l.updateNextNode(e,o,a,t,c,r)||l.addNode(e,o,a,t,r),r+=e.nodeSize})),l.syncToMarks([],n,t),this.node.isTextblock&&l.addTextblockHacks(),l.destroyRest(),(l.changed||2==this.dirty)&&(o&&this.protectLocalComposition(t,o),Ar(this.contentDOM,this.children,t),Kn&&function(t){if("UL"==t.nodeName||"OL"==t.nodeName){let e=t.style.cssText;t.style.cssText=e+"; list-style: square !important",window.getComputedStyle(t).listStyle,t.style.cssText=e}}(this.dom))}localCompositionInfo(t,e){let{from:n,to:r}=t.state.selection;if(!(t.state.selection instanceof nn)||ne+this.node.content.size)return null;let i=t.domSelectionRange(),o=function(t,e){for(;;){if(3==t.nodeType)return t;if(1==t.nodeType&&e>0){if(t.childNodes.length>e&&3==t.childNodes[e].nodeType)return t.childNodes[e];e=Tn(t=t.childNodes[e-1])}else{if(!(1==t.nodeType&&e=n){if(o>=r&&a.slice(r-e.length-l,r-l)==e)return r-e.length;let t=l=0&&t+e.length+l>=n)return l+t;if(n==r&&a.length>=r+e.length-l&&a.slice(r-l,r-l+e.length)==e)return r}}return-1}(this.node.content,t,n-e,r-e);return i<0?null:{node:o,pos:i,text:t}}return{node:o,pos:-1,text:""}}protectLocalComposition(t,{node:e,pos:n,text:r}){if(this.getDesc(e))return;let i=e;for(;i.parentNode!=this.contentDOM;i=i.parentNode){for(;i.previousSibling;)i.parentNode.removeChild(i.previousSibling);for(;i.nextSibling;)i.parentNode.removeChild(i.nextSibling);i.pmViewDesc&&(i.pmViewDesc=void 0)}let o=new kr(this,i,e,r);t.input.compositionNodes.push(o),this.children=Fr(this.children,n,n+r.length,t,o)}update(t,e,n,r){return!(3==this.dirty||!t.sameMarkup(this.node))&&(this.updateInner(t,e,n,r),!0)}updateInner(t,e,n,r){this.updateOuterDeco(e),this.node=t,this.innerDeco=n,this.contentDOM&&this.updateChildren(r,this.posAtStart),this.dirty=0}updateOuterDeco(t){if(_r(t,this.outerDeco))return;let e=1!=this.nodeDOM.nodeType,n=this.dom;this.dom=Ir(this.dom,this.nodeDOM,Pr(this.outerDeco,this.node,e),Pr(t,this.node,e)),this.dom!=n&&(n.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=t}selectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.add("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||(this.dom.draggable=!0)}deselectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.remove("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||this.dom.removeAttribute("draggable")}get domAtom(){return this.node.isAtom}}function Cr(t,e,n,r,i){zr(r,e,t);let o=new Or(void 0,t,e,n,r,r,r,i,0);return o.contentDOM&&o.updateChildren(i,0),o}class Dr extends Or{constructor(t,e,n,r,i,o,s){super(t,e,n,r,i,null,o,s,0)}parseRule(){let t=this.nodeDOM.parentNode;for(;t&&t!=this.dom&&!t.pmIsDeco;)t=t.parentNode;return{skip:t||!0}}update(t,e,n,r){return!(3==this.dirty||0!=this.dirty&&!this.inParent()||!t.sameMarkup(this.node))&&(this.updateOuterDeco(e),0==this.dirty&&t.text==this.node.text||t.text==this.nodeDOM.nodeValue||(this.nodeDOM.nodeValue=t.text,r.trackWrites==this.nodeDOM&&(r.trackWrites=null)),this.node=t,this.dirty=0,!0)}inParent(){let t=this.parent.contentDOM;for(let e=this.nodeDOM;e;e=e.parentNode)if(e==t)return!0;return!1}domFromPos(t){return{node:this.nodeDOM,offset:t}}localPosFromDOM(t,e,n){return t==this.nodeDOM?this.posAtStart+Math.min(e,this.node.text.length):super.localPosFromDOM(t,e,n)}ignoreMutation(t){return"characterData"!=t.type&&"selection"!=t.type}slice(t,e,n){let r=this.node.cut(t,e),i=document.createTextNode(r.text);return new Dr(this.parent,r,this.outerDeco,this.innerDeco,i,i,n)}markDirty(t,e){super.markDirty(t,e),this.dom==this.nodeDOM||0!=t&&e!=this.nodeDOM.nodeValue.length||(this.dirty=3)}get domAtom(){return!1}}class Nr extends xr{parseRule(){return{ignore:!0}}matchesHack(t){return 0==this.dirty&&this.dom.nodeName==t}get domAtom(){return!0}get ignoreForCoords(){return"IMG"==this.dom.nodeName}}class Tr extends Or{constructor(t,e,n,r,i,o,s,l,a,c){super(t,e,n,r,i,o,s,a,c),this.spec=l}update(t,e,n,r){if(3==this.dirty)return!1;if(this.spec.update){let i=this.spec.update(t,e,n);return i&&this.updateInner(t,e,n,r),i}return!(!this.contentDOM&&!t.isLeaf)&&super.update(t,e,n,r)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(t,e,n,r){this.spec.setSelection?this.spec.setSelection(t,e,n):super.setSelection(t,e,n,r)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(t){return!!this.spec.stopEvent&&this.spec.stopEvent(t)}ignoreMutation(t){return this.spec.ignoreMutation?this.spec.ignoreMutation(t):super.ignoreMutation(t)}}function Ar(t,e,n){let r=t.firstChild,i=!1;for(let o=0;o0;){let l;for(;;)if(r){let t=n.children[r-1];if(!(t instanceof Mr)){l=t,r--;break}n=t,r=t.children.length}else{if(n==e)break t;r=n.parent.children.indexOf(n),n=n.parent}let a=l.node;if(a){if(a!=t.child(i-1))break;--i,o.set(l,i),s.push(l)}}return{index:i,matched:o,matches:s.reverse()}}(t.node.content,t)}destroyBetween(t,e){if(t!=e){for(let n=t;n>1,o=Math.min(i,t.length);for(;r-1)r>this.index&&(this.changed=!0,this.destroyBetween(this.index,r)),this.top=this.top.children[this.index];else{let r=Mr.create(this.top,t[i],e,n);this.top.children.splice(this.index,0,r),this.top=r,this.changed=!0}this.index=0,i++}}findNodeMatch(t,e,n,r){let i,o=-1;if(r>=this.preMatch.index&&(i=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&i.matchesNode(t,e,n))o=this.top.children.indexOf(i,this.index);else for(let s=this.index,l=Math.min(this.top.children.length,s+5);s=n||h<=e?o.push(a):(cn&&o.push(a.slice(n-c,a.size,r)))}return o}function Lr(t,e=null){let n=t.domSelectionRange(),r=t.state.doc;if(!n.focusNode)return null;let i=t.docView.nearestDesc(n.focusNode),o=i&&0==i.size,s=t.docView.posFromDOM(n.focusNode,n.focusOffset,1);if(s<0)return null;let l,a,c=r.resolve(s);if(En(n)){for(l=c;i&&!i.node;)i=i.parent;let t=i.node;if(i&&t.isAtom&&on.isSelectable(t)&&i.parent&&(!t.isInline||!function(t,e,n){for(let r=0==e,i=e==Tn(t);r||i;){if(t==n)return!0;let e=Sn(t);if(!(t=t.parentNode))return!1;r=r&&0==e,i=i&&e==Tn(t)}}(n.focusNode,n.focusOffset,i.dom))){let t=i.posBefore;a=new on(s==t?c:r.resolve(t))}}else{let e=t.docView.posFromDOM(n.anchorNode,n.anchorOffset,1);if(e<0)return null;l=r.resolve(e)}if(!a){a=Zr(t,l,c,"pointer"==e||t.state.selection.head{n.anchorNode==r&&n.anchorOffset==i||(e.removeEventListener("selectionchange",t.input.hideSelectionGuard),setTimeout((()=>{Wr(t)&&!t.state.selection.visible||t.dom.classList.remove("ProseMirror-hideselection")}),20))})}(t))}t.domObserver.setCurSelection(),t.domObserver.connectSelection()}}const Jr=Jn||Wn&&qn<63;function Kr(t,e){let{node:n,offset:r}=t.docView.domFromPos(e,0),i=rr(t,e,n)))||nn.between(e,n,r)}function Xr(t){return!(t.editable&&!t.hasFocus())&&Qr(t)}function Qr(t){let e=t.domSelectionRange();if(!e.anchorNode)return!1;try{return t.dom.contains(3==e.anchorNode.nodeType?e.anchorNode.parentNode:e.anchorNode)&&(t.editable||t.dom.contains(3==e.focusNode.nodeType?e.focusNode.parentNode:e.focusNode))}catch(n){return!1}}function ti(t,e){let{$anchor:n,$head:r}=t.selection,i=e>0?n.max(r):n.min(r),o=i.parent.inlineContent?i.depth?t.doc.resolve(e>0?i.after():i.before()):null:i;return o&&Xe.findFrom(o,e)}function ei(t,e){return t.dispatch(t.state.tr.setSelection(e).scrollIntoView()),!0}function ni(t,e,n){let r=t.state.selection;if(!(r instanceof nn)){if(r instanceof on&&r.node.isInline)return ei(t,new nn(e>0?r.$to:r.$from));{let n=ti(t.state,e);return!!n&&ei(t,n)}}if(n.indexOf("s")>-1){let{$head:n}=r,i=n.textOffset?null:e<0?n.nodeBefore:n.nodeAfter;if(!i||i.isText||!i.isLeaf)return!1;let o=t.state.doc.resolve(n.pos+i.nodeSize*(e<0?-1:1));return ei(t,new nn(r.$anchor,o))}if(!r.empty)return!1;if(t.endOfTextblock(e>0?"forward":"backward")){let n=ti(t.state,e);return!!(n&&n instanceof on)&&ei(t,n)}if(!(Hn&&n.indexOf("m")>-1)){let n,i=r.$head,o=i.textOffset?null:e<0?i.nodeBefore:i.nodeAfter;if(!o||o.isText)return!1;let s=e<0?i.pos-o.nodeSize:i.pos;return!!(o.isAtom||(n=t.docView.descAt(s))&&!n.contentDOM)&&(on.isSelectable(o)?ei(t,new on(e<0?t.state.doc.resolve(i.pos-o.nodeSize):i)):!!Gn&&ei(t,new nn(t.state.doc.resolve(e<0?s:s+o.nodeSize))))}}function ri(t){return 3==t.nodeType?t.nodeValue.length:t.childNodes.length}function ii(t,e){let n=t.pmViewDesc;return n&&0==n.size&&(e<0||t.nextSibling||"BR"!=t.nodeName)}function oi(t,e){return e<0?function(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let i,o,s=!1;Fn&&1==n.nodeType&&r0){if(1!=n.nodeType)break;{let t=n.childNodes[r-1];if(ii(t,-1))i=n,o=--r;else{if(3!=t.nodeType)break;n=t,r=n.nodeValue.length}}}else{if(si(n))break;{let e=n.previousSibling;for(;e&&ii(e,-1);)i=n.parentNode,o=Sn(e),e=e.previousSibling;if(e)n=e,r=ri(n);else{if(n=n.parentNode,n==t.dom)break;r=0}}}s?li(t,n,r):i&&li(t,i,o)}(t):function(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let i,o,s=ri(n);for(;;)if(r{t.state==i&&qr(t)}),50)}function ai(t,e){let n=t.state.doc.resolve(e);if(!Wn&&!Yn&&n.parent.inlineContent){let r=t.coordsAtPos(e);if(e>n.start()){let n=t.coordsAtPos(e-1),i=(n.top+n.bottom)/2;if(i>r.top&&i1)return n.leftr.top&&i1)return n.left>r.left?"ltr":"rtl"}}return"rtl"==getComputedStyle(t.dom).direction?"rtl":"ltr"}function ci(t,e,n){let r=t.state.selection;if(r instanceof nn&&!r.empty||n.indexOf("s")>-1)return!1;if(Hn&&n.indexOf("m")>-1)return!1;let{$from:i,$to:o}=r;if(!i.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let n=ti(t.state,e);if(n&&n instanceof on)return ei(t,n)}if(!i.parent.inlineContent){let n=e<0?i:o,s=r instanceof ln?Xe.near(n,e):Xe.findFrom(n,e);return!!s&&ei(t,s)}return!1}function hi(t,e){if(!(t.state.selection instanceof nn))return!0;let{$head:n,$anchor:r,empty:i}=t.state.selection;if(!n.sameParent(r))return!0;if(!i)return!1;if(t.endOfTextblock(e>0?"forward":"backward"))return!0;let o=!n.textOffset&&(e<0?n.nodeBefore:n.nodeAfter);if(o&&!o.isText){let r=t.state.tr;return e<0?r.delete(n.pos-o.nodeSize,n.pos):r.delete(n.pos,n.pos+o.nodeSize),t.dispatch(r),!0}return!1}function ui(t,e,n){t.domObserver.stop(),e.contentEditable=n,t.domObserver.start()}function di(t,e){let n=e.keyCode,r=function(t){let e="";return t.ctrlKey&&(e+="c"),t.metaKey&&(e+="m"),t.altKey&&(e+="a"),t.shiftKey&&(e+="s"),e}(e);if(8==n||Hn&&72==n&&"c"==r)return hi(t,-1)||oi(t,-1);if(46==n&&!e.shiftKey||Hn&&68==n&&"c"==r)return hi(t,1)||oi(t,1);if(13==n||27==n)return!0;if(37==n||Hn&&66==n&&"c"==r){let e=37==n?"ltr"==ai(t,t.state.selection.from)?-1:1:-1;return ni(t,e,r)||oi(t,e)}if(39==n||Hn&&70==n&&"c"==r){let e=39==n?"ltr"==ai(t,t.state.selection.from)?1:-1:1;return ni(t,e,r)||oi(t,e)}return 38==n||Hn&&80==n&&"c"==r?ci(t,-1,r)||oi(t,-1):40==n||Hn&&78==n&&"c"==r?function(t){if(!Jn||t.state.selection.$head.parentOffset>0)return!1;let{focusNode:e,focusOffset:n}=t.domSelectionRange();if(e&&1==e.nodeType&&0==n&&e.firstChild&&"false"==e.firstChild.contentEditable){let n=e.firstChild;ui(t,n,"true"),setTimeout((()=>ui(t,n,"false")),20)}return!1}(t)||ci(t,1,r)||oi(t,1):r==(Hn?"m":"c")&&(66==n||73==n||89==n||90==n)}function fi(t,e){t.someProp("transformCopied",(n=>{e=n(e,t)}));let n=[],{content:r,openStart:i,openEnd:o}=e;for(;i>1&&o>1&&1==r.childCount&&1==r.firstChild.childCount;){i--,o--;let t=r.firstChild;n.push(t.type.name,t.attrs!=t.type.defaultAttrs?t.attrs:null),r=t.content}let s=t.someProp("clipboardSerializer")||de.fromSchema(t.state.schema),l=ki(),a=l.createElement("div");a.appendChild(s.serializeFragment(r,{document:l}));let c,h=a.firstChild,u=0;for(;h&&1==h.nodeType&&(c=xi[h.nodeName.toLowerCase()]);){for(let t=c.length-1;t>=0;t--){let e=l.createElement(c[t]);for(;a.firstChild;)e.appendChild(a.firstChild);a.appendChild(e),u++}h=a.firstChild}return h&&1==h.nodeType&&h.setAttribute("data-pm-slice",`${i} ${o}${u?` -${u}`:""} ${JSON.stringify(n)}`),{dom:a,text:t.someProp("clipboardTextSerializer",(n=>n(e,t)))||e.content.textBetween(0,e.content.size,"\n\n")}}function pi(t,e,n,r,i){let o,s,l=i.parent.type.spec.code;if(!n&&!e)return null;let a=e&&(r||l||!n);if(a){if(t.someProp("transformPastedText",(n=>{e=n(e,l||r,t)})),l)return e?new vt(dt.from(t.state.schema.text(e.replace(/\r\n?/g,"\n"))),0,0):vt.empty;let n=t.someProp("clipboardTextParser",(n=>n(e,i,r,t)));if(n)s=n;else{let n=i.marks(),{schema:r}=t.state,s=de.fromSchema(r);o=document.createElement("div"),e.split(/(?:\r\n?|\n)+/).forEach((t=>{let e=o.appendChild(document.createElement("p"));t&&e.appendChild(s.serializeNode(r.text(t,n)))}))}}else t.someProp("transformPastedHTML",(e=>{n=e(n,t)})),o=function(t){let e=/^(\s*]*>)*/.exec(t);e&&(t=t.slice(e[0].length));let n,r=ki().createElement("div"),i=/<([a-z][^>\s]+)/i.exec(t);(n=i&&xi[i[1].toLowerCase()])&&(t=n.map((t=>"<"+t+">")).join("")+t+n.map((t=>"")).reverse().join(""));if(r.innerHTML=t,n)for(let o=0;o0;u--){let t=o.firstChild;for(;t&&1!=t.nodeType;)t=t.nextSibling;if(!t)break;o=t}if(!s){let e=t.someProp("clipboardParser")||t.someProp("domParser")||ne.fromSchema(t.state.schema);s=e.parseSlice(o,{preserveWhitespace:!(!a&&!h),context:i,ruleFromNode:t=>"BR"!=t.nodeName||t.nextSibling||!t.parentNode||mi.test(t.parentNode.nodeName)?null:{ignore:!0}})}if(h)s=function(t,e){if(!t.size)return t;let n,r=t.content.firstChild.type.schema;try{n=JSON.parse(e)}catch(l){return t}let{content:i,openStart:o,openEnd:s}=t;for(let a=n.length-2;a>=0;a-=2){let t=r.nodes[n[a]];if(!t||t.hasRequiredAttrs())break;i=dt.from(t.create(n[a+1],i)),o++,s++}return new vt(i,o,s)}(bi(s,+h[1],+h[2]),h[4]);else if(s=vt.maxOpen(function(t,e){if(t.childCount<2)return t;for(let n=e.depth;n>=0;n--){let r,i=e.node(n).contentMatchAt(e.index(n)),o=[];if(t.forEach((t=>{if(!o)return;let e,n=i.findWrapping(t.type);if(!n)return o=null;if(e=o.length&&r.length&&yi(n,r,t,o[o.length-1],0))o[o.length-1]=e;else{o.length&&(o[o.length-1]=vi(o[o.length-1],r.length));let e=gi(t,n);o.push(e),i=i.matchType(e.type),r=n}})),o)return dt.from(o)}return t}(s.content,i),!0),s.openStart||s.openEnd){let t=0,e=0;for(let n=s.content.firstChild;t{s=e(s,t)})),s}const mi=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function gi(t,e,n=0){for(let r=e.length-1;r>=n;r--)t=e[r].create(null,dt.from(t));return t}function yi(t,e,n,r,i){if(i1&&(o=0),i=n&&(l=e<0?s.contentMatchAt(0).fillBefore(l,o<=i).append(l):l.append(s.contentMatchAt(s.childCount).fillBefore(dt.empty,!0))),t.replaceChild(e<0?0:t.childCount-1,s.copy(l))}function bi(t,e,n){return e{for(let n in e)t.input.eventHandlers[n]||t.dom.addEventListener(n,t.input.eventHandlers[n]=e=>Ai(t,e))}))}function Ai(t,e){return t.someProp("handleDOMEvents",(n=>{let r=n[e.type];return!!r&&(r(t,e)||e.defaultPrevented)}))}function Ei(t,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let n=e.target;n!=t.dom;n=n.parentNode)if(!n||11==n.nodeType||n.pmViewDesc&&n.pmViewDesc.stopEvent(e))return!1;return!0}function $i(t){return{left:t.clientX,top:t.clientY}}function Pi(t,e,n,r,i){if(-1==r)return!1;let o=t.state.doc.resolve(r);for(let s=o.depth+1;s>0;s--)if(t.someProp(e,(e=>s>o.depth?e(t,n,o.nodeAfter,o.before(s),i,!0):e(t,n,o.node(s),o.before(s),i,!1))))return!0;return!1}function Ii(t,e,n){t.focused||t.focus();let r=t.state.tr.setSelection(e);"pointer"==n&&r.setMeta("pointer",!0),t.dispatch(r)}function Ri(t,e,n,r,i){return Pi(t,"handleClickOn",e,n,r)||t.someProp("handleClick",(n=>n(t,e,r)))||(i?function(t,e){if(-1==e)return!1;let n,r,i=t.state.selection;i instanceof on&&(n=i.node);let o=t.state.doc.resolve(e);for(let s=o.depth+1;s>0;s--){let t=s>o.depth?o.nodeAfter:o.node(s);if(on.isSelectable(t)){r=n&&i.$from.depth>0&&s>=i.$from.depth&&o.before(i.$from.depth+1)==i.$from.pos?o.before(i.$from.depth):o.before(s);break}}return null!=r&&(Ii(t,on.create(t.state.doc,r),"pointer"),!0)}(t,n):function(t,e){if(-1==e)return!1;let n=t.state.doc.resolve(e),r=n.nodeAfter;return!!(r&&r.isAtom&&on.isSelectable(r))&&(Ii(t,new on(n),"pointer"),!0)}(t,n))}function zi(t,e,n,r){return Pi(t,"handleDoubleClickOn",e,n,r)||t.someProp("handleDoubleClick",(n=>n(t,e,r)))}function _i(t,e,n,r){return Pi(t,"handleTripleClickOn",e,n,r)||t.someProp("handleTripleClick",(n=>n(t,e,r)))||function(t,e,n){if(0!=n.button)return!1;let r=t.state.doc;if(-1==e)return!!r.inlineContent&&(Ii(t,nn.create(r,0,r.content.size),"pointer"),!0);let i=r.resolve(e);for(let o=i.depth+1;o>0;o--){let e=o>i.depth?i.nodeAfter:i.node(o),n=i.before(o);if(e.inlineContent)Ii(t,nn.create(r,n+1,n+1+e.content.size),"pointer");else{if(!on.isSelectable(e))continue;Ii(t,on.create(r,n),"pointer")}return!0}}(t,n,r)}function Bi(t){return Ji(t)}Oi.keydown=(t,e)=>{let n=e;if(t.input.shiftKey=16==n.keyCode||n.shiftKey,!Fi(t,n)&&(t.input.lastKeyCode=n.keyCode,t.input.lastKeyCodeTime=Date.now(),!Un||!Wn||13!=n.keyCode))if(229!=n.keyCode&&t.domObserver.forceFlush(),!Kn||13!=n.keyCode||n.ctrlKey||n.altKey||n.metaKey)t.someProp("handleKeyDown",(e=>e(t,n)))||di(t,n)?n.preventDefault():Ni(t,"key");else{let e=Date.now();t.input.lastIOSEnter=e,t.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{t.input.lastIOSEnter==e&&(t.someProp("handleKeyDown",(e=>e(t,$n(13,"Enter")))),t.input.lastIOSEnter=0)}),200)}},Oi.keyup=(t,e)=>{16==e.keyCode&&(t.input.shiftKey=!1)},Oi.keypress=(t,e)=>{let n=e;if(Fi(t,n)||!n.charCode||n.ctrlKey&&!n.altKey||Hn&&n.metaKey)return;if(t.someProp("handleKeyPress",(e=>e(t,n))))return void n.preventDefault();let r=t.state.selection;if(!(r instanceof nn&&r.$from.sameParent(r.$to))){let e=String.fromCharCode(n.charCode);/[\r\n]/.test(e)||t.someProp("handleTextInput",(n=>n(t,r.$from.pos,r.$to.pos,e)))||t.dispatch(t.state.tr.insertText(e).scrollIntoView()),n.preventDefault()}};const ji=Hn?"metaKey":"ctrlKey";Mi.mousedown=(t,e)=>{let n=e;t.input.shiftKey=n.shiftKey;let r=Bi(t),i=Date.now(),o="singleClick";i-t.input.lastClick.time<500&&function(t,e){let n=e.x-t.clientX,r=e.y-t.clientY;return n*n+r*r<100}(n,t.input.lastClick)&&!n[ji]&&("singleClick"==t.input.lastClick.type?o="doubleClick":"doubleClick"==t.input.lastClick.type&&(o="tripleClick")),t.input.lastClick={time:i,x:n.clientX,y:n.clientY,type:o};let s=t.posAtCoords($i(n));s&&("singleClick"==o?(t.input.mouseDown&&t.input.mouseDown.done(),t.input.mouseDown=new Vi(t,s,n,!!r)):("doubleClick"==o?zi:_i)(t,s.pos,s.inside,n)?n.preventDefault():Ni(t,"pointer"))};class Vi{constructor(t,e,n,r){let i,o;if(this.view=t,this.pos=e,this.event=n,this.flushed=r,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=t.state.doc,this.selectNode=!!n[ji],this.allowDefault=n.shiftKey,e.inside>-1)i=t.state.doc.nodeAt(e.inside),o=e.inside;else{let n=t.state.doc.resolve(e.pos);i=n.parent,o=n.depth?n.before():0}const s=r?null:n.target,l=s?t.docView.nearestDesc(s,!0):null;this.target=l?l.dom:null;let{selection:a}=t.state;(0==n.button&&i.type.spec.draggable&&!1!==i.type.spec.selectable||a instanceof on&&a.from<=o&&a.to>o)&&(this.mightDrag={node:i,pos:o,addAttr:!(!this.target||this.target.draggable),setUneditable:!(!this.target||!Fn||this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout((()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")}),20),this.view.domObserver.start()),t.root.addEventListener("mouseup",this.up=this.up.bind(this)),t.root.addEventListener("mousemove",this.move=this.move.bind(this)),Ni(t,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout((()=>qr(this.view))),this.view.input.mouseDown=null}up(t){if(this.done(),!this.view.dom.contains(t.target))return;let e=this.pos;this.view.state.doc!=this.startDoc&&(e=this.view.posAtCoords($i(t))),this.updateAllowDefault(t),this.allowDefault||!e?Ni(this.view,"pointer"):Ri(this.view,e.pos,e.inside,t,this.selectNode)?t.preventDefault():0==t.button&&(this.flushed||Jn&&this.mightDrag&&!this.mightDrag.node.isAtom||Wn&&!this.view.state.selection.visible&&Math.min(Math.abs(e.pos-this.view.state.selection.from),Math.abs(e.pos-this.view.state.selection.to))<=2)?(Ii(this.view,Xe.near(this.view.state.doc.resolve(e.pos)),"pointer"),t.preventDefault()):Ni(this.view,"pointer")}move(t){this.updateAllowDefault(t),Ni(this.view,"pointer"),0==t.buttons&&this.done()}updateAllowDefault(t){!this.allowDefault&&(Math.abs(this.event.x-t.clientX)>4||Math.abs(this.event.y-t.clientY)>4)&&(this.allowDefault=!0)}}function Fi(t,e){return!!t.composing||!!(Jn&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500)&&(t.input.compositionEndedAt=-2e8,!0)}Mi.touchstart=t=>{t.input.lastTouch=Date.now(),Bi(t),Ni(t,"pointer")},Mi.touchmove=t=>{t.input.lastTouch=Date.now(),Ni(t,"pointer")},Mi.contextmenu=t=>Bi(t);const Li=Un?5e3:-1;function Wi(t,e){clearTimeout(t.input.composingTimeout),e>-1&&(t.input.composingTimeout=setTimeout((()=>Ji(t)),e))}function qi(t){for(t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=function(){let t=document.createEvent("Event");return t.initEvent("event",!0,!0),t.timeStamp}());t.input.compositionNodes.length>0;)t.input.compositionNodes.pop().markParentsDirty()}function Ji(t,e=!1){if(!(Un&&t.domObserver.flushingSoon>=0)){if(t.domObserver.forceFlush(),qi(t),e||t.docView&&t.docView.dirty){let e=Lr(t);return e&&!e.eq(t.state.selection)?t.dispatch(t.state.tr.setSelection(e)):t.updateState(t.state),!0}return!1}}Oi.compositionstart=Oi.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,n=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some((t=>!1===t.type.spec.inclusive))))t.markCursor=t.state.storedMarks||n.marks(),Ji(t,!0),t.markCursor=null;else if(Ji(t),Fn&&e.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length){let e=t.domSelectionRange();for(let n=e.focusNode,r=e.focusOffset;n&&1==n.nodeType&&0!=r;){let e=r<0?n.lastChild:n.childNodes[r-1];if(!e)break;if(3==e.nodeType){t.domSelection().collapse(e,e.nodeValue.length);break}n=e,r=-1}}t.input.composing=!0}Wi(t,Li)},Oi.compositionend=(t,e)=>{t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=e.timeStamp,t.input.compositionPendingChanges=t.domObserver.pendingRecords().length?t.input.compositionID:0,t.input.compositionPendingChanges&&Promise.resolve().then((()=>t.domObserver.flush())),t.input.compositionID++,Wi(t,20))};const Ki=jn&&Vn<15||Kn&&Zn<604;function Hi(t,e,n,r,i){let o=pi(t,e,n,r,t.state.selection.$from);if(t.someProp("handlePaste",(e=>e(t,i,o||vt.empty))))return!0;if(!o)return!1;let s=function(t){return 0==t.openStart&&0==t.openEnd&&1==t.content.childCount?t.content.firstChild:null}(o),l=s?t.state.tr.replaceSelectionWith(s,r):t.state.tr.replaceSelection(o);return t.dispatch(l.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}function Yi(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let n=t.getData("text/uri-list");return n?n.replace(/\r?\n/g," "):""}Mi.copy=Oi.cut=(t,e)=>{let n=e,r=t.state.selection,i="cut"==n.type;if(r.empty)return;let o=Ki?null:n.clipboardData,s=r.content(),{dom:l,text:a}=fi(t,s);o?(n.preventDefault(),o.clearData(),o.setData("text/html",l.innerHTML),o.setData("text/plain",a)):function(t,e){if(!t.dom.parentNode)return;let n=t.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(e),n.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),i=document.createRange();i.selectNodeContents(e),t.dom.blur(),r.removeAllRanges(),r.addRange(i),setTimeout((()=>{n.parentNode&&n.parentNode.removeChild(n),t.focus()}),50)}(t,l),i&&t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))},Oi.paste=(t,e)=>{let n=e;if(t.composing&&!Un)return;let r=Ki?null:n.clipboardData,i=t.input.shiftKey&&45!=t.input.lastKeyCode;r&&Hi(t,Yi(r),r.getData("text/html"),i,n)?n.preventDefault():function(t,e){if(!t.dom.parentNode)return;let n=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code,r=t.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus();let i=t.input.shiftKey&&45!=t.input.lastKeyCode;setTimeout((()=>{t.focus(),r.parentNode&&r.parentNode.removeChild(r),n?Hi(t,r.value,null,i,e):Hi(t,r.textContent,r.innerHTML,i,e)}),50)}(t,n)};class Ui{constructor(t,e){this.slice=t,this.move=e}}const Gi=Hn?"altKey":"ctrlKey";Mi.dragstart=(t,e)=>{let n=e,r=t.input.mouseDown;if(r&&r.done(),!n.dataTransfer)return;let i=t.state.selection,o=i.empty?null:t.posAtCoords($i(n));if(o&&o.pos>=i.from&&o.pos<=(i instanceof on?i.to-1:i.to));else if(r&&r.mightDrag)t.dispatch(t.state.tr.setSelection(on.create(t.state.doc,r.mightDrag.pos)));else if(n.target&&1==n.target.nodeType){let e=t.docView.nearestDesc(n.target,!0);e&&e.node.type.spec.draggable&&e!=t.docView&&t.dispatch(t.state.tr.setSelection(on.create(t.state.doc,e.posBefore)))}let s=t.state.selection.content(),{dom:l,text:a}=fi(t,s);n.dataTransfer.clearData(),n.dataTransfer.setData(Ki?"Text":"text/html",l.innerHTML),n.dataTransfer.effectAllowed="copyMove",Ki||n.dataTransfer.setData("text/plain",a),t.dragging=new Ui(s,!n[Gi])},Mi.dragend=t=>{let e=t.dragging;window.setTimeout((()=>{t.dragging==e&&(t.dragging=null)}),50)},Oi.dragover=Oi.dragenter=(t,e)=>e.preventDefault(),Oi.drop=(t,e)=>{let n=e,r=t.dragging;if(t.dragging=null,!n.dataTransfer)return;let i=t.posAtCoords($i(n));if(!i)return;let o=t.state.doc.resolve(i.pos),s=r&&r.slice;s?t.someProp("transformPasted",(e=>{s=e(s,t)})):s=pi(t,Yi(n.dataTransfer),Ki?null:n.dataTransfer.getData("text/html"),!1,o);let l=!(!r||n[Gi]);if(t.someProp("handleDrop",(e=>e(t,n,s||vt.empty,l))))return void n.preventDefault();if(!s)return;n.preventDefault();let a=s?function(t,e,n){let r=t.resolve(e);if(!n.content.size)return e;let i=n.content;for(let o=0;o=0;t--){let e=t==r.depth?0:r.pos<=(r.start(t+1)+r.end(t+1))/2?-1:1,n=r.index(t)+(e>0?1:0),s=r.node(t),l=!1;if(1==o)l=s.canReplace(n,n,i);else{let t=s.contentMatchAt(n).findWrapping(i.firstChild.type);l=t&&s.canReplaceWith(n,n,t[0])}if(l)return 0==e?r.pos:e<0?r.before(t+1):r.after(t+1)}return null}(t.state.doc,o.pos,s):o.pos;null==a&&(a=o.pos);let c=t.state.tr;l&&c.deleteSelection();let h=c.mapping.map(a),u=0==s.openStart&&0==s.openEnd&&1==s.content.childCount,d=c.doc;if(u?c.replaceRangeWith(h,h,s.content.firstChild):c.replaceRange(h,h,s),c.doc.eq(d))return;let f=c.doc.resolve(h);if(u&&on.isSelectable(s.content.firstChild)&&f.nodeAfter&&f.nodeAfter.sameMarkup(s.content.firstChild))c.setSelection(new on(f));else{let e=c.mapping.map(a);c.mapping.maps[c.mapping.maps.length-1].forEach(((t,n,r,i)=>e=i)),c.setSelection(Zr(t,f,c.doc.resolve(e)))}t.focus(),t.dispatch(c.setMeta("uiEvent","drop"))},Mi.focus=t=>{t.input.lastFocus=Date.now(),t.focused||(t.domObserver.stop(),t.dom.classList.add("ProseMirror-focused"),t.domObserver.start(),t.focused=!0,setTimeout((()=>{t.docView&&t.hasFocus()&&!t.domObserver.currentSelection.eq(t.domSelectionRange())&&qr(t)}),20))},Mi.blur=(t,e)=>{let n=e;t.focused&&(t.domObserver.stop(),t.dom.classList.remove("ProseMirror-focused"),t.domObserver.start(),n.relatedTarget&&t.dom.contains(n.relatedTarget)&&t.domObserver.currentSelection.clear(),t.focused=!1)},Mi.beforeinput=(t,e)=>{if(Wn&&Un&&"deleteContentBackward"==e.inputType){t.domObserver.flushSoon();let{domChangeCount:e}=t.input;setTimeout((()=>{if(t.input.domChangeCount!=e)return;if(t.dom.blur(),t.focus(),t.someProp("handleKeyDown",(e=>e(t,$n(8,"Backspace")))))return;let{$cursor:n}=t.state.selection;n&&n.pos>0&&t.dispatch(t.state.tr.delete(n.pos-1,n.pos).scrollIntoView())}),50)}};for(let os in Oi)Mi[os]=Oi[os];function Zi(t,e){if(t==e)return!0;for(let n in t)if(t[n]!==e[n])return!1;for(let n in e)if(!(n in t))return!1;return!0}class Xi{constructor(t,e){this.toDOM=t,this.spec=e||ro,this.side=this.spec.side||0}map(t,e,n,r){let{pos:i,deleted:o}=t.mapResult(e.from+r,this.side<0?-1:1);return o?null:new eo(i-n,i-n,this)}valid(){return!0}eq(t){return this==t||t instanceof Xi&&(this.spec.key&&this.spec.key==t.spec.key||this.toDOM==t.toDOM&&Zi(this.spec,t.spec))}destroy(t){this.spec.destroy&&this.spec.destroy(t)}}class Qi{constructor(t,e){this.attrs=t,this.spec=e||ro}map(t,e,n,r){let i=t.map(e.from+r,this.spec.inclusiveStart?-1:1)-n,o=t.map(e.to+r,this.spec.inclusiveEnd?1:-1)-n;return i>=o?null:new eo(i,o,this)}valid(t,e){return e.from=t&&(!i||i(s.spec))&&n.push(s.copy(s.from+r,s.to+r))}for(let o=0;ot){let s=this.children[o]+1;this.children[o+2].findInner(t-s,e-s,n,r+s,i)}}map(t,e,n){return this==oo||0==t.maps.length?this:this.mapInner(t,e,0,0,n||ro)}mapInner(t,e,n,r,i){let o;for(let s=0;s{let s=o-r-(n-e);for(let a=0;ao+h-t)continue;let c=l[a]+h-t;n>=c?l[a+1]=e<=c?-2:-1:r>=i&&s&&(l[a]+=s,l[a+1]+=s)}t+=s})),h=n.maps[c].map(h,-1)}let a=!1;for(let c=0;c=r.content.size){a=!0;continue}let u=n.map(t[c+1]+o,-1)-i,{index:d,offset:f}=r.content.findIndex(h),p=r.maybeChild(d);if(p&&f==h&&f+p.nodeSize==u){let r=l[c+2].mapInner(n,p,e+1,t[c]+o+1,s);r!=oo?(l[c]=h,l[c+1]=u,l[c+2]=r):(l[c+1]=-2,a=!0)}else a=!0}if(a){let a=function(t,e,n,r,i,o,s){function l(t,e){for(let o=0;o{let s,l=o+n;if(s=ao(e,t,l)){for(r||(r=this.children.slice());io&&e.to=t){this.children[s]==t&&(n=this.children[s+2]);break}let i=t+1,o=i+e.content.size;for(let s=0;si&&t.type instanceof Qi){let e=Math.max(i,t.from)-i,n=Math.min(o,t.to)-i;en.map(t,e,ro)));return so.from(n)}forChild(t,e){if(e.isLeaf)return io.empty;let n=[];for(let r=0;rt instanceof io))?t:t.reduce(((t,e)=>t.concat(e instanceof io?e:e.members)),[]))}}}function lo(t,e){if(!e||!t.length)return t;let n=[];for(let r=0;rn&&o.to{let l=ao(t,e,s+n);if(l){o=!0;let t=ho(l,e,n+s+1,r);t!=oo&&i.push(s,s+e.nodeSize,t)}}));let s=lo(o?co(t):t,-n).sort(uo);for(let l=0;l0;)e++;t.splice(e,0,n)}function mo(t){let e=[];return t.someProp("decorations",(n=>{let r=n(t.state);r&&r!=oo&&e.push(r)})),t.cursorWrapper&&e.push(io.create(t.state.doc,[t.cursorWrapper.deco])),so.from(e)}const go={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},yo=jn&&Vn<=11;class vo{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(t){this.anchorNode=t.anchorNode,this.anchorOffset=t.anchorOffset,this.focusNode=t.focusNode,this.focusOffset=t.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(t){return t.anchorNode==this.anchorNode&&t.anchorOffset==this.anchorOffset&&t.focusNode==this.focusNode&&t.focusOffset==this.focusOffset}}class wo{constructor(t,e){this.view=t,this.handleDOMChange=e,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new vo,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.observer=window.MutationObserver&&new window.MutationObserver((t=>{for(let e=0;e"childList"==t.type&&t.removedNodes.length||"characterData"==t.type&&t.oldValue.length>t.target.nodeValue.length))?this.flushSoon():this.flush()})),yo&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout((()=>{this.flushingSoon=-1,this.flush()}),20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,go)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let t=this.observer.takeRecords();if(t.length){for(let e=0;ethis.flush()),20)}this.observer.disconnect()}this.onCharData&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=!0,setTimeout((()=>this.suppressingSelectionUpdates=!1),50)}onSelectionChange(){if(Xr(this.view)){if(this.suppressingSelectionUpdates)return qr(this.view);if(jn&&Vn<=11&&!this.view.state.selection.empty){let t=this.view.domSelectionRange();if(t.focusNode&&Cn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(t){if(!t.focusNode)return!0;let e,n=new Set;for(let i=t.focusNode;i;i=kn(i))n.add(i);for(let i=t.anchorNode;i;i=kn(i))if(n.has(i)){e=i;break}let r=e&&this.view.docView.nearestDesc(e);return r&&r.ignoreMutation({type:"selection",target:3==e.nodeType?e.parentNode:e})?(this.setCurSelection(),!0):void 0}pendingRecords(){if(this.observer)for(let t of this.observer.takeRecords())this.queue.push(t);return this.queue}flush(){let{view:t}=this;if(!t.docView||this.flushingSoon>-1)return;let e=this.pendingRecords();e.length&&(this.queue=[]);let n=t.domSelectionRange(),r=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(n)&&Xr(t)&&!this.ignoreSelectionChange(n),i=-1,o=-1,s=!1,l=[];if(t.editable)for(let c=0;c1){let t=l.filter((t=>"BR"==t.nodeName));if(2==t.length){let e=t[0],n=t[1];e.parentNode&&e.parentNode.parentNode==n.parentNode?n.remove():e.remove()}}let a=null;i<0&&r&&t.input.lastFocus>Date.now()-200&&Math.max(t.input.lastTouch,t.input.lastClick.time)-1||r)&&(i>-1&&(t.docView.markDirty(i,o),function(t){if(bo.has(t))return;if(bo.set(t,null),-1!==["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)){if(t.requiresGeckoHackNode=Fn,xo)return;console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package."),xo=!0}}(t)),this.handleDOMChange(i,o,s,l),t.docView&&t.docView.dirty?t.updateState(t.state):this.currentSelection.eq(n)||qr(t),this.currentSelection.set(n))}registerMutation(t,e){if(e.indexOf(t.target)>-1)return null;let n=this.view.docView.nearestDesc(t.target);if("attributes"==t.type&&(n==this.view.docView||"contenteditable"==t.attributeName||"style"==t.attributeName&&!t.oldValue&&!t.target.getAttribute("style")))return null;if(!n||n.ignoreMutation(t))return null;if("childList"==t.type){for(let n=0;nDate.now()-50?t.input.lastSelectionOrigin:null,n=Lr(t,e);if(n&&!t.state.selection.eq(n)){if(Wn&&Un&&13===t.input.lastKeyCode&&Date.now()-100e(t,$n(13,"Enter")))))return;let r=t.state.tr.setSelection(n);"pointer"==e?r.setMeta("pointer",!0):"key"==e&&r.scrollIntoView(),o&&r.setMeta("composition",o),t.dispatch(r)}return}let s=t.state.doc.resolve(e),l=s.sharedDepth(n);e=s.before(l+1),n=t.state.doc.resolve(n).after(l+1);let a,c,h=t.state.selection,u=function(t,e,n){let r,{node:i,fromOffset:o,toOffset:s,from:l,to:a}=t.docView.parseRange(e,n),c=t.domSelectionRange(),h=c.anchorNode;if(h&&t.dom.contains(1==h.nodeType?h:h.parentNode)&&(r=[{node:h,offset:c.anchorOffset}],En(c)||r.push({node:c.focusNode,offset:c.focusOffset})),Wn&&8===t.input.lastKeyCode)for(let g=s;g>o;g--){let t=i.childNodes[g-1],e=t.pmViewDesc;if("BR"==t.nodeName&&!e){s=g;break}if(!e||e.size)break}let u=t.state.doc,d=t.someProp("domParser")||ne.fromSchema(t.state.schema),f=u.resolve(l),p=null,m=d.parse(i,{topNode:f.parent,topMatch:f.parent.contentMatchAt(f.index()),topOpen:!0,from:o,to:s,preserveWhitespace:"pre"!=f.parent.type.whitespace||"full",findPositions:r,ruleFromNode:So,context:f});if(r&&null!=r[0].pos){let t=r[0].pos,e=r[1]&&r[1].pos;null==e&&(e=t),p={anchor:t+l,head:e+l}}return{doc:m,sel:p,from:l,to:a}}(t,e,n),d=t.state.doc,f=d.slice(u.from,u.to);8===t.input.lastKeyCode&&Date.now()-100=s?o-r:0,l=o+(l-s),s=o}else if(l=l?o-r:0,s=o+(s-l),l=o}return{start:o,endA:s,endB:l}}(f.content,u.doc.content,u.from,a,c);if((Kn&&t.input.lastIOSEnter>Date.now()-225||Un)&&i.some((t=>1==t.nodeType&&!ko.test(t.nodeName)))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",(e=>e(t,$n(13,"Enter")))))return void(t.input.lastIOSEnter=0);if(!p){if(!(r&&h instanceof nn&&!h.empty&&h.$head.sameParent(h.$anchor))||t.composing||u.sel&&u.sel.anchor!=u.sel.head){if(u.sel){let e=Oo(t,t.state.doc,u.sel);if(e&&!e.eq(t.state.selection)){let n=t.state.tr.setSelection(e);o&&n.setMeta("composition",o),t.dispatch(n)}}return}p={start:h.from,endA:h.to,endB:h.to}}if(Wn&&t.cursorWrapper&&u.sel&&u.sel.anchor==t.cursorWrapper.deco.from&&u.sel.head==u.sel.anchor){let t=p.endB-p.start;u.sel={anchor:u.sel.anchor+t,head:u.sel.anchor+t}}t.input.domChangeCount++,t.state.selection.fromt.state.selection.from&&p.start<=t.state.selection.from+2&&t.state.selection.from>=u.from?p.start=t.state.selection.from:p.endA=t.state.selection.to-2&&t.state.selection.to<=u.to&&(p.endB+=t.state.selection.to-p.endA,p.endA=t.state.selection.to)),jn&&Vn<=11&&p.endB==p.start+1&&p.endA==p.start&&p.start>u.from&&"  "==u.doc.textBetween(p.start-u.from-1,p.start-u.from+1)&&(p.start--,p.endA--,p.endB--);let m,g=u.doc.resolveNoCache(p.start-u.from),y=u.doc.resolveNoCache(p.endB-u.from),v=d.resolve(p.start),w=g.sameParent(y)&&g.parent.inlineContent&&v.end()>=p.endA;if((Kn&&t.input.lastIOSEnter>Date.now()-225&&(!w||i.some((t=>"DIV"==t.nodeName||"P"==t.nodeName)))||!w&&g.pose(t,$n(13,"Enter")))))return void(t.input.lastIOSEnter=0);if(t.state.selection.anchor>p.start&&function(t,e,n,r,i){if(!r.parent.isTextblock||n-e<=i.pos-r.pos||Co(r,!0,!1)n||Co(s,!0,!1)e(t,$n(8,"Backspace")))))return void(Un&&Wn&&t.domObserver.suppressSelectionUpdates());Wn&&Un&&p.endB==p.start&&(t.input.lastAndroidDelete=Date.now()),Un&&!w&&g.start()!=y.start()&&0==y.parentOffset&&g.depth==y.depth&&u.sel&&u.sel.anchor==u.sel.head&&u.sel.head==p.endA&&(p.endB-=2,y=u.doc.resolveNoCache(p.endB-u.from),setTimeout((()=>{t.someProp("handleKeyDown",(function(e){return e(t,$n(13,"Enter"))}))}),20));let b,x,S,k=p.start,M=p.endA;if(w)if(g.pos==y.pos)jn&&Vn<=11&&0==g.parentOffset&&(t.domObserver.suppressSelectionUpdates(),setTimeout((()=>qr(t)),20)),b=t.state.tr.delete(k,M),x=d.resolve(p.start).marksAcross(d.resolve(p.endA));else if(p.endA==p.endB&&(S=function(t,e){let n,r,i,o=t.firstChild.marks,s=e.firstChild.marks,l=o,a=s;for(let h=0;ht.mark(r.addToSet(t.marks));else{if(0!=l.length||1!=a.length)return null;r=a[0],n="remove",i=t=>t.mark(r.removeFromSet(t.marks))}let c=[];for(let h=0;hn(t,k,M,e))))return;b=t.state.tr.insertText(e,k,M)}if(b||(b=t.state.tr.replace(k,M,u.doc.slice(p.start-u.from,p.endB-u.from))),u.sel){let e=Oo(t,b.doc,u.sel);e&&!(Wn&&Un&&t.composing&&e.empty&&(p.start!=p.endB||t.input.lastAndroidDeletee.content.size?null:Zr(t,e.resolve(n.anchor),e.resolve(n.head))}function Co(t,e,n){let r=t.depth,i=e?t.end():t.pos;for(;r>0&&(e||t.indexAfter(r)==t.node(r).childCount);)r--,i++,e=!1;if(n){let e=t.node(r).maybeChild(t.indexAfter(r));for(;e&&!e.isLeaf;)e=e.firstChild,i++}return i}class Do{constructor(t,e){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new Di,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=e,this.state=e.state,this.directPlugins=e.plugins||[],this.directPlugins.forEach($o),this.dispatch=this.dispatch.bind(this),this.dom=t&&t.mount||document.createElement("div"),t&&(t.appendChild?t.appendChild(this.dom):"function"==typeof t?t(this.dom):t.mount&&(this.mounted=!0)),this.editable=Ao(this),To(this),this.nodeViews=Eo(this),this.docView=Cr(this.state.doc,No(this),mo(this),this.dom,this),this.domObserver=new wo(this,((t,e,n,r)=>Mo(this,t,e,n,r))),this.domObserver.start(),function(t){for(let e in Mi){let n=Mi[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=e=>{!Ei(t,e)||Ai(t,e)||!t.editable&&e.type in Oi||n(t,e)},Ci[e]?{passive:!0}:void 0)}Jn&&t.dom.addEventListener("input",(()=>null)),Ti(t)}(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let t=this._props;this._props={};for(let e in t)this._props[e]=t[e];this._props.state=this.state}return this._props}update(t){t.handleDOMEvents!=this._props.handleDOMEvents&&Ti(this);let e=this._props;this._props=t,t.plugins&&(t.plugins.forEach($o),this.directPlugins=t.plugins),this.updateStateInner(t.state,e)}setProps(t){let e={};for(let n in this._props)e[n]=this._props[n];e.state=this.state;for(let n in t)e[n]=t[n];this.update(e)}updateState(t){this.updateStateInner(t,this._props)}updateStateInner(t,e){let n=this.state,r=!1,i=!1;t.storedMarks&&this.composing&&(qi(this),i=!0),this.state=t;let o=n.plugins!=t.plugins||this._props.plugins!=e.plugins;if(o||this._props.plugins!=e.plugins||this._props.nodeViews!=e.nodeViews){let t=Eo(this);(function(t,e){let n=0,r=0;for(let i in t){if(t[i]!=e[i])return!0;n++}for(let i in e)r++;return n!=r})(t,this.nodeViews)&&(this.nodeViews=t,r=!0)}(o||e.handleDOMEvents!=this._props.handleDOMEvents)&&Ti(this),this.editable=Ao(this),To(this);let s=mo(this),l=No(this),a=n.plugins==t.plugins||n.doc.eq(t.doc)?t.scrollToSelection>n.scrollToSelection?"to selection":"preserve":"reset",c=r||!this.docView.matchesNode(t.doc,l,s);!c&&t.selection.eq(n.selection)||(i=!0);let h="preserve"==a&&i&&null==this.dom.style.overflowAnchor&&function(t){let e,n,r=t.dom.getBoundingClientRect(),i=Math.max(0,r.top);for(let o=(r.left+r.right)/2,s=i+1;s=i-20){e=r,n=l.top;break}}return{refDOM:e,refTop:n,stack:nr(t.dom)}}(this);if(i){this.domObserver.stop();let e=c&&(jn||Wn)&&!this.composing&&!n.selection.empty&&!t.selection.empty&&function(t,e){let n=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(n)!=e.$anchor.start(n)}(n.selection,t.selection);if(c){let n=Wn?this.trackWrites=this.domSelectionRange().focusNode:null;!r&&this.docView.update(t.doc,l,s,this)||(this.docView.updateOuterDeco([]),this.docView.destroy(),this.docView=Cr(t.doc,l,s,this.dom,this)),n&&!this.trackWrites&&(e=!0)}e||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&function(t){let e=t.docView.domFromPos(t.state.selection.anchor,0),n=t.domSelectionRange();return Cn(e.node,e.offset,n.anchorNode,n.anchorOffset)}(this))?qr(this,e):(Ur(this,t.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(n),"reset"==a?this.dom.scrollTop=0:"to selection"==a?this.scrollToSelection():h&&function({refDOM:t,refTop:e,stack:n}){let r=t?t.getBoundingClientRect().top:0;rr(n,0==r?0:r-e)}(h)}scrollToSelection(){let t=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(t=>t(this))));else if(this.state.selection instanceof on){let e=this.docView.domAfterPos(this.state.selection.from);1==e.nodeType&&er(this,e.getBoundingClientRect(),t)}else er(this,this.coordsAtPos(this.state.selection.head,1),t)}destroyPluginViews(){let t;for(;t=this.pluginViews.pop();)t.destroy&&t.destroy()}updatePluginViews(t){if(t&&t.plugins==this.state.plugins&&this.directPlugins==this.prevDirectPlugins)for(let e=0;ee.ownerDocument.getSelection()),this._root=e;return t||document}updateRoot(){this._root=null}posAtCoords(t){return ar(this,t)}coordsAtPos(t,e=1){return dr(this,t,e)}domAtPos(t,e=0){return this.docView.domFromPos(t,e)}nodeDOM(t){let e=this.docView.descAt(t);return e?e.nodeDOM:null}posAtDOM(t,e,n=-1){let r=this.docView.posFromDOM(t,e,n);if(null==r)throw new RangeError("DOM position not inside the editor");return r}endOfTextblock(t,e){return br(this,e||this.state,t)}pasteHTML(t,e){return Hi(this,"",t,!1,e||new ClipboardEvent("paste"))}pasteText(t,e){return Hi(this,t,null,!0,e||new ClipboardEvent("paste"))}destroy(){this.docView&&(!function(t){t.domObserver.stop();for(let e in t.input.eventHandlers)t.dom.removeEventListener(e,t.input.eventHandlers[e]);clearTimeout(t.input.composingTimeout),clearTimeout(t.input.lastIOSEnterFallbackTimeout)}(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],mo(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null)}get isDestroyed(){return null==this.docView}dispatchEvent(t){return function(t,e){Ai(t,e)||!Mi[e.type]||!t.editable&&e.type in Oi||Mi[e.type](t,e)}(this,t)}dispatch(t){let e=this._props.dispatchTransaction;e?e.call(this,t):this.updateState(this.state.apply(t))}domSelectionRange(){return Jn&&11===this.root.nodeType&&function(t){let e=t.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}(this.dom.ownerDocument)==this.dom?function(t){let e;function n(t){t.preventDefault(),t.stopImmediatePropagation(),e=t.getTargetRanges()[0]}t.dom.addEventListener("beforeinput",n,!0),document.execCommand("indent"),t.dom.removeEventListener("beforeinput",n,!0);let r=e.startContainer,i=e.startOffset,o=e.endContainer,s=e.endOffset,l=t.domAtPos(t.state.selection.anchor);return Cn(l.node,l.offset,o,s)&&([r,i,o,s]=[o,s,r,i]),{anchorNode:r,anchorOffset:i,focusNode:o,focusOffset:s}}(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function No(t){let e=Object.create(null);return e.class="ProseMirror",e.contenteditable=String(t.editable),t.someProp("attributes",(n=>{if("function"==typeof n&&(n=n(t.state)),n)for(let t in n)"class"==t?e.class+=" "+n[t]:"style"==t?e.style=(e.style?e.style+";":"")+n[t]:e[t]||"contenteditable"==t||"nodeName"==t||(e[t]=String(n[t]))})),e.translate||(e.translate="no"),[eo.node(0,t.state.doc.content.size,e)]}function To(t){if(t.markCursor){let e=document.createElement("img");e.className="ProseMirror-separator",e.setAttribute("mark-placeholder","true"),e.setAttribute("alt",""),t.cursorWrapper={dom:e,deco:eo.widget(t.state.selection.head,e,{raw:!0,marks:t.markCursor})}}else t.cursorWrapper=null}function Ao(t){return!t.someProp("editable",(e=>!1===e(t.state)))}function Eo(t){let e=Object.create(null);function n(t){for(let n in t)Object.prototype.hasOwnProperty.call(e,n)||(e[n]=t[n])}return t.someProp("nodeViews",n),t.someProp("markViews",n),e}function $o(t){if(t.spec.state||t.spec.filterTransaction||t.spec.appendTransaction)throw new RangeError("Plugins passed directly to the view must not have a state component")}for(var Po={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Io={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Ro="undefined"!=typeof navigator&&/Chrome\/(\d+)/.exec(navigator.userAgent),zo="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),_o="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),Bo=zo||Ro&&+Ro[1]<57,jo=0;jo<10;jo++)Po[48+jo]=Po[96+jo]=String(jo);for(jo=1;jo<=24;jo++)Po[jo+111]="F"+jo;for(jo=65;jo<=90;jo++)Po[jo]=String.fromCharCode(jo+32),Io[jo]=String.fromCharCode(jo);for(var Vo in Po)Io.hasOwnProperty(Vo)||(Io[Vo]=Po[Vo]);const Fo="undefined"!=typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);function Lo(t){let e,n,r,i,o=t.split(/-(?!$)/),s=o[o.length-1];"Space"==s&&(s=" ");for(let l=0;l127)&&(r=Po[n.keyCode])&&r!=i){let i=e[Wo(r,n)];if(i&&i(t.state,t.dispatch,t))return!0}}return!1}}const Ko=(t,e)=>!t.selection.empty&&(e&&e(t.tr.deleteSelection().scrollIntoView()),!0);function Ho(t,e,n=!1){for(let r=t;r;r="start"==e?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&1!=r.childCount)return!1}return!1}function Yo(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){if(t.index(e)>0)return t.doc.resolve(t.before(e+1));if(t.node(e).type.spec.isolating)break}return null}function Uo(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let n=t.node(e);if(t.index(e)+1{let{$from:n,$to:r}=t.selection,i=n.blockRange(r),o=i&&$e(i);return null!=o&&(e&&e(t.tr.lift(i,o).scrollIntoView()),!0)};function Zo(t){for(let e=0;e{let{$head:n,$anchor:r}=t.selection;if(!n.parent.type.spec.code||!n.sameParent(r))return!1;let i=n.node(-1),o=n.indexAfter(-1),s=Zo(i.contentMatchAt(o));if(!s||!i.canReplaceWith(o,o,s))return!1;if(e){let r=n.after(),i=t.tr.replaceWith(r,r,s.createAndFill());i.setSelection(Xe.near(i.doc.resolve(r),1)),e(i.scrollIntoView())}return!0};const Qo=(t,e)=>{let{$from:n,$to:r}=t.selection;if(t.selection instanceof on&&t.selection.node.isBlock)return!(!n.parentOffset||!Re(t.doc,n.pos)||(e&&e(t.tr.split(n.pos).scrollIntoView()),0));if(!n.parent.isBlock)return!1;if(e){let i=r.parentOffset==r.parent.content.size,o=t.tr;(t.selection instanceof nn||t.selection instanceof ln)&&o.deleteSelection();let s=0==n.depth?null:Zo(n.node(-1).contentMatchAt(n.indexAfter(-1))),l=ts&&ts(r.parent,i),a=l?[l]:i&&s?[{type:s}]:void 0,c=Re(o.doc,o.mapping.map(n.pos),1,a);if(a||c||!Re(o.doc,o.mapping.map(n.pos),1,s?[{type:s}]:void 0)||(s&&(a=[{type:s}]),c=!0),c&&(o.split(o.mapping.map(n.pos),1,a),!i&&!n.parentOffset&&n.parent.type!=s)){let t=o.mapping.map(n.before()),e=o.doc.resolve(t);s&&n.node(-1).canReplaceWith(e.index(),e.index()+1,s)&&o.setNodeMarkup(o.mapping.map(n.before()),s)}e(o.scrollIntoView())}return!0};var ts;function es(t,e,n){let r,i,o=e.nodeBefore,s=e.nodeAfter;if(o.type.spec.isolating||s.type.spec.isolating)return!1;if(function(t,e,n){let r=e.nodeBefore,i=e.nodeAfter,o=e.index();return!(!(r&&i&&r.type.compatibleContent(i.type))||(!r.content.size&&e.parent.canReplace(o-1,o)?(n&&n(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView()),0):!e.parent.canReplace(o,o+1)||!i.isTextblock&&!ze(t.doc,e.pos)||(n&&n(t.tr.clearIncompatible(e.pos,r.type,r.contentMatchAt(r.childCount)).join(e.pos).scrollIntoView()),0)))}(t,e,n))return!0;let l=e.parent.canReplace(e.index(),e.index()+1);if(l&&(r=(i=o.contentMatchAt(o.childCount)).findWrapping(s.type))&&i.matchType(r[0]||s.type).validEnd){if(n){let i=e.pos+s.nodeSize,l=dt.empty;for(let t=r.length-1;t>=0;t--)l=dt.from(r[t].create(null,l));l=dt.from(o.copy(l));let a=t.tr.step(new Te(e.pos-1,i,e.pos,i,new vt(l,1,0),r.length,!0)),c=i+2*r.length;ze(a.doc,c)&&a.join(c),n(a.scrollIntoView())}return!0}let a=Xe.findFrom(e,1),c=a&&a.$from.blockRange(a.$to),h=c&&$e(c);if(null!=h&&h>=e.depth)return n&&n(t.tr.lift(c,h).scrollIntoView()),!0;if(l&&Ho(s,"start",!0)&&Ho(o,"end")){let r=o,i=[];for(;i.push(r),!r.isTextblock;)r=r.lastChild;let l=s,a=1;for(;!l.isTextblock;l=l.firstChild)a++;if(r.canReplace(r.childCount,r.childCount,l.content)){if(n){let r=dt.empty;for(let t=i.length-1;t>=0;t--)r=dt.from(i[t].copy(r));n(t.tr.step(new Te(e.pos-i.length,e.pos+s.nodeSize,e.pos+a,e.pos+s.nodeSize-a,new vt(r,i.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function ns(t){return function(e,n){let r=e.selection,i=t<0?r.$from:r.$to,o=i.depth;for(;i.node(o).isInline;){if(!o)return!1;o--}return!!i.node(o).isTextblock&&(n&&n(e.tr.setSelection(nn.create(e.doc,t<0?i.start(o):i.end(o)))),!0)}}const rs=ns(-1),is=ns(1);function ss(t,e=null){return function(n,r){let{$from:i,$to:o}=n.selection,s=i.blockRange(o),l=s&&Pe(s,t,e);return!!l&&(r&&r(n.tr.wrap(s,l).scrollIntoView()),!0)}}function ls(t,e=null){return function(n,r){let i=!1;for(let o=0;o{if(i)return!1;if(r.isTextblock&&!r.hasMarkup(t,e))if(r.type==t)i=!0;else{let e=n.doc.resolve(o),r=e.index();i=e.parent.canReplaceWith(r,r+1,t)}}))}if(!i)return!1;if(r){let i=n.tr;for(let r=0;r{if(s)return!1;s=t.inlineContent&&t.type.allowsMarkType(n)})),s)return!0}return!1}(n.doc,s,t))return!1;if(r)if(o)t.isInSet(n.storedMarks||o.marks())?r(n.tr.removeStoredMark(t)):r(n.tr.addStoredMark(t.create(e)));else{let i=!1,o=n.tr;for(let e=0;!i&&e{let r=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("backward",t):n.parentOffset>0)?null:n}(t,n);if(!r)return!1;let i=Yo(r);if(!i){let n=r.blockRange(),i=n&&$e(n);return null!=i&&(e&&e(t.tr.lift(n,i).scrollIntoView()),!0)}let o=i.nodeBefore;if(!o.type.spec.isolating&&es(t,i,e))return!0;if(0==r.parent.content.size&&(Ho(o,"end")||on.isSelectable(o))){let n=_e(t.doc,r.before(),r.after(),vt.empty);if(n&&n.slice.size{let{$head:r,empty:i}=t.selection,o=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("backward",t):r.parentOffset>0)return!1;o=Yo(r)}let s=o&&o.nodeBefore;return!(!s||!on.isSelectable(s))&&(e&&e(t.tr.setSelection(on.create(t.doc,o.pos-s.nodeSize)).scrollIntoView()),!0)})),us=cs(Ko,((t,e,n)=>{let r=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("forward",t):n.parentOffset{let{$head:r,empty:i}=t.selection,o=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("forward",t):r.parentOffset{let{$head:n,$anchor:r}=t.selection;return!(!n.parent.type.spec.code||!n.sameParent(r))&&(e&&e(t.tr.insertText("\n").scrollIntoView()),!0)}),((t,e)=>{let n=t.selection,{$from:r,$to:i}=n;if(n instanceof ln||r.parent.inlineContent||i.parent.inlineContent)return!1;let o=Zo(i.parent.contentMatchAt(i.indexAfter()));if(!o||!o.isTextblock)return!1;if(e){let n=(!r.parentOffset&&i.index(){let{$cursor:n}=t.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let r=n.before();if(Re(t.doc,r))return e&&e(t.tr.split(r).scrollIntoView()),!0}let r=n.blockRange(),i=r&&$e(r);return null!=i&&(e&&e(t.tr.lift(r,i).scrollIntoView()),!0)}),Qo),"Mod-Enter":Xo,Backspace:hs,"Mod-Backspace":hs,"Shift-Backspace":hs,Delete:us,"Mod-Delete":us,"Mod-a":(t,e)=>(e&&e(t.tr.setSelection(new ln(t.doc))),!0)},fs={"Ctrl-h":ds.Backspace,"Alt-Backspace":ds["Mod-Backspace"],"Ctrl-d":ds.Delete,"Ctrl-Alt-Backspace":ds["Mod-Delete"],"Alt-Delete":ds["Mod-Delete"],"Alt-d":ds["Mod-Delete"],"Ctrl-a":rs,"Ctrl-e":is};for(let os in ds)fs[os]=ds[os];const ps=("undefined"!=typeof navigator?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!("undefined"==typeof os||!os.platform)&&"darwin"==os.platform())?fs:ds;class ms{constructor(t,e){var n;this.match=t,this.match=t,this.handler="string"==typeof e?(n=e,function(t,e,r,i){let o=n;if(e[1]){let t=e[0].lastIndexOf(e[1]);o+=e[0].slice(t+e[1].length);let n=(r+=t)-i;n>0&&(o=e[0].slice(t-n,t)+o,r=i)}return t.tr.insertText(o,r,i)}):e}}const gs=500;function ys({rules:t}){let e=new vn({state:{init:()=>null,apply(t,e){let n=t.getMeta(this);return n||(t.selectionSet||t.docChanged?null:e)}},props:{handleTextInput:(n,r,i,o)=>vs(n,r,i,o,t,e),handleDOMEvents:{compositionend:n=>{setTimeout((()=>{let{$cursor:r}=n.state.selection;r&&vs(n,r.pos,r.pos,"",t,e)}))}}},isInputRules:!0});return e}function vs(t,e,n,r,i,o){if(t.composing)return!1;let s=t.state,l=s.doc.resolve(e);if(l.parent.type.spec.code)return!1;let a=l.parent.textBetween(Math.max(0,l.parentOffset-gs),l.parentOffset,null,"")+r;for(let c=0;c{let n=t.plugins;for(let r=0;r=0;t--)n.step(r.steps[t].invert(r.docs[t]));if(i.text){let e=n.doc.resolve(i.from).marks();n.replaceWith(i.from,i.to,t.schema.text(i.text,e))}else n.delete(i.from,i.to);e(n)}return!0}}return!1};function bs(t,e,n=null,r){return new ms(t,((t,i,o,s)=>{let l=n instanceof Function?n(i):n,a=t.tr.delete(o,s),c=a.doc.resolve(o).blockRange(),h=c&&Pe(c,e,l);if(!h)return null;a.wrap(c,h);let u=a.doc.resolve(o-1).nodeBefore;return u&&u.type==e&&ze(a.doc,o-1)&&(!r||r(i,u))&&a.join(o-1),a}))}function xs(t,e,n=null){return new ms(t,((t,r,i,o)=>{let s=t.doc.resolve(i),l=n instanceof Function?n(r):n;return s.node(-1).canReplaceWith(s.index(-1),s.indexAfter(-1),e)?t.tr.delete(i,o).setBlockType(i,i,e,l):null}))}const Ss=["ol",0],ks=["ul",0],Ms=["li",0],Os={attrs:{order:{default:1}},parseDOM:[{tag:"ol",getAttrs:t=>({order:t.hasAttribute("start")?+t.getAttribute("start"):1})}],toDOM:t=>1==t.attrs.order?Ss:["ol",{start:t.attrs.order},0]},Cs={parseDOM:[{tag:"ul"}],toDOM:()=>ks},Ds={parseDOM:[{tag:"li"}],toDOM:()=>Ms,defining:!0};function Ns(t,e){let n={};for(let r in t)n[r]=t[r];for(let r in e)n[r]=e[r];return n}function Ts(t,e,n){return t.append({ordered_list:Ns(Os,{content:"list_item+",group:n}),bullet_list:Ns(Cs,{content:"list_item+",group:n}),list_item:Ns(Ds,{content:e})})}function As(t,e=null){return function(n,r){let{$from:i,$to:o}=n.selection,s=i.blockRange(o),l=!1,a=s;if(!s)return!1;if(s.depth>=2&&i.node(s.depth-1).type.compatibleContent(t)&&0==s.startIndex){if(0==i.index(s.depth-1))return!1;let t=n.doc.resolve(s.start-2);a=new It(t,t,s.depth),s.endIndex=0;h--)o=dt.from(n[h].type.create(n[h].attrs,o));t.step(new Te(e.start-(r?2:0),e.end,e.start,e.end,new vt(o,0,0),n.length,!0));let s=0;for(let h=0;h=i.depth-3;t--)e=dt.from(i.node(t).copy(e));let s=i.indexAfter(-1){if(c>-1)return!1;t.isTextblock&&0==t.content.size&&(c=e+1)})),c>-1&&a.setSelection(Xe.near(a.doc.resolve(c))),r(a.scrollIntoView())}return!0}let a=o.pos==i.end()?l.contentMatchAt(0).defaultType:null,c=n.tr.delete(i.pos,o.pos),h=a?[e?{type:t,attrs:e}:null,{type:a}]:void 0;return!!Re(c.doc,i.pos,2,h)&&(r&&r(c.split(i.pos,2,h).scrollIntoView()),!0)}}function $s(t){return function(e,n){let{$from:r,$to:i}=e.selection,o=r.blockRange(i,(e=>e.childCount>0&&e.firstChild.type==t));return!!o&&(!n||(r.node(o.depth-1).type==t?function(t,e,n,r){let i=t.tr,o=r.end,s=r.$to.end(r.depth);om;p--)f-=i.child(p).nodeSize,r.delete(f-1,f+1);let o=r.doc.resolve(n.start),s=o.nodeAfter;if(r.mapping.map(n.end)!=n.start+o.nodeAfter.nodeSize)return!1;let l=0==n.startIndex,a=n.endIndex==i.childCount,c=o.node(-1),h=o.index(-1);if(!c.canReplace(h+(l?0:1),h+1,s.content.append(a?dt.empty:dt.from(i))))return!1;let u=o.pos,d=u+s.nodeSize;return r.step(new Te(u-(l?1:0),d+(a?1:0),u+1,d-1,new vt((l?dt.empty:dt.from(i.copy(dt.empty))).append(a?dt.empty:dt.from(i.copy(dt.empty))),l?0:1,a?0:1),l?0:1)),e(r.scrollIntoView()),!0}(e,n,o)))}}function Ps(t){return function(e,n){let{$from:r,$to:i}=e.selection,o=r.blockRange(i,(e=>e.childCount>0&&e.firstChild.type==t));if(!o)return!1;let s=o.startIndex;if(0==s)return!1;let l=o.parent,a=l.child(s-1);if(a.type!=t)return!1;if(n){let r=a.lastChild&&a.lastChild.type==l.type,i=dt.from(r?t.create():null),s=new vt(dt.from(t.create(null,dt.from(l.type.create(null,i)))),r?3:1,0),c=o.start,h=o.end;n(e.tr.step(new Te(c-(r?3:1),h,c,h,s,1,!0)).scrollIntoView())}return!0}}var Is=200,Rs=function(){};Rs.prototype.append=function(t){return t.length?(t=Rs.from(t),!this.length&&t||t.length=e?Rs.empty:this.sliceInner(Math.max(0,t),Math.min(this.length,e))},Rs.prototype.get=function(t){if(!(t<0||t>=this.length))return this.getInner(t)},Rs.prototype.forEach=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length),e<=n?this.forEachInner(t,e,n,0):this.forEachInvertedInner(t,e,n,0)},Rs.prototype.map=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length);var r=[];return this.forEach((function(e,n){return r.push(t(e,n))}),e,n),r},Rs.from=function(t){return t instanceof Rs?t:t&&t.length?new zs(t):Rs.empty};var zs=function(t){function e(e){t.call(this),this.values=e}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(t,n){return 0==t&&n==this.length?this:new e(this.values.slice(t,n))},e.prototype.getInner=function(t){return this.values[t]},e.prototype.forEachInner=function(t,e,n,r){for(var i=e;i=n;i--)if(!1===t(this.values[i],r+i))return!1},e.prototype.leafAppend=function(t){if(this.length+t.length<=Is)return new e(this.values.concat(t.flatten()))},e.prototype.leafPrepend=function(t){if(this.length+t.length<=Is)return new e(t.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(e.prototype,n),e}(Rs);Rs.empty=new zs([]);var _s=function(t){function e(e,n){t.call(this),this.left=e,this.right=n,this.length=e.length+n.length,this.depth=Math.max(e.depth,n.depth)+1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(t){return ti&&!1===this.right.forEachInner(t,Math.max(e-i,0),Math.min(this.length,n)-i,r+i))&&void 0)},e.prototype.forEachInvertedInner=function(t,e,n,r){var i=this.left.length;return!(e>i&&!1===this.right.forEachInvertedInner(t,e-i,Math.max(n,i)-i,r+i))&&(!(n=n?this.right.slice(t-n,e-n):this.left.slice(t,n).append(this.right.slice(0,e-n))},e.prototype.leafAppend=function(t){var n=this.right.leafAppend(t);if(n)return new e(this.left,n)},e.prototype.leafPrepend=function(t){var n=this.left.leafPrepend(t);if(n)return new e(n,this.right)},e.prototype.appendInner=function(t){return this.left.depth>=Math.max(this.right.depth,t.depth)+1?new e(this.left,new e(this.right,t)):new e(this,t)},e}(Rs),Bs=Rs;class js{constructor(t,e){this.items=t,this.eventCount=e}popEvent(t,e){if(0==this.eventCount)return null;let n,r,i=this.items.length;for(;;i--){if(this.items.get(i-1).selection){--i;break}}e&&(n=this.remapping(i,this.items.length),r=n.maps.length);let o,s,l=t.tr,a=[],c=[];return this.items.forEach(((t,e)=>{if(!t.step)return n||(n=this.remapping(i,e+1),r=n.maps.length),r--,void c.push(t);if(n){c.push(new Vs(t.map));let e,i=t.step.map(n.slice(r));i&&l.maybeStep(i).doc&&(e=l.mapping.maps[l.mapping.maps.length-1],a.push(new Vs(e,void 0,void 0,a.length+c.length))),r--,e&&n.appendMap(e,r)}else l.maybeStep(t.step);return t.selection?(o=n?t.selection.map(n.slice(r)):t.selection,s=new js(this.items.slice(0,i).append(c.reverse().concat(a)),this.eventCount-1),!1):void 0}),this.items.length,0),{remaining:s,transform:l,selection:o}}addTransform(t,e,n,r){let i=[],o=this.eventCount,s=this.items,l=!r&&s.length?s.get(s.length-1):null;for(let c=0;cLs&&(s=function(t,e){let n;return t.forEach(((t,r)=>{if(t.selection&&0==e--)return n=r,!1})),t.slice(n)}(s,a),o-=a),new js(s.append(i),o)}remapping(t,e){let n=new we;return this.items.forEach(((e,r)=>{let i=null!=e.mirrorOffset&&r-e.mirrorOffset>=t?n.maps.length-e.mirrorOffset:void 0;n.appendMap(e.map,i)}),t,e),n}addMaps(t){return 0==this.eventCount?this:new js(this.items.append(t.map((t=>new Vs(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let n=[],r=Math.max(0,this.items.length-e),i=t.mapping,o=t.steps.length,s=this.eventCount;this.items.forEach((t=>{t.selection&&s--}),r);let l=e;this.items.forEach((e=>{let r=i.getMirror(--l);if(null==r)return;o=Math.min(o,r);let a=i.maps[r];if(e.step){let o=t.steps[r].invert(t.docs[r]),c=e.selection&&e.selection.map(i.slice(l+1,r));c&&s++,n.push(new Vs(a,o,c))}else n.push(new Vs(a))}),r);let a=[];for(let u=e;u500&&(h=h.compress(this.items.length-n.length)),h}emptyItemCount(){let t=0;return this.items.forEach((e=>{e.step||t++})),t}compress(t=this.items.length){let e=this.remapping(0,t),n=e.maps.length,r=[],i=0;return this.items.forEach(((o,s)=>{if(s>=t)r.push(o),o.selection&&i++;else if(o.step){let t=o.step.map(e.slice(n)),s=t&&t.getMap();if(n--,s&&e.appendMap(s,n),t){let l=o.selection&&o.selection.map(e.slice(n));l&&i++;let a,c=new Vs(s.invert(),t,l),h=r.length-1;(a=r.length&&r[h].merge(c))?r[h]=a:r.push(c)}}else o.map&&n--}),this.items.length,0),new js(Bs.from(r.reverse()),i)}}js.empty=new js(Bs.empty,0);class Vs{constructor(t,e,n,r){this.map=t,this.step=e,this.selection=n,this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new Vs(e.getMap().invert(),e,this.selection)}}}class Fs{constructor(t,e,n,r,i){this.done=t,this.undone=e,this.prevRanges=n,this.prevTime=r,this.prevComposition=i}}const Ls=20;function Ws(t){let e=[];return t.forEach(((t,n,r,i)=>e.push(r,i))),e}function qs(t,e){if(!t)return null;let n=[];for(let r=0;rnew Fs(js.empty,js.empty,null,0,-1),apply:(e,n,r)=>function(t,e,n,r){let i,o=n.getMeta(Us);if(o)return o.historyState;n.getMeta(Gs)&&(t=new Fs(t.done,t.undone,null,0,-1));let s=n.getMeta("appendedTransaction");if(0==n.steps.length)return t;if(s&&s.getMeta(Us))return s.getMeta(Us).redo?new Fs(t.done.addTransform(n,void 0,r,Ys(e)),t.undone,Ws(n.mapping.maps[n.steps.length-1]),t.prevTime,t.prevComposition):new Fs(t.done,t.undone.addTransform(n,void 0,r,Ys(e)),null,t.prevTime,t.prevComposition);if(!1===n.getMeta("addToHistory")||s&&!1===s.getMeta("addToHistory"))return(i=n.getMeta("rebased"))?new Fs(t.done.rebased(n,i),t.undone.rebased(n,i),qs(t.prevRanges,n.mapping),t.prevTime,t.prevComposition):new Fs(t.done.addMaps(n.mapping.maps),t.undone.addMaps(n.mapping.maps),qs(t.prevRanges,n.mapping),t.prevTime,t.prevComposition);{let i=n.getMeta("composition"),o=0==t.prevTime||!s&&t.prevComposition!=i&&(t.prevTime<(n.time||0)-r.newGroupDelay||!function(t,e){if(!e)return!1;if(!t.docChanged)return!0;let n=!1;return t.mapping.maps[0].forEach(((t,r)=>{for(let i=0;i=e[i]&&(n=!0)})),n}(n,t.prevRanges)),l=s?qs(t.prevRanges,n.mapping):Ws(n.mapping.maps[n.steps.length-1]);return new Fs(t.done.addTransform(n,o?e.selection.getBookmark():void 0,r,Ys(e)),js.empty,l,n.time,null==i?t.prevComposition:i)}}(n,r,e,t)},config:t,props:{handleDOMEvents:{beforeinput(t,e){let n=e.inputType,r="historyUndo"==n?Xs:"historyRedo"==n?Qs:null;return!!r&&(e.preventDefault(),r(t.state,t.dispatch))}}}})}const Xs=(t,e)=>{let n=Us.getState(t);return!(!n||0==n.done.eventCount)&&(e&&Js(n,t,e,!1),!0)},Qs=(t,e)=>{let n=Us.getState(t);return!(!n||0==n.undone.eventCount)&&(e&&Js(n,t,e,!0),!0)};function tl(t){let e=Us.getState(t);return e?e.done.eventCount:0}function el(t){let e=Us.getState(t);return e?e.undone.eventCount:0} /*! * portal-vue © Thorsten Lünborg, 2019 * @@ -8,9 +8,9 @@ var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?windo * * https://github.com/linusborg/portal-vue * - */function el(t){return(el="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function nl(t){return function(t){if(Array.isArray(t)){for(var e=0,n=new Array(t.length);e1&&void 0!==arguments[1]&&arguments[1],n=t.to,r=t.from;if(n&&(r||!1!==e)&&this.transports[n])if(e)this.transports[n]=[];else{var i=this.$_getTransportIndex(t);if(i>=0){var o=this.transports[n].slice(0);o.splice(i,1),this.transports[n]=o}}},registerTarget:function(t,e,n){rl&&(this.trackInstances&&!n&&this.targets[t]&&console.warn("[portal-vue]: Target ".concat(t," already exists")),this.$set(this.targets,t,Object.freeze([e])))},unregisterTarget:function(t){this.$delete(this.targets,t)},registerSource:function(t,e,n){rl&&(this.trackInstances&&!n&&this.sources[t]&&console.warn("[portal-vue]: source ".concat(t," already exists")),this.$set(this.sources,t,Object.freeze([e])))},unregisterSource:function(t){this.$delete(this.sources,t)},hasTarget:function(t){return!(!this.targets[t]||!this.targets[t][0])},hasSource:function(t){return!(!this.sources[t]||!this.sources[t][0])},hasContentFor:function(t){return!!this.transports[t]&&!!this.transports[t].length},$_getTransportIndex:function(t){var e=t.to,n=t.from;for(var r in this.transports[e])if(this.transports[e][r].from===n)return+r;return-1}}}),cl=new al(ol),hl=1,ul=Vue.extend({name:"portal",props:{disabled:{type:Boolean},name:{type:String,default:function(){return String(hl++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}}},created:function(){var t=this;this.$nextTick((function(){cl.registerSource(t.name,t)}))},mounted:function(){this.disabled||this.sendUpdate()},updated:function(){this.disabled?this.clear():this.sendUpdate()},beforeDestroy:function(){cl.unregisterSource(this.name),this.clear()},watch:{to:function(t,e){e&&e!==t&&this.clear(e),this.sendUpdate()}},methods:{clear:function(t){var e={from:this.name,to:t||this.to};cl.close(e)},normalizeSlots:function(){return this.$scopedSlots.default?[this.$scopedSlots.default]:this.$slots.default},normalizeOwnChildren:function(t){return"function"==typeof t?t(this.slotProps):t},sendUpdate:function(){var t=this.normalizeSlots();if(t){var e={from:this.name,to:this.to,passengers:nl(t),order:this.order};cl.open(e)}else this.clear()}},render:function(t){var e=this.$slots.default||this.$scopedSlots.default||[],n=this.tag;return e&&this.disabled?e.length<=1&&this.slim?this.normalizeOwnChildren(e)[0]:t(n,[this.normalizeOwnChildren(e)]):this.slim?t():t(n,{class:{"v-portal":!0},style:{display:"none"},key:"v-portal-placeholder"})}}),dl=Vue.extend({name:"portalTarget",props:{multiple:{type:Boolean,default:!1},name:{type:String,required:!0},slim:{type:Boolean,default:!1},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},data:function(){return{transports:cl.transports,firstRender:!0}},created:function(){var t=this;this.$nextTick((function(){cl.registerTarget(t.name,t)}))},watch:{ownTransports:function(){this.$emit("change",this.children().length>0)},name:function(t,e){cl.unregisterTarget(e),cl.registerTarget(t,this)}},mounted:function(){var t=this;this.transition&&this.$nextTick((function(){t.firstRender=!1}))},beforeDestroy:function(){cl.unregisterTarget(this.name)},computed:{ownTransports:function(){var t=this.transports[this.name]||[];return this.multiple?t:0===t.length?[]:[t[t.length-1]]},passengers:function(){return function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.reduce((function(t,n){var r=n.passengers[0],i="function"==typeof r?r(e):n.passengers;return t.concat(i)}),[])}(this.ownTransports,this.slotProps)}},methods:{children:function(){return 0!==this.passengers.length?this.passengers:this.$scopedSlots.default?this.$scopedSlots.default(this.slotProps):this.$slots.default||[]},noWrapper:function(){var t=this.slim&&!this.transition;return t&&this.children().length>1&&console.warn("[portal-vue]: PortalTarget with `slim` option received more than one child element."),t}},render:function(t){var e=this.noWrapper(),n=this.children(),r=this.transition||this.tag;return e?n[0]:this.slim&&!r?t():t(r,{props:{tag:this.transition&&this.tag?this.tag:void 0},class:{"vue-portal-target":!0}},n)}}),fl=0,pl=["disabled","name","order","slim","slotProps","tag","to"],ml=["multiple","transition"],gl=Vue.extend({name:"MountingPortal",inheritAttrs:!1,props:{append:{type:[Boolean,String]},bail:{type:Boolean},mountTo:{type:String,required:!0},disabled:{type:Boolean},name:{type:String,default:function(){return"mounted_"+String(fl++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}},multiple:{type:Boolean,default:!1},targetSlim:{type:Boolean},targetSlotProps:{type:Object,default:function(){return{}}},targetTag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},created:function(){if("undefined"!=typeof document){var t=document.querySelector(this.mountTo);if(t){var e=this.$props;if(cl.targets[e.name])e.bail?console.warn("[portal-vue]: Target ".concat(e.name," is already mounted.\n Aborting because 'bail: true' is set")):this.portalTarget=cl.targets[e.name];else{var n=e.append;if(n){var r="string"==typeof n?n:"DIV",i=document.createElement(r);t.appendChild(i),t=i}var o=il(this.$props,ml);o.slim=this.targetSlim,o.tag=this.targetTag,o.slotProps=this.targetSlotProps,o.name=this.to,this.portalTarget=new dl({el:t,parent:this.$parent||this,propsData:o})}}else console.error("[portal-vue]: Mount Point '".concat(this.mountTo,"' not found in document"))}},beforeDestroy:function(){var t=this.portalTarget;if(this.append){var e=t.$el;e.parentNode.removeChild(e)}t.$destroy()},render:function(t){if(!this.portalTarget)return console.warn("[portal-vue] Target wasn't mounted"),t();if(!this.$scopedSlots.manual){var e=il(this.$props,pl);return t(ul,{props:e,attrs:this.$attrs,on:this.$listeners,scopedSlots:this.$scopedSlots},this.$slots.default)}var n=this.$scopedSlots.manual({to:this.to});return Array.isArray(n)&&(n=n[0]),n||t()}});var yl={install:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.component(e.portalName||"Portal",ul),t.component(e.portalTargetName||"PortalTarget",dl),t.component(e.MountingPortalName||"MountingPortal",gl)}},vl={exports:{}};vl.exports=function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",o="minute",s="hour",l="day",a="week",c="month",h="quarter",u="year",d="date",f="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return"["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},y=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:y,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+y(r,2,"0")+":"+y(i,2,"0")},m:function t(e,n){if(e.date()1)return t(s[0])}else{var l=e.name;b[l]=e,i=l}return!r&&i&&(w=i),i||!r&&w},M=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new C(n)},O=v;O.l=k,O.i=S,O.w=function(t,e){return M(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var C=function(){function g(t){this.$L=k(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[x]=!0}var y=g.prototype;return y.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(p);if(r){var i=r[2]-1||0,o=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)}}return new Date(e)}(t),this.init()},y.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},y.$utils=function(){return O},y.isValid=function(){return!(this.$d.toString()===f)},y.isSame=function(t,e){var n=M(t);return this.startOf(e)<=n&&n<=this.endOf(e)},y.isAfter=function(t,e){return M(t)68?1900:2e3)},l=function(t){return function(e){this[t]=+e}},a=[/[+-]\d\d:?(\d\d)?|Z/,function(t){(this.zone||(this.zone={})).offset=function(t){if(!t)return 0;if("Z"===t)return 0;var e=t.match(/([+-]|\d\d)/g),n=60*e[1]+(+e[2]||0);return 0===n?0:"+"===e[0]?-n:n}(t)}],c=function(t){var e=o[t];return e&&(e.indexOf?e:e.s.concat(e.f))},h=function(t,e){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(t.indexOf(r(i,0,e))>-1){n=i>12;break}}else n=t===(e?"pm":"PM");return n},u={A:[i,function(t){this.afternoon=h(t,!1)}],a:[i,function(t){this.afternoon=h(t,!0)}],S:[/\d/,function(t){this.milliseconds=100*+t}],SS:[n,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[r,l("seconds")],ss:[r,l("seconds")],m:[r,l("minutes")],mm:[r,l("minutes")],H:[r,l("hours")],h:[r,l("hours")],HH:[r,l("hours")],hh:[r,l("hours")],D:[r,l("day")],DD:[n,l("day")],Do:[i,function(t){var e=o.ordinal,n=t.match(/\d+/);if(this.day=n[0],e)for(var r=1;r<=31;r+=1)e(r).replace(/\[|\]/g,"")===t&&(this.day=r)}],M:[r,l("month")],MM:[n,l("month")],MMM:[i,function(t){var e=c("months"),n=(c("monthsShort")||e.map((function(t){return t.slice(0,3)}))).indexOf(t)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[i,function(t){var e=c("months").indexOf(t)+1;if(e<1)throw new Error;this.month=e%12||e}],Y:[/[+-]?\d+/,l("year")],YY:[n,function(t){this.year=s(t)}],YYYY:[/\d{4}/,l("year")],Z:a,ZZ:a};function d(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(e,n,r){var o=r&&r.toUpperCase();return n||i[r]||t[r]||i[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(t,e,n){return e||n.slice(1)}))}))).match(e),l=s.length,a=0;a-1)return new Date(("X"===e?1e3:1)*t);var r=d(e)(t),i=r.year,o=r.month,s=r.day,l=r.hours,a=r.minutes,c=r.seconds,h=r.milliseconds,u=r.zone,f=new Date,p=s||(i||o?1:f.getDate()),m=i||f.getFullYear(),g=0;i&&!o||(g=o>0?o-1:f.getMonth());var y=l||0,v=a||0,w=c||0,b=h||0;return u?new Date(Date.UTC(m,g,p,y,v,w,b+60*u.offset*1e3)):n?new Date(Date.UTC(m,g,p,y,v,w,b)):new Date(m,g,p,y,v,w,b)}catch(x){return new Date("")}}(e,l,r),this.init(),u&&!0!==u&&(this.$L=this.locale(u).$L),h&&e!=this.format(l)&&(this.$d=new Date("")),o={}}else if(l instanceof Array)for(var f=l.length,p=1;p<=f;p+=1){s[1]=l[p-1];var m=n.apply(this,s);if(m.isValid()){this.$d=m.$d,this.$L=m.$L,this.init();break}p===f&&(this.$d=new Date(""))}else i.call(this,t)}}}();const xl=e(bl.exports);function Sl(t){return{all:t=t||new Map,on:function(e,n){var r=t.get(e);r?r.push(n):t.set(e,[n])},off:function(e,n){var r=t.get(e);r&&(n?r.splice(r.indexOf(n)>>>0,1):t.set(e,[]))},emit:function(e,n){var r=t.get(e);r&&r.slice().map((function(t){t(n)})),(r=t.get("*"))&&r.slice().map((function(t){t(e,n)}))}}} + */function nl(t){return(nl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function rl(t){return function(t){if(Array.isArray(t)){for(var e=0,n=new Array(t.length);e1&&void 0!==arguments[1]&&arguments[1],n=t.to,r=t.from;if(n&&(r||!1!==e)&&this.transports[n])if(e)this.transports[n]=[];else{var i=this.$_getTransportIndex(t);if(i>=0){var o=this.transports[n].slice(0);o.splice(i,1),this.transports[n]=o}}},registerTarget:function(t,e,n){il&&(this.trackInstances&&!n&&this.targets[t]&&console.warn("[portal-vue]: Target ".concat(t," already exists")),this.$set(this.targets,t,Object.freeze([e])))},unregisterTarget:function(t){this.$delete(this.targets,t)},registerSource:function(t,e,n){il&&(this.trackInstances&&!n&&this.sources[t]&&console.warn("[portal-vue]: source ".concat(t," already exists")),this.$set(this.sources,t,Object.freeze([e])))},unregisterSource:function(t){this.$delete(this.sources,t)},hasTarget:function(t){return!(!this.targets[t]||!this.targets[t][0])},hasSource:function(t){return!(!this.sources[t]||!this.sources[t][0])},hasContentFor:function(t){return!!this.transports[t]&&!!this.transports[t].length},$_getTransportIndex:function(t){var e=t.to,n=t.from;for(var r in this.transports[e])if(this.transports[e][r].from===n)return+r;return-1}}}),hl=new cl(sl),ul=1,dl=Vue.extend({name:"portal",props:{disabled:{type:Boolean},name:{type:String,default:function(){return String(ul++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}}},created:function(){var t=this;this.$nextTick((function(){hl.registerSource(t.name,t)}))},mounted:function(){this.disabled||this.sendUpdate()},updated:function(){this.disabled?this.clear():this.sendUpdate()},beforeDestroy:function(){hl.unregisterSource(this.name),this.clear()},watch:{to:function(t,e){e&&e!==t&&this.clear(e),this.sendUpdate()}},methods:{clear:function(t){var e={from:this.name,to:t||this.to};hl.close(e)},normalizeSlots:function(){return this.$scopedSlots.default?[this.$scopedSlots.default]:this.$slots.default},normalizeOwnChildren:function(t){return"function"==typeof t?t(this.slotProps):t},sendUpdate:function(){var t=this.normalizeSlots();if(t){var e={from:this.name,to:this.to,passengers:rl(t),order:this.order};hl.open(e)}else this.clear()}},render:function(t){var e=this.$slots.default||this.$scopedSlots.default||[],n=this.tag;return e&&this.disabled?e.length<=1&&this.slim?this.normalizeOwnChildren(e)[0]:t(n,[this.normalizeOwnChildren(e)]):this.slim?t():t(n,{class:{"v-portal":!0},style:{display:"none"},key:"v-portal-placeholder"})}}),fl=Vue.extend({name:"portalTarget",props:{multiple:{type:Boolean,default:!1},name:{type:String,required:!0},slim:{type:Boolean,default:!1},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},data:function(){return{transports:hl.transports,firstRender:!0}},created:function(){var t=this;this.$nextTick((function(){hl.registerTarget(t.name,t)}))},watch:{ownTransports:function(){this.$emit("change",this.children().length>0)},name:function(t,e){hl.unregisterTarget(e),hl.registerTarget(t,this)}},mounted:function(){var t=this;this.transition&&this.$nextTick((function(){t.firstRender=!1}))},beforeDestroy:function(){hl.unregisterTarget(this.name)},computed:{ownTransports:function(){var t=this.transports[this.name]||[];return this.multiple?t:0===t.length?[]:[t[t.length-1]]},passengers:function(){return function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.reduce((function(t,n){var r=n.passengers[0],i="function"==typeof r?r(e):n.passengers;return t.concat(i)}),[])}(this.ownTransports,this.slotProps)}},methods:{children:function(){return 0!==this.passengers.length?this.passengers:this.$scopedSlots.default?this.$scopedSlots.default(this.slotProps):this.$slots.default||[]},noWrapper:function(){var t=this.slim&&!this.transition;return t&&this.children().length>1&&console.warn("[portal-vue]: PortalTarget with `slim` option received more than one child element."),t}},render:function(t){var e=this.noWrapper(),n=this.children(),r=this.transition||this.tag;return e?n[0]:this.slim&&!r?t():t(r,{props:{tag:this.transition&&this.tag?this.tag:void 0},class:{"vue-portal-target":!0}},n)}}),pl=0,ml=["disabled","name","order","slim","slotProps","tag","to"],gl=["multiple","transition"],yl=Vue.extend({name:"MountingPortal",inheritAttrs:!1,props:{append:{type:[Boolean,String]},bail:{type:Boolean},mountTo:{type:String,required:!0},disabled:{type:Boolean},name:{type:String,default:function(){return"mounted_"+String(pl++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}},multiple:{type:Boolean,default:!1},targetSlim:{type:Boolean},targetSlotProps:{type:Object,default:function(){return{}}},targetTag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},created:function(){if("undefined"!=typeof document){var t=document.querySelector(this.mountTo);if(t){var e=this.$props;if(hl.targets[e.name])e.bail?console.warn("[portal-vue]: Target ".concat(e.name," is already mounted.\n Aborting because 'bail: true' is set")):this.portalTarget=hl.targets[e.name];else{var n=e.append;if(n){var r="string"==typeof n?n:"DIV",i=document.createElement(r);t.appendChild(i),t=i}var o=ol(this.$props,gl);o.slim=this.targetSlim,o.tag=this.targetTag,o.slotProps=this.targetSlotProps,o.name=this.to,this.portalTarget=new fl({el:t,parent:this.$parent||this,propsData:o})}}else console.error("[portal-vue]: Mount Point '".concat(this.mountTo,"' not found in document"))}},beforeDestroy:function(){var t=this.portalTarget;if(this.append){var e=t.$el;e.parentNode.removeChild(e)}t.$destroy()},render:function(t){if(!this.portalTarget)return console.warn("[portal-vue] Target wasn't mounted"),t();if(!this.$scopedSlots.manual){var e=ol(this.$props,ml);return t(dl,{props:e,attrs:this.$attrs,on:this.$listeners,scopedSlots:this.$scopedSlots},this.$slots.default)}var n=this.$scopedSlots.manual({to:this.to});return Array.isArray(n)&&(n=n[0]),n||t()}});var vl={install:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.component(e.portalName||"Portal",dl),t.component(e.portalTargetName||"PortalTarget",fl),t.component(e.MountingPortalName||"MountingPortal",yl)}},wl=new Map;function bl(t){var e=wl.get(t);e&&e.destroy()}function xl(t){var e=wl.get(t);e&&e.update()}var Sl=null;"undefined"==typeof window?((Sl=function(t){return t}).destroy=function(t){return t},Sl.update=function(t){return t}):((Sl=function(t,e){return t&&Array.prototype.forEach.call(t.length?t:[t],(function(t){return function(t){if(t&&t.nodeName&&"TEXTAREA"===t.nodeName&&!wl.has(t)){var e,n=null,r=window.getComputedStyle(t),i=(e=t.value,function(){s({testForHeightReduction:""===e||!t.value.startsWith(e),restoreTextAlign:null}),e=t.value}),o=function(e){t.removeEventListener("autosize:destroy",o),t.removeEventListener("autosize:update",l),t.removeEventListener("input",i),window.removeEventListener("resize",l),Object.keys(e).forEach((function(n){return t.style[n]=e[n]})),wl.delete(t)}.bind(t,{height:t.style.height,resize:t.style.resize,textAlign:t.style.textAlign,overflowY:t.style.overflowY,overflowX:t.style.overflowX,wordWrap:t.style.wordWrap});t.addEventListener("autosize:destroy",o),t.addEventListener("autosize:update",l),t.addEventListener("input",i),window.addEventListener("resize",l),t.style.overflowX="hidden",t.style.wordWrap="break-word",wl.set(t,{destroy:o,update:l}),l()}function s(e){var i,o,l=e.restoreTextAlign,a=void 0===l?null:l,c=e.testForHeightReduction,h=void 0===c||c,u=r.overflowY;if(0!==t.scrollHeight&&("vertical"===r.resize?t.style.resize="none":"both"===r.resize&&(t.style.resize="horizontal"),h&&(i=function(t){for(var e=[];t&&t.parentNode&&t.parentNode instanceof Element;)t.parentNode.scrollTop&&e.push([t.parentNode,t.parentNode.scrollTop]),t=t.parentNode;return function(){return e.forEach((function(t){var e=t[0],n=t[1];e.style.scrollBehavior="auto",e.scrollTop=n,e.style.scrollBehavior=null}))}}(t),t.style.height=""),o="content-box"===r.boxSizing?t.scrollHeight-(parseFloat(r.paddingTop)+parseFloat(r.paddingBottom)):t.scrollHeight+parseFloat(r.borderTopWidth)+parseFloat(r.borderBottomWidth),"none"!==r.maxHeight&&o>parseFloat(r.maxHeight)?("hidden"===r.overflowY&&(t.style.overflow="scroll"),o=parseFloat(r.maxHeight)):"hidden"!==r.overflowY&&(t.style.overflow="hidden"),t.style.height=o+"px",a&&(t.style.textAlign=a),i&&i(),n!==o&&(t.dispatchEvent(new Event("autosize:resized",{bubbles:!0})),n=o),u!==r.overflow&&!a)){var d=r.textAlign;"hidden"===r.overflow&&(t.style.textAlign="start"===d?"end":"start"),s({restoreTextAlign:d,testForHeightReduction:!0})}}function l(){s({testForHeightReduction:!0,restoreTextAlign:null})}}(t)})),t}).destroy=function(t){return t&&Array.prototype.forEach.call(t.length?t:[t],bl),t},Sl.update=function(t){return t&&Array.prototype.forEach.call(t.length?t:[t],xl),t});var kl=Sl,Ml={exports:{}};Ml.exports=function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",o="minute",s="hour",l="day",a="week",c="month",h="quarter",u="year",d="date",f="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return"["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},y=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:y,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+y(r,2,"0")+":"+y(i,2,"0")},m:function t(e,n){if(e.date()1)return t(s[0])}else{var l=e.name;b[l]=e,i=l}return!r&&i&&(w=i),i||!r&&w},M=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new C(n)},O=v;O.l=k,O.i=S,O.w=function(t,e){return M(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var C=function(){function g(t){this.$L=k(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[x]=!0}var y=g.prototype;return y.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(p);if(r){var i=r[2]-1||0,o=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,o)}}return new Date(e)}(t),this.init()},y.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},y.$utils=function(){return O},y.isValid=function(){return!(this.$d.toString()===f)},y.isSame=function(t,e){var n=M(t);return this.startOf(e)<=n&&n<=this.endOf(e)},y.isAfter=function(t,e){return M(t)68?1900:2e3)},l=function(t){return function(e){this[t]=+e}},a=[/[+-]\d\d:?(\d\d)?|Z/,function(t){(this.zone||(this.zone={})).offset=function(t){if(!t)return 0;if("Z"===t)return 0;var e=t.match(/([+-]|\d\d)/g),n=60*e[1]+(+e[2]||0);return 0===n?0:"+"===e[0]?-n:n}(t)}],c=function(t){var e=o[t];return e&&(e.indexOf?e:e.s.concat(e.f))},h=function(t,e){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(t.indexOf(r(i,0,e))>-1){n=i>12;break}}else n=t===(e?"pm":"PM");return n},u={A:[i,function(t){this.afternoon=h(t,!1)}],a:[i,function(t){this.afternoon=h(t,!0)}],S:[/\d/,function(t){this.milliseconds=100*+t}],SS:[n,function(t){this.milliseconds=10*+t}],SSS:[/\d{3}/,function(t){this.milliseconds=+t}],s:[r,l("seconds")],ss:[r,l("seconds")],m:[r,l("minutes")],mm:[r,l("minutes")],H:[r,l("hours")],h:[r,l("hours")],HH:[r,l("hours")],hh:[r,l("hours")],D:[r,l("day")],DD:[n,l("day")],Do:[i,function(t){var e=o.ordinal,n=t.match(/\d+/);if(this.day=n[0],e)for(var r=1;r<=31;r+=1)e(r).replace(/\[|\]/g,"")===t&&(this.day=r)}],M:[r,l("month")],MM:[n,l("month")],MMM:[i,function(t){var e=c("months"),n=(c("monthsShort")||e.map((function(t){return t.slice(0,3)}))).indexOf(t)+1;if(n<1)throw new Error;this.month=n%12||n}],MMMM:[i,function(t){var e=c("months").indexOf(t)+1;if(e<1)throw new Error;this.month=e%12||e}],Y:[/[+-]?\d+/,l("year")],YY:[n,function(t){this.year=s(t)}],YYYY:[/\d{4}/,l("year")],Z:a,ZZ:a};function d(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(e,n,r){var o=r&&r.toUpperCase();return n||i[r]||t[r]||i[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(t,e,n){return e||n.slice(1)}))}))).match(e),l=s.length,a=0;a-1)return new Date(("X"===e?1e3:1)*t);var r=d(e)(t),i=r.year,o=r.month,s=r.day,l=r.hours,a=r.minutes,c=r.seconds,h=r.milliseconds,u=r.zone,f=new Date,p=s||(i||o?1:f.getDate()),m=i||f.getFullYear(),g=0;i&&!o||(g=o>0?o-1:f.getMonth());var y=l||0,v=a||0,w=c||0,b=h||0;return u?new Date(Date.UTC(m,g,p,y,v,w,b+60*u.offset*1e3)):n?new Date(Date.UTC(m,g,p,y,v,w,b)):new Date(m,g,p,y,v,w,b)}catch(x){return new Date("")}}(e,l,r),this.init(),u&&!0!==u&&(this.$L=this.locale(u).$L),h&&e!=this.format(l)&&(this.$d=new Date("")),o={}}else if(l instanceof Array)for(var f=l.length,p=1;p<=f;p+=1){s[1]=l[p-1];var m=n.apply(this,s);if(m.isValid()){this.$d=m.$d,this.$L=m.$L,this.init();break}p===f&&(this.$d=new Date(""))}else i.call(this,t)}}}();const Dl=e(Cl.exports);function Nl(t){return{all:t=t||new Map,on:function(e,n){var r=t.get(e);r?r.push(n):t.set(e,[n])},off:function(e,n){var r=t.get(e);r&&(n?r.splice(r.indexOf(n)>>>0,1):t.set(e,[]))},emit:function(e,n){var r=t.get(e);r&&r.slice().map((function(t){t(n)})),(r=t.get("*"))&&r.slice().map((function(t){t(e,n)}))}}} /*! * vuex v3.6.2 * (c) 2021 Evan You * @license MIT - */var kl=("undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).__VUE_DEVTOOLS_GLOBAL_HOOK__;function Ml(t,e){if(void 0===e&&(e=[]),null===t||"object"!=typeof t)return t;var n,r=(n=function(e){return e.original===t},e.filter(n)[0]);if(r)return r.copy;var i=Array.isArray(t)?[]:{};return e.push({original:t,copy:i}),Object.keys(t).forEach((function(n){i[n]=Ml(t[n],e)})),i}function Ol(t,e){Object.keys(t).forEach((function(n){return e(t[n],n)}))}function Cl(t){return null!==t&&"object"==typeof t}var Dl=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"==typeof n?n():n)||{}},Nl={namespaced:{configurable:!0}};Nl.namespaced.get=function(){return!!this._rawModule.namespaced},Dl.prototype.addChild=function(t,e){this._children[t]=e},Dl.prototype.removeChild=function(t){delete this._children[t]},Dl.prototype.getChild=function(t){return this._children[t]},Dl.prototype.hasChild=function(t){return t in this._children},Dl.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},Dl.prototype.forEachChild=function(t){Ol(this._children,t)},Dl.prototype.forEachGetter=function(t){this._rawModule.getters&&Ol(this._rawModule.getters,t)},Dl.prototype.forEachAction=function(t){this._rawModule.actions&&Ol(this._rawModule.actions,t)},Dl.prototype.forEachMutation=function(t){this._rawModule.mutations&&Ol(this._rawModule.mutations,t)},Object.defineProperties(Dl.prototype,Nl);var Tl,Al=function(t){this.register([],t,!1)};function $l(t,e,n){if(e.update(n),n.modules)for(var r in n.modules){if(!e.getChild(r))return;$l(t.concat(r),e.getChild(r),n.modules[r])}}Al.prototype.get=function(t){return t.reduce((function(t,e){return t.getChild(e)}),this.root)},Al.prototype.getNamespace=function(t){var e=this.root;return t.reduce((function(t,n){return t+((e=e.getChild(n)).namespaced?n+"/":"")}),"")},Al.prototype.update=function(t){$l([],this.root,t)},Al.prototype.register=function(t,e,n){var r=this;void 0===n&&(n=!0);var i=new Dl(e,n);0===t.length?this.root=i:this.get(t.slice(0,-1)).addChild(t[t.length-1],i);e.modules&&Ol(e.modules,(function(e,i){r.register(t.concat(i),e,n)}))},Al.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1],r=e.getChild(n);r&&r.runtime&&e.removeChild(n)},Al.prototype.isRegistered=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];return!!e&&e.hasChild(n)};var El=function(t){var e=this;void 0===t&&(t={}),!Tl&&"undefined"!=typeof window&&window.Vue&&Vl(window.Vue);var n=t.plugins;void 0===n&&(n=[]);var r=t.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new Al(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new Tl,this._makeLocalGettersCache=Object.create(null);var i=this,o=this.dispatch,s=this.commit;this.dispatch=function(t,e){return o.call(i,t,e)},this.commit=function(t,e,n){return s.call(i,t,e,n)},this.strict=r;var l=this._modules.root.state;zl(this,l,[],this._modules.root),_l(this,l),n.forEach((function(t){return t(e)})),(void 0!==t.devtools?t.devtools:Tl.config.devtools)&&function(t){kl&&(t._devtoolHook=kl,kl.emit("vuex:init",t),kl.on("vuex:travel-to-state",(function(e){t.replaceState(e)})),t.subscribe((function(t,e){kl.emit("vuex:mutation",t,e)}),{prepend:!0}),t.subscribeAction((function(t,e){kl.emit("vuex:action",t,e)}),{prepend:!0}))}(this)},Pl={state:{configurable:!0}};function Il(t,e,n){return e.indexOf(t)<0&&(n&&n.prepend?e.unshift(t):e.push(t)),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function Rl(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;zl(t,n,[],t._modules.root,!0),_l(t,n,e)}function _l(t,e,n){var r=t._vm;t.getters={},t._makeLocalGettersCache=Object.create(null);var i=t._wrappedGetters,o={};Ol(i,(function(e,n){o[n]=function(t,e){return function(){return t(e)}}(e,t),Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})}));var s=Tl.config.silent;Tl.config.silent=!0,t._vm=new Tl({data:{$$state:e},computed:o}),Tl.config.silent=s,t.strict&&function(t){t._vm.$watch((function(){return this._data.$$state}),(function(){}),{deep:!0,sync:!0})}(t),r&&(n&&t._withCommit((function(){r._data.$$state=null})),Tl.nextTick((function(){return r.$destroy()})))}function zl(t,e,n,r,i){var o=!n.length,s=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[s],t._modulesNamespaceMap[s]=r),!o&&!i){var l=jl(e,n.slice(0,-1)),a=n[n.length-1];t._withCommit((function(){Tl.set(l,a,r.state)}))}var c=r.context=function(t,e,n){var r=""===e,i={dispatch:r?t.dispatch:function(n,r,i){var o=Bl(n,r,i),s=o.payload,l=o.options,a=o.type;return l&&l.root||(a=e+a),t.dispatch(a,s)},commit:r?t.commit:function(n,r,i){var o=Bl(n,r,i),s=o.payload,l=o.options,a=o.type;l&&l.root||(a=e+a),t.commit(a,s,l)}};return Object.defineProperties(i,{getters:{get:r?function(){return t.getters}:function(){return function(t,e){if(!t._makeLocalGettersCache[e]){var n={},r=e.length;Object.keys(t.getters).forEach((function(i){if(i.slice(0,r)===e){var o=i.slice(r);Object.defineProperty(n,o,{get:function(){return t.getters[i]},enumerable:!0})}})),t._makeLocalGettersCache[e]=n}return t._makeLocalGettersCache[e]}(t,e)}},state:{get:function(){return jl(t.state,n)}}}),i}(t,s,n);r.forEachMutation((function(e,n){!function(t,e,n,r){var i=t._mutations[e]||(t._mutations[e]=[]);i.push((function(e){n.call(t,r.state,e)}))}(t,s+n,e,c)})),r.forEachAction((function(e,n){var r=e.root?n:s+n,i=e.handler||e;!function(t,e,n,r){var i=t._actions[e]||(t._actions[e]=[]);i.push((function(e){var i,o=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e);return(i=o)&&"function"==typeof i.then||(o=Promise.resolve(o)),t._devtoolHook?o.catch((function(e){throw t._devtoolHook.emit("vuex:error",e),e})):o}))}(t,r,i,c)})),r.forEachGetter((function(e,n){!function(t,e,n,r){if(t._wrappedGetters[e])return;t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)}}(t,s+n,e,c)})),r.forEachChild((function(r,o){zl(t,e,n.concat(o),r,i)}))}function jl(t,e){return e.reduce((function(t,e){return t[e]}),t)}function Bl(t,e,n){return Cl(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function Vl(t){Tl&&t===Tl||function(t){if(Number(t.version.split(".")[0])>=2)t.mixin({beforeCreate:n});else{var e=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[n].concat(t.init):n,e.call(this,t)}}function n(){var t=this.$options;t.store?this.$store="function"==typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}}(Tl=t)}Pl.state.get=function(){return this._vm._data.$$state},Pl.state.set=function(t){},El.prototype.commit=function(t,e,n){var r=this,i=Bl(t,e,n),o=i.type,s=i.payload,l={type:o,payload:s},a=this._mutations[o];a&&(this._withCommit((function(){a.forEach((function(t){t(s)}))})),this._subscribers.slice().forEach((function(t){return t(l,r.state)})))},El.prototype.dispatch=function(t,e){var n=this,r=Bl(t,e),i=r.type,o=r.payload,s={type:i,payload:o},l=this._actions[i];if(l){try{this._actionSubscribers.slice().filter((function(t){return t.before})).forEach((function(t){return t.before(s,n.state)}))}catch(c){}var a=l.length>1?Promise.all(l.map((function(t){return t(o)}))):l[0](o);return new Promise((function(t,e){a.then((function(e){try{n._actionSubscribers.filter((function(t){return t.after})).forEach((function(t){return t.after(s,n.state)}))}catch(c){}t(e)}),(function(t){try{n._actionSubscribers.filter((function(t){return t.error})).forEach((function(e){return e.error(s,n.state,t)}))}catch(c){}e(t)}))}))}},El.prototype.subscribe=function(t,e){return Il(t,this._subscribers,e)},El.prototype.subscribeAction=function(t,e){return Il("function"==typeof t?{before:t}:t,this._actionSubscribers,e)},El.prototype.watch=function(t,e,n){var r=this;return this._watcherVM.$watch((function(){return t(r.state,r.getters)}),e,n)},El.prototype.replaceState=function(t){var e=this;this._withCommit((function(){e._vm._data.$$state=t}))},El.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"==typeof t&&(t=[t]),this._modules.register(t,e),zl(this,this.state,t,this._modules.get(t),n.preserveState),_l(this,this.state)},El.prototype.unregisterModule=function(t){var e=this;"string"==typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit((function(){var n=jl(e.state,t.slice(0,-1));Tl.delete(n,t[t.length-1])})),Rl(this)},El.prototype.hasModule=function(t){return"string"==typeof t&&(t=[t]),this._modules.isRegistered(t)},El.prototype.hotUpdate=function(t){this._modules.update(t),Rl(this,!0)},El.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(El.prototype,Pl);var Fl=Kl((function(t,e){var n={};return Jl(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=Hl(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"==typeof i?i.call(this,e,n):e[i]},n[r].vuex=!0})),n})),Ll=Kl((function(t,e){var n={};return Jl(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var r=this.$store.commit;if(t){var o=Hl(this.$store,"mapMutations",t);if(!o)return;r=o.context.commit}return"function"==typeof i?i.apply(this,[r].concat(e)):r.apply(this.$store,[i].concat(e))}})),n})),ql=Kl((function(t,e){var n={};return Jl(e).forEach((function(e){var r=e.key,i=e.val;i=t+i,n[r]=function(){if(!t||Hl(this.$store,"mapGetters",t))return this.$store.getters[i]},n[r].vuex=!0})),n})),Wl=Kl((function(t,e){var n={};return Jl(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var o=Hl(this.$store,"mapActions",t);if(!o)return;r=o.context.dispatch}return"function"==typeof i?i.apply(this,[r].concat(e)):r.apply(this.$store,[i].concat(e))}})),n}));function Jl(t){return function(t){return Array.isArray(t)||Cl(t)}(t)?Array.isArray(t)?t.map((function(t){return{key:t,val:t}})):Object.keys(t).map((function(e){return{key:e,val:t[e]}})):[]}function Kl(t){return function(e,n){return"string"!=typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function Hl(t,e,n){return t._modulesNamespaceMap[n]}function Yl(t,e,n){var r=n?t.groupCollapsed:t.group;try{r.call(t,e)}catch(i){t.log(e)}}function Ul(t){try{t.groupEnd()}catch(e){t.log("—— log end ——")}}function Gl(){var t=new Date;return" @ "+Zl(t.getHours(),2)+":"+Zl(t.getMinutes(),2)+":"+Zl(t.getSeconds(),2)+"."+Zl(t.getMilliseconds(),3)}function Zl(t,e){return n="0",r=e-t.toString().length,new Array(r+1).join(n)+t;var n,r}const Xl={Store:El,install:Vl,version:"3.6.2",mapState:Fl,mapMutations:Ll,mapGetters:ql,mapActions:Wl,createNamespacedHelpers:function(t){return{mapState:Fl.bind(null,t),mapGetters:ql.bind(null,t),mapMutations:Ll.bind(null,t),mapActions:Wl.bind(null,t)}},createLogger:function(t){void 0===t&&(t={});var e=t.collapsed;void 0===e&&(e=!0);var n=t.filter;void 0===n&&(n=function(t,e,n){return!0});var r=t.transformer;void 0===r&&(r=function(t){return t});var i=t.mutationTransformer;void 0===i&&(i=function(t){return t});var o=t.actionFilter;void 0===o&&(o=function(t,e){return!0});var s=t.actionTransformer;void 0===s&&(s=function(t){return t});var l=t.logMutations;void 0===l&&(l=!0);var a=t.logActions;void 0===a&&(a=!0);var c=t.logger;return void 0===c&&(c=console),function(t){var h=Ml(t.state);void 0!==c&&(l&&t.subscribe((function(t,o){var s=Ml(o);if(n(t,h,s)){var l=Gl(),a=i(t),u="mutation "+t.type+l;Yl(c,u,e),c.log("%c prev state","color: #9E9E9E; font-weight: bold",r(h)),c.log("%c mutation","color: #03A9F4; font-weight: bold",a),c.log("%c next state","color: #4CAF50; font-weight: bold",r(s)),Ul(c)}h=s})),a&&t.subscribeAction((function(t,n){if(o(t,n)){var r=Gl(),i=s(t),l="action "+t.type+r;Yl(c,l,e),c.log("%c action","color: #03A9F4; font-weight: bold",i),Ul(c)}})))}}};var Ql={},ta={};function ea(t){return null==t}function na(t){return null!=t}function ra(t,e){return e.tag===t.tag&&e.key===t.key}function ia(t){var e=t.tag;t.vm=new e({data:t.args})}function oa(t,e,n){var r,i,o={};for(r=e;r<=n;++r)na(i=t[r].key)&&(o[i]=r);return o}function sa(t,e,n){for(;e<=n;++e)ia(t[e])}function la(t,e,n){for(;e<=n;++e){var r=t[e];na(r)&&(r.vm.$destroy(),r.vm=null)}}function aa(t,e){t!==e&&(e.vm=t.vm,function(t){for(var e=Object.keys(t.args),n=0;nl?sa(e,s,h):s>h&&la(t,o,l)}(t,e):na(e)?sa(e,0,e.length-1):na(t)&&la(t,0,t.length-1)},function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.Vuelidate=C,t.validationMixin=t.default=void 0,Object.defineProperty(t,"withParams",{enumerable:!0,get:function(){return n.withParams}});var e=ta,n=s;function r(t){return function(t){if(Array.isArray(t))return i(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n1?l:l.$sub[0]:null}}},computed:{run:function(){var t=this,e=this.lazyParentModel();if(Array.isArray(e)&&e.__ob__){var n=e.__ob__.dep;n.depend();var r=n.constructor.target;if(!this._indirectWatcher){var i=r.constructor;this._indirectWatcher=new i(this,(function(){return t.runRule(e)}),null,{lazy:!0})}var o=this.getModel();if(!this._indirectWatcher.dirty&&this._lastModel===o)return this._indirectWatcher.depend(),r.value;this._lastModel=o,this._indirectWatcher.evaluate(),this._indirectWatcher.depend()}else this._indirectWatcher&&(this._indirectWatcher.teardown(),this._indirectWatcher=null);return this._indirectWatcher?this._indirectWatcher.value:this.runRule(e)},$params:function(){return this.run.params},proxy:function(){var t=this.run.output;return t[m]?!!t.v:!!t},$pending:function(){var t=this.run.output;return!!t[m]&&t.p}},destroyed:function(){this._indirectWatcher&&(this._indirectWatcher.teardown(),this._indirectWatcher=null)}}),s=i.extend({data:function(){return{dirty:!1,validations:null,lazyModel:null,model:null,prop:null,lazyParentModel:null,rootModel:null}},methods:l(l({},v),{},{refProxy:function(t){return this.getRef(t).proxy},getRef:function(t){return this.refs[t]},isNested:function(t){return"function"!=typeof this.validations[t]}}),computed:l(l({},g),{},{nestedKeys:function(){return this.keys.filter(this.isNested)},ruleKeys:function(){var t=this;return this.keys.filter((function(e){return!t.isNested(e)}))},keys:function(){return Object.keys(this.validations).filter((function(t){return"$params"!==t}))},proxy:function(){var t=this,e=u(this.keys,(function(e){return{enumerable:!0,configurable:!0,get:function(){return t.refProxy(e)}}})),n=u(w,(function(e){return{enumerable:!0,configurable:!0,get:function(){return t[e]}}})),r=u(b,(function(e){return{enumerable:!1,configurable:!0,get:function(){return t[e]}}})),i=this.hasIter()?{$iter:{enumerable:!0,value:Object.defineProperties({},l({},e))}}:{};return Object.defineProperties({},l(l(l(l({},e),i),{},{$model:{enumerable:!0,get:function(){var e=t.lazyParentModel();return null!=e?e[t.prop]:null},set:function(e){var n=t.lazyParentModel();null!=n&&(n[t.prop]=e,t.$touch())}}},n),r))},children:function(){var t=this;return[].concat(r(this.nestedKeys.map((function(e){return y(t,e)}))),r(this.ruleKeys.map((function(e){return S(t,e)})))).filter(Boolean)}})}),a=s.extend({methods:{isNested:function(t){return void 0!==this.validations[t]()},getRef:function(t){var e=this;return{get proxy(){return e.validations[t]()||!1}}}}}),c=s.extend({computed:{keys:function(){var t=this.getModel();return f(t)?Object.keys(t):[]},tracker:function(){var t=this,e=this.validations.$trackBy;return e?function(n){return"".concat(p(t.rootModel,t.getModelKey(n),e))}:function(t){return"".concat(t)}},getModelLazy:function(){var t=this;return function(){return t.getModel()}},children:function(){var t=this,n=this.validations,r=this.getModel(),i=l({},n);delete i.$trackBy;var o={};return this.keys.map((function(n){var l=t.tracker(n);return o.hasOwnProperty(l)?null:(o[l]=!0,(0,e.h)(s,l,{validations:i,prop:n,lazyParentModel:t.getModelLazy,model:r[n],rootModel:t.rootModel}))})).filter(Boolean)}},methods:{isNested:function(){return!0},getRef:function(t){return this.refs[this.tracker(t)]},hasIter:function(){return!0}}}),y=function(t,n){if("$each"===n)return(0,e.h)(c,n,{validations:t.validations[n],lazyParentModel:t.lazyParentModel,prop:n,lazyModel:t.getModel,rootModel:t.rootModel});var r=t.validations[n];if(Array.isArray(r)){var i=t.rootModel,o=u(r,(function(t){return function(){return p(i,i.$v,t)}}),(function(t){return Array.isArray(t)?t.join("."):t}));return(0,e.h)(a,n,{validations:o,lazyParentModel:h,prop:n,lazyModel:h,rootModel:i})}return(0,e.h)(s,n,{validations:r,lazyParentModel:t.getModel,prop:n,lazyModel:t.getModelKey,rootModel:t.rootModel})},S=function(t,n){return(0,e.h)(o,n,{rule:t.validations[n],lazyParentModel:t.lazyParentModel,lazyModel:t.getModel,rootModel:t.rootModel})};return x={VBase:i,Validation:s}},k=null;var M=function(t,n){var r=function(t){if(k)return k;for(var e=t.constructor;e.super;)e=e.super;return k=e,e}(t),i=S(r),o=i.Validation;return new(0,i.VBase)({computed:{children:function(){var r="function"==typeof n?n.call(t):n;return[(0,e.h)(o,"$v",{validations:r,lazyParentModel:h,prop:"$v",model:t,rootModel:t})]}}})},O={data:function(){var t=this.$options.validations;return t&&(this._vuelidate=M(this,t)),{}},beforeCreate:function(){var t=this.$options;t.validations&&(t.computed||(t.computed={}),t.computed.$v||(t.computed.$v=function(){return this._vuelidate?this._vuelidate.refs.$v.proxy:null}))},beforeDestroy:function(){this._vuelidate&&(this._vuelidate.$destroy(),this._vuelidate=null)}};function C(t){t.mixin(O)}t.validationMixin=O;var D=C;t.default=D}(Ql);const ca=e(Ql);export{yl as A,wl as B,xl as C,ne as D,gn as E,dt as F,Sl as G,ca as H,ps as I,t as J,e as K,on as N,vn as P,vt as S,nn as T,Xl as V,Uo as a,is as b,as as c,ws as d,Zo as e,bs as f,Ns as g,As as h,Es as i,te as j,qo as k,$s as l,gs as m,Co as n,de as o,fs as p,Zs as q,Xs as r,ss as s,ls as t,vs as u,n as v,Ts as w,Qs as x,tl as y,Gs as z}; + */var Tl=("undefined"!=typeof window?window:"undefined"!=typeof global?global:{}).__VUE_DEVTOOLS_GLOBAL_HOOK__;function Al(t,e){if(void 0===e&&(e=[]),null===t||"object"!=typeof t)return t;var n,r=(n=function(e){return e.original===t},e.filter(n)[0]);if(r)return r.copy;var i=Array.isArray(t)?[]:{};return e.push({original:t,copy:i}),Object.keys(t).forEach((function(n){i[n]=Al(t[n],e)})),i}function El(t,e){Object.keys(t).forEach((function(n){return e(t[n],n)}))}function $l(t){return null!==t&&"object"==typeof t}var Pl=function(t,e){this.runtime=e,this._children=Object.create(null),this._rawModule=t;var n=t.state;this.state=("function"==typeof n?n():n)||{}},Il={namespaced:{configurable:!0}};Il.namespaced.get=function(){return!!this._rawModule.namespaced},Pl.prototype.addChild=function(t,e){this._children[t]=e},Pl.prototype.removeChild=function(t){delete this._children[t]},Pl.prototype.getChild=function(t){return this._children[t]},Pl.prototype.hasChild=function(t){return t in this._children},Pl.prototype.update=function(t){this._rawModule.namespaced=t.namespaced,t.actions&&(this._rawModule.actions=t.actions),t.mutations&&(this._rawModule.mutations=t.mutations),t.getters&&(this._rawModule.getters=t.getters)},Pl.prototype.forEachChild=function(t){El(this._children,t)},Pl.prototype.forEachGetter=function(t){this._rawModule.getters&&El(this._rawModule.getters,t)},Pl.prototype.forEachAction=function(t){this._rawModule.actions&&El(this._rawModule.actions,t)},Pl.prototype.forEachMutation=function(t){this._rawModule.mutations&&El(this._rawModule.mutations,t)},Object.defineProperties(Pl.prototype,Il);var Rl,zl=function(t){this.register([],t,!1)};function _l(t,e,n){if(e.update(n),n.modules)for(var r in n.modules){if(!e.getChild(r))return;_l(t.concat(r),e.getChild(r),n.modules[r])}}zl.prototype.get=function(t){return t.reduce((function(t,e){return t.getChild(e)}),this.root)},zl.prototype.getNamespace=function(t){var e=this.root;return t.reduce((function(t,n){return t+((e=e.getChild(n)).namespaced?n+"/":"")}),"")},zl.prototype.update=function(t){_l([],this.root,t)},zl.prototype.register=function(t,e,n){var r=this;void 0===n&&(n=!0);var i=new Pl(e,n);0===t.length?this.root=i:this.get(t.slice(0,-1)).addChild(t[t.length-1],i);e.modules&&El(e.modules,(function(e,i){r.register(t.concat(i),e,n)}))},zl.prototype.unregister=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1],r=e.getChild(n);r&&r.runtime&&e.removeChild(n)},zl.prototype.isRegistered=function(t){var e=this.get(t.slice(0,-1)),n=t[t.length-1];return!!e&&e.hasChild(n)};var Bl=function(t){var e=this;void 0===t&&(t={}),!Rl&&"undefined"!=typeof window&&window.Vue&&Kl(window.Vue);var n=t.plugins;void 0===n&&(n=[]);var r=t.strict;void 0===r&&(r=!1),this._committing=!1,this._actions=Object.create(null),this._actionSubscribers=[],this._mutations=Object.create(null),this._wrappedGetters=Object.create(null),this._modules=new zl(t),this._modulesNamespaceMap=Object.create(null),this._subscribers=[],this._watcherVM=new Rl,this._makeLocalGettersCache=Object.create(null);var i=this,o=this.dispatch,s=this.commit;this.dispatch=function(t,e){return o.call(i,t,e)},this.commit=function(t,e,n){return s.call(i,t,e,n)},this.strict=r;var l=this._modules.root.state;Wl(this,l,[],this._modules.root),Ll(this,l),n.forEach((function(t){return t(e)})),(void 0!==t.devtools?t.devtools:Rl.config.devtools)&&function(t){Tl&&(t._devtoolHook=Tl,Tl.emit("vuex:init",t),Tl.on("vuex:travel-to-state",(function(e){t.replaceState(e)})),t.subscribe((function(t,e){Tl.emit("vuex:mutation",t,e)}),{prepend:!0}),t.subscribeAction((function(t,e){Tl.emit("vuex:action",t,e)}),{prepend:!0}))}(this)},jl={state:{configurable:!0}};function Vl(t,e,n){return e.indexOf(t)<0&&(n&&n.prepend?e.unshift(t):e.push(t)),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function Fl(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;Wl(t,n,[],t._modules.root,!0),Ll(t,n,e)}function Ll(t,e,n){var r=t._vm;t.getters={},t._makeLocalGettersCache=Object.create(null);var i=t._wrappedGetters,o={};El(i,(function(e,n){o[n]=function(t,e){return function(){return t(e)}}(e,t),Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})}));var s=Rl.config.silent;Rl.config.silent=!0,t._vm=new Rl({data:{$$state:e},computed:o}),Rl.config.silent=s,t.strict&&function(t){t._vm.$watch((function(){return this._data.$$state}),(function(){}),{deep:!0,sync:!0})}(t),r&&(n&&t._withCommit((function(){r._data.$$state=null})),Rl.nextTick((function(){return r.$destroy()})))}function Wl(t,e,n,r,i){var o=!n.length,s=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[s],t._modulesNamespaceMap[s]=r),!o&&!i){var l=ql(e,n.slice(0,-1)),a=n[n.length-1];t._withCommit((function(){Rl.set(l,a,r.state)}))}var c=r.context=function(t,e,n){var r=""===e,i={dispatch:r?t.dispatch:function(n,r,i){var o=Jl(n,r,i),s=o.payload,l=o.options,a=o.type;return l&&l.root||(a=e+a),t.dispatch(a,s)},commit:r?t.commit:function(n,r,i){var o=Jl(n,r,i),s=o.payload,l=o.options,a=o.type;l&&l.root||(a=e+a),t.commit(a,s,l)}};return Object.defineProperties(i,{getters:{get:r?function(){return t.getters}:function(){return function(t,e){if(!t._makeLocalGettersCache[e]){var n={},r=e.length;Object.keys(t.getters).forEach((function(i){if(i.slice(0,r)===e){var o=i.slice(r);Object.defineProperty(n,o,{get:function(){return t.getters[i]},enumerable:!0})}})),t._makeLocalGettersCache[e]=n}return t._makeLocalGettersCache[e]}(t,e)}},state:{get:function(){return ql(t.state,n)}}}),i}(t,s,n);r.forEachMutation((function(e,n){!function(t,e,n,r){var i=t._mutations[e]||(t._mutations[e]=[]);i.push((function(e){n.call(t,r.state,e)}))}(t,s+n,e,c)})),r.forEachAction((function(e,n){var r=e.root?n:s+n,i=e.handler||e;!function(t,e,n,r){var i=t._actions[e]||(t._actions[e]=[]);i.push((function(e){var i,o=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e);return(i=o)&&"function"==typeof i.then||(o=Promise.resolve(o)),t._devtoolHook?o.catch((function(e){throw t._devtoolHook.emit("vuex:error",e),e})):o}))}(t,r,i,c)})),r.forEachGetter((function(e,n){!function(t,e,n,r){if(t._wrappedGetters[e])return;t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)}}(t,s+n,e,c)})),r.forEachChild((function(r,o){Wl(t,e,n.concat(o),r,i)}))}function ql(t,e){return e.reduce((function(t,e){return t[e]}),t)}function Jl(t,e,n){return $l(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function Kl(t){Rl&&t===Rl||function(t){if(Number(t.version.split(".")[0])>=2)t.mixin({beforeCreate:n});else{var e=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[n].concat(t.init):n,e.call(this,t)}}function n(){var t=this.$options;t.store?this.$store="function"==typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}}(Rl=t)}jl.state.get=function(){return this._vm._data.$$state},jl.state.set=function(t){},Bl.prototype.commit=function(t,e,n){var r=this,i=Jl(t,e,n),o=i.type,s=i.payload,l={type:o,payload:s},a=this._mutations[o];a&&(this._withCommit((function(){a.forEach((function(t){t(s)}))})),this._subscribers.slice().forEach((function(t){return t(l,r.state)})))},Bl.prototype.dispatch=function(t,e){var n=this,r=Jl(t,e),i=r.type,o=r.payload,s={type:i,payload:o},l=this._actions[i];if(l){try{this._actionSubscribers.slice().filter((function(t){return t.before})).forEach((function(t){return t.before(s,n.state)}))}catch(c){}var a=l.length>1?Promise.all(l.map((function(t){return t(o)}))):l[0](o);return new Promise((function(t,e){a.then((function(e){try{n._actionSubscribers.filter((function(t){return t.after})).forEach((function(t){return t.after(s,n.state)}))}catch(c){}t(e)}),(function(t){try{n._actionSubscribers.filter((function(t){return t.error})).forEach((function(e){return e.error(s,n.state,t)}))}catch(c){}e(t)}))}))}},Bl.prototype.subscribe=function(t,e){return Vl(t,this._subscribers,e)},Bl.prototype.subscribeAction=function(t,e){return Vl("function"==typeof t?{before:t}:t,this._actionSubscribers,e)},Bl.prototype.watch=function(t,e,n){var r=this;return this._watcherVM.$watch((function(){return t(r.state,r.getters)}),e,n)},Bl.prototype.replaceState=function(t){var e=this;this._withCommit((function(){e._vm._data.$$state=t}))},Bl.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"==typeof t&&(t=[t]),this._modules.register(t,e),Wl(this,this.state,t,this._modules.get(t),n.preserveState),Ll(this,this.state)},Bl.prototype.unregisterModule=function(t){var e=this;"string"==typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit((function(){var n=ql(e.state,t.slice(0,-1));Rl.delete(n,t[t.length-1])})),Fl(this)},Bl.prototype.hasModule=function(t){return"string"==typeof t&&(t=[t]),this._modules.isRegistered(t)},Bl.prototype.hotUpdate=function(t){this._modules.update(t),Fl(this,!0)},Bl.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(Bl.prototype,jl);var Hl=Xl((function(t,e){var n={};return Zl(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=Ql(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"==typeof i?i.call(this,e,n):e[i]},n[r].vuex=!0})),n})),Yl=Xl((function(t,e){var n={};return Zl(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var r=this.$store.commit;if(t){var o=Ql(this.$store,"mapMutations",t);if(!o)return;r=o.context.commit}return"function"==typeof i?i.apply(this,[r].concat(e)):r.apply(this.$store,[i].concat(e))}})),n})),Ul=Xl((function(t,e){var n={};return Zl(e).forEach((function(e){var r=e.key,i=e.val;i=t+i,n[r]=function(){if(!t||Ql(this.$store,"mapGetters",t))return this.$store.getters[i]},n[r].vuex=!0})),n})),Gl=Xl((function(t,e){var n={};return Zl(e).forEach((function(e){var r=e.key,i=e.val;n[r]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var o=Ql(this.$store,"mapActions",t);if(!o)return;r=o.context.dispatch}return"function"==typeof i?i.apply(this,[r].concat(e)):r.apply(this.$store,[i].concat(e))}})),n}));function Zl(t){return function(t){return Array.isArray(t)||$l(t)}(t)?Array.isArray(t)?t.map((function(t){return{key:t,val:t}})):Object.keys(t).map((function(e){return{key:e,val:t[e]}})):[]}function Xl(t){return function(e,n){return"string"!=typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function Ql(t,e,n){return t._modulesNamespaceMap[n]}function ta(t,e,n){var r=n?t.groupCollapsed:t.group;try{r.call(t,e)}catch(i){t.log(e)}}function ea(t){try{t.groupEnd()}catch(e){t.log("—— log end ——")}}function na(){var t=new Date;return" @ "+ra(t.getHours(),2)+":"+ra(t.getMinutes(),2)+":"+ra(t.getSeconds(),2)+"."+ra(t.getMilliseconds(),3)}function ra(t,e){return n="0",r=e-t.toString().length,new Array(r+1).join(n)+t;var n,r}const ia={Store:Bl,install:Kl,version:"3.6.2",mapState:Hl,mapMutations:Yl,mapGetters:Ul,mapActions:Gl,createNamespacedHelpers:function(t){return{mapState:Hl.bind(null,t),mapGetters:Ul.bind(null,t),mapMutations:Yl.bind(null,t),mapActions:Gl.bind(null,t)}},createLogger:function(t){void 0===t&&(t={});var e=t.collapsed;void 0===e&&(e=!0);var n=t.filter;void 0===n&&(n=function(t,e,n){return!0});var r=t.transformer;void 0===r&&(r=function(t){return t});var i=t.mutationTransformer;void 0===i&&(i=function(t){return t});var o=t.actionFilter;void 0===o&&(o=function(t,e){return!0});var s=t.actionTransformer;void 0===s&&(s=function(t){return t});var l=t.logMutations;void 0===l&&(l=!0);var a=t.logActions;void 0===a&&(a=!0);var c=t.logger;return void 0===c&&(c=console),function(t){var h=Al(t.state);void 0!==c&&(l&&t.subscribe((function(t,o){var s=Al(o);if(n(t,h,s)){var l=na(),a=i(t),u="mutation "+t.type+l;ta(c,u,e),c.log("%c prev state","color: #9E9E9E; font-weight: bold",r(h)),c.log("%c mutation","color: #03A9F4; font-weight: bold",a),c.log("%c next state","color: #4CAF50; font-weight: bold",r(s)),ea(c)}h=s})),a&&t.subscribeAction((function(t,n){if(o(t,n)){var r=na(),i=s(t),l="action "+t.type+r;ta(c,l,e),c.log("%c action","color: #03A9F4; font-weight: bold",i),ea(c)}})))}}};var oa={},sa={};function la(t){return null==t}function aa(t){return null!=t}function ca(t,e){return e.tag===t.tag&&e.key===t.key}function ha(t){var e=t.tag;t.vm=new e({data:t.args})}function ua(t,e,n){var r,i,o={};for(r=e;r<=n;++r)aa(i=t[r].key)&&(o[i]=r);return o}function da(t,e,n){for(;e<=n;++e)ha(t[e])}function fa(t,e,n){for(;e<=n;++e){var r=t[e];aa(r)&&(r.vm.$destroy(),r.vm=null)}}function pa(t,e){t!==e&&(e.vm=t.vm,function(t){for(var e=Object.keys(t.args),n=0;nl?da(e,s,h):s>h&&fa(t,o,l)}(t,e):aa(e)?da(e,0,e.length-1):aa(t)&&fa(t,0,t.length-1)},function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.Vuelidate=C,t.validationMixin=t.default=void 0,Object.defineProperty(t,"withParams",{enumerable:!0,get:function(){return n.withParams}});var e=sa,n=s;function r(t){return function(t){if(Array.isArray(t))return i(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n1?l:l.$sub[0]:null}}},computed:{run:function(){var t=this,e=this.lazyParentModel();if(Array.isArray(e)&&e.__ob__){var n=e.__ob__.dep;n.depend();var r=n.constructor.target;if(!this._indirectWatcher){var i=r.constructor;this._indirectWatcher=new i(this,(function(){return t.runRule(e)}),null,{lazy:!0})}var o=this.getModel();if(!this._indirectWatcher.dirty&&this._lastModel===o)return this._indirectWatcher.depend(),r.value;this._lastModel=o,this._indirectWatcher.evaluate(),this._indirectWatcher.depend()}else this._indirectWatcher&&(this._indirectWatcher.teardown(),this._indirectWatcher=null);return this._indirectWatcher?this._indirectWatcher.value:this.runRule(e)},$params:function(){return this.run.params},proxy:function(){var t=this.run.output;return t[m]?!!t.v:!!t},$pending:function(){var t=this.run.output;return!!t[m]&&t.p}},destroyed:function(){this._indirectWatcher&&(this._indirectWatcher.teardown(),this._indirectWatcher=null)}}),s=i.extend({data:function(){return{dirty:!1,validations:null,lazyModel:null,model:null,prop:null,lazyParentModel:null,rootModel:null}},methods:l(l({},v),{},{refProxy:function(t){return this.getRef(t).proxy},getRef:function(t){return this.refs[t]},isNested:function(t){return"function"!=typeof this.validations[t]}}),computed:l(l({},g),{},{nestedKeys:function(){return this.keys.filter(this.isNested)},ruleKeys:function(){var t=this;return this.keys.filter((function(e){return!t.isNested(e)}))},keys:function(){return Object.keys(this.validations).filter((function(t){return"$params"!==t}))},proxy:function(){var t=this,e=u(this.keys,(function(e){return{enumerable:!0,configurable:!0,get:function(){return t.refProxy(e)}}})),n=u(w,(function(e){return{enumerable:!0,configurable:!0,get:function(){return t[e]}}})),r=u(b,(function(e){return{enumerable:!1,configurable:!0,get:function(){return t[e]}}})),i=this.hasIter()?{$iter:{enumerable:!0,value:Object.defineProperties({},l({},e))}}:{};return Object.defineProperties({},l(l(l(l({},e),i),{},{$model:{enumerable:!0,get:function(){var e=t.lazyParentModel();return null!=e?e[t.prop]:null},set:function(e){var n=t.lazyParentModel();null!=n&&(n[t.prop]=e,t.$touch())}}},n),r))},children:function(){var t=this;return[].concat(r(this.nestedKeys.map((function(e){return y(t,e)}))),r(this.ruleKeys.map((function(e){return S(t,e)})))).filter(Boolean)}})}),a=s.extend({methods:{isNested:function(t){return void 0!==this.validations[t]()},getRef:function(t){var e=this;return{get proxy(){return e.validations[t]()||!1}}}}}),c=s.extend({computed:{keys:function(){var t=this.getModel();return f(t)?Object.keys(t):[]},tracker:function(){var t=this,e=this.validations.$trackBy;return e?function(n){return"".concat(p(t.rootModel,t.getModelKey(n),e))}:function(t){return"".concat(t)}},getModelLazy:function(){var t=this;return function(){return t.getModel()}},children:function(){var t=this,n=this.validations,r=this.getModel(),i=l({},n);delete i.$trackBy;var o={};return this.keys.map((function(n){var l=t.tracker(n);return o.hasOwnProperty(l)?null:(o[l]=!0,(0,e.h)(s,l,{validations:i,prop:n,lazyParentModel:t.getModelLazy,model:r[n],rootModel:t.rootModel}))})).filter(Boolean)}},methods:{isNested:function(){return!0},getRef:function(t){return this.refs[this.tracker(t)]},hasIter:function(){return!0}}}),y=function(t,n){if("$each"===n)return(0,e.h)(c,n,{validations:t.validations[n],lazyParentModel:t.lazyParentModel,prop:n,lazyModel:t.getModel,rootModel:t.rootModel});var r=t.validations[n];if(Array.isArray(r)){var i=t.rootModel,o=u(r,(function(t){return function(){return p(i,i.$v,t)}}),(function(t){return Array.isArray(t)?t.join("."):t}));return(0,e.h)(a,n,{validations:o,lazyParentModel:h,prop:n,lazyModel:h,rootModel:i})}return(0,e.h)(s,n,{validations:r,lazyParentModel:t.getModel,prop:n,lazyModel:t.getModelKey,rootModel:t.rootModel})},S=function(t,n){return(0,e.h)(o,n,{rule:t.validations[n],lazyParentModel:t.lazyParentModel,lazyModel:t.getModel,rootModel:t.rootModel})};return x={VBase:i,Validation:s}},k=null;var M=function(t,n){var r=function(t){if(k)return k;for(var e=t.constructor;e.super;)e=e.super;return k=e,e}(t),i=S(r),o=i.Validation;return new(0,i.VBase)({computed:{children:function(){var r="function"==typeof n?n.call(t):n;return[(0,e.h)(o,"$v",{validations:r,lazyParentModel:h,prop:"$v",model:t,rootModel:t})]}}})},O={data:function(){var t=this.$options.validations;return t&&(this._vuelidate=M(this,t)),{}},beforeCreate:function(){var t=this.$options;t.validations&&(t.computed||(t.computed={}),t.computed.$v||(t.computed.$v=function(){return this._vuelidate?this._vuelidate.refs.$v.proxy:null}))},beforeDestroy:function(){this._vuelidate&&(this._vuelidate.$destroy(),this._vuelidate=null)}};function C(t){t.mixin(O)}t.validationMixin=O;var D=C;t.default=D}(oa);const ma=e(oa);export{vl as A,Ol as B,Dl as C,ne as D,gn as E,dt as F,kl as G,Nl as H,ms as I,ma as J,t as K,e as L,on as N,vn as P,vt as S,nn as T,ia as V,Go as a,ss as b,cs as c,bs as d,Xo as e,xs as f,Ts as g,Es as h,Ps as i,te as j,qo as k,$s as l,ys as m,Do as n,de as o,ps as p,Xs as q,Qs as r,ls as s,as as t,ws as u,n as v,As as w,tl as x,el as y,Zs as z}; diff --git a/panel/dist/js/vue.min.js b/panel/dist/js/vue.min.js index efebcc61f5..5c1c9bf4e7 100644 --- a/panel/dist/js/vue.min.js +++ b/panel/dist/js/vue.min.js @@ -1,11 +1,11 @@ /*! - * Vue.js v2.7.14 - * (c) 2014-2022 Evan You + * Vue.js v2.7.15 + * (c) 2014-2023 Evan You * Released under the MIT License. */ /*! - * Vue.js v2.7.14 - * (c) 2014-2022 Evan You + * Vue.js v2.7.15 + * (c) 2014-2023 Evan You * Released under the MIT License. */ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Vue=e()}(this,(function(){"use strict";var t=Object.freeze({}),e=Array.isArray;function n(t){return null==t}function r(t){return null!=t}function o(t){return!0===t}function i(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function a(t){return"function"==typeof t}function s(t){return null!==t&&"object"==typeof t}var c=Object.prototype.toString;function u(t){return"[object Object]"===c.call(t)}function l(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function f(t){return r(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function d(t){return null==t?"":Array.isArray(t)||u(t)&&t.toString===c?JSON.stringify(t,null,2):String(t)}function p(t){var e=parseFloat(t);return isNaN(e)?t:e}function v(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var y=Object.prototype.hasOwnProperty;function _(t,e){return y.call(t,e)}function b(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var $=/-(\w)/g,w=b((function(t){return t.replace($,(function(t,e){return e?e.toUpperCase():""}))})),x=b((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),C=/\B([A-Z])/g,k=b((function(t){return t.replace(C,"-$1").toLowerCase()}));var S=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function O(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function T(t,e){for(var n in e)t[n]=e[n];return t}function A(t){for(var e={},n=0;n0,G=q&&q.indexOf("edge/")>0;q&&q.indexOf("android");var X=q&&/iphone|ipad|ipod|ios/.test(q);q&&/chrome\/\d+/.test(q),q&&/phantomjs/.test(q);var Y,Q=q&&q.match(/firefox\/(\d+)/),tt={}.watch,et=!1;if(J)try{var nt={};Object.defineProperty(nt,"passive",{get:function(){et=!0}}),window.addEventListener("test-passive",null,nt)}catch(t){}var rt=function(){return void 0===Y&&(Y=!J&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),Y},ot=J&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function it(t){return"function"==typeof t&&/native code/.test(t.toString())}var at,st="undefined"!=typeof Symbol&&it(Symbol)&&"undefined"!=typeof Reflect&&it(Reflect.ownKeys);at="undefined"!=typeof Set&&it(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var ct=null;function ut(t){void 0===t&&(t=null),t||ct&&ct._scope.off(),ct=t,t&&t._scope.on()}var lt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),ft=function(t){void 0===t&&(t="");var e=new lt;return e.text=t,e.isComment=!0,e};function dt(t){return new lt(void 0,void 0,void 0,String(t))}function pt(t){var e=new lt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var vt=0,ht=[],mt=function(){function t(){this._pending=!1,this.id=vt++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,ht.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){for(var e=this.subs.filter((function(t){return t})),n=0,r=e.length;n0&&(Yt((c=Qt(c,"".concat(a||"","_").concat(s)))[0])&&Yt(l)&&(f[u]=dt(l.text+c[0].text),c.shift()),f.push.apply(f,c)):i(c)?Yt(l)?f[u]=dt(l.text+c):""!==c&&f.push(dt(c)):Yt(c)&&Yt(l)?f[u]=dt(l.text+c.text):(o(t._isVList)&&r(c.tag)&&n(c.key)&&r(a)&&(c.key="__vlist".concat(a,"_").concat(s,"__")),f.push(c)));return f}function te(t,n,c,u,l,f){return(e(c)||i(c))&&(l=u,u=c,c=void 0),o(f)&&(l=2),function(t,n,o,i,c){if(r(o)&&r(o.__ob__))return ft();r(o)&&r(o.is)&&(n=o.is);if(!n)return ft();e(i)&&a(i[0])&&((o=o||{}).scopedSlots={default:i[0]},i.length=0);2===c?i=Xt(i):1===c&&(i=function(t){for(var n=0;n0,s=n?!!n.$stable:!a,c=n&&n.$key;if(n){if(n._normalized)return n._normalized;if(s&&o&&o!==t&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},n)n[u]&&"$"!==u[0]&&(i[u]=$e(e,r,u,n[u]))}else i={};for(var l in r)l in i||(i[l]=we(r,l));return n&&Object.isExtensible(n)&&(n._normalized=i),z(i,"$stable",s),z(i,"$key",c),z(i,"$hasNormal",a),i}function $e(t,n,r,o){var i=function(){var n=ct;ut(t);var r=arguments.length?o.apply(null,arguments):o({}),i=(r=r&&"object"==typeof r&&!e(r)?[r]:Xt(r))&&r[0];return ut(n),r&&(!i||1===r.length&&i.isComment&&!_e(i))?void 0:r};return o.proxy&&Object.defineProperty(n,r,{get:i,enumerable:!0,configurable:!0}),i}function we(t,e){return function(){return t[e]}}function xe(e){return{get attrs(){if(!e._attrsProxy){var n=e._attrsProxy={};z(n,"_v_attr_proxy",!0),Ce(n,e.$attrs,t,e,"$attrs")}return e._attrsProxy},get listeners(){e._listenersProxy||Ce(e._listenersProxy={},e.$listeners,t,e,"$listeners");return e._listenersProxy},get slots(){return function(t){t._slotsProxy||Se(t._slotsProxy={},t.$scopedSlots);return t._slotsProxy}(e)},emit:S(e.$emit,e),expose:function(t){t&&Object.keys(t).forEach((function(n){return Bt(e,t,n)}))}}}function Ce(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,ke(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function ke(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function Se(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}function Oe(){var t=ct;return t._setupContext||(t._setupContext=xe(t))}var Te,Ae=null;function je(t,e){return(t.__esModule||st&&"Module"===t[Symbol.toStringTag])&&(t=t.default),s(t)?e.extend(t):t}function Ee(t){if(e(t))for(var n=0;ndocument.createEvent("Event").timeStamp&&(Ze=function(){return Ge.now()})}var Xe=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function Ye(){var t,e;for(We=Ze(),Je=!0,Ue.sort(Xe),qe=0;qeqe&&Ue[n].id>t.id;)n--;Ue.splice(n+1,0,t)}else Ue.push(t);Ke||(Ke=!0,Cn(Ye))}}var tn="watcher",en="".concat(tn," callback"),nn="".concat(tn," getter"),rn="".concat(tn," cleanup");function on(t,e){return cn(t,null,{flush:"post"})}var an,sn={};function cn(n,r,o){var i=void 0===o?t:o,s=i.immediate,c=i.deep,u=i.flush,l=void 0===u?"pre":u;i.onTrack,i.onTrigger;var f,d,p=ct,v=function(t,e,n){return void 0===n&&(n=null),dn(t,null,n,p,e)},h=!1,m=!1;if(Ft(n)?(f=function(){return n.value},h=It(n)):Mt(n)?(f=function(){return n.__ob__.dep.depend(),n},c=!0):e(n)?(m=!0,h=n.some((function(t){return Mt(t)||It(t)})),f=function(){return n.map((function(t){return Ft(t)?t.value:Mt(t)?Bn(t):a(t)?v(t,nn):void 0}))}):f=a(n)?r?function(){return v(n,nn)}:function(){if(!p||!p._isDestroyed)return d&&d(),v(n,tn,[y])}:j,r&&c){var g=f;f=function(){return Bn(g())}}var y=function(t){d=_.onStop=function(){v(t,rn)}};if(rt())return y=j,r?s&&v(r,en,[f(),m?[]:void 0,y]):f(),j;var _=new Vn(ct,f,j,{lazy:!0});_.noRecurse=!r;var b=m?[]:sn;return _.run=function(){if(_.active)if(r){var t=_.get();(c||h||(m?t.some((function(t,e){return I(t,b[e])})):I(t,b)))&&(d&&d(),v(r,en,[t,b===sn?void 0:b,y]),b=t)}else _.get()},"sync"===l?_.update=_.run:"post"===l?(_.post=!0,_.update=function(){return Qe(_)}):_.update=function(){if(p&&p===ct&&!p._isMounted){var t=p._preWatchers||(p._preWatchers=[]);t.indexOf(_)<0&&t.push(_)}else Qe(_)},r?s?_.run():b=_.get():"post"===l&&p?p.$once("hook:mounted",(function(){return _.get()})):_.get(),function(){_.teardown()}}var un=function(){function t(t){void 0===t&&(t=!1),this.detached=t,this.active=!0,this.effects=[],this.cleanups=[],this.parent=an,!t&&an&&(this.index=(an.scopes||(an.scopes=[])).push(this)-1)}return t.prototype.run=function(t){if(this.active){var e=an;try{return an=this,t()}finally{an=e}}},t.prototype.on=function(){an=this},t.prototype.off=function(){an=this.parent},t.prototype.stop=function(t){if(this.active){var e=void 0,n=void 0;for(e=0,n=this.effects.length;e1)return n&&a(e)?e.call(r):e}},h:function(t,e,n){return te(ct,t,e,n,2,!0)},getCurrentInstance:function(){return ct&&{proxy:ct}},useSlots:function(){return Oe().slots},useAttrs:function(){return Oe().attrs},useListeners:function(){return Oe().listeners},mergeDefaults:function(t,n){var r=e(t)?t.reduce((function(t,e){return t[e]={},t}),{}):t;for(var o in n){var i=r[o];i?e(i)||a(i)?r[o]={type:i,default:n[o]}:i.default=n[o]:null===i&&(r[o]={default:n[o]})}return r},nextTick:Cn,set:jt,del:Et,useCssModule:function(e){return t},useCssVars:function(t){if(J){var e=ct;e&&on((function(){var n=e.$el,r=t(e,e._setupProxy);if(n&&1===n.nodeType){var o=n.style;for(var i in r)o.setProperty("--".concat(i),r[i])}}))}},defineAsyncComponent:function(t){a(t)&&(t={loader:t});var e=t.loader,n=t.loadingComponent,r=t.errorComponent,o=t.delay,i=void 0===o?200:o,s=t.timeout;t.suspensible;var c=t.onError,u=null,l=0,f=function(){var t;return u||(t=u=e().catch((function(t){if(t=t instanceof Error?t:new Error(String(t)),c)return new Promise((function(e,n){c(t,(function(){return e((l++,u=null,f()))}),(function(){return n(t)}),l+1)}));throw t})).then((function(e){return t!==u&&u?u:(e&&(e.__esModule||"Module"===e[Symbol.toStringTag])&&(e=e.default),e)})))};return function(){return{component:f(),delay:i,timeout:s,error:r,loading:n}}},onBeforeMount:Sn,onMounted:On,onBeforeUpdate:Tn,onUpdated:An,onBeforeUnmount:jn,onUnmounted:En,onActivated:Nn,onDeactivated:Pn,onServerPrefetch:Dn,onRenderTracked:Mn,onRenderTriggered:In,onErrorCaptured:function(t,e){void 0===e&&(e=ct),Ln(t,e)}}),Hn=new at;function Bn(t){return Un(t,Hn),Hn.clear(),t}function Un(t,n){var r,o,i=e(t);if(!(!i&&!s(t)||t.__v_skip||Object.isFrozen(t)||t instanceof lt)){if(t.__ob__){var a=t.__ob__.dep.id;if(n.has(a))return;n.add(a)}if(i)for(r=t.length;r--;)Un(t[r],n);else if(Ft(t))Un(t.value,n);else for(r=(o=Object.keys(t)).length;r--;)Un(t[o[r]],n)}}var zn=0,Vn=function(){function t(t,e,n,r,o){!function(t,e){void 0===e&&(e=an),e&&e.active&&e.effects.push(t)}(this,an&&!an._vm?an:t?t._scope:void 0),(this.vm=t)&&o&&(t._watcher=this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++zn,this.active=!0,this.post=!1,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new at,this.newDepIds=new at,this.expression="",a(e)?this.getter=e:(this.getter=function(t){if(!V.test(t)){var e=t.split(".");return function(t){for(var n=0;n-1)if(i&&!_(o,"default"))s=!1;else if(""===s||s===k(t)){var u=xr(String,o.type);(u<0||c-1:"string"==typeof t?t.split(",").indexOf(n)>-1:(r=t,"[object RegExp]"===c.call(r)&&t.test(n));var r}function Tr(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&Ar(n,i,r,o)}}}function Ar(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,g(n,e)}!function(e){e.prototype._init=function(e){var n=this;n._uid=tr++,n._isVue=!0,n.__v_skip=!0,n._scope=new un(!0),n._scope._vm=!0,e&&e._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(n,e):n.$options=gr(er(n.constructor),e||{},n),n._renderProxy=n,n._self=n,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(n),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Me(t,e)}(n),function(e){e._vnode=null,e._staticTrees=null;var n=e.$options,r=e.$vnode=n._parentVnode,o=r&&r.context;e.$slots=ge(n._renderChildren,o),e.$scopedSlots=r?be(e.$parent,r.data.scopedSlots,e.$slots):t,e._c=function(t,n,r,o){return te(e,t,n,r,o,!1)},e.$createElement=function(t,n,r,o){return te(e,t,n,r,o,!0)};var i=r&&r.data;At(e,"$attrs",i&&i.attrs||t,null,!0),At(e,"$listeners",n._parentListeners||t,null,!0)}(n),Be(n,"beforeCreate",void 0,!1),function(t){var e=Qn(t.$options.inject,t);e&&(kt(!1),Object.keys(e).forEach((function(n){At(t,n,e[n])})),kt(!0))}(n),qn(n),function(t){var e=t.$options.provide;if(e){var n=a(e)?e.call(t):e;if(!s(n))return;for(var r=ln(t),o=st?Reflect.ownKeys(n):Object.keys(n),i=0;i1?O(n):n;for(var r=O(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;iparseInt(this.max)&&Ar(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Ar(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Tr(t,(function(t){return Or(e,t)}))})),this.$watch("exclude",(function(e){Tr(t,(function(t){return!Or(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Ee(t),n=e&&e.componentOptions;if(n){var r=Sr(n),o=this.include,i=this.exclude;if(o&&(!r||!Or(o,r))||i&&r&&Or(i,r))return e;var a=this.cache,s=this.keys,c=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;a[c]?(e.componentInstance=a[c].componentInstance,g(s,c),s.push(c)):(this.vnodeToCache=e,this.keyToCache=c),e.data.keepAlive=!0}return e||t&&t[0]}},Nr={KeepAlive:Er};!function(t){var e={get:function(){return H}};Object.defineProperty(t,"config",e),t.util={warn:lr,extend:T,mergeOptions:gr,defineReactive:At},t.set=jt,t.delete=Et,t.nextTick=Cn,t.observable=function(t){return Tt(t),t},t.options=Object.create(null),R.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,T(t.options.components,Nr),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=O(arguments,1);return n.unshift(this),a(t.install)?t.install.apply(t,n):a(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=gr(this.options,t),this}}(t),kr(t),function(t){R.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&u(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&a(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(Cr),Object.defineProperty(Cr.prototype,"$isServer",{get:rt}),Object.defineProperty(Cr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Cr,"FunctionalRenderContext",{value:nr}),Cr.version=Rn;var Pr=v("style,class"),Dr=v("input,textarea,option,select,progress"),Mr=function(t,e,n){return"value"===n&&Dr(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},Ir=v("contenteditable,draggable,spellcheck"),Lr=v("events,caret,typing,plaintext-only"),Rr=v("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),Fr="http://www.w3.org/1999/xlink",Hr=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Br=function(t){return Hr(t)?t.slice(6,t.length):""},Ur=function(t){return null==t||!1===t};function zr(t){for(var e=t.data,n=t,o=t;r(o.componentInstance);)(o=o.componentInstance._vnode)&&o.data&&(e=Vr(o.data,e));for(;r(n=n.parent);)n&&n.data&&(e=Vr(e,n.data));return function(t,e){if(r(t)||r(e))return Kr(t,Jr(e));return""}(e.staticClass,e.class)}function Vr(t,e){return{staticClass:Kr(t.staticClass,e.staticClass),class:r(t.class)?[t.class,e.class]:e.class}}function Kr(t,e){return t?e?t+" "+e:t:e||""}function Jr(t){return Array.isArray(t)?function(t){for(var e,n="",o=0,i=t.length;o-1?_o(t,e,n):Rr(e)?Ur(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Ir(e)?t.setAttribute(e,function(t,e){return Ur(e)||"false"===e?"false":"contenteditable"===t&&Lr(e)?e:"true"}(e,n)):Hr(e)?Ur(n)?t.removeAttributeNS(Fr,Br(e)):t.setAttributeNS(Fr,e,n):_o(t,e,n)}function _o(t,e,n){if(Ur(n))t.removeAttribute(e);else{if(W&&!Z&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var bo={create:go,update:go};function $o(t,e){var o=e.elm,i=e.data,a=t.data;if(!(n(i.staticClass)&&n(i.class)&&(n(a)||n(a.staticClass)&&n(a.class)))){var s=zr(e),c=o._transitionClasses;r(c)&&(s=Kr(s,Jr(c))),s!==o._prevClass&&(o.setAttribute("class",s),o._prevClass=s)}}var wo,xo,Co,ko,So,Oo,To={create:$o,update:$o},Ao=/[\w).+\-_$\]]/;function jo(t){var e,n,r,o,i,a=!1,s=!1,c=!1,u=!1,l=0,f=0,d=0,p=0;for(r=0;r=0&&" "===(h=t.charAt(v));v--);h&&Ao.test(h)||(u=!0)}}else void 0===o?(p=r+1,o=t.slice(0,r).trim()):m();function m(){(i||(i=[])).push(t.slice(p,r).trim()),p=r+1}if(void 0===o?o=t.slice(0,r).trim():0!==p&&m(),i)for(r=0;r-1?{exp:t.slice(0,ko),key:'"'+t.slice(ko+1)+'"'}:{exp:t,key:null};xo=t,ko=So=Oo=0;for(;!qo();)Wo(Co=Jo())?Go(Co):91===Co&&Zo(Co);return{exp:t.slice(0,So),key:t.slice(So+1,Oo)}}(t);return null===n.key?"".concat(t,"=").concat(e):"$set(".concat(n.exp,", ").concat(n.key,", ").concat(e,")")}function Jo(){return xo.charCodeAt(++ko)}function qo(){return ko>=wo}function Wo(t){return 34===t||39===t}function Zo(t){var e=1;for(So=ko;!qo();)if(Wo(t=Jo()))Go(t);else if(91===t&&e++,93===t&&e--,0===e){Oo=ko;break}}function Go(t){for(var e=t;!qo()&&(t=Jo())!==e;);}var Xo,Yo="__r";function Qo(t,e,n){var r=Xo;return function o(){var i=e.apply(null,arguments);null!==i&&ni(t,o,n,r)}}var ti=mn&&!(Q&&Number(Q[1])<=53);function ei(t,e,n,r){if(ti){var o=We,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Xo.addEventListener(t,e,et?{capture:n,passive:r}:n)}function ni(t,e,n,r){(r||Xo).removeEventListener(t,e._wrapper||e,n)}function ri(t,e){if(!n(t.data.on)||!n(e.data.on)){var o=e.data.on||{},i=t.data.on||{};Xo=e.elm||t.elm,function(t){if(r(t.__r)){var e=W?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}r(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(o),Wt(o,i,ei,ni,Qo,e.context),Xo=void 0}}var oi,ii={create:ri,update:ri,destroy:function(t){return ri(t,io)}};function ai(t,e){if(!n(t.data.domProps)||!n(e.data.domProps)){var i,a,s=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(i in(r(u.__ob__)||o(u._v_attr_proxy))&&(u=e.data.domProps=T({},u)),c)i in u||(s[i]="");for(i in u){if(a=u[i],"textContent"===i||"innerHTML"===i){if(e.children&&(e.children.length=0),a===c[i])continue;1===s.childNodes.length&&s.removeChild(s.childNodes[0])}if("value"===i&&"PROGRESS"!==s.tagName){s._value=a;var l=n(a)?"":String(a);si(s,l)&&(s.value=l)}else if("innerHTML"===i&&Zr(s.tagName)&&n(s.innerHTML)){(oi=oi||document.createElement("div")).innerHTML="".concat(a,"");for(var f=oi.firstChild;s.firstChild;)s.removeChild(s.firstChild);for(;f.firstChild;)s.appendChild(f.firstChild)}else if(a!==c[i])try{s[i]=a}catch(t){}}}}function si(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,o=t._vModifiers;if(r(o)){if(o.number)return p(n)!==p(e);if(o.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var ci={create:ai,update:ai},ui=b((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function li(t){var e=fi(t.style);return t.staticStyle?T(t.staticStyle,e):e}function fi(t){return Array.isArray(t)?A(t):"string"==typeof t?ui(t):t}var di,pi=/^--/,vi=/\s*!important$/,hi=function(t,e,n){if(pi.test(e))t.style.setProperty(e,n);else if(vi.test(n))t.style.setProperty(k(e),n.replace(vi,""),"important");else{var r=gi(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(bi).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function wi(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(bi).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function xi(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&T(e,Ci(t.name||"v")),T(e,t),e}return"string"==typeof t?Ci(t):void 0}}var Ci=b((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),ki=J&&!Z,Si="transition",Oi="animation",Ti="transition",Ai="transitionend",ji="animation",Ei="animationend";ki&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Ti="WebkitTransition",Ai="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ji="WebkitAnimation",Ei="webkitAnimationEnd"));var Ni=J?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function Pi(t){Ni((function(){Ni(t)}))}function Di(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),$i(t,e))}function Mi(t,e){t._transitionClasses&&g(t._transitionClasses,e),wi(t,e)}function Ii(t,e,n){var r=Ri(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===Si?Ai:Ei,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n=Si,l=a,f=i.length):e===Oi?u>0&&(n=Oi,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Si:Oi:null)?n===Si?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Si&&Li.test(r[Ti+"Property"])}}function Fi(t,e){for(;t.length1}function Ki(t,e){!0!==e.data.show&&Bi(e)}var Ji=function(t){var a,s,c={},u=t.modules,l=t.nodeOps;for(a=0;av?b(t,n(o[g+1])?null:o[g+1].elm,o,p,g,i):p>g&&w(e,f,v)}(f,h,m,i,u):r(m)?(r(t.text)&&l.setTextContent(f,""),b(f,null,m,0,m.length-1,i)):r(h)?w(h,0,h.length-1):r(t.text)&&l.setTextContent(f,""):t.text!==e.text&&l.setTextContent(f,e.text),r(v)&&r(p=v.hook)&&r(p=p.postpatch)&&p(t,e)}}}function S(t,e,n){if(o(n)&&r(t.parent))t.parent.data.pendingInsert=e;else for(var i=0;i-1,a.selected!==i&&(a.selected=i);else if(P(Xi(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Gi(t,e){return e.every((function(e){return!P(e,t)}))}function Xi(t){return"_value"in t?t._value:t.value}function Yi(t){t.target.composing=!0}function Qi(t){t.target.composing&&(t.target.composing=!1,ta(t.target,"input"))}function ta(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function ea(t){return!t.componentInstance||t.data&&t.data.transition?t:ea(t.componentInstance._vnode)}var na={bind:function(t,e,n){var r=e.value,o=(n=ea(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,Bi(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=ea(n)).data&&n.data.transition?(n.data.show=!0,r?Bi(n,(function(){t.style.display=t.__vOriginalDisplay})):Ui(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},ra={model:qi,show:na},oa={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function ia(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?ia(Ee(e.children)):t}function aa(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[w(r)]=o[r];return e}function sa(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var ca=function(t){return t.tag||_e(t)},ua=function(t){return"show"===t.name},la={name:"transition",props:oa,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(ca)).length){var r=this.mode,o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var a=ia(o);if(!a)return o;if(this._leaving)return sa(t,o);var s="__transition-".concat(this._uid,"-");a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=aa(this),u=this._vnode,l=ia(u);if(a.data.directives&&a.data.directives.some(ua)&&(a.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(a,l)&&!_e(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=T({},c);if("out-in"===r)return this._leaving=!0,Zt(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),sa(t,o);if("in-out"===r){if(_e(a))return u;var d,p=function(){d()};Zt(c,"afterEnter",p),Zt(c,"enterCancelled",p),Zt(f,"delayLeave",(function(t){d=t}))}}return o}}},fa=T({tag:String,moveClass:String},oa);delete fa.mode;var da={props:fa,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Le(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=aa(this),s=0;s-1?Yr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Yr[t]=/HTMLUnknownElement/.test(e.toString())},T(Cr.options.directives,ra),T(Cr.options.components,ma),Cr.prototype.__patch__=J?Ji:j,Cr.prototype.$mount=function(t,e){return function(t,e,n){var r;t.$el=e,t.$options.render||(t.$options.render=ft),Be(t,"beforeMount"),r=function(){t._update(t._render(),n)},new Vn(t,r,j,{before:function(){t._isMounted&&!t._isDestroyed&&Be(t,"beforeUpdate")}},!0),n=!1;var o=t._preWatchers;if(o)for(var i=0;i\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Ta=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+?\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Aa="[a-zA-Z_][\\-\\.0-9_a-zA-Z".concat(B.source,"]*"),ja="((?:".concat(Aa,"\\:)?").concat(Aa,")"),Ea=new RegExp("^<".concat(ja)),Na=/^\s*(\/?)>/,Pa=new RegExp("^<\\/".concat(ja,"[^>]*>")),Da=/^]+>/i,Ma=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Ha=/&(?:lt|gt|quot|amp|#39);/g,Ba=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Ua=v("pre,textarea",!0),za=function(t,e){return t&&Ua(t)&&"\n"===e[0]};function Va(t,e){var n=e?Ba:Ha;return t.replace(n,(function(t){return Fa[t]}))}function Ka(t,e){for(var n,r,o=[],i=e.expectHTML,a=e.isUnaryTag||E,s=e.canBeLeftOpenTag||E,c=0,u=function(){if(n=t,r&&La(r)){var u=0,d=r.toLowerCase(),p=Ra[d]||(Ra[d]=new RegExp("([\\s\\S]*?)(]*>)","i"));w=t.replace(p,(function(t,n,r){return u=r.length,La(d)||"noscript"===d||(n=n.replace(//g,"$1").replace(//g,"$1")),za(d,n)&&(n=n.slice(1)),e.chars&&e.chars(n),""}));c+=t.length-w.length,t=w,f(d,c-u,c)}else{var v=t.indexOf("<");if(0===v){if(Ma.test(t)){var h=t.indexOf("--\x3e");if(h>=0)return e.shouldKeepComment&&e.comment&&e.comment(t.substring(4,h),c,c+h+3),l(h+3),"continue"}if(Ia.test(t)){var m=t.indexOf("]>");if(m>=0)return l(m+2),"continue"}var g=t.match(Da);if(g)return l(g[0].length),"continue";var y=t.match(Pa);if(y){var _=c;return l(y[0].length),f(y[1],_,c),"continue"}var b=function(){var e=t.match(Ea);if(e){var n={tagName:e[1],attrs:[],start:c};l(e[0].length);for(var r=void 0,o=void 0;!(r=t.match(Na))&&(o=t.match(Ta)||t.match(Oa));)o.start=c,l(o[0].length),o.end=c,n.attrs.push(o);if(r)return n.unarySlash=r[1],l(r[0].length),n.end=c,n}}();if(b)return function(t){var n=t.tagName,c=t.unarySlash;i&&("p"===r&&Sa(n)&&f(r),s(n)&&r===n&&f(n));for(var u=a(n)||!!c,l=t.attrs.length,d=new Array(l),p=0;p=0){for(w=t.slice(v);!(Pa.test(w)||Ea.test(w)||Ma.test(w)||Ia.test(w)||(x=w.indexOf("<",1))<0);)v+=x,w=t.slice(v);$=t.substring(0,v)}v<0&&($=t),$&&l($.length),e.chars&&$&&e.chars($,c-$.length,c)}if(t===n)return e.chars&&e.chars(t),"break"};t;){if("break"===u())break}function l(e){c+=e,t=t.substring(e)}function f(t,n,i){var a,s;if(null==n&&(n=c),null==i&&(i=c),t)for(s=t.toLowerCase(),a=o.length-1;a>=0&&o[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=o.length-1;u>=a;u--)e.end&&e.end(o[u].tag,n,i);o.length=a,r=a&&o[a-1].tag}else"br"===s?e.start&&e.start(t,[],!0,n,i):"p"===s&&(e.start&&e.start(t,[],!1,n,i),e.end&&e.end(t,n,i))}f()}var Ja,qa,Wa,Za,Ga,Xa,Ya,Qa,ts=/^@|^v-on:/,es=/^v-|^@|^:|^#/,ns=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,rs=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,os=/^\(|\)$/g,is=/^\[.*\]$/,as=/:(.*)$/,ss=/^:|^\.|^v-bind:/,cs=/\.[^.\]]+(?=[^\]]*$)/g,us=/^v-slot(:|$)|^#/,ls=/[\r\n]/,fs=/[ \f\t\r\n]+/g,ds=b(xa),ps="_empty_";function vs(t,e,n){return{type:1,tag:t,attrsList:e,attrsMap:$s(e),rawAttrsMap:{},parent:n,children:[]}}function hs(t,e){Ja=e.warn||No,Xa=e.isPreTag||E,Ya=e.mustUseProp||E,Qa=e.getTagNamespace||E,e.isReservedTag,Wa=Po(e.modules,"transformNode"),Za=Po(e.modules,"preTransformNode"),Ga=Po(e.modules,"postTransformNode"),qa=e.delimiters;var n,r,o=[],i=!1!==e.preserveWhitespace,a=e.whitespace,s=!1,c=!1;function u(t){if(l(t),s||t.processed||(t=ms(t,e)),o.length||t===n||n.if&&(t.elseif||t.else)&&ys(n,{exp:t.elseif,block:t}),r&&!t.forbidden)if(t.elseif||t.else)a=t,u=function(t){for(var e=t.length;e--;){if(1===t[e].type)return t[e];t.pop()}}(r.children),u&&u.if&&ys(u,{exp:a.elseif,block:a});else{if(t.slotScope){var i=t.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[i]=t}r.children.push(t),t.parent=r}var a,u;t.children=t.children.filter((function(t){return!t.slotScope})),l(t),t.pre&&(s=!1),Xa(t.tag)&&(c=!1);for(var f=0;fc&&(s.push(i=t.slice(c,o)),a.push(JSON.stringify(i)));var u=jo(r[1].trim());a.push("_s(".concat(u,")")),s.push({"@binding":u}),c=o+r[0].length}return c-1")+("true"===i?":(".concat(e,")"):":_q(".concat(e,",").concat(i,")"))),Fo(t,"change","var $$a=".concat(e,",")+"$$el=$event.target,"+"$$c=$$el.checked?(".concat(i,"):(").concat(a,");")+"if(Array.isArray($$a)){"+"var $$v=".concat(r?"_n("+o+")":o,",")+"$$i=_i($$a,$$v);"+"if($$el.checked){$$i<0&&(".concat(Ko(e,"$$a.concat([$$v])"),")}")+"else{$$i>-1&&(".concat(Ko(e,"$$a.slice(0,$$i).concat($$a.slice($$i+1))"),")}")+"}else{".concat(Ko(e,"$$c"),"}"),null,!0)}(t,r,o);else if("input"===i&&"radio"===a)!function(t,e,n){var r=n&&n.number,o=Ho(t,"value")||"null";o=r?"_n(".concat(o,")"):o,Do(t,"checked","_q(".concat(e,",").concat(o,")")),Fo(t,"change",Ko(e,o),null,!0)}(t,r,o);else if("input"===i||"textarea"===i)!function(t,e,n){var r=t.attrsMap.type,o=n||{},i=o.lazy,a=o.number,s=o.trim,c=!i&&"range"!==r,u=i?"change":"range"===r?Yo:"input",l="$event.target.value";s&&(l="$event.target.value.trim()");a&&(l="_n(".concat(l,")"));var f=Ko(e,l);c&&(f="if($event.target.composing)return;".concat(f));Do(t,"value","(".concat(e,")")),Fo(t,u,f,null,!0),(s||a)&&Fo(t,"blur","$forceUpdate()")}(t,r,o);else if(!H.isReservedTag(i))return Vo(t,r,o),!1;return!0},text:function(t,e){e.value&&Do(t,"textContent","_s(".concat(e.value,")"),e)},html:function(t,e){e.value&&Do(t,"innerHTML","_s(".concat(e.value,")"),e)}},As={expectHTML:!0,modules:ks,directives:Ts,isPreTag:function(t){return"pre"===t},isUnaryTag:Ca,mustUseProp:Mr,canBeLeftOpenTag:ka,isReservedTag:Gr,getTagNamespace:Xr,staticKeys:function(t){return t.reduce((function(t,e){return t.concat(e.staticKeys||[])}),[]).join(",")}(ks)},js=b((function(t){return v("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(t?","+t:""))}));function Es(t,e){t&&(Ss=js(e.staticKeys||""),Os=e.isReservedTag||E,Ns(t),Ps(t,!1))}function Ns(t){if(t.static=function(t){if(2===t.type)return!1;if(3===t.type)return!0;return!(!t.pre&&(t.hasBindings||t.if||t.for||h(t.tag)||!Os(t.tag)||function(t){for(;t.parent;){if("template"!==(t=t.parent).tag)return!1;if(t.for)return!0}return!1}(t)||!Object.keys(t).every(Ss)))}(t),1===t.type){if(!Os(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var e=0,n=t.children.length;e|^function(?:\s+[\w$]+)?\s*\(/,Ms=/\([^)]*?\);*$/,Is=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Ls={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Rs={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Fs=function(t){return"if(".concat(t,")return null;")},Hs={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Fs("$event.target !== $event.currentTarget"),ctrl:Fs("!$event.ctrlKey"),shift:Fs("!$event.shiftKey"),alt:Fs("!$event.altKey"),meta:Fs("!$event.metaKey"),left:Fs("'button' in $event && $event.button !== 0"),middle:Fs("'button' in $event && $event.button !== 1"),right:Fs("'button' in $event && $event.button !== 2")};function Bs(t,e){var n=e?"nativeOn:":"on:",r="",o="";for(var i in t){var a=Us(t[i]);t[i]&&t[i].dynamic?o+="".concat(i,",").concat(a,","):r+='"'.concat(i,'":').concat(a,",")}return r="{".concat(r.slice(0,-1),"}"),o?n+"_d(".concat(r,",[").concat(o.slice(0,-1),"])"):n+r}function Us(t){if(!t)return"function(){}";if(Array.isArray(t))return"[".concat(t.map((function(t){return Us(t)})).join(","),"]");var e=Is.test(t.value),n=Ds.test(t.value),r=Is.test(t.value.replace(Ms,""));if(t.modifiers){var o="",i="",a=[],s=function(e){if(Hs[e])i+=Hs[e],Ls[e]&&a.push(e);else if("exact"===e){var n=t.modifiers;i+=Fs(["ctrl","shift","alt","meta"].filter((function(t){return!n[t]})).map((function(t){return"$event.".concat(t,"Key")})).join("||"))}else a.push(e)};for(var c in t.modifiers)s(c);a.length&&(o+=function(t){return"if(!$event.type.indexOf('key')&&"+"".concat(t.map(zs).join("&&"),")return null;")}(a)),i&&(o+=i);var u=e?"return ".concat(t.value,".apply(null, arguments)"):n?"return (".concat(t.value,").apply(null, arguments)"):r?"return ".concat(t.value):t.value;return"function($event){".concat(o).concat(u,"}")}return e||n?t.value:"function($event){".concat(r?"return ".concat(t.value):t.value,"}")}function zs(t){var e=parseInt(t,10);if(e)return"$event.keyCode!==".concat(e);var n=Ls[t],r=Rs[t];return"_k($event.keyCode,"+"".concat(JSON.stringify(t),",")+"".concat(JSON.stringify(n),",")+"$event.key,"+"".concat(JSON.stringify(r))+")"}var Vs={on:function(t,e){t.wrapListeners=function(t){return"_g(".concat(t,",").concat(e.value,")")}},bind:function(t,e){t.wrapData=function(n){return"_b(".concat(n,",'").concat(t.tag,"',").concat(e.value,",").concat(e.modifiers&&e.modifiers.prop?"true":"false").concat(e.modifiers&&e.modifiers.sync?",true":"",")")}},cloak:j},Ks=function(t){this.options=t,this.warn=t.warn||No,this.transforms=Po(t.modules,"transformCode"),this.dataGenFns=Po(t.modules,"genData"),this.directives=T(T({},Vs),t.directives);var e=t.isReservedTag||E;this.maybeComponent=function(t){return!!t.component||!e(t.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Js(t,e){var n=new Ks(e),r=t?"script"===t.tag?"null":qs(t,n):'_c("div")';return{render:"with(this){return ".concat(r,"}"),staticRenderFns:n.staticRenderFns}}function qs(t,e){if(t.parent&&(t.pre=t.pre||t.parent.pre),t.staticRoot&&!t.staticProcessed)return Ws(t,e);if(t.once&&!t.onceProcessed)return Zs(t,e);if(t.for&&!t.forProcessed)return Ys(t,e);if(t.if&&!t.ifProcessed)return Gs(t,e);if("template"!==t.tag||t.slotTarget||e.pre){if("slot"===t.tag)return function(t,e){var n=t.slotName||'"default"',r=nc(t,e),o="_t(".concat(n).concat(r?",function(){return ".concat(r,"}"):""),i=t.attrs||t.dynamicAttrs?ic((t.attrs||[]).concat(t.dynamicAttrs||[]).map((function(t){return{name:w(t.name),value:t.value,dynamic:t.dynamic}}))):null,a=t.attrsMap["v-bind"];!i&&!a||r||(o+=",null");i&&(o+=",".concat(i));a&&(o+="".concat(i?"":",null",",").concat(a));return o+")"}(t,e);var n=void 0;if(t.component)n=function(t,e,n){var r=e.inlineTemplate?null:nc(e,n,!0);return"_c(".concat(t,",").concat(Qs(e,n)).concat(r?",".concat(r):"",")")}(t.component,t,e);else{var r=void 0,o=e.maybeComponent(t);(!t.plain||t.pre&&o)&&(r=Qs(t,e));var i=void 0,a=e.options.bindings;o&&a&&!1!==a.__isScriptSetup&&(i=function(t,e){var n=w(e),r=x(n),o=function(o){return t[e]===o?e:t[n]===o?n:t[r]===o?r:void 0},i=o("setup-const")||o("setup-reactive-const");if(i)return i;var a=o("setup-let")||o("setup-ref")||o("setup-maybe-ref");if(a)return a}(a,t.tag)),i||(i="'".concat(t.tag,"'"));var s=t.inlineTemplate?null:nc(t,e,!0);n="_c(".concat(i).concat(r?",".concat(r):"").concat(s?",".concat(s):"",")")}for(var c=0;c>>0}(a)):"",")")}(t,t.scopedSlots,e),",")),t.model&&(n+="model:{value:".concat(t.model.value,",callback:").concat(t.model.callback,",expression:").concat(t.model.expression,"},")),t.inlineTemplate){var i=function(t,e){var n=t.children[0];if(n&&1===n.type){var r=Js(n,e.options);return"inlineTemplate:{render:function(){".concat(r.render,"},staticRenderFns:[").concat(r.staticRenderFns.map((function(t){return"function(){".concat(t,"}")})).join(","),"]}")}}(t,e);i&&(n+="".concat(i,","))}return n=n.replace(/,$/,"")+"}",t.dynamicAttrs&&(n="_b(".concat(n,',"').concat(t.tag,'",').concat(ic(t.dynamicAttrs),")")),t.wrapData&&(n=t.wrapData(n)),t.wrapListeners&&(n=t.wrapListeners(n)),n}function tc(t){return 1===t.type&&("slot"===t.tag||t.children.some(tc))}function ec(t,e){var n=t.attrsMap["slot-scope"];if(t.if&&!t.ifProcessed&&!n)return Gs(t,e,ec,"null");if(t.for&&!t.forProcessed)return Ys(t,e,ec);var r=t.slotScope===ps?"":String(t.slotScope),o="function(".concat(r,"){")+"return ".concat("template"===t.tag?t.if&&n?"(".concat(t.if,")?").concat(nc(t,e)||"undefined",":undefined"):nc(t,e)||"undefined":qs(t,e),"}"),i=r?"":",proxy:true";return"{key:".concat(t.slotTarget||'"default"',",fn:").concat(o).concat(i,"}")}function nc(t,e,n,r,o){var i=t.children;if(i.length){var a=i[0];if(1===i.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?e.maybeComponent(a)?",1":",0":"";return"".concat((r||qs)(a,e)).concat(s)}var c=n?function(t,e){for(var n=0,r=0;r':'

        ',lc.innerHTML.indexOf(" ")>0}var vc=!!J&&pc(!1),hc=!!J&&pc(!0),mc=b((function(t){var e=to(t);return e&&e.innerHTML})),gc=Cr.prototype.$mount;return Cr.prototype.$mount=function(t,e){if((t=t&&to(t))===document.body||t===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=mc(r));else{if(!r.nodeType)return this;r=r.innerHTML}else t&&(r=function(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}(t));if(r){var o=dc(r,{outputSourceRange:!1,shouldDecodeNewlines:vc,shouldDecodeNewlinesForHref:hc,delimiters:n.delimiters,comments:n.comments},this),i=o.render,a=o.staticRenderFns;n.render=i,n.staticRenderFns=a}}return gc.call(this,t,e)},Cr.compile=dc,T(Cr,Fn),Cr.effect=function(t,e){var n=new Vn(ct,t,j,{sync:!0});e&&(n.update=function(){e((function(){return n.run()}))})},Cr})); \ No newline at end of file +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Vue=e()}(this,(function(){"use strict";var t=Object.freeze({}),e=Array.isArray;function n(t){return null==t}function r(t){return null!=t}function o(t){return!0===t}function i(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function a(t){return"function"==typeof t}function s(t){return null!==t&&"object"==typeof t}var c=Object.prototype.toString;function u(t){return"[object Object]"===c.call(t)}function l(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function f(t){return r(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function d(t){return null==t?"":Array.isArray(t)||u(t)&&t.toString===c?JSON.stringify(t,null,2):String(t)}function p(t){var e=parseFloat(t);return isNaN(e)?t:e}function v(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var y=Object.prototype.hasOwnProperty;function _(t,e){return y.call(t,e)}function b(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var $=/-(\w)/g,w=b((function(t){return t.replace($,(function(t,e){return e?e.toUpperCase():""}))})),x=b((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),C=/\B([A-Z])/g,k=b((function(t){return t.replace(C,"-$1").toLowerCase()}));var S=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function O(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function T(t,e){for(var n in e)t[n]=e[n];return t}function A(t){for(var e={},n=0;n0,G=q&&q.indexOf("edge/")>0;q&&q.indexOf("android");var X=q&&/iphone|ipad|ipod|ios/.test(q);q&&/chrome\/\d+/.test(q),q&&/phantomjs/.test(q);var Y,Q=q&&q.match(/firefox\/(\d+)/),tt={}.watch,et=!1;if(J)try{var nt={};Object.defineProperty(nt,"passive",{get:function(){et=!0}}),window.addEventListener("test-passive",null,nt)}catch(t){}var rt=function(){return void 0===Y&&(Y=!J&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),Y},ot=J&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function it(t){return"function"==typeof t&&/native code/.test(t.toString())}var at,st="undefined"!=typeof Symbol&&it(Symbol)&&"undefined"!=typeof Reflect&&it(Reflect.ownKeys);at="undefined"!=typeof Set&&it(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var ct=null;function ut(t){void 0===t&&(t=null),t||ct&&ct._scope.off(),ct=t,t&&t._scope.on()}var lt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),ft=function(t){void 0===t&&(t="");var e=new lt;return e.text=t,e.isComment=!0,e};function dt(t){return new lt(void 0,void 0,void 0,String(t))}function pt(t){var e=new lt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var vt=0,ht=[],mt=function(){function t(){this._pending=!1,this.id=vt++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,ht.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){for(var e=this.subs.filter((function(t){return t})),n=0,r=e.length;n0&&(Yt((c=Qt(c,"".concat(a||"","_").concat(s)))[0])&&Yt(l)&&(f[u]=dt(l.text+c[0].text),c.shift()),f.push.apply(f,c)):i(c)?Yt(l)?f[u]=dt(l.text+c):""!==c&&f.push(dt(c)):Yt(c)&&Yt(l)?f[u]=dt(l.text+c.text):(o(t._isVList)&&r(c.tag)&&n(c.key)&&r(a)&&(c.key="__vlist".concat(a,"_").concat(s,"__")),f.push(c)));return f}function te(t,n,c,u,l,f){return(e(c)||i(c))&&(l=u,u=c,c=void 0),o(f)&&(l=2),function(t,n,o,i,c){if(r(o)&&r(o.__ob__))return ft();r(o)&&r(o.is)&&(n=o.is);if(!n)return ft();e(i)&&a(i[0])&&((o=o||{}).scopedSlots={default:i[0]},i.length=0);2===c?i=Xt(i):1===c&&(i=function(t){for(var n=0;n0,s=n?!!n.$stable:!a,c=n&&n.$key;if(n){if(n._normalized)return n._normalized;if(s&&o&&o!==t&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},n)n[u]&&"$"!==u[0]&&(i[u]=$e(e,r,u,n[u]))}else i={};for(var l in r)l in i||(i[l]=we(r,l));return n&&Object.isExtensible(n)&&(n._normalized=i),z(i,"$stable",s),z(i,"$key",c),z(i,"$hasNormal",a),i}function $e(t,n,r,o){var i=function(){var n=ct;ut(t);var r=arguments.length?o.apply(null,arguments):o({}),i=(r=r&&"object"==typeof r&&!e(r)?[r]:Xt(r))&&r[0];return ut(n),r&&(!i||1===r.length&&i.isComment&&!_e(i))?void 0:r};return o.proxy&&Object.defineProperty(n,r,{get:i,enumerable:!0,configurable:!0}),i}function we(t,e){return function(){return t[e]}}function xe(e){return{get attrs(){if(!e._attrsProxy){var n=e._attrsProxy={};z(n,"_v_attr_proxy",!0),Ce(n,e.$attrs,t,e,"$attrs")}return e._attrsProxy},get listeners(){e._listenersProxy||Ce(e._listenersProxy={},e.$listeners,t,e,"$listeners");return e._listenersProxy},get slots(){return function(t){t._slotsProxy||Se(t._slotsProxy={},t.$scopedSlots);return t._slotsProxy}(e)},emit:S(e.$emit,e),expose:function(t){t&&Object.keys(t).forEach((function(n){return Bt(e,t,n)}))}}}function Ce(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,ke(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function ke(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function Se(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}function Oe(){var t=ct;return t._setupContext||(t._setupContext=xe(t))}var Te,Ae,je=null;function Ee(t,e){return(t.__esModule||st&&"Module"===t[Symbol.toStringTag])&&(t=t.default),s(t)?e.extend(t):t}function Ne(t){if(e(t))for(var n=0;ndocument.createEvent("Event").timeStamp&&(Ye=function(){return Qe.now()})}var tn=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function en(){var t,e;for(Xe=Ye(),Ze=!0,Ke.sort(tn),Ge=0;GeGe&&Ke[n].id>t.id;)n--;Ke.splice(n+1,0,t)}else Ke.push(t);We||(We=!0,kn(en))}}var rn="watcher",on="".concat(rn," callback"),an="".concat(rn," getter"),sn="".concat(rn," cleanup");function cn(t,e){return ln(t,null,{flush:"post"})}var un={};function ln(n,r,o){var i=void 0===o?t:o,s=i.immediate,c=i.deep,u=i.flush,l=void 0===u?"pre":u;i.onTrack,i.onTrigger;var f,d,p=ct,v=function(t,e,n){return void 0===n&&(n=null),pn(t,null,n,p,e)},h=!1,m=!1;if(Ft(n)?(f=function(){return n.value},h=It(n)):Mt(n)?(f=function(){return n.__ob__.dep.depend(),n},c=!0):e(n)?(m=!0,h=n.some((function(t){return Mt(t)||It(t)})),f=function(){return n.map((function(t){return Ft(t)?t.value:Mt(t)?Un(t):a(t)?v(t,an):void 0}))}):f=a(n)?r?function(){return v(n,an)}:function(){if(!p||!p._isDestroyed)return d&&d(),v(n,rn,[y])}:j,r&&c){var g=f;f=function(){return Un(g())}}var y=function(t){d=_.onStop=function(){v(t,sn)}};if(rt())return y=j,r?s&&v(r,on,[f(),m?[]:void 0,y]):f(),j;var _=new Kn(ct,f,j,{lazy:!0});_.noRecurse=!r;var b=m?[]:un;return _.run=function(){if(_.active)if(r){var t=_.get();(c||h||(m?t.some((function(t,e){return I(t,b[e])})):I(t,b)))&&(d&&d(),v(r,on,[t,b===un?void 0:b,y]),b=t)}else _.get()},"sync"===l?_.update=_.run:"post"===l?(_.post=!0,_.update=function(){return nn(_)}):_.update=function(){if(p&&p===ct&&!p._isMounted){var t=p._preWatchers||(p._preWatchers=[]);t.indexOf(_)<0&&t.push(_)}else nn(_)},r?s?_.run():b=_.get():"post"===l&&p?p.$once("hook:mounted",(function(){return _.get()})):_.get(),function(){_.teardown()}}function fn(t){var e=t._provided,n=t.$parent&&t.$parent._provided;return n===e?t._provided=Object.create(n):e}function dn(t,e,n){yt();try{if(e)for(var r=e;r=r.$parent;){var o=r.$options.errorCaptured;if(o)for(var i=0;i1)return n&&a(e)?e.call(r):e}},h:function(t,e,n){return te(ct,t,e,n,2,!0)},getCurrentInstance:function(){return ct&&{proxy:ct}},useSlots:function(){return Oe().slots},useAttrs:function(){return Oe().attrs},useListeners:function(){return Oe().listeners},mergeDefaults:function(t,n){var r=e(t)?t.reduce((function(t,e){return t[e]={},t}),{}):t;for(var o in n){var i=r[o];i?e(i)||a(i)?r[o]={type:i,default:n[o]}:i.default=n[o]:null===i&&(r[o]={default:n[o]})}return r},nextTick:kn,set:jt,del:Et,useCssModule:function(e){return t},useCssVars:function(t){if(J){var e=ct;e&&cn((function(){var n=e.$el,r=t(e,e._setupProxy);if(n&&1===n.nodeType){var o=n.style;for(var i in r)o.setProperty("--".concat(i),r[i])}}))}},defineAsyncComponent:function(t){a(t)&&(t={loader:t});var e=t.loader,n=t.loadingComponent,r=t.errorComponent,o=t.delay,i=void 0===o?200:o,s=t.timeout;t.suspensible;var c=t.onError,u=null,l=0,f=function(){var t;return u||(t=u=e().catch((function(t){if(t=t instanceof Error?t:new Error(String(t)),c)return new Promise((function(e,n){c(t,(function(){return e((l++,u=null,f()))}),(function(){return n(t)}),l+1)}));throw t})).then((function(e){return t!==u&&u?u:(e&&(e.__esModule||"Module"===e[Symbol.toStringTag])&&(e=e.default),e)})))};return function(){return{component:f(),delay:i,timeout:s,error:r,loading:n}}},onBeforeMount:On,onMounted:Tn,onBeforeUpdate:An,onUpdated:jn,onBeforeUnmount:En,onUnmounted:Nn,onActivated:Pn,onDeactivated:Dn,onServerPrefetch:Mn,onRenderTracked:In,onRenderTriggered:Ln,onErrorCaptured:function(t,e){void 0===e&&(e=ct),Rn(t,e)}}),Bn=new at;function Un(t){return zn(t,Bn),Bn.clear(),t}function zn(t,n){var r,o,i=e(t);if(!(!i&&!s(t)||t.__v_skip||Object.isFrozen(t)||t instanceof lt)){if(t.__ob__){var a=t.__ob__.dep.id;if(n.has(a))return;n.add(a)}if(i)for(r=t.length;r--;)zn(t[r],n);else if(Ft(t))zn(t.value,n);else for(r=(o=Object.keys(t)).length;r--;)zn(t[o[r]],n)}}var Vn=0,Kn=function(){function t(t,e,n,r,o){!function(t,e){void 0===e&&(e=Ae),e&&e.active&&e.effects.push(t)}(this,Ae&&!Ae._vm?Ae:t?t._scope:void 0),(this.vm=t)&&o&&(t._watcher=this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++Vn,this.active=!0,this.post=!1,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new at,this.newDepIds=new at,this.expression="",a(e)?this.getter=e:(this.getter=function(t){if(!V.test(t)){var e=t.split(".");return function(t){for(var n=0;n-1)if(i&&!_(o,"default"))s=!1;else if(""===s||s===k(t)){var u=Cr(String,o.type);(u<0||c-1:"string"==typeof t?t.split(",").indexOf(n)>-1:(r=t,"[object RegExp]"===c.call(r)&&t.test(n));var r}function Ar(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&jr(n,i,r,o)}}}function jr(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,g(n,e)}!function(e){e.prototype._init=function(e){var n=this;n._uid=er++,n._isVue=!0,n.__v_skip=!0,n._scope=new Le(!0),n._scope._vm=!0,e&&e._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(n,e):n.$options=yr(nr(n.constructor),e||{},n),n._renderProxy=n,n._self=n,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(n),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Ie(t,e)}(n),function(e){e._vnode=null,e._staticTrees=null;var n=e.$options,r=e.$vnode=n._parentVnode,o=r&&r.context;e.$slots=ge(n._renderChildren,o),e.$scopedSlots=r?be(e.$parent,r.data.scopedSlots,e.$slots):t,e._c=function(t,n,r,o){return te(e,t,n,r,o,!1)},e.$createElement=function(t,n,r,o){return te(e,t,n,r,o,!0)};var i=r&&r.data;At(e,"$attrs",i&&i.attrs||t,null,!0),At(e,"$listeners",n._parentListeners||t,null,!0)}(n),Ve(n,"beforeCreate",void 0,!1),function(t){var e=tr(t.$options.inject,t);e&&(kt(!1),Object.keys(e).forEach((function(n){At(t,n,e[n])})),kt(!0))}(n),Wn(n),function(t){var e=t.$options.provide;if(e){var n=a(e)?e.call(t):e;if(!s(n))return;for(var r=fn(t),o=st?Reflect.ownKeys(n):Object.keys(n),i=0;i1?O(n):n;for(var r=O(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;iparseInt(this.max)&&jr(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)jr(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Ar(t,(function(t){return Tr(e,t)}))})),this.$watch("exclude",(function(e){Ar(t,(function(t){return!Tr(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Ne(t),n=e&&e.componentOptions;if(n){var r=Or(n),o=this.include,i=this.exclude;if(o&&(!r||!Tr(o,r))||i&&r&&Tr(i,r))return e;var a=this.cache,s=this.keys,c=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;a[c]?(e.componentInstance=a[c].componentInstance,g(s,c),s.push(c)):(this.vnodeToCache=e,this.keyToCache=c),e.data.keepAlive=!0}return e||t&&t[0]}},Pr={KeepAlive:Nr};!function(t){var e={get:function(){return H}};Object.defineProperty(t,"config",e),t.util={warn:fr,extend:T,mergeOptions:yr,defineReactive:At},t.set=jt,t.delete=Et,t.nextTick=kn,t.observable=function(t){return Tt(t),t},t.options=Object.create(null),R.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,T(t.options.components,Pr),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=O(arguments,1);return n.unshift(this),a(t.install)?t.install.apply(t,n):a(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=yr(this.options,t),this}}(t),Sr(t),function(t){R.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&u(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&a(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(kr),Object.defineProperty(kr.prototype,"$isServer",{get:rt}),Object.defineProperty(kr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(kr,"FunctionalRenderContext",{value:rr}),kr.version=Fn;var Dr=v("style,class"),Mr=v("input,textarea,option,select,progress"),Ir=function(t,e,n){return"value"===n&&Mr(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},Lr=v("contenteditable,draggable,spellcheck"),Rr=v("events,caret,typing,plaintext-only"),Fr=v("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),Hr="http://www.w3.org/1999/xlink",Br=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Ur=function(t){return Br(t)?t.slice(6,t.length):""},zr=function(t){return null==t||!1===t};function Vr(t){for(var e=t.data,n=t,o=t;r(o.componentInstance);)(o=o.componentInstance._vnode)&&o.data&&(e=Kr(o.data,e));for(;r(n=n.parent);)n&&n.data&&(e=Kr(e,n.data));return function(t,e){if(r(t)||r(e))return Jr(t,qr(e));return""}(e.staticClass,e.class)}function Kr(t,e){return{staticClass:Jr(t.staticClass,e.staticClass),class:r(t.class)?[t.class,e.class]:e.class}}function Jr(t,e){return t?e?t+" "+e:t:e||""}function qr(t){return Array.isArray(t)?function(t){for(var e,n="",o=0,i=t.length;o-1?bo(t,e,n):Fr(e)?zr(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Lr(e)?t.setAttribute(e,function(t,e){return zr(e)||"false"===e?"false":"contenteditable"===t&&Rr(e)?e:"true"}(e,n)):Br(e)?zr(n)?t.removeAttributeNS(Hr,Ur(e)):t.setAttributeNS(Hr,e,n):bo(t,e,n)}function bo(t,e,n){if(zr(n))t.removeAttribute(e);else{if(W&&!Z&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var $o={create:yo,update:yo};function wo(t,e){var o=e.elm,i=e.data,a=t.data;if(!(n(i.staticClass)&&n(i.class)&&(n(a)||n(a.staticClass)&&n(a.class)))){var s=Vr(e),c=o._transitionClasses;r(c)&&(s=Jr(s,qr(c))),s!==o._prevClass&&(o.setAttribute("class",s),o._prevClass=s)}}var xo,Co,ko,So,Oo,To,Ao={create:wo,update:wo},jo=/[\w).+\-_$\]]/;function Eo(t){var e,n,r,o,i,a=!1,s=!1,c=!1,u=!1,l=0,f=0,d=0,p=0;for(r=0;r=0&&" "===(h=t.charAt(v));v--);h&&jo.test(h)||(u=!0)}}else void 0===o?(p=r+1,o=t.slice(0,r).trim()):m();function m(){(i||(i=[])).push(t.slice(p,r).trim()),p=r+1}if(void 0===o?o=t.slice(0,r).trim():0!==p&&m(),i)for(r=0;r-1?{exp:t.slice(0,So),key:'"'+t.slice(So+1)+'"'}:{exp:t,key:null};Co=t,So=Oo=To=0;for(;!Wo();)Zo(ko=qo())?Xo(ko):91===ko&&Go(ko);return{exp:t.slice(0,Oo),key:t.slice(Oo+1,To)}}(t);return null===n.key?"".concat(t,"=").concat(e):"$set(".concat(n.exp,", ").concat(n.key,", ").concat(e,")")}function qo(){return Co.charCodeAt(++So)}function Wo(){return So>=xo}function Zo(t){return 34===t||39===t}function Go(t){var e=1;for(Oo=So;!Wo();)if(Zo(t=qo()))Xo(t);else if(91===t&&e++,93===t&&e--,0===e){To=So;break}}function Xo(t){for(var e=t;!Wo()&&(t=qo())!==e;);}var Yo,Qo="__r";function ti(t,e,n){var r=Yo;return function o(){var i=e.apply(null,arguments);null!==i&&ri(t,o,n,r)}}var ei=gn&&!(Q&&Number(Q[1])<=53);function ni(t,e,n,r){if(ei){var o=Xe,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Yo.addEventListener(t,e,et?{capture:n,passive:r}:n)}function ri(t,e,n,r){(r||Yo).removeEventListener(t,e._wrapper||e,n)}function oi(t,e){if(!n(t.data.on)||!n(e.data.on)){var o=e.data.on||{},i=t.data.on||{};Yo=e.elm||t.elm,function(t){if(r(t.__r)){var e=W?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}r(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(o),Wt(o,i,ni,ri,ti,e.context),Yo=void 0}}var ii,ai={create:oi,update:oi,destroy:function(t){return oi(t,ao)}};function si(t,e){if(!n(t.data.domProps)||!n(e.data.domProps)){var i,a,s=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(i in(r(u.__ob__)||o(u._v_attr_proxy))&&(u=e.data.domProps=T({},u)),c)i in u||(s[i]="");for(i in u){if(a=u[i],"textContent"===i||"innerHTML"===i){if(e.children&&(e.children.length=0),a===c[i])continue;1===s.childNodes.length&&s.removeChild(s.childNodes[0])}if("value"===i&&"PROGRESS"!==s.tagName){s._value=a;var l=n(a)?"":String(a);ci(s,l)&&(s.value=l)}else if("innerHTML"===i&&Gr(s.tagName)&&n(s.innerHTML)){(ii=ii||document.createElement("div")).innerHTML="".concat(a,"");for(var f=ii.firstChild;s.firstChild;)s.removeChild(s.firstChild);for(;f.firstChild;)s.appendChild(f.firstChild)}else if(a!==c[i])try{s[i]=a}catch(t){}}}}function ci(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,o=t._vModifiers;if(r(o)){if(o.number)return p(n)!==p(e);if(o.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var ui={create:si,update:si},li=b((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function fi(t){var e=di(t.style);return t.staticStyle?T(t.staticStyle,e):e}function di(t){return Array.isArray(t)?A(t):"string"==typeof t?li(t):t}var pi,vi=/^--/,hi=/\s*!important$/,mi=function(t,e,n){if(vi.test(e))t.style.setProperty(e,n);else if(hi.test(n))t.style.setProperty(k(e),n.replace(hi,""),"important");else{var r=yi(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split($i).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function xi(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split($i).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function Ci(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&T(e,ki(t.name||"v")),T(e,t),e}return"string"==typeof t?ki(t):void 0}}var ki=b((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),Si=J&&!Z,Oi="transition",Ti="animation",Ai="transition",ji="transitionend",Ei="animation",Ni="animationend";Si&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Ai="WebkitTransition",ji="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Ei="WebkitAnimation",Ni="webkitAnimationEnd"));var Pi=J?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function Di(t){Pi((function(){Pi(t)}))}function Mi(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),wi(t,e))}function Ii(t,e){t._transitionClasses&&g(t._transitionClasses,e),xi(t,e)}function Li(t,e,n){var r=Fi(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===Oi?ji:Ni,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n=Oi,l=a,f=i.length):e===Ti?u>0&&(n=Ti,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Oi:Ti:null)?n===Oi?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Oi&&Ri.test(r[Ai+"Property"])}}function Hi(t,e){for(;t.length1}function Ji(t,e){!0!==e.data.show&&Ui(e)}var qi=function(t){var a,s,c={},u=t.modules,l=t.nodeOps;for(a=0;av?b(t,n(o[g+1])?null:o[g+1].elm,o,p,g,i):p>g&&w(e,f,v)}(f,h,m,i,u):r(m)?(r(t.text)&&l.setTextContent(f,""),b(f,null,m,0,m.length-1,i)):r(h)?w(h,0,h.length-1):r(t.text)&&l.setTextContent(f,""):t.text!==e.text&&l.setTextContent(f,e.text),r(v)&&r(p=v.hook)&&r(p=p.postpatch)&&p(t,e)}}}function S(t,e,n){if(o(n)&&r(t.parent))t.parent.data.pendingInsert=e;else for(var i=0;i-1,a.selected!==i&&(a.selected=i);else if(P(Yi(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Xi(t,e){return e.every((function(e){return!P(e,t)}))}function Yi(t){return"_value"in t?t._value:t.value}function Qi(t){t.target.composing=!0}function ta(t){t.target.composing&&(t.target.composing=!1,ea(t.target,"input"))}function ea(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function na(t){return!t.componentInstance||t.data&&t.data.transition?t:na(t.componentInstance._vnode)}var ra={bind:function(t,e,n){var r=e.value,o=(n=na(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,Ui(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=na(n)).data&&n.data.transition?(n.data.show=!0,r?Ui(n,(function(){t.style.display=t.__vOriginalDisplay})):zi(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},oa={model:Wi,show:ra},ia={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function aa(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?aa(Ne(e.children)):t}function sa(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[w(r)]=o[r];return e}function ca(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var ua=function(t){return t.tag||_e(t)},la=function(t){return"show"===t.name},fa={name:"transition",props:ia,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(ua)).length){var r=this.mode,o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var a=aa(o);if(!a)return o;if(this._leaving)return ca(t,o);var s="__transition-".concat(this._uid,"-");a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=sa(this),u=this._vnode,l=aa(u);if(a.data.directives&&a.data.directives.some(la)&&(a.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(a,l)&&!_e(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=T({},c);if("out-in"===r)return this._leaving=!0,Zt(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),ca(t,o);if("in-out"===r){if(_e(a))return u;var d,p=function(){d()};Zt(c,"afterEnter",p),Zt(c,"enterCancelled",p),Zt(f,"delayLeave",(function(t){d=t}))}}return o}}},da=T({tag:String,moveClass:String},ia);delete da.mode;var pa={props:da,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=He(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=sa(this),s=0;s-1?Qr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:Qr[t]=/HTMLUnknownElement/.test(e.toString())},T(kr.options.directives,oa),T(kr.options.components,ga),kr.prototype.__patch__=J?qi:j,kr.prototype.$mount=function(t,e){return function(t,e,n){var r;t.$el=e,t.$options.render||(t.$options.render=ft),Ve(t,"beforeMount"),r=function(){t._update(t._render(),n)},new Kn(t,r,j,{before:function(){t._isMounted&&!t._isDestroyed&&Ve(t,"beforeUpdate")}},!0),n=!1;var o=t._preWatchers;if(o)for(var i=0;i\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,Aa=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+?\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ja="[a-zA-Z_][\\-\\.0-9_a-zA-Z".concat(B.source,"]*"),Ea="((?:".concat(ja,"\\:)?").concat(ja,")"),Na=new RegExp("^<".concat(Ea)),Pa=/^\s*(\/?)>/,Da=new RegExp("^<\\/".concat(Ea,"[^>]*>")),Ma=/^]+>/i,Ia=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Ba=/&(?:lt|gt|quot|amp|#39);/g,Ua=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,za=v("pre,textarea",!0),Va=function(t,e){return t&&za(t)&&"\n"===e[0]};function Ka(t,e){var n=e?Ua:Ba;return t.replace(n,(function(t){return Ha[t]}))}function Ja(t,e){for(var n,r,o=[],i=e.expectHTML,a=e.isUnaryTag||E,s=e.canBeLeftOpenTag||E,c=0,u=function(){if(n=t,r&&Ra(r)){var u=0,d=r.toLowerCase(),p=Fa[d]||(Fa[d]=new RegExp("([\\s\\S]*?)(]*>)","i"));w=t.replace(p,(function(t,n,r){return u=r.length,Ra(d)||"noscript"===d||(n=n.replace(//g,"$1").replace(//g,"$1")),Va(d,n)&&(n=n.slice(1)),e.chars&&e.chars(n),""}));c+=t.length-w.length,t=w,f(d,c-u,c)}else{var v=t.indexOf("<");if(0===v){if(Ia.test(t)){var h=t.indexOf("--\x3e");if(h>=0)return e.shouldKeepComment&&e.comment&&e.comment(t.substring(4,h),c,c+h+3),l(h+3),"continue"}if(La.test(t)){var m=t.indexOf("]>");if(m>=0)return l(m+2),"continue"}var g=t.match(Ma);if(g)return l(g[0].length),"continue";var y=t.match(Da);if(y){var _=c;return l(y[0].length),f(y[1],_,c),"continue"}var b=function(){var e=t.match(Na);if(e){var n={tagName:e[1],attrs:[],start:c};l(e[0].length);for(var r=void 0,o=void 0;!(r=t.match(Pa))&&(o=t.match(Aa)||t.match(Ta));)o.start=c,l(o[0].length),o.end=c,n.attrs.push(o);if(r)return n.unarySlash=r[1],l(r[0].length),n.end=c,n}}();if(b)return function(t){var n=t.tagName,c=t.unarySlash;i&&("p"===r&&Oa(n)&&f(r),s(n)&&r===n&&f(n));for(var u=a(n)||!!c,l=t.attrs.length,d=new Array(l),p=0;p=0){for(w=t.slice(v);!(Da.test(w)||Na.test(w)||Ia.test(w)||La.test(w)||(x=w.indexOf("<",1))<0);)v+=x,w=t.slice(v);$=t.substring(0,v)}v<0&&($=t),$&&l($.length),e.chars&&$&&e.chars($,c-$.length,c)}if(t===n)return e.chars&&e.chars(t),"break"};t;){if("break"===u())break}function l(e){c+=e,t=t.substring(e)}function f(t,n,i){var a,s;if(null==n&&(n=c),null==i&&(i=c),t)for(s=t.toLowerCase(),a=o.length-1;a>=0&&o[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=o.length-1;u>=a;u--)e.end&&e.end(o[u].tag,n,i);o.length=a,r=a&&o[a-1].tag}else"br"===s?e.start&&e.start(t,[],!0,n,i):"p"===s&&(e.start&&e.start(t,[],!1,n,i),e.end&&e.end(t,n,i))}f()}var qa,Wa,Za,Ga,Xa,Ya,Qa,ts,es=/^@|^v-on:/,ns=/^v-|^@|^:|^#/,rs=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,os=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,is=/^\(|\)$/g,as=/^\[.*\]$/,ss=/:(.*)$/,cs=/^:|^\.|^v-bind:/,us=/\.[^.\]]+(?=[^\]]*$)/g,ls=/^v-slot(:|$)|^#/,fs=/[\r\n]/,ds=/[ \f\t\r\n]+/g,ps=b(Ca),vs="_empty_";function hs(t,e,n){return{type:1,tag:t,attrsList:e,attrsMap:ws(e),rawAttrsMap:{},parent:n,children:[]}}function ms(t,e){qa=e.warn||Po,Ya=e.isPreTag||E,Qa=e.mustUseProp||E,ts=e.getTagNamespace||E,e.isReservedTag,Za=Do(e.modules,"transformNode"),Ga=Do(e.modules,"preTransformNode"),Xa=Do(e.modules,"postTransformNode"),Wa=e.delimiters;var n,r,o=[],i=!1!==e.preserveWhitespace,a=e.whitespace,s=!1,c=!1;function u(t){if(l(t),s||t.processed||(t=gs(t,e)),o.length||t===n||n.if&&(t.elseif||t.else)&&_s(n,{exp:t.elseif,block:t}),r&&!t.forbidden)if(t.elseif||t.else)a=t,u=function(t){for(var e=t.length;e--;){if(1===t[e].type)return t[e];t.pop()}}(r.children),u&&u.if&&_s(u,{exp:a.elseif,block:a});else{if(t.slotScope){var i=t.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[i]=t}r.children.push(t),t.parent=r}var a,u;t.children=t.children.filter((function(t){return!t.slotScope})),l(t),t.pre&&(s=!1),Ya(t.tag)&&(c=!1);for(var f=0;fc&&(s.push(i=t.slice(c,o)),a.push(JSON.stringify(i)));var u=Eo(r[1].trim());a.push("_s(".concat(u,")")),s.push({"@binding":u}),c=o+r[0].length}return c-1")+("true"===i?":(".concat(e,")"):":_q(".concat(e,",").concat(i,")"))),Ho(t,"change","var $$a=".concat(e,",")+"$$el=$event.target,"+"$$c=$$el.checked?(".concat(i,"):(").concat(a,");")+"if(Array.isArray($$a)){"+"var $$v=".concat(r?"_n("+o+")":o,",")+"$$i=_i($$a,$$v);"+"if($$el.checked){$$i<0&&(".concat(Jo(e,"$$a.concat([$$v])"),")}")+"else{$$i>-1&&(".concat(Jo(e,"$$a.slice(0,$$i).concat($$a.slice($$i+1))"),")}")+"}else{".concat(Jo(e,"$$c"),"}"),null,!0)}(t,r,o);else if("input"===i&&"radio"===a)!function(t,e,n){var r=n&&n.number,o=Bo(t,"value")||"null";o=r?"_n(".concat(o,")"):o,Mo(t,"checked","_q(".concat(e,",").concat(o,")")),Ho(t,"change",Jo(e,o),null,!0)}(t,r,o);else if("input"===i||"textarea"===i)!function(t,e,n){var r=t.attrsMap.type,o=n||{},i=o.lazy,a=o.number,s=o.trim,c=!i&&"range"!==r,u=i?"change":"range"===r?Qo:"input",l="$event.target.value";s&&(l="$event.target.value.trim()");a&&(l="_n(".concat(l,")"));var f=Jo(e,l);c&&(f="if($event.target.composing)return;".concat(f));Mo(t,"value","(".concat(e,")")),Ho(t,u,f,null,!0),(s||a)&&Ho(t,"blur","$forceUpdate()")}(t,r,o);else if(!H.isReservedTag(i))return Ko(t,r,o),!1;return!0},text:function(t,e){e.value&&Mo(t,"textContent","_s(".concat(e.value,")"),e)},html:function(t,e){e.value&&Mo(t,"innerHTML","_s(".concat(e.value,")"),e)}},js={expectHTML:!0,modules:Ss,directives:As,isPreTag:function(t){return"pre"===t},isUnaryTag:ka,mustUseProp:Ir,canBeLeftOpenTag:Sa,isReservedTag:Xr,getTagNamespace:Yr,staticKeys:function(t){return t.reduce((function(t,e){return t.concat(e.staticKeys||[])}),[]).join(",")}(Ss)},Es=b((function(t){return v("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(t?","+t:""))}));function Ns(t,e){t&&(Os=Es(e.staticKeys||""),Ts=e.isReservedTag||E,Ps(t),Ds(t,!1))}function Ps(t){if(t.static=function(t){if(2===t.type)return!1;if(3===t.type)return!0;return!(!t.pre&&(t.hasBindings||t.if||t.for||h(t.tag)||!Ts(t.tag)||function(t){for(;t.parent;){if("template"!==(t=t.parent).tag)return!1;if(t.for)return!0}return!1}(t)||!Object.keys(t).every(Os)))}(t),1===t.type){if(!Ts(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var e=0,n=t.children.length;e|^function(?:\s+[\w$]+)?\s*\(/,Is=/\([^)]*?\);*$/,Ls=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Rs={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Fs={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Hs=function(t){return"if(".concat(t,")return null;")},Bs={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Hs("$event.target !== $event.currentTarget"),ctrl:Hs("!$event.ctrlKey"),shift:Hs("!$event.shiftKey"),alt:Hs("!$event.altKey"),meta:Hs("!$event.metaKey"),left:Hs("'button' in $event && $event.button !== 0"),middle:Hs("'button' in $event && $event.button !== 1"),right:Hs("'button' in $event && $event.button !== 2")};function Us(t,e){var n=e?"nativeOn:":"on:",r="",o="";for(var i in t){var a=zs(t[i]);t[i]&&t[i].dynamic?o+="".concat(i,",").concat(a,","):r+='"'.concat(i,'":').concat(a,",")}return r="{".concat(r.slice(0,-1),"}"),o?n+"_d(".concat(r,",[").concat(o.slice(0,-1),"])"):n+r}function zs(t){if(!t)return"function(){}";if(Array.isArray(t))return"[".concat(t.map((function(t){return zs(t)})).join(","),"]");var e=Ls.test(t.value),n=Ms.test(t.value),r=Ls.test(t.value.replace(Is,""));if(t.modifiers){var o="",i="",a=[],s=function(e){if(Bs[e])i+=Bs[e],Rs[e]&&a.push(e);else if("exact"===e){var n=t.modifiers;i+=Hs(["ctrl","shift","alt","meta"].filter((function(t){return!n[t]})).map((function(t){return"$event.".concat(t,"Key")})).join("||"))}else a.push(e)};for(var c in t.modifiers)s(c);a.length&&(o+=function(t){return"if(!$event.type.indexOf('key')&&"+"".concat(t.map(Vs).join("&&"),")return null;")}(a)),i&&(o+=i);var u=e?"return ".concat(t.value,".apply(null, arguments)"):n?"return (".concat(t.value,").apply(null, arguments)"):r?"return ".concat(t.value):t.value;return"function($event){".concat(o).concat(u,"}")}return e||n?t.value:"function($event){".concat(r?"return ".concat(t.value):t.value,"}")}function Vs(t){var e=parseInt(t,10);if(e)return"$event.keyCode!==".concat(e);var n=Rs[t],r=Fs[t];return"_k($event.keyCode,"+"".concat(JSON.stringify(t),",")+"".concat(JSON.stringify(n),",")+"$event.key,"+"".concat(JSON.stringify(r))+")"}var Ks={on:function(t,e){t.wrapListeners=function(t){return"_g(".concat(t,",").concat(e.value,")")}},bind:function(t,e){t.wrapData=function(n){return"_b(".concat(n,",'").concat(t.tag,"',").concat(e.value,",").concat(e.modifiers&&e.modifiers.prop?"true":"false").concat(e.modifiers&&e.modifiers.sync?",true":"",")")}},cloak:j},Js=function(t){this.options=t,this.warn=t.warn||Po,this.transforms=Do(t.modules,"transformCode"),this.dataGenFns=Do(t.modules,"genData"),this.directives=T(T({},Ks),t.directives);var e=t.isReservedTag||E;this.maybeComponent=function(t){return!!t.component||!e(t.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function qs(t,e){var n=new Js(e),r=t?"script"===t.tag?"null":Ws(t,n):'_c("div")';return{render:"with(this){return ".concat(r,"}"),staticRenderFns:n.staticRenderFns}}function Ws(t,e){if(t.parent&&(t.pre=t.pre||t.parent.pre),t.staticRoot&&!t.staticProcessed)return Zs(t,e);if(t.once&&!t.onceProcessed)return Gs(t,e);if(t.for&&!t.forProcessed)return Qs(t,e);if(t.if&&!t.ifProcessed)return Xs(t,e);if("template"!==t.tag||t.slotTarget||e.pre){if("slot"===t.tag)return function(t,e){var n=t.slotName||'"default"',r=rc(t,e),o="_t(".concat(n).concat(r?",function(){return ".concat(r,"}"):""),i=t.attrs||t.dynamicAttrs?ac((t.attrs||[]).concat(t.dynamicAttrs||[]).map((function(t){return{name:w(t.name),value:t.value,dynamic:t.dynamic}}))):null,a=t.attrsMap["v-bind"];!i&&!a||r||(o+=",null");i&&(o+=",".concat(i));a&&(o+="".concat(i?"":",null",",").concat(a));return o+")"}(t,e);var n=void 0;if(t.component)n=function(t,e,n){var r=e.inlineTemplate?null:rc(e,n,!0);return"_c(".concat(t,",").concat(tc(e,n)).concat(r?",".concat(r):"",")")}(t.component,t,e);else{var r=void 0,o=e.maybeComponent(t);(!t.plain||t.pre&&o)&&(r=tc(t,e));var i=void 0,a=e.options.bindings;o&&a&&!1!==a.__isScriptSetup&&(i=function(t,e){var n=w(e),r=x(n),o=function(o){return t[e]===o?e:t[n]===o?n:t[r]===o?r:void 0},i=o("setup-const")||o("setup-reactive-const");if(i)return i;var a=o("setup-let")||o("setup-ref")||o("setup-maybe-ref");if(a)return a}(a,t.tag)),i||(i="'".concat(t.tag,"'"));var s=t.inlineTemplate?null:rc(t,e,!0);n="_c(".concat(i).concat(r?",".concat(r):"").concat(s?",".concat(s):"",")")}for(var c=0;c>>0}(a)):"",")")}(t,t.scopedSlots,e),",")),t.model&&(n+="model:{value:".concat(t.model.value,",callback:").concat(t.model.callback,",expression:").concat(t.model.expression,"},")),t.inlineTemplate){var i=function(t,e){var n=t.children[0];if(n&&1===n.type){var r=qs(n,e.options);return"inlineTemplate:{render:function(){".concat(r.render,"},staticRenderFns:[").concat(r.staticRenderFns.map((function(t){return"function(){".concat(t,"}")})).join(","),"]}")}}(t,e);i&&(n+="".concat(i,","))}return n=n.replace(/,$/,"")+"}",t.dynamicAttrs&&(n="_b(".concat(n,',"').concat(t.tag,'",').concat(ac(t.dynamicAttrs),")")),t.wrapData&&(n=t.wrapData(n)),t.wrapListeners&&(n=t.wrapListeners(n)),n}function ec(t){return 1===t.type&&("slot"===t.tag||t.children.some(ec))}function nc(t,e){var n=t.attrsMap["slot-scope"];if(t.if&&!t.ifProcessed&&!n)return Xs(t,e,nc,"null");if(t.for&&!t.forProcessed)return Qs(t,e,nc);var r=t.slotScope===vs?"":String(t.slotScope),o="function(".concat(r,"){")+"return ".concat("template"===t.tag?t.if&&n?"(".concat(t.if,")?").concat(rc(t,e)||"undefined",":undefined"):rc(t,e)||"undefined":Ws(t,e),"}"),i=r?"":",proxy:true";return"{key:".concat(t.slotTarget||'"default"',",fn:").concat(o).concat(i,"}")}function rc(t,e,n,r,o){var i=t.children;if(i.length){var a=i[0];if(1===i.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?e.maybeComponent(a)?",1":",0":"";return"".concat((r||Ws)(a,e)).concat(s)}var c=n?function(t,e){for(var n=0,r=0;r':'
        ',fc.innerHTML.indexOf(" ")>0}var hc=!!J&&vc(!1),mc=!!J&&vc(!0),gc=b((function(t){var e=eo(t);return e&&e.innerHTML})),yc=kr.prototype.$mount;return kr.prototype.$mount=function(t,e){if((t=t&&eo(t))===document.body||t===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=gc(r));else{if(!r.nodeType)return this;r=r.innerHTML}else t&&(r=function(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}(t));if(r){var o=pc(r,{outputSourceRange:!1,shouldDecodeNewlines:hc,shouldDecodeNewlinesForHref:mc,delimiters:n.delimiters,comments:n.comments},this),i=o.render,a=o.staticRenderFns;n.render=i,n.staticRenderFns=a}}return yc.call(this,t,e)},kr.compile=pc,T(kr,Hn),kr.effect=function(t,e){var n=new Kn(ct,t,j,{sync:!0});e&&(n.update=function(){e((function(){return n.run()}))})},kr})); \ No newline at end of file diff --git a/panel/dist/ui/Activation.json b/panel/dist/ui/Activation.json new file mode 100644 index 0000000000..d808fd56e2 --- /dev/null +++ b/panel/dist/ui/Activation.json @@ -0,0 +1 @@ +{"displayName":"Activation","description":"","tags":{},"component":"k-activation","sourceFile":"src/components/View/Activation.vue"} \ No newline at end of file diff --git a/panel/dist/ui/CheckboxesField.json b/panel/dist/ui/CheckboxesField.json index f611ecfd67..a95cca6b5e 100644 --- a/panel/dist/ui/CheckboxesField.json +++ b/panel/dist/ui/CheckboxesField.json @@ -1 +1 @@ -{"displayName":"CheckboxesField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"},"description":"The value for the input should be provided as array. Each value in the array corresponds with the value in the options. If you provide a string, the string will be split by comma."},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"},"defaultValue":{"value":"1"}},{"name":"max","type":{"name":"number"}},{"name":"min","type":{"name":"number"}},{"name":"theme","type":{"name":"string"}}],"events":[{"name":"focus"},{"name":"blur"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-checkboxes-field","sourceFile":"src/components/Forms/Field/CheckboxesField.vue"} \ No newline at end of file +{"displayName":"CheckboxesField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"},"description":"The value for the input should be provided as array. Each value in the array corresponds with the value in the options. If you provide a string, the string will be split by comma."},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"},"defaultValue":{"value":"1"}},{"name":"max","type":{"name":"number"}},{"name":"min","type":{"name":"number"}},{"name":"theme","type":{"name":"string"}}],"events":[{"name":"focus"},{"name":"blur"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-checkboxes-field","sourceFile":"src/components/Forms/Field/CheckboxesField.vue"} \ No newline at end of file diff --git a/panel/dist/ui/CheckboxesInput.json b/panel/dist/ui/CheckboxesInput.json index ac0419ee26..cd0350ff54 100644 --- a/panel/dist/ui/CheckboxesInput.json +++ b/panel/dist/ui/CheckboxesInput.json @@ -1 +1 @@ -{"displayName":"CheckboxesInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"},"defaultValue":{"value":"1"}},{"name":"max","type":{"name":"number"}},{"name":"min","type":{"name":"number"}},{"name":"theme","type":{"name":"string"}},{"name":"value","description":"The value for the input should be provided as array. Each value in the array corresponds with the value in the options. If you provide a string, the string will be split by comma.","type":{"name":"array"},"defaultValue":{"value":"[]"}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-checkboxes-input","sourceFile":"src/components/Forms/Input/CheckboxesInput.vue"} \ No newline at end of file +{"displayName":"CheckboxesInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"},"defaultValue":{"value":"1"}},{"name":"max","type":{"name":"number"}},{"name":"min","type":{"name":"number"}},{"name":"theme","type":{"name":"string"}},{"name":"value","description":"The value for the input should be provided as array. Each value in the array corresponds with the value in the options. If you provide a string, the string will be split by comma.","type":{"name":"array"},"defaultValue":{"value":"[]"}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-checkboxes-input","sourceFile":"src/components/Forms/Input/CheckboxesInput.vue"} \ No newline at end of file diff --git a/panel/dist/ui/ColoroptionsInput.json b/panel/dist/ui/ColoroptionsInput.json index de3a0552d3..2e6fe1eab1 100644 --- a/panel/dist/ui/ColoroptionsInput.json +++ b/panel/dist/ui/ColoroptionsInput.json @@ -1 +1 @@ -{"displayName":"ColoroptionsInput","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}],"examples":[{"title":"example","content":""}]},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"}},{"name":"reset","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"theme","type":{"name":"string"}},{"name":"value","type":{"name":"string"}},{"name":"format","tags":{},"values":["\"hex\"","\"rgb\"","\"hsl\""],"type":{"name":"string"},"defaultValue":{"value":"\"hex\""}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-coloroptions-input","sourceFile":"src/components/Forms/Input/ColoroptionsInput.vue"} \ No newline at end of file +{"displayName":"ColoroptionsInput","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}],"examples":[{"title":"example","content":""}]},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"}},{"name":"reset","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"theme","type":{"name":"string"}},{"name":"value","type":{"name":"string"}},{"name":"format","tags":{},"values":["\"hex\"","\"rgb\"","\"hsl\""],"type":{"name":"string"},"defaultValue":{"value":"\"hex\""}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-coloroptions-input","sourceFile":"src/components/Forms/Input/ColoroptionsInput.vue"} \ No newline at end of file diff --git a/panel/dist/ui/ColorpickerInput.json b/panel/dist/ui/ColorpickerInput.json index 4601ab8849..0f93db8c1d 100644 --- a/panel/dist/ui/ColorpickerInput.json +++ b/panel/dist/ui/ColorpickerInput.json @@ -1 +1 @@ -{"displayName":"ColorpickerInput","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}]},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"alpha","description":"Show the alpha tange input","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"format","tags":{},"values":["\"hex\"","\"rgb\"","\"hsl\""],"type":{"name":"string"},"defaultValue":{"value":"\"hex\""}},{"name":"value","type":{"name":"object|string"}}],"events":[{"name":"input","type":{"names":["undefined"]}}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-colorpicker-input","sourceFile":"src/components/Forms/Input/ColorpickerInput.vue"} \ No newline at end of file +{"displayName":"ColorpickerInput","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}]},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"alpha","description":"Show the alpha tange input","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"format","tags":{},"values":["\"hex\"","\"rgb\"","\"hsl\""],"type":{"name":"string"},"defaultValue":{"value":"\"hex\""}},{"name":"value","type":{"name":"object|string"}}],"events":[{"name":"input","type":{"names":["undefined"]}}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-colorpicker-input","sourceFile":"src/components/Forms/Input/ColorpickerInput.vue"} \ No newline at end of file diff --git a/panel/dist/ui/Header.json b/panel/dist/ui/Header.json index 77d07e2cd2..0a317e9b7e 100644 --- a/panel/dist/ui/Header.json +++ b/panel/dist/ui/Header.json @@ -1 +1 @@ -{"description":"Sticky header containing headline (with optional edit button)\nand optional buttons","tags":{"examples":[{"title":"example","content":"Headline"},{"title":"example","content":"\n\tHeadline\n\n\t\n\t\t\n\t\t\n\t\n"}]},"displayName":"Header","props":[{"name":"editable","description":"Whether the headline is editable","type":{"name":"boolean"}}],"events":[{"name":"edit","description":"Edit button has been clicked"}],"slots":[{"name":"default","description":"Headline text"},{"name":"buttons","description":"Position for optional buttons opposite the headline"},{"name":"left","tags":{"deprecated":[{"description":"4.0.0 left slot, use buttons slot instead","title":"deprecated"}]}},{"name":"right","tags":{"deprecated":[{"description":"4.0.0 right slot, use buttons slot instead","title":"deprecated"}]}}],"component":"k-header","sourceFile":"src/components/Layout/Header.vue"} \ No newline at end of file +{"description":"Sticky header containing headline (with optional edit button)\nand optional buttons","tags":{"examples":[{"title":"example","content":"Headline"},{"title":"example","content":"\n\tHeadline\n\n\t\n\t\t\n\t\t\n\t\n"}]},"displayName":"Header","props":[{"name":"editable","description":"Whether the headline is editable","type":{"name":"boolean"}},{"name":"tabs","tags":{"deprecated":[{"description":"4.0.0 Has no effect anymore, use `k-tabs` as standalone component instead","title":"deprecated"}]},"type":{"name":"array"}}],"events":[{"name":"edit","description":"Edit button has been clicked"}],"slots":[{"name":"default","description":"Headline text"},{"name":"buttons","description":"Position for optional buttons opposite the headline"},{"name":"left","tags":{"deprecated":[{"description":"4.0.0 left slot, use buttons slot instead","title":"deprecated"}]}},{"name":"right","tags":{"deprecated":[{"description":"4.0.0 right slot, use buttons slot instead","title":"deprecated"}]}}],"component":"k-header","sourceFile":"src/components/Layout/Header.vue"} \ No newline at end of file diff --git a/panel/dist/ui/LinkField.json b/panel/dist/ui/LinkField.json index 03983bf6e6..312c5cba7a 100644 --- a/panel/dist/ui/LinkField.json +++ b/panel/dist/ui/LinkField.json @@ -1 +1 @@ -{"displayName":"LinkField","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}],"examples":[{"title":"example","content":""}]},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean|object"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string"},"defaultValue":{"value":"\"\""}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input","type":{"names":["undefined"]}}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-link-field","sourceFile":"src/components/Forms/Field/LinkField.vue"} \ No newline at end of file +{"displayName":"LinkField","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}],"examples":[{"title":"example","content":""}]},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean|object"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string"},"defaultValue":{"value":"\"\""}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input","type":{"names":["undefined"]}}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-link-field","sourceFile":"src/components/Forms/Field/LinkField.vue"} \ No newline at end of file diff --git a/panel/dist/ui/MultiselectField.json b/panel/dist/ui/MultiselectField.json index 1bfe7a4fc7..7987944149 100644 --- a/panel/dist/ui/MultiselectField.json +++ b/panel/dist/ui/MultiselectField.json @@ -1 +1 @@ -{"displayName":"MultiselectField","description":"Have a look at ``.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string|boolean|number|object|array"},"defaultValue":{"value":"null"}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-multiselect-field","sourceFile":"src/components/Forms/Field/MultiselectField.vue"} \ No newline at end of file +{"displayName":"MultiselectField","description":"Have a look at ``.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"},"description":"Sets the focus on this field when the form loads. Only the first field with this label gets"},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"ignore","description":"Which terms to ignore when showing the create button","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"search","description":"Whether to show the search input","tags":{"value":[{"description":"false | true | { min, placeholder }","title":"value"}]},"type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"layout","description":"You can set the layout to `\"list\"` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"sort","description":"Whether to sort the tags by the available options","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"accept","description":"Whether to accept only options or also custom tags","tags":{},"values":["\"all\"","\"options\""],"type":{"name":"string"},"defaultValue":{"value":"\"all\""}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input"},{"name":"escape"},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default","description":"Place stuff here in the non-draggable footer"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-multiselect-field","sourceFile":"src/components/Forms/Field/MultiselectField.vue"} \ No newline at end of file diff --git a/panel/dist/ui/MultiselectInput.json b/panel/dist/ui/MultiselectInput.json index d351ed6c9d..c3f4984bb2 100644 --- a/panel/dist/ui/MultiselectInput.json +++ b/panel/dist/ui/MultiselectInput.json @@ -1 +1 @@ -{"displayName":"MultiselectInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"accept","type":{"name":"string"},"defaultValue":{"value":"\"string\""}},{"name":"icon","type":{"name":"string"}},{"name":"ignore","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"options","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"search","type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"draggable","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"layout","description":"You can set the layout to `list` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"sort","type":{"name":"boolean"},"defaultValue":{"value":"false"}}],"events":[{"name":"input"},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-multiselect-input","sourceFile":"src/components/Forms/Input/MultiselectInput.vue"} \ No newline at end of file +{"displayName":"MultiselectInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"ignore","description":"Which terms to ignore when showing the create button","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"search","description":"Whether to show the search input","tags":{"value":[{"description":"false | true | { min, placeholder }","title":"value"}]},"type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"layout","description":"You can set the layout to `\"list\"` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"sort","description":"Whether to sort the tags by the available options","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}}],"events":[{"name":"input"},{"name":"escape"},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"slots":[{"name":"default","description":"Place stuff here in the non-draggable footer"}],"component":"k-multiselect-input","sourceFile":"src/components/Forms/Input/MultiselectInput.vue"} \ No newline at end of file diff --git a/panel/dist/ui/PicklistDropdown.json b/panel/dist/ui/PicklistDropdown.json new file mode 100644 index 0000000000..42f7d989d8 --- /dev/null +++ b/panel/dist/ui/PicklistDropdown.json @@ -0,0 +1 @@ +{"displayName":"PicklistDropdown","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}]},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"ignore","description":"Which terms to ignore when showing the create button","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"search","description":"Whether to show the search input","tags":{"value":[{"description":"false | true | { min, placeholder }","title":"value"}]},"type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"create","description":"Whether to show the create button","tags":{"value":[{"description":"false | true | { submit }","title":"value"}]},"type":{"name":"boolean|object"},"defaultValue":{"value":"false"}},{"name":"multiple","description":"Whether to allow multiple selections","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"array|string"},"defaultValue":{"value":"() => []"}}],"events":[{"name":"escape"},{"name":"create","description":"Create new from input","type":{"names":["undefined"]},"properties":[{"type":{"names":["string"]},"name":"input"}]},{"name":"input","description":"Updated values","type":{"names":["undefined"]},"properties":[{"type":{"names":["array"]},"name":"values"}]}],"component":"k-picklist-dropdown","sourceFile":"src/components/Dropdowns/PicklistDropdown.vue"} \ No newline at end of file diff --git a/panel/dist/ui/PicklistInput.json b/panel/dist/ui/PicklistInput.json new file mode 100644 index 0000000000..828f452ea8 --- /dev/null +++ b/panel/dist/ui/PicklistInput.json @@ -0,0 +1 @@ +{"displayName":"PicklistInput","description":"A filterable list of checkbox/radio options\nwith an optional create button","tags":{"since":[{"description":"4.0.0","title":"since"}],"examples":[{"title":"example","content":""}]},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"ignore","description":"Which terms to ignore when showing the create button","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"search","description":"Whether to show the search input","tags":{"value":[{"description":"false | true | { min, placeholder }","title":"value"}]},"type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"create","description":"Whether to show the create button","tags":{"value":[{"description":"false | true | { submit }","title":"value"}]},"type":{"name":"boolean|object"},"defaultValue":{"value":"false"}},{"name":"multiple","description":"Whether to allow multiple selections","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"array|string"},"defaultValue":{"value":"() => []"}}],"events":[{"name":"escape","description":"Escape key was hit to close the list"},{"name":"input","type":{"names":["undefined"]},"description":"Selected values have changed","properties":[{"type":{"names":["array"]},"name":"values"}]},{"name":"invalid","description":"Validation failed","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]},{"name":"create","description":"New option shall be created from input","type":{"names":["undefined"]},"properties":[{"type":{"names":["string"]},"name":"input"}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-picklist-input","sourceFile":"src/components/Forms/Input/PicklistInput.vue"} \ No newline at end of file diff --git a/panel/dist/ui/RadioField.json b/panel/dist/ui/RadioField.json index 064ebec683..dcbc7d13c2 100644 --- a/panel/dist/ui/RadioField.json +++ b/panel/dist/ui/RadioField.json @@ -1 +1 @@ -{"displayName":"RadioField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean|object"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string|number|boolean"},"defaultValue":{"value":"null"}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"}},{"name":"reset","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"theme","type":{"name":"string"}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-radio-field","sourceFile":"src/components/Forms/Field/RadioField.vue"} \ No newline at end of file +{"displayName":"RadioField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean|object"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string|number|boolean"},"defaultValue":{"value":"null"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"}},{"name":"reset","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"theme","type":{"name":"string"}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-radio-field","sourceFile":"src/components/Forms/Field/RadioField.vue"} \ No newline at end of file diff --git a/panel/dist/ui/RadioInput.json b/panel/dist/ui/RadioInput.json index e7b610d385..ed4d6ad66b 100644 --- a/panel/dist/ui/RadioInput.json +++ b/panel/dist/ui/RadioInput.json @@ -1 +1 @@ -{"displayName":"RadioInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"}},{"name":"reset","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"theme","type":{"name":"string"}},{"name":"value","type":{"name":"string|number|boolean"}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-radio-input","sourceFile":"src/components/Forms/Input/RadioInput.vue"} \ No newline at end of file +{"displayName":"RadioInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"columns","type":{"name":"number"}},{"name":"reset","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"theme","type":{"name":"string"}},{"name":"value","type":{"name":"string|number|boolean"}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-radio-input","sourceFile":"src/components/Forms/Input/RadioInput.vue"} \ No newline at end of file diff --git a/panel/dist/ui/SelectField.json b/panel/dist/ui/SelectField.json index bb28959673..fe8695ef81 100644 --- a/panel/dist/ui/SelectField.json +++ b/panel/dist/ui/SelectField.json @@ -1 +1 @@ -{"displayName":"SelectField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean|object"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string"},"defaultValue":{"value":"\"angle-down\""}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string|number|boolean"},"defaultValue":{"value":"\"\""}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"placeholder","description":"Custom placeholder text, when the field is empty","type":{"name":"number|string"}},{"name":"ariaLabel","type":{"name":"string"}},{"name":"default","type":{"name":"string"}},{"name":"empty","description":"The text, that is shown as the first empty option, when the field is not required.","type":{"name":"boolean|string"},"defaultValue":{"value":"true"}}],"events":[{"name":"focus"},{"name":"blur"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-select-field","sourceFile":"src/components/Forms/Field/SelectField.vue"} \ No newline at end of file +{"displayName":"SelectField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean|object"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string"},"defaultValue":{"value":"\"angle-down\""}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string|number|boolean"},"defaultValue":{"value":"\"\""}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"placeholder","description":"Custom placeholder text, when the field is empty","type":{"name":"number|string"}},{"name":"ariaLabel","type":{"name":"string"}},{"name":"default","type":{"name":"string"}},{"name":"empty","description":"The text, that is shown as the first empty option, when the field is not required.","type":{"name":"boolean|string"},"defaultValue":{"value":"true"}}],"events":[{"name":"focus"},{"name":"blur"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-select-field","sourceFile":"src/components/Forms/Field/SelectField.vue"} \ No newline at end of file diff --git a/panel/dist/ui/SelectInput.json b/panel/dist/ui/SelectInput.json index 22fd799793..40ed4a6321 100644 --- a/panel/dist/ui/SelectInput.json +++ b/panel/dist/ui/SelectInput.json @@ -1 +1 @@ -{"displayName":"SelectInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects `{ value, text, info }`","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"placeholder","description":"Custom placeholder text, when the field is empty","type":{"name":"number|string"}},{"name":"ariaLabel","type":{"name":"string"}},{"name":"default","type":{"name":"string"}},{"name":"empty","description":"The text, that is shown as the first empty option, when the field is not required.","type":{"name":"boolean|string"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"string|number|boolean"},"defaultValue":{"value":"\"\""}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"click","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-select-input","sourceFile":"src/components/Forms/Input/SelectInput.vue"} \ No newline at end of file +{"displayName":"SelectInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"placeholder","description":"Custom placeholder text, when the field is empty","type":{"name":"number|string"}},{"name":"ariaLabel","type":{"name":"string"}},{"name":"default","type":{"name":"string"}},{"name":"empty","description":"The text, that is shown as the first empty option, when the field is not required.","type":{"name":"boolean|string"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"string|number|boolean"},"defaultValue":{"value":"\"\""}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"click","type":{"names":["undefined"]}},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-select-input","sourceFile":"src/components/Forms/Input/SelectInput.vue"} \ No newline at end of file diff --git a/panel/dist/ui/Selector.json b/panel/dist/ui/Selector.json deleted file mode 100644 index 6fae379699..0000000000 --- a/panel/dist/ui/Selector.json +++ /dev/null @@ -1 +0,0 @@ -{"description":"","tags":{"since":[{"description":"4.0.0","title":"since"}]},"displayName":"Selector","props":[{"name":"accept","type":{"name":"string"},"defaultValue":{"value":"\"all\""}},{"name":"icon","type":{"name":"string"}},{"name":"ignore","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"options","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"search","type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"string"}}],"events":[{"name":"create","type":{"names":["undefined"]}},{"name":"escape"},{"name":"pick","type":{"names":["undefined"]}},{"name":"select","type":{"names":["undefined"]}}],"component":"k-selector","sourceFile":"src/components/Forms/Selector.vue"} \ No newline at end of file diff --git a/panel/dist/ui/SelectorDropdown.json b/panel/dist/ui/SelectorDropdown.json deleted file mode 100644 index 7161cfd110..0000000000 --- a/panel/dist/ui/SelectorDropdown.json +++ /dev/null @@ -1 +0,0 @@ -{"displayName":"SelectorDropdown","description":"","tags":{"since":[{"description":"4.0.0","title":"since"}]},"props":[{"name":"accept","type":{"name":"string"},"defaultValue":{"value":"\"all\""}},{"name":"icon","type":{"name":"string"}},{"name":"ignore","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"options","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"search","type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"string"}},{"name":"align","type":{"name":"string"}},{"name":"disabled","type":{"name":"boolean"}}],"events":[{"name":"create","type":{"names":["undefined"]}},{"name":"select","type":{"names":["undefined"]}}],"slots":[{"name":"default"}],"component":"k-selector-dropdown","sourceFile":"src/components/Dropdowns/SelectorDropdown.vue"} \ No newline at end of file diff --git a/panel/dist/ui/Stat.json b/panel/dist/ui/Stat.json index 605dcc5045..7d668576e1 100644 --- a/panel/dist/ui/Stat.json +++ b/panel/dist/ui/Stat.json @@ -1 +1 @@ -{"description":"Single stat report used in `k-stats`","tags":{"since":[{"description":"4.0.0","title":"since"}],"examples":[{"title":"example","content":""}]},"displayName":"Stat","props":[{"name":"label","description":"Label text of the stat (2nd line)","type":{"name":"string"}},{"name":"value","description":"Main text of the stat (1st line)","type":{"name":"string"}},{"name":"info","description":"Additional text of the stat (3rd line)","type":{"name":"string"}},{"name":"theme","tags":{},"values":["\"negative\"","\"positive\"","\"warning\"","\"info\""],"type":{"name":"string"}},{"name":"link","description":"Absolute or relative URL","type":{"name":"string"}},{"name":"click","description":"Function to be called when clicked","type":{"name":"func"}},{"name":"dialog","description":"Dialog endpoint or options to be passed to `this.$dialog`","type":{"name":"string|object"}}],"component":"k-stat","sourceFile":"src/components/Layout/Stat.vue"} \ No newline at end of file +{"description":"Single stat report used in `k-stats`","tags":{"since":[{"description":"4.0.0","title":"since"}],"examples":[{"title":"example","content":""}]},"displayName":"Stat","props":[{"name":"label","description":"Label text of the stat (2nd line)","type":{"name":"string"}},{"name":"value","description":"Main text of the stat (1st line)","type":{"name":"string"}},{"name":"icon","description":"Additional icon for the stat","tags":{"since":[{"description":"4.0.0","title":"since"}]},"type":{"name":"string"}},{"name":"info","description":"Additional text of the stat (3rd line)","type":{"name":"string"}},{"name":"theme","tags":{},"values":["\"negative\"","\"positive\"","\"warning\"","\"info\""],"type":{"name":"string"}},{"name":"link","description":"Absolute or relative URL","type":{"name":"string"}},{"name":"click","description":"Function to be called when clicked","type":{"name":"func"}},{"name":"dialog","description":"Dialog endpoint or options to be passed to `this.$dialog`","type":{"name":"string|object"}}],"component":"k-stat","sourceFile":"src/components/Layout/Stat.vue"} \ No newline at end of file diff --git a/panel/dist/ui/Tags.json b/panel/dist/ui/Tags.json index 00d1cb5356..b54aa61165 100644 --- a/panel/dist/ui/Tags.json +++ b/panel/dist/ui/Tags.json @@ -1 +1 @@ -{"displayName":"Tags","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"accept","type":{"name":"string"},"defaultValue":{"value":"\"all\""}},{"name":"icon","type":{"name":"string"}},{"name":"ignore","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"options","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"search","type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"draggable","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"layout","description":"You can set the layout to `list` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"sort","type":{"name":"boolean"},"defaultValue":{"value":"false"}}],"events":[{"name":"input","type":{"names":["undefined"]}}],"component":"k-tags","sourceFile":"src/components/Navigation/Tags.vue"} \ No newline at end of file +{"displayName":"Tags","description":"","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"layout","description":"You can set the layout to `\"list\"` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"sort","description":"Whether to sort the tags by the available options","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"draggable","description":"Whether the tags can by sorted manually by dragging\n(not available when `sort` is `true`)","type":{"name":"boolean"},"defaultValue":{"value":"true"}}],"events":[{"name":"edit","description":"Tag was double-clicked","type":{"names":["undefined"]},"properties":[{"type":{"names":["Number"]},"name":"index"},{"type":{"names":["Object"]},"name":"tag"},{"type":{"names":["Event"]},"name":"event"}]},{"name":"input","description":"Tags list was updated","type":{"names":["undefined"]},"properties":[{"type":{"names":["Array"]},"name":"tags"}]}],"methods":[{"name":"option","description":"Get corresponding option for a tag value","params":[{"name":"tag","type":{"name":"String"}}],"returns":{"title":"returns","type":{"name":"text: String, value: String"}},"tags":{"params":[{"title":"param","type":{"name":"String"},"name":"tag"}],"returns":[{"title":"returns","type":{"name":"text: String, value: String"}}],"access":[{"description":"public"}]}},{"name":"tag","description":"Create a tag object from a string or object","params":[{"name":"tag","type":{"name":"String, Object"}}],"returns":{"title":"returns","type":{"name":"text: String, value: String"}},"tags":{"params":[{"title":"param","type":{"name":"String, Object"},"name":"tag"}],"returns":[{"title":"returns","type":{"name":"text: String, value: String"}}],"access":[{"description":"public"}]}}],"slots":[{"name":"default","description":"Place stuff here in the non-draggable footer"}],"component":"k-tags","sourceFile":"src/components/Navigation/Tags.vue"} \ No newline at end of file diff --git a/panel/dist/ui/TagsField.json b/panel/dist/ui/TagsField.json index 4f1a3c3b00..683f50398e 100644 --- a/panel/dist/ui/TagsField.json +++ b/panel/dist/ui/TagsField.json @@ -1 +1 @@ -{"displayName":"TagsField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"}},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"string|boolean|number|object|array"},"defaultValue":{"value":"null"}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input"}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-tags-field","sourceFile":"src/components/Forms/Field/TagsField.vue"} \ No newline at end of file +{"displayName":"TagsField","description":"Have a look at ``, `` and `` for additional information.","tags":{},"props":[{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"help","description":"Optional help text below the field","type":{"name":"string"}},{"name":"label","description":"A descriptive label for the field","type":{"name":"string"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"counter","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"endpoints","type":{"name":"object"}},{"name":"input","type":{"name":"string|number"}},{"name":"translate","type":{"name":"boolean"}},{"name":"type","type":{"name":"string"}},{"name":"after","description":"Optional text that will be shown after the input","type":{"name":"string"}},{"name":"before","description":"Optional text that will be shown before the input","type":{"name":"string"}},{"name":"invalid","description":"Marks the field/input as invalid","type":{"name":"boolean"}},{"name":"autofocus","type":{"name":"boolean"},"description":"Sets the focus on this field when the form loads. Only the first field with this label gets"},{"name":"icon","type":{"name":"string|boolean"}},{"name":"novalidate","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"ignore","description":"Which terms to ignore when showing the create button","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"search","description":"Whether to show the search input","tags":{"value":[{"description":"false | true | { min, placeholder }","title":"value"}]},"type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"layout","description":"You can set the layout to `\"list\"` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"sort","description":"Whether to sort the tags by the available options","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"accept","description":"Whether to accept only options or also custom tags","tags":{},"values":["\"all\"","\"options\""],"type":{"name":"string"},"defaultValue":{"value":"\"all\""}}],"events":[{"name":"focus"},{"name":"blur"},{"name":"input"},{"name":"escape"},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"slots":[{"name":"header"},{"name":"label"},{"name":"options"},{"name":"counter"},{"name":"default","description":"Place stuff here in the non-draggable footer"},{"name":"footer"},{"name":"help"},{"name":"before"},{"name":"after"},{"name":"icon"}],"component":"k-tags-field","sourceFile":"src/components/Forms/Field/TagsField.vue"} \ No newline at end of file diff --git a/panel/dist/ui/TagsInput.json b/panel/dist/ui/TagsInput.json index 73abd28fe8..3e61d69b75 100644 --- a/panel/dist/ui/TagsInput.json +++ b/panel/dist/ui/TagsInput.json @@ -1 +1 @@ -{"displayName":"TagsInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"accept","type":{"name":"string"},"defaultValue":{"value":"\"all\""}},{"name":"icon","type":{"name":"string"}},{"name":"ignore","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"options","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"search","type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"draggable","type":{"name":"boolean"},"defaultValue":{"value":"true"}},{"name":"layout","description":"You can set the layout to `list` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"sort","type":{"name":"boolean"},"defaultValue":{"value":"false"}}],"events":[{"name":"input"},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"component":"k-tags-input","sourceFile":"src/components/Forms/Input/TagsInput.vue"} \ No newline at end of file +{"displayName":"TagsInput","description":"","tags":{},"props":[{"name":"autofocus","description":"Sets the focus on this field when the form loads. Only the first field with this label gets","type":{"name":"boolean"}},{"name":"disabled","description":"If `true`, the field is no longer editable and will not be saved","type":{"name":"boolean"}},{"name":"id","description":"A unique ID. The component `_uid` will be used as default.","type":{"name":"number|string"},"defaultValue":{"value":"function() {\n return this._uid;\n}"}},{"name":"name","description":"A unique name for the input","type":{"name":"number|string"}},{"name":"required","description":"If `true`, the field has to be filled in correctly to be submitted","type":{"name":"boolean"}},{"name":"options","description":"An array of option objects","tags":{"value":[{"description":"{ value, text, info }","title":"value"}]},"type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"ignore","description":"Which terms to ignore when showing the create button","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"max","description":"The maximum number of accepted tags","type":{"name":"number"}},{"name":"min","description":"The minimum number of required tags","type":{"name":"number"}},{"name":"search","description":"Whether to show the search input","tags":{"value":[{"description":"false | true | { min, placeholder }","title":"value"}]},"type":{"name":"object|boolean"},"defaultValue":{"value":"true"}},{"name":"layout","description":"You can set the layout to `\"list\"` to extend the width of each tag\nto 100% and show them in a list. This is handy in narrow columns\nor when a list is a more appropriate design choice for the input\nin general.","tags":{},"values":["\"list\""],"type":{"name":"string"}},{"name":"sort","description":"Whether to sort the tags by the available options","type":{"name":"boolean"},"defaultValue":{"value":"false"}},{"name":"value","type":{"name":"array"},"defaultValue":{"value":"[]"}},{"name":"accept","description":"Whether to accept only options or also custom tags","tags":{},"values":["\"all\"","\"options\""],"type":{"name":"string"},"defaultValue":{"value":"\"all\""}}],"events":[{"name":"input","type":{"names":["undefined"]}},{"name":"escape"},{"name":"invalid","type":{"names":["undefined"]},"properties":[{"type":{"names":["undefined"]},"name":""}]}],"methods":[{"name":"focus","description":"Focuses the input element","tags":{"access":[{"description":"public"}]}}],"slots":[{"name":"default","description":"Place stuff here in the non-draggable footer"}],"component":"k-tags-input","sourceFile":"src/components/Forms/Input/TagsInput.vue"} \ No newline at end of file diff --git a/panel/lab/components/activation/index.vue b/panel/lab/components/activation/index.vue new file mode 100644 index 0000000000..5e911d4d4a --- /dev/null +++ b/panel/lab/components/activation/index.vue @@ -0,0 +1,20 @@ + diff --git a/panel/lab/components/dropdowns/4_picklist/index.php b/panel/lab/components/dropdowns/4_picklist/index.php new file mode 100644 index 0000000000..ef7449e4b7 --- /dev/null +++ b/panel/lab/components/dropdowns/4_picklist/index.php @@ -0,0 +1,5 @@ + 'k-picklist-dropdown', +]; diff --git a/panel/lab/components/dropdowns/4_picklist/index.vue b/panel/lab/components/dropdowns/4_picklist/index.vue new file mode 100644 index 0000000000..a54351aa7c --- /dev/null +++ b/panel/lab/components/dropdowns/4_picklist/index.vue @@ -0,0 +1,309 @@ + + + diff --git a/panel/lab/components/dropdowns/4_selector/index.php b/panel/lab/components/dropdowns/4_selector/index.php deleted file mode 100644 index 1f53db4aca..0000000000 --- a/panel/lab/components/dropdowns/4_selector/index.php +++ /dev/null @@ -1,5 +0,0 @@ - 'k-selector-dropdown', -]; diff --git a/panel/lab/components/dropdowns/4_selector/index.vue b/panel/lab/components/dropdowns/4_selector/index.vue deleted file mode 100644 index 3db635d2cf..0000000000 --- a/panel/lab/components/dropdowns/4_selector/index.vue +++ /dev/null @@ -1,35 +0,0 @@ - - - diff --git a/panel/lab/components/inputs/multiselect/index.vue b/panel/lab/components/inputs/multiselect/index.vue index 1c89cea1d6..c52ff19527 100644 --- a/panel/lab/components/inputs/multiselect/index.vue +++ b/panel/lab/components/inputs/multiselect/index.vue @@ -1,6 +1,5 @@ @@ -54,5 +211,31 @@ export default { diff --git a/panel/src/components/Forms/Input/TextareaInput.vue b/panel/src/components/Forms/Input/TextareaInput.vue index 3525fe0183..4d8f352234 100644 --- a/panel/src/components/Forms/Input/TextareaInput.vue +++ b/panel/src/components/Forms/Input/TextareaInput.vue @@ -10,35 +10,33 @@ @mousedown.native.prevent @command="onCommand" /> - -