Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorLeitwolf112026-10-03 13:00:49 +0300
committerLeitwolf112026-10-03 13:00:49 +0300
commit3173a6a2bfe1975542c8c9cc0707071daa55b587 (patch)
treea4883bcc56b81beaaa339fabd0099251acdde643
parent3bb41fe5c59dcf25edfd868e0d6eca67e4a6e504 (diff)
downloadwebsite-3173a6a2bfe1975542c8c9cc0707071daa55b587.tar.gz
Add Hebrew, follow the browser language, and gate the backend docs
Language Hebrew (he-IL) joins English, German and Russian on the language site, in the page metadata and in the list the backend reports. A visitor who has not chosen a language now starts in the language of their browser: the first preferred language that is published, compared by primary language, with `iw` accepted as the former code for Hebrew. A browser that prefers no published language gets en-US. A choice made in the menu is kept under a new storage key and always wins. The earlier key was written on every visit, so it could not tell a choice from the former English default; it is no longer read, which resets an earlier explicit choice once. Hebrew does not mirror the page. The layout, the navigation and code keep their left-to-right arrangement; only text follows the language. The onward arrow points left in Hebrew, and a left-to-right mark keeps "Visual X#" intact inside right-to-left text. The forum placeholder no longer has a language menu. It shows its one notice in the language of the browser, with English as the fallback, and stores no language. Its assets get a new cache key. The single documentation column may now shrink below its widest code line. Before, a long command widened the page on narrow screens, which cut right-aligned text off. The Hebrew text was not reviewed by a native speaker. Documentation gate The backend applies Dokka 2.2.0 with reportUndocumented and failOnWarning, its public declarations have KDoc, and CI runs dokkaGenerate. The dependency lock file and the verification metadata include the new artifacts. Verified locally: frontend tests, type check, prettier and build; backend test, bootJar and dokkaGenerate, which was also shown to fail on an undocumented declaration; the Hebrew pages in a browser. The forum page was exercised by its tests only.
-rw-r--r--.github/workflows/ci.yml4
-rw-r--r--backend/build.gradle.kts12
-rw-r--r--backend/gradle.lockfile31
-rw-r--r--backend/gradle/verification-metadata.xml285
-rw-r--r--backend/src/main/kotlin/com/progmasoft/visual/xsharp/website/SiteController.kt29
-rw-r--r--backend/src/main/kotlin/com/progmasoft/visual/xsharp/website/WebsiteApplication.kt6
-rw-r--r--backend/src/test/kotlin/com/progmasoft/visual/xsharp/website/SiteControllerTest.kt2
-rw-r--r--forum/index.html9
-rw-r--r--forum/site.css30
-rw-r--r--forum/site.js43
-rw-r--r--frontend/src/App.vue20
-rw-r--r--frontend/src/locales.ts68
-rw-r--r--frontend/src/pages/GettingStartedPage.vue64
-rw-r--r--frontend/src/pages/HomePage.vue70
-rw-r--r--frontend/src/pages/OverviewPage.vue118
-rw-r--r--frontend/src/preferences.ts40
-rw-r--r--frontend/src/seo.ts19
-rw-r--r--frontend/src/styles/site.css22
-rw-r--r--frontend/tests/forum.test.mjs106
-rw-r--r--frontend/tests/locales.test.mjs66
-rw-r--r--frontend/tests/seo.test.mjs16
-rw-r--r--frontend/tests/site-integrity.test.mjs1
22 files changed, 937 insertions, 124 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index ce6e207..f6db466 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -58,7 +58,9 @@ jobs:
with:
gradle-version: "9.6.0"
cache-provider: basic
- - run: gradle test jacocoTestReport bootJar --no-daemon
+ # dokkaGenerate is the documentation gate: an undocumented public
+ # declaration or a broken reference fails the build.
+ - run: gradle test jacocoTestReport bootJar dokkaGenerate --no-daemon
working-directory: backend
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
diff --git a/backend/build.gradle.kts b/backend/build.gradle.kts
index 0fbc2c0..70f805f 100644
--- a/backend/build.gradle.kts
+++ b/backend/build.gradle.kts
@@ -5,6 +5,7 @@ plugins {
kotlin("jvm") version "2.3.21"
kotlin("plugin.spring") version "2.3.21"
id("org.springframework.boot") version "4.1.1"
+ id("org.jetbrains.dokka") version "2.2.0"
jacoco
}
@@ -33,6 +34,17 @@ dependencies {
tasks.test { useJUnitPlatform() }
+dokka {
+ dokkaPublications.configureEach {
+ // The documentation build is a gate: a broken link, an unresolved
+ // reference or an undocumented declaration fails it.
+ failOnWarning = true
+ }
+ dokkaSourceSets.configureEach {
+ reportUndocumented = true
+ }
+}
+
jacoco { toolVersion = "0.8.15" }
tasks.jacocoTestReport {
diff --git a/backend/gradle.lockfile b/backend/gradle.lockfile
index 2213ea4..85d267d 100644
--- a/backend/gradle.lockfile
+++ b/backend/gradle.lockfile
@@ -1,15 +1,22 @@
# This is a Gradle generated file for dependency locking.
# Manual edits can break the build and are not advised.
# This file is expected to be part of source control.
-# To regenerate this file, run: gradle dependencies --write-locks --no-daemon
+# To regenerate this file, run: ./gradlew :dependencies --write-locks
biz.aQute.bnd:biz.aQute.bnd.annotation:7.1.0=compileClasspath,testCompileClasspath
ch.qos.logback:logback-classic:1.5.38=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
ch.qos.logback:logback-core:1.5.38=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
+com.fasterxml.jackson.core:jackson-annotations:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal
com.fasterxml.jackson.core:jackson-annotations:2.21=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
+com.fasterxml.jackson.core:jackson-core:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal
com.fasterxml.jackson.core:jackson-core:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
+com.fasterxml.jackson.core:jackson-databind:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal
com.fasterxml.jackson.core:jackson-databind:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
+com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal
+com.fasterxml.jackson.module:jackson-module-kotlin:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal
com.fasterxml.jackson.module:jackson-module-kotlin:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
+com.fasterxml.jackson:jackson-bom:2.15.3=dokkaHtmlGeneratorRuntimeResolver~internal
com.fasterxml.jackson:jackson-bom:2.21.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
+com.fasterxml.woodstox:woodstox-core:6.5.1=dokkaHtmlGeneratorRuntimeResolver~internal
com.google.errorprone:error_prone_annotations:2.38.0=compileClasspath,testCompileClasspath
com.jayway.jsonpath:json-path:2.10.0=testCompileClasspath,testRuntimeClasspath
com.vaadin.external.google:android-json:0.0.20131108.vaadin1=testCompileClasspath,testRuntimeClasspath
@@ -32,11 +39,18 @@ org.apache.tomcat.embed:tomcat-embed-websocket:11.0.24=compileClasspath,producti
org.apiguardian:apiguardian-api:1.1.2=testCompileClasspath
org.assertj:assertj-core:3.27.7=testCompileClasspath,testRuntimeClasspath
org.awaitility:awaitility:4.3.0=testCompileClasspath,testRuntimeClasspath
+org.codehaus.woodstox:stax2-api:4.2.1=dokkaHtmlGeneratorRuntimeResolver~internal
+org.freemarker:freemarker:2.3.32=dokkaHtmlGeneratorRuntimeResolver~internal
org.hamcrest:hamcrest:3.0=testCompileClasspath,testRuntimeClasspath
org.jacoco:org.jacoco.agent:0.8.15=jacocoAgent,jacocoAnt
org.jacoco:org.jacoco.ant:0.8.15=jacocoAnt
org.jacoco:org.jacoco.core:0.8.15=jacocoAnt
org.jacoco:org.jacoco.report:0.8.15=jacocoAnt
+org.jetbrains.dokka:analysis-kotlin-symbols:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.dokka:analysis-markdown:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.dokka:dokka-base:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal,dokkaHtmlPluginIntransitiveResolver~internal
+org.jetbrains.dokka:dokka-core:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.dokka:templating-plugin:2.2.0=dokkaHtmlGeneratorRuntimeResolver~internal,dokkaHtmlPluginIntransitiveResolver~internal
org.jetbrains.kotlin:abi-tools-api:2.3.21=kotlinInternalAbiValidation
org.jetbrains.kotlin:abi-tools:2.3.21=kotlinInternalAbiValidation
org.jetbrains.kotlin:kotlin-allopen-compiler-plugin-embeddable:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest
@@ -52,18 +66,31 @@ org.jetbrains.kotlin:kotlin-klib-abi-reader:2.3.21=kotlinInternalAbiValidation
org.jetbrains.kotlin:kotlin-klib-commonizer-embeddable:2.3.21=kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-metadata-jvm:2.3.21=kotlinInternalAbiValidation
org.jetbrains.kotlin:kotlin-reflect:1.6.10=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
+org.jetbrains.kotlin:kotlin-reflect:2.0.21=dokkaHtmlGeneratorRuntimeResolver~internal
org.jetbrains.kotlin:kotlin-reflect:2.3.21=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-script-runtime:2.3.21=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest,kotlinKlibCommonizerClasspath
org.jetbrains.kotlin:kotlin-scripting-common:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest
org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest
org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest
org.jetbrains.kotlin:kotlin-scripting-jvm:2.3.21=kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest
+org.jetbrains.kotlin:kotlin-stdlib-common:2.0.21=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.20=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.20=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.kotlin:kotlin-stdlib:2.0.21=dokkaHtmlGeneratorRuntimeResolver~internal
org.jetbrains.kotlin:kotlin-stdlib:2.3.21=compileClasspath,kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest,kotlinInternalAbiValidation,kotlinKlibCommonizerClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-test-junit5:2.3.21=testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-test:2.3.21=testCompileClasspath,testRuntimeClasspath
org.jetbrains.kotlin:kotlin-tooling-core:2.3.21=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath
+org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.7.3=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.7.3=dokkaHtmlGeneratorRuntimeResolver~internal
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.8.0=kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinKlibCommonizerClasspath
+org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains.kotlinx:kotlinx-html-jvm:0.9.1=dokkaHtmlGeneratorRuntimeResolver~internal
org.jetbrains:annotations:13.0=compileClasspath,kotlinBuildToolsApiClasspath,kotlinCompilerClasspath,kotlinCompilerPluginClasspathMain,kotlinCompilerPluginClasspathTest,kotlinInternalAbiValidation,kotlinKlibCommonizerClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
+org.jetbrains:annotations:23.0.0=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains:markdown-jvm:0.7.3=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jetbrains:markdown:0.7.3=dokkaHtmlGeneratorRuntimeResolver~internal
+org.jsoup:jsoup:1.16.1=dokkaHtmlGeneratorRuntimeResolver~internal
org.jspecify:jspecify:1.0.1=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
org.junit.jupiter:junit-jupiter-api:6.0.3=testCompileClasspath,testRuntimeClasspath
org.junit.jupiter:junit-jupiter-engine:6.0.3=testRuntimeClasspath
@@ -123,4 +150,4 @@ org.yaml:snakeyaml:2.6=compileClasspath,productionRuntimeClasspath,runtimeClassp
tools.jackson.core:jackson-core:3.1.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
tools.jackson.core:jackson-databind:3.1.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
tools.jackson:jackson-bom:3.1.5=compileClasspath,productionRuntimeClasspath,runtimeClasspath,testCompileClasspath,testRuntimeClasspath
-empty=annotationProcessor,developmentOnly,implementationDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinNativeCompilerPluginClasspath,kotlinScriptDefExtensions,testAndDevelopmentOnly,testAnnotationProcessor,testImplementationDependenciesMetadata,testKotlinScriptDefExtensions
+empty=annotationProcessor,developmentOnly,dokkaHtmlModuleOutputDirectoriesResolver~internal,dokkaHtmlPublicationPluginResolver~internal,implementationDependenciesMetadata,kotlinCompilerPluginClasspath,kotlinNativeCompilerPluginClasspath,kotlinScriptDefExtensions,testAndDevelopmentOnly,testAnnotationProcessor,testImplementationDependenciesMetadata,testKotlinScriptDefExtensions
diff --git a/backend/gradle/verification-metadata.xml b/backend/gradle/verification-metadata.xml
index f22f4f6..8f77cc3 100644
--- a/backend/gradle/verification-metadata.xml
+++ b/backend/gradle/verification-metadata.xml
@@ -34,6 +34,16 @@
<sha256 value="2bce3a61a6449adb9a0722e1c0c1e391533880ba02916d3df83208999aea6c66" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml" name="oss-parent" version="38">
+ <artifact name="oss-parent-38.pom">
+ <sha256 value="c83f8f45dfdca8d0b6b3661c60b3f84780f671b12e06f91ad5d1c1a1d1f966e8" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="com.fasterxml" name="oss-parent" version="50">
+ <artifact name="oss-parent-50.pom">
+ <sha256 value="f5da55dd7b88fb170c46801d17774a652fb2f4581fb5b1d0a5fc86aa182b8577" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.fasterxml" name="oss-parent" version="68">
<artifact name="oss-parent-68.pom">
<sha256 value="25eafd96dae242b6b5a7108f55b2c14015b828daa5abe234289fd6e774a1ce57" origin="Generated by Gradle"/>
@@ -54,6 +64,11 @@
<sha256 value="4f4e2bea00ffe575f5ec054c07a4fbc34c1955d8635c01a3e88013bf2c71deff" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml.jackson" name="jackson-bom" version="2.15.3">
+ <artifact name="jackson-bom-2.15.3.pom">
+ <sha256 value="66fc9945c16716bc202f4b9d7e6d969df3f509feffbe1acf1a31511b753d5c9d" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.fasterxml.jackson" name="jackson-bom" version="2.19.1">
<artifact name="jackson-bom-2.19.1.pom">
<sha256 value="ba6d68eeab3a1cc13a77a8ade2197ff9a32aa1cffeac72847d49badd82e1b9ce" origin="Generated by Gradle"/>
@@ -64,6 +79,11 @@
<sha256 value="57fe22dec659de0655357fad0582ef7c8b2fe5a8906a6f1ff1bcbbd1e4554846" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml.jackson" name="jackson-parent" version="2.15">
+ <artifact name="jackson-parent-2.15.pom">
+ <sha256 value="6cdf97bc66f389f63e36850d2f552d1216688f8e5a58727d3f6a98edf8675cde" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.fasterxml.jackson" name="jackson-parent" version="2.19.2">
<artifact name="jackson-parent-2.19.2.pom">
<sha256 value="639a2b63dd05da4e381081303985caadfbb7ad9f85b1d2320638f6b11f208365" origin="Generated by Gradle"/>
@@ -74,6 +94,14 @@
<sha256 value="3851df627faeb46887b956104630b74a8bbb5f7de22e974cf15982e20e0373de" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml.jackson.core" name="jackson-annotations" version="2.15.3">
+ <artifact name="jackson-annotations-2.15.3.jar">
+ <sha256 value="aae865c3d88256d61b11523cb1e88bd48d5b9ad5855fa1fc859504fd2204708a" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="jackson-annotations-2.15.3.module">
+ <sha256 value="6410c94b393e494d53d569dc4193a79187848ddb6ee3c2ee1f392477a21059cb" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.fasterxml.jackson.core" name="jackson-annotations" version="2.21">
<artifact name="jackson-annotations-2.21.jar">
<sha256 value="53ca085f4a150f703f49e1aabd935bd03b43e1ea3d55d135438292af22cef56b" origin="Generated by Gradle"/>
@@ -82,6 +110,14 @@
<sha256 value="cae8ffecec3328b6ecbb138e274218f2fe1c7729a0e824da559268810095ad44" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml.jackson.core" name="jackson-core" version="2.15.3">
+ <artifact name="jackson-core-2.15.3.jar">
+ <sha256 value="51fab7aad51ed588482edc507fd542747936c5094d1ab76ed21ddb63b96b610d" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="jackson-core-2.15.3.module">
+ <sha256 value="138029bcb32b0bfa7010d3f646632bde5c98c187e2f1aa120a1cd413f23a6c28" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.fasterxml.jackson.core" name="jackson-core" version="2.21.5">
<artifact name="jackson-core-2.21.5.jar">
<sha256 value="b64b5874162b503a0e58a8f7758266e8dd9f91bf49e3a59ae0b5f47589a231b7" origin="Generated by Gradle"/>
@@ -90,6 +126,14 @@
<sha256 value="de113f4531def50feb12be04e7074a8f76f5f3ef290cf886b90086a4e274530f" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml.jackson.core" name="jackson-databind" version="2.15.3">
+ <artifact name="jackson-databind-2.15.3.jar">
+ <sha256 value="c3c53333a2172a80678bda1803e39cff45bec6ae3e9c7d4f44a81ec4e2ab18dc" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="jackson-databind-2.15.3.module">
+ <sha256 value="51ba8d71f5a04ae768e84c91d4edf09a1fc8bc1244b03bd4f9b060b8fb395615" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.fasterxml.jackson.core" name="jackson-databind" version="2.21.5">
<artifact name="jackson-databind-2.21.5.jar">
<sha256 value="507418c0fafd38b2b2cfb704521630da613a8e4cc8381195a6f418017883e2c0" origin="Generated by Gradle"/>
@@ -98,6 +142,22 @@
<sha256 value="920e2a0211a31f54d2e7e4effdc580d02c3412a6fefdb632a8054e60c4758381" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml.jackson.dataformat" name="jackson-dataformat-xml" version="2.15.3">
+ <artifact name="jackson-dataformat-xml-2.15.3.jar">
+ <sha256 value="39a34531dca5fca75eb547663c300855c968c8faca6861d92eca9e9747af0416" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="jackson-dataformat-xml-2.15.3.module">
+ <sha256 value="30ad1786f48af58048353d9be1374fc022610ceab921ebea6f62e5080b345bf2" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="com.fasterxml.jackson.module" name="jackson-module-kotlin" version="2.15.3">
+ <artifact name="jackson-module-kotlin-2.15.3.jar">
+ <sha256 value="8f72e6b99e6145e3284a5224355ca8ee6030afa8c1d6a3395b530d29026f8d52" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="jackson-module-kotlin-2.15.3.module">
+ <sha256 value="0dee29c18a90700a3a0457be88f7c41f67571947e6633d84a22433a4fb5d792c" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.fasterxml.jackson.module" name="jackson-module-kotlin" version="2.21.5">
<artifact name="jackson-module-kotlin-2.21.5.jar">
<sha256 value="6f45bbe434458d2ad1f5ea16c6abf67e7abea374b2c9ae5689cf4dd27c16c8b9" origin="Generated by Gradle"/>
@@ -106,6 +166,14 @@
<sha256 value="1a9f780447658ddb47ec9d7dcc60979aab2a5b25f0e902946853dd292bd88581" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="com.fasterxml.woodstox" name="woodstox-core" version="6.5.1">
+ <artifact name="woodstox-core-6.5.1.jar">
+ <sha256 value="c928d60665c6415fb1c39775cf95cfc44f7f4580cf5ab01b1c380ebffd76887f" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="woodstox-core-6.5.1.pom">
+ <sha256 value="4839654e16b1714e74f51abcb378d8356814ab8f4d5273d1dd2f1ce8a390addc" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="com.google.code.findbugs" name="jsr305" version="3.0.2">
<artifact name="jsr305-3.0.2.jar">
<sha256 value="766ad2a0783f2687962c8ad74ceecc38a28b9f72a2d085ee438b7813e928d0c7" origin="Generated by Gradle"/>
@@ -432,6 +500,11 @@
<sha256 value="dc09cba98c25d3c06e4aec516885d4c3af03062ba55f4fe6283fc9cf176a60fb" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.apache" name="apache" version="17">
+ <artifact name="apache-17.pom">
+ <sha256 value="398044b74b5a719326be218ae08124e5e2f3318ab5d78fe199d504efc2e0d43f" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.apache" name="apache" version="27">
<artifact name="apache-27.pom">
<sha256 value="b2b0fc69e22a650c3892f1c366d77076f29575c6738df4c7a70a44844484cdf9" origin="Generated by Gradle"/>
@@ -667,6 +740,14 @@
<sha256 value="7af9ce8a09581211557e6cc8e2909bd80666b34e922a28587c773096c1022093" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.codehaus.woodstox" name="stax2-api" version="4.2.1">
+ <artifact name="stax2-api-4.2.1.jar">
+ <sha256 value="678567e48b51a42c65c699f266539ad3d676d4b1a5b0ad7d89ece8b9d5772579" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="stax2-api-4.2.1.pom">
+ <sha256 value="79da410c8c0f46a3f8e8adb30d6c24ccd6065b6ef6bfde87bd97e9881ea0a2e7" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.eclipse.ee4j" name="project" version="1.0.7">
<artifact name="project-1.0.7.pom">
<sha256 value="205c039a42cbae3556efbeb04a483eb3a3cf9550bd75bf84260dc8f28218f105" origin="Generated by Gradle"/>
@@ -687,6 +768,14 @@
<sha256 value="93366f7912df3e2f31494de93b21ad8d3e96bc7c453f7720f4e5cfcc0b01b1aa" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.freemarker" name="freemarker" version="2.3.32">
+ <artifact name="freemarker-2.3.32.jar">
+ <sha256 value="04d65ec1bde6cea20e3495d5e78ef96ab774d9936434861d3254bd88e7e94f92" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="freemarker-2.3.32.pom">
+ <sha256 value="07a07e2eaf0976022b540567c7df622712b9a0393a6c5f6d20e6ff1579222a01" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.glassfish.jersey" name="jersey-bom" version="4.0.2">
<artifact name="jersey-bom-4.0.2.pom">
<sha256 value="1233e0d0e57d7d20b311de46364f611782d096a324a4fb4acc40c55157a182e7" origin="Generated by Gradle"/>
@@ -750,6 +839,80 @@
<sha256 value="965aeb2bedff369819bdde1bf7a0b3b89b8247dd69c88b86375d76163bb8c397" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.jetbrains" name="annotations" version="23.0.0">
+ <artifact name="annotations-23.0.0.jar">
+ <sha256 value="7b0f19724082cbfcbc66e5abea2b9bc92cf08a1ea11e191933ed43801eb3cd05" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="annotations-23.0.0.pom">
+ <sha256 value="c9490f655132328df2cfbcfdf743f53fc3916d6c1d10437175a6ca6e3a67771c" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains" name="markdown" version="0.7.3">
+ <artifact name="markdown-0.7.3.module">
+ <sha256 value="dbfae7aa853eb5ea1eeba31896538a8403646f55c59a99191d687fc037bdac39" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains" name="markdown-jvm" version="0.7.3">
+ <artifact name="markdown-jvm-0.7.3.jar">
+ <sha256 value="893abb31f15b6216f74dc704c0c6bf1e567dcf2b62cca29cf42e4f53153637ac" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="markdown-jvm-0.7.3.module">
+ <sha256 value="7029b63c74964e5b4334308ee729e95b538da5ed6ac12b2e477d478572d02252" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.dokka" name="analysis-kotlin-symbols" version="2.2.0">
+ <artifact name="analysis-kotlin-symbols-2.2.0.jar">
+ <sha256 value="31b4eabf7436083ae33200da6be7203675fb1fcdcd34d2f394f55e822dac8f0f" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="analysis-kotlin-symbols-2.2.0.pom">
+ <sha256 value="54573a79dfc16d0540a42594679feadbd36c11140213a0fe813c3a4716b53f88" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.dokka" name="analysis-markdown" version="2.2.0">
+ <artifact name="analysis-markdown-2.2.0.jar">
+ <sha256 value="7070de21dc5078013b53cc9c139321cceaf476c1630711cc5bda6d96e9da2087" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="analysis-markdown-2.2.0.module">
+ <sha256 value="f86033ab342a334b656d207a6b0b7041fea1732ff1f5560417e4a50dadf4b2ec" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.dokka" name="dokka-base" version="2.2.0">
+ <artifact name="dokka-base-2.2.0.jar">
+ <sha256 value="721c5a1647dc49d1680d884350b438a039b2426aec65b696baee8e5aeb6442f5" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="dokka-base-2.2.0.module">
+ <sha256 value="f377ca30b57f80262b4d50694102cc56f1f27d4d388682eaf6b84b0bedc19550" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.dokka" name="dokka-core" version="2.2.0">
+ <artifact name="dokka-core-2.2.0.jar">
+ <sha256 value="2ea7e1eeb158163b6e1109ebc5c8137ef713ae020189f87bc79d1cbe3702093d" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="dokka-core-2.2.0.module">
+ <sha256 value="7df767d1748176565443a4f3492da8c033d51fe0022ac0d7fe2212fd6aee068b" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.dokka" name="dokka-gradle-plugin" version="2.2.0">
+ <artifact name="dokka-gradle-plugin-2.2.0.jar">
+ <sha256 value="265cca65322df2d72f2647edf3c4e5290f95f8b119847f031fbd84582af55a8d" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="dokka-gradle-plugin-2.2.0.module">
+ <sha256 value="f3b4d024827b3db3c3f939be5c664bbf65fc203ae2b90f4317c02256e66079c1" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.dokka" name="org.jetbrains.dokka.gradle.plugin" version="2.2.0">
+ <artifact name="org.jetbrains.dokka.gradle.plugin-2.2.0.pom">
+ <sha256 value="7ed72c0e42d44be0146bfbe203e875f22ccc428566f99bd20e25df8f1728b671" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.dokka" name="templating-plugin" version="2.2.0">
+ <artifact name="templating-plugin-2.2.0.jar">
+ <sha256 value="710774a96e555421066cb0c99a7222129ab39be4d86add06acd88f28bedbb7ce" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="templating-plugin-2.2.0.module">
+ <sha256 value="66b32cbea904d79d9b88d3ebab01bce04a6d88b39025055c48a6ea42891b341b" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.jetbrains.kotlin" name="abi-tools" version="2.3.21">
<artifact name="abi-tools-2.3.21.jar">
<sha256 value="6761656205c3514050f68fde7c32b2beb47246786247dacfb279db432a70562b" origin="Generated by Gradle"/>
@@ -963,6 +1126,14 @@
<sha256 value="57905524274a00ae028aaccc27283f6bc5925a934a046c1cc5d06c8ee4d6d5a9" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.jetbrains.kotlin" name="kotlin-reflect" version="2.0.21">
+ <artifact name="kotlin-reflect-2.0.21.jar">
+ <sha256 value="3ad2fcad0c09ddc0922debab4444d612144b7b465b75a8bb7587e20ddfafd799" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="kotlin-reflect-2.0.21.pom">
+ <sha256 value="02ab7aeab03c68f40103026e5e9c277360cbc360818a5b2e36b9a3a9d8e8b049" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.jetbrains.kotlin" name="kotlin-reflect" version="2.3.21">
<artifact name="kotlin-reflect-2.3.21.jar">
<sha256 value="33e37d9dfa86c7a29ab34e975b5f4a1287b458878611051f3485652220c1a2cb" origin="Generated by Gradle"/>
@@ -1011,6 +1182,14 @@
<sha256 value="580b2c9857f3a662c53a3deb4851d7a1afa3bd5f4abbe9905f5b55fb5221f816" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.jetbrains.kotlin" name="kotlin-stdlib" version="2.0.21">
+ <artifact name="kotlin-stdlib-2.0.21.jar">
+ <sha256 value="f31cc53f105a7e48c093683bbd5437561d1233920513774b470805641bedbc09" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="kotlin-stdlib-2.0.21.module">
+ <sha256 value="81fd6d181012487ee3246eff4e2bacb64b58c46e5b5aa72971a4ddf1bd1541ed" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.jetbrains.kotlin" name="kotlin-stdlib" version="2.3.21">
<artifact name="kotlin-stdlib-2.3.21.jar">
<sha256 value="6f64eac736db9434dd6925b4a518b9d1d17177652320c37916cf9ba3ce7d7d7a" origin="Generated by Gradle"/>
@@ -1019,6 +1198,42 @@
<sha256 value="7b4ea4b2242bb177a4b4abb63c3f3d857331d40d35865e36fcc3db666ec10174" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="1.8.20">
+ <artifact name="kotlin-stdlib-common-1.8.20.pom">
+ <sha256 value="605591b89b372127e6b29c69325fa2f6a8c46f468c45d09410e78eb59fc80a17" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="1.9.0">
+ <artifact name="kotlin-stdlib-common-1.9.0.pom">
+ <sha256 value="3660d36a70feb3abe49f11b90633e41d36273576f071b0e109da9b3a0df082a5" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="2.0.21">
+ <artifact name="kotlin-stdlib-common-2.0.21.module">
+ <sha256 value="6f5df8af633600a6b9cfb0fcc764af3d5119f376677677b91b6aee816b1d30ab" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.kotlin" name="kotlin-stdlib-common" version="2.3.21">
+ <artifact name="kotlin-stdlib-common-2.3.21.module">
+ <sha256 value="6ad2f57891a54d96a6922112f758df957ce1ab8a3d5a57215cb74fa3e105e255" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk7" version="1.8.20">
+ <artifact name="kotlin-stdlib-jdk7-1.8.20.jar">
+ <sha256 value="af1ec40c3b951afdcc0c2a0173c7b81763c5281c2d5bafbf0a8544a24c5dcc0c" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="kotlin-stdlib-jdk7-1.8.20.pom">
+ <sha256 value="3622d106578cddcc0a9ec20f8ce815f7f49ff542f640228d2141fcaf80616b06" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk8" version="1.8.20">
+ <artifact name="kotlin-stdlib-jdk8-1.8.20.jar">
+ <sha256 value="e398b67977622718bf18ff99b739c7d9da060f33fb458a2e25203221c16af010" origin="Generated by Gradle"/>
+ </artifact>
+ <artifact name="kotlin-stdlib-jdk8-1.8.20.pom">
+ <sha256 value="3a462214a336e995687769531b1e37b0c81d8e10c9949cd5ea7ae1d7803a0232" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.jetbrains.kotlin" name="kotlin-test" version="2.3.21">
<artifact name="kotlin-test-2.3.21.jar">
<sha256 value="038f7d2c7df1039450809c486068f301a29c6e90356c9a4b595e34f4f4a813e7" origin="Generated by Gradle"/>
@@ -1082,11 +1297,34 @@
<sha256 value="faf0c6538e53ddc0499a63664d8e763c216580b2e18e722ccbdf1b431a6afe26" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-bom" version="1.7.3">
+ <artifact name="kotlinx-coroutines-bom-1.7.3.pom">
+ <sha256 value="4e5d1900e6379ef3f5970d04a8f30529adc82f859e8cc107c21ce8149ef666c4" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
<component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-bom" version="1.8.0">
<artifact name="kotlinx-coroutines-bom-1.8.0.pom">
<sha256 value="1239e9dbe1397cd5971342956b2511bc3ace7b641842e4372a088dcfa8b9ad55" origin="Generated by Gradle"/>
</artifact>
</component>
+ <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-core" version="1.7.3">
+ <artifact name="kotlinx-coroutines-core-1.7.3.module">
+ <sha256 value="7fb162396594ec28e1b6a4411b457949a7670f5e12019176774e1fd6b9471bbf" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-core" version="1.8.0">
+ <artifact name="kotlinx-coroutines-core-1.8.0.module">
+ <sha256 value="144eecd5365de3e30d7b46226c058051e39955b5c189e31fa4c7cffb99d620ba" origin="Generated by Gradle"/>
+ </artifact>
+ </component>
+ <component group="org.jetbrains.kotlinx" name="kotlinx-coroutines-core-jvm" version="1.7.3">
+ <artifact name="kotlinx-coroutines-core-jvm-1.7.3.jar">
+ <sha256 value="1ab3acc38f3e7355c4f9d