From 16a195befaa2b8cff6c8ce2d3b888357d605522b Mon Sep 17 00:00:00 2001 From: Mikei386 <44135113+Mikei386@users.noreply.github.com> Date: Tue, 23 Jun 2026 08:57:55 +0200 Subject: [PATCH] Draw folder and file icons --- build-plugin.sh | 2 +- packages/u-navigator-2026.06.23.r010.tgz | Bin 16185 -> 0 bytes packages/u-navigator-2026.06.23.r011.tgz | Bin 0 -> 16565 bytes server/public/app.js | 2 +- server/public/styles.css | 87 +++++++++++++++++++---- u-navigator.plg | 4 +- 6 files changed, 78 insertions(+), 17 deletions(-) delete mode 100644 packages/u-navigator-2026.06.23.r010.tgz create mode 100644 packages/u-navigator-2026.06.23.r011.tgz diff --git a/build-plugin.sh b/build-plugin.sh index b0b6fc3..9ab2a46 100755 --- a/build-plugin.sh +++ b/build-plugin.sh @@ -2,7 +2,7 @@ set -eu PLUGIN="u-navigator" -VERSION="2026.06.23.r010" +VERSION="2026.06.23.r011" PKG_DIR="packages" WORK_DIR=".plugin-build" PKG_NAME="${PLUGIN}-${VERSION}.tgz" diff --git a/packages/u-navigator-2026.06.23.r010.tgz b/packages/u-navigator-2026.06.23.r010.tgz deleted file mode 100644 index cf37edc634c6b58a12f6f0801e4bf929deff721b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16185 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 literal 0 HcmV?d00001 diff --git a/server/public/app.js b/server/public/app.js index 514a13e..a26c4ac 100644 --- a/server/public/app.js +++ b/server/public/app.js @@ -308,7 +308,7 @@ function renderFileTable(entries) { function renderFileIcons(entries) { const items = entries.map((entry) => ` diff --git a/server/public/styles.css b/server/public/styles.css index eff0321..e938e23 100644 --- a/server/public/styles.css +++ b/server/public/styles.css @@ -338,24 +338,85 @@ } .u-nav .file-icon { - align-items: center; - background: var(--surface-2); - border: 1px solid var(--line); - border-radius: 8px; - color: var(--muted); - display: inline-flex; - font-size: 12px; - height: 48px; - justify-content: center; - width: 58px; + display: block; + height: 52px; + position: relative; + width: 64px; } .u-nav .file-icon.directory { - color: var(--accent); + background: linear-gradient(180deg, #ff9b4f 0%, var(--accent) 100%); + border: 1px solid color-mix(in srgb, var(--accent) 78%, #5b2b12); + border-radius: 7px 7px 6px 6px; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.34), 0 5px 12px rgba(24, 34, 45, 0.14); + height: 40px; + margin-top: 10px; } -.u-nav .file-icon.file { - color: var(--accent-2); +.u-nav .file-icon.directory::before { + background: linear-gradient(180deg, #ffb16e 0%, #f58a3a 100%); + border: 1px solid color-mix(in srgb, var(--accent) 72%, #5b2b12); + border-bottom: 0; + border-radius: 6px 6px 0 0; + content: ""; + height: 12px; + left: 5px; + position: absolute; + top: -9px; + width: 27px; +} + +.u-nav .file-icon.directory::after { + background: rgba(255, 255, 255, 0.18); + border-radius: 999px; + content: ""; + height: 3px; + left: 8px; + position: absolute; + right: 8px; + top: 8px; +} + +.u-nav .file-icon.file, +.u-nav .file-icon.symlink, +.u-nav .file-icon.other { + background: linear-gradient(180deg, #ffffff 0%, #eef3f7 100%); + border: 1px solid var(--line); + border-radius: 6px; + box-shadow: 0 5px 12px rgba(24, 34, 45, 0.12); + height: 50px; + width: 42px; +} + +.u-nav .file-icon.file::before, +.u-nav .file-icon.symlink::before, +.u-nav .file-icon.other::before { + background: linear-gradient(135deg, #dce5ee 0%, #ffffff 48%, #cfd8e1 49%, #cfd8e1 100%); + border-left: 1px solid var(--line); + border-bottom: 1px solid var(--line); + border-radius: 0 5px 0 4px; + content: ""; + height: 13px; + position: absolute; + right: -1px; + top: -1px; + width: 13px; +} + +.u-nav .file-icon.file::after, +.u-nav .file-icon.symlink::after, +.u-nav .file-icon.other::after { + background: + linear-gradient(var(--muted), var(--muted)) 0 0 / 22px 2px no-repeat, + linear-gradient(var(--muted), var(--muted)) 0 9px / 26px 2px no-repeat, + linear-gradient(var(--muted), var(--muted)) 0 18px / 18px 2px no-repeat; + content: ""; + height: 22px; + left: 8px; + opacity: 0.58; + position: absolute; + top: 18px; + width: 26px; } .u-nav .icon-name { diff --git a/u-navigator.plg b/u-navigator.plg index 392dc5d..891722b 100644 --- a/u-navigator.plg +++ b/u-navigator.plg @@ -1,7 +1,7 @@ - + ]> @@ -14,7 +14,7 @@ https://git.casaderoll.de/michael/Unraid-Navigator/raw/branch/main/packages/&package; -0189ab9d23d2027dfc4c8dc6ebb2ee68 +4b86244d0a4d43a5df4e86fc5569af81