@vanduo-oss/framework 1.3.8 → 1.3.9
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/README.md +6 -5
- package/css/components/collapsible.css +8 -0
- package/css/core/colors.css +27 -1
- package/css/core/tokens.css +1 -1
- package/css/core/typography.css +1 -1
- package/dist/build-info.json +3 -3
- package/dist/vanduo.cjs.js +8 -7
- package/dist/vanduo.cjs.js.map +2 -2
- package/dist/vanduo.cjs.min.js +3 -3
- package/dist/vanduo.cjs.min.js.map +2 -2
- package/dist/vanduo.css +32 -5
- package/dist/vanduo.css.map +1 -1
- package/dist/vanduo.esm.js +8 -7
- package/dist/vanduo.esm.js.map +2 -2
- package/dist/vanduo.esm.min.js +3 -3
- package/dist/vanduo.esm.min.js.map +2 -2
- package/dist/vanduo.js +8 -7
- package/dist/vanduo.js.map +2 -2
- package/dist/vanduo.min.css +2 -2
- package/dist/vanduo.min.css.map +1 -1
- package/dist/vanduo.min.js +3 -3
- package/dist/vanduo.min.js.map +2 -2
- package/js/components/font-switcher.js +3 -3
- package/js/components/theme-customizer.js +3 -2
- package/package.json +2 -4
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Vanduo Framework v1.3.
|
|
1
|
+
# Vanduo Framework v1.3.9
|
|
2
2
|
|
|
3
3
|
<p align="center">
|
|
4
4
|
<img src="vanduo-banner.svg" alt="Vanduo Framework Banner" width="100%">
|
|
@@ -20,8 +20,9 @@ Vanduo is a lightweight, zero-dependency UI framework built with pure HTML, CSS,
|
|
|
20
20
|
|
|
21
21
|
- Pure CSS/JS with no runtime dependencies
|
|
22
22
|
- Modular architecture with optional per-component imports
|
|
23
|
-
- 47+ components, including Expanding Cards and animated Timeline controls in v1.3.
|
|
24
|
-
-
|
|
23
|
+
- 47+ components, including Expanding Cards and animated Timeline controls in v1.3.9
|
|
24
|
+
- Current Theme Customizer defaults in this worktree are `charcoal` for neutral color and `ubuntu` for font family
|
|
25
|
+
- Niche canvas hex-grid support is distributed as [`@vanduo-oss/hex-grid`](https://www.npmjs.com/package/@vanduo-oss/hex-grid)
|
|
25
26
|
- Built-in dark/light/system theme switching
|
|
26
27
|
- Runtime Theme Customizer for color, font, and radius tokens
|
|
27
28
|
- Accessibility-focused components and utilities
|
|
@@ -31,8 +32,8 @@ Vanduo is a lightweight, zero-dependency UI framework built with pure HTML, CSS,
|
|
|
31
32
|
### CDN (recommended)
|
|
32
33
|
|
|
33
34
|
```html
|
|
34
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/vanduo-oss/framework@v1.3.
|
|
35
|
-
<script src="https://cdn.jsdelivr.net/gh/vanduo-oss/framework@v1.3.
|
|
35
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/vanduo-oss/framework@v1.3.9/dist/vanduo.min.css">
|
|
36
|
+
<script src="https://cdn.jsdelivr.net/gh/vanduo-oss/framework@v1.3.9/dist/vanduo.min.js"></script>
|
|
36
37
|
<script>Vanduo.init();</script>
|
|
37
38
|
```
|
|
38
39
|
|
|
@@ -75,6 +75,8 @@
|
|
|
75
75
|
user-select: none;
|
|
76
76
|
transition: var(--transition-bg);
|
|
77
77
|
border: none;
|
|
78
|
+
-webkit-appearance: none;
|
|
79
|
+
appearance: none;
|
|
78
80
|
width: 100%;
|
|
79
81
|
text-align: left;
|
|
80
82
|
font-family: var(--font-family-sans);
|
|
@@ -88,7 +90,9 @@
|
|
|
88
90
|
background-color: var(--collapsible-header-bg-hover);
|
|
89
91
|
}
|
|
90
92
|
|
|
93
|
+
.vd-collapsible-header:focus,
|
|
91
94
|
.vd-collapsible-header:focus-visible,
|
|
95
|
+
.accordion-header:focus,
|
|
92
96
|
.accordion-header:focus-visible {
|
|
93
97
|
outline: none;
|
|
94
98
|
}
|
|
@@ -122,11 +126,15 @@
|
|
|
122
126
|
text-decoration: none;
|
|
123
127
|
background: none;
|
|
124
128
|
border: none;
|
|
129
|
+
-webkit-appearance: none;
|
|
130
|
+
appearance: none;
|
|
125
131
|
padding: 0;
|
|
126
132
|
cursor: pointer;
|
|
127
133
|
}
|
|
128
134
|
|
|
135
|
+
.vd-collapsible-trigger:focus,
|
|
129
136
|
.vd-collapsible-trigger:focus-visible,
|
|
137
|
+
.accordion-trigger:focus,
|
|
130
138
|
.accordion-trigger:focus-visible {
|
|
131
139
|
outline: none;
|
|
132
140
|
}
|
package/css/core/colors.css
CHANGED
|
@@ -312,6 +312,18 @@
|
|
|
312
312
|
--slate-8: #1e293b;
|
|
313
313
|
--slate-9: #0f172a;
|
|
314
314
|
|
|
315
|
+
/* --- Charcoal Scale (Deep cool charcoal) --- */
|
|
316
|
+
--charcoal-0: #f5f7f8;
|
|
317
|
+
--charcoal-1: #e7ebee;
|
|
318
|
+
--charcoal-2: #ced6dc;
|
|
319
|
+
--charcoal-3: #adb8c1;
|
|
320
|
+
--charcoal-4: #8b98a3;
|
|
321
|
+
--charcoal-5: #6d7c88;
|
|
322
|
+
--charcoal-6: #53616d;
|
|
323
|
+
--charcoal-7: #394754;
|
|
324
|
+
--charcoal-8: #202c38;
|
|
325
|
+
--charcoal-9: #0d1117;
|
|
326
|
+
|
|
315
327
|
/* --- Zinc Scale (Slightly warm gray) --- */
|
|
316
328
|
--zinc-0: #fafafa;
|
|
317
329
|
--zinc-1: #f4f4f5;
|
|
@@ -946,7 +958,21 @@
|
|
|
946
958
|
* These rules remap --gray-* variables based on [data-neutral] attribute
|
|
947
959
|
* ═════════════════════════════════════════════════════════════════════════ */
|
|
948
960
|
|
|
949
|
-
/*
|
|
961
|
+
/* Charcoal Neutral (default) */
|
|
962
|
+
[data-neutral="charcoal"] {
|
|
963
|
+
--gray-0: var(--charcoal-0);
|
|
964
|
+
--gray-1: var(--charcoal-1);
|
|
965
|
+
--gray-2: var(--charcoal-2);
|
|
966
|
+
--gray-3: var(--charcoal-3);
|
|
967
|
+
--gray-4: var(--charcoal-4);
|
|
968
|
+
--gray-5: var(--charcoal-5);
|
|
969
|
+
--gray-6: var(--charcoal-6);
|
|
970
|
+
--gray-7: var(--charcoal-7);
|
|
971
|
+
--gray-8: var(--charcoal-8);
|
|
972
|
+
--gray-9: var(--charcoal-9);
|
|
973
|
+
}
|
|
974
|
+
|
|
975
|
+
/* Gray Neutral */
|
|
950
976
|
[data-neutral="gray"] {
|
|
951
977
|
--gray-0: #f8f9fa;
|
|
952
978
|
--gray-1: #f1f3f5;
|
package/css/core/tokens.css
CHANGED
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
/* ============================================
|
|
85
85
|
* TYPOGRAPHY TOKENS
|
|
86
86
|
* ============================================ */
|
|
87
|
-
--vd-font-family-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
87
|
+
--vd-font-family-base: 'Ubuntu', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
88
88
|
--vd-font-family-mono: 'JetBrains Mono', 'Fira Code', monospace;
|
|
89
89
|
|
|
90
90
|
/* Font Sizes (Fibonacci scale) */
|
package/css/core/typography.css
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
:root {
|
|
7
7
|
/* Font Families */
|
|
8
|
-
--font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
8
|
+
--font-family-sans: 'Ubuntu', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
9
9
|
--font-family-serif: Georgia, "Times New Roman", Times, serif;
|
|
10
10
|
--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;
|
|
11
11
|
}
|
package/dist/build-info.json
CHANGED
package/dist/vanduo.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Vanduo v1.3.
|
|
1
|
+
/*! Vanduo v1.3.9 | Built: 2026-05-10T18:54:59.798Z | git:2945a85 | development */
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
@@ -132,7 +132,7 @@ module.exports = __toCommonJS(index_exports);
|
|
|
132
132
|
// js/vanduo.js
|
|
133
133
|
(function() {
|
|
134
134
|
"use strict";
|
|
135
|
-
const VANDUO_VERSION = true ? "1.3.
|
|
135
|
+
const VANDUO_VERSION = true ? "1.3.9" : "0.0.0-dev";
|
|
136
136
|
const Vanduo2 = {
|
|
137
137
|
version: VANDUO_VERSION,
|
|
138
138
|
components: {},
|
|
@@ -1217,7 +1217,7 @@ module.exports = __toCommonJS(index_exports);
|
|
|
1217
1217
|
preference: this.getPreference()
|
|
1218
1218
|
};
|
|
1219
1219
|
if (!this.fonts[this.state.preference]) {
|
|
1220
|
-
this.state.preference = "
|
|
1220
|
+
this.state.preference = "ubuntu";
|
|
1221
1221
|
this.setStorageValue(this.STORAGE_KEY, this.state.preference);
|
|
1222
1222
|
}
|
|
1223
1223
|
if (this.isInitialized) {
|
|
@@ -1233,10 +1233,10 @@ module.exports = __toCommonJS(index_exports);
|
|
|
1233
1233
|
},
|
|
1234
1234
|
/**
|
|
1235
1235
|
* Get saved font preference from localStorage
|
|
1236
|
-
* @returns {string} Font key or '
|
|
1236
|
+
* @returns {string} Font key or 'ubuntu' (default)
|
|
1237
1237
|
*/
|
|
1238
1238
|
getPreference: function() {
|
|
1239
|
-
return this.getStorageValue(this.STORAGE_KEY, "
|
|
1239
|
+
return this.getStorageValue(this.STORAGE_KEY, "ubuntu");
|
|
1240
1240
|
},
|
|
1241
1241
|
/**
|
|
1242
1242
|
* Set font preference and apply it
|
|
@@ -3904,9 +3904,9 @@ module.exports = __toCommonJS(index_exports);
|
|
|
3904
3904
|
DEFAULTS: {
|
|
3905
3905
|
PRIMARY_LIGHT: "black",
|
|
3906
3906
|
PRIMARY_DARK: "amber",
|
|
3907
|
-
NEUTRAL: "
|
|
3907
|
+
NEUTRAL: "charcoal",
|
|
3908
3908
|
RADIUS: "0.5",
|
|
3909
|
-
FONT: "
|
|
3909
|
+
FONT: "ubuntu",
|
|
3910
3910
|
THEME: "system"
|
|
3911
3911
|
},
|
|
3912
3912
|
// Primary color definitions (Open Color based)
|
|
@@ -3932,6 +3932,7 @@ module.exports = __toCommonJS(index_exports);
|
|
|
3932
3932
|
},
|
|
3933
3933
|
// Neutral color definitions
|
|
3934
3934
|
NEUTRAL_COLORS: {
|
|
3935
|
+
"charcoal": { name: "Charcoal", color: "#0d1117" },
|
|
3935
3936
|
"slate": { name: "Slate", color: "#64748b" },
|
|
3936
3937
|
"gray": { name: "Gray", color: "#6b7280" },
|
|
3937
3938
|
"zinc": { name: "Zinc", color: "#71717a" },
|