Skip to content

Commit

Permalink
Update dev/feature branch nightly docs to SkriptLang/Skript@1f64752
Browse files Browse the repository at this point in the history
  • Loading branch information
Nightly Docs Bot committed Jan 9, 2025
1 parent 46c4536 commit 3488576
Show file tree
Hide file tree
Showing 14 changed files with 70 additions and 49 deletions.
2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/classes.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/conditions.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/docs.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/docs.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"skriptVersion": "2.10.0-pre1-nightly-b0df396",
"skriptVersion": "2.10.0-pre1-nightly-1f64752",
"conditions": [
{
"id": "CondAlphanumeric",
Expand Down
2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/effects.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/events.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/expressions.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/functions.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/index.html

Large diffs are not rendered by default.

93 changes: 57 additions & 36 deletions docs/nightly/dev/feature/js/main.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const siteVersion = "2.2.0"; // site version is different from skript version
const siteVersion = "2.3.0"; // site version is different from skript version
const ghAPI = "https://api.github.com/repos/SkriptLang/Skript";

// ID Scroll
Expand Down Expand Up @@ -88,25 +88,38 @@ document.querySelectorAll(".new-element").forEach((e) => {
})

// <> Search Bar
const versionComparePattern = /.*?(\d\.\d(?:\.\d|))(\+|-|).*/gi;
const versionPattern = / ?v(?:ersion|):(\d\.\d(?:\.\d|-(?:beta|alpha|dev)\d*|))(\+|-|)/gi;
const versionComparePattern = /.*?(\d+).(\d+)(?:.(\d+))?.*/i;
const versionPattern = / ?v(?:ersion|):(\d+.\d+(?:.\d+)?)(?:-[^\s+-]+)?([+-])?/gi;
const typePattern = / ?t(?:ype|):(\w+)/gi;
const newPattern = / ?is:(new)/gi;
const resultsFoundText = "result(s) found";

function versionCompare(base, target) { // Return -1, 0, 1
base = base.replaceAll(versionComparePattern, "$1").replaceAll(/[^0-9]/gi, "");
target = target.replaceAll(versionComparePattern, "$1").replaceAll(/[^0-9]/gi, "");
function versionParse(version) {
const matches = versionComparePattern.exec(version);
if (matches == null)
return null;
return [
parseInt(matches[1]), // major
parseInt(matches[2]), // minor
matches[3] !== undefined ? parseInt(matches[3]) : 0 // patch
]
}

base = parseInt(base) < 100 ? parseInt(base) * 10 : parseInt(base); // convert ten's to hundred's to fix (2.5.1+ not triggering 2.6 by converting 26 -> 260)
target = parseInt(target) < 100 ? parseInt(target) * 10 : parseInt(target);
function versionCompare(baseArr, targetArr) { // Return -1, 0, 1
// compare in order of major.minor.patch
for (let i = 0; i <= 2; i++) {
let baseVer = baseArr[i];
let targetVer = targetArr[i];
// compare versions (target in relation to base)
if (targetVer > baseVer)
return 1;
if (targetVer < baseVer)
return -1;
// equal, try next parts
}

if (target > base)
return 1
if (target == base)
return 0
if (target < base)
return -1
// they must be equal
return 0;
}

var searchBar;
Expand Down Expand Up @@ -141,7 +154,7 @@ if (content) {
let options = "<select id='search-version' name='versions' id='versions' onchange='checkVersionFilter()'></select>"
content.insertAdjacentHTML('afterbegin', `<span>${options}</span>`);
options = document.getElementById("search-version");

getApiValue(null, "skript-versions", "tags?per_page=83&page=2", (data, isCached) => { // 83 and page 2 matters to filter dev branches (temporary solution)
if (isCached)
data = data.split(",");
Expand All @@ -153,7 +166,7 @@ if (content) {
} else {
tag = data[i]["name"];
}
tags.push(tag.replaceAll(/(.*)-(dev|beta|alpha).*/gi, "$1"));
tags.push(tag.replaceAll(/(.*?)-.*/gi, "$1"));
}

tags = [...new Set(tags)] // remove duplicates
Expand Down Expand Up @@ -195,7 +208,7 @@ function checkVersionFilter() {
}

function searchNow(value = "") {
if (value != "") // Update searchBar value
if (value !== "") // Update searchBar value
searchBar.value = value;

let allElements = document.querySelectorAll(".item-wrapper");
Expand All @@ -211,11 +224,14 @@ function searchNow(value = "") {
let verExec = versionPattern.exec(searchValue);
version = verExec[1];
if (verExec.length > 2) {
versionAndUp = verExec[2] == "+" == true;
versionAndDown = verExec[2] == "-" == true;
versionAndUp = verExec[2] === "+";
versionAndDown = verExec[2] === "-";
}
searchValue = searchValue.replaceAll(versionPattern, "") // Don't include filters in the search
}
let versionArr = null;
if (version !== "")
versionArr = versionParse(version);

// Type
let filterType;
Expand All @@ -227,7 +243,7 @@ function searchNow(value = "") {
// News
let filterNew;
if (searchValue.match(newPattern)) {
filterNew = newPattern.exec(searchValue)[1] == "new";
filterNew = newPattern.exec(searchValue)[1] === "new";
searchValue = searchValue.replaceAll(newPattern, "")
}

Expand All @@ -247,22 +263,27 @@ function searchNow(value = "") {

// Version check
let versionFound;
if (version != "") {
versionFound = versionCompare(version, document.querySelectorAll(`#${e.id} .item-details:nth-child(2) td:nth-child(2)`)[0].textContent) == 0;

if (versionAndUp || versionAndDown) {
let versions = document.querySelectorAll(`#${e.id} .item-details:nth-child(2) td:nth-child(2)`)[0].textContent.split(",");
for (const v in versions) { // split on ',' without space in case some version didn't have space and versionCompare will handle it
if (versionAndUp) {
if (versionCompare(version, versions[v]) == 1) {
versionFound = true;
break; // Performance
}
} else if (versionAndDown) {
if (versionCompare(version, versions[v]) == -1) {
versionFound = true;
break; // Performance
}
if (versionArr !== null) { // if we parsed a version
const versions = document.querySelectorAll(`#${e.id} .item-details:nth-child(2) td:nth-child(2)`)[0].innerHTML.split(/,|<br\/?>/i);
for (const v of versions) {
const targetArr = versionParse(v);
if (targetArr === null) // treat as version not matching
continue;
let result = versionCompare(versionArr, targetArr);
if (versionAndUp) {
if (result >= 0) {
versionFound = true;
break;
}
} else if (versionAndDown) {
if (result < 0) { // exclude current version
versionFound = true;
break;
}
} else {
if (result === 0) {
versionFound = true;
break;
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/sections.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/structures.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/text.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/nightly/dev/feature/tutorials.html
Original file line number Diff line number Diff line change
@@ -1 +1 @@
<!doctype html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=0.8, maximum-scale=1.0"> <meta name="description" content="Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them. - SkriptLang/Skript"> <link rel="icon" type="image/png" href="./assets/icon.png"> <meta property="og:type" content="website"> <meta property="og:title" content="Skript Documentation"> <meta property="og:site_name" content="Skript Documentation"> <meta property="og:description" content="Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them."> <meta property="og:image" content="https://docs.skriptlang.org/assets/icon.png"> <meta property="og:url" content="https://docs.skriptlang.org/"> <meta name="theme-color" content="#ff9800"> <title>Skript Documentation - 2.10.0-pre1-nightly-b0df396</title> <link href="css/styles.css" rel="stylesheet"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js" defer></script> <script src="./js/functions.js"></script> <script src="./js/main.js" defer></script> <link rel="preconnect" href="https://fonts.gstatic.com"> <link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,900;1,200;1,300;1,400;1,500;1,600;1,700;1,900&display=swap" rel="stylesheet"> <link rel="preconnect" href="https://fonts.gstatic.com"> <link href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" rel="stylesheet"> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css" integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" crossorigin="anonymous"> </head> <body> <div id="docs-body"> <!-- loaded inside body without defer to fix theme flicker --> <script src="./js/theme-switcher.js"></script> <ul id="global-navigation"> <li><a href="index.html">Home</a></li> <div class="menu-tab"> <li><a class="menu-tab-item" href="docs.html">Docs <i class="fas fa-caret-down"></i></a></li> <div class="menu-subtabs"> <a href="events.html">Events</a> <a href="conditions.html">Conditions</a> <a href="sections.html">Sections</a> <a href="effects.html">Effects</a> <a href="expressions.html">Expressions</a> <a href="classes.html">Types</a> <a href="structures.html">Structures</a> <a href="functions.html">Functions</a> </div> </div> <li><a href="docs.html?isNew" class="new-tab">New</a></li> <div class="menu-tab"> <li><a class="menu-tab-item" href="tutorials.html">Tutorials <i class="fas fa-caret-down"></i></a></li> <div class="menu-subtabs"> <a href="text.html">Text</a> </div> </div> <div class="menu-tab"> <li><a class="menu-tab-item" href="#">Dev Tools <i class="fas fa-caret-down"></i></a></li> <div class="menu-subtabs"> <a href="javadocs/" target="_blank">Javadocs</a> </div> </div> <li><a href="https://github.com/SkriptLang/Skript/" target="_blank" style="font-weight: bold;">GitHub</a></li> <li style="margin-left: auto;"><a style="font-weight: bold; color: #ff9800" href="https://github.com/SkriptLang/Skript/releases/tag/2.10.0-pre1-nightly-b0df396" target="_blank">v2.10.0-pre1-nightly-b0df396</a></li> </ul> <nav id="side-nav"> <div id="nav-contents"> </div> </nav> <h1 id="nav-title">Tutorials</h1> <div id="content-no-docs" class="no-left-panel" style="margin-top: 40px"> <p class="box-title-red">Note:</p> <div class="box-red" style="height: max-content"> <strong>Skript Tutorials are coming soon.</strong> <br><br> <ol class="custom-list"> <li>Loops</li> <li>Commands</li> <li>Functions</li> <li>Variables</li> <li>Visual effects</li> </ol> <br> </div> </div> </div> </body> </html>
<!doctype html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=0.8, maximum-scale=1.0"> <meta name="description" content="Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them. - SkriptLang/Skript"> <link rel="icon" type="image/png" href="./assets/icon.png"> <meta property="og:type" content="website"> <meta property="og:title" content="Skript Documentation"> <meta property="og:site_name" content="Skript Documentation"> <meta property="og:description" content="Skript is a Bukkit plugin which allows server admins to customize their server easily, but without the hassle of programming a plugin or asking/paying someone to program a plugin for them."> <meta property="og:image" content="https://docs.skriptlang.org/assets/icon.png"> <meta property="og:url" content="https://docs.skriptlang.org/"> <meta name="theme-color" content="#ff9800"> <title>Skript Documentation - 2.10.0-pre1-nightly-1f64752</title> <link href="css/styles.css" rel="stylesheet"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js" defer></script> <script src="./js/functions.js"></script> <script src="./js/main.js" defer></script> <link rel="preconnect" href="https://fonts.gstatic.com"> <link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,900;1,200;1,300;1,400;1,500;1,600;1,700;1,900&display=swap" rel="stylesheet"> <link rel="preconnect" href="https://fonts.gstatic.com"> <link href="https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap" rel="stylesheet"> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.15.4/css/all.css" integrity="sha384-DyZ88mC6Up2uqS4h/KRgHuoeGwBcD4Ng9SiP4dIRy0EXTlnuz47vAwmeGwVChigm" crossorigin="anonymous"> </head> <body> <div id="docs-body"> <!-- loaded inside body without defer to fix theme flicker --> <script src="./js/theme-switcher.js"></script> <ul id="global-navigation"> <li><a href="index.html">Home</a></li> <div class="menu-tab"> <li><a class="menu-tab-item" href="docs.html">Docs <i class="fas fa-caret-down"></i></a></li> <div class="menu-subtabs"> <a href="events.html">Events</a> <a href="conditions.html">Conditions</a> <a href="sections.html">Sections</a> <a href="effects.html">Effects</a> <a href="expressions.html">Expressions</a> <a href="classes.html">Types</a> <a href="structures.html">Structures</a> <a href="functions.html">Functions</a> </div> </div> <li><a href="docs.html?isNew" class="new-tab">New</a></li> <div class="menu-tab"> <li><a class="menu-tab-item" href="tutorials.html">Tutorials <i class="fas fa-caret-down"></i></a></li> <div class="menu-subtabs"> <a href="text.html">Text</a> </div> </div> <div class="menu-tab"> <li><a class="menu-tab-item" href="#">Dev Tools <i class="fas fa-caret-down"></i></a></li> <div class="menu-subtabs"> <a href="javadocs/" target="_blank">Javadocs</a> </div> </div> <li><a href="https://github.com/SkriptLang/Skript/" target="_blank" style="font-weight: bold;">GitHub</a></li> <li style="margin-left: auto;"><a style="font-weight: bold; color: #ff9800" href="https://github.com/SkriptLang/Skript/releases/tag/2.10.0-pre1-nightly-1f64752" target="_blank">v2.10.0-pre1-nightly-1f64752</a></li> </ul> <nav id="side-nav"> <div id="nav-contents"> </div> </nav> <h1 id="nav-title">Tutorials</h1> <div id="content-no-docs" class="no-left-panel" style="margin-top: 40px"> <p class="box-title-red">Note:</p> <div class="box-red" style="height: max-content"> <strong>Skript Tutorials are coming soon.</strong> <br><br> <ol class="custom-list"> <li>Loops</li> <li>Commands</li> <li>Functions</li> <li>Variables</li> <li>Visual effects</li> </ol> <br> </div> </div> </div> </body> </html>

0 comments on commit 3488576

Please sign in to comment.