diff --git a/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/_assets/go-to-top-icon.svg b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/_assets/go-to-top-icon.svg new file mode 100644 index 0000000000..62df4c7d57 --- /dev/null +++ b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/_assets/go-to-top-icon.svg @@ -0,0 +1,4 @@ + diff --git a/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/footer/index.ts b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/footer/index.ts new file mode 100644 index 0000000000..ba170bf3d6 --- /dev/null +++ b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/footer/index.ts @@ -0,0 +1,4 @@ +/* + * Copyright 2014-2024 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ +import './styles.scss'; diff --git a/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/footer/styles.scss b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/footer/styles.scss new file mode 100644 index 0000000000..8d80f3a029 --- /dev/null +++ b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/footer/styles.scss @@ -0,0 +1,83 @@ +/*! + * Copyright 2014-2024 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ +@import '../_tokens/index'; + +.footer { + position: relative; + + display: flex; + align-items: center; + justify-content: space-between; + + min-height: var(--footer-height); + margin-top: auto; + + padding: 0 var(--size-m3); + + letter-spacing: 0.15px; + + color: var(--color-text-light); + background-color: var(--footer-background); + + font: var(--font-text-s); + + &--button { + z-index: 0; + + display: inline-flex; + align-items: center; + + flex-shrink: 0; + justify-content: center; + + width: 40px; + height: 40px; + padding: 0; + + cursor: pointer; + + border: none; + border-radius: var(--size-s1); + background-color: transparent; + background-repeat: no-repeat; + background-position: 50% 50%; + background-size: 24px 24px; + + font-size: 0; + line-height: 0; + + @media (hover: hover) { + &:hover { + background-color: var(--color-b08); + } + } + + &:active { + background-color: var(--color-w10); + } + + &:focus-visible { + outline: var(--focus-outline); + } + + @media (width < $breakpoint-desktop-min) { + width: 52px; + height: 52px; + } + + &_go-to-top { + background-image: url('../_assets/go-to-top-icon.svg'); + } + } + + &--link { + color: inherit; + + border-bottom: 1px solid var(--color-text-light); + } + + &--content { + text-align: right; + } +} diff --git a/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/index.ts b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/index.ts index 6903ab8045..cb4940644a 100644 --- a/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/index.ts +++ b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/index.ts @@ -5,6 +5,7 @@ import * as button from './button/index'; import * as checkbox from './checkbox/index'; import * as dropdown from './dropdown/index'; import * as filterSection from './filter-section/index'; +import * as footer from './footer/index'; import * as icon from './icon/index'; import * as libraryName from './library-name/index'; import * as libraryVersion from './library-version/index'; @@ -23,6 +24,7 @@ export { checkbox, dropdown, filterSection, + footer, icon, libraryName, libraryVersion, diff --git a/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/navbar-button/styles.scss b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/navbar-button/styles.scss index 3456840cae..8126f2aafb 100644 --- a/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/navbar-button/styles.scss +++ b/dokka-subprojects/plugin-base-frontend/src/main/ui-kit/navbar-button/styles.scss @@ -85,3 +85,7 @@ background-image: url('../_assets/burger.svg'); } + +.navigation-controls--btn_go-to-top { + background-image: url('../_assets/go-to-top-icon.svg'); +} diff --git a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/htmlPreprocessors.kt b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/htmlPreprocessors.kt index 80807de60a..53f1594b8e 100644 --- a/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/htmlPreprocessors.kt +++ b/dokka-subprojects/plugin-base/src/main/kotlin/org/jetbrains/dokka/base/renderers/html/htmlPreprocessors.kt @@ -123,6 +123,7 @@ public object AssetsInstaller : PageTransformer { "ui-kit/assets/field-variable.svg", "ui-kit/assets/filter.svg", "ui-kit/assets/function.svg", + "ui-kit/assets/go-to-top-icon.svg", "ui-kit/assets/homepage.svg", "ui-kit/assets/interface-kotlin.svg", "ui-kit/assets/interface.svg", @@ -135,8 +136,6 @@ public object AssetsInstaller : PageTransformer { "images/anchor-copy-button.svg", "images/copy-icon.svg", "images/copy-successful-icon.svg", - "images/footer-go-to-link.svg", - "images/go-to-top-icon.svg", "images/logo-icon.svg", ) diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/images/footer-go-to-link.svg b/dokka-subprojects/plugin-base/src/main/resources/dokka/images/footer-go-to-link.svg deleted file mode 100644 index c3199535a2..0000000000 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/images/footer-go-to-link.svg +++ /dev/null @@ -1,3 +0,0 @@ - diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/images/go-to-top-icon.svg b/dokka-subprojects/plugin-base/src/main/resources/dokka/images/go-to-top-icon.svg deleted file mode 100644 index 2341ef26c6..0000000000 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/images/go-to-top-icon.svg +++ /dev/null @@ -1,4 +0,0 @@ - diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css b/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css index c64fa37161..a541e97757 100644 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css +++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/styles/style.css @@ -872,66 +872,3 @@ Just in case of possible performance degradation it excluding tabs with briefs o div.runnablesample { height: fit-content; } - -/* --- footer --- */ -.footer { - clear: both; - display: flex; - align-items: center; - position: relative; - min-height: var(--footer-height); - font-size: 12px; - line-height: 16px; - letter-spacing: 0.2px; - color: var(--footer-font-color); - margin-top: auto; - background-color: var(--footer-background); -} - -.footer--button { - display: flex; - align-items: center; - justify-content: center; - width: 40px; - height: 40px; - border-radius: 50%; - background-color: var(--footer-go-to-top-color); - background-repeat: no-repeat; - background-position: 50% 50%; - padding: 0; - border: none; - cursor: pointer; - font-size: 0; - line-height: 0; - transition: background-color 200ms ease-in-out; - will-change: background-color; -} - -.footer--button:hover { - opacity: 0.9; -} - -.footer--button_go-to-top { - background-image: url("../images/go-to-top-icon.svg"); - margin-left: var(--horizontal-spacing-for-content); - margin-right: 8px; -} - -.footer--link { - display: inline-flex; - align-items: center; - color: var(--breadcrumb-font-color); -} - -.footer--link_external:after { - content: ''; - width: 12px; - height: 12px; - margin-left: 4px; - margin-right: var(--horizontal-spacing-for-content); - background-image: url("../images/footer-go-to-link.svg"); - background-repeat: no-repeat; - background-position: 50% 50%; -} - -/* /--- footer --- */ diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/footer.ftl b/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/footer.ftl index 496ffbf904..88a6d7e0d0 100644 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/footer.ftl +++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/footer.ftl @@ -1,12 +1,12 @@ <#macro display>
#macro> \ No newline at end of file diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/header.ftl b/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/header.ftl index 5a96fb8e46..f84d412715 100644 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/header.ftl +++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/templates/includes/header.ftl @@ -4,7 +4,7 @@ <@template_cmd name="pathToRoot"> <@template_cmd name="projectName"> - ${projectName} + ${projectName} project name with a very long text @template_cmd> @template_cmd> diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/assets/go-to-top-icon.svg b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/assets/go-to-top-icon.svg new file mode 100644 index 0000000000..62df4c7d57 --- /dev/null +++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/assets/go-to-top-icon.svg @@ -0,0 +1,4 @@ + diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.css b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.css index aef557df53..1e32ba8f15 100644 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.css +++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.css @@ -750,6 +750,151 @@ --rotate-transition:transform 200ms ease-in-out; } +.footer { + align-items: center; + background-color: var(--footer-background); + color: rgba(0, 0, 0, 0.7); + color: var(--color-text-light); + display: flex; + font: 400 14px/20px JetBrains Sans, Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif, BlinkMacSystemFont, Oxygen, Droid Sans, Helvetica Neue, Arial; + font: var(--font-text-s); + justify-content: space-between; + letter-spacing: 0.15px; + margin-top: auto; + min-height: var(--footer-height); + padding: 0 48px; + padding: 0 var(--size-m3); + position: relative; +} + +.footer--button { + align-items: center; + background-color: transparent; + background-position: 50% 50%; + background-repeat: no-repeat; + background-size: 24px 24px; + border: none; + border-radius: 4px; + border-radius: var(--size-s1); + cursor: pointer; + display: inline-flex; + flex-shrink: 0; + font-size: 0; + height: 40px; + justify-content: center; + line-height: 0; + padding: 0; + width: 40px; + z-index: 0; +} + +@media (hover: hover) { + .footer--button:hover { + background-color: rgba(0, 0, 0, 0.08); + background-color: var(--color-b08); + } +} +.footer--button:active { + background-color: hsla(0, 0%, 100%, 0.1); + background-color: var(--color-w10); +} + +.footer--button.focus-visible { + outline: var(--focus-outline); +} + +.footer--button:focus-visible { + outline: var(--focus-outline); +} + +@media (max-width: 899px) { + .footer--button { + height: 52px; + width: 52px; + } +} +.footer--button_go-to-top { + background-image: url(assets/go-to-top-icon.svg); +} + +.footer--link { + border-bottom: 1px solid rgba(0, 0, 0, 0.7); + border-bottom: 1px solid var(--color-text-light); + color: inherit; +} + +.footer--content { + text-align: right; +} +:root { + --breakpoint-desktop-min:900px; + --breakpoint-tablet-max:899px; + --breakpoint-tablet-min:440px; + --breakpoint-mobile-max:439px; + --breakpoint-mobile-min:360px; + --color-key-blue:#307fff; + --color-key-blue-50:rgba(48,127,255,.5); + --color-background-nav:#27282c; + --color-background-nav-dt:#323237; + --color-background-page:#fff; + --color-background-page-dt:#262628; + --color-background-footer:#ebebeb; + --color-background-footer-dt:#323237; + --color-text:#000; + --color-text-dt:hsla(0,0%,100%,.96); + --color-text-light:rgba(0,0,0,.7); + --color-text-light-dt:hsla(0,0%,100%,.7); + --color-w05:hsla(0,0%,100%,.05); + --color-w08:hsla(0,0%,100%,.08); + --color-w10:hsla(0,0%,100%,.1); + --color-w16:hsla(0,0%,100%,.16); + --color-w50:hsla(0,0%,100%,.5); + --color-w70:hsla(0,0%,100%,.7); + --color-w80:hsla(0,0%,100%,.8); + --color-w100:#fff; + --color-b05:rgba(0,0,0,.05); + --color-b08:rgba(0,0,0,.08); + --color-b20:rgba(0,0,0,.2); + --color-b50:rgba(0,0,0,.5); + --color-b70:rgba(0,0,0,.7); + --color-cd-punctuation:#999; + --color-cd-keyword:#0033b3; + --color-cd-keyword-alternative:#cc7832; + --color-cd-builtin:#067d17; + --color-cd-builtin-alternative:#e7bf6a; + --color-cd-function:#00627a; + --color-cd-function-alternative:#ffc66d; + --color-cd-operator:#9a6e3a; + --color-cd-operator-alternative:#a9b7c6; + --color-cd-body:#000; + --color-cd-body-alternative:#a9b7c6; + --color-generic:#539df3; + --color-jvm:#4dbb5f; + --color-js:#ffc700; + --color-wasm:#fff; + --size-s1:4px; + --size-s2:8px; + --size-s3:16px; + --size-m1:24px; + --size-m2:32px; + --size-m3:48px; + --size-l1:64px; + --size-l2:72px; + --size-ta1:40px; + --size-ta2:52px; + --font-family-default:JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif; + --font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace; + --font-h1:600 44px/44px var(--font-family-default); + --font-h2:600 32px/32px var(--font-family-default); + --font-h3:600 24px/24px var(--font-family-default); + --font-h4:600 16px/24px var(--font-family-default); + --font-text-m:400 16px/24px var(--font-family-default); + --font-text-s:400 14px/20px var(--font-family-default); + --font-code:400 16px/24px var(--font-family-mono); + --hover-transition:background-color 200ms ease-in-out; + --rotate-transition:transform 200ms ease-in-out; +} + .ui-kit-icon { background-color: transparent; background-position: 50% 50%; @@ -1235,6 +1380,10 @@ background-image: url(assets/burger.svg); margin-left: auto; } + +.navigation-controls--btn_go-to-top { + background-image: url(assets/go-to-top-icon.svg); +} :root { --breakpoint-desktop-min:900px; --breakpoint-tablet-max:899px; diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.css b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.css index 2de5b3d767..10ba354ecc 100644 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.css +++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.css @@ -1 +1 @@ -.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(assets/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#639fff}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(assets/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(assets/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;-webkit-transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:block;font:400 16px/24px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);letter-spacing:-.03em;list-style-type:none;padding:8px 16px;padding:var(--size-s2) var(--size-s3);position:relative}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{outline:var(--focus-outline);z-index:1}.dropdown--option:focus-visible{outline:var(--focus-outline);z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#639fff}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline)}.dropdown--option_link:focus-visible{outline:var(--focus-outline)}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--overlay{background-color:hsla(0,0%,54%,.5);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(assets/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(assets/filter.svg);background-position:50% 50%;background-repeat:no-repeat}.filter-section--dropdown-toggle:after{display:none}}.no-js .filter-section{display:none}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(assets/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(assets/placeholder.svg)}.ui-kit-icon_cross{background-image:url(assets/cross.svg)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{height:52px;margin-left:12px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 14px/20px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-text);display:flex;height:52px;padding-left:12px}}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}@media(hover:hover){.navigation-controls--btn:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{height:52px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(assets/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(assets/homepage.svg)}.navigation-controls--btn_toc{background-image:url(assets/burger.svg);margin-left:auto}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);font:400 14px/20px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;text-transform:capitalize}.platform-tag,button.platform-tag{cursor:pointer}button.platform-tag.focus-visible{outline:var(--focus-outline)}button.platform-tag:focus-visible{outline:var(--focus-outline)}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.platform-tags .platform-tag{align-items:center;display:flex}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-color:hsla(240,1%,73%,.7);color:#fff}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:line-through}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-8px;margin-left:-4px}.platform-hinted>.platform-bookmarks-row,.tabs-section{margin-left:-8px;margin-right:-8px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:1px solid var(--inactive-tab-border-color);color:var(--inactive-section-color);cursor:pointer;font-size:var(--default-font-size);margin:0 8px;outline:none;padding:11px 3px}.platform-hinted>.platform-bookmarks-row{margin-bottom:16px;margin-bottom:var(--size-s3)}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{border-bottom:2px solid var(--default-font-color);color:var(--default-font-color)}.section-tab[data-active=""]{border-bottom:2px solid var(--active-tab-border-color);color:var(--active-section-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{border-bottom:2px solid var(--default-font-color);color:var(--default-font-color)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:2px solid var(--active-tab-border-color);color:var(--active-section-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt)}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08)}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:center;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(assets/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;transform:rotate(0deg);width:24px}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}@media(hover:hover){.toc--button:hover{background-color:rgba(0,0,0,.08);background-color:var(--toc-hover-color)}}.toc--button:active{background-color:rgba(0,0,0,.08);background-color:var(--toc-hover-color)}.toc--button.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--button:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}.toc--link:hover{background-color:rgba(0,0,0,.08);background-color:var(--toc-hover-color)}.toc--link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px;align-items:center}.toc--icon{height:16px;width:16px}.toc--icon.class:before{content:url(assets/class.svg)}.toc--icon.class-kt:before{content:url(assets/class-kotlin.svg)}.toc--icon.function:before{content:url(assets/function.svg)}.toc--icon.enum-class:before{content:url(assets/enum.svg)}.toc--icon.enum-class-kt:before{content:url(assets/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(assets/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(assets/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(assets/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(assets/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(assets/exception-class.svg)}.toc--icon.interface:before{content:url(assets/interface.svg)}.toc--icon.interface-kt:before{content:url(assets/interface-kotlin.svg)}.toc--icon.object:before{content:url(assets/object.svg)}.toc--icon.typealias-kt:before{content:url(assets/typealias-kotlin.svg)}.toc--icon.val:before{content:url(assets/field-value.svg)}.toc--icon.var:before{content:url(assets/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:hover,.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#578af7}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-body:#000;--color-cd-body-alternative:#a9b7c6;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 16px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--focus-outline:4px solid var(--color-key-blue-50)}.theme-dark{--color-background:var(--color-background-page-dt)}body,table{background-color:#fff;background-color:var(--color-background)} \ No newline at end of file +.button{align-items:center;background-color:transparent;border:none;border-radius:4px;border-radius:var(--size-s1);box-sizing:border-box;color:#000;color:var(--color-text);cursor:pointer;display:flex;height:40px;justify-content:center;letter-spacing:.045em;padding:8px 12px;padding:var(--size-s2) 12px}.button[\:has\(\:first-child\)]{gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}.button:has(:first-child){gap:8px;gap:var(--size-s2);padding:8px;padding:var(--size-s2)}@media(hover:hover){.button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.button:active{background-color:#307fff;background-color:var(--color-key-blue)}.button:disabled{cursor:not-allowed;opacity:.5}.button.focus-visible{outline:var(--focus-outline)}.button:focus-visible{outline:var(--focus-outline)}.theme-dark .button{color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.theme-dark .button:hover{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.button_background{background-color:#fff;background-color:var(--color-w100)}.theme-dark .button_background{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.theme-dark .button_background:hover{background-color:hsla(0,0%,100%,.05);background-color:var(--color-w05)}.button_dropdown{font:400 14px/20px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:8px;padding:var(--size-s2)}.button_dropdown:after{background-image:url(assets/arrow-down.svg);background-repeat:no-repeat;content:"";display:block;filter:invert(1);height:24px;height:var(--size-m1);transform:rotate(0);width:24px;width:var(--size-m1);will-change:transform}.theme-dark .button_dropdown:after{filter:none}.button_dropdown_active{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.button_dropdown_active:hover,.theme-dark .button_dropdown_active:hover{background-color:#639fff}.button_dropdown_active:after{filter:invert(0);transform:rotate(-180deg)}.checkbox{cursor:pointer;display:inline-block;position:relative}.checkbox--input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;visibility:hidden}.checkbox--icon{background-image:url(assets/checkbox-off.svg);height:24px;height:var(--size-m1);margin-left:-32px;margin-left:calc(var(--size-m2)*-1);position:absolute;width:24px;width:var(--size-m1)}.checkbox--input:checked+.checkbox--icon{background-image:url(assets/checkbox-on.svg)}.checkbox--input:disabled+.checkbox--icon{opacity:.2}.checkbox--input.focus-visible{outline:var(--focus-outline)}.checkbox--input:focus-visible{outline:var(--focus-outline)}.dropdown{position:relative}@media(max-width:899px){.dropdown{position:static}}.dropdown--list{background-color:#323237;background-color:var(--color-background-nav-dt);border:1px solid #56565f;box-shadow:0 2px 8px 0 rgba(0,0,0,.251);display:none;max-height:400px;max-width:360px;min-width:272px;overflow-y:auto;padding:12px 0;position:absolute;right:0;top:44px;-webkit-transform:translateZ(0);width:-moz-fit-content;width:fit-content;z-index:10}@media(max-width:899px){.dropdown--list{border:none;height:100vh;max-height:none;padding:0;right:0;top:0}}@media(max-width:439px){.dropdown--list{max-width:none;width:100vw}}.dropdown--list_positioned_right{right:0}.dropdown--list_positioned_left{left:0}@media(max-width:899px){.dropdown--list_positioned_left{left:auto}}.dropdown--list_expanded{display:block}@media(min-width:900px){.dropdown--list_toc-list{background-color:transparent;border:none;box-shadow:none;display:block;max-height:none;max-width:none;min-width:100%;padding:0;position:relative;top:0}}@media(min-width:440px)and (max-width:899px){.dropdown--list_toc-list{width:408px}}.dropdown--option{background-color:#323237;background-color:var(--color-background-nav-dt);border:none;color:var(--color-text-nav-dt);cursor:pointer;display:block;font:400 16px/24px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-m);letter-spacing:-.03em;list-style-type:none;padding:8px 16px;padding:var(--size-s2) var(--size-s3);position:relative}.dropdown--option:hover{background-color:#4a4a52}.dropdown--option.focus-visible{outline:var(--focus-outline);z-index:1}.dropdown--option:focus-visible{outline:var(--focus-outline);z-index:1}.dropdown--option:visited{color:var(--color-text-nav-dt)}.dropdown--option_active{background-color:#307fff;background-color:var(--color-key-blue)}.dropdown--option_active:hover{background-color:#639fff}.dropdown--option_link{color:var(--color-text-nav-dt);text-decoration:none}.dropdown--option_link.focus-visible{outline:var(--focus-outline)}.dropdown--option_link:focus-visible{outline:var(--focus-outline)}.dropdown--option .checkbox{pointer-events:none}.dropdown--option .checkbox:first-letter{text-transform:uppercase}.dropdown--overlay{background-color:hsla(0,0%,54%,.5);bottom:0;content:"";display:none;height:100vh;left:0;position:absolute;right:0;top:0;width:100vw;z-index:4}.dropdown--list_expanded+.dropdown--overlay{display:block}@media(min-width:900px){.dropdown--list_expanded+.dropdown--overlay{display:none}}.dropdown--header{align-items:center;background-color:#323237;background-color:var(--color-background-nav-dt);border-bottom:1px solid #56565f;color:hsla(0,0%,100%,.7);color:var(--color-w70);display:flex;height:52px;justify-content:space-between;padding-left:16px;padding-left:var(--size-s3);position:sticky;top:0;z-index:2}@media(min-width:900px){.dropdown--header{display:none}}@media(max-width:899px){.dropdown--header+:not(.sidebar--inner){margin-top:12px}}.filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:2px;justify-content:flex-end;margin-right:12px;max-height:40px;z-index:1}.filter-section_loading{overflow:hidden}@media(min-width:900px){.filter-section--dropdown{display:none}}.filter-section--dropdown-toggle_as-filters{background-image:url(assets/filter.svg);background-position:50% 50%;background-repeat:no-repeat;min-width:40px}.filter-section--dropdown-toggle_as-filters:after{display:none}@media(max-width:899px){.filter-section{margin-right:0;max-height:none}.filter-section>:not(.dropdown){display:none}.filter-section--dropdown-toggle{background-image:url(assets/filter.svg);background-position:50% 50%;background-repeat:no-repeat}.filter-section--dropdown-toggle:after{display:none}}.no-js .filter-section{display:none}.footer{align-items:center;background-color:var(--footer-background);color:rgba(0,0,0,.7);color:var(--color-text-light);display:flex;font:400 14px/20px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);justify-content:space-between;letter-spacing:.15px;margin-top:auto;min-height:var(--footer-height);padding:0 48px;padding:0 var(--size-m3);position:relative}.footer--button{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}@media(hover:hover){.footer--button:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.footer--button:active{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.footer--button.focus-visible{outline:var(--focus-outline)}.footer--button:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.footer--button{height:52px;width:52px}}.footer--button_go-to-top{background-image:url(assets/go-to-top-icon.svg)}.footer--link{border-bottom:1px solid rgba(0,0,0,.7);border-bottom:1px solid var(--color-text-light);color:inherit}.footer--content{text-align:right}.ui-kit-icon{background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;filter:invert(1);font-size:0;height:24px;height:var(--size-m1);line-height:0;width:24px;width:var(--size-m1);will-change:background-color}.theme-dark .ui-kit-icon{filter:none}@media(max-width:899px){.theme-dark_mobile .ui-kit-icon{filter:none}}.ui-kit-icon_arrow-down{background-image:url(assets/arrow-down.svg)}.ui-kit-icon_placeholder{background-image:url(assets/placeholder.svg)}.ui-kit-icon_cross{background-image:url(assets/cross.svg)}.library-name--link{align-items:center;border-radius:4px;border-radius:var(--size-s1);color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;font:600 16px/24px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-h4);margin-right:8px;margin-right:var(--size-s2);white-space:nowrap}.library-name--link.focus-visible{outline:var(--focus-outline)}.library-name--link:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.library-name--link{height:52px;margin-left:12px}}.library-name--link:before{background:var(--dokka-logo-image-url) center no-repeat;background-size:min(var(--dokka-logo-height),120px) min(var(--dokka-logo-width),36px);content:"";height:var(--dokka-logo-height);margin-right:8px;margin-right:var(--size-s2);max-height:36px;max-width:120px;width:var(--dokka-logo-width)}.library-version{box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);font:400 14px/20px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding-top:1px}@media(max-width:899px){.library-version{align-items:center;background-color:#000;background-color:var(--color-text);display:flex;height:52px;padding-left:12px}}.navigation{align-items:center;background-color:#27282c;background-color:var(--color-background-nav);box-sizing:border-box;color:hsla(0,0%,100%,.96);color:var(--color-text-dt);display:flex;flex-wrap:nowrap;justify-content:flex-start;padding:12px 24px;padding:12px var(--size-m1);z-index:4}@media(max-width:899px){.navigation{flex-wrap:wrap;height:auto;padding:0}}.theme-dark .navigation{background-color:#323237;background-color:var(--color-background-nav-dt)}@media(max-width:899px){.navigation .button{height:52px;min-width:52px}}.navigation-controls{align-items:center;display:flex;gap:4px;gap:var(--size-s1);margin-left:auto}@media(max-width:899px){.navigation-controls{background-color:#000;background-color:var(--color-text);flex-grow:1;gap:0;justify-content:flex-end}}.no-js .navigation-controls{display:none}.navigation-controls--btn{align-items:center;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;background-size:24px 24px;border:none;border-radius:4px;border-radius:var(--size-s1);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:0;height:40px;justify-content:center;line-height:0;padding:0;width:40px;z-index:0}@media(hover:hover){.navigation-controls--btn:hover{background-color:rgba(0,0,0,.08);background-color:var(--color-b08)}}.navigation-controls--btn:active{background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10)}.navigation-controls--btn.focus-visible{outline:var(--focus-outline)}.navigation-controls--btn:focus-visible{outline:var(--focus-outline)}@media(max-width:899px){.navigation-controls--btn{height:52px;width:52px}}.navigation-controls--break{flex-basis:100%}.navigation-controls--btn_theme{background-image:url(assets/theme-toggle.svg)}.navigation-controls--btn_homepage{background-image:url(assets/homepage.svg)}.navigation-controls--btn_toc{background-image:url(assets/burger.svg);margin-left:auto}.navigation-controls--btn_go-to-top{background-image:url(assets/go-to-top-icon.svg)}.platform-tag{--platform-tag-color:#bababb;border:0;border-radius:4px;border-radius:var(--size-s1);font:400 14px/20px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--font-text-s);padding:10px 12px;text-transform:capitalize}.platform-tag,button.platform-tag{cursor:pointer}button.platform-tag.focus-visible{outline:var(--focus-outline)}button.platform-tag:focus-visible{outline:var(--focus-outline)}.platform-selector-option{padding-left:44px}.platform-selector-option.js-like,.platform-selector-option.jvm-like,.platform-selector-option.wasm-like,.platform-tag.js-like,.platform-tag.jvm-like,.platform-tag.wasm-like{text-transform:uppercase}.platform-tags .platform-tag{align-items:center;display:flex}.filter-section .platform-tag[data-active]{background-color:var(--platform-tag-color);color:#19191c}.filter-section .platform-tag.jvm-like[data-active],.platform-tags .platform-tag.jvm-like{--platform-tag-color:#4dbb5f}.filter-section .platform-tag.js-like[data-active],.platform-tags .platform-tag.js-like{--platform-tag-color:#ffc700}.filter-section .platform-tag.native-like[data-active],.platform-tags .platform-tag.native-like{--platform-tag-color:#e082f3}.filter-section .platform-tag.wasm-like[data-active],.platform-tags .platform-tag.wasm-like{--platform-tag-color:#9585f9}@media(hover:hover){.filter-section .platform-tag[data-active]:hover{background-color:hsla(240,1%,73%,.7);color:#fff}}.filter-section .platform-tag[data-active]:active{background-color:hsla(240,1%,73%,.7);color:#fff}.filter-section .platform-tag:not([data-active]){background-color:hsla(0,0%,100%,.1);background-color:var(--color-w10);color:hsla(0,0%,100%,.5);color:var(--color-w50);text-decoration:line-through}.platform-tags .platform-tag:before{background:var(--platform-tag-color);border-radius:50%;content:"";display:inline-block;font-size:13px;height:8px;line-height:1.6;margin:0 4px 0 8px;width:8px}.platform-tags{display:flex;flex-wrap:wrap;margin-bottom:-8px;margin-left:-4px}.platform-hinted>.platform-bookmarks-row,.tabs-section{margin-left:-8px;margin-right:-8px}.platform-hinted>.platform-bookmarks-row>.platform-bookmark,.section-tab{background-color:transparent;border:0;border-bottom:1px solid var(--inactive-tab-border-color);color:var(--inactive-section-color);cursor:pointer;font-size:var(--default-font-size);margin:0 8px;outline:none;padding:11px 3px}.platform-hinted>.platform-bookmarks-row{margin-bottom:16px;margin-bottom:var(--size-s3)}.no-js .platform-bookmarks-row+.sourceset-dependent-content{margin-top:8px;margin-top:var(--size-s2)}.no-js .platform-bookmarks-row+.sourceset-dependent-content:last-of-type{margin-top:0}.section-tab:hover{border-bottom:2px solid var(--default-font-color);color:var(--default-font-color)}.section-tab[data-active=""]{border-bottom:2px solid var(--active-tab-border-color);color:var(--active-section-color)}.tabs-section-body>div{margin-top:12px}.tabs-section-body .with-platform-tabs{padding-bottom:12px;padding-top:12px}.platform-hinted{display:block;flex:auto}.platform-hinted>.platform-bookmarks-row>.platform-bookmark{align-self:flex-start;background:inherit;flex:none;min-width:64px;min-width:var(--size-l1);order:5}.platform-hinted>.platform-bookmarks-row>.platform-bookmark:hover{border-bottom:2px solid var(--default-font-color);color:var(--default-font-color)}.platform-hinted>.platform-bookmarks-row>.platform-bookmark[data-active=""]{border-bottom:2px solid var(--active-tab-border-color);color:var(--active-section-color)}.js .platform-hinted>.content:not([data-active]),.js .tabs-section-body [data-togglable]:not([data-active]),.main-content[data-page-type=package] .tabs-section-body h2,.no-js .platform-bookmarks-row,.no-js .tabs-section{display:none}:root{--toc-hover-color:var(--color-b08);--toc-font:400 13px/24px var(--font-family-default);--toc-color:var(--color-text)}.theme-dark{--toc-hover-color:var(--color-w08);--toc-color:var(--color-text-dt)}@media(max-width:899px){.theme-dark_mobile{--toc-color:var(--color-text-dt);--toc-hover-color:var(--color-w08)}}.toc--part{color:#000;color:var(--toc-color);font:400 13px/24px JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Oxygen,Droid Sans,Helvetica Neue,Arial;font:var(--toc-font)}.toc--part,.toc--row{box-sizing:border-box}.toc--row{align-items:center;display:flex;min-height:40px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toc--button{align-items:center;background-color:inherit;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;height:100%;justify-content:flex-end;min-width:40px;padding:0 8px 0 0;position:absolute}.toc--button:after{background-image:url(assets/arrow-down.svg);background-repeat:no-repeat;background-size:24px 24px;content:" ";filter:invert(1);font-size:0;height:24px;line-height:0;transform:rotate(0deg);width:24px}.toc--part_hidden .toc--button:after{transform:rotate(-90deg)}.theme-dark .toc--button:after{filter:invert(0)}@media(max-width:899px){.theme-dark_mobile .toc--button:after{filter:invert(0)}}@media(hover:hover){.toc--button:hover{background-color:rgba(0,0,0,.08);background-color:var(--toc-hover-color)}}.toc--button:active{background-color:rgba(0,0,0,.08);background-color:var(--toc-hover-color)}.toc--button.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--button:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--link{box-sizing:border-box;color:inherit;height:calc(100% - 16px);min-height:40px;padding:8px 4px 8px 0;width:100%}.toc--link:hover{background-color:rgba(0,0,0,.08);background-color:var(--toc-hover-color)}.toc--link.focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--link:focus-visible{outline:var(--focus-outline);outline-offset:-4px}.toc--part[data-nesting-level="0"] .toc--row>.toc--link:first-child{padding-left:40px;padding-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button+.toc--link{margin-left:40px;margin-left:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="0"] .toc--button{width:40px;width:calc(40px + var(--size-m1)*0)}.toc--part[data-nesting-level="1"] .toc--row>.toc--link:first-child{padding-left:64px;padding-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button+.toc--link{margin-left:64px;margin-left:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="1"] .toc--button{width:64px;width:calc(40px + var(--size-m1)*1)}.toc--part[data-nesting-level="2"] .toc--row>.toc--link:first-child{padding-left:88px;padding-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button+.toc--link{margin-left:88px;margin-left:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="2"] .toc--button{width:88px;width:calc(40px + var(--size-m1)*2)}.toc--part[data-nesting-level="3"] .toc--row>.toc--link:first-child{padding-left:112px;padding-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button+.toc--link{margin-left:112px;margin-left:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="3"] .toc--button{width:112px;width:calc(40px + var(--size-m1)*3)}.toc--part[data-nesting-level="4"] .toc--row>.toc--link:first-child{padding-left:136px;padding-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button+.toc--link{margin-left:136px;margin-left:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="4"] .toc--button{width:136px;width:calc(40px + var(--size-m1)*4)}.toc--part[data-nesting-level="5"] .toc--row>.toc--link:first-child{padding-left:160px;padding-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button+.toc--link{margin-left:160px;margin-left:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="5"] .toc--button{width:160px;width:calc(40px + var(--size-m1)*5)}.toc--part[data-nesting-level="6"] .toc--row>.toc--link:first-child{padding-left:184px;padding-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button+.toc--link{margin-left:184px;margin-left:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="6"] .toc--button{width:184px;width:calc(40px + var(--size-m1)*6)}.toc--part[data-nesting-level="7"] .toc--row>.toc--link:first-child{padding-left:208px;padding-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button+.toc--link{margin-left:208px;margin-left:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="7"] .toc--button{width:208px;width:calc(40px + var(--size-m1)*7)}.toc--part[data-nesting-level="8"] .toc--row>.toc--link:first-child{padding-left:232px;padding-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button+.toc--link{margin-left:232px;margin-left:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="8"] .toc--button{width:232px;width:calc(40px + var(--size-m1)*8)}.toc--part[data-nesting-level="9"] .toc--row>.toc--link:first-child{padding-left:256px;padding-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button+.toc--link{margin-left:256px;margin-left:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="9"] .toc--button{width:256px;width:calc(40px + var(--size-m1)*9)}.toc--part[data-nesting-level="10"] .toc--row>.toc--link:first-child{padding-left:280px;padding-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button+.toc--link{margin-left:280px;margin-left:calc(40px + var(--size-m1)*10)}.toc--part[data-nesting-level="10"] .toc--button{width:280px;width:calc(40px + var(--size-m1)*10)}.filtered>.toc--button,.toc .filtered>a{display:none}.toc #nav-submenu{padding-left:24px}.toc--part_hidden>.toc--part{display:none}.toc--row .toc--link-grid{display:grid;grid-template-columns:16px auto;grid-gap:6px;align-items:center}.toc--icon{height:16px;width:16px}.toc--icon.class:before{content:url(assets/class.svg)}.toc--icon.class-kt:before{content:url(assets/class-kotlin.svg)}.toc--icon.function:before{content:url(assets/function.svg)}.toc--icon.enum-class:before{content:url(assets/enum.svg)}.toc--icon.enum-class-kt:before{content:url(assets/enum-kotlin.svg)}.toc--icon.annotation-class:before{content:url(assets/annotation.svg)}.toc--icon.annotation-class-kt:before{content:url(assets/annotation-kotlin.svg)}.toc--icon.abstract-class:before{content:url(assets/abstract-class.svg)}.toc--icon.abstract-class-kt:before{content:url(assets/abstract-class-kotlin.svg)}.toc--icon.exception-class:before{content:url(assets/exception-class.svg)}.toc--icon.interface:before{content:url(assets/interface.svg)}.toc--icon.interface-kt:before{content:url(assets/interface-kotlin.svg)}.toc--icon.object:before{content:url(assets/object.svg)}.toc--icon.typealias-kt:before{content:url(assets/typealias-kotlin.svg)}.toc--icon.val:before{content:url(assets/field-value.svg)}.toc--icon.var:before{content:url(assets/field-variable.svg)}.toc--part[data-active]>.toc--row .toc--button,.toc--part[data-active]>.toc--row .toc--link{background-color:#307fff;background-color:var(--color-key-blue);color:hsla(0,0%,100%,.96);color:var(--color-text-dt)}.toc--part[data-active]>.toc--row .toc--button:hover,.toc--part[data-active]>.toc--row .toc--link:hover{background-color:#578af7}.toc--part[data-active]>.toc--row .toc--button:after,.toc--part[data-active]>.toc--row .toc--link:after{filter:invert(0)}.sidebar{border-right:1px solid rgba(39,40,44,.2);box-sizing:border-box;overflow:auto;width:var(--sidebar-width)}@media(max-width:899px){.sidebar{border:none;width:0}}@media(min-width:900px){.sidebar{position:relative;z-index:1}}@media(max-width:899px){.sidebar .button{height:52px;min-width:52px}}.theme-dark .sidebar{border-right-color:#56565f}.no-js .sidebar{display:none}.sidebar--inner{padding-bottom:12px;padding-top:12px}@media(max-width:899px){.ui-kit_desktop-only{display:none}}@media(min-width:900px){.ui-kit_mobile-only{display:none}}:root{--breakpoint-desktop-min:900px;--breakpoint-tablet-max:899px;--breakpoint-tablet-min:440px;--breakpoint-mobile-max:439px;--breakpoint-mobile-min:360px;--color-key-blue:#307fff;--color-key-blue-50:rgba(48,127,255,.5);--color-background-nav:#27282c;--color-background-nav-dt:#323237;--color-background-page:#fff;--color-background-page-dt:#262628;--color-background-footer:#ebebeb;--color-background-footer-dt:#323237;--color-text:#000;--color-text-dt:hsla(0,0%,100%,.96);--color-text-light:rgba(0,0,0,.7);--color-text-light-dt:hsla(0,0%,100%,.7);--color-w05:hsla(0,0%,100%,.05);--color-w08:hsla(0,0%,100%,.08);--color-w10:hsla(0,0%,100%,.1);--color-w16:hsla(0,0%,100%,.16);--color-w50:hsla(0,0%,100%,.5);--color-w70:hsla(0,0%,100%,.7);--color-w80:hsla(0,0%,100%,.8);--color-w100:#fff;--color-b05:rgba(0,0,0,.05);--color-b08:rgba(0,0,0,.08);--color-b20:rgba(0,0,0,.2);--color-b50:rgba(0,0,0,.5);--color-b70:rgba(0,0,0,.7);--color-cd-punctuation:#999;--color-cd-keyword:#0033b3;--color-cd-keyword-alternative:#cc7832;--color-cd-builtin:#067d17;--color-cd-builtin-alternative:#e7bf6a;--color-cd-function:#00627a;--color-cd-function-alternative:#ffc66d;--color-cd-operator:#9a6e3a;--color-cd-operator-alternative:#a9b7c6;--color-cd-body:#000;--color-cd-body-alternative:#a9b7c6;--color-generic:#539df3;--color-jvm:#4dbb5f;--color-js:#ffc700;--color-wasm:#fff;--size-s1:4px;--size-s2:8px;--size-s3:16px;--size-m1:24px;--size-m2:32px;--size-m3:48px;--size-l1:64px;--size-l2:72px;--size-ta1:40px;--size-ta2:52px;--font-family-default:JetBrains Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Droid Sans,Helvetica Neue,Arial,sans-serif;--font-family-mono:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;--font-h1:600 44px/44px var(--font-family-default);--font-h2:600 32px/32px var(--font-family-default);--font-h3:600 24px/24px var(--font-family-default);--font-h4:600 16px/24px var(--font-family-default);--font-text-m:400 16px/24px var(--font-family-default);--font-text-s:400 14px/20px var(--font-family-default);--font-code:400 16px/24px var(--font-family-mono);--hover-transition:background-color 200ms ease-in-out;--rotate-transition:transform 200ms ease-in-out;--color-background:var(--color-background-page);--focus-outline:4px solid var(--color-key-blue-50)}.theme-dark{--color-background:var(--color-background-page-dt)}body,table{background-color:#fff;background-color:var(--color-background)} \ No newline at end of file diff --git a/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.js b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.js index 96b8d53062..934fe6b529 100644 --- a/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.js +++ b/dokka-subprojects/plugin-base/src/main/resources/dokka/ui-kit/ui-kit.min.js @@ -1 +1,2 @@ -(()=>{"use strict";function t(e,n){return!(!e||!e.classList.contains(n))||!!e.parentElement&&t(e.parentElement,n)}document.addEventListener("DOMContentLoaded",(function(){document.querySelectorAll("div.button").forEach((function(t){t.addEventListener("keydown",(function(e){var n=e.key;"Enter"!==n&&" "!==n||t.dispatchEvent(new MouseEvent("click"))}))}))}));function e(){return window.innerWidth<440?"mobile":window.innerWidth>=440&&window.innerWidth<900?"tablet":"desktop"}var n=function(){function t(t){this.trapElement=t,this.handleKeyDown=this.handleKeyDown.bind(this),this.trapElement.addEventListener("keydown",this.handleKeyDown)}return t.prototype.handleKeyDown=function(t){var e=Array.from(this.trapElement.querySelectorAll('[role="option"]')).filter((function(t){return"none"!==t.style.display&&-1!==t.tabIndex}));if(["Tab","ArrowDown","ArrowUp"].includes(t.key)&&0!==e.length){var n=e[0],o=e[e.length-1];if("ArrowUp"===t.key)if(document.activeElement===n)o.focus();else{var r=e.indexOf(document.activeElement);e[r-1].focus()}"ArrowDown"===t.key&&(document.activeElement===o?n.focus():(r=e.indexOf(document.activeElement),e[r+1].focus())),"Tab"===t.key&&(t.shiftKey?document.activeElement===n&&(o.focus(),t.preventDefault()):document.activeElement===o&&(n.focus(),t.preventDefault()))}},t.prototype.destroy=function(){this.trapElement.removeEventListener("keydown",this.handleKeyDown)},t}(),o='[data-role="dropdown"]',r='[data-role="dropdown-toggle"]',i='[data-role="dropdown-listbox"]';function l(t){var e,n,o=t.querySelectorAll(r);null==o||o.forEach(a),e=t.querySelector(i),n=o[0].offsetWidth,e&&(e.classList.toggle("dropdown--list_expanded"),e.classList.contains("dropdown--list_expanded")?c(e,n):c(e,void 0))}function a(t){t.classList.contains("button_dropdown")&&t.classList.toggle("button_dropdown_active")}function c(t,e){if(e){var n=parseInt(getComputedStyle(t).minWidth,10),o=isNaN(n)?e:Math.max(n,e);t.style.minWidth="".concat(o,"px")}else t.style.minWidth=""}function d(e){var n=e.target;t(n,"dropdown")&&"dropdown--overlay"!==n.className||document.querySelectorAll(o).forEach((function(t){var e,n;null===(e=t.querySelectorAll(r))||void 0===e||e.forEach((function(t){t.classList.remove("button_dropdown_active")})),null===(n=t.querySelectorAll(i))||void 0===n||n.forEach((function(t){t.classList.remove("dropdown--list_expanded"),t.style.minWidth=""}))}))}function u(t){t.tag.removeAttribute("style"),t.option.setAttribute("style","display: none")}function s(t){t.tag.setAttribute("style","display: none"),t.option.removeAttribute("style")}function f(t){var e,n=null===(e=t.querySelector(".checkbox--input"))||void 0===e?void 0:e.getAttribute("data-filter");n&&(-1===filteringContext.activeFilters.findIndex((function(t){return t===n}))?unfilterSourceset(n):filterSourceset(n)),refreshFiltering()}document.addEventListener("DOMContentLoaded",(function(){document.querySelectorAll(o).forEach((function(t){var e;null===(e=t.querySelectorAll(r))||void 0===e||e.forEach((function(e){e.addEventListener("click",(function(){return l(t)}))})),function(t){new n(t),t.addEventListener("keydown",(function(e){var n;"Escape"===e.key&&(l(t),null===(n=t.querySelector(r))||void 0===n||n.focus())}))}(t)})),document.addEventListener("click",d)})),document.addEventListener("DOMContentLoaded",(function(){var t=document.getElementById("navigation-wrapper"),n=document.getElementById("library-version"),o=document.getElementById("filter-section"),r=document.querySelector("#filter-section + .navigation-controls--btn"),i=document.getElementById("filter-section-dropdown");if(t&&n&&o&&r&&i){var l=null==o?void 0:o.querySelectorAll(".dropdown--option"),a=null==o?void 0:o.querySelectorAll(".platform-selector");if(a&&l)if(a.length===l.length){var c=Array.from({length:a.length}).map((function(t,e){return{tag:a[e],option:l[e]}})),d=c.map((function(t){return t.tag.getBoundingClientRect().width})),v=e(),m=new ResizeObserver((function(){var n=e();v!==n&&(c.forEach(u),d=function(t){return t.map((function(t){return t.tag.getBoundingClientRect().width}))}(c)),v=n,y(),m.unobserve(t)})),g=function(){m.observe(t)};y(),g(),l.forEach((function(t){t.addEventListener("click",(function(t){f(t.target)})),t.addEventListener("keydown",(function(t){var e=t.key;"Enter"!==e&&" "!==e||f(t.target)}))})),window.addEventListener("resize",g)}else console.warn("Dokka: filter section items are not equal");else console.warn("Dokka: filter section items are not found")}else console.warn("Dokka: filter section is not found");function y(){var e,l;if(t&&i){if(t.getBoundingClientRect().width<900)return c.forEach(s),void i.removeAttribute("style");var a=(n&&r?r.getBoundingClientRect().left-n.getBoundingClientRect().right:0)-44-10,f=0;i.removeAttribute("style");var v=!1;c.forEach((function(t,e){(f+=d[e]+4)=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},m=function(){var t=!1;try{var e="__testLocalStorageKey__";localStorage.setItem(e,e),localStorage.removeItem(e),t=!0}catch(t){console.error("Local storage is not available",t)}return{getItem:function(e){return t?localStorage.getItem(e):null},setItem:function(e,n){t&&localStorage.setItem(e,n)}}}();function g(t){var e,n=null===(e=t.getAttribute("data-togglable"))||void 0===e?void 0:e.split(",");!function(){var e,n,o,r;try{for(var i=v(document.getElementsByClassName("tabs-section")),l=i.next();!l.done;l=i.next()){var a=l.value;try{for(var c=(o=void 0,v(a.children)),d=c.next();!d.done;d=c.next()){var u=d.value;u.getAttribute("data-togglable")===t.getAttribute("data-togglable")?u.setAttribute("data-active",""):u.removeAttribute("data-active")}}catch(t){o={error:t}}finally{try{d&&!d.done&&(r=c.return)&&r.call(c)}finally{if(o)throw o.error}}}}catch(t){e={error:t}}finally{try{l&&!l.done&&(n=i.return)&&n.call(i)}finally{if(e)throw e.error}}}(),document.querySelectorAll(".tabs-section-body *[data-togglable]").forEach((function(t){var e=t.getAttribute("data-togglable");n&&e&&n.includes(e)?t.setAttribute("data-active",""):t.classList.contains("sourceset-dependent-content")||t.removeAttribute("data-active")}))}window.initTabs=function(){var t=document.querySelector(".main-content"),e="active-tab-"+(t?t.getAttribute("data-page-type"):null);document.querySelectorAll("div[tabs-section]").forEach((function(t){!function(t){var e=t.querySelector("button[data-active]");e&&g(e)}(t),t.addEventListener("click",(function(t){var n=t.target,o=n?n.getAttribute("data-togglable"):null;o&&(m.setItem(e,JSON.stringify(o)),g(n))}))}));var n=m.getItem(e);if(n){var o=document.querySelector('div[tabs-section] > button[data-togglable="'+JSON.parse(n)+'"]');o&&g(o)}},window.toggleSections=g,document.addEventListener("DOMContentLoaded",(function(){document.querySelectorAll('[data-remove-style="true"]').forEach((function(t){t.removeAttribute("style")}))}))})(); \ No newline at end of file +/*! For license information please see ui-kit.min.js.LICENSE.txt */ +(()=>{var e,r,t={352:e=>{"use strict";e.exports=i;var r=/(?:(?:\u001b\[)|\u009b)(?:(?:[0-9]{1,3})?(?:(?:;[0-9]{0,3})*)?[A-M|f-m])|\u001b[A-M]/,t={reset:["fff","000"],black:"000",red:"ff0000",green:"209805",yellow:"e8bf03",blue:"0000ff",magenta:"ff00ff",cyan:"00ffee",lightgrey:"f0f0f0",darkgrey:"888"},o={30:"black",31:"red",32:"green",33:"yellow",34:"blue",35:"magenta",36:"cyan",37:"lightgrey"},n={1:"font-weight:bold",2:"opacity:0.5",3:"",4:"",8:"display:none",9:"=0)){var i=self.location.search.toLowerCase(),c=-1===i.indexOf("webpack-dev-server-hot=false"),s=-1===i.indexOf("webpack-dev-server-live-reload=false");if(t&&c)l.Rm.info("App hot update..."),N().emit("webpackHotUpdate",r.currentHash),"undefined"!=typeof self&&self.window&&self.postMessage("webpackHotUpdate".concat(r.currentHash),"*");else if(o&&s)var u=self,d=self.setInterval((function(){("about:"!==u.location.protocol||(u=u.parent).parent===u)&&function(e,r){clearInterval(r),l.Rm.info("App updated. Reloading..."),e.location.reload()}(u,d)}))}}};function P(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}var F=function(e){"object"==typeof e&&["warnings","errors","runtimeErrors"].forEach((function(r){if("string"==typeof e[r]){var t=decodeURIComponent(e[r]),o=new Function("message","var callback = ".concat(t,"\n return callback(message)"));e[r]=o}}))},H={isUnloading:!1,currentHash:t.h()},_={hot:!1,liveReload:!1,progress:!1,overlay:!1},B=function(e){var r={};if("string"==typeof e&&""!==e)for(var t=e.slice(1).split("&"),o=0;o