summaryrefslogtreecommitdiffhomepage
path: root/docs/ucode.js
diff options
context:
space:
mode:
Diffstat (limited to 'docs/ucode.js')
-rw-r--r--docs/ucode.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/docs/ucode.js b/docs/ucode.js
index 6728cdb..2377c7e 100644
--- a/docs/ucode.js
+++ b/docs/ucode.js
@@ -4,4 +4,36 @@ document.addEventListener('DOMContentLoaded', (ev) => {
if (accordionState == null || accordionState == '{}')
document.querySelectorAll('[data-isopen="false"]')
.forEach(item => item.setAttribute('data-isopen', 'true'));
+
+ const moduleName = location.pathname.match(/\/module-(.+)\.html$/)?.[1];
+
+ if (moduleName) {
+ const modulePrefix = `module:${moduleName}.`;
+
+ document.querySelectorAll(`a[href^="module-${CSS.escape(moduleName)}."]`).forEach(a => {
+ if (a.text?.indexOf(modulePrefix) == 0)
+ a.text = a.text.substring(modulePrefix.length);
+ });
+ }
+
+ document.querySelectorAll('.param-type, .type-signature').forEach(span => {
+ let replaced;
+ do {
+ replaced = false;
+ span.innerHTML = span.innerHTML.replace(/\b(Object|Array)\.<((?:(?!&[lg]t;).)+)>/,
+ (m, t, st) => {
+ replaced = true;
+
+ if (t == 'Object')
+ return `Object<${st.replace(/,\s*/, ': ')}>`;
+ else
+ return `${st}[]`;
+ });
+ } while (replaced);
+ });
+
+ document.querySelectorAll('.type-signature').forEach(span => {
+ span.innerHTML = span.innerHTML.replace(/\(nullable\) (.+)$/,
+ '$1<span class="signature-attributes">nullable</span>');
+ });
});