rizzo-css 0.0.11 → 0.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +12 -0
- package/LICENSE +21 -0
- package/README.md +17 -3
- package/bin/rizzo-css.js +98 -42
- package/dist/rizzo.min.css +3 -2
- package/package.json +5 -3
- package/scaffold/astro-app/README.md +13 -2
- package/scaffold/astro-app/src/components/Accordion.astro +178 -0
- package/scaffold/astro-app/src/components/Alert.astro +131 -0
- package/scaffold/astro-app/src/components/Avatar.astro +59 -0
- package/scaffold/astro-app/src/components/Badge.astro +24 -0
- package/scaffold/astro-app/src/components/Breadcrumb.astro +61 -0
- package/scaffold/astro-app/src/components/Button.astro +3 -0
- package/scaffold/astro-app/src/components/Card.astro +18 -0
- package/scaffold/astro-app/src/components/Checkbox.astro +38 -0
- package/scaffold/astro-app/src/components/CodeBlock.astro +393 -0
- package/scaffold/astro-app/src/components/CopyToClipboard.astro +219 -0
- package/scaffold/astro-app/src/components/Divider.astro +37 -0
- package/scaffold/astro-app/src/components/Dropdown.astro +807 -0
- package/scaffold/astro-app/src/components/FormGroup.astro +59 -0
- package/scaffold/astro-app/src/components/FrameworkSwitcher.astro +72 -0
- package/scaffold/astro-app/src/components/Input.astro +59 -0
- package/scaffold/astro-app/src/components/Modal.astro +212 -0
- package/scaffold/astro-app/src/components/Navbar.astro +701 -0
- package/scaffold/astro-app/src/components/Pagination.astro +240 -0
- package/scaffold/astro-app/src/components/ProgressBar.astro +65 -0
- package/scaffold/astro-app/src/components/Radio.astro +38 -0
- package/scaffold/astro-app/src/components/Search.astro +1259 -0
- package/scaffold/astro-app/src/components/Select.astro +49 -0
- package/scaffold/astro-app/src/components/Settings.astro +382 -0
- package/scaffold/astro-app/src/components/Spinner.astro +30 -0
- package/scaffold/astro-app/src/components/Table.astro +181 -0
- package/scaffold/astro-app/src/components/Tabs.astro +223 -0
- package/scaffold/astro-app/src/components/Textarea.astro +58 -0
- package/scaffold/astro-app/src/components/ThemeSwitcher.astro +504 -0
- package/scaffold/astro-app/src/components/Toast.astro +30 -0
- package/scaffold/astro-app/src/components/Tooltip.astro +32 -0
- package/scaffold/astro-app/src/components/icons/Brush.astro +10 -0
- package/scaffold/astro-app/src/components/icons/Cake.astro +11 -0
- package/scaffold/astro-app/src/components/icons/Check.astro +29 -0
- package/scaffold/astro-app/src/components/icons/Cherry.astro +11 -0
- package/scaffold/astro-app/src/components/icons/ChevronDown.astro +29 -0
- package/scaffold/astro-app/src/components/icons/Circle.astro +29 -0
- package/scaffold/astro-app/src/components/icons/Close.astro +30 -0
- package/scaffold/astro-app/src/components/icons/Cmd.astro +26 -0
- package/scaffold/astro-app/src/components/icons/Copy.astro +30 -0
- package/scaffold/astro-app/src/components/icons/Eye.astro +30 -0
- package/scaffold/astro-app/src/components/icons/Filter.astro +29 -0
- package/scaffold/astro-app/src/components/icons/Flame.astro +28 -0
- package/scaffold/astro-app/src/components/icons/Flower.astro +11 -0
- package/scaffold/astro-app/src/components/icons/Gear.astro +30 -0
- package/scaffold/astro-app/src/components/icons/Heart.astro +28 -0
- package/scaffold/astro-app/src/components/icons/IceCream.astro +31 -0
- package/scaffold/astro-app/src/components/icons/Leaf.astro +29 -0
- package/scaffold/astro-app/src/components/icons/Lemon.astro +11 -0
- package/scaffold/astro-app/src/components/icons/Moon.astro +29 -0
- package/scaffold/astro-app/src/components/icons/Owl.astro +34 -0
- package/scaffold/astro-app/src/components/icons/Palette.astro +33 -0
- package/scaffold/astro-app/src/components/icons/Rainbow.astro +31 -0
- package/scaffold/astro-app/src/components/icons/Search.astro +30 -0
- package/scaffold/astro-app/src/components/icons/Shield.astro +28 -0
- package/scaffold/astro-app/src/components/icons/Snowflake.astro +34 -0
- package/scaffold/astro-app/src/components/icons/Sort.astro +30 -0
- package/scaffold/astro-app/src/components/icons/Sun.astro +29 -0
- package/scaffold/astro-app/src/components/icons/Sunset.astro +10 -0
- package/scaffold/astro-app/src/components/icons/Zap.astro +9 -0
- package/scaffold/astro-app/src/components/icons/devicons/Astro.astro +53 -0
- package/scaffold/astro-app/src/components/icons/devicons/Bash.astro +34 -0
- package/scaffold/astro-app/src/components/icons/devicons/Css3.astro +29 -0
- package/scaffold/astro-app/src/components/icons/devicons/Git.astro +24 -0
- package/scaffold/astro-app/src/components/icons/devicons/Html5.astro +27 -0
- package/scaffold/astro-app/src/components/icons/devicons/Javascript.astro +25 -0
- package/scaffold/astro-app/src/components/icons/devicons/Nodejs.astro +47 -0
- package/scaffold/astro-app/src/components/icons/devicons/Plaintext.astro +33 -0
- package/scaffold/astro-app/src/components/icons/devicons/React.astro +27 -0
- package/scaffold/astro-app/src/components/icons/devicons/Svelte.astro +25 -0
- package/scaffold/astro-app/src/components/icons/devicons/Vue.astro +26 -0
- package/scaffold/astro-app/src/config/frameworks.ts +26 -0
- package/scaffold/astro-app/src/config/themes.ts +54 -0
- package/scaffold/astro-app/src/layouts/DocsLayout.astro +204 -0
- package/scaffold/astro-app/src/layouts/Layout.astro +11 -2
- package/scaffold/astro-app/src/pages/components/accordion.astro +172 -0
- package/scaffold/astro-app/src/pages/components/alert.astro +250 -0
- package/scaffold/astro-app/src/pages/components/avatar.astro +102 -0
- package/scaffold/astro-app/src/pages/components/badge.astro +119 -0
- package/scaffold/astro-app/src/pages/components/breadcrumb.astro +124 -0
- package/scaffold/astro-app/src/pages/components/button.astro +74 -0
- package/scaffold/astro-app/src/pages/components/cards.astro +247 -0
- package/scaffold/astro-app/src/pages/components/copy-to-clipboard.astro +49 -0
- package/scaffold/astro-app/src/pages/components/divider.astro +74 -0
- package/scaffold/astro-app/src/pages/components/dropdown.astro +394 -0
- package/scaffold/astro-app/src/pages/components/forms.astro +367 -0
- package/scaffold/astro-app/src/pages/components/icons.astro +246 -0
- package/scaffold/astro-app/src/pages/components/modal.astro +152 -0
- package/scaffold/astro-app/src/pages/components/navbar.astro +80 -0
- package/scaffold/astro-app/src/pages/components/pagination.astro +126 -0
- package/scaffold/astro-app/src/pages/components/progress-bar.astro +94 -0
- package/scaffold/astro-app/src/pages/components/search.astro +155 -0
- package/scaffold/astro-app/src/pages/components/settings.astro +78 -0
- package/scaffold/astro-app/src/pages/components/spinner.astro +81 -0
- package/scaffold/astro-app/src/pages/components/table.astro +144 -0
- package/scaffold/astro-app/src/pages/components/tabs.astro +220 -0
- package/scaffold/astro-app/src/pages/components/theme-switcher.astro +67 -0
- package/scaffold/astro-app/src/pages/components/toast.astro +157 -0
- package/scaffold/astro-app/src/pages/components/tooltip.astro +209 -0
- package/scaffold/astro-app/src/pages/components.astro +290 -0
- package/scaffold/astro-app/src/pages/docs/accessibility.astro +9 -0
- package/scaffold/astro-app/src/pages/docs/colors.astro +9 -0
- package/scaffold/astro-app/src/pages/docs/design-system.astro +9 -0
- package/scaffold/astro-app/src/pages/docs/getting-started.astro +9 -0
- package/scaffold/astro-app/src/pages/docs/index.astro +15 -0
- package/scaffold/astro-app/src/pages/docs/themes/[theme].astro +14 -0
- package/scaffold/astro-app/src/pages/docs/theming.astro +10 -0
- package/scaffold/astro-app/src/pages/index.astro +5 -11
- package/scaffold/svelte/Table.svelte +6 -5
- package/scaffold/svelte/Tabs.svelte +3 -1
- package/scaffold/svelte-app/README.md +9 -2
- package/scaffold/svelte-app/src/app.html +1 -1
- package/scaffold/svelte-app/src/lib/rizzo/Accordion.svelte +128 -0
- package/scaffold/svelte-app/src/lib/rizzo/Alert.svelte +85 -0
- package/scaffold/svelte-app/src/lib/rizzo/Avatar.svelte +39 -0
- package/scaffold/svelte-app/src/lib/rizzo/Badge.svelte +31 -0
- package/scaffold/svelte-app/src/lib/rizzo/Breadcrumb.svelte +49 -0
- package/scaffold/svelte-app/src/lib/rizzo/Button.svelte +27 -0
- package/scaffold/svelte-app/src/lib/rizzo/Card.svelte +17 -0
- package/scaffold/svelte-app/src/lib/rizzo/Checkbox.svelte +37 -0
- package/scaffold/svelte-app/src/lib/rizzo/CopyToClipboard.svelte +79 -0
- package/scaffold/svelte-app/src/lib/rizzo/Divider.svelte +28 -0
- package/scaffold/svelte-app/src/lib/rizzo/Dropdown.svelte +254 -0
- package/scaffold/svelte-app/src/lib/rizzo/FormGroup.svelte +51 -0
- package/scaffold/svelte-app/src/lib/rizzo/Input.svelte +59 -0
- package/scaffold/svelte-app/src/lib/rizzo/Modal.svelte +157 -0
- package/scaffold/svelte-app/src/lib/rizzo/Pagination.svelte +93 -0
- package/scaffold/svelte-app/src/lib/rizzo/ProgressBar.svelte +58 -0
- package/scaffold/svelte-app/src/lib/rizzo/Radio.svelte +38 -0
- package/scaffold/svelte-app/src/lib/rizzo/Select.svelte +51 -0
- package/scaffold/svelte-app/src/lib/rizzo/Spinner.svelte +14 -0
- package/scaffold/svelte-app/src/lib/rizzo/Table.svelte +158 -0
- package/scaffold/svelte-app/src/lib/rizzo/Tabs.svelte +117 -0
- package/scaffold/svelte-app/src/lib/rizzo/Textarea.svelte +59 -0
- package/scaffold/svelte-app/src/lib/rizzo/ThemeSwitcher.svelte +315 -0
- package/scaffold/svelte-app/src/lib/rizzo/Toast.svelte +33 -0
- package/scaffold/svelte-app/src/lib/rizzo/Tooltip.svelte +19 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Check.svelte +29 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/ChevronDown.svelte +29 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Circle.svelte +29 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Close.svelte +30 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Cmd.svelte +27 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Copy.svelte +30 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Eye.svelte +30 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Filter.svelte +29 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Gear.svelte +30 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/IceCream.svelte +31 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Moon.svelte +29 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Owl.svelte +34 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Palette.svelte +33 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Rainbow.svelte +31 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Search.svelte +30 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Snowflake.svelte +34 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/Sort.svelte +30 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Astro.svelte +45 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Bash.svelte +28 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Css3.svelte +23 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Git.svelte +18 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Html5.svelte +21 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Javascript.svelte +19 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Nodejs.svelte +44 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Plaintext.svelte +24 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/React.svelte +21 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/SvelteIcon.svelte +19 -0
- package/scaffold/svelte-app/src/lib/rizzo/icons/devicons/Vue.svelte +20 -0
- package/scaffold/svelte-app/src/lib/rizzo/index.ts +33 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/CodeBlock.svelte +239 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/SvelteDocPage.svelte +99 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/AccordionDoc.svelte +53 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/AlertDoc.svelte +114 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/AvatarDoc.svelte +92 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/BadgeDoc.svelte +60 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/BreadcrumbDoc.svelte +55 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/ButtonDoc.svelte +55 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/CardsDoc.svelte +173 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/ComingSoon.svelte +12 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/ComponentsOverview.svelte +92 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/CopyToClipboardDoc.svelte +26 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/DividerDoc.svelte +105 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/DropdownDoc.svelte +161 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/FormsDoc.svelte +375 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/IconsDoc.svelte +246 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/Index.svelte +8 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/ModalDoc.svelte +50 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/NavbarDoc.svelte +79 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/PaginationDoc.svelte +44 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/ProgressBarDoc.svelte +95 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/SearchDoc.svelte +147 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/SettingsDoc.svelte +158 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/SpinnerDoc.svelte +41 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/TableDoc.svelte +116 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/TabsDoc.svelte +152 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/ThemeSwitcherDoc.svelte +181 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/Theming.svelte +6 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/ToastDoc.svelte +136 -0
- package/scaffold/svelte-app/src/lib/rizzo-docs/pages/TooltipDoc.svelte +57 -0
- package/scaffold/svelte-app/src/routes/+page.svelte +2 -2
- package/scaffold/svelte-app/src/routes/components/+page.svelte +4 -0
- package/scaffold/svelte-app/src/routes/components/[slug]/+page.svelte +7 -0
- package/scaffold/vanilla/README.md +20 -8
- package/scaffold/vanilla/components/accordion.html +187 -0
- package/scaffold/vanilla/components/alert.html +187 -0
- package/scaffold/vanilla/components/avatar.html +187 -0
- package/scaffold/vanilla/components/badge.html +187 -0
- package/scaffold/vanilla/components/breadcrumb.html +187 -0
- package/scaffold/vanilla/components/button.html +187 -0
- package/scaffold/vanilla/components/cards.html +187 -0
- package/scaffold/vanilla/components/copy-to-clipboard.html +187 -0
- package/scaffold/vanilla/components/divider.html +187 -0
- package/scaffold/vanilla/components/dropdown.html +187 -0
- package/scaffold/vanilla/components/forms.html +187 -0
- package/scaffold/vanilla/components/icons.html +187 -0
- package/scaffold/vanilla/components/index.html +212 -0
- package/scaffold/vanilla/components/modal.html +187 -0
- package/scaffold/vanilla/components/navbar.html +187 -0
- package/scaffold/vanilla/components/pagination.html +187 -0
- package/scaffold/vanilla/components/progress-bar.html +187 -0
- package/scaffold/vanilla/components/search.html +187 -0
- package/scaffold/vanilla/components/settings.html +187 -0
- package/scaffold/vanilla/components/spinner.html +187 -0
- package/scaffold/vanilla/components/table.html +187 -0
- package/scaffold/vanilla/components/tabs.html +187 -0
- package/scaffold/vanilla/components/theme-switcher.html +187 -0
- package/scaffold/vanilla/components/toast.html +187 -0
- package/scaffold/vanilla/components/tooltip.html +187 -0
- package/scaffold/vanilla/index.html +17 -283
- package/scaffold/vanilla/js/main.js +748 -0
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en" data-theme="{{DATA_THEME}}">{{THEME_LIST_COMMENT}}
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>{{TITLE}}</title>
|
|
7
|
+
<!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
|
|
8
|
+
<script>
|
|
9
|
+
(function() {
|
|
10
|
+
try {
|
|
11
|
+
var savedTheme = localStorage.getItem('theme');
|
|
12
|
+
var defaultDark = '{{DEFAULT_DARK}}';
|
|
13
|
+
var defaultLight = '{{DEFAULT_LIGHT}}';
|
|
14
|
+
var resolvedTheme;
|
|
15
|
+
if (!savedTheme) {
|
|
16
|
+
var initialTheme = document.documentElement.getAttribute('data-theme');
|
|
17
|
+
resolvedTheme = (initialTheme && initialTheme !== 'system') ? initialTheme : (window.matchMedia('(prefers-color-scheme: dark)').matches ? defaultDark : defaultLight);
|
|
18
|
+
} else if (savedTheme === 'system') {
|
|
19
|
+
resolvedTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? defaultDark : defaultLight;
|
|
20
|
+
} else {
|
|
21
|
+
resolvedTheme = savedTheme;
|
|
22
|
+
}
|
|
23
|
+
document.documentElement.setAttribute('data-theme', resolvedTheme);
|
|
24
|
+
var savedFontScale = localStorage.getItem('fontSizeScale');
|
|
25
|
+
if (savedFontScale) {
|
|
26
|
+
document.documentElement.style.setProperty('--font-size-scale', savedFontScale);
|
|
27
|
+
}
|
|
28
|
+
if (localStorage.getItem('reducedMotion') === 'true') {
|
|
29
|
+
document.documentElement.classList.add('reduced-motion');
|
|
30
|
+
}
|
|
31
|
+
if (localStorage.getItem('highContrast') === 'true') {
|
|
32
|
+
document.documentElement.classList.add('high-contrast');
|
|
33
|
+
}
|
|
34
|
+
var savedScrollbarStyle = localStorage.getItem('scrollbarStyle') || 'thin';
|
|
35
|
+
if (savedScrollbarStyle === 'thick') {
|
|
36
|
+
document.documentElement.classList.add('scrollbar-thick');
|
|
37
|
+
} else if (savedScrollbarStyle === 'hidden') {
|
|
38
|
+
document.documentElement.classList.add('scrollbar-hidden', 'hide-scrollbars');
|
|
39
|
+
}
|
|
40
|
+
if (!savedScrollbarStyle && localStorage.getItem('hideScrollbars') === 'true') {
|
|
41
|
+
document.documentElement.classList.add('scrollbar-hidden', 'hide-scrollbars');
|
|
42
|
+
localStorage.setItem('scrollbarStyle', 'hidden');
|
|
43
|
+
}
|
|
44
|
+
} catch (e) {}
|
|
45
|
+
})();
|
|
46
|
+
</script>
|
|
47
|
+
<link rel="stylesheet" href="../{{LINK_HREF}}" />
|
|
48
|
+
</head>
|
|
49
|
+
<body>
|
|
50
|
+
<a href="#main-content" class="skip-link">Skip to main content</a>
|
|
51
|
+
<header class="container flex flex-wrap items-center justify-between gap-4" style="padding-top: var(--spacing-4); padding-bottom: var(--spacing-4); border-bottom: 1px solid var(--border);">
|
|
52
|
+
<a href="#" class="font-semibold" style="font-size: var(--font-size-lg); color: var(--text); text-decoration: none;">{{TITLE}}</a>
|
|
53
|
+
<div class="flex items-center gap-3 flex-wrap">
|
|
54
|
+
<label for="theme-select" class="sr-only">Theme</label>
|
|
55
|
+
<select id="theme-select" class="form-control" style="width: auto; min-width: 12rem;" aria-label="Theme">
|
|
56
|
+
<option value="system">System</option>
|
|
57
|
+
<optgroup label="Dark themes">
|
|
58
|
+
<option value="github-dark-classic">GitHub Dark Classic</option>
|
|
59
|
+
<option value="shades-of-purple">Shades of Purple</option>
|
|
60
|
+
<option value="sandstorm-classic">Sandstorm Classic</option>
|
|
61
|
+
<option value="rocky-blood-orange">Rocky Blood Orange</option>
|
|
62
|
+
<option value="minimal-dark-neon-yellow">Minimal Dark Neon Yellow</option>
|
|
63
|
+
<option value="hack-the-box">Hack The Box</option>
|
|
64
|
+
<option value="pink-cat-boo">Pink Cat Boo</option>
|
|
65
|
+
</optgroup>
|
|
66
|
+
<optgroup label="Light themes">
|
|
67
|
+
<option value="github-light">GitHub Light</option>
|
|
68
|
+
<option value="red-velvet-cupcake">Red Velvet Cupcake</option>
|
|
69
|
+
<option value="orangy-one-light">Orangy One Light</option>
|
|
70
|
+
<option value="sunflower">Sunflower</option>
|
|
71
|
+
<option value="green-breeze-light">Green Breeze Light</option>
|
|
72
|
+
<option value="cute-pink">Cute Pink</option>
|
|
73
|
+
<option value="semi-light-purple">Semi Light Purple</option>
|
|
74
|
+
</optgroup>
|
|
75
|
+
</select>
|
|
76
|
+
<button type="button" class="btn btn-outline" aria-label="Open settings" onclick="window.openSettings && window.openSettings()">Settings</button>
|
|
77
|
+
</div>
|
|
78
|
+
</header>
|
|
79
|
+
|
|
80
|
+
<!-- Settings panel (same structure as main site; CSS from Rizzo) -->
|
|
81
|
+
<div class="settings" data-settings aria-hidden="true">
|
|
82
|
+
<div class="settings__overlay" data-settings-overlay aria-hidden="true"></div>
|
|
83
|
+
<div class="settings__panel" role="dialog" aria-modal="true" aria-labelledby="settings-title" aria-hidden="true">
|
|
84
|
+
<div class="settings__header">
|
|
85
|
+
<h2 id="settings-title" class="settings__title">Settings</h2>
|
|
86
|
+
<button type="button" class="settings__close" aria-label="Close settings" data-settings-close>
|
|
87
|
+
<svg width="20" height="20" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2"><line x1="4" y1="4" x2="12" y2="12"></line><line x1="12" y1="4" x2="4" y2="12"></line></svg>
|
|
88
|
+
</button>
|
|
89
|
+
</div>
|
|
90
|
+
<div class="settings__content">
|
|
91
|
+
<section class="settings__section">
|
|
92
|
+
<h3 class="settings__section-title">Theme</h3>
|
|
93
|
+
<div class="settings__control">
|
|
94
|
+
<label for="settings-theme" class="settings__label">Theme</label>
|
|
95
|
+
<select id="settings-theme" class="form-control" aria-label="Theme" data-settings-theme style="width: 100%;">
|
|
96
|
+
<option value="system">System</option>
|
|
97
|
+
<optgroup label="Dark themes">
|
|
98
|
+
<option value="github-dark-classic">GitHub Dark Classic</option>
|
|
99
|
+
<option value="shades-of-purple">Shades of Purple</option>
|
|
100
|
+
<option value="sandstorm-classic">Sandstorm Classic</option>
|
|
101
|
+
<option value="rocky-blood-orange">Rocky Blood Orange</option>
|
|
102
|
+
<option value="minimal-dark-neon-yellow">Minimal Dark Neon Yellow</option>
|
|
103
|
+
<option value="hack-the-box">Hack The Box</option>
|
|
104
|
+
<option value="pink-cat-boo">Pink Cat Boo</option>
|
|
105
|
+
</optgroup>
|
|
106
|
+
<optgroup label="Light themes">
|
|
107
|
+
<option value="github-light">GitHub Light</option>
|
|
108
|
+
<option value="red-velvet-cupcake">Red Velvet Cupcake</option>
|
|
109
|
+
<option value="orangy-one-light">Orangy One Light</option>
|
|
110
|
+
<option value="sunflower">Sunflower</option>
|
|
111
|
+
<option value="green-breeze-light">Green Breeze Light</option>
|
|
112
|
+
<option value="cute-pink">Cute Pink</option>
|
|
113
|
+
<option value="semi-light-purple">Semi Light Purple</option>
|
|
114
|
+
</optgroup>
|
|
115
|
+
</select>
|
|
116
|
+
</div>
|
|
117
|
+
</section>
|
|
118
|
+
<section class="settings__section">
|
|
119
|
+
<h3 class="settings__section-title">Font Size</h3>
|
|
120
|
+
<div class="settings__control">
|
|
121
|
+
<label for="font-size-slider" class="settings__label">
|
|
122
|
+
<span class="settings__label-text">Adjust text size</span>
|
|
123
|
+
<span class="settings__label-value" data-font-size-value>100%</span>
|
|
124
|
+
</label>
|
|
125
|
+
<input type="range" id="font-size-slider" class="settings__slider" min="0.75" max="1.5" step="0.05" value="1" aria-label="Font size" data-font-size-slider style="--slider-progress: 50%;" />
|
|
126
|
+
<div class="settings__slider-labels"><span>Small</span><span>Default</span><span>Large</span></div>
|
|
127
|
+
</div>
|
|
128
|
+
</section>
|
|
129
|
+
<section class="settings__section">
|
|
130
|
+
<h3 class="settings__section-title">Accessibility</h3>
|
|
131
|
+
<div class="settings__control">
|
|
132
|
+
<label class="settings__checkbox-label">
|
|
133
|
+
<input type="checkbox" class="settings__checkbox" data-reduced-motion aria-label="Reduce motion" />
|
|
134
|
+
<span>Reduce motion</span>
|
|
135
|
+
</label>
|
|
136
|
+
<p class="settings__help-text">Minimize animations and transitions</p>
|
|
137
|
+
</div>
|
|
138
|
+
<div class="settings__control">
|
|
139
|
+
<label class="settings__checkbox-label">
|
|
140
|
+
<input type="checkbox" class="settings__checkbox" data-high-contrast aria-label="High contrast" />
|
|
141
|
+
<span>High contrast</span>
|
|
142
|
+
</label>
|
|
143
|
+
<p class="settings__help-text">Increase contrast for better visibility</p>
|
|
144
|
+
</div>
|
|
145
|
+
<div class="settings__control">
|
|
146
|
+
<div class="settings__label"><span class="settings__label-text">Scrollbar style</span></div>
|
|
147
|
+
<div class="settings__radio-group" role="radiogroup" aria-label="Scrollbar style">
|
|
148
|
+
<label class="settings__radio-label">
|
|
149
|
+
<input type="radio" name="scrollbar-style" value="thin" class="settings__radio" data-scrollbar-style aria-label="Thin scrollbar" checked />
|
|
150
|
+
<span>Thin</span>
|
|
151
|
+
</label>
|
|
152
|
+
<label class="settings__radio-label">
|
|
153
|
+
<input type="radio" name="scrollbar-style" value="thick" class="settings__radio" data-scrollbar-style aria-label="Thick scrollbar" />
|
|
154
|
+
<span>Thick</span>
|
|
155
|
+
</label>
|
|
156
|
+
<label class="settings__radio-label">
|
|
157
|
+
<input type="radio" name="scrollbar-style" value="hidden" class="settings__radio" data-scrollbar-style aria-label="Hidden scrollbars" />
|
|
158
|
+
<span>Hidden</span>
|
|
159
|
+
</label>
|
|
160
|
+
</div>
|
|
161
|
+
<p class="settings__help-text">Choose your preferred scrollbar appearance</p>
|
|
162
|
+
</div>
|
|
163
|
+
</section>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
<main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
|
|
174
|
+
<h1 style="font-size: var(--font-size-3xl); margin: 0 0 var(--spacing-4) 0; color: var(--text);">Settings</h1>
|
|
175
|
+
<p style="color: var(--text-dim); margin-bottom: var(--spacing-4);">Read the full docs for this component on the main site:</p>
|
|
176
|
+
<p><a href="https://rizzo-css.vercel.app/docs/components/settings" target="_blank" rel="noopener noreferrer" class="btn btn-primary">https://rizzo-css.vercel.app/docs/components/settings</a></p>
|
|
177
|
+
<p style="margin-top: var(--spacing-8);"><a href="index.html" class="btn btn-outline">← Component list</a> <a href="../index.html" class="btn btn-outline">Home</a></p>
|
|
178
|
+
</main>
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
<script src="../js/main.js"></script>
|
|
186
|
+
</body>
|
|
187
|
+
</html>
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en" data-theme="{{DATA_THEME}}">{{THEME_LIST_COMMENT}}
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>{{TITLE}}</title>
|
|
7
|
+
<!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
|
|
8
|
+
<script>
|
|
9
|
+
(function() {
|
|
10
|
+
try {
|
|
11
|
+
var savedTheme = localStorage.getItem('theme');
|
|
12
|
+
var defaultDark = '{{DEFAULT_DARK}}';
|
|
13
|
+
var defaultLight = '{{DEFAULT_LIGHT}}';
|
|
14
|
+
var resolvedTheme;
|
|
15
|
+
if (!savedTheme) {
|
|
16
|
+
var initialTheme = document.documentElement.getAttribute('data-theme');
|
|
17
|
+
resolvedTheme = (initialTheme && initialTheme !== 'system') ? initialTheme : (window.matchMedia('(prefers-color-scheme: dark)').matches ? defaultDark : defaultLight);
|
|
18
|
+
} else if (savedTheme === 'system') {
|
|
19
|
+
resolvedTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? defaultDark : defaultLight;
|
|
20
|
+
} else {
|
|
21
|
+
resolvedTheme = savedTheme;
|
|
22
|
+
}
|
|
23
|
+
document.documentElement.setAttribute('data-theme', resolvedTheme);
|
|
24
|
+
var savedFontScale = localStorage.getItem('fontSizeScale');
|
|
25
|
+
if (savedFontScale) {
|
|
26
|
+
document.documentElement.style.setProperty('--font-size-scale', savedFontScale);
|
|
27
|
+
}
|
|
28
|
+
if (localStorage.getItem('reducedMotion') === 'true') {
|
|
29
|
+
document.documentElement.classList.add('reduced-motion');
|
|
30
|
+
}
|
|
31
|
+
if (localStorage.getItem('highContrast') === 'true') {
|
|
32
|
+
document.documentElement.classList.add('high-contrast');
|
|
33
|
+
}
|
|
34
|
+
var savedScrollbarStyle = localStorage.getItem('scrollbarStyle') || 'thin';
|
|
35
|
+
if (savedScrollbarStyle === 'thick') {
|
|
36
|
+
document.documentElement.classList.add('scrollbar-thick');
|
|
37
|
+
} else if (savedScrollbarStyle === 'hidden') {
|
|
38
|
+
document.documentElement.classList.add('scrollbar-hidden', 'hide-scrollbars');
|
|
39
|
+
}
|
|
40
|
+
if (!savedScrollbarStyle && localStorage.getItem('hideScrollbars') === 'true') {
|
|
41
|
+
document.documentElement.classList.add('scrollbar-hidden', 'hide-scrollbars');
|
|
42
|
+
localStorage.setItem('scrollbarStyle', 'hidden');
|
|
43
|
+
}
|
|
44
|
+
} catch (e) {}
|
|
45
|
+
})();
|
|
46
|
+
</script>
|
|
47
|
+
<link rel="stylesheet" href="../{{LINK_HREF}}" />
|
|
48
|
+
</head>
|
|
49
|
+
<body>
|
|
50
|
+
<a href="#main-content" class="skip-link">Skip to main content</a>
|
|
51
|
+
<header class="container flex flex-wrap items-center justify-between gap-4" style="padding-top: var(--spacing-4); padding-bottom: var(--spacing-4); border-bottom: 1px solid var(--border);">
|
|
52
|
+
<a href="#" class="font-semibold" style="font-size: var(--font-size-lg); color: var(--text); text-decoration: none;">{{TITLE}}</a>
|
|
53
|
+
<div class="flex items-center gap-3 flex-wrap">
|
|
54
|
+
<label for="theme-select" class="sr-only">Theme</label>
|
|
55
|
+
<select id="theme-select" class="form-control" style="width: auto; min-width: 12rem;" aria-label="Theme">
|
|
56
|
+
<option value="system">System</option>
|
|
57
|
+
<optgroup label="Dark themes">
|
|
58
|
+
<option value="github-dark-classic">GitHub Dark Classic</option>
|
|
59
|
+
<option value="shades-of-purple">Shades of Purple</option>
|
|
60
|
+
<option value="sandstorm-classic">Sandstorm Classic</option>
|
|
61
|
+
<option value="rocky-blood-orange">Rocky Blood Orange</option>
|
|
62
|
+
<option value="minimal-dark-neon-yellow">Minimal Dark Neon Yellow</option>
|
|
63
|
+
<option value="hack-the-box">Hack The Box</option>
|
|
64
|
+
<option value="pink-cat-boo">Pink Cat Boo</option>
|
|
65
|
+
</optgroup>
|
|
66
|
+
<optgroup label="Light themes">
|
|
67
|
+
<option value="github-light">GitHub Light</option>
|
|
68
|
+
<option value="red-velvet-cupcake">Red Velvet Cupcake</option>
|
|
69
|
+
<option value="orangy-one-light">Orangy One Light</option>
|
|
70
|
+
<option value="sunflower">Sunflower</option>
|
|
71
|
+
<option value="green-breeze-light">Green Breeze Light</option>
|
|
72
|
+
<option value="cute-pink">Cute Pink</option>
|
|
73
|
+
<option value="semi-light-purple">Semi Light Purple</option>
|
|
74
|
+
</optgroup>
|
|
75
|
+
</select>
|
|
76
|
+
<button type="button" class="btn btn-outline" aria-label="Open settings" onclick="window.openSettings && window.openSettings()">Settings</button>
|
|
77
|
+
</div>
|
|
78
|
+
</header>
|
|
79
|
+
|
|
80
|
+
<!-- Settings panel (same structure as main site; CSS from Rizzo) -->
|
|
81
|
+
<div class="settings" data-settings aria-hidden="true">
|
|
82
|
+
<div class="settings__overlay" data-settings-overlay aria-hidden="true"></div>
|
|
83
|
+
<div class="settings__panel" role="dialog" aria-modal="true" aria-labelledby="settings-title" aria-hidden="true">
|
|
84
|
+
<div class="settings__header">
|
|
85
|
+
<h2 id="settings-title" class="settings__title">Settings</h2>
|
|
86
|
+
<button type="button" class="settings__close" aria-label="Close settings" data-settings-close>
|
|
87
|
+
<svg width="20" height="20" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2"><line x1="4" y1="4" x2="12" y2="12"></line><line x1="12" y1="4" x2="4" y2="12"></line></svg>
|
|
88
|
+
</button>
|
|
89
|
+
</div>
|
|
90
|
+
<div class="settings__content">
|
|
91
|
+
<section class="settings__section">
|
|
92
|
+
<h3 class="settings__section-title">Theme</h3>
|
|
93
|
+
<div class="settings__control">
|
|
94
|
+
<label for="settings-theme" class="settings__label">Theme</label>
|
|
95
|
+
<select id="settings-theme" class="form-control" aria-label="Theme" data-settings-theme style="width: 100%;">
|
|
96
|
+
<option value="system">System</option>
|
|
97
|
+
<optgroup label="Dark themes">
|
|
98
|
+
<option value="github-dark-classic">GitHub Dark Classic</option>
|
|
99
|
+
<option value="shades-of-purple">Shades of Purple</option>
|
|
100
|
+
<option value="sandstorm-classic">Sandstorm Classic</option>
|
|
101
|
+
<option value="rocky-blood-orange">Rocky Blood Orange</option>
|
|
102
|
+
<option value="minimal-dark-neon-yellow">Minimal Dark Neon Yellow</option>
|
|
103
|
+
<option value="hack-the-box">Hack The Box</option>
|
|
104
|
+
<option value="pink-cat-boo">Pink Cat Boo</option>
|
|
105
|
+
</optgroup>
|
|
106
|
+
<optgroup label="Light themes">
|
|
107
|
+
<option value="github-light">GitHub Light</option>
|
|
108
|
+
<option value="red-velvet-cupcake">Red Velvet Cupcake</option>
|
|
109
|
+
<option value="orangy-one-light">Orangy One Light</option>
|
|
110
|
+
<option value="sunflower">Sunflower</option>
|
|
111
|
+
<option value="green-breeze-light">Green Breeze Light</option>
|
|
112
|
+
<option value="cute-pink">Cute Pink</option>
|
|
113
|
+
<option value="semi-light-purple">Semi Light Purple</option>
|
|
114
|
+
</optgroup>
|
|
115
|
+
</select>
|
|
116
|
+
</div>
|
|
117
|
+
</section>
|
|
118
|
+
<section class="settings__section">
|
|
119
|
+
<h3 class="settings__section-title">Font Size</h3>
|
|
120
|
+
<div class="settings__control">
|
|
121
|
+
<label for="font-size-slider" class="settings__label">
|
|
122
|
+
<span class="settings__label-text">Adjust text size</span>
|
|
123
|
+
<span class="settings__label-value" data-font-size-value>100%</span>
|
|
124
|
+
</label>
|
|
125
|
+
<input type="range" id="font-size-slider" class="settings__slider" min="0.75" max="1.5" step="0.05" value="1" aria-label="Font size" data-font-size-slider style="--slider-progress: 50%;" />
|
|
126
|
+
<div class="settings__slider-labels"><span>Small</span><span>Default</span><span>Large</span></div>
|
|
127
|
+
</div>
|
|
128
|
+
</section>
|
|
129
|
+
<section class="settings__section">
|
|
130
|
+
<h3 class="settings__section-title">Accessibility</h3>
|
|
131
|
+
<div class="settings__control">
|
|
132
|
+
<label class="settings__checkbox-label">
|
|
133
|
+
<input type="checkbox" class="settings__checkbox" data-reduced-motion aria-label="Reduce motion" />
|
|
134
|
+
<span>Reduce motion</span>
|
|
135
|
+
</label>
|
|
136
|
+
<p class="settings__help-text">Minimize animations and transitions</p>
|
|
137
|
+
</div>
|
|
138
|
+
<div class="settings__control">
|
|
139
|
+
<label class="settings__checkbox-label">
|
|
140
|
+
<input type="checkbox" class="settings__checkbox" data-high-contrast aria-label="High contrast" />
|
|
141
|
+
<span>High contrast</span>
|
|
142
|
+
</label>
|
|
143
|
+
<p class="settings__help-text">Increase contrast for better visibility</p>
|
|
144
|
+
</div>
|
|
145
|
+
<div class="settings__control">
|
|
146
|
+
<div class="settings__label"><span class="settings__label-text">Scrollbar style</span></div>
|
|
147
|
+
<div class="settings__radio-group" role="radiogroup" aria-label="Scrollbar style">
|
|
148
|
+
<label class="settings__radio-label">
|
|
149
|
+
<input type="radio" name="scrollbar-style" value="thin" class="settings__radio" data-scrollbar-style aria-label="Thin scrollbar" checked />
|
|
150
|
+
<span>Thin</span>
|
|
151
|
+
</label>
|
|
152
|
+
<label class="settings__radio-label">
|
|
153
|
+
<input type="radio" name="scrollbar-style" value="thick" class="settings__radio" data-scrollbar-style aria-label="Thick scrollbar" />
|
|
154
|
+
<span>Thick</span>
|
|
155
|
+
</label>
|
|
156
|
+
<label class="settings__radio-label">
|
|
157
|
+
<input type="radio" name="scrollbar-style" value="hidden" class="settings__radio" data-scrollbar-style aria-label="Hidden scrollbars" />
|
|
158
|
+
<span>Hidden</span>
|
|
159
|
+
</label>
|
|
160
|
+
</div>
|
|
161
|
+
<p class="settings__help-text">Choose your preferred scrollbar appearance</p>
|
|
162
|
+
</div>
|
|
163
|
+
</section>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
<main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
|
|
174
|
+
<h1 style="font-size: var(--font-size-3xl); margin: 0 0 var(--spacing-4) 0; color: var(--text);">Spinner</h1>
|
|
175
|
+
<p style="color: var(--text-dim); margin-bottom: var(--spacing-4);">Read the full docs for this component on the main site:</p>
|
|
176
|
+
<p><a href="https://rizzo-css.vercel.app/docs/components/spinner" target="_blank" rel="noopener noreferrer" class="btn btn-primary">https://rizzo-css.vercel.app/docs/components/spinner</a></p>
|
|
177
|
+
<p style="margin-top: var(--spacing-8);"><a href="index.html" class="btn btn-outline">← Component list</a> <a href="../index.html" class="btn btn-outline">Home</a></p>
|
|
178
|
+
</main>
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
<script src="../js/main.js"></script>
|
|
186
|
+
</body>
|
|
187
|
+
</html>
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en" data-theme="{{DATA_THEME}}">{{THEME_LIST_COMMENT}}
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>{{TITLE}}</title>
|
|
7
|
+
<!-- Theme flash prevention: apply saved theme/settings before first paint (same as main site) -->
|
|
8
|
+
<script>
|
|
9
|
+
(function() {
|
|
10
|
+
try {
|
|
11
|
+
var savedTheme = localStorage.getItem('theme');
|
|
12
|
+
var defaultDark = '{{DEFAULT_DARK}}';
|
|
13
|
+
var defaultLight = '{{DEFAULT_LIGHT}}';
|
|
14
|
+
var resolvedTheme;
|
|
15
|
+
if (!savedTheme) {
|
|
16
|
+
var initialTheme = document.documentElement.getAttribute('data-theme');
|
|
17
|
+
resolvedTheme = (initialTheme && initialTheme !== 'system') ? initialTheme : (window.matchMedia('(prefers-color-scheme: dark)').matches ? defaultDark : defaultLight);
|
|
18
|
+
} else if (savedTheme === 'system') {
|
|
19
|
+
resolvedTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? defaultDark : defaultLight;
|
|
20
|
+
} else {
|
|
21
|
+
resolvedTheme = savedTheme;
|
|
22
|
+
}
|
|
23
|
+
document.documentElement.setAttribute('data-theme', resolvedTheme);
|
|
24
|
+
var savedFontScale = localStorage.getItem('fontSizeScale');
|
|
25
|
+
if (savedFontScale) {
|
|
26
|
+
document.documentElement.style.setProperty('--font-size-scale', savedFontScale);
|
|
27
|
+
}
|
|
28
|
+
if (localStorage.getItem('reducedMotion') === 'true') {
|
|
29
|
+
document.documentElement.classList.add('reduced-motion');
|
|
30
|
+
}
|
|
31
|
+
if (localStorage.getItem('highContrast') === 'true') {
|
|
32
|
+
document.documentElement.classList.add('high-contrast');
|
|
33
|
+
}
|
|
34
|
+
var savedScrollbarStyle = localStorage.getItem('scrollbarStyle') || 'thin';
|
|
35
|
+
if (savedScrollbarStyle === 'thick') {
|
|
36
|
+
document.documentElement.classList.add('scrollbar-thick');
|
|
37
|
+
} else if (savedScrollbarStyle === 'hidden') {
|
|
38
|
+
document.documentElement.classList.add('scrollbar-hidden', 'hide-scrollbars');
|
|
39
|
+
}
|
|
40
|
+
if (!savedScrollbarStyle && localStorage.getItem('hideScrollbars') === 'true') {
|
|
41
|
+
document.documentElement.classList.add('scrollbar-hidden', 'hide-scrollbars');
|
|
42
|
+
localStorage.setItem('scrollbarStyle', 'hidden');
|
|
43
|
+
}
|
|
44
|
+
} catch (e) {}
|
|
45
|
+
})();
|
|
46
|
+
</script>
|
|
47
|
+
<link rel="stylesheet" href="../{{LINK_HREF}}" />
|
|
48
|
+
</head>
|
|
49
|
+
<body>
|
|
50
|
+
<a href="#main-content" class="skip-link">Skip to main content</a>
|
|
51
|
+
<header class="container flex flex-wrap items-center justify-between gap-4" style="padding-top: var(--spacing-4); padding-bottom: var(--spacing-4); border-bottom: 1px solid var(--border);">
|
|
52
|
+
<a href="#" class="font-semibold" style="font-size: var(--font-size-lg); color: var(--text); text-decoration: none;">{{TITLE}}</a>
|
|
53
|
+
<div class="flex items-center gap-3 flex-wrap">
|
|
54
|
+
<label for="theme-select" class="sr-only">Theme</label>
|
|
55
|
+
<select id="theme-select" class="form-control" style="width: auto; min-width: 12rem;" aria-label="Theme">
|
|
56
|
+
<option value="system">System</option>
|
|
57
|
+
<optgroup label="Dark themes">
|
|
58
|
+
<option value="github-dark-classic">GitHub Dark Classic</option>
|
|
59
|
+
<option value="shades-of-purple">Shades of Purple</option>
|
|
60
|
+
<option value="sandstorm-classic">Sandstorm Classic</option>
|
|
61
|
+
<option value="rocky-blood-orange">Rocky Blood Orange</option>
|
|
62
|
+
<option value="minimal-dark-neon-yellow">Minimal Dark Neon Yellow</option>
|
|
63
|
+
<option value="hack-the-box">Hack The Box</option>
|
|
64
|
+
<option value="pink-cat-boo">Pink Cat Boo</option>
|
|
65
|
+
</optgroup>
|
|
66
|
+
<optgroup label="Light themes">
|
|
67
|
+
<option value="github-light">GitHub Light</option>
|
|
68
|
+
<option value="red-velvet-cupcake">Red Velvet Cupcake</option>
|
|
69
|
+
<option value="orangy-one-light">Orangy One Light</option>
|
|
70
|
+
<option value="sunflower">Sunflower</option>
|
|
71
|
+
<option value="green-breeze-light">Green Breeze Light</option>
|
|
72
|
+
<option value="cute-pink">Cute Pink</option>
|
|
73
|
+
<option value="semi-light-purple">Semi Light Purple</option>
|
|
74
|
+
</optgroup>
|
|
75
|
+
</select>
|
|
76
|
+
<button type="button" class="btn btn-outline" aria-label="Open settings" onclick="window.openSettings && window.openSettings()">Settings</button>
|
|
77
|
+
</div>
|
|
78
|
+
</header>
|
|
79
|
+
|
|
80
|
+
<!-- Settings panel (same structure as main site; CSS from Rizzo) -->
|
|
81
|
+
<div class="settings" data-settings aria-hidden="true">
|
|
82
|
+
<div class="settings__overlay" data-settings-overlay aria-hidden="true"></div>
|
|
83
|
+
<div class="settings__panel" role="dialog" aria-modal="true" aria-labelledby="settings-title" aria-hidden="true">
|
|
84
|
+
<div class="settings__header">
|
|
85
|
+
<h2 id="settings-title" class="settings__title">Settings</h2>
|
|
86
|
+
<button type="button" class="settings__close" aria-label="Close settings" data-settings-close>
|
|
87
|
+
<svg width="20" height="20" viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="2"><line x1="4" y1="4" x2="12" y2="12"></line><line x1="12" y1="4" x2="4" y2="12"></line></svg>
|
|
88
|
+
</button>
|
|
89
|
+
</div>
|
|
90
|
+
<div class="settings__content">
|
|
91
|
+
<section class="settings__section">
|
|
92
|
+
<h3 class="settings__section-title">Theme</h3>
|
|
93
|
+
<div class="settings__control">
|
|
94
|
+
<label for="settings-theme" class="settings__label">Theme</label>
|
|
95
|
+
<select id="settings-theme" class="form-control" aria-label="Theme" data-settings-theme style="width: 100%;">
|
|
96
|
+
<option value="system">System</option>
|
|
97
|
+
<optgroup label="Dark themes">
|
|
98
|
+
<option value="github-dark-classic">GitHub Dark Classic</option>
|
|
99
|
+
<option value="shades-of-purple">Shades of Purple</option>
|
|
100
|
+
<option value="sandstorm-classic">Sandstorm Classic</option>
|
|
101
|
+
<option value="rocky-blood-orange">Rocky Blood Orange</option>
|
|
102
|
+
<option value="minimal-dark-neon-yellow">Minimal Dark Neon Yellow</option>
|
|
103
|
+
<option value="hack-the-box">Hack The Box</option>
|
|
104
|
+
<option value="pink-cat-boo">Pink Cat Boo</option>
|
|
105
|
+
</optgroup>
|
|
106
|
+
<optgroup label="Light themes">
|
|
107
|
+
<option value="github-light">GitHub Light</option>
|
|
108
|
+
<option value="red-velvet-cupcake">Red Velvet Cupcake</option>
|
|
109
|
+
<option value="orangy-one-light">Orangy One Light</option>
|
|
110
|
+
<option value="sunflower">Sunflower</option>
|
|
111
|
+
<option value="green-breeze-light">Green Breeze Light</option>
|
|
112
|
+
<option value="cute-pink">Cute Pink</option>
|
|
113
|
+
<option value="semi-light-purple">Semi Light Purple</option>
|
|
114
|
+
</optgroup>
|
|
115
|
+
</select>
|
|
116
|
+
</div>
|
|
117
|
+
</section>
|
|
118
|
+
<section class="settings__section">
|
|
119
|
+
<h3 class="settings__section-title">Font Size</h3>
|
|
120
|
+
<div class="settings__control">
|
|
121
|
+
<label for="font-size-slider" class="settings__label">
|
|
122
|
+
<span class="settings__label-text">Adjust text size</span>
|
|
123
|
+
<span class="settings__label-value" data-font-size-value>100%</span>
|
|
124
|
+
</label>
|
|
125
|
+
<input type="range" id="font-size-slider" class="settings__slider" min="0.75" max="1.5" step="0.05" value="1" aria-label="Font size" data-font-size-slider style="--slider-progress: 50%;" />
|
|
126
|
+
<div class="settings__slider-labels"><span>Small</span><span>Default</span><span>Large</span></div>
|
|
127
|
+
</div>
|
|
128
|
+
</section>
|
|
129
|
+
<section class="settings__section">
|
|
130
|
+
<h3 class="settings__section-title">Accessibility</h3>
|
|
131
|
+
<div class="settings__control">
|
|
132
|
+
<label class="settings__checkbox-label">
|
|
133
|
+
<input type="checkbox" class="settings__checkbox" data-reduced-motion aria-label="Reduce motion" />
|
|
134
|
+
<span>Reduce motion</span>
|
|
135
|
+
</label>
|
|
136
|
+
<p class="settings__help-text">Minimize animations and transitions</p>
|
|
137
|
+
</div>
|
|
138
|
+
<div class="settings__control">
|
|
139
|
+
<label class="settings__checkbox-label">
|
|
140
|
+
<input type="checkbox" class="settings__checkbox" data-high-contrast aria-label="High contrast" />
|
|
141
|
+
<span>High contrast</span>
|
|
142
|
+
</label>
|
|
143
|
+
<p class="settings__help-text">Increase contrast for better visibility</p>
|
|
144
|
+
</div>
|
|
145
|
+
<div class="settings__control">
|
|
146
|
+
<div class="settings__label"><span class="settings__label-text">Scrollbar style</span></div>
|
|
147
|
+
<div class="settings__radio-group" role="radiogroup" aria-label="Scrollbar style">
|
|
148
|
+
<label class="settings__radio-label">
|
|
149
|
+
<input type="radio" name="scrollbar-style" value="thin" class="settings__radio" data-scrollbar-style aria-label="Thin scrollbar" checked />
|
|
150
|
+
<span>Thin</span>
|
|
151
|
+
</label>
|
|
152
|
+
<label class="settings__radio-label">
|
|
153
|
+
<input type="radio" name="scrollbar-style" value="thick" class="settings__radio" data-scrollbar-style aria-label="Thick scrollbar" />
|
|
154
|
+
<span>Thick</span>
|
|
155
|
+
</label>
|
|
156
|
+
<label class="settings__radio-label">
|
|
157
|
+
<input type="radio" name="scrollbar-style" value="hidden" class="settings__radio" data-scrollbar-style aria-label="Hidden scrollbars" />
|
|
158
|
+
<span>Hidden</span>
|
|
159
|
+
</label>
|
|
160
|
+
</div>
|
|
161
|
+
<p class="settings__help-text">Choose your preferred scrollbar appearance</p>
|
|
162
|
+
</div>
|
|
163
|
+
</section>
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
</div>
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
<main id="main-content" class="flex flex-col items-center justify-center text-center min-h-screen" style="padding: var(--spacing-12) var(--spacing-4); min-height: calc(100vh - 4rem);">
|
|
174
|
+
<h1 style="font-size: var(--font-size-3xl); margin: 0 0 var(--spacing-4) 0; color: var(--text);">Table</h1>
|
|
175
|
+
<p style="color: var(--text-dim); margin-bottom: var(--spacing-4);">Read the full docs for this component on the main site:</p>
|
|
176
|
+
<p><a href="https://rizzo-css.vercel.app/docs/components/table" target="_blank" rel="noopener noreferrer" class="btn btn-primary">https://rizzo-css.vercel.app/docs/components/table</a></p>
|
|
177
|
+
<p style="margin-top: var(--spacing-8);"><a href="index.html" class="btn btn-outline">← Component list</a> <a href="../index.html" class="btn btn-outline">Home</a></p>
|
|
178
|
+
</main>
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
<script src="../js/main.js"></script>
|
|
186
|
+
</body>
|
|
187
|
+
</html>
|