repo: remove cross-project DockDeck Stitch input
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 4s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s
GeoIntel release gates / AI image, SBOM and container scan (push) Canceled after 0s
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 4s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s
GeoIntel release gates / AI image, SBOM and container scan (push) Canceled after 0s
This commit is contained in:
-438
@@ -1,438 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html class="dark" lang="nl"><head>
|
||||
<meta charset="utf-8"/>
|
||||
<meta content="width=device-width, initial-scale=1.0" name="viewport"/>
|
||||
<title>DockDeck - Instellingen Weergave</title>
|
||||
<script src="https://cdn.tailwindcss.com?plugins=forms,container-queries"></script>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap" rel="stylesheet"/>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap" rel="stylesheet"/>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Geist:wght@100..900&display=swap" rel="stylesheet"/>
|
||||
<style>
|
||||
@font-face {
|
||||
font-family: 'Geist';
|
||||
src: url('https://cdn.jsdelivr.net/npm/geist-font@1.1.0/fonts/geist-sans/Geist-Regular.woff2') format('woff2');
|
||||
font-weight: 400;
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Geist';
|
||||
src: url('https://cdn.jsdelivr.net/npm/geist-font@1.1.0/fonts/geist-sans/Geist-Medium.woff2') format('woff2');
|
||||
font-weight: 500;
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'Geist';
|
||||
src: url('https://cdn.jsdelivr.net/npm/geist-font@1.1.0/fonts/geist-sans/Geist-SemiBold.woff2') format('woff2');
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: 'Geist', sans-serif;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
}
|
||||
|
||||
.custom-scrollbar::-webkit-scrollbar {
|
||||
width: 4px;
|
||||
}
|
||||
.custom-scrollbar::-webkit-scrollbar-track {
|
||||
background: #0b1326;
|
||||
}
|
||||
.custom-scrollbar::-webkit-scrollbar-thumb {
|
||||
background: #2d3748;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
.glass-card {
|
||||
background: rgba(22, 31, 53, 0.6);
|
||||
backdrop-filter: blur(12px);
|
||||
border: 1px solid rgba(255, 255, 255, 0.05);
|
||||
}
|
||||
|
||||
.theme-preview {
|
||||
aspect-ratio: 16/10;
|
||||
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
||||
}
|
||||
|
||||
.theme-preview:hover {
|
||||
transform: translateY(-2px);
|
||||
border-color: #818cf8;
|
||||
}
|
||||
|
||||
.toggle-switch {
|
||||
width: 44px;
|
||||
height: 24px;
|
||||
background: #2d3449;
|
||||
border-radius: 99px;
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
transition: background 0.3s;
|
||||
}
|
||||
|
||||
.toggle-switch::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
left: 2px;
|
||||
top: 2px;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
background: #bdc2ff;
|
||||
border-radius: 50%;
|
||||
transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
|
||||
}
|
||||
|
||||
.toggle-active {
|
||||
background: #818cf8 !important;
|
||||
}
|
||||
|
||||
.toggle-active::after {
|
||||
transform: translateX(20px);
|
||||
background: #0b1326 !important;
|
||||
}
|
||||
</style>
|
||||
<script id="tailwind-config">
|
||||
tailwind.config = {
|
||||
darkMode: "class",
|
||||
theme: {
|
||||
extend: {
|
||||
"colors": {
|
||||
"background": "#0b1326",
|
||||
"on-tertiary-fixed": "#07006c",
|
||||
"inverse-on-surface": "#283044",
|
||||
"error-container": "#93000a",
|
||||
"on-surface-variant": "#c6c5d5",
|
||||
"secondary-container": "#00a572",
|
||||
"inverse-surface": "#dbe2fd",
|
||||
"on-secondary-container": "#00311f",
|
||||
"on-error-container": "#ffdad6",
|
||||
"secondary-fixed": "#6ffbbe",
|
||||
"primary-fixed": "#e0e0ff",
|
||||
"on-secondary": "#003824",
|
||||
"tertiary-container": "#8689ff",
|
||||
"surface-container-lowest": "#060d20",
|
||||
"surface-container-high": "#222a3e",
|
||||
"tertiary": "#c0c1ff",
|
||||
"primary-fixed-dim": "#bdc2ff",
|
||||
"on-tertiary": "#1000a9",
|
||||
"surface-container": "#171f33",
|
||||
"on-primary-fixed": "#000767",
|
||||
"on-surface": "#dbe2fd",
|
||||
"on-error": "#690005",
|
||||
"surface-container-highest": "#2d3449",
|
||||
"on-tertiary-container": "#0f00a2",
|
||||
"on-background": "#dbe2fd",
|
||||
"secondary-fixed-dim": "#4edea3",
|
||||
"on-primary-container": "#101b8a",
|
||||
"inverse-primary": "#4953bc",
|
||||
"surface": "#0b1326",
|
||||
"on-secondary-fixed": "#002113",
|
||||
"tertiary-fixed-dim": "#c0c1ff",
|
||||
"on-tertiary-fixed-variant": "#2f2ebe",
|
||||
"primary-container": "#818cf8",
|
||||
"outline": "#908f9e",
|
||||
"on-secondary-fixed-variant": "#005236",
|
||||
"surface-dim": "#0b1326",
|
||||
"surface-bright": "#31394e",
|
||||
"outline-variant": "#454653",
|
||||
"surface-container-low": "#131b2e",
|
||||
"surface-variant": "#2d3449",
|
||||
"secondary": "#4edea3",
|
||||
"primary": "#bdc2ff",
|
||||
"on-primary": "#131e8c",
|
||||
"error": "#ffb4ab",
|
||||
"tertiary-fixed": "#e1e0ff",
|
||||
"surface-tint": "#bdc2ff",
|
||||
"on-primary-fixed-variant": "#2f3aa3"
|
||||
},
|
||||
"borderRadius": {
|
||||
"DEFAULT": "0.25rem",
|
||||
"lg": "0.5rem",
|
||||
"xl": "0.75rem",
|
||||
"full": "9999px"
|
||||
},
|
||||
"spacing": {
|
||||
"stack-md": "1rem",
|
||||
"margin-mobile": "1rem",
|
||||
"gutter": "1.5rem",
|
||||
"stack-sm": "0.5rem",
|
||||
"container-max": "1280px",
|
||||
"stack-lg": "2rem"
|
||||
},
|
||||
"fontFamily": {
|
||||
"headline-lg": ["Geist"],
|
||||
"label-caps": ["Geist"],
|
||||
"body-md": ["Geist"],
|
||||
"headline-lg-mobile": ["Geist"],
|
||||
"status-label": ["Geist"],
|
||||
"headline-md": ["Geist"],
|
||||
"body-sm": ["Geist"]
|
||||
},
|
||||
"fontSize": {
|
||||
"headline-lg": ["32px", { "lineHeight": "40px", "letterSpacing": "-0.02em", "fontWeight": "600" }],
|
||||
"label-caps": ["12px", { "lineHeight": "16px", "letterSpacing": "0.05em", "fontWeight": "600" }],
|
||||
"body-md": ["16px", { "lineHeight": "24px", "fontWeight": "400" }],
|
||||
"headline-lg-mobile": ["24px", { "lineHeight": "32px", "letterSpacing": "-0.01em", "fontWeight": "600" }],
|
||||
"status-label": ["13px", { "lineHeight": "18px", "fontWeight": "500" }],
|
||||
"headline-md": ["20px", { "lineHeight": "28px", "fontWeight": "500" }],
|
||||
"body-sm": ["14px", { "lineHeight": "20px", "fontWeight": "400" }]
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body class="bg-background text-on-background min-h-screen flex flex-col overflow-hidden">
|
||||
<!-- TopAppBar -->
|
||||
<header class="flex justify-between items-center px-gutter w-full h-16 bg-background border-b border-outline-variant fixed top-0 z-50">
|
||||
<div class="flex items-center gap-4">
|
||||
<span class="font-headline-md text-headline-md font-bold text-primary">DockDeck</span>
|
||||
<div class="hidden md:flex h-8 w-px bg-outline-variant mx-2"></div>
|
||||
<div class="hidden md:flex items-center gap-6">
|
||||
<a class="font-body-sm text-body-sm text-on-surface-variant hover:text-primary transition-colors cursor-pointer" href="#">Dashboard</a>
|
||||
<a class="font-body-sm text-body-sm text-primary border-b-2 border-primary cursor-pointer h-full flex items-center" href="#">Instellingen</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-center gap-4">
|
||||
<div class="relative group">
|
||||
<span class="material-symbols-outlined text-on-surface-variant group-hover:text-primary cursor-pointer transition-colors" data-icon="settings">settings</span>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<div class="flex pt-16 h-screen overflow-hidden">
|
||||
<!-- SideNavBar -->
|
||||
<nav class="flex flex-col p-stack-md h-full bg-surface-container border-r border-outline-variant w-64 flex-shrink-0">
|
||||
<div class="mb-stack-lg px-2">
|
||||
<h1 class="font-headline-md text-headline-md text-primary">Instellingen</h1>
|
||||
<p class="font-body-sm text-body-sm text-on-surface-variant">Beheer jouw omgeving</p>
|
||||
</div>
|
||||
<div class="flex-grow space-y-1 custom-scrollbar overflow-y-auto pr-2">
|
||||
<div class="flex items-center gap-stack-md p-stack-sm mb-1 cursor-pointer text-on-surface-variant hover:bg-surface-variant rounded-lg transition-all duration-200">
|
||||
<span class="material-symbols-outlined" data-icon="settings">settings</span>
|
||||
<span class="font-body-md text-body-md">Algemeen</span>
|
||||
</div>
|
||||
<div class="flex items-center gap-stack-md p-stack-sm mb-1 cursor-pointer text-on-surface-variant hover:bg-surface-variant rounded-lg transition-all duration-200">
|
||||
<span class="material-symbols-outlined" data-icon="apps">apps</span>
|
||||
<span class="font-body-md text-body-md">Apps</span>
|
||||
</div>
|
||||
<div class="flex items-center gap-stack-md p-stack-sm mb-1 cursor-pointer text-on-surface-variant hover:bg-surface-variant rounded-lg transition-all duration-200">
|
||||
<span class="material-symbols-outlined" data-icon="star">star</span>
|
||||
<span class="font-body-md text-body-md">Favorieten</span>
|
||||
</div>
|
||||
<div class="flex items-center gap-stack-md p-stack-sm mb-1 cursor-pointer text-on-surface-variant hover:bg-surface-variant rounded-lg transition-all duration-200">
|
||||
<span class="material-symbols-outlined" data-icon="category">category</span>
|
||||
<span class="font-body-md text-body-md">Categorieën</span>
|
||||
</div>
|
||||
<!-- Active Item: Uiterlijk -->
|
||||
<div class="flex items-center gap-stack-md p-stack-sm mb-1 cursor-pointer bg-primary-container text-on-primary-container font-medium rounded-lg transition-all duration-200">
|
||||
<span class="material-symbols-outlined" data-icon="palette">palette</span>
|
||||
<span class="font-body-md text-body-md">Uiterlijk</span>
|
||||
</div>
|
||||
<div class="flex items-center gap-stack-md p-stack-sm mb-1 cursor-pointer text-on-surface-variant hover:bg-surface-variant rounded-lg transition-all duration-200">
|
||||
<span class="material-symbols-outlined" data-icon="extension">extension</span>
|
||||
<span class="font-body-md text-body-md">Integraties</span>
|
||||
</div>
|
||||
<div class="flex items-center gap-stack-md p-stack-sm mb-1 cursor-pointer text-on-surface-variant hover:bg-surface-variant rounded-lg transition-all duration-200">
|
||||
<span class="material-symbols-outlined" data-icon="backup">backup</span>
|
||||
<span class="font-body-md text-body-md">Back-up & Herstel</span>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<!-- Main Content Area -->
|
||||
<main class="flex-grow overflow-y-auto custom-scrollbar bg-background relative px-gutter py-stack-lg lg:px-12">
|
||||
<div class="max-w-4xl mx-auto space-y-stack-lg">
|
||||
<!-- Section: Thema -->
|
||||
<section class="space-y-stack-md">
|
||||
<div>
|
||||
<h2 class="font-headline-md text-headline-md text-on-background mb-1">Thema</h2>
|
||||
<p class="font-body-sm text-body-sm text-on-surface-variant">Kies de visuele stijl die het beste bij je workflow past.</p>
|
||||
</div>
|
||||
<div class="grid grid-cols-1 md:grid-cols-3 gap-6">
|
||||
<!-- Dark Theme -->
|
||||
<div class="space-y-3">
|
||||
<div class="theme-preview bg-[#0b1326] border-2 border-primary p-3 rounded-xl flex flex-col gap-2 cursor-pointer ring-offset-2 ring-offset-background group">
|
||||
<div class="h-2 w-1/2 bg-primary/20 rounded-full"></div>
|
||||
<div class="flex gap-2 h-full">
|
||||
<div class="w-8 h-full bg-surface-container rounded-lg"></div>
|
||||
<div class="flex-grow grid grid-cols-2 gap-2 h-full">
|
||||
<div class="glass-card rounded-lg border-primary/20"></div>
|
||||
<div class="glass-card rounded-lg"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-center justify-between px-1">
|
||||
<span class="font-body-md text-body-md text-on-background">Donker</span>
|
||||
<span class="material-symbols-outlined text-primary text-sm" data-icon="check_circle" style="font-variation-settings: 'FILL' 1;">check_circle</span>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Light Theme -->
|
||||
<div class="space-y-3 opacity-60 hover:opacity-100 transition-opacity">
|
||||
<div class="theme-preview bg-slate-100 border border-outline-variant p-3 rounded-xl flex flex-col gap-2 cursor-pointer group">
|
||||
<div class="h-2 w-1/2 bg-slate-300 rounded-full"></div>
|
||||
<div class="flex gap-2 h-full">
|
||||
<div class="w-8 h-full bg-slate-200 rounded-lg"></div>
|
||||
<div class="flex-grow grid grid-cols-2 gap-2 h-full">
|
||||
<div class="bg-white rounded-lg border border-slate-200"></div>
|
||||
<div class="bg-white rounded-lg border border-slate-200"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-center justify-between px-1">
|
||||
<span class="font-body-md text-body-md text-on-surface-variant">Licht</span>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Neon Theme -->
|
||||
<div class="space-y-3 opacity-60 hover:opacity-100 transition-opacity">
|
||||
<div class="theme-preview bg-black border border-[#00ff9d]/30 p-3 rounded-xl flex flex-col gap-2 cursor-pointer group relative overflow-hidden">
|
||||
<div class="absolute inset-0 bg-gradient-to-br from-[#00ff9d]/5 to-purple-500/5"></div>
|
||||
<div class="h-2 w-1/2 bg-[#00ff9d]/40 rounded-full relative z-10"></div>
|
||||
<div class="flex gap-2 h-full relative z-10">
|
||||
<div class="w-8 h-full bg-[#111] border border-[#00ff9d]/20 rounded-lg"></div>
|
||||
<div class="flex-grow grid grid-cols-2 gap-2 h-full">
|
||||
<div class="bg-black border border-purple-500/20 rounded-lg"></div>
|
||||
<div class="bg-black border border-purple-500/20 rounded-lg"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex items-center justify-between px-1">
|
||||
<span class="font-body-md text-body-md text-on-surface-variant">Neon</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="h-px bg-outline-variant w-full"></div>
|
||||
<!-- Section: Dashboardmodus & Grid -->
|
||||
<section class="grid grid-cols-1 md:grid-cols-2 gap-stack-lg">
|
||||
<div class="space-y-stack-md">
|
||||
<div class="flex items-center gap-3">
|
||||
<span class="material-symbols-outlined text-primary" data-icon="dashboard">dashboard</span>
|
||||
<h3 class="font-headline-md text-headline-md text-on-background">Dashboardmodus</h3>
|
||||
</div>
|
||||
<div class="space-y-3">
|
||||
<label class="flex items-center gap-4 p-4 rounded-xl border-2 border-primary-container bg-primary-container/5 cursor-pointer group">
|
||||
<input checked="" class="hidden" name="dashboard-mode" type="radio"/>
|
||||
<div class="w-5 h-5 rounded-full border-2 border-primary flex items-center justify-center">
|
||||
<div class="w-2.5 h-2.5 rounded-full bg-primary"></div>
|
||||
</div>
|
||||
<div class="flex-grow">
|
||||
<p class="font-body-md text-body-md font-medium text-on-background">Overzicht</p>
|
||||
<p class="font-body-sm text-body-sm text-on-surface-variant">Toon alle services in één doorlopend grid.</p>
|
||||
</div>
|
||||
</label>
|
||||
<label class="flex items-center gap-4 p-4 rounded-xl border border-outline-variant hover:bg-surface-variant/30 cursor-pointer group">
|
||||
<input class="hidden" name="dashboard-mode" type="radio"/>
|
||||
<div class="w-5 h-5 rounded-full border-2 border-outline-variant flex items-center justify-center"></div>
|
||||
<div class="flex-grow">
|
||||
<p class="font-body-md text-body-md font-medium text-on-background">Categorie</p>
|
||||
<p class="font-body-sm text-body-sm text-on-surface-variant">Groepeer services per type of project.</p>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="space-y-stack-md">
|
||||
<div class="flex items-center gap-3">
|
||||
<span class="material-symbols-outlined text-primary" data-icon="grid_view">grid_view</span>
|
||||
<h3 class="font-headline-md text-headline-md text-on-background">Grid-dichtheid</h3>
|
||||
</div>
|
||||
<div class="space-y-3">
|
||||
<label class="flex items-center gap-4 p-4 rounded-xl border border-outline-variant hover:bg-surface-variant/30 cursor-pointer group">
|
||||
<input class="hidden" name="grid-density" type="radio"/>
|
||||
<div class="w-5 h-5 rounded-full border-2 border-outline-variant flex items-center justify-center"></div>
|
||||
<div class="flex-grow">
|
||||
<p class="font-body-md text-body-md font-medium text-on-background">Compact</p>
|
||||
<p class="font-body-sm text-body-sm text-on-surface-variant">Maximaliseer zichtbare items per scherm.</p>
|
||||
</div>
|
||||
</label>
|
||||
<label class="flex items-center gap-4 p-4 rounded-xl border-2 border-primary-container bg-primary-container/5 cursor-pointer group">
|
||||
<input checked="" class="hidden" name="grid-density" type="radio"/>
|
||||
<div class="w-5 h-5 rounded-full border-2 border-primary flex items-center justify-center">
|
||||
<div class="w-2.5 h-2.5 rounded-full bg-primary"></div>
|
||||
</div>
|
||||
<div class="flex-grow">
|
||||
<p class="font-body-md text-body-md font-medium text-on-background">Comfortabel</p>
|
||||
<p class="font-body-sm text-body-sm text-on-surface-variant">Meer ademruimte en grotere interactiegebieden.</p>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="h-px bg-outline-variant w-full"></div>
|
||||
<!-- Section: Toegankelijkheid -->
|
||||
<section class="p-6 glass-card rounded-2xl flex items-center justify-between">
|
||||
<div class="flex gap-4">
|
||||
<div class="w-12 h-12 rounded-full bg-secondary-container/10 flex items-center justify-center text-secondary">
|
||||
<span class="material-symbols-outlined" data-icon="motion_photos_off">motion_photos_off</span>
|
||||
</div>
|
||||
<div>
|
||||
<h3 class="font-headline-md text-headline-md text-on-background mb-1">Reduced Motion</h3>
|
||||
<p class="font-body-sm text-body-sm text-on-surface-variant max-w-md">Beperk animaties en overgangen voor een rustigere interface ervaring.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="toggle-switch" id="motion-toggle" onclick="this.classList.toggle('toggle-active')"></div>
|
||||
</section>
|
||||
<!-- Action Footer -->
|
||||
<div class="flex items-center justify-end gap-4 py-8">
|
||||
<button class="px-6 py-2 rounded-lg border border-primary text-primary font-medium hover:bg-primary/5 transition-all">
|
||||
Annuleren
|
||||
</button>
|
||||
<button class="px-8 py-2 rounded-lg bg-primary-container text-on-primary-container font-semibold hover:opacity-90 transition-all shadow-lg shadow-primary-container/20">
|
||||
Wijzigingen Opslaan
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Atmosphere micro-animation -->
|
||||
<div class="fixed bottom-0 right-0 p-8 opacity-20 pointer-events-none">
|
||||
<div class="w-64 h-64 bg-primary/20 blur-[100px] rounded-full animate-pulse"></div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
<script>
|
||||
// Micro-interaction logic
|
||||
document.querySelectorAll('input[type="radio"]').forEach(radio => {
|
||||
radio.addEventListener('change', function() {
|
||||
const name = this.getAttribute('name');
|
||||
const labels = document.querySelectorAll(`input[name="${name}"]`);
|
||||
|
||||
labels.forEach(input => {
|
||||
const parent = input.closest('label');
|
||||
const indicator = parent.querySelector('.rounded-full.border-2');
|
||||
|
||||
if (input.checked) {
|
||||
parent.classList.add('border-primary-container', 'bg-primary-container/5');
|
||||
parent.classList.remove('border-outline-variant');
|
||||
indicator.classList.add('border-primary');
|
||||
indicator.classList.remove('border-outline-variant');
|
||||
indicator.innerHTML = '<div class="w-2.5 h-2.5 rounded-full bg-primary"></div>';
|
||||
} else {
|
||||
parent.classList.remove('border-primary-container', 'bg-primary-container/5');
|
||||
parent.classList.add('border-outline-variant');
|
||||
indicator.classList.remove('border-primary');
|
||||
indicator.classList.add('border-outline-variant');
|
||||
indicator.innerHTML = '';
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
// Theme selection visual feedback
|
||||
document.querySelectorAll('.theme-preview').forEach(preview => {
|
||||
preview.addEventListener('click', function() {
|
||||
document.querySelectorAll('.theme-preview').forEach(p => {
|
||||
p.classList.remove('border-primary');
|
||||
p.classList.add('border-outline-variant');
|
||||
p.parentElement.classList.add('opacity-60');
|
||||
const status = p.parentElement.querySelector('.material-symbols-outlined');
|
||||
if(status) status.remove();
|
||||
});
|
||||
|
||||
this.classList.add('border-primary');
|
||||
this.classList.remove('border-outline-variant');
|
||||
this.parentElement.classList.remove('opacity-60');
|
||||
|
||||
const footer = this.parentElement.querySelector('div');
|
||||
const check = document.createElement('span');
|
||||
check.className = 'material-symbols-outlined text-primary text-sm';
|
||||
check.style.fontVariationSettings = "'FILL' 1";
|
||||
check.innerText = 'check_circle';
|
||||
footer.appendChild(check);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body></html>
|
||||
Reference in New Issue
Block a user