diff --git a/examples/dokka-customFormat-example/html/images/anchor-copy-button.svg b/examples/dokka-customFormat-example/html/images/anchor-copy-button.svg
index bab9d747ff..19c1fa3f4d 100644
--- a/examples/dokka-customFormat-example/html/images/anchor-copy-button.svg
+++ b/examples/dokka-customFormat-example/html/images/anchor-copy-button.svg
@@ -1,4 +1,8 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/arrow_down.svg b/examples/dokka-customFormat-example/html/images/arrow_down.svg
index c0388dee2c..639aaf12cf 100644
--- a/examples/dokka-customFormat-example/html/images/arrow_down.svg
+++ b/examples/dokka-customFormat-example/html/images/arrow_down.svg
@@ -1,3 +1,7 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/burger.svg b/examples/dokka-customFormat-example/html/images/burger.svg
index d6dcefccbd..fcca732b77 100644
--- a/examples/dokka-customFormat-example/html/images/burger.svg
+++ b/examples/dokka-customFormat-example/html/images/burger.svg
@@ -1,5 +1,9 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/copy-icon.svg b/examples/dokka-customFormat-example/html/images/copy-icon.svg
index 61440f0a40..2cb02ec6e7 100644
--- a/examples/dokka-customFormat-example/html/images/copy-icon.svg
+++ b/examples/dokka-customFormat-example/html/images/copy-icon.svg
@@ -1,3 +1,7 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/copy-successful-icon.svg b/examples/dokka-customFormat-example/html/images/copy-successful-icon.svg
index 1865f739b0..c4b95383de 100644
--- a/examples/dokka-customFormat-example/html/images/copy-successful-icon.svg
+++ b/examples/dokka-customFormat-example/html/images/copy-successful-icon.svg
@@ -1,3 +1,7 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/footer-go-to-link.svg b/examples/dokka-customFormat-example/html/images/footer-go-to-link.svg
index 0137e22313..a87add7a33 100644
--- a/examples/dokka-customFormat-example/html/images/footer-go-to-link.svg
+++ b/examples/dokka-customFormat-example/html/images/footer-go-to-link.svg
@@ -1,3 +1,7 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/go-to-top-icon.svg b/examples/dokka-customFormat-example/html/images/go-to-top-icon.svg
index d987f3eadc..abc3d1cef7 100644
--- a/examples/dokka-customFormat-example/html/images/go-to-top-icon.svg
+++ b/examples/dokka-customFormat-example/html/images/go-to-top-icon.svg
@@ -1,4 +1,8 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/logo-icon.svg b/examples/dokka-customFormat-example/html/images/logo-icon.svg
index 1fea08773f..e42f9570cf 100644
--- a/examples/dokka-customFormat-example/html/images/logo-icon.svg
+++ b/examples/dokka-customFormat-example/html/images/logo-icon.svg
@@ -1,3 +1,7 @@
+
+
\ No newline at end of file
+
diff --git a/examples/dokka-customFormat-example/html/images/nav-icons/abstract-class-kotlin.svg b/examples/dokka-customFormat-example/html/images/nav-icons/abstract-class-kotlin.svg
index a2069b8fb7..19d6148ca6 100644
--- a/examples/dokka-customFormat-example/html/images/nav-icons/abstract-class-kotlin.svg
+++ b/examples/dokka-customFormat-example/html/images/nav-icons/abstract-class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/abstract-class-kotlin.svg b/examples/dokka-gradle-example/html/images/nav-icons/abstract-class-kotlin.svg
index a2069b8fb7..19d6148ca6 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/abstract-class-kotlin.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/abstract-class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/annotation-kotlin.svg b/examples/dokka-gradle-example/html/images/nav-icons/annotation-kotlin.svg
index 932f1d3de4..b90f508c47 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/annotation-kotlin.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/annotation-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/class-kotlin.svg b/examples/dokka-gradle-example/html/images/nav-icons/class-kotlin.svg
index 46a21f65a0..797a2423cd 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/class-kotlin.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/enum-kotlin.svg b/examples/dokka-gradle-example/html/images/nav-icons/enum-kotlin.svg
index 4a85459683..775a7cc90c 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/enum-kotlin.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/enum-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/field-value.svg b/examples/dokka-gradle-example/html/images/nav-icons/field-value.svg
index 20449c9475..2771ee56cb 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/field-value.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/field-value.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/field-variable.svg b/examples/dokka-gradle-example/html/images/nav-icons/field-variable.svg
index 3b0745007f..e2d2bbd015 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/field-variable.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/field-variable.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/interface-kotlin.svg b/examples/dokka-gradle-example/html/images/nav-icons/interface-kotlin.svg
index bf07a1488e..5e163260e1 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/interface-kotlin.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/interface-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/object.svg b/examples/dokka-gradle-example/html/images/nav-icons/object.svg
index 9f427de413..31f0ee3e6b 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/object.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/object.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/nav-icons/typealias-kotlin.svg b/examples/dokka-gradle-example/html/images/nav-icons/typealias-kotlin.svg
index 4795069b26..f4bb238b5b 100644
--- a/examples/dokka-gradle-example/html/images/nav-icons/typealias-kotlin.svg
+++ b/examples/dokka-gradle-example/html/images/nav-icons/typealias-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-gradle-example/html/images/theme-toggle.svg b/examples/dokka-gradle-example/html/images/theme-toggle.svg
index dad3ff2a2c..df86202bb9 100644
--- a/examples/dokka-gradle-example/html/images/theme-toggle.svg
+++ b/examples/dokka-gradle-example/html/images/theme-toggle.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-gradle-example/html/scripts/clipboard.js b/examples/dokka-gradle-example/html/scripts/clipboard.js
index b00ce246ef..7a4f33c598 100644
--- a/examples/dokka-gradle-example/html/scripts/clipboard.js
+++ b/examples/dokka-gradle-example/html/scripts/clipboard.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
window.addEventListener('load', () => {
document.querySelectorAll('span.copy-icon').forEach(element => {
element.addEventListener('click', (el) => copyElementsContentToClipboard(element));
diff --git a/examples/dokka-gradle-example/html/scripts/navigation-loader.js b/examples/dokka-gradle-example/html/scripts/navigation-loader.js
index 92464911c6..3df7ac8ccb 100644
--- a/examples/dokka-gradle-example/html/scripts/navigation-loader.js
+++ b/examples/dokka-gradle-example/html/scripts/navigation-loader.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
navigationPageText = fetch(pathToRoot + "navigation.html").then(response => response.text())
displayNavigationFromPage = () => {
diff --git a/examples/dokka-gradle-example/html/scripts/platform-content-handler.js b/examples/dokka-gradle-example/html/scripts/platform-content-handler.js
index 7c5e8af73d..8c4ca53830 100644
--- a/examples/dokka-gradle-example/html/scripts/platform-content-handler.js
+++ b/examples/dokka-gradle-example/html/scripts/platform-content-handler.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
filteringContext = {
dependencies: {},
restrictedDependencies: [],
diff --git a/examples/dokka-gradle-example/html/scripts/symbol-parameters-wrapper_deferred.js b/examples/dokka-gradle-example/html/scripts/symbol-parameters-wrapper_deferred.js
index 248d0ab033..7ecae7a6ae 100644
--- a/examples/dokka-gradle-example/html/scripts/symbol-parameters-wrapper_deferred.js
+++ b/examples/dokka-gradle-example/html/scripts/symbol-parameters-wrapper_deferred.js
@@ -1,83 +1,64 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
// helps with some corner cases where starts working already,
// but the signature is not yet long enough to be wrapped
-const leftPaddingPx = 60
-
-const symbolResizeObserver = new ResizeObserver(entries => {
- entries.forEach(entry => {
- const symbolElement = entry.target
- symbolResizeObserver.unobserve(symbolElement) // only need it once, otherwise will be executed multiple times
- wrapSymbolParameters(symbolElement);
- })
-});
-
-const wrapAllSymbolParameters = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => wrapSymbolParameters(symbol))
-}
+(function() {
+ const leftPaddingPx = 60;
-const wrapSymbolParameters = (symbol) => {
- let parametersBlock = symbol.querySelector("span.parameters")
- if (parametersBlock == null) {
- return // nothing to wrap
+ function createNbspIndent() {
+ let indent = document.createElement("span");
+ indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"));
+ indent.classList.add("nbsp-indent");
+ return indent;
}
- let symbolBlockWidth = symbol.clientWidth
+ function wrapSymbolParameters(entry) {
+ const symbol = entry.target;
+ const symbolBlockWidth = entry.borderBoxSize && entry.borderBoxSize[0] && entry.borderBoxSize[0].inlineSize;
- // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
- // it can happen that `symbolBlockWidth` is 0, indicating that something hasn't been loaded.
- // In this case, just retry once all styles have been applied and it has been resized correctly.
- if (symbolBlockWidth === 0) {
- symbolResizeObserver.observe(symbol)
- return
- }
+ // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
+ // or if this block is a part of hidden tab, it can happen that `symbolBlockWidth` is 0,
+ // indicating that something hasn't been loaded.
+ // In this case, observer will be triggered onсe again when it will be ready.
+ if (symbolBlockWidth > 0) {
+ const node = symbol.querySelector(".parameters");
- let innerTextWidth = Array.from(symbol.children)
- .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
- .map(it => it.getBoundingClientRect().width).reduce((a, b) => a + b, 0)
+ if (node) {
+ // if window resize happened and observer was triggered, reset previously wrapped
+ // parameters as they might not need wrapping anymore, and check again
+ node.classList.remove("wrapped");
+ node.querySelectorAll(".parameter .nbsp-indent")
+ .forEach(indent => indent.remove());
- // if signature text takes up more than a single line, wrap params for readability
- let shouldWrapParams = innerTextWidth > (symbolBlockWidth - leftPaddingPx)
- if (shouldWrapParams) {
- parametersBlock.classList.add("wrapped")
- parametersBlock.querySelectorAll("span.parameter").forEach(param => {
- // has to be a physical indent so that it can be copied. styles like
- // paddings and `::before { content: " " }` do not work for that
- param.prepend(createNbspIndent())
- })
- }
-}
+ const innerTextWidth = Array.from(symbol.children)
+ .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
+ .map(it => it.getBoundingClientRect().width)
+ .reduce((a, b) => a + b, 0);
-const createNbspIndent = () => {
- let indent = document.createElement("span")
- indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"))
- indent.classList.add("nbsp-indent")
- return indent
-}
+ // if signature text takes up more than a single line, wrap params for readability
+ if (innerTextWidth > (symbolBlockWidth - leftPaddingPx)) {
+ node.classList.add("wrapped");
+ node.querySelectorAll(".parameter").forEach(param => {
+ // has to be a physical indent so that it can be copied. styles like
+ // paddings and `::before { content: " " }` do not work for that
+ param.prepend(createNbspIndent());
+ });
+ }
+ }
+ }
+ }
-const resetAllSymbolParametersWrapping = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => resetSymbolParametersWrapping(symbol))
-}
+ const symbolsObserver = new ResizeObserver(entries => entries.forEach(wrapSymbolParameters));
-const resetSymbolParametersWrapping = (symbol) => {
- let parameters = symbol.querySelector("span.parameters")
- if (parameters != null) {
- parameters.classList.remove("wrapped")
- parameters.querySelectorAll("span.parameter").forEach(param => {
- let indent = param.querySelector("span.nbsp-indent")
- if (indent != null) indent.remove()
- })
+ function initHandlers() {
+ document.querySelectorAll("div.symbol").forEach(symbol => symbolsObserver.observe(symbol));
}
-}
-if (document.readyState === 'loading') {
- window.addEventListener('DOMContentLoaded', () => {
- wrapAllSymbolParameters()
- })
-} else {
- wrapAllSymbolParameters()
-}
+ if (document.readyState === 'loading') window.addEventListener('DOMContentLoaded', initHandlers);
+ else initHandlers();
-window.onresize = event => {
- // need to re-calculate if params need to be wrapped after resize
- resetAllSymbolParametersWrapping()
- wrapAllSymbolParameters()
-}
+ // ToDo: Add `unobserve` if dokka will be SPA-like:
+ // https://github.com/w3c/csswg-drafts/issues/5155
+})();
diff --git a/examples/dokka-gradle-example/html/styles/font-jb-sans-auto.css b/examples/dokka-gradle-example/html/styles/font-jb-sans-auto.css
index 95d8ef8334..bdc68723af 100644
--- a/examples/dokka-gradle-example/html/styles/font-jb-sans-auto.css
+++ b/examples/dokka-gradle-example/html/styles/font-jb-sans-auto.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/* Light weight */
@font-face {
font-family: 'JetBrains Sans';
diff --git a/examples/dokka-gradle-example/html/styles/logo-styles.css b/examples/dokka-gradle-example/html/styles/logo-styles.css
index f3846e8219..69804e4688 100644
--- a/examples/dokka-gradle-example/html/styles/logo-styles.css
+++ b/examples/dokka-gradle-example/html/styles/logo-styles.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
:root {
--dokka-logo-image-url: url('../images/logo-icon.svg');
--dokka-logo-height: 50px;
diff --git a/examples/dokka-gradle-example/html/styles/main.css b/examples/dokka-gradle-example/html/styles/main.css
index 5aa04a4969..ebe1ce12f0 100644
--- a/examples/dokka-gradle-example/html/styles/main.css
+++ b/examples/dokka-gradle-example/html/styles/main.css
@@ -1,4 +1,6 @@
-#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
/* stylelint-disable color-no-hex */
:root {
@@ -113,6 +115,10 @@
--ring-alert-z-index: 6;
}
-html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ *//*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
/*# sourceMappingURL=main.css.map*/
\ No newline at end of file
diff --git a/examples/dokka-gradle-example/html/styles/prism.css b/examples/dokka-gradle-example/html/styles/prism.css
index 4287f6d123..2d3a091e45 100644
--- a/examples/dokka-gradle-example/html/styles/prism.css
+++ b/examples/dokka-gradle-example/html/styles/prism.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/*
* Custom Dokka styles
*/
diff --git a/examples/dokka-gradle-example/html/styles/style.css b/examples/dokka-gradle-example/html/styles/style.css
index 7f6e4b0dc8..67a899a594 100644
--- a/examples/dokka-gradle-example/html/styles/style.css
+++ b/examples/dokka-gradle-example/html/styles/style.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
@import url('./font-jb-sans-auto.css');
@import url('https://fonts.googleapis.com/css?family=JetBrains+Mono');
@@ -1476,4 +1480,4 @@ has only one header, and the header text is the same as the tab name, so no poin
*/
.main-content[data-page-type="package"] .tabs-section-body h2 {
display: none;
-}
\ No newline at end of file
+}
diff --git a/examples/dokka-kotlinAsJava-example/html/images/anchor-copy-button.svg b/examples/dokka-kotlinAsJava-example/html/images/anchor-copy-button.svg
index bab9d747ff..19c1fa3f4d 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/anchor-copy-button.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/anchor-copy-button.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/arrow_down.svg b/examples/dokka-kotlinAsJava-example/html/images/arrow_down.svg
index c0388dee2c..639aaf12cf 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/arrow_down.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/arrow_down.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/burger.svg b/examples/dokka-kotlinAsJava-example/html/images/burger.svg
index d6dcefccbd..fcca732b77 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/burger.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/burger.svg
@@ -1,5 +1,9 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/copy-icon.svg b/examples/dokka-kotlinAsJava-example/html/images/copy-icon.svg
index 61440f0a40..2cb02ec6e7 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/copy-icon.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/copy-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/copy-successful-icon.svg b/examples/dokka-kotlinAsJava-example/html/images/copy-successful-icon.svg
index 1865f739b0..c4b95383de 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/copy-successful-icon.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/copy-successful-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/footer-go-to-link.svg b/examples/dokka-kotlinAsJava-example/html/images/footer-go-to-link.svg
index 0137e22313..a87add7a33 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/footer-go-to-link.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/footer-go-to-link.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/go-to-top-icon.svg b/examples/dokka-kotlinAsJava-example/html/images/go-to-top-icon.svg
index d987f3eadc..abc3d1cef7 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/go-to-top-icon.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/go-to-top-icon.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/logo-icon.svg b/examples/dokka-kotlinAsJava-example/html/images/logo-icon.svg
index 1fea08773f..e42f9570cf 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/logo-icon.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/logo-icon.svg
@@ -1,3 +1,7 @@
+
+
@@ -7,4 +11,4 @@
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/abstract-class-kotlin.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/abstract-class-kotlin.svg
index a2069b8fb7..19d6148ca6 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/abstract-class-kotlin.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/abstract-class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/annotation-kotlin.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/annotation-kotlin.svg
index 932f1d3de4..b90f508c47 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/annotation-kotlin.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/annotation-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/class-kotlin.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/class-kotlin.svg
index 46a21f65a0..797a2423cd 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/class-kotlin.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/enum-kotlin.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/enum-kotlin.svg
index 4a85459683..775a7cc90c 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/enum-kotlin.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/enum-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-value.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-value.svg
index 20449c9475..2771ee56cb 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-value.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-value.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-variable.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-variable.svg
index 3b0745007f..e2d2bbd015 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-variable.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/field-variable.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/interface-kotlin.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/interface-kotlin.svg
index bf07a1488e..5e163260e1 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/interface-kotlin.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/interface-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/object.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/object.svg
index 9f427de413..31f0ee3e6b 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/object.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/object.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/typealias-kotlin.svg b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/typealias-kotlin.svg
index 4795069b26..f4bb238b5b 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/nav-icons/typealias-kotlin.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/nav-icons/typealias-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-kotlinAsJava-example/html/images/theme-toggle.svg b/examples/dokka-kotlinAsJava-example/html/images/theme-toggle.svg
index dad3ff2a2c..df86202bb9 100644
--- a/examples/dokka-kotlinAsJava-example/html/images/theme-toggle.svg
+++ b/examples/dokka-kotlinAsJava-example/html/images/theme-toggle.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-kotlinAsJava-example/html/scripts/clipboard.js b/examples/dokka-kotlinAsJava-example/html/scripts/clipboard.js
index b00ce246ef..7a4f33c598 100644
--- a/examples/dokka-kotlinAsJava-example/html/scripts/clipboard.js
+++ b/examples/dokka-kotlinAsJava-example/html/scripts/clipboard.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
window.addEventListener('load', () => {
document.querySelectorAll('span.copy-icon').forEach(element => {
element.addEventListener('click', (el) => copyElementsContentToClipboard(element));
diff --git a/examples/dokka-kotlinAsJava-example/html/scripts/navigation-loader.js b/examples/dokka-kotlinAsJava-example/html/scripts/navigation-loader.js
index 92464911c6..3df7ac8ccb 100644
--- a/examples/dokka-kotlinAsJava-example/html/scripts/navigation-loader.js
+++ b/examples/dokka-kotlinAsJava-example/html/scripts/navigation-loader.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
navigationPageText = fetch(pathToRoot + "navigation.html").then(response => response.text())
displayNavigationFromPage = () => {
diff --git a/examples/dokka-kotlinAsJava-example/html/scripts/platform-content-handler.js b/examples/dokka-kotlinAsJava-example/html/scripts/platform-content-handler.js
index 7c5e8af73d..8c4ca53830 100644
--- a/examples/dokka-kotlinAsJava-example/html/scripts/platform-content-handler.js
+++ b/examples/dokka-kotlinAsJava-example/html/scripts/platform-content-handler.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
filteringContext = {
dependencies: {},
restrictedDependencies: [],
diff --git a/examples/dokka-kotlinAsJava-example/html/scripts/symbol-parameters-wrapper_deferred.js b/examples/dokka-kotlinAsJava-example/html/scripts/symbol-parameters-wrapper_deferred.js
index 248d0ab033..7ecae7a6ae 100644
--- a/examples/dokka-kotlinAsJava-example/html/scripts/symbol-parameters-wrapper_deferred.js
+++ b/examples/dokka-kotlinAsJava-example/html/scripts/symbol-parameters-wrapper_deferred.js
@@ -1,83 +1,64 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
// helps with some corner cases where starts working already,
// but the signature is not yet long enough to be wrapped
-const leftPaddingPx = 60
-
-const symbolResizeObserver = new ResizeObserver(entries => {
- entries.forEach(entry => {
- const symbolElement = entry.target
- symbolResizeObserver.unobserve(symbolElement) // only need it once, otherwise will be executed multiple times
- wrapSymbolParameters(symbolElement);
- })
-});
-
-const wrapAllSymbolParameters = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => wrapSymbolParameters(symbol))
-}
+(function() {
+ const leftPaddingPx = 60;
-const wrapSymbolParameters = (symbol) => {
- let parametersBlock = symbol.querySelector("span.parameters")
- if (parametersBlock == null) {
- return // nothing to wrap
+ function createNbspIndent() {
+ let indent = document.createElement("span");
+ indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"));
+ indent.classList.add("nbsp-indent");
+ return indent;
}
- let symbolBlockWidth = symbol.clientWidth
+ function wrapSymbolParameters(entry) {
+ const symbol = entry.target;
+ const symbolBlockWidth = entry.borderBoxSize && entry.borderBoxSize[0] && entry.borderBoxSize[0].inlineSize;
- // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
- // it can happen that `symbolBlockWidth` is 0, indicating that something hasn't been loaded.
- // In this case, just retry once all styles have been applied and it has been resized correctly.
- if (symbolBlockWidth === 0) {
- symbolResizeObserver.observe(symbol)
- return
- }
+ // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
+ // or if this block is a part of hidden tab, it can happen that `symbolBlockWidth` is 0,
+ // indicating that something hasn't been loaded.
+ // In this case, observer will be triggered onсe again when it will be ready.
+ if (symbolBlockWidth > 0) {
+ const node = symbol.querySelector(".parameters");
- let innerTextWidth = Array.from(symbol.children)
- .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
- .map(it => it.getBoundingClientRect().width).reduce((a, b) => a + b, 0)
+ if (node) {
+ // if window resize happened and observer was triggered, reset previously wrapped
+ // parameters as they might not need wrapping anymore, and check again
+ node.classList.remove("wrapped");
+ node.querySelectorAll(".parameter .nbsp-indent")
+ .forEach(indent => indent.remove());
- // if signature text takes up more than a single line, wrap params for readability
- let shouldWrapParams = innerTextWidth > (symbolBlockWidth - leftPaddingPx)
- if (shouldWrapParams) {
- parametersBlock.classList.add("wrapped")
- parametersBlock.querySelectorAll("span.parameter").forEach(param => {
- // has to be a physical indent so that it can be copied. styles like
- // paddings and `::before { content: " " }` do not work for that
- param.prepend(createNbspIndent())
- })
- }
-}
+ const innerTextWidth = Array.from(symbol.children)
+ .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
+ .map(it => it.getBoundingClientRect().width)
+ .reduce((a, b) => a + b, 0);
-const createNbspIndent = () => {
- let indent = document.createElement("span")
- indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"))
- indent.classList.add("nbsp-indent")
- return indent
-}
+ // if signature text takes up more than a single line, wrap params for readability
+ if (innerTextWidth > (symbolBlockWidth - leftPaddingPx)) {
+ node.classList.add("wrapped");
+ node.querySelectorAll(".parameter").forEach(param => {
+ // has to be a physical indent so that it can be copied. styles like
+ // paddings and `::before { content: " " }` do not work for that
+ param.prepend(createNbspIndent());
+ });
+ }
+ }
+ }
+ }
-const resetAllSymbolParametersWrapping = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => resetSymbolParametersWrapping(symbol))
-}
+ const symbolsObserver = new ResizeObserver(entries => entries.forEach(wrapSymbolParameters));
-const resetSymbolParametersWrapping = (symbol) => {
- let parameters = symbol.querySelector("span.parameters")
- if (parameters != null) {
- parameters.classList.remove("wrapped")
- parameters.querySelectorAll("span.parameter").forEach(param => {
- let indent = param.querySelector("span.nbsp-indent")
- if (indent != null) indent.remove()
- })
+ function initHandlers() {
+ document.querySelectorAll("div.symbol").forEach(symbol => symbolsObserver.observe(symbol));
}
-}
-if (document.readyState === 'loading') {
- window.addEventListener('DOMContentLoaded', () => {
- wrapAllSymbolParameters()
- })
-} else {
- wrapAllSymbolParameters()
-}
+ if (document.readyState === 'loading') window.addEventListener('DOMContentLoaded', initHandlers);
+ else initHandlers();
-window.onresize = event => {
- // need to re-calculate if params need to be wrapped after resize
- resetAllSymbolParametersWrapping()
- wrapAllSymbolParameters()
-}
+ // ToDo: Add `unobserve` if dokka will be SPA-like:
+ // https://github.com/w3c/csswg-drafts/issues/5155
+})();
diff --git a/examples/dokka-kotlinAsJava-example/html/styles/font-jb-sans-auto.css b/examples/dokka-kotlinAsJava-example/html/styles/font-jb-sans-auto.css
index 95d8ef8334..bdc68723af 100644
--- a/examples/dokka-kotlinAsJava-example/html/styles/font-jb-sans-auto.css
+++ b/examples/dokka-kotlinAsJava-example/html/styles/font-jb-sans-auto.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/* Light weight */
@font-face {
font-family: 'JetBrains Sans';
diff --git a/examples/dokka-kotlinAsJava-example/html/styles/logo-styles.css b/examples/dokka-kotlinAsJava-example/html/styles/logo-styles.css
index f3846e8219..69804e4688 100644
--- a/examples/dokka-kotlinAsJava-example/html/styles/logo-styles.css
+++ b/examples/dokka-kotlinAsJava-example/html/styles/logo-styles.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
:root {
--dokka-logo-image-url: url('../images/logo-icon.svg');
--dokka-logo-height: 50px;
diff --git a/examples/dokka-kotlinAsJava-example/html/styles/main.css b/examples/dokka-kotlinAsJava-example/html/styles/main.css
index 5aa04a4969..ebe1ce12f0 100644
--- a/examples/dokka-kotlinAsJava-example/html/styles/main.css
+++ b/examples/dokka-kotlinAsJava-example/html/styles/main.css
@@ -1,4 +1,6 @@
-#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
/* stylelint-disable color-no-hex */
:root {
@@ -113,6 +115,10 @@
--ring-alert-z-index: 6;
}
-html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ *//*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
/*# sourceMappingURL=main.css.map*/
\ No newline at end of file
diff --git a/examples/dokka-kotlinAsJava-example/html/styles/prism.css b/examples/dokka-kotlinAsJava-example/html/styles/prism.css
index 4287f6d123..2d3a091e45 100644
--- a/examples/dokka-kotlinAsJava-example/html/styles/prism.css
+++ b/examples/dokka-kotlinAsJava-example/html/styles/prism.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/*
* Custom Dokka styles
*/
diff --git a/examples/dokka-kotlinAsJava-example/html/styles/style.css b/examples/dokka-kotlinAsJava-example/html/styles/style.css
index 7f6e4b0dc8..67a899a594 100644
--- a/examples/dokka-kotlinAsJava-example/html/styles/style.css
+++ b/examples/dokka-kotlinAsJava-example/html/styles/style.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
@import url('./font-jb-sans-auto.css');
@import url('https://fonts.googleapis.com/css?family=JetBrains+Mono');
@@ -1476,4 +1480,4 @@ has only one header, and the header text is the same as the tab name, so no poin
*/
.main-content[data-page-type="package"] .tabs-section-body h2 {
display: none;
-}
\ No newline at end of file
+}
diff --git a/examples/dokka-library-publishing-example/html/images/anchor-copy-button.svg b/examples/dokka-library-publishing-example/html/images/anchor-copy-button.svg
index bab9d747ff..19c1fa3f4d 100644
--- a/examples/dokka-library-publishing-example/html/images/anchor-copy-button.svg
+++ b/examples/dokka-library-publishing-example/html/images/anchor-copy-button.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/arrow_down.svg b/examples/dokka-library-publishing-example/html/images/arrow_down.svg
index c0388dee2c..639aaf12cf 100644
--- a/examples/dokka-library-publishing-example/html/images/arrow_down.svg
+++ b/examples/dokka-library-publishing-example/html/images/arrow_down.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/burger.svg b/examples/dokka-library-publishing-example/html/images/burger.svg
index d6dcefccbd..fcca732b77 100644
--- a/examples/dokka-library-publishing-example/html/images/burger.svg
+++ b/examples/dokka-library-publishing-example/html/images/burger.svg
@@ -1,5 +1,9 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/copy-icon.svg b/examples/dokka-library-publishing-example/html/images/copy-icon.svg
index 61440f0a40..2cb02ec6e7 100644
--- a/examples/dokka-library-publishing-example/html/images/copy-icon.svg
+++ b/examples/dokka-library-publishing-example/html/images/copy-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/copy-successful-icon.svg b/examples/dokka-library-publishing-example/html/images/copy-successful-icon.svg
index 1865f739b0..c4b95383de 100644
--- a/examples/dokka-library-publishing-example/html/images/copy-successful-icon.svg
+++ b/examples/dokka-library-publishing-example/html/images/copy-successful-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/footer-go-to-link.svg b/examples/dokka-library-publishing-example/html/images/footer-go-to-link.svg
index 0137e22313..a87add7a33 100644
--- a/examples/dokka-library-publishing-example/html/images/footer-go-to-link.svg
+++ b/examples/dokka-library-publishing-example/html/images/footer-go-to-link.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/go-to-top-icon.svg b/examples/dokka-library-publishing-example/html/images/go-to-top-icon.svg
index d987f3eadc..abc3d1cef7 100644
--- a/examples/dokka-library-publishing-example/html/images/go-to-top-icon.svg
+++ b/examples/dokka-library-publishing-example/html/images/go-to-top-icon.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/logo-icon.svg b/examples/dokka-library-publishing-example/html/images/logo-icon.svg
index 1fea08773f..e42f9570cf 100644
--- a/examples/dokka-library-publishing-example/html/images/logo-icon.svg
+++ b/examples/dokka-library-publishing-example/html/images/logo-icon.svg
@@ -1,3 +1,7 @@
+
+
@@ -7,4 +11,4 @@
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/abstract-class-kotlin.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/abstract-class-kotlin.svg
index a2069b8fb7..19d6148ca6 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/abstract-class-kotlin.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/abstract-class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/annotation-kotlin.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/annotation-kotlin.svg
index 932f1d3de4..b90f508c47 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/annotation-kotlin.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/annotation-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/class-kotlin.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/class-kotlin.svg
index 46a21f65a0..797a2423cd 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/class-kotlin.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/enum-kotlin.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/enum-kotlin.svg
index 4a85459683..775a7cc90c 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/enum-kotlin.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/enum-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/field-value.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/field-value.svg
index 20449c9475..2771ee56cb 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/field-value.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/field-value.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/field-variable.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/field-variable.svg
index 3b0745007f..e2d2bbd015 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/field-variable.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/field-variable.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/interface-kotlin.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/interface-kotlin.svg
index bf07a1488e..5e163260e1 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/interface-kotlin.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/interface-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/object.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/object.svg
index 9f427de413..31f0ee3e6b 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/object.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/object.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/nav-icons/typealias-kotlin.svg b/examples/dokka-library-publishing-example/html/images/nav-icons/typealias-kotlin.svg
index 4795069b26..f4bb238b5b 100644
--- a/examples/dokka-library-publishing-example/html/images/nav-icons/typealias-kotlin.svg
+++ b/examples/dokka-library-publishing-example/html/images/nav-icons/typealias-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-library-publishing-example/html/images/theme-toggle.svg b/examples/dokka-library-publishing-example/html/images/theme-toggle.svg
index dad3ff2a2c..df86202bb9 100644
--- a/examples/dokka-library-publishing-example/html/images/theme-toggle.svg
+++ b/examples/dokka-library-publishing-example/html/images/theme-toggle.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-library-publishing-example/html/scripts/clipboard.js b/examples/dokka-library-publishing-example/html/scripts/clipboard.js
index b00ce246ef..7a4f33c598 100644
--- a/examples/dokka-library-publishing-example/html/scripts/clipboard.js
+++ b/examples/dokka-library-publishing-example/html/scripts/clipboard.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
window.addEventListener('load', () => {
document.querySelectorAll('span.copy-icon').forEach(element => {
element.addEventListener('click', (el) => copyElementsContentToClipboard(element));
diff --git a/examples/dokka-library-publishing-example/html/scripts/navigation-loader.js b/examples/dokka-library-publishing-example/html/scripts/navigation-loader.js
index 92464911c6..3df7ac8ccb 100644
--- a/examples/dokka-library-publishing-example/html/scripts/navigation-loader.js
+++ b/examples/dokka-library-publishing-example/html/scripts/navigation-loader.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
navigationPageText = fetch(pathToRoot + "navigation.html").then(response => response.text())
displayNavigationFromPage = () => {
diff --git a/examples/dokka-library-publishing-example/html/scripts/platform-content-handler.js b/examples/dokka-library-publishing-example/html/scripts/platform-content-handler.js
index 7c5e8af73d..8c4ca53830 100644
--- a/examples/dokka-library-publishing-example/html/scripts/platform-content-handler.js
+++ b/examples/dokka-library-publishing-example/html/scripts/platform-content-handler.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
filteringContext = {
dependencies: {},
restrictedDependencies: [],
diff --git a/examples/dokka-library-publishing-example/html/scripts/symbol-parameters-wrapper_deferred.js b/examples/dokka-library-publishing-example/html/scripts/symbol-parameters-wrapper_deferred.js
index 248d0ab033..7ecae7a6ae 100644
--- a/examples/dokka-library-publishing-example/html/scripts/symbol-parameters-wrapper_deferred.js
+++ b/examples/dokka-library-publishing-example/html/scripts/symbol-parameters-wrapper_deferred.js
@@ -1,83 +1,64 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
// helps with some corner cases where starts working already,
// but the signature is not yet long enough to be wrapped
-const leftPaddingPx = 60
-
-const symbolResizeObserver = new ResizeObserver(entries => {
- entries.forEach(entry => {
- const symbolElement = entry.target
- symbolResizeObserver.unobserve(symbolElement) // only need it once, otherwise will be executed multiple times
- wrapSymbolParameters(symbolElement);
- })
-});
-
-const wrapAllSymbolParameters = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => wrapSymbolParameters(symbol))
-}
+(function() {
+ const leftPaddingPx = 60;
-const wrapSymbolParameters = (symbol) => {
- let parametersBlock = symbol.querySelector("span.parameters")
- if (parametersBlock == null) {
- return // nothing to wrap
+ function createNbspIndent() {
+ let indent = document.createElement("span");
+ indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"));
+ indent.classList.add("nbsp-indent");
+ return indent;
}
- let symbolBlockWidth = symbol.clientWidth
+ function wrapSymbolParameters(entry) {
+ const symbol = entry.target;
+ const symbolBlockWidth = entry.borderBoxSize && entry.borderBoxSize[0] && entry.borderBoxSize[0].inlineSize;
- // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
- // it can happen that `symbolBlockWidth` is 0, indicating that something hasn't been loaded.
- // In this case, just retry once all styles have been applied and it has been resized correctly.
- if (symbolBlockWidth === 0) {
- symbolResizeObserver.observe(symbol)
- return
- }
+ // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
+ // or if this block is a part of hidden tab, it can happen that `symbolBlockWidth` is 0,
+ // indicating that something hasn't been loaded.
+ // In this case, observer will be triggered onсe again when it will be ready.
+ if (symbolBlockWidth > 0) {
+ const node = symbol.querySelector(".parameters");
- let innerTextWidth = Array.from(symbol.children)
- .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
- .map(it => it.getBoundingClientRect().width).reduce((a, b) => a + b, 0)
+ if (node) {
+ // if window resize happened and observer was triggered, reset previously wrapped
+ // parameters as they might not need wrapping anymore, and check again
+ node.classList.remove("wrapped");
+ node.querySelectorAll(".parameter .nbsp-indent")
+ .forEach(indent => indent.remove());
- // if signature text takes up more than a single line, wrap params for readability
- let shouldWrapParams = innerTextWidth > (symbolBlockWidth - leftPaddingPx)
- if (shouldWrapParams) {
- parametersBlock.classList.add("wrapped")
- parametersBlock.querySelectorAll("span.parameter").forEach(param => {
- // has to be a physical indent so that it can be copied. styles like
- // paddings and `::before { content: " " }` do not work for that
- param.prepend(createNbspIndent())
- })
- }
-}
+ const innerTextWidth = Array.from(symbol.children)
+ .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
+ .map(it => it.getBoundingClientRect().width)
+ .reduce((a, b) => a + b, 0);
-const createNbspIndent = () => {
- let indent = document.createElement("span")
- indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"))
- indent.classList.add("nbsp-indent")
- return indent
-}
+ // if signature text takes up more than a single line, wrap params for readability
+ if (innerTextWidth > (symbolBlockWidth - leftPaddingPx)) {
+ node.classList.add("wrapped");
+ node.querySelectorAll(".parameter").forEach(param => {
+ // has to be a physical indent so that it can be copied. styles like
+ // paddings and `::before { content: " " }` do not work for that
+ param.prepend(createNbspIndent());
+ });
+ }
+ }
+ }
+ }
-const resetAllSymbolParametersWrapping = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => resetSymbolParametersWrapping(symbol))
-}
+ const symbolsObserver = new ResizeObserver(entries => entries.forEach(wrapSymbolParameters));
-const resetSymbolParametersWrapping = (symbol) => {
- let parameters = symbol.querySelector("span.parameters")
- if (parameters != null) {
- parameters.classList.remove("wrapped")
- parameters.querySelectorAll("span.parameter").forEach(param => {
- let indent = param.querySelector("span.nbsp-indent")
- if (indent != null) indent.remove()
- })
+ function initHandlers() {
+ document.querySelectorAll("div.symbol").forEach(symbol => symbolsObserver.observe(symbol));
}
-}
-if (document.readyState === 'loading') {
- window.addEventListener('DOMContentLoaded', () => {
- wrapAllSymbolParameters()
- })
-} else {
- wrapAllSymbolParameters()
-}
+ if (document.readyState === 'loading') window.addEventListener('DOMContentLoaded', initHandlers);
+ else initHandlers();
-window.onresize = event => {
- // need to re-calculate if params need to be wrapped after resize
- resetAllSymbolParametersWrapping()
- wrapAllSymbolParameters()
-}
+ // ToDo: Add `unobserve` if dokka will be SPA-like:
+ // https://github.com/w3c/csswg-drafts/issues/5155
+})();
diff --git a/examples/dokka-library-publishing-example/html/styles/font-jb-sans-auto.css b/examples/dokka-library-publishing-example/html/styles/font-jb-sans-auto.css
index 95d8ef8334..bdc68723af 100644
--- a/examples/dokka-library-publishing-example/html/styles/font-jb-sans-auto.css
+++ b/examples/dokka-library-publishing-example/html/styles/font-jb-sans-auto.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/* Light weight */
@font-face {
font-family: 'JetBrains Sans';
diff --git a/examples/dokka-library-publishing-example/html/styles/logo-styles.css b/examples/dokka-library-publishing-example/html/styles/logo-styles.css
index f3846e8219..69804e4688 100644
--- a/examples/dokka-library-publishing-example/html/styles/logo-styles.css
+++ b/examples/dokka-library-publishing-example/html/styles/logo-styles.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
:root {
--dokka-logo-image-url: url('../images/logo-icon.svg');
--dokka-logo-height: 50px;
diff --git a/examples/dokka-library-publishing-example/html/styles/main.css b/examples/dokka-library-publishing-example/html/styles/main.css
index 5aa04a4969..ebe1ce12f0 100644
--- a/examples/dokka-library-publishing-example/html/styles/main.css
+++ b/examples/dokka-library-publishing-example/html/styles/main.css
@@ -1,4 +1,6 @@
-#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
/* stylelint-disable color-no-hex */
:root {
@@ -113,6 +115,10 @@
--ring-alert-z-index: 6;
}
-html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ *//*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
/*# sourceMappingURL=main.css.map*/
\ No newline at end of file
diff --git a/examples/dokka-library-publishing-example/html/styles/prism.css b/examples/dokka-library-publishing-example/html/styles/prism.css
index 4287f6d123..2d3a091e45 100644
--- a/examples/dokka-library-publishing-example/html/styles/prism.css
+++ b/examples/dokka-library-publishing-example/html/styles/prism.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/*
* Custom Dokka styles
*/
diff --git a/examples/dokka-library-publishing-example/html/styles/style.css b/examples/dokka-library-publishing-example/html/styles/style.css
index 7f6e4b0dc8..67a899a594 100644
--- a/examples/dokka-library-publishing-example/html/styles/style.css
+++ b/examples/dokka-library-publishing-example/html/styles/style.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
@import url('./font-jb-sans-auto.css');
@import url('https://fonts.googleapis.com/css?family=JetBrains+Mono');
@@ -1476,4 +1480,4 @@ has only one header, and the header text is the same as the tab name, so no poin
*/
.main-content[data-page-type="package"] .tabs-section-body h2 {
display: none;
-}
\ No newline at end of file
+}
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg
index bab9d747ff..19c1fa3f4d 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/arrow_down.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/arrow_down.svg
index c0388dee2c..639aaf12cf 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/arrow_down.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/arrow_down.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/burger.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/burger.svg
index d6dcefccbd..fcca732b77 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/burger.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/burger.svg
@@ -1,5 +1,9 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/copy-icon.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/copy-icon.svg
index 61440f0a40..2cb02ec6e7 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/copy-icon.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/copy-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg
index 1865f739b0..c4b95383de 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg
index 0137e22313..a87add7a33 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg
index d987f3eadc..abc3d1cef7 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/logo-icon.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/logo-icon.svg
index 1fea08773f..e42f9570cf 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/logo-icon.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/logo-icon.svg
@@ -1,3 +1,7 @@
+
+
@@ -7,4 +11,4 @@
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg
index a2069b8fb7..19d6148ca6 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg
index 932f1d3de4..b90f508c47 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg
index 46a21f65a0..797a2423cd 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg
index 4a85459683..775a7cc90c 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg
index 20449c9475..2771ee56cb 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg
index 3b0745007f..e2d2bbd015 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg
index bf07a1488e..5e163260e1 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/object.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/object.svg
index 9f427de413..31f0ee3e6b 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/object.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/object.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg
index 4795069b26..f4bb238b5b 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/images/theme-toggle.svg b/examples/dokka-multimodule-example/htmlMultiModule/images/theme-toggle.svg
index dad3ff2a2c..df86202bb9 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/images/theme-toggle.svg
+++ b/examples/dokka-multimodule-example/htmlMultiModule/images/theme-toggle.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/scripts/clipboard.js b/examples/dokka-multimodule-example/htmlMultiModule/scripts/clipboard.js
index b00ce246ef..7a4f33c598 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/scripts/clipboard.js
+++ b/examples/dokka-multimodule-example/htmlMultiModule/scripts/clipboard.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
window.addEventListener('load', () => {
document.querySelectorAll('span.copy-icon').forEach(element => {
element.addEventListener('click', (el) => copyElementsContentToClipboard(element));
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/scripts/navigation-loader.js b/examples/dokka-multimodule-example/htmlMultiModule/scripts/navigation-loader.js
index 92464911c6..3df7ac8ccb 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/scripts/navigation-loader.js
+++ b/examples/dokka-multimodule-example/htmlMultiModule/scripts/navigation-loader.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
navigationPageText = fetch(pathToRoot + "navigation.html").then(response => response.text())
displayNavigationFromPage = () => {
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/scripts/platform-content-handler.js b/examples/dokka-multimodule-example/htmlMultiModule/scripts/platform-content-handler.js
index 7c5e8af73d..8c4ca53830 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/scripts/platform-content-handler.js
+++ b/examples/dokka-multimodule-example/htmlMultiModule/scripts/platform-content-handler.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
filteringContext = {
dependencies: {},
restrictedDependencies: [],
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/scripts/symbol-parameters-wrapper_deferred.js b/examples/dokka-multimodule-example/htmlMultiModule/scripts/symbol-parameters-wrapper_deferred.js
index 248d0ab033..7ecae7a6ae 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/scripts/symbol-parameters-wrapper_deferred.js
+++ b/examples/dokka-multimodule-example/htmlMultiModule/scripts/symbol-parameters-wrapper_deferred.js
@@ -1,83 +1,64 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
// helps with some corner cases where starts working already,
// but the signature is not yet long enough to be wrapped
-const leftPaddingPx = 60
-
-const symbolResizeObserver = new ResizeObserver(entries => {
- entries.forEach(entry => {
- const symbolElement = entry.target
- symbolResizeObserver.unobserve(symbolElement) // only need it once, otherwise will be executed multiple times
- wrapSymbolParameters(symbolElement);
- })
-});
-
-const wrapAllSymbolParameters = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => wrapSymbolParameters(symbol))
-}
+(function() {
+ const leftPaddingPx = 60;
-const wrapSymbolParameters = (symbol) => {
- let parametersBlock = symbol.querySelector("span.parameters")
- if (parametersBlock == null) {
- return // nothing to wrap
+ function createNbspIndent() {
+ let indent = document.createElement("span");
+ indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"));
+ indent.classList.add("nbsp-indent");
+ return indent;
}
- let symbolBlockWidth = symbol.clientWidth
+ function wrapSymbolParameters(entry) {
+ const symbol = entry.target;
+ const symbolBlockWidth = entry.borderBoxSize && entry.borderBoxSize[0] && entry.borderBoxSize[0].inlineSize;
- // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
- // it can happen that `symbolBlockWidth` is 0, indicating that something hasn't been loaded.
- // In this case, just retry once all styles have been applied and it has been resized correctly.
- if (symbolBlockWidth === 0) {
- symbolResizeObserver.observe(symbol)
- return
- }
+ // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
+ // or if this block is a part of hidden tab, it can happen that `symbolBlockWidth` is 0,
+ // indicating that something hasn't been loaded.
+ // In this case, observer will be triggered onсe again when it will be ready.
+ if (symbolBlockWidth > 0) {
+ const node = symbol.querySelector(".parameters");
- let innerTextWidth = Array.from(symbol.children)
- .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
- .map(it => it.getBoundingClientRect().width).reduce((a, b) => a + b, 0)
+ if (node) {
+ // if window resize happened and observer was triggered, reset previously wrapped
+ // parameters as they might not need wrapping anymore, and check again
+ node.classList.remove("wrapped");
+ node.querySelectorAll(".parameter .nbsp-indent")
+ .forEach(indent => indent.remove());
- // if signature text takes up more than a single line, wrap params for readability
- let shouldWrapParams = innerTextWidth > (symbolBlockWidth - leftPaddingPx)
- if (shouldWrapParams) {
- parametersBlock.classList.add("wrapped")
- parametersBlock.querySelectorAll("span.parameter").forEach(param => {
- // has to be a physical indent so that it can be copied. styles like
- // paddings and `::before { content: " " }` do not work for that
- param.prepend(createNbspIndent())
- })
- }
-}
+ const innerTextWidth = Array.from(symbol.children)
+ .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
+ .map(it => it.getBoundingClientRect().width)
+ .reduce((a, b) => a + b, 0);
-const createNbspIndent = () => {
- let indent = document.createElement("span")
- indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"))
- indent.classList.add("nbsp-indent")
- return indent
-}
+ // if signature text takes up more than a single line, wrap params for readability
+ if (innerTextWidth > (symbolBlockWidth - leftPaddingPx)) {
+ node.classList.add("wrapped");
+ node.querySelectorAll(".parameter").forEach(param => {
+ // has to be a physical indent so that it can be copied. styles like
+ // paddings and `::before { content: " " }` do not work for that
+ param.prepend(createNbspIndent());
+ });
+ }
+ }
+ }
+ }
-const resetAllSymbolParametersWrapping = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => resetSymbolParametersWrapping(symbol))
-}
+ const symbolsObserver = new ResizeObserver(entries => entries.forEach(wrapSymbolParameters));
-const resetSymbolParametersWrapping = (symbol) => {
- let parameters = symbol.querySelector("span.parameters")
- if (parameters != null) {
- parameters.classList.remove("wrapped")
- parameters.querySelectorAll("span.parameter").forEach(param => {
- let indent = param.querySelector("span.nbsp-indent")
- if (indent != null) indent.remove()
- })
+ function initHandlers() {
+ document.querySelectorAll("div.symbol").forEach(symbol => symbolsObserver.observe(symbol));
}
-}
-if (document.readyState === 'loading') {
- window.addEventListener('DOMContentLoaded', () => {
- wrapAllSymbolParameters()
- })
-} else {
- wrapAllSymbolParameters()
-}
+ if (document.readyState === 'loading') window.addEventListener('DOMContentLoaded', initHandlers);
+ else initHandlers();
-window.onresize = event => {
- // need to re-calculate if params need to be wrapped after resize
- resetAllSymbolParametersWrapping()
- wrapAllSymbolParameters()
-}
+ // ToDo: Add `unobserve` if dokka will be SPA-like:
+ // https://github.com/w3c/csswg-drafts/issues/5155
+})();
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/styles/font-jb-sans-auto.css b/examples/dokka-multimodule-example/htmlMultiModule/styles/font-jb-sans-auto.css
index 95d8ef8334..bdc68723af 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/styles/font-jb-sans-auto.css
+++ b/examples/dokka-multimodule-example/htmlMultiModule/styles/font-jb-sans-auto.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/* Light weight */
@font-face {
font-family: 'JetBrains Sans';
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/styles/logo-styles.css b/examples/dokka-multimodule-example/htmlMultiModule/styles/logo-styles.css
index f3846e8219..69804e4688 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/styles/logo-styles.css
+++ b/examples/dokka-multimodule-example/htmlMultiModule/styles/logo-styles.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
:root {
--dokka-logo-image-url: url('../images/logo-icon.svg');
--dokka-logo-height: 50px;
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/styles/main.css b/examples/dokka-multimodule-example/htmlMultiModule/styles/main.css
index 5aa04a4969..ebe1ce12f0 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/styles/main.css
+++ b/examples/dokka-multimodule-example/htmlMultiModule/styles/main.css
@@ -1,4 +1,6 @@
-#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
/* stylelint-disable color-no-hex */
:root {
@@ -113,6 +115,10 @@
--ring-alert-z-index: 6;
}
-html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ *//*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
/*# sourceMappingURL=main.css.map*/
\ No newline at end of file
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/styles/prism.css b/examples/dokka-multimodule-example/htmlMultiModule/styles/prism.css
index 4287f6d123..2d3a091e45 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/styles/prism.css
+++ b/examples/dokka-multimodule-example/htmlMultiModule/styles/prism.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/*
* Custom Dokka styles
*/
diff --git a/examples/dokka-multimodule-example/htmlMultiModule/styles/style.css b/examples/dokka-multimodule-example/htmlMultiModule/styles/style.css
index 7f6e4b0dc8..67a899a594 100644
--- a/examples/dokka-multimodule-example/htmlMultiModule/styles/style.css
+++ b/examples/dokka-multimodule-example/htmlMultiModule/styles/style.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
@import url('./font-jb-sans-auto.css');
@import url('https://fonts.googleapis.com/css?family=JetBrains+Mono');
@@ -1476,4 +1480,4 @@ has only one header, and the header text is the same as the tab name, so no poin
*/
.main-content[data-page-type="package"] .tabs-section-body h2 {
display: none;
-}
\ No newline at end of file
+}
diff --git a/examples/dokka-multiplatform-example/html/images/anchor-copy-button.svg b/examples/dokka-multiplatform-example/html/images/anchor-copy-button.svg
index bab9d747ff..19c1fa3f4d 100644
--- a/examples/dokka-multiplatform-example/html/images/anchor-copy-button.svg
+++ b/examples/dokka-multiplatform-example/html/images/anchor-copy-button.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/arrow_down.svg b/examples/dokka-multiplatform-example/html/images/arrow_down.svg
index c0388dee2c..639aaf12cf 100644
--- a/examples/dokka-multiplatform-example/html/images/arrow_down.svg
+++ b/examples/dokka-multiplatform-example/html/images/arrow_down.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/burger.svg b/examples/dokka-multiplatform-example/html/images/burger.svg
index d6dcefccbd..fcca732b77 100644
--- a/examples/dokka-multiplatform-example/html/images/burger.svg
+++ b/examples/dokka-multiplatform-example/html/images/burger.svg
@@ -1,5 +1,9 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/copy-icon.svg b/examples/dokka-multiplatform-example/html/images/copy-icon.svg
index 61440f0a40..2cb02ec6e7 100644
--- a/examples/dokka-multiplatform-example/html/images/copy-icon.svg
+++ b/examples/dokka-multiplatform-example/html/images/copy-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/copy-successful-icon.svg b/examples/dokka-multiplatform-example/html/images/copy-successful-icon.svg
index 1865f739b0..c4b95383de 100644
--- a/examples/dokka-multiplatform-example/html/images/copy-successful-icon.svg
+++ b/examples/dokka-multiplatform-example/html/images/copy-successful-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/footer-go-to-link.svg b/examples/dokka-multiplatform-example/html/images/footer-go-to-link.svg
index 0137e22313..a87add7a33 100644
--- a/examples/dokka-multiplatform-example/html/images/footer-go-to-link.svg
+++ b/examples/dokka-multiplatform-example/html/images/footer-go-to-link.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/go-to-top-icon.svg b/examples/dokka-multiplatform-example/html/images/go-to-top-icon.svg
index d987f3eadc..abc3d1cef7 100644
--- a/examples/dokka-multiplatform-example/html/images/go-to-top-icon.svg
+++ b/examples/dokka-multiplatform-example/html/images/go-to-top-icon.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/logo-icon.svg b/examples/dokka-multiplatform-example/html/images/logo-icon.svg
index 1fea08773f..e42f9570cf 100644
--- a/examples/dokka-multiplatform-example/html/images/logo-icon.svg
+++ b/examples/dokka-multiplatform-example/html/images/logo-icon.svg
@@ -1,3 +1,7 @@
+
+
@@ -7,4 +11,4 @@
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/abstract-class-kotlin.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/abstract-class-kotlin.svg
index a2069b8fb7..19d6148ca6 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/abstract-class-kotlin.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/abstract-class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/annotation-kotlin.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/annotation-kotlin.svg
index 932f1d3de4..b90f508c47 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/annotation-kotlin.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/annotation-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/class-kotlin.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/class-kotlin.svg
index 46a21f65a0..797a2423cd 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/class-kotlin.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/enum-kotlin.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/enum-kotlin.svg
index 4a85459683..775a7cc90c 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/enum-kotlin.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/enum-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/field-value.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/field-value.svg
index 20449c9475..2771ee56cb 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/field-value.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/field-value.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/field-variable.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/field-variable.svg
index 3b0745007f..e2d2bbd015 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/field-variable.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/field-variable.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/interface-kotlin.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/interface-kotlin.svg
index bf07a1488e..5e163260e1 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/interface-kotlin.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/interface-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/object.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/object.svg
index 9f427de413..31f0ee3e6b 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/object.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/object.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/nav-icons/typealias-kotlin.svg b/examples/dokka-multiplatform-example/html/images/nav-icons/typealias-kotlin.svg
index 4795069b26..f4bb238b5b 100644
--- a/examples/dokka-multiplatform-example/html/images/nav-icons/typealias-kotlin.svg
+++ b/examples/dokka-multiplatform-example/html/images/nav-icons/typealias-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-multiplatform-example/html/images/theme-toggle.svg b/examples/dokka-multiplatform-example/html/images/theme-toggle.svg
index dad3ff2a2c..df86202bb9 100644
--- a/examples/dokka-multiplatform-example/html/images/theme-toggle.svg
+++ b/examples/dokka-multiplatform-example/html/images/theme-toggle.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-multiplatform-example/html/scripts/clipboard.js b/examples/dokka-multiplatform-example/html/scripts/clipboard.js
index b00ce246ef..7a4f33c598 100644
--- a/examples/dokka-multiplatform-example/html/scripts/clipboard.js
+++ b/examples/dokka-multiplatform-example/html/scripts/clipboard.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
window.addEventListener('load', () => {
document.querySelectorAll('span.copy-icon').forEach(element => {
element.addEventListener('click', (el) => copyElementsContentToClipboard(element));
diff --git a/examples/dokka-multiplatform-example/html/scripts/navigation-loader.js b/examples/dokka-multiplatform-example/html/scripts/navigation-loader.js
index 92464911c6..3df7ac8ccb 100644
--- a/examples/dokka-multiplatform-example/html/scripts/navigation-loader.js
+++ b/examples/dokka-multiplatform-example/html/scripts/navigation-loader.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
navigationPageText = fetch(pathToRoot + "navigation.html").then(response => response.text())
displayNavigationFromPage = () => {
diff --git a/examples/dokka-multiplatform-example/html/scripts/platform-content-handler.js b/examples/dokka-multiplatform-example/html/scripts/platform-content-handler.js
index 7c5e8af73d..8c4ca53830 100644
--- a/examples/dokka-multiplatform-example/html/scripts/platform-content-handler.js
+++ b/examples/dokka-multiplatform-example/html/scripts/platform-content-handler.js
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
filteringContext = {
dependencies: {},
restrictedDependencies: [],
diff --git a/examples/dokka-multiplatform-example/html/scripts/symbol-parameters-wrapper_deferred.js b/examples/dokka-multiplatform-example/html/scripts/symbol-parameters-wrapper_deferred.js
index 248d0ab033..7ecae7a6ae 100644
--- a/examples/dokka-multiplatform-example/html/scripts/symbol-parameters-wrapper_deferred.js
+++ b/examples/dokka-multiplatform-example/html/scripts/symbol-parameters-wrapper_deferred.js
@@ -1,83 +1,64 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
// helps with some corner cases where starts working already,
// but the signature is not yet long enough to be wrapped
-const leftPaddingPx = 60
-
-const symbolResizeObserver = new ResizeObserver(entries => {
- entries.forEach(entry => {
- const symbolElement = entry.target
- symbolResizeObserver.unobserve(symbolElement) // only need it once, otherwise will be executed multiple times
- wrapSymbolParameters(symbolElement);
- })
-});
-
-const wrapAllSymbolParameters = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => wrapSymbolParameters(symbol))
-}
+(function() {
+ const leftPaddingPx = 60;
-const wrapSymbolParameters = (symbol) => {
- let parametersBlock = symbol.querySelector("span.parameters")
- if (parametersBlock == null) {
- return // nothing to wrap
+ function createNbspIndent() {
+ let indent = document.createElement("span");
+ indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"));
+ indent.classList.add("nbsp-indent");
+ return indent;
}
- let symbolBlockWidth = symbol.clientWidth
+ function wrapSymbolParameters(entry) {
+ const symbol = entry.target;
+ const symbolBlockWidth = entry.borderBoxSize && entry.borderBoxSize[0] && entry.borderBoxSize[0].inlineSize;
- // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
- // it can happen that `symbolBlockWidth` is 0, indicating that something hasn't been loaded.
- // In this case, just retry once all styles have been applied and it has been resized correctly.
- if (symbolBlockWidth === 0) {
- symbolResizeObserver.observe(symbol)
- return
- }
+ // Even though the script is marked as `defer` and we wait for `DOMContentLoaded` event,
+ // or if this block is a part of hidden tab, it can happen that `symbolBlockWidth` is 0,
+ // indicating that something hasn't been loaded.
+ // In this case, observer will be triggered onсe again when it will be ready.
+ if (symbolBlockWidth > 0) {
+ const node = symbol.querySelector(".parameters");
- let innerTextWidth = Array.from(symbol.children)
- .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
- .map(it => it.getBoundingClientRect().width).reduce((a, b) => a + b, 0)
+ if (node) {
+ // if window resize happened and observer was triggered, reset previously wrapped
+ // parameters as they might not need wrapping anymore, and check again
+ node.classList.remove("wrapped");
+ node.querySelectorAll(".parameter .nbsp-indent")
+ .forEach(indent => indent.remove());
- // if signature text takes up more than a single line, wrap params for readability
- let shouldWrapParams = innerTextWidth > (symbolBlockWidth - leftPaddingPx)
- if (shouldWrapParams) {
- parametersBlock.classList.add("wrapped")
- parametersBlock.querySelectorAll("span.parameter").forEach(param => {
- // has to be a physical indent so that it can be copied. styles like
- // paddings and `::before { content: " " }` do not work for that
- param.prepend(createNbspIndent())
- })
- }
-}
+ const innerTextWidth = Array.from(symbol.children)
+ .filter(it => !it.classList.contains("block")) // blocks are usually on their own (like annotations), so ignore it
+ .map(it => it.getBoundingClientRect().width)
+ .reduce((a, b) => a + b, 0);
-const createNbspIndent = () => {
- let indent = document.createElement("span")
- indent.append(document.createTextNode("\u00A0\u00A0\u00A0\u00A0"))
- indent.classList.add("nbsp-indent")
- return indent
-}
+ // if signature text takes up more than a single line, wrap params for readability
+ if (innerTextWidth > (symbolBlockWidth - leftPaddingPx)) {
+ node.classList.add("wrapped");
+ node.querySelectorAll(".parameter").forEach(param => {
+ // has to be a physical indent so that it can be copied. styles like
+ // paddings and `::before { content: " " }` do not work for that
+ param.prepend(createNbspIndent());
+ });
+ }
+ }
+ }
+ }
-const resetAllSymbolParametersWrapping = () => {
- document.querySelectorAll("div.symbol").forEach(symbol => resetSymbolParametersWrapping(symbol))
-}
+ const symbolsObserver = new ResizeObserver(entries => entries.forEach(wrapSymbolParameters));
-const resetSymbolParametersWrapping = (symbol) => {
- let parameters = symbol.querySelector("span.parameters")
- if (parameters != null) {
- parameters.classList.remove("wrapped")
- parameters.querySelectorAll("span.parameter").forEach(param => {
- let indent = param.querySelector("span.nbsp-indent")
- if (indent != null) indent.remove()
- })
+ function initHandlers() {
+ document.querySelectorAll("div.symbol").forEach(symbol => symbolsObserver.observe(symbol));
}
-}
-if (document.readyState === 'loading') {
- window.addEventListener('DOMContentLoaded', () => {
- wrapAllSymbolParameters()
- })
-} else {
- wrapAllSymbolParameters()
-}
+ if (document.readyState === 'loading') window.addEventListener('DOMContentLoaded', initHandlers);
+ else initHandlers();
-window.onresize = event => {
- // need to re-calculate if params need to be wrapped after resize
- resetAllSymbolParametersWrapping()
- wrapAllSymbolParameters()
-}
+ // ToDo: Add `unobserve` if dokka will be SPA-like:
+ // https://github.com/w3c/csswg-drafts/issues/5155
+})();
diff --git a/examples/dokka-multiplatform-example/html/styles/font-jb-sans-auto.css b/examples/dokka-multiplatform-example/html/styles/font-jb-sans-auto.css
index 95d8ef8334..bdc68723af 100644
--- a/examples/dokka-multiplatform-example/html/styles/font-jb-sans-auto.css
+++ b/examples/dokka-multiplatform-example/html/styles/font-jb-sans-auto.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/* Light weight */
@font-face {
font-family: 'JetBrains Sans';
diff --git a/examples/dokka-multiplatform-example/html/styles/logo-styles.css b/examples/dokka-multiplatform-example/html/styles/logo-styles.css
index f3846e8219..69804e4688 100644
--- a/examples/dokka-multiplatform-example/html/styles/logo-styles.css
+++ b/examples/dokka-multiplatform-example/html/styles/logo-styles.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
:root {
--dokka-logo-image-url: url('../images/logo-icon.svg');
--dokka-logo-height: 50px;
diff --git a/examples/dokka-multiplatform-example/html/styles/main.css b/examples/dokka-multiplatform-example/html/styles/main.css
index 5aa04a4969..ebe1ce12f0 100644
--- a/examples/dokka-multiplatform-example/html/styles/main.css
+++ b/examples/dokka-multiplatform-example/html/styles/main.css
@@ -1,4 +1,6 @@
-#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */#pages-search{cursor:pointer;border:none;border-radius:50%;background:transparent;fill:#fff;fill:var(--dark-mode-and-search-icon-color)}#pages-search:focus{outline:none}#pages-search:hover{background:var(--white-10)}.search,.search [data-test=ring-select],.search [data-test=ring-tooltip],.search [data-test=ring-select_focus],.search #pages-search{display:inline-block;padding:0;margin:0;font-size:0;line-height:0}.search-hotkey-popup{background-color:var(--background-color) !important;padding:4px}.popup-wrapper{min-width:calc(100% - 322px) !important;border:1px solid rgba(255,255,255,.2) !important;background-color:#27282c !important}.popup-wrapper [class^=filterWrapper]{border-bottom:1px solid rgba(255,255,255,.2)}.popup-wrapper input{color:rgba(255,255,255,.8) !important;font-weight:normal !important}.popup-wrapper span[data-test-custom=ring-select-popup-filter-icon]{color:#fff}.popup-wrapper button[data-test=ring-input-clear]{color:#fff !important}@media screen and (max-width: 759px){.popup-wrapper{min-width:100% !important}}.template-wrapper{display:grid;height:32px;grid-template-columns:auto auto}.template-wrapper strong{color:rgba(255,255,255,.8)}.template-wrapper span{color:rgba(255,255,255,.8);line-height:32px}.template-wrapper span.template-description{color:rgba(255,255,255,.6);justify-self:end}@media screen and (max-width: 759px){.template-wrapper{display:flex;flex-direction:column;height:auto}.template-wrapper span{line-height:unset}}.template-name{justify-self:start}[class^=fade]{display:none}[class*=hover]{background-color:rgba(255,255,255,.1) !important}
/* stylelint-disable color-no-hex */
:root {
@@ -113,6 +115,10 @@
--ring-alert-z-index: 6;
}
-html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
+/*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ *//*!
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */html,.app-root{height:100%}.search-root{margin:0;padding:0;background:var(--ring-content-background-color);font-family:var(--ring-font-family);font-size:var(--ring-font-size);line-height:var(--ring-line-height)}.search-content{z-index:8}
/*# sourceMappingURL=main.css.map*/
\ No newline at end of file
diff --git a/examples/dokka-multiplatform-example/html/styles/prism.css b/examples/dokka-multiplatform-example/html/styles/prism.css
index 4287f6d123..2d3a091e45 100644
--- a/examples/dokka-multiplatform-example/html/styles/prism.css
+++ b/examples/dokka-multiplatform-example/html/styles/prism.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
/*
* Custom Dokka styles
*/
diff --git a/examples/dokka-multiplatform-example/html/styles/style.css b/examples/dokka-multiplatform-example/html/styles/style.css
index 7f6e4b0dc8..67a899a594 100644
--- a/examples/dokka-multiplatform-example/html/styles/style.css
+++ b/examples/dokka-multiplatform-example/html/styles/style.css
@@ -1,3 +1,7 @@
+/*
+ * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
+ */
+
@import url('./font-jb-sans-auto.css');
@import url('https://fonts.googleapis.com/css?family=JetBrains+Mono');
@@ -1476,4 +1480,4 @@ has only one header, and the header text is the same as the tab name, so no poin
*/
.main-content[data-page-type="package"] .tabs-section-body h2 {
display: none;
-}
\ No newline at end of file
+}
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg
index bab9d747ff..19c1fa3f4d 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/anchor-copy-button.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/arrow_down.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/arrow_down.svg
index c0388dee2c..639aaf12cf 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/arrow_down.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/arrow_down.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/burger.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/burger.svg
index d6dcefccbd..fcca732b77 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/burger.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/burger.svg
@@ -1,5 +1,9 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-icon.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-icon.svg
index 61440f0a40..2cb02ec6e7 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-icon.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg
index 1865f739b0..c4b95383de 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/copy-successful-icon.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg
index 0137e22313..a87add7a33 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/footer-go-to-link.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg
index d987f3eadc..abc3d1cef7 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/go-to-top-icon.svg
@@ -1,4 +1,8 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/logo-icon.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/logo-icon.svg
index 1fea08773f..e42f9570cf 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/logo-icon.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/logo-icon.svg
@@ -1,3 +1,7 @@
+
+
@@ -7,4 +11,4 @@
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg
index a2069b8fb7..19d6148ca6 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/abstract-class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg
index 932f1d3de4..b90f508c47 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/annotation-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg
index 46a21f65a0..797a2423cd 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/class-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg
index 4a85459683..775a7cc90c 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/enum-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg
index 20449c9475..2771ee56cb 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-value.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg
index 3b0745007f..e2d2bbd015 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/field-variable.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg
index bf07a1488e..5e163260e1 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/interface-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/object.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/object.svg
index 9f427de413..31f0ee3e6b 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/object.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/object.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg
index 4795069b26..f4bb238b5b 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/nav-icons/typealias-kotlin.svg
@@ -1,3 +1,7 @@
+
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/theme-toggle.svg b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/theme-toggle.svg
index dad3ff2a2c..df86202bb9 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/theme-toggle.svg
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/images/theme-toggle.svg
@@ -1,3 +1,7 @@
+
+
-
\ No newline at end of file
+
diff --git a/examples/dokka-versioning-multimodule-example/htmlMultiModule/not-found-version.html b/examples/dokka-versioning-multimodule-example/htmlMultiModule/not-found-version.html
index 259a489312..36cf343d75 100644
--- a/examples/dokka-versioning-multimodule-example/htmlMultiModule/not-found-version.html
+++ b/examples/dokka-versioning-multimodule-example/htmlMultiModule/not-found-version.html
@@ -1,3 +1,7 @@
+
+
@@ -186,4 +190,4 @@