@a-type/ui 1.8.17 → 2.0.0
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 +1 -58
- package/dist/cjs/colors.stories.d.ts +13 -0
- package/dist/cjs/colors.stories.js +29 -0
- package/dist/cjs/colors.stories.js.map +1 -0
- package/dist/cjs/components/box/Box.js +1 -3
- package/dist/cjs/components/box/Box.js.map +1 -1
- package/dist/cjs/components/button/classes.js +9 -9
- package/dist/cjs/components/button/classes.js.map +1 -1
- package/dist/cjs/components/card/Card.d.ts +2 -2
- package/dist/cjs/components/card/Card.js +4 -4
- package/dist/cjs/components/card/Card.js.map +1 -1
- package/dist/cjs/components/checkbox/Checkbox.js +1 -1
- package/dist/cjs/components/checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/datePicker/DatePicker.js +3 -1
- package/dist/cjs/components/datePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/horizontalList/HorizontalList.js +1 -1
- package/dist/cjs/components/horizontalList/HorizontalList.js.map +1 -1
- package/dist/cjs/components/richEditor/index.js +1 -1
- package/dist/cjs/components/scrollArea/ScrollArea.js +1 -1
- package/dist/cjs/components/scrollArea/ScrollArea.js.map +1 -1
- package/dist/cjs/components/slider/Slider.js +1 -1
- package/dist/cjs/components/slider/Slider.js.map +1 -1
- package/dist/cjs/components/tabs/tabs.js +1 -1
- package/dist/cjs/components/tabs/tabs.js.map +1 -1
- package/dist/cjs/components/toggleGroup/toggleGroup.js +1 -1
- package/dist/cjs/components/toggleGroup/toggleGroup.js.map +1 -1
- package/dist/cjs/components/typography/typography.js +3 -3
- package/dist/cjs/themes.stories.d.ts +2 -0
- package/dist/cjs/themes.stories.js +67 -1
- package/dist/cjs/themes.stories.js.map +1 -1
- package/dist/cjs/uno/colors.d.ts +14 -0
- package/dist/cjs/uno/colors.js +59 -0
- package/dist/cjs/uno/colors.js.map +1 -0
- package/dist/cjs/uno.preset.d.ts +5 -4
- package/dist/cjs/uno.preset.js +85 -261
- package/dist/cjs/uno.preset.js.map +1 -1
- package/dist/css/main.css +846 -784
- package/dist/esm/colors.stories.d.ts +13 -0
- package/dist/esm/colors.stories.js +26 -0
- package/dist/esm/colors.stories.js.map +1 -0
- package/dist/esm/components/box/Box.js +1 -3
- package/dist/esm/components/box/Box.js.map +1 -1
- package/dist/esm/components/button/classes.js +9 -9
- package/dist/esm/components/button/classes.js.map +1 -1
- package/dist/esm/components/card/Card.d.ts +2 -2
- package/dist/esm/components/card/Card.js +4 -4
- package/dist/esm/components/card/Card.js.map +1 -1
- package/dist/esm/components/checkbox/Checkbox.js +1 -1
- package/dist/esm/components/checkbox/Checkbox.js.map +1 -1
- package/dist/esm/components/datePicker/DatePicker.js +3 -1
- package/dist/esm/components/datePicker/DatePicker.js.map +1 -1
- package/dist/esm/components/horizontalList/HorizontalList.js +1 -1
- package/dist/esm/components/horizontalList/HorizontalList.js.map +1 -1
- package/dist/esm/components/richEditor/index.js +1 -1
- package/dist/esm/components/scrollArea/ScrollArea.js +1 -1
- package/dist/esm/components/scrollArea/ScrollArea.js.map +1 -1
- package/dist/esm/components/slider/Slider.js +1 -1
- package/dist/esm/components/slider/Slider.js.map +1 -1
- package/dist/esm/components/tabs/tabs.js +1 -1
- package/dist/esm/components/tabs/tabs.js.map +1 -1
- package/dist/esm/components/toggleGroup/toggleGroup.js +1 -1
- package/dist/esm/components/toggleGroup/toggleGroup.js.map +1 -1
- package/dist/esm/components/typography/typography.js +3 -3
- package/dist/esm/themes.stories.d.ts +2 -0
- package/dist/esm/themes.stories.js +67 -1
- package/dist/esm/themes.stories.js.map +1 -1
- package/dist/esm/uno/colors.d.ts +14 -0
- package/dist/esm/uno/colors.js +54 -0
- package/dist/esm/uno/colors.js.map +1 -0
- package/dist/esm/uno.preset.d.ts +5 -4
- package/dist/esm/uno.preset.js +84 -260
- package/dist/esm/uno.preset.js.map +1 -1
- package/package.json +1 -1
- package/src/colors.stories.tsx +53 -0
- package/src/components/box/Box.tsx +1 -4
- package/src/components/button/classes.tsx +12 -12
- package/src/components/card/Card.tsx +5 -5
- package/src/components/checkbox/Checkbox.tsx +1 -1
- package/src/components/datePicker/DatePicker.tsx +1 -0
- package/src/components/horizontalList/HorizontalList.tsx +1 -1
- package/src/components/richEditor/index.tsx +3 -3
- package/src/components/scrollArea/ScrollArea.tsx +1 -1
- package/src/components/slider/Slider.tsx +2 -2
- package/src/components/tabs/tabs.tsx +1 -1
- package/src/components/toggleGroup/toggleGroup.tsx +1 -1
- package/src/components/typography/typography.tsx +3 -3
- package/src/themes.stories.tsx +95 -1
- package/src/uno/colors.ts +68 -0
- package/src/uno.preset.ts +96 -322
package/src/uno.preset.ts
CHANGED
|
@@ -2,6 +2,12 @@ import { DynamicRule, entriesToCss, toArray } from '@unocss/core';
|
|
|
2
2
|
import { bgColors as bgColorsRules } from '@unocss/preset-mini/rules';
|
|
3
3
|
import presetWind3 from '@unocss/preset-wind3';
|
|
4
4
|
import { PreflightContext, Preset } from 'unocss';
|
|
5
|
+
import {
|
|
6
|
+
dynamicComputedVars,
|
|
7
|
+
dynamicTheme,
|
|
8
|
+
DynamicThemeColor,
|
|
9
|
+
dynamicThemeComputedColors,
|
|
10
|
+
} from './uno/colors.js';
|
|
5
11
|
|
|
6
12
|
const baseBgRule = bgColorsRules[0] as unknown as DynamicRule;
|
|
7
13
|
|
|
@@ -16,14 +22,11 @@ const roundedScaling = {
|
|
|
16
22
|
lg: 1.25,
|
|
17
23
|
};
|
|
18
24
|
|
|
19
|
-
export default function
|
|
25
|
+
export default function presetAtype({
|
|
20
26
|
scale = 'md',
|
|
21
27
|
interFontLocation = 'https://resources.biscuits.club/fonts/Inter-VariableFont_slnt,wght.ttf',
|
|
22
28
|
domineFontLocation = 'https://resources.biscuits.club/fonts/Domine-VariableFont_wght.ttf',
|
|
23
|
-
|
|
24
|
-
light: [90, 20],
|
|
25
|
-
dark: [0, 80],
|
|
26
|
-
},
|
|
29
|
+
customTheme,
|
|
27
30
|
borderScale = 1,
|
|
28
31
|
roundedness = 1,
|
|
29
32
|
cornerScale = roundedness,
|
|
@@ -33,10 +36,7 @@ export default function presetAglio({
|
|
|
33
36
|
scale?: 'sm' | 'md' | 'lg';
|
|
34
37
|
interFontLocation?: string;
|
|
35
38
|
domineFontLocation?: string;
|
|
36
|
-
|
|
37
|
-
light: [number, number];
|
|
38
|
-
dark: [number, number];
|
|
39
|
-
};
|
|
39
|
+
customTheme?: { primary: DynamicThemeColor; accent: DynamicThemeColor };
|
|
40
40
|
borderScale?: number;
|
|
41
41
|
/** @deprecated use cornerScale */
|
|
42
42
|
roundedness?: number;
|
|
@@ -47,8 +47,6 @@ export default function presetAglio({
|
|
|
47
47
|
const saturationScale = saturation / 100;
|
|
48
48
|
const spacingIncrement = spacing[scale];
|
|
49
49
|
cornerScale *= roundedScaling[scale];
|
|
50
|
-
const lightColors = generateColors(...colorRanges.light);
|
|
51
|
-
const darkColors = generateColors(...colorRanges.dark);
|
|
52
50
|
|
|
53
51
|
const darkModeSaturationTweak = 1;
|
|
54
52
|
const lightModeSaturationTweak = 3;
|
|
@@ -62,11 +60,6 @@ export default function presetAglio({
|
|
|
62
60
|
black: 'var(--color-black)',
|
|
63
61
|
white: 'var(--color-white)',
|
|
64
62
|
wash: 'var(--color-wash)',
|
|
65
|
-
attentionLight: 'var(--color-attention-light)',
|
|
66
|
-
'attention-light': 'var(--color-attention-light)',
|
|
67
|
-
attentionDark: 'var(--color-attention-dark)',
|
|
68
|
-
'attention-dark': 'var(--color-attention-dark)',
|
|
69
|
-
'attention-wash': 'var(--color-attention-wash)',
|
|
70
63
|
attention: {
|
|
71
64
|
DEFAULT: 'var(--color-attention)',
|
|
72
65
|
light: 'var(--color-attention-light)',
|
|
@@ -81,12 +74,6 @@ export default function presetAglio({
|
|
|
81
74
|
wash: 'var(--color-accent-wash)',
|
|
82
75
|
ink: 'var(--color-accent-ink)',
|
|
83
76
|
},
|
|
84
|
-
accentWash: 'var(--color-accent-wash)',
|
|
85
|
-
'accent-wash': 'var(--color-accent-wash)',
|
|
86
|
-
accentLight: 'var(--color-accent-light)',
|
|
87
|
-
'accent-light': 'var(--color-accent-light)',
|
|
88
|
-
accentDark: 'var(--color-accent-dark)',
|
|
89
|
-
'accent-dark': 'var(--color-accent-dark)',
|
|
90
77
|
primary: {
|
|
91
78
|
DEFAULT: 'var(--color-primary)',
|
|
92
79
|
light: 'var(--color-primary-light)',
|
|
@@ -94,29 +81,21 @@ export default function presetAglio({
|
|
|
94
81
|
wash: 'var(--color-primary-wash)',
|
|
95
82
|
ink: 'var(--color-primary-ink)',
|
|
96
83
|
},
|
|
97
|
-
primaryLight: 'var(--color-primary-light)',
|
|
98
|
-
'primary-light': 'var(--color-primary-light)',
|
|
99
|
-
primaryDark: 'var(--color-primary-dark)',
|
|
100
|
-
'primary-dark': 'var(--color-primary-dark)',
|
|
101
|
-
primaryWash: 'var(--color-primary-wash)',
|
|
102
|
-
'primary-wash': 'var(--color-primary-wash)',
|
|
103
84
|
gray: {
|
|
104
85
|
DEFAULT: 'var(--color-gray)',
|
|
105
86
|
wash: 'var(--color-gray-wash)',
|
|
106
87
|
light: 'var(--color-gray-light)',
|
|
107
|
-
dark: 'var(--color-gray-dark)',
|
|
108
88
|
ink: 'var(--color-gray-ink)',
|
|
109
89
|
blend: 'var(--color-gray-blend)',
|
|
90
|
+
dark: {
|
|
91
|
+
DEFAULT: 'var(--color-gray-dark)',
|
|
92
|
+
blend: 'var(--color-gray-dark-blend)',
|
|
93
|
+
},
|
|
110
94
|
},
|
|
111
|
-
grayBlend: 'var(--color-gray-blend)',
|
|
112
|
-
'gray-blend': 'var(--color-gray-blend)',
|
|
113
|
-
grayDarkBlend: 'var(--color-gray-dark-blend)',
|
|
114
|
-
'gray-dark-blend': 'var(--color-gray-dark-blend)',
|
|
115
|
-
darkBlend: 'var(--color-dark-blend)',
|
|
116
95
|
'dark-blend': 'var(--color-dark-blend)',
|
|
117
|
-
lightBlend: 'var(--color-light-blend)',
|
|
118
96
|
'light-blend': 'var(--color-light-blend)',
|
|
119
97
|
overlay: 'var(--color-overlay)',
|
|
98
|
+
'dark-mode-contrast': 'var(--color-dark-mode-contrast)',
|
|
120
99
|
},
|
|
121
100
|
fontFamily: {
|
|
122
101
|
default: 'var(--font-default, sans-serif)',
|
|
@@ -460,7 +439,7 @@ export default function presetAglio({
|
|
|
460
439
|
}
|
|
461
440
|
return {
|
|
462
441
|
'background-color': 'var(--v-bg-altered,var(--v-bg))',
|
|
463
|
-
['--v-bg']:
|
|
442
|
+
['--v-bg']: resolvedColor,
|
|
464
443
|
};
|
|
465
444
|
},
|
|
466
445
|
{
|
|
@@ -527,7 +506,7 @@ export default function presetAglio({
|
|
|
527
506
|
shortcuts: {
|
|
528
507
|
'border-default': 'border border-solid border-color-black',
|
|
529
508
|
'border-light':
|
|
530
|
-
'border border-solid border-color-gray border-color-darken-
|
|
509
|
+
'border border-solid border-color-gray border-color-darken-3',
|
|
531
510
|
'flex-1-0-0': 'flex-grow-1 flex-shrink-0 flex-basis-0',
|
|
532
511
|
'flex-0-0-auto': 'flex-grow-0 flex-shrink-0 flex-basis-auto',
|
|
533
512
|
row: 'layer-components:flex layer-components:flex-row layer-components:gap-2 layer-components:items-center',
|
|
@@ -566,10 +545,17 @@ export default function presetAglio({
|
|
|
566
545
|
} as any,
|
|
567
546
|
{
|
|
568
547
|
getCSS: (ctx) => {
|
|
548
|
+
const attentionColors = `
|
|
549
|
+
--dyn-attention-source: 30;
|
|
550
|
+
--dyn-attention-hue-rotate: 0;
|
|
551
|
+
--dyn-attention-sat-mult: 1;
|
|
552
|
+
--dyn-attention-hue-rotate-mult: 1;
|
|
553
|
+
${dynamicThemeComputedColors('attention')}`;
|
|
569
554
|
const lightMode = `
|
|
570
555
|
--wash-saturation-tweak: ${lightModeSaturationTweak};
|
|
571
556
|
--mode-mult: 1;
|
|
572
|
-
|
|
557
|
+
--dyn-mode-mult: 1;
|
|
558
|
+
--dyn-mode-sign: 1;
|
|
573
559
|
--color-dark-blend: var(--palette-dark-blend);
|
|
574
560
|
--color-light-blend: var(--palette-light-blend);
|
|
575
561
|
--color-dark-blend-2: var(--palette-dark-blend-2);
|
|
@@ -591,17 +577,21 @@ export default function presetAglio({
|
|
|
591
577
|
--color-shadow-1: var(--palette-shadow-2);
|
|
592
578
|
--color-shadow-2: var(--palette-shadow-1);
|
|
593
579
|
--color-overlay: var(--palette-white-overlay);
|
|
580
|
+
${attentionColors}
|
|
594
581
|
`;
|
|
595
582
|
const darkMode = `
|
|
596
583
|
--wash-saturation-tweak: ${darkModeSaturationTweak};
|
|
597
584
|
--mode-mult: -1;
|
|
598
|
-
|
|
585
|
+
--dyn-mode-mult: -1.6;
|
|
586
|
+
--dyn-mode-lighten-mult: -0.5;
|
|
587
|
+
--dyn-mode-sign: -1;
|
|
588
|
+
--dyn-source-mode-adjust: 1;
|
|
599
589
|
--color-dark-blend: var(--palette-light-blend);
|
|
600
590
|
--color-light-blend: var(--palette-dark-blend);
|
|
601
591
|
--color-dark-blend-2: var(--palette-light-blend-2);
|
|
602
592
|
--color-light-blend-2: var(--palette-dark-blend-2);
|
|
603
593
|
--color-black: var(--palette-true-white);
|
|
604
|
-
--color-white: var(--palette-
|
|
594
|
+
--color-white: var(--palette-white);
|
|
605
595
|
--color-gray-1: var(--palette-gray-ex-2);
|
|
606
596
|
--color-gray-2: var(--palette-gray-ex-1);
|
|
607
597
|
--color-gray-3: var(--palette-gray-0);
|
|
@@ -617,138 +607,60 @@ export default function presetAglio({
|
|
|
617
607
|
--color-shadow-1: var(--palette-shadow-4);
|
|
618
608
|
--color-shadow-2: var(--palette-shadow-3);
|
|
619
609
|
--color-overlay: var(--palette-black-overlay);
|
|
610
|
+
${attentionColors}
|
|
620
611
|
`;
|
|
621
612
|
|
|
622
|
-
const
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
613
|
+
const dynThemes: Record<string, DynamicThemeColor> = {
|
|
614
|
+
lemon: { hue: 91.8, hueRotate: 3 },
|
|
615
|
+
leek: { hue: 160.88, hueRotate: -1 },
|
|
616
|
+
tomato: { hue: 10.51, hueRotate: -2 },
|
|
617
|
+
blueberry: { hue: 248.14, hueRotate: 4 },
|
|
618
|
+
eggplant: { hue: 280.21, hueRotate: -5 },
|
|
619
|
+
salt: {
|
|
620
|
+
hue: 0,
|
|
621
|
+
hueRotate: -50,
|
|
622
|
+
hueRotateMult: 0,
|
|
623
|
+
saturationMult: 0,
|
|
624
|
+
dim: '4%',
|
|
625
|
+
},
|
|
626
|
+
saltLight: {
|
|
627
|
+
hue: 0,
|
|
628
|
+
hueRotate: -50,
|
|
629
|
+
hueRotateMult: 0,
|
|
630
|
+
saturationMult: 0,
|
|
631
|
+
dim: '15%',
|
|
632
|
+
},
|
|
633
|
+
};
|
|
634
|
+
|
|
635
|
+
const dynLemon = dynamicTheme({
|
|
636
|
+
primary: dynThemes.lemon,
|
|
637
|
+
accent: dynThemes.leek,
|
|
626
638
|
});
|
|
627
|
-
const
|
|
628
|
-
primary:
|
|
629
|
-
accent:
|
|
630
|
-
grayTweak: 20,
|
|
631
|
-
primaryWashSaturation: 0.95,
|
|
639
|
+
const dynLeek = dynamicTheme({
|
|
640
|
+
primary: dynThemes.leek,
|
|
641
|
+
accent: dynThemes.lemon,
|
|
632
642
|
});
|
|
633
|
-
const
|
|
634
|
-
primary:
|
|
635
|
-
accent:
|
|
636
|
-
grayTweak: -20,
|
|
643
|
+
const dynTomato = dynamicTheme({
|
|
644
|
+
primary: dynThemes.tomato,
|
|
645
|
+
accent: dynThemes.leek,
|
|
637
646
|
});
|
|
638
|
-
const
|
|
639
|
-
primary:
|
|
640
|
-
accent:
|
|
641
|
-
grayTweak: 20,
|
|
647
|
+
const dynBlueberry = dynamicTheme({
|
|
648
|
+
primary: dynThemes.blueberry,
|
|
649
|
+
accent: dynThemes.leek,
|
|
642
650
|
});
|
|
643
|
-
const
|
|
644
|
-
primary:
|
|
645
|
-
accent:
|
|
646
|
-
grayTweak: -20,
|
|
651
|
+
const dynEggplant = dynamicTheme({
|
|
652
|
+
primary: dynThemes.eggplant,
|
|
653
|
+
accent: dynThemes.leek,
|
|
647
654
|
});
|
|
648
|
-
const
|
|
649
|
-
primary:
|
|
650
|
-
accent:
|
|
651
|
-
default: 'true-gray-light',
|
|
652
|
-
wash: 'white',
|
|
653
|
-
light: 'true-gray-wash',
|
|
654
|
-
dark: 'true-gray',
|
|
655
|
-
ink: 'true-gray-dark',
|
|
656
|
-
},
|
|
657
|
-
globalSaturation: 0,
|
|
655
|
+
const dynSalt = dynamicTheme({
|
|
656
|
+
primary: dynThemes.salt,
|
|
657
|
+
accent: dynThemes.saltLight,
|
|
658
658
|
});
|
|
659
659
|
|
|
660
|
-
const computedVars = `
|
|
661
|
-
--palette-gray-wash: hsl(from var(--color-primary-wash) calc(h + var(--gray-hue-tweak, 0)) calc(s * var(--wash-saturation-tweak, 1) * var(--global-saturation, 1)) calc(l * pow(1.025, var(--mode-mult,1))));
|
|
662
|
-
--palette-gray: hsl(from var(--color-primary) calc(h + var(--gray-hue-tweak, 0)) calc(s * var(--global-saturation, 1)) calc(l * 1.125));
|
|
663
|
-
--palette-gray-dark: hsl(from var(--color-primary-dark) calc(h + var(--gray-hue-tweak, 0)) calc(s * 0.75 * var(--global-saturation, 1)) calc(l * pow(1.125, var(--mode-mult,1))));
|
|
664
|
-
--palette-gray-light: hsl(from var(--color-primary-light) calc(h + var(--gray-hue-tweak, 0) * pow(2, var(--mode-mult, 1))) calc(s * 0.5 * var(--global-saturation, 1)) calc(l * pow(1.25, var(--mode-mult,1))));
|
|
665
|
-
--color-wash: var(--color-gray-wash);
|
|
666
|
-
--color-gray-wash: var(--palette-gray-wash);
|
|
667
|
-
--color-gray: var(--palette-gray);
|
|
668
|
-
--color-gray-dark: var(--palette-gray-dark);
|
|
669
|
-
--color-gray-light: var(--palette-gray-light);
|
|
670
|
-
--color-gray-ink: var(--color-black);
|
|
671
|
-
--palette-gray-1: var(--color-gray-wash);
|
|
672
|
-
--palette-gray-2: var(--color-gray-light);
|
|
673
|
-
--palette-gray-3: var(--color-gray-light);
|
|
674
|
-
--palette-gray-4: var(--color-gray);
|
|
675
|
-
--palette-gray-5: var(--color-gray);
|
|
676
|
-
--palette-gray-6: var(--color-gray);
|
|
677
|
-
--palette-gray-7: var(--color-gray-dark);
|
|
678
|
-
--palette-gray-8: var(--color-gray-dark);
|
|
679
|
-
--palette-gray-9: var(--color-black);
|
|
680
|
-
--palette-gray-0: var(--color-black);
|
|
681
|
-
--palette-gray-ex-1: var(--color-black);
|
|
682
|
-
--palette-gray-ex-2: var(--color-black);
|
|
683
|
-
--palette-white: hsl(from var(--color-wash) calc(h + 0) calc(s * 0.3 * var(--global-saturation, 1)) calc(min(100, l + 1 / var(--global-saturation, 1))));
|
|
684
|
-
--palette-black: hsl(from var(--color-gray-dark) calc(h + 0) calc(s * 0.1 * var(--global-saturation, 1)) calc(min(100, l / (var(--mode-mult,1) * -5 + pow(1 + var(--global-saturation, 1), 1.5)))));
|
|
685
|
-
`;
|
|
686
|
-
|
|
687
660
|
return `
|
|
688
661
|
@layer preflightBase, preflightVariant, components, responsive, variants, utilities;
|
|
689
662
|
|
|
690
663
|
:root {
|
|
691
|
-
--palette-red-90:rgb(255, 244, 240);
|
|
692
|
-
--palette-red-80: #ffdbcf;
|
|
693
|
-
--palette-red-70: #ffbea6;
|
|
694
|
-
--palette-red-60: #fdad8e;
|
|
695
|
-
--palette-red-50: #ff8e61;
|
|
696
|
-
--palette-red-40: #d56f46;
|
|
697
|
-
--palette-red-30: #ae562d;
|
|
698
|
-
--palette-red-20: #804020;
|
|
699
|
-
--palette-red-10: #702604;
|
|
700
|
-
--palette-red-00:rgb(37, 28, 25);
|
|
701
|
-
/* TODO: define these */
|
|
702
|
-
--palette-magenta-90: hsl(from rgb(255, 244, 240) calc(h - 20) s l);
|
|
703
|
-
--palette-magenta-80: hsl(from #ffdbcf calc(h - 20) s l);
|
|
704
|
-
--palette-magenta-70: hsl(from #ffbea6 calc(h - 20) s l);
|
|
705
|
-
--palette-magenta-60: hsl(from #fdad8e calc(h - 20) s l);
|
|
706
|
-
--palette-magenta-50: hsl(from #ff8e61 calc(h - 20) s l);
|
|
707
|
-
--palette-magenta-40: hsl(from #d56f46 calc(h - 20) s l);
|
|
708
|
-
--palette-magenta-30: hsl(from #ae562d calc(h - 20) s l);
|
|
709
|
-
--palette-magenta-20: hsl(from #804020 calc(h - 20) s l);
|
|
710
|
-
--palette-magenta-10: hsl(from #702604 calc(h - 20) s l);
|
|
711
|
-
--palette-magenta-00: hsl(from rgb(37, 28, 25) calc(h - 20) s l);
|
|
712
|
-
--palette-green-90:rgb(240, 255, 248);
|
|
713
|
-
--palette-green-80: #c2ffe9;
|
|
714
|
-
--palette-green-70: #92f2d1;
|
|
715
|
-
--palette-green-60: #86efc8;
|
|
716
|
-
--palette-green-50: #63cea5;
|
|
717
|
-
--palette-green-40: #499d92;
|
|
718
|
-
--palette-green-30: #1f837c;
|
|
719
|
-
--palette-green-20: #246869;
|
|
720
|
-
--palette-green-10: #274e50;
|
|
721
|
-
--palette-green-00:rgb(32, 48, 44);
|
|
722
|
-
--palette-yellow-90:rgb(255, 249, 238);
|
|
723
|
-
--palette-yellow-80: #fff1c7;
|
|
724
|
-
--palette-yellow-70: #ffdf7c;
|
|
725
|
-
--palette-yellow-60: #ffdb57;
|
|
726
|
-
--palette-yellow-50: #e1b83c;
|
|
727
|
-
--palette-yellow-40:rgb(171, 134, 38);
|
|
728
|
-
--palette-yellow-30:rgb(139, 98, 20);
|
|
729
|
-
--palette-yellow-20:rgb(111, 83, 23);
|
|
730
|
-
--palette-yellow-10:rgb(84, 62, 12);
|
|
731
|
-
--palette-yellow-00:rgb(37, 33, 22);
|
|
732
|
-
--palette-blue-90: rgb(238, 248, 255);
|
|
733
|
-
--palette-blue-80: #c4e7ff;
|
|
734
|
-
--palette-blue-70: #87d3fc;
|
|
735
|
-
--palette-blue-60: #5fcefe;
|
|
736
|
-
--palette-blue-50: #1ebcf5;
|
|
737
|
-
--palette-blue-40: #0ca6df;
|
|
738
|
-
--palette-blue-30: #077da7;
|
|
739
|
-
--palette-blue-20: #005979;
|
|
740
|
-
--palette-blue-10: #004c69;
|
|
741
|
-
--palette-blue-00:rgb(25, 39, 44);
|
|
742
|
-
--palette-purple-90:rgb(240, 238, 254);
|
|
743
|
-
--palette-purple-80: #e0e0ff;
|
|
744
|
-
--palette-purple-70:rgb(192, 197, 245);
|
|
745
|
-
--palette-purple-60:rgb(151, 159, 250);
|
|
746
|
-
--palette-purple-50:rgb(125, 137, 242);
|
|
747
|
-
--palette-purple-40:rgb(99, 105, 173);
|
|
748
|
-
--palette-purple-30:rgb(87, 91, 139);
|
|
749
|
-
--palette-purple-20:rgb(76, 81, 122);
|
|
750
|
-
--palette-purple-10:rgb(64, 67, 101);
|
|
751
|
-
--palette-purple-00:rgb(27, 24, 44);
|
|
752
664
|
--palette-light-blend: rgba(255, 255, 255, 0.8);
|
|
753
665
|
--palette-light-blend-2: rgba(255, 255, 255, 0.6);
|
|
754
666
|
--palette-dark-blend: rgba(0, 0, 0, 0.65);
|
|
@@ -786,8 +698,6 @@ export default function presetAglio({
|
|
|
786
698
|
--font-title: "Inter", sans-serif;
|
|
787
699
|
--font-default: var(--font-sans, sans-serif);
|
|
788
700
|
|
|
789
|
-
${computedVars}
|
|
790
|
-
|
|
791
701
|
--z-nowPlaying: 40;
|
|
792
702
|
--z-nav: 50;
|
|
793
703
|
--z-menu: 100;
|
|
@@ -803,8 +713,8 @@ export default function presetAglio({
|
|
|
803
713
|
html {
|
|
804
714
|
${lightMode}
|
|
805
715
|
|
|
806
|
-
/* DEFAULT THEME
|
|
807
|
-
${
|
|
716
|
+
/* DEFAULT THEME */
|
|
717
|
+
${customTheme ? dynamicTheme(customTheme) : dynLemon}
|
|
808
718
|
}
|
|
809
719
|
|
|
810
720
|
/* INTRINSIC DARK THEME */
|
|
@@ -815,48 +725,31 @@ export default function presetAglio({
|
|
|
815
725
|
}
|
|
816
726
|
|
|
817
727
|
.theme-lemon {
|
|
818
|
-
${
|
|
819
|
-
${computedVars}
|
|
820
|
-
}
|
|
821
|
-
|
|
822
|
-
/* fix yellow hue in dark mode */
|
|
823
|
-
@media(prefers-color-scheme: dark) {
|
|
824
|
-
.theme-lemon {
|
|
825
|
-
--gray-hue-tweak: 0;
|
|
826
|
-
}
|
|
827
|
-
|
|
828
|
-
html.override-light.theme-lemon, html.override-light .theme-lemon {
|
|
829
|
-
--gray-hue-tweak: -20;
|
|
830
|
-
}
|
|
831
|
-
}
|
|
832
|
-
|
|
833
|
-
html.override-dark.theme-lemon, html.override-dark .theme-lemon {
|
|
834
|
-
--gray-hue-tweak: 0;
|
|
728
|
+
${dynLemon}
|
|
835
729
|
}
|
|
836
730
|
|
|
837
731
|
.theme-blueberry {
|
|
838
|
-
${
|
|
839
|
-
${computedVars}
|
|
732
|
+
${dynBlueberry}
|
|
840
733
|
}
|
|
841
734
|
|
|
842
735
|
.theme-eggplant {
|
|
843
|
-
${
|
|
844
|
-
${computedVars}
|
|
736
|
+
${dynEggplant}
|
|
845
737
|
}
|
|
846
738
|
|
|
847
739
|
.theme-leek {
|
|
848
|
-
${
|
|
849
|
-
${computedVars}
|
|
740
|
+
${dynLeek}
|
|
850
741
|
}
|
|
851
742
|
|
|
852
743
|
.theme-tomato {
|
|
853
|
-
${
|
|
854
|
-
${computedVars}
|
|
744
|
+
${dynTomato}
|
|
855
745
|
}
|
|
856
746
|
|
|
857
747
|
.theme-salt {
|
|
858
|
-
${
|
|
859
|
-
|
|
748
|
+
${dynSalt}
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
.theme {
|
|
752
|
+
${dynamicComputedVars}
|
|
860
753
|
}
|
|
861
754
|
|
|
862
755
|
html, body {
|
|
@@ -899,28 +792,22 @@ export default function presetAglio({
|
|
|
899
792
|
}
|
|
900
793
|
|
|
901
794
|
.theme-override-lemon {
|
|
902
|
-
${
|
|
903
|
-
${computedVars}
|
|
795
|
+
${dynLemon}
|
|
904
796
|
}
|
|
905
797
|
.theme-override-blueberry {
|
|
906
|
-
${
|
|
907
|
-
${computedVars}
|
|
798
|
+
${dynBlueberry}
|
|
908
799
|
}
|
|
909
800
|
.theme-override-eggplant {
|
|
910
|
-
${
|
|
911
|
-
${computedVars}
|
|
801
|
+
${dynEggplant}
|
|
912
802
|
}
|
|
913
803
|
.theme-override-leek {
|
|
914
|
-
${
|
|
915
|
-
${computedVars}
|
|
804
|
+
${dynLeek}
|
|
916
805
|
}
|
|
917
806
|
.theme-override-tomato {
|
|
918
|
-
${
|
|
919
|
-
${computedVars}
|
|
807
|
+
${dynTomato}
|
|
920
808
|
}
|
|
921
809
|
.theme-override-salt {
|
|
922
|
-
${
|
|
923
|
-
${computedVars}
|
|
810
|
+
${dynSalt}
|
|
924
811
|
}
|
|
925
812
|
}
|
|
926
813
|
|
|
@@ -978,50 +865,6 @@ export default function presetAglio({
|
|
|
978
865
|
};
|
|
979
866
|
}
|
|
980
867
|
|
|
981
|
-
const themeColors = [
|
|
982
|
-
'red',
|
|
983
|
-
'magenta',
|
|
984
|
-
'green',
|
|
985
|
-
'yellow',
|
|
986
|
-
'blue',
|
|
987
|
-
'purple',
|
|
988
|
-
'true-gray',
|
|
989
|
-
];
|
|
990
|
-
function roundTens(num: number) {
|
|
991
|
-
return Math.round(num / 10) * 10;
|
|
992
|
-
}
|
|
993
|
-
function asPaletteValue(num: number) {
|
|
994
|
-
return roundTens(num).toString().padStart(2, '0');
|
|
995
|
-
}
|
|
996
|
-
function generateColors(from: number, to: number) {
|
|
997
|
-
const increment = (to - from) / 4;
|
|
998
|
-
const map = themeColors.reduce(
|
|
999
|
-
(acc, color) => {
|
|
1000
|
-
acc[`--color-${color}-wash`] = `var(--palette-${color}-${asPaletteValue(
|
|
1001
|
-
from,
|
|
1002
|
-
)})`;
|
|
1003
|
-
acc[`--color-${color}-light`] = `var(--palette-${color}-${asPaletteValue(
|
|
1004
|
-
from + roundTens(increment),
|
|
1005
|
-
)})`;
|
|
1006
|
-
acc[`--color-${color}`] = `var(--palette-${color}-${asPaletteValue(
|
|
1007
|
-
from + roundTens(increment * 2),
|
|
1008
|
-
)})`;
|
|
1009
|
-
acc[`--color-${color}-dark`] = `var(--palette-${color}-${asPaletteValue(
|
|
1010
|
-
from + roundTens(increment * 3),
|
|
1011
|
-
)})`;
|
|
1012
|
-
acc[`--color-${color}-ink`] = `var(--palette-${color}-${asPaletteValue(
|
|
1013
|
-
from + roundTens(increment * 4),
|
|
1014
|
-
)})`;
|
|
1015
|
-
return acc;
|
|
1016
|
-
},
|
|
1017
|
-
{} as Record<string, string>,
|
|
1018
|
-
);
|
|
1019
|
-
return Object.entries(map).reduce(
|
|
1020
|
-
(str, [key, value]) => str + `${key}: ${value};\n`,
|
|
1021
|
-
'',
|
|
1022
|
-
);
|
|
1023
|
-
}
|
|
1024
|
-
|
|
1025
868
|
function makeSpacing(increment: number) {
|
|
1026
869
|
return {
|
|
1027
870
|
...new Array(20)
|
|
@@ -1075,85 +918,16 @@ function resolveThemeColor(color: string, theme: any) {
|
|
|
1075
918
|
}
|
|
1076
919
|
|
|
1077
920
|
function lighten(base: string, level: string, saturate?: string) {
|
|
1078
|
-
const levelNum = parseFloat(level) * 0.
|
|
921
|
+
const levelNum = parseFloat(level) * 0.1;
|
|
1079
922
|
const saturateNum = saturate ? parseFloat(saturate) : levelNum / 100;
|
|
1080
|
-
return `
|
|
1081
|
-
1
|
|
1082
|
-
}
|
|
1083
|
-
1
|
|
1084
|
-
}
|
|
923
|
+
return `oklch(from ${base} calc(l + (${
|
|
924
|
+
1 * levelNum
|
|
925
|
+
} * var(--dyn-mode-lighten-mult, 1))) calc(c + (${
|
|
926
|
+
1 * saturateNum
|
|
927
|
+
} * var(--dyn-mode-lighten-mult, 1))) h)`;
|
|
1085
928
|
}
|
|
1086
929
|
|
|
1087
930
|
function darken(base: string, level: string) {
|
|
1088
931
|
const levelNum = parseFloat(level);
|
|
1089
|
-
return lighten(base, (levelNum /
|
|
1090
|
-
}
|
|
1091
|
-
|
|
1092
|
-
function themeVars({
|
|
1093
|
-
primary,
|
|
1094
|
-
accent,
|
|
1095
|
-
grayTweak,
|
|
1096
|
-
globalSaturation,
|
|
1097
|
-
primaryWashSaturation,
|
|
1098
|
-
}: {
|
|
1099
|
-
primary: string | ExplicitColorRange;
|
|
1100
|
-
accent: string | ExplicitColorRange;
|
|
1101
|
-
grayTweak?: number;
|
|
1102
|
-
globalSaturation?: number;
|
|
1103
|
-
primaryWashSaturation?: number;
|
|
1104
|
-
}) {
|
|
1105
|
-
return `
|
|
1106
|
-
${themeVarRange({ name: 'attention', range: 'red' })}
|
|
1107
|
-
${themeVarRange({ name: 'accent', range: accent })}
|
|
1108
|
-
${themeVarRange({
|
|
1109
|
-
name: 'primary',
|
|
1110
|
-
range: primary,
|
|
1111
|
-
washSaturation: primaryWashSaturation,
|
|
1112
|
-
})}
|
|
1113
|
-
|
|
1114
|
-
--gray-hue-tweak: ${grayTweak ?? 0};
|
|
1115
|
-
${
|
|
1116
|
-
globalSaturation !== undefined
|
|
1117
|
-
? `--global-saturation: ${globalSaturation};`
|
|
1118
|
-
: ''
|
|
1119
|
-
}
|
|
1120
|
-
`;
|
|
1121
|
-
}
|
|
1122
|
-
|
|
1123
|
-
type ExplicitColorRange = {
|
|
1124
|
-
default: string;
|
|
1125
|
-
wash: string;
|
|
1126
|
-
light: string;
|
|
1127
|
-
dark: string;
|
|
1128
|
-
ink: string;
|
|
1129
|
-
};
|
|
1130
|
-
function themeVarRange({
|
|
1131
|
-
name,
|
|
1132
|
-
range,
|
|
1133
|
-
washSaturation = 1,
|
|
1134
|
-
}: {
|
|
1135
|
-
name: string;
|
|
1136
|
-
range: string | ExplicitColorRange;
|
|
1137
|
-
washSaturation?: number;
|
|
1138
|
-
}) {
|
|
1139
|
-
const realRange =
|
|
1140
|
-
typeof range === 'string'
|
|
1141
|
-
? {
|
|
1142
|
-
default: range,
|
|
1143
|
-
wash: `${range}-wash`,
|
|
1144
|
-
light: `${range}-light`,
|
|
1145
|
-
dark: `${range}-dark`,
|
|
1146
|
-
ink: `${range}-ink`,
|
|
1147
|
-
}
|
|
1148
|
-
: range;
|
|
1149
|
-
|
|
1150
|
-
return `--color-${name}: var(--color-${realRange.default});
|
|
1151
|
-
--color-${name}-wash: ${
|
|
1152
|
-
washSaturation !== 1
|
|
1153
|
-
? `hsl(from var(--color-${realRange.wash}) h calc(s * ${washSaturation}) l)`
|
|
1154
|
-
: `var(--color-${realRange.wash})`
|
|
1155
|
-
};
|
|
1156
|
-
--color-${name}-light: var(--color-${realRange.light});
|
|
1157
|
-
--color-${name}-dark: var(--color-${realRange.dark});
|
|
1158
|
-
--color-${name}-ink: var(--color-${realRange.ink});`;
|
|
932
|
+
return lighten(base, (-levelNum / 8).toString());
|
|
1159
933
|
}
|