@maz-ui/mcp 5.0.0-beta.1 → 5.0.0-beta.17
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/dist/mcp.mjs +1 -1
- package/docs/generated-docs/maz-checkbox.doc.md +16 -17
- package/docs/generated-docs/maz-circular-progress-bar.doc.md +1 -1
- package/docs/generated-docs/maz-code-highlight.doc.md +11 -0
- package/docs/generated-docs/maz-date-picker.doc.md +41 -41
- package/docs/generated-docs/maz-drawer.doc.md +7 -8
- package/docs/generated-docs/maz-expand-animation.doc.md +4 -4
- package/docs/generated-docs/maz-fullscreen-loader.doc.md +5 -5
- package/docs/generated-docs/maz-gallery.doc.md +15 -15
- package/docs/generated-docs/maz-input-code.doc.md +16 -16
- package/docs/generated-docs/maz-input-phone-number.doc.md +42 -38
- package/docs/generated-docs/maz-input-price.doc.md +14 -14
- package/docs/generated-docs/maz-input-tags.doc.md +16 -16
- package/docs/generated-docs/maz-input.doc.md +14 -14
- package/docs/generated-docs/maz-lazy-img.doc.md +14 -14
- package/docs/generated-docs/maz-loading-bar.doc.md +4 -4
- package/docs/generated-docs/maz-pull-to-refresh.doc.md +10 -10
- package/docs/generated-docs/maz-radio-buttons.doc.md +17 -17
- package/docs/generated-docs/maz-radio.doc.md +16 -16
- package/docs/generated-docs/maz-reading-progress-bar.doc.md +4 -4
- package/docs/generated-docs/maz-sidebar-content.doc.md +5 -0
- package/docs/generated-docs/maz-sidebar-footer.doc.md +5 -0
- package/docs/generated-docs/maz-sidebar-group.doc.md +11 -0
- package/docs/generated-docs/maz-sidebar-header.doc.md +5 -0
- package/docs/generated-docs/maz-sidebar-menu-button.doc.md +27 -0
- package/docs/generated-docs/maz-sidebar-menu-item.doc.md +5 -0
- package/docs/generated-docs/maz-sidebar-menu-sub.doc.md +16 -0
- package/docs/generated-docs/maz-sidebar-menu.doc.md +5 -0
- package/docs/generated-docs/maz-sidebar-separator.doc.md +0 -0
- package/docs/generated-docs/maz-sidebar-trigger.doc.md +5 -0
- package/docs/generated-docs/maz-sidebar.doc.md +36 -0
- package/docs/generated-docs/maz-slider.doc.md +1 -1
- package/docs/generated-docs/maz-spinner.doc.md +4 -4
- package/docs/generated-docs/maz-switch.doc.md +14 -14
- package/docs/generated-docs/maz-table.doc.md +5 -5
- package/docs/generated-docs/maz-textarea.doc.md +25 -24
- package/docs/generated-docs/maz-ticker.doc.md +1 -1
- package/docs/generated-docs/maz-window-mockup.doc.md +23 -0
- package/docs/src/blog/v5.md +1 -3
- package/docs/src/components/maz-code-highlight.md +233 -0
- package/docs/src/components/maz-container.md +2 -2
- package/docs/src/components/maz-input-phone-number.md +106 -103
- package/docs/src/components/maz-sidebar.md +674 -0
- package/docs/src/components/maz-textarea.md +27 -1
- package/docs/src/components/maz-timeline.md +60 -0
- package/docs/src/components/maz-window-mockup.md +249 -0
- package/docs/src/directives/click-outside.md +7 -14
- package/docs/src/directives/lazy-img.md +4 -4
- package/docs/src/directives/tooltip.md +23 -0
- package/docs/src/ecosystem/eslint-config.md +95 -1
- package/docs/src/guide/getting-started.md +13 -11
- package/docs/src/guide/maz-ui-provider.md +6 -3
- package/docs/src/guide/migration-v4.md +7 -3
- package/docs/src/guide/migration-v5.md +67 -12
- package/docs/src/guide/nuxt.md +53 -46
- package/docs/src/guide/tailwind.md +4 -0
- package/docs/src/guide/themes.md +127 -69
- package/docs/src/helpers/capitalize.md +2 -3
- package/docs/src/helpers/currency.md +2 -2
- package/docs/src/helpers/date.md +2 -2
- package/docs/src/helpers/number.md +2 -2
- package/docs/src/plugins/wait.md +1 -1
- package/package.json +4 -4
|
@@ -93,8 +93,9 @@ npm install @maz-ui/themes
|
|
|
93
93
|
|
|
94
94
|
**Features:**
|
|
95
95
|
|
|
96
|
-
- 🎨
|
|
97
|
-
- 🌓 Smart dark mode
|
|
96
|
+
- 🎨 Native `light-dark()` + `color-scheme` + OKLCh scales via relative color syntax
|
|
97
|
+
- 🌓 Smart dark mode — `class` or `media` strategies, with smooth transitions on toggle
|
|
98
|
+
- ✨ Optional animated theme switch via View Transitions (`setColorMode(..., { animate: true })`)
|
|
98
99
|
- ⚡ `runtime` and `buildtime` rendering strategies
|
|
99
100
|
- 🍪 Active preset persisted across reloads (opt-out)
|
|
100
101
|
- 🛡️ Full TypeScript support
|
|
@@ -163,15 +164,6 @@ npm install @maz-ui/icons
|
|
|
163
164
|
Maz-UI v5 is built with tree-shaking in mind. Import only what you need for optimal bundle sizes:
|
|
164
165
|
|
|
165
166
|
```typescript
|
|
166
|
-
/**
|
|
167
|
-
* Utilities
|
|
168
|
-
*/
|
|
169
|
-
|
|
170
|
-
// ❌ Avoid importing everything
|
|
171
|
-
import { formatCurrency, debounce } from '@maz-ui/utils'
|
|
172
|
-
// ✅ Import from @maz-ui/utils
|
|
173
|
-
import { formatCurrency, debounce } from '@maz-ui/utils'
|
|
174
|
-
|
|
175
167
|
/**
|
|
176
168
|
* Components
|
|
177
169
|
*/
|
|
@@ -215,6 +207,16 @@ import { vClickOutside } from 'maz-ui/directives/vClickOutside'
|
|
|
215
207
|
import { MazUi } from 'maz-ui/plugins'
|
|
216
208
|
// ✅✅ Direct plugin import (most optimized)
|
|
217
209
|
import { MazUi } from 'maz-ui/plugins/maz-ui'
|
|
210
|
+
|
|
211
|
+
/**
|
|
212
|
+
* Utilities
|
|
213
|
+
*/
|
|
214
|
+
|
|
215
|
+
// ❌ Avoid importing everything
|
|
216
|
+
import { formatCurrency, debounce } from '@maz-ui/utils'
|
|
217
|
+
// ✅ Import from @maz-ui/utils
|
|
218
|
+
import { debounce } from '@maz-ui/utils/helpers/debounce'
|
|
219
|
+
import { formatCurrency } from '@maz-ui/utils/helpers/formatCurrency'
|
|
218
220
|
```
|
|
219
221
|
|
|
220
222
|
::: tip Maximum Optimization
|
|
@@ -97,12 +97,15 @@ The entire Maz-UI setup is now code-split into the Dashboard chunk.
|
|
|
97
97
|
|
|
98
98
|
```typescript
|
|
99
99
|
interface ThemeOptions {
|
|
100
|
-
preset: ThemePreset
|
|
101
|
-
overrides?: ThemePresetOverrides
|
|
102
|
-
strategy?: 'runtime' | 'buildtime'
|
|
100
|
+
preset: ThemePreset // Required - Theme preset (mazUi, ocean, pristine, obsidian, nova, or custom)
|
|
101
|
+
overrides?: ThemePresetOverrides // Partial overrides for colors, foundation, etc.
|
|
102
|
+
strategy?: 'runtime' | 'buildtime' // CSS generation strategy (default: 'runtime')
|
|
103
103
|
darkModeStrategy?: 'class' | 'media' // Dark mode handling (default: 'class')
|
|
104
104
|
colorMode?: 'light' | 'dark' | 'auto' // Initial color mode (default: 'auto')
|
|
105
105
|
mode?: 'light' | 'dark' | 'both' // Supported color modes (default: 'both')
|
|
106
|
+
darkClass?: string // Class on <html> when colorMode === 'dark' (default: 'dark')
|
|
107
|
+
lightClass?: string // Class on <html> when colorMode === 'light' (default: 'light')
|
|
108
|
+
persistPreset?: boolean // Persist active preset in cookie (default: true)
|
|
106
109
|
}
|
|
107
110
|
```
|
|
108
111
|
|
|
@@ -41,6 +41,10 @@ v4.0.0 isn't just an update, it's a **complete rebuild** that transforms Maz-UI
|
|
|
41
41
|
- **Dynamic CSS Variables**: Automatic CSS variable generation
|
|
42
42
|
- **Intelligent dark mode**: Configurable strategies for dark mode based on system preferences and user choice stored in cookies
|
|
43
43
|
|
|
44
|
+
::: tip Theming further evolved in v5
|
|
45
|
+
The theme system has been rewritten on top of native `light-dark()` + `color-scheme` + `color-mix(in oklch)` in v5. If you are upgrading past v4, see the dedicated [v5 migration guide](./migration-v5.md#theming-native-css-rewrite-new-non-breaking-by-default) for the full theming changes (new `lightClass`, `Promise<void>` returns, removed JS helpers).
|
|
46
|
+
:::
|
|
47
|
+
|
|
44
48
|
#### Complete Internationalization
|
|
45
49
|
|
|
46
50
|
- **9 supported languages by default**: EN, FR, DE, ES, IT, PT, JA, ZH-CN
|
|
@@ -688,12 +692,12 @@ app.use(MazUi, {
|
|
|
688
692
|
<script setup>
|
|
689
693
|
import { useTheme } from 'maz-ui/composables'
|
|
690
694
|
|
|
691
|
-
const { isDark, toggleDarkMode,
|
|
695
|
+
const { isDark, toggleDarkMode, updateTheme } = useTheme()
|
|
692
696
|
|
|
693
697
|
// Change theme
|
|
694
|
-
|
|
698
|
+
updateTheme('ocean')
|
|
695
699
|
|
|
696
|
-
// Toggle dark mode
|
|
700
|
+
// Toggle dark mode (v5: returns Promise<void>, optional { animate } param)
|
|
697
701
|
toggleDarkMode()
|
|
698
702
|
</script>
|
|
699
703
|
|
|
@@ -23,7 +23,7 @@ npx @maz-ui/upgrade ./ --dry-run
|
|
|
23
23
|
npx @maz-ui/upgrade ./
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
It
|
|
26
|
+
It handles the mechanical part of the migration (CSS subpath imports, prop renames, CSS var renames, Nuxt config keys, custom preset color keys, and `package.json` version bumps)
|
|
27
27
|
|
|
28
28
|
What it can't decide for you: the `MazIcon` API simplification (section 4), `MazBadge` numeric size mapping (section 9), `foundation.radius` → `scales.rounded.md` reshape (section 11) and `MazChart` `update-mode` defaults (section 8). Those are best handled with the MCP server below.
|
|
29
29
|
|
|
@@ -557,7 +557,7 @@ rg "color\s*=\s*['\"]background['\"]" src/
|
|
|
557
557
|
|
|
558
558
|
### Theme colors are now emitted as OKLCh
|
|
559
559
|
|
|
560
|
-
`@maz-ui/themes` now ships its bundled presets (`mazUi`, `ocean`, `pristine`, `obsidian`) in `oklch()` form, and the
|
|
560
|
+
`@maz-ui/themes` now ships its bundled presets (`mazUi`, `ocean`, `pristine`, `obsidian`, `nova`) in `oklch()` form, and the runtime CSS variables (`--maz-primary`, `--maz-primary-100`, …) therefore hold OKLCh colors. The 50–950 scale is derived in CSS via OKLCh relative color syntax — `oklch(from var(--maz-X) clamp(0, calc(l ± offset), 1) calc(c * mult) h)` — perceptually uniform, chroma-preserving, and live-reactive to base color overrides.
|
|
561
561
|
|
|
562
562
|
This is **transparent for consumers**:
|
|
563
563
|
|
|
@@ -568,16 +568,8 @@ This is **transparent for consumers**:
|
|
|
568
568
|
|
|
569
569
|
You only need to do something if you were:
|
|
570
570
|
|
|
571
|
-
- **Reading the channel format** of a color from `--maz-*` in JS — the value used to be an `hsl(...)` string, it's now an `oklch(...)` string. Use `getComputedStyle(...).getPropertyValue(...)` and a CSS color parser if you need channels.
|
|
572
|
-
- **Calling
|
|
573
|
-
|
|
574
|
-
```ts
|
|
575
|
-
// v4: HSL L percentage
|
|
576
|
-
adjustColorLightness('hsl(210 50% 40%)', 20) // → 'hsl(210 50% 60%)'
|
|
577
|
-
|
|
578
|
-
// v5: OKLCh L (0..1)
|
|
579
|
-
adjustColorLightness('hsl(210 50% 40%)', 0.2) // → 'oklch(0.65 0.108 232.62)'
|
|
580
|
-
```
|
|
571
|
+
- **Reading the channel format** of a color from `--maz-*` in JS — the value used to be an `hsl(...)` string, it's now an `oklch(...)` string (and at runtime the base may resolve through `light-dark()`). Use `getComputedStyle(...).getPropertyValue(...)` and a CSS color parser if you need channels.
|
|
572
|
+
- **Calling the legacy JS palette helpers** (`generateColorScale`, `adjustColorLightness`, `getContrastColor`, `parseHSL`) — these exports were removed in v5. See [BREAKING — removed exports](#breaking-removed-exports) for replacements.
|
|
581
573
|
|
|
582
574
|
Why the switch: OKLCh is perceptually uniform, so generated scales (`primary-50` → `primary-950`) ramp consistently across hues — yellow-700 won't look muddy compared to blue-700 anymore. It also unlocks Display P3 colors when you author a vivid preset.
|
|
583
575
|
|
|
@@ -615,6 +607,69 @@ Four bundled presets remain (`mazUi`, `pristine`, `ocean`, `obsidian`) plus a ne
|
|
|
615
607
|
|
|
616
608
|
Switching to one of the bundled presets does not require any code change beyond the preset name. If you depended on the previous (washed-out gray) `secondary` color in a custom theme, override it back via `colors.{light,dark}.secondary` in your preset.
|
|
617
609
|
|
|
610
|
+
### Theming: native CSS rewrite (new — non-breaking by default)
|
|
611
|
+
|
|
612
|
+
The `@maz-ui/themes` CSS pipeline was rewritten to lean on native CSS instead of JS:
|
|
613
|
+
|
|
614
|
+
- Base colors are now emitted as a single `--maz-X: light-dark(L, D)` declaration. The browser resolves it for you.
|
|
615
|
+
- Color scales `--maz-X-50` through `--maz-X-950` are derived via OKLCh relative color syntax at runtime, so any override on the base color cascades through the whole scale automatically (and preserves its chroma).
|
|
616
|
+
- `:root` declares `color-scheme: light dark` so native widgets (scrollbars, native `<select>`, date pickers, autofill) follow the active mode out of the box.
|
|
617
|
+
- A `<meta name="color-scheme">` tag is **automatically injected** at boot (Vue + Nuxt SSR). No user action — prevents the Flash of inAccurate coloR Theme.
|
|
618
|
+
|
|
619
|
+
Consumer-visible CSS surface is unchanged: `var(--maz-primary)`, `--maz-primary-500`, Tailwind utilities `bg-primary/60`, `bg-primary-500`, etc. all keep working.
|
|
620
|
+
|
|
621
|
+
#### `lightClass` (new — optional, default `'light'`)
|
|
622
|
+
|
|
623
|
+
Mirror of `darkClass`. When `colorMode === 'light'` and `darkModeStrategy === 'class'`, this class is added to `<html>` to force `color-scheme: only light`. Default `'light'` — set to `false`/custom string if it clashes with an existing class in your app:
|
|
624
|
+
|
|
625
|
+
```ts
|
|
626
|
+
app.use(MazUi, {
|
|
627
|
+
theme: {
|
|
628
|
+
preset: mazUi,
|
|
629
|
+
darkClass: 'dark',
|
|
630
|
+
lightClass: 'light', // new
|
|
631
|
+
},
|
|
632
|
+
})
|
|
633
|
+
```
|
|
634
|
+
|
|
635
|
+
Non-breaking: if you never explicitly forced light, nothing changes.
|
|
636
|
+
|
|
637
|
+
#### `setColorMode` / `toggleDarkMode` now return `Promise<void>`
|
|
638
|
+
|
|
639
|
+
Both functions are now async to support the optional `{ animate: true }` parameter (View Transitions). Existing callers that ignored the return value keep working — `await` is only required when you need to chain.
|
|
640
|
+
|
|
641
|
+
```ts
|
|
642
|
+
const { setColorMode, toggleDarkMode } = useTheme()
|
|
643
|
+
|
|
644
|
+
// Existing v4 call — still works, return value ignored
|
|
645
|
+
setColorMode('dark')
|
|
646
|
+
toggleDarkMode()
|
|
647
|
+
|
|
648
|
+
// v5 — await to chain after the change is applied
|
|
649
|
+
await setColorMode('dark')
|
|
650
|
+
|
|
651
|
+
// v5 — animated full-page switch via document.startViewTransition()
|
|
652
|
+
await toggleDarkMode({ animate: true })
|
|
653
|
+
await setColorMode('dark', { animate: true })
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
The View Transitions glue is lazy-imported — when `animate` is not used, it stays out of your boot bundle. Browsers that don't support the API apply the change immediately with no animation.
|
|
657
|
+
|
|
658
|
+
#### BREAKING — removed exports
|
|
659
|
+
|
|
660
|
+
The JS-based palette generator is gone. The following helpers used to be exported from `@maz-ui/themes` and **no longer exist** in v5:
|
|
661
|
+
|
|
662
|
+
| Removed export | Replacement |
|
|
663
|
+
| --- | --- |
|
|
664
|
+
| `generateColorScale(base, mode)` | The scale is now generated in CSS via `oklch(from var(--maz-X) clamp(0, calc(l ± offset), 1) calc(c * mult) h)`. Read the live value from `--maz-X-{50..950}`, or replicate the formula inline. |
|
|
665
|
+
| `parseHSL(value)` | Use a CSS color parser or `parseColorAsOklch` from `@maz-ui/themes/utils/color-conversions`. |
|
|
666
|
+
| `adjustColorLightness(color, amount)` | Inline with `oklch(from <color> calc(l + N) c h)` to shift lightness while preserving chroma and hue. |
|
|
667
|
+
| `getContrastColor(color)` | Use the preset's `*-foreground` token, which is what components consume internally. |
|
|
668
|
+
|
|
669
|
+
`colorToHex`, `parseColorAsOklch` and `formatAsOklch` are **preserved**, now exported from `@maz-ui/themes/utils/color-conversions`.
|
|
670
|
+
|
|
671
|
+
If you were importing any of the removed helpers from `@maz-ui/themes`, replace them before upgrading.
|
|
672
|
+
|
|
618
673
|
### Preset name persistence (new — opt-out, no breaking change)
|
|
619
674
|
|
|
620
675
|
`@maz-ui/themes` now persists the active preset name in a `maz-preset` cookie (1-year TTL, `SameSite=Lax`) — same shape as the existing `maz-color-mode` cookie:
|
package/docs/src/guide/nuxt.md
CHANGED
|
@@ -126,11 +126,13 @@ export default defineNuxtConfig({
|
|
|
126
126
|
theme: {
|
|
127
127
|
preset: 'maz-ui', // 'maz-ui' | 'pristine' | 'ocean' | 'obsidian' | 'nova' | custom object
|
|
128
128
|
strategy: 'runtime', // 'runtime' | 'buildtime'
|
|
129
|
-
darkModeStrategy: 'class', // 'class' | 'media'
|
|
129
|
+
darkModeStrategy: 'class', // 'class' | 'media'
|
|
130
|
+
darkClass: 'dark', // class on <html> when colorMode === 'dark' (default: 'dark')
|
|
131
|
+
lightClass: 'light', // class on <html> when colorMode === 'light' (default: 'light')
|
|
130
132
|
overrides: {
|
|
131
133
|
colors: {
|
|
132
|
-
light: { primary: '
|
|
133
|
-
dark: { primary: '
|
|
134
|
+
light: { primary: 'oklch(0.65 0.19 254)' },
|
|
135
|
+
dark: { primary: 'oklch(0.72 0.18 254)' }
|
|
134
136
|
}
|
|
135
137
|
},
|
|
136
138
|
mode: 'both', // 'light' | 'dark' | 'both'
|
|
@@ -220,16 +222,16 @@ const theme = {
|
|
|
220
222
|
overrides: {
|
|
221
223
|
colors: {
|
|
222
224
|
light: {
|
|
223
|
-
primary: '
|
|
224
|
-
secondary: '
|
|
225
|
-
surface: '0 0
|
|
226
|
-
foreground: '
|
|
225
|
+
primary: 'oklch(0.6 0.18 254)',
|
|
226
|
+
secondary: 'oklch(0.96 0.01 254)',
|
|
227
|
+
surface: 'oklch(1 0 0)',
|
|
228
|
+
foreground: 'oklch(0.16 0.02 254)',
|
|
227
229
|
},
|
|
228
230
|
dark: {
|
|
229
|
-
primary: '
|
|
230
|
-
secondary: '
|
|
231
|
-
surface: '
|
|
232
|
-
foreground: '
|
|
231
|
+
primary: 'oklch(0.72 0.18 254)',
|
|
232
|
+
secondary: 'oklch(0.22 0.02 254)',
|
|
233
|
+
surface: 'oklch(0.16 0.02 254)',
|
|
234
|
+
foreground: 'oklch(0.96 0.005 254)',
|
|
233
235
|
}
|
|
234
236
|
},
|
|
235
237
|
// Override other theme properties...
|
|
@@ -245,7 +247,14 @@ const theme = {
|
|
|
245
247
|
strategy: 'runtime', // 'runtime' (recommended) | 'buildtime'
|
|
246
248
|
|
|
247
249
|
// Dark mode handling
|
|
248
|
-
darkModeStrategy: 'class', // 'class' | 'media'
|
|
250
|
+
darkModeStrategy: 'class', // 'class' | 'media'
|
|
251
|
+
|
|
252
|
+
// Class added to <html> when colorMode === 'dark' (default: 'dark')
|
|
253
|
+
darkClass: 'dark',
|
|
254
|
+
|
|
255
|
+
// Class added to <html> when colorMode === 'light' (default: 'light')
|
|
256
|
+
// Mirror of darkClass — used to force `color-scheme: only light`.
|
|
257
|
+
lightClass: 'light',
|
|
249
258
|
|
|
250
259
|
// Persist the active preset name in the `maz-preset` cookie so the
|
|
251
260
|
// user's last-used theme is restored on reload. Default: true.
|
|
@@ -379,41 +388,39 @@ import { definePreset } from '@maz-ui/themes'
|
|
|
379
388
|
|
|
380
389
|
export const customTheme = definePreset({
|
|
381
390
|
base: 'maz-ui',
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
391
|
+
overrides: {
|
|
392
|
+
name: 'custom',
|
|
393
|
+
foundation: {
|
|
394
|
+
'base-font-size': '14px',
|
|
395
|
+
'font-family': `Manrope, sans-serif, system-ui, -apple-system`,
|
|
396
|
+
'space': '0.25rem',
|
|
397
|
+
'border-width': '0.0625rem',
|
|
398
|
+
},
|
|
399
|
+
scales: {
|
|
400
|
+
rounded: { md: '0.7rem' },
|
|
401
|
+
},
|
|
402
|
+
colors: {
|
|
403
|
+
light: {
|
|
404
|
+
primary: 'oklch(0.65 0.27 5)', // Custom pink
|
|
405
|
+
secondary: 'oklch(0.96 0.01 5)',
|
|
406
|
+
surface: 'oklch(1 0 0)',
|
|
407
|
+
foreground: 'oklch(0.16 0.02 254)',
|
|
408
|
+
muted: 'oklch(0.6 0.01 254)',
|
|
409
|
+
accent: 'oklch(0.7 0.05 5)',
|
|
410
|
+
destructive: 'oklch(0.6 0.22 27)',
|
|
411
|
+
divider: 'oklch(0.92 0.005 254)',
|
|
412
|
+
},
|
|
413
|
+
dark: {
|
|
414
|
+
primary: 'oklch(0.75 0.22 5)',
|
|
415
|
+
secondary: 'oklch(0.24 0.02 5)',
|
|
416
|
+
surface: 'oklch(0.16 0.02 254)',
|
|
417
|
+
foreground: 'oklch(0.96 0.005 254)',
|
|
418
|
+
muted: 'oklch(0.6 0.01 254)',
|
|
419
|
+
accent: 'oklch(0.3 0.04 5)',
|
|
420
|
+
destructive: 'oklch(0.55 0.2 27)',
|
|
421
|
+
divider: 'oklch(0.3 0.01 254)',
|
|
422
|
+
}
|
|
404
423
|
},
|
|
405
|
-
dark: {
|
|
406
|
-
primary: '350 100% 70%',
|
|
407
|
-
secondary: '350 14% 4%',
|
|
408
|
-
surface: '222 84% 5%',
|
|
409
|
-
foreground: '210 40% 98%',
|
|
410
|
-
muted: '217 33% 17%',
|
|
411
|
-
accent: '217 33% 17%',
|
|
412
|
-
destructive: '0 62% 30%',
|
|
413
|
-
border: '217 33% 17%',
|
|
414
|
-
input: '217 33% 17%',
|
|
415
|
-
ring: '350 100% 70%',
|
|
416
|
-
}
|
|
417
424
|
},
|
|
418
425
|
})
|
|
419
426
|
|
|
@@ -47,6 +47,10 @@ Each one comes with `bg-X`, `text-X`, `border-X`, an 11-step scale (`bg-X-50`
|
|
|
47
47
|
<div class="bg-success-100 text-success-700">Saved!</div>
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
+
::: info Alpha utilities and scales in v5
|
|
51
|
+
`bg-primary/60`, `text-primary/40`, `border-primary/50` and the rest of Tailwind's alpha syntax continue to work unchanged. In v5 the 50–950 scales are derived in CSS via OKLCh relative color syntax and the base colors are resolved through `light-dark()`, but this is invisible at the utility level — your Tailwind classes don't change.
|
|
52
|
+
:::
|
|
53
|
+
|
|
50
54
|
### Neutral & surface colors
|
|
51
55
|
|
|
52
56
|
These don't have a foreground variant — they're typically used for backgrounds, text, borders or overlays directly. Each one still ships an 11-step scale.
|