Release 4.0.0-rc4: Updated dependencies and refined mobile image fix

- Updated 8 npm packages to latest versions including TypeScript, Astro, and linting tools
- Refined mobile image loading solution by removing JavaScript runtime fix in favor of HTML-level path generation
- All images now use relative paths generated at build time for optimal compatibility

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Aigars Silkalns
2025-07-10 12:11:37 +03:00
parent a9e3a52379
commit 01aefe5ac0
82 changed files with 1195 additions and 1521 deletions

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -853,31 +853,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -1096,31 +1096,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<script>
// Color Mode Toggler
(() => {

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -813,7 +813,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -839,7 +839,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -865,7 +865,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -919,7 +919,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -929,7 +929,7 @@
<!-- User image -->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -1222,31 +1222,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -951,31 +951,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

38
dist/docs/faq.html vendored
View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -835,31 +835,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -908,31 +908,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -783,7 +783,7 @@
tabindex="0"
data-language="html"
><code><span class="line"><span style="color:#808080">&lt;</span><span style="color:#569CD6">script</span></span>
<span class="line"><span style="color:#9CDCFE"> src</span><span style="color:#D4D4D4">=</span><span style="color:#CE9178">&quot;https://cdn.jsdelivr.net/npm/admin-lte@4.0.0-beta3/dist/js/adminlte.min.js&quot;</span></span>
<span class="line"><span style="color:#9CDCFE"> src</span><span style="color:#D4D4D4">=</span><span style="color:#CE9178">&quot;https://cdn.jsdelivr.net/npm/admin-lte@4.0.0-rc3/dist/js/adminlte.min.js&quot;</span></span>
<span class="line"><span style="color:#9CDCFE"> crossorigin</span><span style="color:#D4D4D4">=</span><span style="color:#CE9178">&quot;anonymous&quot;</span></span>
<span class="line"><span style="color:#808080">&gt;&lt;/</span><span style="color:#569CD6">script</span><span style="color:#808080">&gt;</span></span></code></pre>
<pre
@@ -793,7 +793,7 @@
data-language="html"
><code><span class="line"><span style="color:#808080">&lt;</span><span style="color:#569CD6">link</span></span>
<span class="line"><span style="color:#9CDCFE"> rel</span><span style="color:#D4D4D4">=</span><span style="color:#CE9178">&quot;stylesheet&quot;</span></span>
<span class="line"><span style="color:#9CDCFE"> href</span><span style="color:#D4D4D4">=</span><span style="color:#CE9178">&quot;https://cdn.jsdelivr.net/npm/admin-lte@4.0.0-beta3/dist/css/adminlte.min.css&quot;</span></span>
<span class="line"><span style="color:#9CDCFE"> href</span><span style="color:#D4D4D4">=</span><span style="color:#CE9178">&quot;https://cdn.jsdelivr.net/npm/admin-lte@4.0.0-rc3/dist/css/adminlte.min.css&quot;</span></span>
<span class="line"><span style="color:#9CDCFE"> crossorigin</span><span style="color:#D4D4D4">=</span><span style="color:#CE9178">&quot;anonymous&quot;</span></span>
<span class="line"><span style="color:#808080">/&gt;</span></span></code></pre>
<h3 id="using-the-command-line">Using The Command Line:</h3>
@@ -809,21 +809,21 @@
style="background-color: #1e1e1e; color: #d4d4d4; overflow-x: auto"
tabindex="0"
data-language="bash"
><code><span class="line"><span style="color:#DCDCAA">npm</span><span style="color:#CE9178"> install</span><span style="color:#CE9178"> admin-lte@4.0.0-beta3</span><span style="color:#569CD6"> --save</span></span></code></pre>
><code><span class="line"><span style="color:#DCDCAA">npm</span><span style="color:#CE9178"> install</span><span style="color:#CE9178"> admin-lte@4.0.0-rc3</span><span style="color:#569CD6"> --save</span></span></code></pre>
<h4 id="via-yarn">Via Yarn</h4>
<pre
class="astro-code dark-plus"
style="background-color: #1e1e1e; color: #d4d4d4; overflow-x: auto"
tabindex="0"
data-language="bash"
><code><span class="line"><span style="color:#DCDCAA">yarn</span><span style="color:#CE9178"> add</span><span style="color:#CE9178"> admin-lte@4.0.0-beta3</span></span></code></pre>
><code><span class="line"><span style="color:#DCDCAA">yarn</span><span style="color:#CE9178"> add</span><span style="color:#CE9178"> admin-lte@4.0.0-rc3</span></span></code></pre>
<h4 id="via-composer">Via Composer</h4>
<pre
class="astro-code dark-plus"
style="background-color: #1e1e1e; color: #d4d4d4; overflow-x: auto"
tabindex="0"
data-language="bash"
><code><span class="line"><span style="color:#DCDCAA">composer</span><span style="color:#CE9178"> require</span><span style="color:#CE9178"> &quot;almasaeed2010/adminlte=4.0.0-beta3&quot;</span></span></code></pre>
><code><span class="line"><span style="color:#DCDCAA">composer</span><span style="color:#CE9178"> require</span><span style="color:#CE9178"> &quot;almasaeed2010/adminlte=4.0.0-rc3&quot;</span></span></code></pre>
<h4 id="via-git">Via Git</h4>
<pre
class="astro-code dark-plus"
@@ -892,31 +892,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -849,31 +849,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

38
dist/docs/layout.html vendored
View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -859,31 +859,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->

View File

@@ -96,7 +96,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user1-128x128.jpg"
src="../assets/img/user1-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -122,7 +122,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user8-128x128.jpg"
src="../assets/img/user8-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -148,7 +148,7 @@
<div class="d-flex">
<div class="flex-shrink-0">
<img
src="/assets/img/user3-128x128.jpg"
src="../assets/img/user3-128x128.jpg"
alt="User Avatar"
class="img-size-50 rounded-circle me-3"
/>
@@ -213,7 +213,7 @@
<li class="nav-item dropdown user-menu">
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="user-image rounded-circle shadow"
alt="User Image"
/>
@@ -223,7 +223,7 @@
<!--begin::User Image-->
<li class="user-header text-bg-primary">
<img
src="/assets/img/user2-160x160.jpg"
src="../assets/img/user2-160x160.jpg"
class="rounded-circle shadow"
alt="User Image"
/>
@@ -267,7 +267,7 @@
<a href="../index.html" class="brand-link">
<!--begin::Brand Image-->
<img
src="/assets/img/AdminLTELogo.png"
src="../assets/img/AdminLTELogo.png"
alt="AdminLTE Logo"
class="brand-image opacity-75 shadow"
/>
@@ -833,31 +833,7 @@
}
});
</script>
<!--end::OverlayScrollbars Configure--><!-- Image path runtime fix -->
<script>
document.addEventListener('DOMContentLoaded', () => {
// Find the link tag for the main AdminLTE CSS file.
const cssLink = document.querySelector('link[href*="css/adminlte.css"]');
if (!cssLink) {
return; // Exit if the link isn't found
}
// Extract the base path from the CSS href.
// e.g., from "../css/adminlte.css", we get "../"
// e.g., from "./css/adminlte.css", we get "./"
const cssHref = cssLink.getAttribute('href');
const deploymentPath = cssHref.slice(0, cssHref.indexOf('css/adminlte.css'));
// Find all images with absolute paths and fix them.
document.querySelectorAll('img[src^="/assets/"]').forEach((img) => {
const originalSrc = img.getAttribute('src');
if (originalSrc) {
const relativeSrc = originalSrc.slice(1); // Remove leading '/'
img.src = deploymentPath + relativeSrc;
}
});
});
</script>
<!--end::OverlayScrollbars Configure-->
<!--end::Script-->
</body>
<!--end::Body-->