@blockle/blocks-core 0.21.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 +2 -0
- package/dist/config/componentThemes.d.ts +137 -0
- package/dist/config/themeTokens.d.ts +33 -0
- package/dist/css/breakpoint/breakpoint.cjs +15 -0
- package/dist/css/breakpoint/breakpoint.d.ts +9 -0
- package/dist/css/breakpoint/breakpoint.js +15 -0
- package/dist/css/breakpoint/breakpoint.test.d.ts +1 -0
- package/dist/css/layers.css.cjs +8 -0
- package/dist/css/layers.css.d.ts +1 -0
- package/dist/css/layers.css.js +8 -0
- package/dist/css/rem.cjs +6 -0
- package/dist/css/rem.d.ts +1 -0
- package/dist/css/rem.js +6 -0
- package/dist/css/tokens.cjs +82 -0
- package/dist/css/tokens.d.ts +2 -0
- package/dist/css/tokens.js +82 -0
- package/dist/css/vars.css.cjs +10 -0
- package/dist/css/vars.css.d.ts +75 -0
- package/dist/css/vars.css.js +10 -0
- package/dist/index.cjs +37 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.js +37 -0
- package/dist/sprinkles/atomTypes.d.ts +36 -0
- package/dist/sprinkles/atomicProperties.cjs +91 -0
- package/dist/sprinkles/atomicProperties.d.ts +286 -0
- package/dist/sprinkles/atomicProperties.js +91 -0
- package/dist/sprinkles/getAtomsAndProps.cjs +16 -0
- package/dist/sprinkles/getAtomsAndProps.d.ts +2 -0
- package/dist/sprinkles/getAtomsAndProps.js +16 -0
- package/dist/sprinkles/sprinkles.css.cjs +52 -0
- package/dist/sprinkles/sprinkles.css.d.ts +234 -0
- package/dist/sprinkles/sprinkles.css.js +52 -0
- package/dist/theme/makeComponentTheme.cjs +6 -0
- package/dist/theme/makeComponentTheme.d.ts +29 -0
- package/dist/theme/makeComponentTheme.js +6 -0
- package/dist/theme/makeTheme.cjs +13 -0
- package/dist/theme/makeTheme.d.ts +14 -0
- package/dist/theme/makeTheme.js +13 -0
- package/dist/theme/makeVanillaTheme.cjs +20 -0
- package/dist/theme/makeVanillaTheme.d.ts +16 -0
- package/dist/theme/makeVanillaTheme.js +20 -0
- package/dist/theme/theme.d.ts +3 -0
- package/dist/utils/classnames/classnames.cjs +7 -0
- package/dist/utils/classnames/classnames.d.ts +3 -0
- package/dist/utils/classnames/classnames.js +7 -0
- package/dist/utils/classnames/classnames.test.d.ts +1 -0
- package/dist/utils/dom/hasAnimationDuration.cjs +13 -0
- package/dist/utils/dom/hasAnimationDuration.d.ts +4 -0
- package/dist/utils/dom/hasAnimationDuration.js +13 -0
- package/dist/utils/flexbox/flexbox.cjs +17 -0
- package/dist/utils/flexbox/flexbox.d.ts +15 -0
- package/dist/utils/flexbox/flexbox.js +17 -0
- package/dist/utils/math/math.cjs +13 -0
- package/dist/utils/math/math.d.ts +2 -0
- package/dist/utils/math/math.js +13 -0
- package/dist/utils/react/mergeProps.cjs +43 -0
- package/dist/utils/react/mergeProps.d.ts +4 -0
- package/dist/utils/react/mergeProps.js +43 -0
- package/dist/utils/react/refs.cjs +17 -0
- package/dist/utils/react/refs.d.ts +3 -0
- package/dist/utils/react/refs.js +17 -0
- package/dist/utils/typing/helpers.cjs +6 -0
- package/dist/utils/typing/helpers.d.ts +12 -0
- package/dist/utils/typing/helpers.js +6 -0
- package/package.json +45 -0
package/README.md
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Sprinkles } from '../sprinkles/sprinkles.css';
|
|
2
|
+
import { RecordLike } from '../utils/typing/helpers';
|
|
3
|
+
/**
|
|
4
|
+
* Theming options for components.
|
|
5
|
+
*/
|
|
6
|
+
export type ButtonTheme = {
|
|
7
|
+
base: string;
|
|
8
|
+
variants: {
|
|
9
|
+
variant: 'solid' | 'outline' | 'ghost';
|
|
10
|
+
intent: 'neutral' | 'danger';
|
|
11
|
+
size: 'small' | 'medium' | 'large';
|
|
12
|
+
loading: boolean;
|
|
13
|
+
disabled: boolean;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export type LinkTheme = {
|
|
17
|
+
base: string;
|
|
18
|
+
variants: {
|
|
19
|
+
variant: 'inherit' | 'primary' | 'secondary';
|
|
20
|
+
underline: boolean;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export type SpinnerTheme = {
|
|
24
|
+
base: string;
|
|
25
|
+
variants: {
|
|
26
|
+
size: 'small' | 'medium' | 'large';
|
|
27
|
+
color: Exclude<Sprinkles['color'], undefined>;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
export type DividerTheme = {
|
|
31
|
+
base?: string;
|
|
32
|
+
variants: {
|
|
33
|
+
color: Exclude<Sprinkles['color'], undefined>;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
export type DialogTheme = {
|
|
37
|
+
dialog: string;
|
|
38
|
+
variants: {
|
|
39
|
+
size: 'small' | 'medium' | 'large';
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
export type InputTheme = {
|
|
43
|
+
container: string;
|
|
44
|
+
input: string;
|
|
45
|
+
variants: {
|
|
46
|
+
variant: 'solid' | 'outline';
|
|
47
|
+
disabled: boolean;
|
|
48
|
+
required: boolean;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
export type CheckboxTheme = {
|
|
52
|
+
base: string;
|
|
53
|
+
icon: string;
|
|
54
|
+
label: string;
|
|
55
|
+
variants: {
|
|
56
|
+
required: boolean;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
export type RadioTheme = {
|
|
60
|
+
base: string;
|
|
61
|
+
icon: string;
|
|
62
|
+
label: string;
|
|
63
|
+
};
|
|
64
|
+
export type LabelTheme = {
|
|
65
|
+
base: string;
|
|
66
|
+
variants: {
|
|
67
|
+
size: 'small' | 'medium' | 'large';
|
|
68
|
+
required: boolean;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
export type ProgressTheme = {
|
|
72
|
+
base: string;
|
|
73
|
+
bar: string;
|
|
74
|
+
variants: {
|
|
75
|
+
indeterminate: boolean;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
export type SwitchTheme = {
|
|
79
|
+
base: string;
|
|
80
|
+
slider: string;
|
|
81
|
+
};
|
|
82
|
+
export type PopoverTheme = {
|
|
83
|
+
base: string;
|
|
84
|
+
};
|
|
85
|
+
export type SelectTheme = {
|
|
86
|
+
wrapper?: string;
|
|
87
|
+
select: string;
|
|
88
|
+
icon: string;
|
|
89
|
+
variants: {
|
|
90
|
+
variant: 'solid' | 'outline';
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
export type SliderTheme = {
|
|
94
|
+
base: string;
|
|
95
|
+
track: string;
|
|
96
|
+
filledTrack: string;
|
|
97
|
+
thumb: string;
|
|
98
|
+
variants: {
|
|
99
|
+
size: 'small' | 'medium' | 'large';
|
|
100
|
+
colorScheme: 'primary' | 'secondary';
|
|
101
|
+
disabled: boolean;
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
export type TooltipTheme = {
|
|
105
|
+
base: string;
|
|
106
|
+
variants: {
|
|
107
|
+
colorScheme: 'primary' | 'secondary';
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
export type ComponentThemes = {
|
|
111
|
+
button: ButtonTheme;
|
|
112
|
+
checkbox: CheckboxTheme;
|
|
113
|
+
dialog: DialogTheme;
|
|
114
|
+
divider: DividerTheme;
|
|
115
|
+
input: InputTheme;
|
|
116
|
+
label: LabelTheme;
|
|
117
|
+
link: LinkTheme;
|
|
118
|
+
popover: PopoverTheme;
|
|
119
|
+
progress: ProgressTheme;
|
|
120
|
+
radio: RadioTheme;
|
|
121
|
+
select: SelectTheme;
|
|
122
|
+
slider: SliderTheme;
|
|
123
|
+
spinner: SpinnerTheme;
|
|
124
|
+
switch: SwitchTheme;
|
|
125
|
+
tooltip: TooltipTheme;
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* ComponentThemeProps is a helper type to define the props passed to useComponentStyles.
|
|
129
|
+
*/
|
|
130
|
+
export type ComponentThemeProps<T extends RecordLike> = Omit<{
|
|
131
|
+
[K in keyof T]?: Exclude<T[K], undefined> extends string ? boolean : never;
|
|
132
|
+
}, 'variants'> & {
|
|
133
|
+
variants?: T['variants'] extends RecordLike ? Partial<T['variants']> : never;
|
|
134
|
+
};
|
|
135
|
+
export type ComponentThemesProps = {
|
|
136
|
+
[K in keyof ComponentThemes]: ComponentThemeProps<ComponentThemes[K]>;
|
|
137
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
type FontWeight = 'regular' | 'medium' | 'strong';
|
|
2
|
+
type Space = 'none' | 'gutter' | 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
3
|
+
type Transition = 'slow' | 'normal' | 'fast';
|
|
4
|
+
type BorderRadius = 'small' | 'medium' | 'large' | 'xlarge';
|
|
5
|
+
type BorderWidth = 'small' | 'medium' | 'large';
|
|
6
|
+
type BoxShadow = 'small' | 'medium' | 'large';
|
|
7
|
+
type FontSize = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
8
|
+
type LineHeight = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
9
|
+
type Color = 'white' | 'black' | 'body' | 'primaryLight' | 'primary' | 'primaryDark' | 'secondaryLight' | 'secondary' | 'secondaryDark' | 'text' | 'textLight' | 'textDark' | 'danger' | 'link';
|
|
10
|
+
export type ThemeTokens = {
|
|
11
|
+
typography: {
|
|
12
|
+
fontFamily: {
|
|
13
|
+
body?: string;
|
|
14
|
+
primary?: string;
|
|
15
|
+
secondary?: string;
|
|
16
|
+
};
|
|
17
|
+
fontSize: Record<FontSize, number | string>;
|
|
18
|
+
fontWeight: Record<FontWeight, 400 | 500 | 600 | 700 | 800>;
|
|
19
|
+
lineHeight: Record<LineHeight, number | string>;
|
|
20
|
+
};
|
|
21
|
+
spacing: Record<Space, number | string>;
|
|
22
|
+
transition: Record<Transition, string>;
|
|
23
|
+
border: {
|
|
24
|
+
radius: Record<BorderRadius, number | string>;
|
|
25
|
+
width: Record<BorderWidth, number | string>;
|
|
26
|
+
};
|
|
27
|
+
shadow: Record<BoxShadow, string>;
|
|
28
|
+
focus: {
|
|
29
|
+
boxShadow: string;
|
|
30
|
+
};
|
|
31
|
+
color: Record<Color, string>;
|
|
32
|
+
};
|
|
33
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const breakpointNames = ["mobile", "tablet", "desktop", "wide"];
|
|
4
|
+
const breakpoints = {
|
|
5
|
+
mobile: 0,
|
|
6
|
+
tablet: 740,
|
|
7
|
+
desktop: 992,
|
|
8
|
+
wide: 1200
|
|
9
|
+
};
|
|
10
|
+
function minMediaQuery(breakpoint) {
|
|
11
|
+
return `screen and (min-width: ${breakpoints[breakpoint]}px)`;
|
|
12
|
+
}
|
|
13
|
+
exports.breakpointNames = breakpointNames;
|
|
14
|
+
exports.breakpoints = breakpoints;
|
|
15
|
+
exports.minMediaQuery = minMediaQuery;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const breakpointNames: readonly ["mobile", "tablet", "desktop", "wide"];
|
|
2
|
+
export declare const breakpoints: {
|
|
3
|
+
readonly mobile: 0;
|
|
4
|
+
readonly tablet: 740;
|
|
5
|
+
readonly desktop: 992;
|
|
6
|
+
readonly wide: 1200;
|
|
7
|
+
};
|
|
8
|
+
export type Breakpoint = keyof typeof breakpoints;
|
|
9
|
+
export declare function minMediaQuery(breakpoint: Exclude<Breakpoint, 'mobile'>): string;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const breakpointNames = ["mobile", "tablet", "desktop", "wide"];
|
|
2
|
+
const breakpoints = {
|
|
3
|
+
mobile: 0,
|
|
4
|
+
tablet: 740,
|
|
5
|
+
desktop: 992,
|
|
6
|
+
wide: 1200
|
|
7
|
+
};
|
|
8
|
+
function minMediaQuery(breakpoint) {
|
|
9
|
+
return `screen and (min-width: ${breakpoints[breakpoint]}px)`;
|
|
10
|
+
}
|
|
11
|
+
export {
|
|
12
|
+
breakpointNames,
|
|
13
|
+
breakpoints,
|
|
14
|
+
minMediaQuery
|
|
15
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const fileScope = require("@vanilla-extract/css/fileScope");
|
|
4
|
+
const css = require("@vanilla-extract/css");
|
|
5
|
+
fileScope.setFileScope("src/css/layers.css.ts", "@blockle/blocks-core");
|
|
6
|
+
const blocksLayer = css.layer("blockle-blocks");
|
|
7
|
+
fileScope.endFileScope();
|
|
8
|
+
exports.blocksLayer = blocksLayer;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const blocksLayer: string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { setFileScope, endFileScope } from "@vanilla-extract/css/fileScope";
|
|
2
|
+
import { layer } from "@vanilla-extract/css";
|
|
3
|
+
setFileScope("src/css/layers.css.ts", "@blockle/blocks-core");
|
|
4
|
+
const blocksLayer = layer("blockle-blocks");
|
|
5
|
+
endFileScope();
|
|
6
|
+
export {
|
|
7
|
+
blocksLayer
|
|
8
|
+
};
|
package/dist/css/rem.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function rem(value: number): `${number}rem`;
|
package/dist/css/rem.js
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const tokens = {
|
|
4
|
+
typography: {
|
|
5
|
+
fontFamily: {
|
|
6
|
+
body: "Roboto, sans-serif",
|
|
7
|
+
primary: "Roboto, sans-serif",
|
|
8
|
+
secondary: "Roboto, sans-serif"
|
|
9
|
+
},
|
|
10
|
+
fontSize: {
|
|
11
|
+
xsmall: "0.75rem",
|
|
12
|
+
small: "0.875rem",
|
|
13
|
+
medium: "1rem",
|
|
14
|
+
large: "1.125rem",
|
|
15
|
+
xlarge: "1.25rem"
|
|
16
|
+
},
|
|
17
|
+
fontWeight: {
|
|
18
|
+
regular: 400,
|
|
19
|
+
medium: 500,
|
|
20
|
+
strong: 700
|
|
21
|
+
},
|
|
22
|
+
lineHeight: {
|
|
23
|
+
xsmall: "1rem",
|
|
24
|
+
small: "1.25rem",
|
|
25
|
+
medium: "1.5rem",
|
|
26
|
+
large: "1.75rem",
|
|
27
|
+
xlarge: "2rem"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
spacing: {
|
|
31
|
+
none: 0,
|
|
32
|
+
gutter: "1rem",
|
|
33
|
+
xsmall: "0.25rem",
|
|
34
|
+
small: "0.5rem",
|
|
35
|
+
medium: "1rem",
|
|
36
|
+
large: "1.5rem",
|
|
37
|
+
xlarge: "2rem"
|
|
38
|
+
},
|
|
39
|
+
transition: {
|
|
40
|
+
slow: "500ms",
|
|
41
|
+
normal: "300ms",
|
|
42
|
+
fast: "100ms"
|
|
43
|
+
},
|
|
44
|
+
border: {
|
|
45
|
+
radius: {
|
|
46
|
+
small: "0.25rem",
|
|
47
|
+
medium: "0.5rem",
|
|
48
|
+
large: "1rem",
|
|
49
|
+
xlarge: "2rem"
|
|
50
|
+
},
|
|
51
|
+
width: {
|
|
52
|
+
small: "1px",
|
|
53
|
+
medium: "2px",
|
|
54
|
+
large: "4px"
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
shadow: {
|
|
58
|
+
small: "0 1px 2px 0 rgba(0, 0, 0, 0.05)",
|
|
59
|
+
medium: "0 2px 4px 0 rgba(0, 0, 0, 0.05)",
|
|
60
|
+
large: "0 4px 8px 0 rgba(0, 0, 0, 0.05)"
|
|
61
|
+
},
|
|
62
|
+
focus: {
|
|
63
|
+
boxShadow: "0 0 0 2px #AF8EFF"
|
|
64
|
+
},
|
|
65
|
+
color: {
|
|
66
|
+
black: "#000000",
|
|
67
|
+
white: "#ffffff",
|
|
68
|
+
body: "#ffffff",
|
|
69
|
+
primaryLight: "#f5f5f5",
|
|
70
|
+
primary: "#e0e0e0",
|
|
71
|
+
primaryDark: "#aeaeae",
|
|
72
|
+
secondaryLight: "#f5f5f5",
|
|
73
|
+
secondary: "#e0e0e0",
|
|
74
|
+
secondaryDark: "#aeaeae",
|
|
75
|
+
text: "#000000",
|
|
76
|
+
textLight: "#ffffff",
|
|
77
|
+
textDark: "#aeaeae",
|
|
78
|
+
danger: "#ff0000",
|
|
79
|
+
link: "#0000ff"
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
exports.tokens = tokens;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
const tokens = {
|
|
2
|
+
typography: {
|
|
3
|
+
fontFamily: {
|
|
4
|
+
body: "Roboto, sans-serif",
|
|
5
|
+
primary: "Roboto, sans-serif",
|
|
6
|
+
secondary: "Roboto, sans-serif"
|
|
7
|
+
},
|
|
8
|
+
fontSize: {
|
|
9
|
+
xsmall: "0.75rem",
|
|
10
|
+
small: "0.875rem",
|
|
11
|
+
medium: "1rem",
|
|
12
|
+
large: "1.125rem",
|
|
13
|
+
xlarge: "1.25rem"
|
|
14
|
+
},
|
|
15
|
+
fontWeight: {
|
|
16
|
+
regular: 400,
|
|
17
|
+
medium: 500,
|
|
18
|
+
strong: 700
|
|
19
|
+
},
|
|
20
|
+
lineHeight: {
|
|
21
|
+
xsmall: "1rem",
|
|
22
|
+
small: "1.25rem",
|
|
23
|
+
medium: "1.5rem",
|
|
24
|
+
large: "1.75rem",
|
|
25
|
+
xlarge: "2rem"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
spacing: {
|
|
29
|
+
none: 0,
|
|
30
|
+
gutter: "1rem",
|
|
31
|
+
xsmall: "0.25rem",
|
|
32
|
+
small: "0.5rem",
|
|
33
|
+
medium: "1rem",
|
|
34
|
+
large: "1.5rem",
|
|
35
|
+
xlarge: "2rem"
|
|
36
|
+
},
|
|
37
|
+
transition: {
|
|
38
|
+
slow: "500ms",
|
|
39
|
+
normal: "300ms",
|
|
40
|
+
fast: "100ms"
|
|
41
|
+
},
|
|
42
|
+
border: {
|
|
43
|
+
radius: {
|
|
44
|
+
small: "0.25rem",
|
|
45
|
+
medium: "0.5rem",
|
|
46
|
+
large: "1rem",
|
|
47
|
+
xlarge: "2rem"
|
|
48
|
+
},
|
|
49
|
+
width: {
|
|
50
|
+
small: "1px",
|
|
51
|
+
medium: "2px",
|
|
52
|
+
large: "4px"
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
shadow: {
|
|
56
|
+
small: "0 1px 2px 0 rgba(0, 0, 0, 0.05)",
|
|
57
|
+
medium: "0 2px 4px 0 rgba(0, 0, 0, 0.05)",
|
|
58
|
+
large: "0 4px 8px 0 rgba(0, 0, 0, 0.05)"
|
|
59
|
+
},
|
|
60
|
+
focus: {
|
|
61
|
+
boxShadow: "0 0 0 2px #AF8EFF"
|
|
62
|
+
},
|
|
63
|
+
color: {
|
|
64
|
+
black: "#000000",
|
|
65
|
+
white: "#ffffff",
|
|
66
|
+
body: "#ffffff",
|
|
67
|
+
primaryLight: "#f5f5f5",
|
|
68
|
+
primary: "#e0e0e0",
|
|
69
|
+
primaryDark: "#aeaeae",
|
|
70
|
+
secondaryLight: "#f5f5f5",
|
|
71
|
+
secondary: "#e0e0e0",
|
|
72
|
+
secondaryDark: "#aeaeae",
|
|
73
|
+
text: "#000000",
|
|
74
|
+
textLight: "#ffffff",
|
|
75
|
+
textDark: "#aeaeae",
|
|
76
|
+
danger: "#ff0000",
|
|
77
|
+
link: "#0000ff"
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
export {
|
|
81
|
+
tokens
|
|
82
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const fileScope = require("@vanilla-extract/css/fileScope");
|
|
4
|
+
const css = require("@vanilla-extract/css");
|
|
5
|
+
const makeVanillaTheme = require("../theme/makeVanillaTheme.cjs");
|
|
6
|
+
const tokens = require("./tokens.cjs");
|
|
7
|
+
fileScope.setFileScope("src/css/vars.css.ts", "@blockle/blocks-core");
|
|
8
|
+
const vars = css.createThemeContract(makeVanillaTheme.makeVanillaTheme(tokens.tokens));
|
|
9
|
+
fileScope.endFileScope();
|
|
10
|
+
exports.vars = vars;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
export declare const vars: {
|
|
2
|
+
space: {
|
|
3
|
+
medium: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
4
|
+
none: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
5
|
+
gutter: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
6
|
+
xsmall: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
7
|
+
small: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
8
|
+
large: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
9
|
+
xlarge: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
10
|
+
};
|
|
11
|
+
borderRadius: {
|
|
12
|
+
medium: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
13
|
+
small: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
14
|
+
large: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
15
|
+
xlarge: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
16
|
+
};
|
|
17
|
+
color: {
|
|
18
|
+
white: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
19
|
+
black: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
20
|
+
body: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
21
|
+
primaryLight: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
22
|
+
primary: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
23
|
+
primaryDark: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
24
|
+
secondaryLight: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
25
|
+
secondary: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
26
|
+
secondaryDark: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
27
|
+
text: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
28
|
+
textLight: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
29
|
+
textDark: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
30
|
+
danger: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
31
|
+
link: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
32
|
+
};
|
|
33
|
+
borderWidth: {
|
|
34
|
+
medium: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
35
|
+
small: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
36
|
+
large: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
37
|
+
};
|
|
38
|
+
fontFamily: {
|
|
39
|
+
body: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
40
|
+
primary: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
41
|
+
secondary: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
42
|
+
};
|
|
43
|
+
fontSize: {
|
|
44
|
+
medium: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
45
|
+
xsmall: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
46
|
+
small: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
47
|
+
large: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
48
|
+
xlarge: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
49
|
+
};
|
|
50
|
+
fontWeight: {
|
|
51
|
+
regular: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
52
|
+
medium: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
53
|
+
strong: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
54
|
+
};
|
|
55
|
+
lineHeight: {
|
|
56
|
+
medium: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
57
|
+
xsmall: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
58
|
+
small: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
59
|
+
large: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
60
|
+
xlarge: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
61
|
+
};
|
|
62
|
+
transition: {
|
|
63
|
+
slow: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
64
|
+
normal: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
65
|
+
fast: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
66
|
+
};
|
|
67
|
+
shadow: {
|
|
68
|
+
medium: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
69
|
+
small: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
70
|
+
large: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
71
|
+
};
|
|
72
|
+
focus: {
|
|
73
|
+
boxShadow: `var(--${string})` | `var(--${string}, ${string})` | `var(--${string}, ${number})`;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { setFileScope, endFileScope } from "@vanilla-extract/css/fileScope";
|
|
2
|
+
import { createThemeContract } from "@vanilla-extract/css";
|
|
3
|
+
import { makeVanillaTheme } from "../theme/makeVanillaTheme.js";
|
|
4
|
+
import { tokens } from "./tokens.js";
|
|
5
|
+
setFileScope("src/css/vars.css.ts", "@blockle/blocks-core");
|
|
6
|
+
const vars = createThemeContract(makeVanillaTheme(tokens));
|
|
7
|
+
endFileScope();
|
|
8
|
+
export {
|
|
9
|
+
vars
|
|
10
|
+
};
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const breakpoint = require("./css/breakpoint/breakpoint.cjs");
|
|
4
|
+
const layers_css = require("./css/layers.css.cjs");
|
|
5
|
+
const rem = require("./css/rem.cjs");
|
|
6
|
+
const vars_css = require("./css/vars.css.cjs");
|
|
7
|
+
const atomicProperties = require("./sprinkles/atomicProperties.cjs");
|
|
8
|
+
const getAtomsAndProps = require("./sprinkles/getAtomsAndProps.cjs");
|
|
9
|
+
const sprinkles_css = require("./sprinkles/sprinkles.css.cjs");
|
|
10
|
+
const makeComponentTheme = require("./theme/makeComponentTheme.cjs");
|
|
11
|
+
const makeTheme = require("./theme/makeTheme.cjs");
|
|
12
|
+
const classnames = require("./utils/classnames/classnames.cjs");
|
|
13
|
+
const hasAnimationDuration = require("./utils/dom/hasAnimationDuration.cjs");
|
|
14
|
+
const flexbox = require("./utils/flexbox/flexbox.cjs");
|
|
15
|
+
const math = require("./utils/math/math.cjs");
|
|
16
|
+
const mergeProps = require("./utils/react/mergeProps.cjs");
|
|
17
|
+
const refs = require("./utils/react/refs.cjs");
|
|
18
|
+
const helpers = require("./utils/typing/helpers.cjs");
|
|
19
|
+
exports.minMediaQuery = breakpoint.minMediaQuery;
|
|
20
|
+
exports.blocksLayer = layers_css.blocksLayer;
|
|
21
|
+
exports.rem = rem.rem;
|
|
22
|
+
exports.vars = vars_css.vars;
|
|
23
|
+
exports.responsiveProperties = atomicProperties.responsiveProperties;
|
|
24
|
+
exports.unresponsiveProperties = atomicProperties.unresponsiveProperties;
|
|
25
|
+
exports.getAtomsAndProps = getAtomsAndProps.getAtomsAndProps;
|
|
26
|
+
exports.sprinkles = sprinkles_css.sprinkles;
|
|
27
|
+
exports.makeComponentTheme = makeComponentTheme.makeComponentTheme;
|
|
28
|
+
exports.makeTheme = makeTheme.makeTheme;
|
|
29
|
+
exports.classnames = classnames.classnames;
|
|
30
|
+
exports.hasAnimationDuration = hasAnimationDuration.hasAnimationDuration;
|
|
31
|
+
exports.alignItemsMap = flexbox.alignItemsMap;
|
|
32
|
+
exports.justifyContentMap = flexbox.justifyContentMap;
|
|
33
|
+
exports.getBoundValue = math.getBoundValue;
|
|
34
|
+
exports.roundToPrecision = math.roundToPrecision;
|
|
35
|
+
exports.mergeProps = mergeProps.mergeProps;
|
|
36
|
+
exports.composeRefs = refs.composeRefs;
|
|
37
|
+
exports.isObjectLike = helpers.isObjectLike;
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type { ComponentThemes, ComponentThemesProps, } from './config/componentThemes';
|
|
2
|
+
export type { ThemeTokens } from './config/themeTokens';
|
|
3
|
+
export { minMediaQuery } from './css/breakpoint/breakpoint';
|
|
4
|
+
export { blocksLayer } from './css/layers.css';
|
|
5
|
+
export { rem } from './css/rem';
|
|
6
|
+
export { vars } from './css/vars.css';
|
|
7
|
+
export { responsiveProperties, unresponsiveProperties, } from './sprinkles/atomicProperties';
|
|
8
|
+
export type { MarginSprinkles, PaddingSprinkles, ResponsiveDisplayFlex, ResponsiveValue, TextSprinkles, } from './sprinkles/atomTypes';
|
|
9
|
+
export { getAtomsAndProps } from './sprinkles/getAtomsAndProps';
|
|
10
|
+
export { sprinkles, type Sprinkles } from './sprinkles/sprinkles.css';
|
|
11
|
+
export { makeComponentTheme } from './theme/makeComponentTheme';
|
|
12
|
+
export type { ComponentTheme, ThemeComponentsStyles, } from './theme/makeComponentTheme';
|
|
13
|
+
export { makeTheme } from './theme/makeTheme';
|
|
14
|
+
export type { Theme } from './theme/makeTheme';
|
|
15
|
+
export { classnames } from './utils/classnames/classnames';
|
|
16
|
+
export { hasAnimationDuration } from './utils/dom/hasAnimationDuration';
|
|
17
|
+
export { alignItemsMap, justifyContentMap, type AlignItemsMap, type JustifyContentMap, } from './utils/flexbox/flexbox';
|
|
18
|
+
export { getBoundValue, roundToPrecision } from './utils/math/math';
|
|
19
|
+
export { mergeProps } from './utils/react/mergeProps';
|
|
20
|
+
export { composeRefs } from './utils/react/refs';
|
|
21
|
+
export { isObjectLike, type AnyString, type HTMLElementProps, type IsNumberUnion, type IsStringUnion, type IsUnion, type OptionalLiteral, type RecordLike, } from './utils/typing/helpers';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { minMediaQuery } from "./css/breakpoint/breakpoint.js";
|
|
2
|
+
import { blocksLayer } from "./css/layers.css.js";
|
|
3
|
+
import { rem } from "./css/rem.js";
|
|
4
|
+
import { vars } from "./css/vars.css.js";
|
|
5
|
+
import { responsiveProperties, unresponsiveProperties } from "./sprinkles/atomicProperties.js";
|
|
6
|
+
import { getAtomsAndProps } from "./sprinkles/getAtomsAndProps.js";
|
|
7
|
+
import { sprinkles } from "./sprinkles/sprinkles.css.js";
|
|
8
|
+
import { makeComponentTheme } from "./theme/makeComponentTheme.js";
|
|
9
|
+
import { makeTheme } from "./theme/makeTheme.js";
|
|
10
|
+
import { classnames } from "./utils/classnames/classnames.js";
|
|
11
|
+
import { hasAnimationDuration } from "./utils/dom/hasAnimationDuration.js";
|
|
12
|
+
import { alignItemsMap, justifyContentMap } from "./utils/flexbox/flexbox.js";
|
|
13
|
+
import { getBoundValue, roundToPrecision } from "./utils/math/math.js";
|
|
14
|
+
import { mergeProps } from "./utils/react/mergeProps.js";
|
|
15
|
+
import { composeRefs } from "./utils/react/refs.js";
|
|
16
|
+
import { isObjectLike } from "./utils/typing/helpers.js";
|
|
17
|
+
export {
|
|
18
|
+
alignItemsMap,
|
|
19
|
+
blocksLayer,
|
|
20
|
+
classnames,
|
|
21
|
+
composeRefs,
|
|
22
|
+
getAtomsAndProps,
|
|
23
|
+
getBoundValue,
|
|
24
|
+
hasAnimationDuration,
|
|
25
|
+
isObjectLike,
|
|
26
|
+
justifyContentMap,
|
|
27
|
+
makeComponentTheme,
|
|
28
|
+
makeTheme,
|
|
29
|
+
mergeProps,
|
|
30
|
+
minMediaQuery,
|
|
31
|
+
rem,
|
|
32
|
+
responsiveProperties,
|
|
33
|
+
roundToPrecision,
|
|
34
|
+
sprinkles,
|
|
35
|
+
unresponsiveProperties,
|
|
36
|
+
vars
|
|
37
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Sprinkles } from './sprinkles.css';
|
|
2
|
+
export type ResponsiveValue<T> = T | [T] | [T, T] | [T, T, T] | [T, T, T, T];
|
|
3
|
+
export type ResponsiveDisplayFlex = ResponsiveValue<'none' | 'flex' | 'inline-flex'>;
|
|
4
|
+
export type MarginSprinkles = {
|
|
5
|
+
margin?: Sprinkles['margin'];
|
|
6
|
+
marginBlock?: Sprinkles['marginBlock'];
|
|
7
|
+
marginBlockStart?: Sprinkles['marginBlockStart'];
|
|
8
|
+
marginBlockEnd?: Sprinkles['marginBlockEnd'];
|
|
9
|
+
marginInline?: Sprinkles['marginInline'];
|
|
10
|
+
marginInlineStart?: Sprinkles['marginInlineStart'];
|
|
11
|
+
marginInlineEnd?: Sprinkles['marginInlineEnd'];
|
|
12
|
+
};
|
|
13
|
+
export type PaddingSprinkles = {
|
|
14
|
+
padding?: Sprinkles['padding'];
|
|
15
|
+
paddingBlock?: Sprinkles['paddingBlock'];
|
|
16
|
+
paddingBlockStart?: Sprinkles['paddingBlockStart'];
|
|
17
|
+
paddingBlockEnd?: Sprinkles['paddingBlockEnd'];
|
|
18
|
+
paddingInline?: Sprinkles['paddingInline'];
|
|
19
|
+
paddingInlineStart?: Sprinkles['paddingInlineStart'];
|
|
20
|
+
paddingInlineEnd?: Sprinkles['paddingInlineEnd'];
|
|
21
|
+
};
|
|
22
|
+
export type TextSprinkles = {
|
|
23
|
+
color?: Sprinkles['color'];
|
|
24
|
+
fontFamily?: Sprinkles['fontFamily'];
|
|
25
|
+
fontSize?: Sprinkles['fontSize'];
|
|
26
|
+
fontStyle?: Sprinkles['fontStyle'];
|
|
27
|
+
fontWeight?: Sprinkles['fontWeight'];
|
|
28
|
+
lineHeight?: Sprinkles['lineHeight'];
|
|
29
|
+
textAlign?: Sprinkles['textAlign'];
|
|
30
|
+
textDecoration?: Sprinkles['textDecoration'];
|
|
31
|
+
textTransform?: Sprinkles['textTransform'];
|
|
32
|
+
textWrap?: Sprinkles['textWrap'];
|
|
33
|
+
whiteSpace?: Sprinkles['whiteSpace'];
|
|
34
|
+
wordBreak?: Sprinkles['wordBreak'];
|
|
35
|
+
wordWrap?: Sprinkles['wordWrap'];
|
|
36
|
+
};
|