v0.1.12 71a4995

custom.js RawHistoryFolder

1function initializeVersionCheck() {
2  // Dummy data for the remote version (as if fetched from a server)
3  const updateStrTemplate =
4    "New version %VERSION% available, consider pulling the latest image";
5
6  const checkVersion = (versionData, currentVersion) => {
7    const fetchedVersionNumber =
8      versionData?.amd64?.name.match(/\d+\.\d+\.\d+/)?.[0];
9
10    if (currentVersion !== fetchedVersionNumber) {
11      const updateStr = updateStrTemplate.replace(
12        "%VERSION%",
13        fetchedVersionNumber,
14      );
15      console.log(updateStr);
16      const updateElement = document.getElementById("update-available");
17      updateElement.title = updateStr;
18      updateElement.toggleAttribute("hidden", false);
19      updateElement.classList.remove("hidden"); // Remove the Tailwind `hidden` class
20      updateElement.classList.add("block"); // Add the Tailwind `block` class
21    } else {
22      console.log(
23        "No new version. Current version is up-to-date:",
24        currentVersion,
25      );
26    }
27  };
28
29  const fetchVersionInfo = (currentVersion) => {
30    fetch(`https://gordon-proxy.bamen.dev/version`)
31      .then((response) => response.json())
32      .then((versionData) => checkVersion(versionData, currentVersion))
33      .catch((error) => console.error("Error fetching version:", error));
34  };
35
36  const init = () => {
37    const currentVersionElement = document.getElementById("actual-version");
38    if (!currentVersionElement) {
39      console.log("Error: #actual-version element not found.");
40      return;
41    }
42    const currentVersion = currentVersionElement.textContent.trim();
43    if (!currentVersion) {
44      console.log("Dev mode detected, skipping version check.");
45      return;
46    }
47    fetchVersionInfo(currentVersion);
48  };
49
50  init();
51}
52
53document.addEventListener("DOMContentLoaded", initializeVersionCheck);

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 7

Tags 106

↑↓ moveenter openesc close