diff --git a/.teamcity/builds/apiReferences/stdlib/StdlibPrepareDokkaTemplates.kt b/.teamcity/builds/apiReferences/stdlib/StdlibPrepareDokkaTemplates.kt index 6ec09689573..38a4458f793 100644 --- a/.teamcity/builds/apiReferences/stdlib/StdlibPrepareDokkaTemplates.kt +++ b/.teamcity/builds/apiReferences/stdlib/StdlibPrepareDokkaTemplates.kt @@ -15,5 +15,6 @@ object StdlibPrepareDokkaTemplates: BuildType({ param("env.ALGOLIA_INDEX_NAME", "api-core") param("env.DOKKA_NOINDEX", "true") param("env.DOKKA_CUSTOM_BODY", "core-api") + param("env.DOKKA_FEEDBACK", "true") } }) \ No newline at end of file diff --git a/assets/images/core-launch.png b/assets/images/core-launch.png new file mode 100644 index 00000000000..0af20cb18cd Binary files /dev/null and b/assets/images/core-launch.png differ diff --git a/docs/images/gradle/jvm-gradle-view-build.png b/docs/images/gradle/jvm-gradle-view-build.png new file mode 100644 index 00000000000..d00488c5451 Binary files /dev/null and b/docs/images/gradle/jvm-gradle-view-build.png differ diff --git a/docs/images/gradle/jvm-main-kt-initial-gradle.png b/docs/images/gradle/jvm-main-kt-initial-gradle.png deleted file mode 100644 index 616f4bd5eeb..00000000000 Binary files a/docs/images/gradle/jvm-main-kt-initial-gradle.png and /dev/null differ diff --git a/docs/images/gradle/jvm-new-gradle-project-advanced.png b/docs/images/gradle/jvm-new-gradle-project-advanced.png index 4e3c25579c3..88ecabe2dec 100644 Binary files a/docs/images/gradle/jvm-new-gradle-project-advanced.png and b/docs/images/gradle/jvm-new-gradle-project-advanced.png differ diff --git a/docs/images/gradle/jvm-new-gradle-project.png b/docs/images/gradle/jvm-new-gradle-project.png index db7ef0471a1..72d99f54b05 100644 Binary files a/docs/images/gradle/jvm-new-gradle-project.png and b/docs/images/gradle/jvm-new-gradle-project.png differ diff --git a/docs/images/gradle/jvm-output-gradle.png b/docs/images/gradle/jvm-output-gradle.png index 4730350aa02..78d013afd2a 100644 Binary files a/docs/images/gradle/jvm-output-gradle.png and b/docs/images/gradle/jvm-output-gradle.png differ diff --git a/docs/images/gradle/jvm-run-app-gradle.png b/docs/images/gradle/jvm-run-app-gradle.png index c40ec885ab9..4cf68af85c6 100644 Binary files a/docs/images/gradle/jvm-run-app-gradle.png and b/docs/images/gradle/jvm-run-app-gradle.png differ diff --git a/docs/kr.tree b/docs/kr.tree index 0c42999666d..7eb176318b1 100644 --- a/docs/kr.tree +++ b/docs/kr.tree @@ -362,7 +362,7 @@ - + diff --git a/docs/topics/gradle/get-started-with-jvm-gradle-project.md b/docs/topics/gradle/get-started-with-jvm-gradle-project.md index 7a78d99e090..680e247966e 100644 --- a/docs/topics/gradle/get-started-with-jvm-gradle-project.md +++ b/docs/topics/gradle/get-started-with-jvm-gradle-project.md @@ -1,13 +1,13 @@ [//]: # (title: 以 Gradle 与 Kotlin/JVM 入门) -本教程演示了如何通过 InteliJ IDEA 和 Gradle 来创建一个控制台应用。 +本教程演示了如何通过 InteliJ IDEA 和 Gradle 来创建一个 JVM 控制台应用程序。 首先,请先下载最新版本的 [IntelliJ IDEA](https://www.jetbrains.com/idea/download/index.html)。 ## 创建项目 1. 在 IntelliJ IDEA 中选择**文件** | **新建** | **项目**。 -2. 在面板的左侧,选择**新建项目**。 +2. 在面板的左侧,选择**Kotlin**。 3. 根据需要修改项目的名称和位置。 > 勾选**创建 Git 仓库**来让你的项目弃启用版本控制。 @@ -15,34 +15,39 @@ > {type="tip"} -4. 在**语言**这一行选择 **Kotlin**。 - ![Create a console application](jvm-new-gradle-project.png){width=700} -5. 在**构建系统**这一行选择 **Gradle**。 -6. 在 **JDK** 这一行选择你想要应用在项目中的 [JDK](https://www.oracle.com/java/technologies/downloads/) +4. 在**构建系统**这一行选择 **Gradle**。 +5. 在 **JDK** 这一行选择你想要应用在项目中的 [JDK](https://www.oracle.com/java/technologies/downloads/) 版本。 * 如果你的计算机中已经安装了 JDK,但是 IDE 并没有识别。选择**添加 JDK** 并选择JDK 的 Home 路径。 * 如果你的计算机中尚未安装 JDK,选择 **下载 JDK**。 -7. 在 **Gradle DSL** 这一行选择 **Kotlin**。 -8. 勾选**添加示例代码**来创建一个初始的 `"Hello World!"`应用。 +6. Select the **Kotlin** DSL for Gradle. +7. 勾选**添加示例代码**来创建一个初始的 `"Hello World!"`应用。 > You can also enable the **Generate code with onboarding tips** option to add some additional useful comments to your > sample code. > {type="tip"} -9. 点击**创建**。 +8. 点击**创建**。 -你已经成功创建了一个 Gradle 项目。 +你已经成功创建了一个 Gradle 项目! #### Specify a Gradle version for your project {initial-collapse-state="collapsed"} -You can explicitly specify a Gradle version for your project under the **Advanced Settings** section, either by using the Gradle Wrapper or a local installation of Gradle: -* **Gradle Wrapper:** From the **Gradle distribution** list, select **Wrapper**. Deselect the **Auto-select** checkbox, and from the **Gradle version** list, select your Gradle version. -* **Local installation:** From the **Gradle distribution** list, select **Local installation**. For **Gradle location**, specify the path of your local Gradle version. +You can explicitly specify a Gradle version for your project under the **Advanced Settings** section, +either by using the Gradle Wrapper or a local installation of Gradle: + +* **Gradle Wrapper:** + 1. From the **Gradle distribution** list, select **Wrapper**. + 2. Disable the **Auto-select** checkbox. + 3. From the **Gradle version** list, select your Gradle version. +* **Local installation:** + 1. From the **Gradle distribution** list, select **Local installation**. + 2. For **Gradle location**, specify the path of your local Gradle version. ![Advanced settings](jvm-new-gradle-project-advanced.png){width=700} @@ -51,70 +56,58 @@ You can explicitly specify a Gradle version for your project under the **Advance 打开 `build.gradle.kts` 文件。这个是 Gradle Kotlin的构建脚本,它包含了和 Kotlin 相关的配置以及应用所需的其他部分。 ```kotlin - // 用于下方的 `KotlinCompile` 任务 -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { - kotlin("jvm") version "%kotlinVersion%" // 使用的 Kotlin 版本 - application // application 插件,见下方 1️⃣ 注释 + kotlin("jvm") version "%kotlinVersion%" // Kotlin version to use } group = "org.example" // 公司域名,例如:`org.jetbrains` version = "1.0-SNAPSHOT" // 构建工件的版本号 -repositories { // 依赖的源,见下方 2️⃣ 注释 - mavenCentral() // Maven 中心仓库,见下方 3️⃣ 注释 +repositories { // 依赖的源,见下方 1️⃣ 注释 + mavenCentral() // Maven 中心仓库,见下方 2️⃣ 注释 } -dependencies { // 项目中需要用到的库,见下方 4️⃣ 注释 +dependencies { // 项目中需要用到的库,见下方 3️⃣ 注释 // 在仓库在找到你需要的依赖,并将他们的依赖添加代码复制到这里 testImplementation(kotlin("test")) // Kotlin 的测试库 } -tasks.test { // 见下方 5️⃣ 注释 +tasks.test { // 见下方 4️⃣ 注释 useJUnitPlatform() // 用于测试的 JUnitPlatform 依赖,见下方 6️⃣ 注释 } - -kotlin { // 额外的扩展选项 - jvmToolchain(%jvmLTSVersionSupportedByKotlin%) // 生成 JVM 字节码的目标版本,见下方 7️⃣ 注释 -} - -application { - mainClass.set("MainKt") // 应用的入口类 -} ``` -* 1️⃣ [application 插件](https://docs.gradle.org/current/userguide/application_plugin.html)用于构建基于 Java 语言的 CLI 应用。 -* 2️⃣ 了解更多关于[依赖源](https://docs.gradle.org/current/userguide/declaring_repositories.html)的信息。 -* 3️⃣ [Maven 中心仓库](https://central.sonatype.com/)也可以使用 [Google 的 Maven 仓库](https://maven.google.com/)或者公司的私有仓库替代。 -* 4️⃣ 了解更多关于[依赖声明](https://docs.gradle.org/current/userguide/declaring_dependencies.html)的信息。 -* 5️⃣ 了解更多关于[任务](https://docs.gradle.org/current/dsl/org.gradle.api.Task.html)的信息。 -* 6️⃣ [用于测试的 JUnitPlatform](https://docs.gradle.org/current/javadoc/org/gradle/api/tasks/testing/Test.html#useJUnitPlatform). -* 7️⃣ 了解更多关于 [Java 工具链配置](gradle-configure-project.md#gradle-java-toolchains-support)的信息。 +* 1️⃣ 了解更多关于[依赖源](https://docs.gradle.org/current/userguide/declaring_repositories.html)的信息。 +* 2️⃣ [Maven 中心仓库](https://central.sonatype.com/)也可以使用 [Google 的 Maven 仓库](https://maven.google.com/)或者公司的私有仓库替代。 +* 3️⃣ 了解更多关于[依赖声明](https://docs.gradle.org/current/userguide/declaring_dependencies.html)的信息。 +* 4️⃣ 了解更多关于[任务](https://docs.gradle.org/current/dsl/org.gradle.api.Task.html)的信息。 +* 5️⃣ [用于测试的 JUnitPlatform](https://docs.gradle.org/current/javadoc/org/gradle/api/tasks/testing/Test.html#useJUnitPlatform). 如你所见,在 Gradle 的构建文件中也有一些关于 Kotlin 的配置项: -1. 在 `plugins{}` 块中,有一行 `kotlin("jvm")` – 该插件定义了项目中所用的 Kotlin 版本。 +1. 在 `plugins {}` 块中,有一行 `kotlin("jvm")`。这个插件定义了项目中所用的 Kotlin 版本。 -2. 在 `dependencies` 块中,有一行 `testImplementation(kotlin("test"))`。 +2. 在 `dependencies {}` 块中,有一行 `testImplementation(kotlin("test"))`。 了解更多关于[配置用于测试的库](gradle-configure-project.md#set-dependencies-on-test-libraries)的信息。 -3. 在 `dependencies` 块下方,有关于 `KotlinCompile` 任务的配置代码块。 - 你可以在这里给编译器添加额外的参数来启用或者关闭某些语言特性。 - ## 运行应用 -打开位于 `src/main/kotlin` 的 `Main.kt` 文件。 -`src` 目录包含了 Kotlin 的源代码和资源文件。`Main.kt` 文件包含了会打印出“Hello World!”的示例代码。 +1. Open the Gradle window by selecting **View** | **Tool Windows** | **Gradle**: + + ![带有main函数的Main.kt](jvm-gradle-view-build.png){width=700} + +2. Execute the **build** Gradle task in `Tasks\build\`. In the **Build** window, `BUILD SUCCESSFUL` appears. + It means that Gradle built the application successfully. -![带有main函数的Main.kt](jvm-main-kt-initial-gradle.png){width=700} +3. In `src/main/kotlin`, open the `Main.kt` file: + * `src` directory contains Kotlin source files and resources. + * `Main.kt` file contains sample code that will print `Hello World!`. -运行该应用最简单的办法就是点击对齐线旁绿色的**运行**图标,并选择**运行 'MainKt'** +4. Run the application by clicking the green **Run** icon in the gutter and select **Run 'MainKt'**. ![运行一个控制台应用](jvm-run-app-gradle.png){width=350} -你可以在**运行**的窗口中看到结果。 +你可以在**运行**的窗口中看到结果: ![Kotlin 输出结果](jvm-output-gradle.png){width=600} diff --git a/docs/topics/k2-compiler-guide.md b/docs/topics/k2-compiler-migration-guide.md similarity index 98% rename from docs/topics/k2-compiler-guide.md rename to docs/topics/k2-compiler-migration-guide.md index 3b2b0e49900..a52177ce123 100644 --- a/docs/topics/k2-compiler-guide.md +++ b/docs/topics/k2-compiler-migration-guide.md @@ -34,7 +34,7 @@ This guide: * Highlights changes you might encounter during migration and how to adapt your code accordingly. * Describes how you can roll back to the previous version. -> The new K2 compiler is enabled by default starting with Kotlin 2.0.0. For more information on the new features provided +> The new K2 compiler is enabled by default starting with %kotlinEapVersion%. For more information on the new features provided > in Kotlin 2.0.0, as well as the new K2 compiler, see [What's new in Kotlin %kotlinEapVersion%](whatsnew-eap.md). > {type="note"} @@ -499,9 +499,9 @@ class Expanded // Visibility is public by defaul ## How to enable the Kotlin K2 compiler -Starting with Kotlin 2.0.0, the Kotlin K2 compiler is enabled by default. +Starting with Kotlin %kotlinEapVersion%, the Kotlin K2 compiler is enabled by default. -To upgrade the Kotlin version, change it to 2.0.0 in your [Gradle](gradle-configure-project.md#apply-the-plugin) and +To upgrade the Kotlin version, change it to %kotlinEapVersion% in your [Gradle](gradle-configure-project.md#apply-the-plugin) and [Maven](maven.md#configure-and-enable-the-plugin) build scripts. ### Use Kotlin build reports with Gradle @@ -547,7 +547,7 @@ IntelliJ IDEA can use the new K2 compiler to analyze your code with its K2 Kotli ## How to roll back to the previous compiler -To use the previous compiler in Kotlin 2.0.0, either: +To use the previous compiler in Kotlin %kotlinEapVersion%, either: * In your `build.gradle.kts` file, [set your language version](gradle-compiler-options.md#设置-languageversion-的示例) to `1.9`. @@ -635,21 +635,20 @@ If you have the following Kotlin code, where instances of the `Container` class method will always generate an error. However, only from Kotlin 2.0.0 will the synthetic `foo` property trigger an error: ```kotlin -fun exampleFunction(firstContainer: Container<*>, secondContainer: Container, sampleString: String) { - container.setFoo(sampleString) +fun exampleFunction(starProjected: Container<*>, inProjected: Container, sampleString: String) { + starProjected.setFoo(sampleString) // Error since Kotlin 1.0 - + // Synthetic setter `foo` is resolved to the `setFoo()` method - container.foo = sampleString + starProjected.foo = sampleString // Error since Kotlin 2.0.0 - secondContainer.setFoo(sampleString) + inProjected.setFoo(sampleString) // Error since Kotlin 1.0 // Synthetic setter `foo` is resolved to the `setFoo()` method - secondContainer.foo = sampleString + inProjected.foo = sampleString // Error since Kotlin 2.0.0 - } ``` @@ -731,6 +730,8 @@ class Generic // Creates an instance of Generic class with type Some fun gen() = Generic>() + +fun takeString(g: Generic>) {} ``` @@ -746,8 +747,6 @@ in module one: ```kotlin // Module three -fun takeString(g: Generic>) {} - fun test() { // Triggers a warning in Kotlin 2.0.0 val z = gen() @@ -805,7 +804,7 @@ fun main() { } ``` -Given the above, `a` resolves to the Kotlin property within the `Derived` Kotlin class, whereas `b` resolves to +Prior to Kotlin 2.0.0, `a` resolves to the Kotlin property within the `Derived` Kotlin class, whereas `b` resolves to the Java field in the `Base` Java class. In Kotlin 2.0.0, the resolution behavior in the example is consistent, ensuring that the Kotlin property supersedes the @@ -863,40 +862,6 @@ fun main() { } ``` -In case a Java class contains a field and a synthetic property of the same name, the field supersedes the property. For example: - - - - - - - - - - -
JavaKotlin
- -```java -public class JavaClass { - public final String name; - - public String getName() { - return name; - } -} -``` - - - -```kotlin -fun main() { - // Resolves Java field: name - JavaClass.name -} -``` - -
- **What's the best practice now?** If this change affects your code, consider whether you really need to use duplicate names. If you want to have Java or diff --git a/docs/topics/native/native-objc-interop.md b/docs/topics/native/native-objc-interop.md index 83b8fd4a31e..283c6cf8f1d 100644 --- a/docs/topics/native/native-objc-interop.md +++ b/docs/topics/native/native-objc-interop.md @@ -149,7 +149,7 @@ package my.library fun foo() {} ``` -You can them call the `foo()` function from Swift like this: +You can then call the `foo()` function from Swift like this: ```swift MyLibraryUtilsKt.foo() diff --git a/dokka-templates/base.ftl b/dokka-templates/base.ftl index 92c7df57108..9a1c8b9d809 100644 --- a/dokka-templates/base.ftl +++ b/dokka-templates/base.ftl @@ -9,7 +9,7 @@ <@page_metadata.display/> <@template_cmd name="pathToRoot"> - + <#-- This script doesn't need to be there but it is nice to have since app in dark mode doesn't 'blink' (class is added before it is rendered) --> @@ -28,7 +28,7 @@ <#-- Resources (scripts, stylesheets) are handled by Dokka. Use customStyleSheets and customAssets to change them. --> - + <@resources/> @@ -41,13 +41,78 @@
<@content/> + <#if "${process.env.DOKKA_FEEDBACK}" == "true"> + + <@footer.display/>
- - + + +<#if "${process.env.DOKKA_FEEDBACK}" == "true"> + + \ No newline at end of file diff --git a/static/js/page/api/api.scss b/static/js/page/api/api.scss index 9edb5e161d7..5564e235437 100644 --- a/static/js/page/api/api.scss +++ b/static/js/page/api/api.scss @@ -322,4 +322,175 @@ $jvm-enrichment: JRE7, JRE8, JUnit, JUnit5, TestNG; .tags__tag.kotlin-version.hidden-version { visibility: hidden; -} \ No newline at end of file +} + +/* ====== */ +#optimize-banner { display: none!important; } + +.api-docs-to-core { + position: relative; + padding: 0; +} + +.api-docs-to-core__link { + display: flex; + align-items: stretch; + justify-content: center; + min-height: 52px; + + background: linear-gradient(90.12deg, #7F52FF 23%, #A952FF 34.23%, #9952FF 44.65%, #8952FF 100%); +} + +.api-docs-to-core__link, .api-docs-to-core__link:hover { + color: #fff; + text-decoration: none; +} + +.api-docs-to-core__text { + display: inline-flex; + align-items: center; + background: url("/assets/images/core-launch.png") 24px 2px no-repeat; + background-size: 48px; + padding: 0 2px 0 calc(24px + 48px + 8px); + margin-left: -24px; + + animation-duration: 300ms, 300ms; + animation-delay: 0s, 300ms; + animation-timing-function: ease-in, ease-out; +} +@keyframes rocket-in { + from { + background-position: 24px 2px; + } + + to { + background-position: calc(24px + 48px) -52px; + } +} +@keyframes rocket-out { + from { + background-position: calc(24px - 48px) 52px; + } + + to { + background-position: 24px 2px; + } +} +.api-docs-to-core_hover .api-docs-to-core__text { + animation-name: rocket-in, rocket-out; +} + +.api-docs-to-core__close { + position: absolute; + top: 50%; + right: 20px; + transform: translateY(-50%); + display: flex; + align-items: center; + justify-content: center; + background-color: transparent; + border: none; + color: inherit; + cursor: pointer; + height: 52px; + width: 52px; + box-sizing: border-box; +} + +.api-docs-to-core-mobile { + position: fixed; + left: 50%; + transform: translateX(-50%); + bottom: 12px; + background: linear-gradient(108.46deg, #7F52FF 0%, #A852FF 10.78%, #7F52FF 100%); + border-radius: 8px; + width: 456px; + z-index: 100; + color: #fff; +} + +@media (max-width: 479px) { + .api-docs-to-core-mobile { + left: 12px; + right: 12px; + transform: none; + width: auto; + } +} + +.api-docs-to-core-mobile__text { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + text-align: center; + padding: 24px 12px; +} + +.api-docs-to-core-mobile__text::before { + display: block; + content: ''; + background: url("/assets/images/core-launch.png") center center no-repeat; + background-size: 48px; + height: 48px; + width: 48px; +} + +.api-docs-to-core-mobile__controls { + display: flex; + align-items: stretch; + justify-content: center; + flex-wrap: wrap; + border-top: 1px solid rgba(255, 255, 255, 0.2); + min-height: 52px; +} + +.api-docs-to-core__text, .api-docs-to-core-mobile__text { + font-size: 16px; + font-weight: 400; + line-height: 24px; + letter-spacing: 0.0015em; + text-align: center; +} + +.api-docs-to-core-mobile__link, .api-docs-to-core-mobile__link:hover, +.api-docs-to-core-mobile__close, .api-docs-to-core-mobile__close:hover { + flex: 1 0 0; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + padding: 8px; + + background-color: transparent; + border: none; + color: inherit; + cursor: pointer; + text-decoration: none; + + font-size: 13px; + font-weight: 400; + line-height: 20px; + letter-spacing: 0.0045em; +} + +.api-docs-to-core, .api-docs-to-core-mobile { + font-family: "JetBrains Sans", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Droid Sans", "Helvetica Neue", Arial, sans-serif; + font-feature-settings: 'ss20'; +} + +.api-docs-to-core-mobile__link:hover, .api-docs-to-core-mobile__close:hover { + background: rgba(255, 255, 255, 0.1); +} + +.api-docs-to-core-mobile__close { + border-left: 1px solid rgba(255, 255, 255, 0.2); + margin-left: -1px; +} + +.api-docs-to-core-closed { + display: none; +} + +@media (max-width: 704px) { .api-docs-to-core { display: none; } } +@media (min-width: 705px) { .api-docs-to-core-mobile { display: none; } } diff --git a/static/js/page/dokka-template/feedback.js b/static/js/page/dokka-template/feedback.js new file mode 100644 index 00000000000..4f771f3a3ac --- /dev/null +++ b/static/js/page/dokka-template/feedback.js @@ -0,0 +1,90 @@ +function closePopup() { + document.querySelector('.app-feedback-popup').classList.add('app-feedback-popup_close'); +} + +function showThanks() { + document.querySelector('.feedback__block--active').classList.remove('feedback__block--active'); + document.querySelector('[data-test="feedback-left"]').classList.add('feedback__block--active'); +} + +function toggleEmail(val) { + const email = document.querySelector('[data-test-id="feedback-email"]'); + email.setAttribute('aria-invalid', String(!val)); + + const classes = email.parentNode.parentNode.parentNode.parentNode.classList; + classes.toggle('_error_1fowpgw_83', !val); + classes.toggle('input_error', !val); +} + +function toggleSubmit(val) { + const submit = document.querySelector('[data-test="feedback-send"]'); + submit.toggleAttribute('disabled', !val); + + const classes = submit.classList; + classes.toggle('_disabled_joawza_61', !val); + classes.toggle('button_disabled', !val); +} + +export function initFeedback() { + const feedback = document.querySelector('.feedback'); + + if (feedback) { + feedback.querySelector('[data-test="feedback-yes"]').addEventListener('click', function(e) { + e.preventDefault(); + closePopup(); + showThanks(); + }); + + feedback.querySelector('[data-test="feedback-no"]').addEventListener('click', function(e) { + e.preventDefault(); + document.querySelector('.app-feedback-popup').classList.remove('app-feedback-popup_close'); + }); + } + + const form = document.querySelector('.app-feedback-popup form'); + + if (form) { + const fields = form.elements; + + form.querySelector('[data-test="feedback-close"]').addEventListener('click', function(e) { + e.preventDefault(); + closePopup(); + }); + + form.addEventListener('input', function() { + const emailValid = fields.email.value === '' || fields.email.validity.valid; + + toggleEmail(emailValid); + toggleSubmit(fields.content.value !== '' && emailValid); + }); + + form.addEventListener('submit', function(e) { + e.preventDefault(); + + const content= document.getElementById('content'); + const articleId = content && content.getAttribute('pageids'); + const titleNode = document.querySelector('h1.cover'); + const title = titleNode && titleNode.textContent; + + window.fetch('https://forms-service.jetbrains.com/feedback', { + method: 'POST', + mode: 'cors', + credentials: 'omit', + headers: { + 'content-type': 'application/json', + }, + body: JSON.stringify({ + content: fields.content.value || '', + name: fields.name.value || '', + email: fields.email.value || '', + url: document.location.href || '', + articleId: articleId || 'core-api', + title: title || 'Core API: Untitled' + }) + }); + + showThanks(); + closePopup(); + }); + } +} diff --git a/static/js/page/dokka-template/feedback.scss b/static/js/page/dokka-template/feedback.scss new file mode 100644 index 00000000000..7a4f39ffd16 --- /dev/null +++ b/static/js/page/dokka-template/feedback.scss @@ -0,0 +1,1635 @@ +.feedback-wrapper { + max-width: 1128px; + margin: 0 auto; + width: 100%; +} + +.app-feedback-popup > .feedback__popup { + position: fixed; + z-index: 910; + right: 22px; + bottom: 22px; + overflow-x: hidden; + box-sizing: border-box; + min-width: auto; + max-width: 442px; + max-height: calc(100vh - 16px); + margin-top: 12px; + padding: 22px 32px; + border: 1px solid rgba(25, 25, 28, .2); + text-align: left; + background-color: #f4f4f4; +} + +.theme-dark .app-feedback-popup > .feedback__popup { + border-color: #d1d1d2; +} + +@media screen and (max-width: 640px) { + .app-feedback-popup > .feedback__popup { + top: 0; + right: 8px; + bottom: auto; + left: 8px; + overflow-y: auto; + } +} + +.feedback, .feedback__popup { + font-family: JetBrains Sans, Inter, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Droid Sans, Helvetica Neue, Arial, sans-serif !important; + color: rgba(25, 25, 28, .7); +} + +.feedback { + position: relative; + display: inline-block; + box-sizing: border-box; + padding: 24px 32px; + border-radius: 4px; + background-color: #f4f4f4; + line-height: 36px; + margin: 64px var(--horizontal-spacing-for-content); +} + +@media print { + .feedback { + display: none + } +} +.no-js .feedback-wrapper { + display: none; +} + +@media screen and (max-width: 640px) { + .feedback { + margin: 32px 0; + padding: 16px; + } + + .feedback__popup-wrapper::before { + display: block; + content: ''; + position: fixed; + z-index: 906; + top: 0; + right: 0; + bottom: 0; + left: 0; + opacity: .9; + overflow: hidden; + background: #fff; + transition: opacity .1s; + } + + .theme-dark .feedback__popup-wrapper::before { + background: #19191c; + } +} + +.feedback__popup { + display: flex; + flex-flow: column nowrap; + justify-content: space-between; + box-sizing: border-box; + min-height: 538px; + line-height: 36px +} + +@media print { + .feedback__popup { + display: none + } +} + +.theme-dark .feedback, .theme-dark .feedback__popup { + background-color: #252528; + color: hsla(0, 0%, 100%, 0.8); +} + +.feedback__popup a { + border-bottom: 1px solid #d1d1d2; + text-decoration: none; + color: inherit; + line-height: 16px +} + +.theme-dark .feedback__popup a { + border-color: hsla(0, 0%, 100%, .2); +} + +.feedback__popup a:hover { + border-bottom-color: unset +} + +.feedback__popup a:hover, .feedback__popup a:visited { + color: rgba(25, 25, 28, .7); +} + +.theme-dark .feedback__popup a:hover { + border-bottom-color: unset +} + +.theme-dark .feedback__popup a:hover, .theme-dark .feedback__popup a:visited { + color: hsla(0, 0%, 100%, .7); +} + +.feedback__block { + display: none +} + +.feedback__block--active { + display: block +} + +.feedback__text { + display: flex; + align-items: flex-start +} + +.feedback__button, .feedback__text { + margin-top: 6px; + margin-bottom: 6px; +} + +.feedback__button:not(:last-child) { + margin-right: 16px; +} + +.feedback__head { + letter-spacing: normal; + font-size: 20px; + font-weight: 530; + position: relative; + display: flex; + justify-content: space-between; + align-items: flex-start; + box-sizing: border-box; + width: 100%; + margin-bottom: .7em; + padding-right: 24px; + color: #19191c; + line-height: 1.5 +} + +.theme-dark .feedback__head { + color: #fff; +} + +.feedback__legend { + padding: 3px 0 +} + +.feedback__close-button { + position: absolute; + top: 0; + right: -9px +} + +.feedback__field { + align-self: stretch; + margin-bottom: 14px +} + +.feedback__description { + font-size: 11px; + line-height: 1.5 +} + +.feedback__footer { + display: flex; + justify-content: space-between; + align-items: flex-end; + color: #f45c4a; + font-size: 11px; + line-height: 1; + gap: 15px +} + +.feedback__popup, .feedback { + ._main_joawza_17 { + letter-spacing: .0015em; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._rs-reset-letter-spacing_joawza_1 ._main_joawza_17 { + letter-spacing: normal + } + + ._main_joawza_17:focus[data-focus-method=key] { + box-shadow: 0 0 0 4px rgba(107, 87, 255, .8); + } + + ._main_joawza_17 { + position: relative; + z-index: 1; + display: inline-block; + box-sizing: border-box; + border: none; + cursor: pointer; + text-align: center; + white-space: nowrap; + background: transparent; + transition: color .1s, background-color .1s, border-color .1s + } + + ._main_joawza_17, ._main_joawza_17:active, ._main_joawza_17:focus, ._main_joawza_17:hover { + outline: none; + text-decoration: none + } + + .theme-dark & ._main_joawza_17:focus[data-focus-method=key] { + box-shadow: 0 0 0 4px rgba(132, 115, 255, .8); + } + + [class*=wt-col] { + flex-basis: calc(8.33333% * var(--wt-col-count) - var(--wt-horizontal-layout-gutter) * 2); + max-width: calc(8.33333% * var(--wt-col-count) - var(--wt-horizontal-layout-gutter) * 2); + box-sizing: border-box + } + + [class*=wt-col], [class*=wt-col].wt-row { + margin-right: var(--wt-horizontal-layout-gutter); + margin-left: var(--wt-horizontal-layout-gutter) + } + + .wt-row { + --wt-horizontal-layout-gutter: 0px; + flex-wrap: wrap; + margin-right: calc(var(--wt-horizontal-layout-gutter) * -1); + margin-left: calc(var(--wt-horizontal-layout-gutter) * -1); + box-sizing: border-box + } + + .wt-row, .wt-row_wide { + display: flex + } + + .wt-row_wrap { + flex-wrap: wrap + } + + .wt-row_justify_start { + justify-content: flex-start + } + + .wt-row_direction_column > * { + flex: 1 + } + + .wt-row_direction_column-reverse > * { + flex: 1 + } + + .wt-row_size_xs { + --wt-horizontal-layout-gutter: 6px + } + + ._modeOutline_joawza_356 { + color: #19191c; + position: relative; + border-style: solid; + border-color: rgba(25, 25, 28, .3) + } + + ._modeOutline_joawza_356:focus { + color: #19191c; + border-color: rgba(25, 25, 28, .3) + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + ._modeOutline_joawza_356:hover { + color: #19191c; + background: rgba(25, 25, 28, .1); + border-color: rgba(25, 25, 28, .3) + } + } + + ._modeOutline_joawza_356:active { + color: #19191c; + background: rgba(25, 25, 28, .1); + border-color: #19191c + } + + ._modeOutline_joawza_356._disabled_joawza_61 { + color: rgba(25, 25, 28, .5); + background: transparent; + border-color: rgba(25, 25, 28, .2) + } + + .theme-dark & ._modeOutline_joawza_356 { + color: #fff; + border-color: hsla(0, 0%, 100%, .3) + } + + .theme-dark & ._modeOutline_joawza_356:focus { + color: #fff; + border-color: hsla(0, 0%, 100%, .4) + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._modeOutline_joawza_356:hover { + color: #fff; + background: hsla(0, 0%, 100%, .1); + border-color: hsla(0, 0%, 100%, .4) + } + } + + .theme-dark & ._modeOutline_joawza_356:active { + color: #fff; + background: hsla(0, 0%, 100%, .1); + border-color: #fff + } + + .theme-dark & ._modeOutline_joawza_356._disabled_joawza_61 { + color: hsla(0, 0%, 100%, .5); + background: transparent; + border-color: hsla(0, 0%, 100%, .2) + } + + ._sizeS_joawza_92._modeOutline_joawza_356 { + padding: 5px 15px; + border-width: 1px + } + + ._sizeS_joawza_92._modeOutline_joawza_356._withoutText_joawza_113 { + padding: 5px; + border-width: 1px + } + + ._sizeS_joawza_92._modeOutline_joawza_356:active { + padding: 4px 14px; + border-width: 2px + } + + ._sizeS_joawza_92 { + letter-spacing: .0045em; + font-size: 13px; + line-height: 20px; + } + + ._rs-reset-letter-spacing_joawza_1 ._sizeS_joawza_92 { + letter-spacing: normal + } + + ._sizeS_joawza_92 { + border-radius: 24px; + } + + ._sizeS_joawza_92 { + padding: 6px 16px; + border-width: 0 + } + + ._sizeS_joawza_92._withoutText_joawza_113 { + padding: 6px; + border-width: 0 + } + + ._sizeS_joawza_92._modeOutline_joawza_356 { + padding: 5px 15px; + border-width: 1px + } + + ._sizeS_joawza_92._modeOutline_joawza_356._withoutText_joawza_113 { + padding: 5px; + border-width: 1px + } + + ._sizeS_joawza_92._modeOutline_joawza_356:active { + padding: 4px 14px; + border-width: 2px + } + + ._sizeS_joawza_92._modeOutline_joawza_356._withoutText_joawza_113:active { + padding: 4px; + border-width: 2px + } + + ._sizeS_joawza_92 ._icon_joawza_525, ._sizeXs_joawza_85 ._icon_joawza_525 { + width: 20px; + height: 20px; + min-width: 20px; + min-height: 20px; + margin: 0 8px 0 -2px + } + + ._sizeS_joawza_92._alignIconRight_joawza_81 ._icon_joawza_525, ._sizeXs_joawza_85._alignIconRight_joawza_81 ._icon_joawza_525 { + width: 20px; + height: 20px; + min-width: 20px; + min-height: 20px; + margin: 0 -2px 0 8px + } + + ._alignIconLeft_joawza_77 { + flex-direction: row + } + + .theme-dark & ._main_joawza_17:focus[data-focus-method=key] { + box-shadow: 0 0 0 4px rgba(132, 115, 255, .8); + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17 { + color: #fff; + background: #8473ff; + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._modeClassic_joawza_135._main_joawza_17:hover { + color: #fff; + background: rgba(132, 115, 255, .8); + } + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17:active { + color: #fff; + background: #8473ff; + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17:active:focus:not(:hover)[data-focus-method=key] { + background: rgba(132, 115, 255, .8); + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17._disabled_joawza_61 { + color: hsla(0, 0%, 100%, .5); + background: hsla(0, 0%, 100%, .2) + } + + .theme-dark & ._modeOutline_joawza_356._main_joawza_17 { + color: #fff; + border-color: hsla(0, 0%, 100%, .3) + } + + .theme-dark & ._modeOutline_joawza_356._main_joawza_17:focus { + color: #fff; + border-color: hsla(0, 0%, 100%, .4) + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._modeOutline_joawza_356._main_joawza_17:hover { + color: #fff; + background: hsla(0, 0%, 100%, .1); + border-color: hsla(0, 0%, 100%, .4) + } + } + + .theme-dark & ._modeOutline_joawza_356._main_joawza_17:active { + color: #fff; + background: hsla(0, 0%, 100%, .1); + border-color: #fff + } + + .theme-dark & ._modeOutline_joawza_356._main_joawza_17._disabled_joawza_61 { + color: hsla(0, 0%, 100%, .5); + background: transparent; + border-color: hsla(0, 0%, 100%, .2) + } + + ._modeClear_joawza_434 { + color: #19191c; + background: transparent + } + + ._modeClear_joawza_434:focus { + color: #19191c; + background: transparent + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + ._modeClear_joawza_434:hover { + color: #19191c; + background: rgba(25, 25, 28, .1) + } + } + + ._modeClear_joawza_434:active { + color: #19191c; + background: rgba(25, 25, 28, .2) + } + + ._modeClear_joawza_434._disabled_joawza_61 { + color: rgba(25, 25, 28, .5); + background: transparent + } + + .theme-dark & ._modeClear_joawza_434._main_joawza_17 { + color: #fff; + background: transparent + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._modeClear_joawza_434._main_joawza_17:hover { + color: #fff; + background: hsla(0, 0%, 100%, .1) + } + } + + .theme-dark & ._modeClear_joawza_434._main_joawza_17:active { + color: #fff; + background: hsla(0, 0%, 100%, .2) + } + + .theme-dark & ._modeClear_joawza_434._main_joawza_17._disabled_joawza_61 { + color: hsla(0, 0%, 100%, .5) + } + + ._withIcon_joawza_119, ._withoutText_joawza_113 { + display: inline-flex; + justify-content: center; + align-items: center + } + + ._sizeS_joawza_92._withoutText_joawza_113 { + padding: 6px; + border-width: 0 + } + + ._sizeS_joawza_92._modeOutline_joawza_356._withoutText_joawza_113 { + padding: 5px; + border-width: 1px + } + + ._sizeS_joawza_92._modeOutline_joawza_356._withoutText_joawza_113:active { + padding: 4px; + border-width: 2px + } + + ._withoutText_joawza_113 ._icon_joawza_525, ._withoutText_joawza_113._alignIconRight_joawza_81 ._icon_joawza_525 { + margin: 0 + } + + .wt-col-inline { + --wt-col-count: 0; + max-width: 100%; + flex-basis: auto + } + + .wt-icon { + fill: currentcolor + } + + .wt-icon_size_s { + width: 24px; + height: 24px + } + + @keyframes wt-icon-rotate { + to { + transform: rotate(1turn) + } + } + + ._icon_joawza_525 { + fill: currentColor + } + + ._sizeS_joawza_92 ._icon_joawza_525, ._sizeXs_joawza_85 ._icon_joawza_525 { + width: 20px; + height: 20px; + min-width: 20px; + min-height: 20px; + margin: 0 8px 0 -2px + } + + ._sizeM_joawza_99 ._icon_joawza_525 { + width: 24px; + height: 24px; + min-width: 24px; + min-height: 24px; + margin: 0 8px 0 -2px + } + + ._sizeL_joawza_106 ._icon_joawza_525 { + width: 28px; + height: 28px; + min-width: 28px; + min-height: 28px; + margin: 0 16px 0 -2px + } + + ._sizeS_joawza_92._alignIconRight_joawza_81 ._icon_joawza_525, ._sizeXs_joawza_85._alignIconRight_joawza_81 ._icon_joawza_525 { + width: 20px; + height: 20px; + min-width: 20px; + min-height: 20px; + margin: 0 -2px 0 8px + } + + ._sizeM_joawza_99._alignIconRight_joawza_81 ._icon_joawza_525 { + width: 24px; + height: 24px; + min-width: 24px; + min-height: 24px; + margin: 0 -2px 0 8px + } + + ._sizeL_joawza_106._alignIconRight_joawza_81 ._icon_joawza_525 { + width: 28px; + height: 28px; + min-width: 28px; + min-height: 28px; + margin: 0 -2px 0 16px + } + + ._withoutText_joawza_113 ._icon_joawza_525, ._withoutText_joawza_113._alignIconRight_joawza_81 ._icon_joawza_525 { + margin: 0 + } + + ._labelWrapper_hvg13z_44 { + display: block + } + + ._labelWrapper_hvg13z_44._error_hvg13z_108 ._inner_hvg13z_61, ._labelWrapper_hvg13z_44._error_hvg13z_108 ._inner_hvg13z_61:hover, ._labelWrapper_hvg13z_44._error_hvg13z_108._focused_hvg13z_90 ._inner_hvg13z_61 { + border-width: 2px; + border-color: #f45c4a + } + + ._sizeM_hvg13z_98 ._inner_hvg13z_61 { + padding: 7px; + letter-spacing: .0015em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._rs-reset-letter-spacing_hvg13z_1 ._sizeM_hvg13z_98 ._inner_hvg13z_61 { + letter-spacing: normal + } + + ._sizeM_hvg13z_98._error_hvg13z_108 ._inner_hvg13z_61, ._sizeM_hvg13z_98._focused_hvg13z_90 ._inner_hvg13z_61 { + padding: 6px + } + + ._sizeM_hvg13z_98 ._errorMessage_hvg13z_256, ._sizeM_hvg13z_98 ._note_hvg13z_257 { + letter-spacing: .0045em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 13px; + line-height: 20px; + } + + ._rs-reset-letter-spacing_hvg13z_1 ._sizeM_hvg13z_98 ._errorMessage_hvg13z_256, ._rs-reset-letter-spacing_hvg13z_1 ._sizeM_hvg13z_98 ._note_hvg13z_257 { + letter-spacing: normal + } + + .theme-dark & ._labelWrapper_hvg13z_44._focused_hvg13z_90 ._inner_hvg13z_61 { + border-color: #fff; + background-color: #474749 + } + + .theme-dark & ._labelWrapper_hvg13z_44._focused_hvg13z_90._keyFocused_hvg13z_144 ._inner_hvg13z_61 { + box-shadow: 0 0 0 4px #6f61d2; + } + + .theme-dark & ._labelWrapper_hvg13z_44._rock_hvg13z_148._focused_hvg13z_90 ._inner_hvg13z_61 { + color: #19191c; + background-color: #fff + } + + .theme-dark & ._labelWrapper_hvg13z_44._disabled_hvg13z_56 ._inner_hvg13z_61 { + border-color: hsla(0, 0%, 100%, .2); + background-color: #19191c; + color: hsla(0, 0%, 100%, .5); + } + + ._wrapper_hvg13z_48 { + position: relative; + display: flex; + flex-wrap: nowrap; + cursor: text + } + + ._disabled_hvg13z_56 ._wrapper_hvg13z_48 { + cursor: default + } + + ._inner_hvg13z_61 { + display: block; + flex: 1 1 100%; + box-sizing: border-box; + width: 100%; + margin: 0; + padding: 0; + border: 1px solid; + outline: none; + resize: none; + color: inherit; + background: transparent; + font: inherit + } + + ._inner_hvg13z_61:focus { + outline: none + } + + ._inner_hvg13z_61::-moz-placeholder { + opacity: 1 + } + + ._inner_hvg13z_61::placeholder { + opacity: 1 + } + + ._focused_hvg13z_90 ._inner_hvg13z_61 { + border-width: 2px + } + + ._sizeL_hvg13z_94 ._inner_hvg13z_61 { + padding: 11px 15px; + font-feature-settings: "kern", "liga", "calt"; + font-size: 20px; + font-weight: 400; + line-height: 28px; + } + + ._sizeM_hvg13z_98 ._inner_hvg13z_61 { + padding: 7px; + letter-spacing: .0015em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._rs-reset-letter-spacing_hvg13z_1 ._sizeM_hvg13z_98 ._inner_hvg13z_61 { + letter-spacing: normal + } + + ._sizeS_hvg13z_102 ._inner_hvg13z_61 { + padding: 5px 7px; + letter-spacing: .0045em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 13px; + line-height: 20px; + } + + ._rs-reset-letter-spacing_hvg13z_1 ._sizeS_hvg13z_102 ._inner_hvg13z_61 { + letter-spacing: normal + } + + ._sizeL_hvg13z_94._error_hvg13z_108 ._inner_hvg13z_61, ._sizeL_hvg13z_94._focused_hvg13z_90 ._inner_hvg13z_61 { + padding: 10px 14px + } + + ._sizeM_hvg13z_98._error_hvg13z_108 ._inner_hvg13z_61, ._sizeM_hvg13z_98._focused_hvg13z_90 ._inner_hvg13z_61 { + padding: 6px + } + + ._sizeS_hvg13z_102._error_hvg13z_108 ._inner_hvg13z_61, ._sizeS_hvg13z_102._focused_hvg13z_90 ._inner_hvg13z_61 { + padding: 4px 6px + } + + @media (hover: hover) { + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61 { + scrollbar-color: #a3a3a4 #e8e8e8; + scrollbar-width: thin + } + } + + @media (hover: hover) { + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar { + width: 7px; + height: 8px + } + } + + @media (hover: hover) { + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar-corner { + background-color: transparent + } + } + + @media (hover: hover) { + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar-track { + background-color: #e8e8e8; + } + } + + @media (hover: hover) { + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar-thumb { + width: 7px; + border-radius: 7px; + background: #a3a3a4; + } + } + + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61 { + color: #19191c; + border-color: rgba(25, 25, 28, .2); + background-color: #fff + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61:hover { + border-color: rgba(25, 25, 28, .5) + } + } + + html:not(.theme-dark) & ._labelWrapper_hvg13z_44._focused_hvg13z_90 ._inner_hvg13z_61 { + border-color: #19191c + } + + html:not(.theme-dark) & ._labelWrapper_hvg13z_44._focused_hvg13z_90._keyFocused_hvg13z_144 ._inner_hvg13z_61 { + box-shadow: 0 0 0 4px #8979ff; + } + + html:not(.theme-dark) & ._labelWrapper_hvg13z_44._rock_hvg13z_148._focused_hvg13z_90 ._inner_hvg13z_61 { + color: #fff; + background-color: #19191c + } + + html:not(.theme-dark) & ._labelWrapper_hvg13z_44._disabled_hvg13z_56 ._inner_hvg13z_61 { + border-color: rgba(25, 25, 28, .2); + background-color: #f4f4f4; + color: rgba(25, 25, 28, .5); + } + + @media (hover: hover) { + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61 { + scrollbar-color: #8c8c8e #5e5e60; + scrollbar-width: thin + } + } + + @media (hover: hover) { + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar { + width: 7px; + height: 8px + } + } + + @media (hover: hover) { + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar-corner { + background-color: transparent + } + } + + @media (hover: hover) { + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar-track { + background-color: #5e5e60; + } + } + + @media (hover: hover) { + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-webkit-scrollbar-thumb { + width: 7px; + border-radius: 7px; + background: #8c8c8e; + } + } + + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61 { + color: #fff; + border-color: hsla(0, 0%, 100%, .2); + background-color: #303033 + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61:hover { + border-color: hsla(0, 0%, 100%, .5); + background-color: #474749 + } + } + + .theme-dark & ._labelWrapper_hvg13z_44._focused_hvg13z_90 ._inner_hvg13z_61 { + border-color: #fff; + background-color: #474749 + } + + .theme-dark & ._labelWrapper_hvg13z_44._focused_hvg13z_90._keyFocused_hvg13z_144 ._inner_hvg13z_61 { + box-shadow: 0 0 0 4px #6f61d2; + } + + .theme-dark & ._labelWrapper_hvg13z_44._rock_hvg13z_148._focused_hvg13z_90 ._inner_hvg13z_61 { + color: #19191c; + background-color: #fff + } + + .theme-dark & ._labelWrapper_hvg13z_44._disabled_hvg13z_56 ._inner_hvg13z_61 { + border-color: hsla(0, 0%, 100%, .2); + background-color: #19191c; + color: hsla(0, 0%, 100%, .5); + } + + ._labelWrapper_hvg13z_44._error_hvg13z_108 ._inner_hvg13z_61, ._labelWrapper_hvg13z_44._error_hvg13z_108 ._inner_hvg13z_61:hover, + ._labelWrapper_hvg13z_44._error_hvg13z_108._focused_hvg13z_90 ._inner_hvg13z_61 { + border-width: 2px; + border-color: #f45c4a + } + + .theme-dark & ._labelWrapper_hvg13z_44._rock_hvg13z_148._focused_hvg13z_90 ._inner_hvg13z_61::-moz-placeholder, + html:not(.theme-dark) & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-moz-placeholder { + color: rgba(25, 25, 28, .5); + } + + .theme-dark & ._labelWrapper_hvg13z_44._rock_hvg13z_148._focused_hvg13z_90 ._inner_hvg13z_61::placeholder, + ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::placeholder { + color: rgba(25, 25, 28, .5); + } + + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::-moz-placeholder, + html:not(.theme-dark) & ._labelWrapper_hvg13z_44._rock_hvg13z_148._focused_hvg13z_90 ._inner_hvg13z_61::-moz-placeholder { + color: hsla(0, 0%, 100%, .5); + } + + .theme-dark & ._labelWrapper_hvg13z_44 ._inner_hvg13z_61::placeholder, + html:not(.theme-dark) & ._labelWrapper_hvg13z_44._rock_hvg13z_148._focused_hvg13z_90 ._inner_hvg13z_61::placeholder { + color: hsla(0, 0%, 100%, .5); + } + + ._container_1fowpgw_10 { + display: block + } + + html:not(.theme-dark) & ._container_1fowpgw_10._enabled_1fowpgw_27._rock_1fowpgw_48._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #19191c + } + + .theme-dark & ._container_1fowpgw_10 ._wrapper_1fowpgw_14 { + border-color: hsla(0, 0%, 100%, .2); + background-color: #303033 + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._filled_1fowpgw_27 ._wrapper_1fowpgw_14 { + border-color: hsla(0, 0%, 100%, .3) + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27:hover ._wrapper_1fowpgw_14 { + border-color: hsla(0, 0%, 100%, .5); + background-color: #474749 + } + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + border-width: 2px; + border-color: #fff + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._classic_1fowpgw_44._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #474749 + } + + .theme-dark ._container_1fowpgw_10._enabled_1fowpgw_27._rock_1fowpgw_48._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #fff + } + + html:not(.theme-dark) ._disabled_1fowpgw_103._container_1fowpgw_10 ._wrapper_1fowpgw_14 { + background-color: #f4f4f4 + } + + .theme-dark & ._disabled_1fowpgw_103._container_1fowpgw_10 ._wrapper_1fowpgw_14 { + background-color: #19191c + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill, + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:active, + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:focus, + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:hover { + -webkit-text-fill-color: #19191c; + -webkit-box-shadow: 0 0 0 1000px #fff inset + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill, + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:active, + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:focus, + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:hover, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:active, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:focus, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:hover { + -webkit-text-fill-color: #fff; + -webkit-box-shadow: 0 0 0 1000px #19191c inset + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill, + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:active, + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:focus, + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:hover { + -webkit-text-fill-color: #19191c; + -webkit-box-shadow: 0 0 0 1000px #fff inset + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171::placeholder { + color: hsla(0, 0%, 100%, .5) + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:disabled, + html:not(.theme-dark) & ._container_1fowpgw_10._disabled_1fowpgw_103 ._inner_1fowpgw_171 { + color: rgba(25, 25, 28, .7) + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:disabled, + .theme-dark & ._container_1fowpgw_10._disabled_1fowpgw_103 ._inner_1fowpgw_171 { + color: hsla(0, 0%, 100%, .7) + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171 { + color: #19191c + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::-moz-placeholder { + color: rgba(25, 25, 28, .7) + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::placeholder { + color: rgba(25, 25, 28, .7) + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171 { + color: #fff + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::-moz-placeholder, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::-moz-placeholder { + color: hsla(0, 0%, 100%, .7) + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::placeholder, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::placeholder { + color: hsla(0, 0%, 100%, .7) + } + + html:not(.theme-dark) & ._container_1fowpgw_10._enabled_1fowpgw_27._classic_1fowpgw_44._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #fff + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._classic_1fowpgw_44._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #474749 + } + + ._sizeM_1fowpgw_125 ._field_1fowpgw_161 { + padding: 7px + } + + ._sizeM_1fowpgw_125._enabled_1fowpgw_27._error_1fowpgw_83 ._field_1fowpgw_161, + ._sizeM_1fowpgw_125._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 6px + } + + ._sizeM_1fowpgw_125._rock_1fowpgw_48._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 8px + } + + ._sizeM_1fowpgw_125 ._inner_1fowpgw_171 { + height: 24px; + } + + ._sizeM_1fowpgw_125 ._inner_1fowpgw_171::placeholder { + letter-spacing: .0015em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeM_1fowpgw_125 ._inner_1fowpgw_171::-moz-placeholder { + letter-spacing: normal + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeM_1fowpgw_125 ._inner_1fowpgw_171::placeholder { + letter-spacing: normal + } + + ._sizeM_1fowpgw_125 ._errorMessage_1fowpgw_596, ._sizeS_1fowpgw_129 ._errorMessage_1fowpgw_596 { + letter-spacing: .0045em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 13px; + line-height: 20px; + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeM_1fowpgw_125 ._errorMessage_1fowpgw_596, ._rs-reset-letter-spacing_1fowpgw_1 ._sizeS_1fowpgw_129 ._errorMessage_1fowpgw_596 { + letter-spacing: normal + } + + ._sizeM_1fowpgw_125 ._errorMessage_1fowpgw_596, ._sizeS_1fowpgw_129 ._errorMessage_1fowpgw_596 { + color: #f45c4a + } + + ._wrapper_1fowpgw_14 { + display: flex; + border: 1px solid; + cursor: text + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._wrapper_1fowpgw_14 { + border-color: rgba(25, 25, 28, .2); + background-color: #fff + } + + html:not(.theme-dark) & ._container_1fowpgw_10._enabled_1fowpgw_27._filled_1fowpgw_27 ._wrapper_1fowpgw_14 { + border-color: rgba(25, 25, 28, .3) + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + html:not(.theme-dark) & ._container_1fowpgw_10._enabled_1fowpgw_27:hover ._wrapper_1fowpgw_14 { + border-color: rgba(25, 25, 28, .5); + background-color: #fff + } + } + + html:not(.theme-dark) & ._container_1fowpgw_10._enabled_1fowpgw_27._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + border-width: 2px; + border-color: #19191c + } + + html:not(.theme-dark) & ._container_1fowpgw_10._enabled_1fowpgw_27._classic_1fowpgw_44._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #fff + } + + html:not(.theme-dark) & ._container_1fowpgw_10._enabled_1fowpgw_27._rock_1fowpgw_48._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #19191c + } + + .theme-dark & ._container_1fowpgw_10 ._wrapper_1fowpgw_14 { + border-color: hsla(0, 0%, 100%, .2); + background-color: #303033 + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._filled_1fowpgw_27 ._wrapper_1fowpgw_14 { + border-color: hsla(0, 0%, 100%, .3) + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27:hover ._wrapper_1fowpgw_14 { + border-color: hsla(0, 0%, 100%, .5); + background-color: #474749 + } + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + border-width: 2px; + border-color: #fff + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._classic_1fowpgw_44._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #474749 + } + + .theme-dark & ._container_1fowpgw_10._enabled_1fowpgw_27._rock_1fowpgw_48._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background-color: #fff + } + + ._enabled_1fowpgw_27._error_1fowpgw_83 ._wrapper_1fowpgw_14 { + border-width: 2px; + border-color: #f45c4a + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + ._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27:hover ._wrapper_1fowpgw_14 { + border-color: #f45c4a + } + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27._filled_1fowpgw_27 ._wrapper_1fowpgw_14, + ._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + border-color: #f45c4a + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27._rock_1fowpgw_48._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background: #f45c4a + } + + ._disabled_1fowpgw_103 ._wrapper_1fowpgw_14 { + cursor: auto + } + + html:not(.theme-dark) & ._disabled_1fowpgw_103._container_1fowpgw_10 ._wrapper_1fowpgw_14 { + background-color: #f4f4f4 + } + + .theme-dark & ._disabled_1fowpgw_103._container_1fowpgw_10 ._wrapper_1fowpgw_14 { + background-color: #19191c + } + + ._rock_1fowpgw_48._enabled_1fowpgw_27._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + border-width: 0 + } + + ._field_1fowpgw_161 { + display: flex; + flex: 1 1 auto; + min-width: 0 + } + + ._sizeL_1fowpgw_121 ._field_1fowpgw_161 { + padding: 11px 15px + } + + ._sizeM_1fowpgw_125 ._field_1fowpgw_161 { + padding: 7px + } + + ._sizeS_1fowpgw_129 ._field_1fowpgw_161 { + padding: 5px 7px + } + + ._sizeL_1fowpgw_121._enabled_1fowpgw_27._error_1fowpgw_83 ._field_1fowpgw_161, + ._sizeL_1fowpgw_121._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 10px 14px + } + + ._sizeM_1fowpgw_125._enabled_1fowpgw_27._error_1fowpgw_83 ._field_1fowpgw_161, + ._sizeM_1fowpgw_125._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 6px + } + + ._sizeS_1fowpgw_129._enabled_1fowpgw_27._error_1fowpgw_83 ._field_1fowpgw_161, + ._sizeS_1fowpgw_129._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 4px 6px + } + + ._sizeL_1fowpgw_121._rock_1fowpgw_48._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 12px 16px + } + + ._sizeM_1fowpgw_125._rock_1fowpgw_48._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 8px + } + + ._sizeS_1fowpgw_129._rock_1fowpgw_48._focused_1fowpgw_39 ._field_1fowpgw_161 { + padding: 6px 8px + } + + ._inner_1fowpgw_171 { + display: block; + flex: 1 1 0; + box-sizing: border-box; + min-width: 0; + margin: 0; + padding: 0; + border: none; + outline: none; + background: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none + } + + ._inner_1fowpgw_171:focus { + outline: none + } + + ._inner_1fowpgw_171::-moz-placeholder { + opacity: 1 + } + + ._inner_1fowpgw_171::placeholder { + opacity: 1 + } + + ._inner_1fowpgw_171::-ms-clear { + display: none; + width: 0; + height: 0 + } + + ._inner_1fowpgw_171:-moz-ui-invalid, ._inner_1fowpgw_171:-moz-ui-invalid:-moz-focusring { + box-shadow: none + } + + ._inner_1fowpgw_171:-webkit-autofill, ._inner_1fowpgw_171:-webkit-autofill:active, + ._inner_1fowpgw_171:-webkit-autofill:focus, ._inner_1fowpgw_171:-webkit-autofill:hover { + transition-delay: 9999s + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill, + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:active, + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:focus, + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:hover { + -webkit-text-fill-color: #19191c; + -webkit-box-shadow: 0 0 0 1000px #fff inset + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill, + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:active, + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:focus, + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:-webkit-autofill:hover, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:active, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:focus, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:hover { + -webkit-text-fill-color: #fff; + -webkit-box-shadow: 0 0 0 1000px #19191c inset + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill, + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:active, + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:focus, + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:hover { + -webkit-text-fill-color: #19191c; + -webkit-box-shadow: 0 0 0 1000px #fff inset + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill, + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:active, + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:focus, + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171:-webkit-autofill:hover { + -webkit-text-fill-color: #fff; + -webkit-box-shadow: 0 0 0 1000px #19191c inset + } + + ._sizeL_1fowpgw_121 ._inner_1fowpgw_171 { + height: 28px; + } + + ._sizeM_1fowpgw_125 ._inner_1fowpgw_171 { + height: 24px; + } + + ._sizeS_1fowpgw_129 ._inner_1fowpgw_171 { + height: 20px; + } + + ._sizeL_1fowpgw_121 ._inner_1fowpgw_171 { + font-feature-settings: "kern", "liga", "calt"; + font-size: 20px; + font-weight: 400; + line-height: 28px; + } + + ._sizeL_1fowpgw_121 ._inner_1fowpgw_171::-moz-placeholder { + font-feature-settings: "kern", "liga", "calt"; + font-size: 20px; + font-weight: 400; + line-height: 28px; + } + + ._sizeL_1fowpgw_121 ._inner_1fowpgw_171::placeholder { + font-feature-settings: "kern", "liga", "calt"; + font-size: 20px; + font-weight: 400; + line-height: 28px; + } + + ._sizeM_1fowpgw_125 ._inner_1fowpgw_171 { + letter-spacing: .0015em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeM_1fowpgw_125 ._inner_1fowpgw_171 { + letter-spacing: normal + } + + ._sizeM_1fowpgw_125 ._inner_1fowpgw_171::-moz-placeholder { + letter-spacing: .0015em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._sizeM_1fowpgw_125 ._inner_1fowpgw_171::placeholder { + letter-spacing: .0015em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeM_1fowpgw_125 ._inner_1fowpgw_171::-moz-placeholder { + letter-spacing: normal + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeM_1fowpgw_125 ._inner_1fowpgw_171::placeholder { + letter-spacing: normal + } + + ._sizeS_1fowpgw_129 ._inner_1fowpgw_171 { + letter-spacing: .0045em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 13px; + line-height: 20px; + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeS_1fowpgw_129 ._inner_1fowpgw_171 { + letter-spacing: normal + } + + ._sizeS_1fowpgw_129 ._inner_1fowpgw_171::-moz-placeholder { + letter-spacing: .0045em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 13px; + line-height: 20px; + } + + ._sizeS_1fowpgw_129 ._inner_1fowpgw_171::placeholder { + letter-spacing: .0045em; + font-feature-settings: "kern", "liga", "calt"; + font-size: 13px; + line-height: 20px; + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeS_1fowpgw_129 ._inner_1fowpgw_171::-moz-placeholder { + letter-spacing: normal + } + + ._rs-reset-letter-spacing_1fowpgw_1 ._sizeS_1fowpgw_129 ._inner_1fowpgw_171::placeholder { + letter-spacing: normal + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171 { + color: #19191c + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171::-moz-placeholder { + color: rgba(25, 25, 28, .5) + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171::placeholder { + color: rgba(25, 25, 28, .5) + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171 { + color-scheme: dark; + color: #fff + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171::-moz-placeholder { + color: hsla(0, 0%, 100%, .5) + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171::placeholder { + color: hsla(0, 0%, 100%, .5) + } + + html:not(.theme-dark) & ._container_1fowpgw_10 ._inner_1fowpgw_171:disabled, + html:not(.theme-dark) & ._container_1fowpgw_10._disabled_1fowpgw_103 ._inner_1fowpgw_171 { + color: rgba(25, 25, 28, .7) + } + + .theme-dark & ._container_1fowpgw_10 ._inner_1fowpgw_171:disabled, + .theme-dark & ._container_1fowpgw_10._disabled_1fowpgw_103 ._inner_1fowpgw_171 { + color: hsla(0, 0%, 100%, .7) + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171 { + color: #19191c + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::-moz-placeholder { + color: rgba(25, 25, 28, .7) + } + + .theme-dark & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::placeholder { + color: rgba(25, 25, 28, .7) + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171 { + color: #fff + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::-moz-placeholder, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::-moz-placeholder { + color: hsla(0, 0%, 100%, .7) + } + + ._enabled_1fowpgw_27._error_1fowpgw_83._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::placeholder, + html:not(.theme-dark) & ._container_1fowpgw_10._rock_1fowpgw_48._focused_1fowpgw_39 ._inner_1fowpgw_171::placeholder { + color: hsla(0, 0%, 100%, .7) + } + + ._offSystemMicroelements_1fowpgw_345 ._inner_1fowpgw_171 { + -moz-appearance: textfield + } + + ._offSystemMicroelements_1fowpgw_345 ._inner_1fowpgw_171::-webkit-inner-spin-button, + ._offSystemMicroelements_1fowpgw_345 ._inner_1fowpgw_171::-webkit-outer-spin-button { + -webkit-appearance: none; + appearance: none; + margin: 0 + } + + ._sizeM_joawza_99 { + letter-spacing: .0015em; + font-size: 16px; + font-weight: 400; + line-height: 24px; + } + + ._rs-reset-letter-spacing_joawza_1 ._sizeM_joawza_99 { + letter-spacing: normal + } + + ._sizeM_joawza_99 { + border-radius: 24px; + } + + ._sizeM_joawza_99 { + padding: 8px 24px; + border-width: 0 + } + + ._sizeM_joawza_99._withoutText_joawza_113 { + padding: 8px; + border-width: 0 + } + + ._sizeM_joawza_99._modeOutline_joawza_356 { + padding: 7px 23px; + border-width: 1px + } + + ._sizeM_joawza_99._modeOutline_joawza_356._withoutText_joawza_113 { + padding: 7px; + border-width: 1px + } + + ._sizeM_joawza_99._modeOutline_joawza_356:active { + padding: 6px 22px; + border-width: 2px + } + + ._sizeM_joawza_99._modeOutline_joawza_356._withoutText_joawza_113:active { + padding: 6px; + border-width: 2px + } + + ._modeClassic_joawza_135 { + color: #fff; + background: #6b57ff; + } + + ._modeClassic_joawza_135:focus { + color: #fff; + background: #6b57ff; + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + ._modeClassic_joawza_135:hover { + color: #fff; + background: rgba(107, 87, 255, .8); + } + } + + ._modeClassic_joawza_135:active { + color: #fff; + background: #6b57ff; + } + + ._modeClassic_joawza_135:active:focus:not(:hover)[data-focus-method=key] { + background: rgba(107, 87, 255, .8); + } + + ._modeClassic_joawza_135._disabled_joawza_61 { + color: rgba(25, 25, 28, .5); + background: rgba(25, 25, 28, .2) + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17 { + color: #fff; + background: #8473ff; + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + .theme-dark & ._modeClassic_joawza_135._main_joawza_17:hover { + color: #fff; + background: rgba(132, 115, 255, .8); + } + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17:active { + color: #fff; + background: #8473ff; + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17:active:focus:not(:hover)[data-focus-method=key] { + background: rgba(132, 115, 255, .8); + } + + .theme-dark & ._modeClassic_joawza_135._main_joawza_17._disabled_joawza_61 { + color: hsla(0, 0%, 100%, .5); + background: hsla(0, 0%, 100%, .2) + } + + ._container_1fowpgw_10._enabled_1fowpgw_27._error_1fowpgw_83 ._wrapper_1fowpgw_14 { + border-width: 2px; + border-color: #f45c4a + } + + @media (-ms-high-contrast: none), (hover: hover), screen and (-ms-high-contrast: active) { + ._container_1fowpgw_10._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27:hover ._wrapper_1fowpgw_14 { + border-color: #f45c4a + } + } + + ._container_1fowpgw_10._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27._filled_1fowpgw_27 ._wrapper_1fowpgw_14, + ._container_1fowpgw_10._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + border-color: #f45c4a + } + + ._container_1fowpgw_10._enabled_1fowpgw_27._error_1fowpgw_83._enabled_1fowpgw_27._rock_1fowpgw_48._focused_1fowpgw_39 ._wrapper_1fowpgw_14 { + background: #f45c4a + } +} + +.app-feedback-popup_close { + display: none; +} \ No newline at end of file diff --git a/static/js/page/dokka-template/index.js b/static/js/page/dokka-template/index.js index 154fc89a8e0..1ab2bb50e73 100644 --- a/static/js/page/dokka-template/index.js +++ b/static/js/page/dokka-template/index.js @@ -1,13 +1,16 @@ import {ktlHelpers, initComponent} from "../../ktl-component/ktl-helpers"; import Footer from "./footer/index.jsx"; import Header from "./header/index.jsx"; +import { initFeedback } from "./feedback.js"; import './control-pane.scss'; import './layout.scss'; +import './feedback.scss'; document.addEventListener('DOMContentLoaded', init); function init() { + initFeedback(); ktlHelpers().forEach(({name, node, props}) => { switch (name) { case 'footer': diff --git a/templates/api.html b/templates/api.html index 34720d9e712..761c3455a1b 100644 --- a/templates/api.html +++ b/templates/api.html @@ -1,5 +1,13 @@ {% extends 'base.html' %} +{% set docsNavBack={ + "url": "/docs/home.html", + "text": "Kotlin Docs" +} %} + +{% set newDocsLink = site.data["core"].get(request.path) %} +{% if not newDocsLink %}{% set newDocsLink="/api/core/"%}{% endif %} + {% block scripts %} {% endblock %} @@ -8,14 +16,54 @@ {% endblock %} -{% set docsNavBack={ - "url": "/docs/home.html", - "text": "Kotlin Docs" -} %} +{% block top_banner %} +

+ + Try the revamped Kotlin docs design → + + +

+
+

Try the revamped Kotlin docs design!

+
+ Let’s go + +
+
+ +{% endblock %} {% block content %} - {% set newDocsLink = site.data["core"].get(request.path) %} - {% if not newDocsLink %}{% set newDocsLink="/api/core/"%}{% endif %}
diff --git a/templates/base.html b/templates/base.html index b23f772cefd..07cf766059f 100644 --- a/templates/base.html +++ b/templates/base.html @@ -23,6 +23,7 @@ {% set headerDropdownTheme = "light" %} {% endif %} +{% block top_banner %}{% endblock %}
{% ktl_component "header" productWebUrl=data.releases.latest.url hasSearch=True dropdownTheme=headerDropdownTheme currentUrl=headerCurrentUrl %} {% block page_outer_content %}