@birdycom/omniacss 0.0.0-stage → 0.11.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/LICENSE +21 -0
- package/README.md +43 -2
- package/dist/oc-colors.css +4429 -0
- package/dist/oc-theme.css +69 -0
- package/dist/omnia.css +465435 -0
- package/dist/omnia.min.css +2 -0
- package/dist/omnia.starter.css +13459 -0
- package/dist/omnia.starter.min.css +1 -0
- package/dist/tokens/omnia.dtcg.json +1496 -0
- package/dist/tokens/omnia.tokens.json +580 -0
- package/dist/tokens/omnia_tokens.py +189 -0
- package/package.json +61 -4
- package/scss/base/_reset.scss +88 -0
- package/scss/config/omniacss.config.scss +114 -0
- package/scss/config/omniacss.fonts.scss +34 -0
- package/scss/functions/_functions.scss +407 -0
- package/scss/json/html-colors.json +1998 -0
- package/scss/json/omnia-colors.json +500 -0
- package/scss/json/ral-colors.json +3430 -0
- package/scss/layout/_media_query.scss +18 -0
- package/scss/omnia_colors.scss +7 -0
- package/scss/omnia_main.scss +143 -0
- package/scss/profiles/omnia_main.hsl.scss +12 -0
- package/scss/profiles/omnia_main.oklab.scss +12 -0
- package/scss/profiles/omnia_main.oklch.scss +12 -0
- package/scss/utilities/_accessibility.scss +42 -0
- package/scss/utilities/_alignment.scss +861 -0
- package/scss/utilities/_anchor_positioning.scss +65 -0
- package/scss/utilities/_animation_properties.scss +143 -0
- package/scss/utilities/_aspect.scss +73 -0
- package/scss/utilities/_backgrounds.scss +49 -0
- package/scss/utilities/_borders_extended.scss +97 -0
- package/scss/utilities/_borders_outlines.scss +161 -0
- package/scss/utilities/_clamp.scss +111 -0
- package/scss/utilities/_colors_html.scss +341 -0
- package/scss/utilities/_colors_mix.scss +84 -0
- package/scss/utilities/_colors_omnia.scss +315 -0
- package/scss/utilities/_colors_ral.scss +151 -0
- package/scss/utilities/_colors_tokens.scss +87 -0
- package/scss/utilities/_container.scss +58 -0
- package/scss/utilities/_containment.scss +82 -0
- package/scss/utilities/_corner_shape.scss +30 -0
- package/scss/utilities/_css_functions.scss +34 -0
- package/scss/utilities/_dark_mode.scss +117 -0
- package/scss/utilities/_display.scss +58 -0
- package/scss/utilities/_drop_shadow_colors.scss +26 -0
- package/scss/utilities/_effects.scss +50 -0
- package/scss/utilities/_effects_advanced.scss +102 -0
- package/scss/utilities/_experimental_css.scss +149 -0
- package/scss/utilities/_filters.scss +89 -0
- package/scss/utilities/_flexbox.scss +318 -0
- package/scss/utilities/_font_variants.scss +139 -0
- package/scss/utilities/_fonts.scss +276 -0
- package/scss/utilities/_gap.scss +104 -0
- package/scss/utilities/_gradient_stops.scss +48 -0
- package/scss/utilities/_gradients.scss +99 -0
- package/scss/utilities/_grid.scss +673 -0
- package/scss/utilities/_index.scss +22 -0
- package/scss/utilities/_interactivity.scss +198 -0
- package/scss/utilities/_layering.scss +24 -0
- package/scss/utilities/_layout_extras.scss +171 -0
- package/scss/utilities/_layout_flow.scss +210 -0
- package/scss/utilities/_mask_extras.scss +62 -0
- package/scss/utilities/_motion_transforms.scss +167 -0
- package/scss/utilities/_overflow.scss +41 -0
- package/scss/utilities/_position.scss +49 -0
- package/scss/utilities/_responsive.scss +272 -0
- package/scss/utilities/_scroll_animations.scss +80 -0
- package/scss/utilities/_scroll_spacing.scss +33 -0
- package/scss/utilities/_scrollbar.scss +49 -0
- package/scss/utilities/_shadow_tokens.scss +21 -0
- package/scss/utilities/_shapes.scss +72 -0
- package/scss/utilities/_sizing.scss +458 -0
- package/scss/utilities/_sizing_logical.scss +99 -0
- package/scss/utilities/_space_divide.scss +85 -0
- package/scss/utilities/_spacing_margin.scss +199 -0
- package/scss/utilities/_spacing_padding.scss +195 -0
- package/scss/utilities/_starting_style.scss +53 -0
- package/scss/utilities/_state_variants.scss +196 -0
- package/scss/utilities/_svg.scss +100 -0
- package/scss/utilities/_table.scss +46 -0
- package/scss/utilities/_table_advanced.scss +19 -0
- package/scss/utilities/_text.scss +1331 -0
- package/scss/utilities/_transforms_3d.scss +76 -0
- package/scss/utilities/_typography_advanced.scss +124 -0
- package/scss/utilities/_typography_modern.scss +83 -0
- package/scss/utilities/_view_transitions.scss +64 -0
- package/scss/utilities/_writing_modes.scss +72 -0
- package/scss/variables/_color_tone.scss +39 -0
- package/scss/variables/_hulp.scss +108 -0
- package/scss/variables/_mixins.scss +40 -0
- package/scss/variables/_modifiers.scss +32 -0
- package/scss/variables/_variables.scss +302 -0
- package/scss/variables/_variables_colors_html.scss +2019 -0
- package/scss/variables/_variables_colors_omnia.scss +465 -0
- package/scss/variables/_variables_colors_ral.scss +3472 -0
- package/scss/variables/_variables_effects.scss +109 -0
- package/scss/variables/_variables_flex_grid.scss +427 -0
- package/scss/variables/_variables_layout.scss +591 -0
- package/scss/variables/_variables_typography.scss +550 -0
- package/src/engine.mjs +258 -0
- package/src/postcss.mjs +43 -0
- package/src/starter-classes.mjs +124 -0
- package/src/tokens.mjs +377 -0
- package/src/variants.mjs +278 -0
- package/tokens/semantic.json +80 -0
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
// SCSS Document
|
|
2
|
+
// File: src/utilities/_fonts.scss
|
|
3
|
+
// Description: fonts properties
|
|
4
|
+
// Copyright: 2021-2022 Birdycom
|
|
5
|
+
// Autor: Serge Cools
|
|
6
|
+
// Version: 0.2.0
|
|
7
|
+
// Framework: OmniaCSS
|
|
8
|
+
// Properties: fontsize, fontstyle
|
|
9
|
+
// Values: value in rem,
|
|
10
|
+
|
|
11
|
+
@use '../utilities/' as *;
|
|
12
|
+
|
|
13
|
+
/* The font family property */
|
|
14
|
+
|
|
15
|
+
///
|
|
16
|
+
/// The fontfamily property specifies the font style for a text.
|
|
17
|
+
/// @group FontFamily
|
|
18
|
+
/// @name fontfamily
|
|
19
|
+
/// @link src/scss/utilities/_fonts.scss
|
|
20
|
+
/// @since 1.0.0
|
|
21
|
+
/// @author Serge Cools
|
|
22
|
+
///
|
|
23
|
+
/// @require $fontfamily
|
|
24
|
+
/// @example scss - fontfamily class
|
|
25
|
+
/// @each $fontfamily-prop, $fontfamily-value in $fontfamily {
|
|
26
|
+
/// .#{$fontfamily-prop} {
|
|
27
|
+
/// font-family: $fontfamily-value;
|
|
28
|
+
/// }
|
|
29
|
+
/// }
|
|
30
|
+
/// @example html - use the fontfamily class
|
|
31
|
+
/// <div class="container">
|
|
32
|
+
/// <p class="font-normal font-1">fontfamily: "Roboto Flex", sans-serif</p>
|
|
33
|
+
/// <p class="font-roboto font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
34
|
+
/// <p class="font-normal font-1">fontfamily: "Source Sans Pro", sans-serif</p>
|
|
35
|
+
/// <p class="font-source font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
36
|
+
/// <p class="font-normal font-1">fontfamily: Times, "Times New Roman", Georgia, serif</p>
|
|
37
|
+
/// <p class="font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
38
|
+
/// <p class="font-normal font-1">fontfamily: Verdana, Arial, Helvetica, sans-serif</p>
|
|
39
|
+
/// <p class="font-sansserif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
40
|
+
/// <p class="font-normal font-1">fontfamily: "Lucida Console", Courier, monospace</p>
|
|
41
|
+
/// <p class="font-monospace font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
42
|
+
/// <p class="font-normal font-1">fontfamily: cursive</p>
|
|
43
|
+
/// <p class="font-cursive font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
44
|
+
/// <p class="font-normal font-1">fontfamily: fantasy</p>
|
|
45
|
+
/// <p class="font-fantasy font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
46
|
+
/// <p class="font-normal font-1">fontfamily: Noto emoji</p>
|
|
47
|
+
/// <p class="font-emoji font-1.5">🥰💀✌️🌴🐢🐐🍄⚽🍻👑📸😬👀🚨🏡🕊️🏆😻🌟🧿🍀🎨🍜</p>
|
|
48
|
+
/// <p class="font-normal font-1">fontfamily: Noto color emoji</p>
|
|
49
|
+
/// <p class="font-coloremoji font-1.5">🥰💀✌️🌴🐢🐐🍄⚽🍻👑📸😬👀🚨🏡🕊️🏆😻🌟🧿🍀🎨🍜</p>
|
|
50
|
+
/// <p class="font-normal font-1">fontfamily: Noto Sans Math</p>
|
|
51
|
+
/// <p class="font-math font-1.5">𝞉𝞩𝟃𞻰⟥⦀⦁ 𝚢𝚣𝚤𝖿𝗀𝗁𝗂 𝑻𝑼𝑽𝗔𝗕𝗖𝗗 ϑϕϰϱϵℊℎ ⊰⊱⊲⊳⊴⊵⫕ 𞹴𞹵𞹶𞹷𞹹𞹺𞹻±</p>
|
|
52
|
+
/// <p class="font-normal font-1">fontfamily: fangsong</p>
|
|
53
|
+
/// <p class="font-fangsong font-1.5">人類社会のすべての構成員の固有の尊厳と平等で譲ることのできない権利とを承認することは</p>
|
|
54
|
+
/// <p class="font-normal font-1">fontfamily: Noto Sans Egyptian Hieroglyphs</p>
|
|
55
|
+
/// <p class="font-hieroglyphs font-2.5">𓂧𓌅 𓉗𓇯 𓃾𓂝𓏴𓌅𓀠 𓀠𓃻𓏲𓏴𓃾 𓇯𓂋𓃾𓌓 𓂋𓏲𓁶𓁹𓂝𓃾 𓉐𓂝𓇯 𓇯 𓉐𓂝𓏴 𓇯𓂝𓆓𓃾 𓃻𓃾 𓁹𓉐𓇯𓏲𓂝𓏴𓃾 𓌅𓃾 𓃾𓆓𓌓𓂝𓃾 𓇯𓂋𓂝𓌓𓂝 𓏲𓂝𓇯𓃾 𓇯𓁶𓃻𓉐𓌅 𓇯𓏭𓇯𓃻𓃾 𓌓𓁶𓌓𓆓𓂝𓃾</p>
|
|
56
|
+
/// </div>
|
|
57
|
+
@each $fontfamily-prop, $fontfamily-value in $fontfamily {
|
|
58
|
+
|
|
59
|
+
// fontfamily
|
|
60
|
+
|
|
61
|
+
.#{$fontfamily-prop} {
|
|
62
|
+
|
|
63
|
+
font-family: $fontfamily-value;
|
|
64
|
+
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
.test:before {
|
|
69
|
+
content: "\13000";
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/* The font size property */
|
|
73
|
+
|
|
74
|
+
///
|
|
75
|
+
/// The fontsize property specifies the height of the fonts.
|
|
76
|
+
/// @group FontSize
|
|
77
|
+
/// @name fontsize
|
|
78
|
+
/// @link src/scss/utilities/_fonts.scss
|
|
79
|
+
/// @since 1.0.0
|
|
80
|
+
/// @author Serge Cools
|
|
81
|
+
///
|
|
82
|
+
/// @require $fontsize
|
|
83
|
+
/// @example scss - fontsize class
|
|
84
|
+
/// @each $fontsize-prop, $fontsize-value in $fontsize {
|
|
85
|
+
/// .#{$fontsize-prop} {
|
|
86
|
+
/// font-size: $fontsize-value;
|
|
87
|
+
/// }
|
|
88
|
+
/// }
|
|
89
|
+
/// @example html - use the fontsize class
|
|
90
|
+
/// <div class="container">
|
|
91
|
+
/// <p class="font-normal font-1">fontsize: 0.625rem - 10px</p>
|
|
92
|
+
/// <p class="font-0.6">The quick brown fox jumps over the lazy dog.</p>
|
|
93
|
+
/// <p class="font-normal font-1">fontsize: 0.75 - 12px</p>
|
|
94
|
+
/// <p class="font-0.7">The quick brown fox jumps over the lazy dog.</p>
|
|
95
|
+
/// <p class="font-normal font-1">fontsize: 0.875 - 14px</p>
|
|
96
|
+
/// <p class="font-0.8">The quick brown fox jumps over the lazy dog.</p>
|
|
97
|
+
/// <p class="font-normal font-1">fontsize: 1rem - 16px</p>
|
|
98
|
+
/// <p class="font-1">The quick brown fox jumps over the lazy dog.</p>
|
|
99
|
+
/// <p class="font-normal font-1">fontsize: 1.125rem - 18px</p>
|
|
100
|
+
/// <p class="font-1.1">The quick brown fox jumps over the lazy dog.</p>
|
|
101
|
+
/// <p class="font-normal font-1">fontsize: 1.25rem - 20px</p>
|
|
102
|
+
/// <p class="font-1.2">The quick brown fox jumps over the lazy dog.</p>
|
|
103
|
+
/// <p class="font-normal font-1">fontsize: 1.5rem - 24px</p>
|
|
104
|
+
/// <p class="font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
105
|
+
/// <p class="font-normal font-1">fontsize: 1.75rem - 28px</p>
|
|
106
|
+
/// <p class="font-1.7">The quick brown fox jumps over the lazy dog.</p>
|
|
107
|
+
/// <p class="font-normal font-1">fontsize: 1.875rem - 30px</p>
|
|
108
|
+
/// <p class="font-1.8">The quick brown fox jumps over the lazy dog.</p>
|
|
109
|
+
/// <p class="font-normal font-1">fontsize: 2rem - 30px</p>
|
|
110
|
+
/// <p class="font-2">The quick brown fox jumps over the lazy dog.</p>
|
|
111
|
+
/// <p class="font-normal font-1">fontsize: 2.5rem - 40px</p>
|
|
112
|
+
/// <p class="font-2.5">The quick brown fox jumps over the lazy dog.</p>
|
|
113
|
+
/// <p class="font-normal font-1">fontsize: 3rem - 48px</p>
|
|
114
|
+
/// <p class="font-3">The quick brown fox jumps over the lazy dog.</p>
|
|
115
|
+
/// <p class="font-normal font-1">fontsize: 4rem - 64px</p>
|
|
116
|
+
/// <p class="font-4">The quick brown fox jumps over the lazy dog.</p>
|
|
117
|
+
/// <p class="font-normal font-1">fontsize: 5rem - 80px</p>
|
|
118
|
+
/// <p class="font-5">The quick brown fox jumps over the lazy dog.</p>
|
|
119
|
+
/// <p class="font-normal font-1">fontsize: 6rem - 96px</p>
|
|
120
|
+
/// <p class="font-6">The quick brown fox jumps over the lazy dog.</p>
|
|
121
|
+
/// <p class="font-normal font-1">fontsize: 7rem - 112px</p>
|
|
122
|
+
/// <p class="font-7">The quick brown fox jumps over the lazy dog.</p>
|
|
123
|
+
/// <p class="font-normal font-1">fontsize: 8rem - 128px</p>
|
|
124
|
+
/// <p class="font-8">The quick brown fox jumps over the lazy dog.</p>
|
|
125
|
+
/// </div>
|
|
126
|
+
@each $fontsize-prop, $fontsize-value in $fontsize {
|
|
127
|
+
|
|
128
|
+
// fontsize
|
|
129
|
+
|
|
130
|
+
.#{$fontsize-prop} {
|
|
131
|
+
|
|
132
|
+
font-size: $fontsize-value;
|
|
133
|
+
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
/* The font style property */
|
|
137
|
+
|
|
138
|
+
///
|
|
139
|
+
/// The fontstyle property specifies the font style for a text.
|
|
140
|
+
/// @group FontStyle
|
|
141
|
+
/// @name fontstyle
|
|
142
|
+
/// @link src/scss/utilities/_fonts.scss
|
|
143
|
+
/// @since 1.0.0
|
|
144
|
+
/// @author Serge Cools
|
|
145
|
+
///
|
|
146
|
+
/// @require $fontstyle
|
|
147
|
+
/// @example scss - fontstyle class
|
|
148
|
+
/// @each $fontstyle-prop, $fontstyle-value in $fontstyle {
|
|
149
|
+
/// .#{$fontstyle-prop} {
|
|
150
|
+
/// font-size: $fontstyle-value;
|
|
151
|
+
/// }
|
|
152
|
+
/// }
|
|
153
|
+
/// @example html - use the fontstyle class
|
|
154
|
+
/// <div class="container">
|
|
155
|
+
/// <p class="font-normal font-1">fontstyle: normal</p>
|
|
156
|
+
/// <p class="font-normal font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
157
|
+
/// <p class="font-normal font-1">fontstyle: italic</p>
|
|
158
|
+
/// <p class="font-italic font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
159
|
+
/// <p class="font-normal font-1">fontstyle: oblique</p>
|
|
160
|
+
/// <p class="font-oblique font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
161
|
+
/// </div>
|
|
162
|
+
@each $fontstyle-prop, $fontstyle-value in $fontstyle {
|
|
163
|
+
|
|
164
|
+
// fontstyle
|
|
165
|
+
|
|
166
|
+
.#{$fontstyle-prop} {
|
|
167
|
+
|
|
168
|
+
font-style: $fontstyle-value;
|
|
169
|
+
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
/* The font weight property */
|
|
174
|
+
|
|
175
|
+
///
|
|
176
|
+
/// The font-weight property sets how thick or thin characters in text should be displayed.
|
|
177
|
+
/// @group FontWeight
|
|
178
|
+
/// @name fontweight
|
|
179
|
+
/// @link src/scss/utilities/_fonts.scss
|
|
180
|
+
/// @since 1.0.0
|
|
181
|
+
/// @author Serge Cools
|
|
182
|
+
///
|
|
183
|
+
/// @require $fontweight
|
|
184
|
+
/// @example scss - fontweight class
|
|
185
|
+
/// @each $fontweight-prop, $fontweight-value in $fontweight {
|
|
186
|
+
/// .#{$fontweight-prop} {
|
|
187
|
+
/// font-weight: $fontweight-value;
|
|
188
|
+
/// }
|
|
189
|
+
/// }
|
|
190
|
+
/// @example html - use the fontweight class
|
|
191
|
+
/// <div class="container">
|
|
192
|
+
/// <p class="font-1">font-thin: 100</p>
|
|
193
|
+
/// <p class="font-thin font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
194
|
+
/// <p class="font-1">font-extralight: 200</p>
|
|
195
|
+
/// <p class="font-extralight font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
196
|
+
/// <p class="font-1">font-light: 300</p>
|
|
197
|
+
/// <p class="font-light font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
198
|
+
/// <p class="font-1">font-normal: 400</p>
|
|
199
|
+
/// <p class="font-normal font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
200
|
+
/// <p class="font-1">font-medium: 500</p>
|
|
201
|
+
/// <p class="font-medium font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
202
|
+
/// <p class="font-1">font-semibold: 600</p>
|
|
203
|
+
/// <p class="font-semibold font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
204
|
+
/// <p class="font-1">font-bold: 700</p>
|
|
205
|
+
/// <p class="font-bold font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
206
|
+
/// <p class="font-1">font-extrabold: 800</p>
|
|
207
|
+
/// <p class="font-extrabold font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
208
|
+
/// <p class="font-1">font-black: 900</p>
|
|
209
|
+
/// <p class="font-black font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
210
|
+
/// <p class="font-1">font-extrablack: 1000</p>
|
|
211
|
+
/// <p class="font-extrablack font-serif font-1.5">The quick brown fox jumps over the lazy dog.</p>
|
|
212
|
+
/// </div>
|
|
213
|
+
@each $fontweight-prop, $fontweight-value in $fontweight {
|
|
214
|
+
|
|
215
|
+
// fontweight
|
|
216
|
+
|
|
217
|
+
.#{$fontweight-prop} {
|
|
218
|
+
|
|
219
|
+
font-weight: $fontweight-value;
|
|
220
|
+
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
|
|
224
|
+
/* The font variant numeric property */
|
|
225
|
+
|
|
226
|
+
///
|
|
227
|
+
/// The font-variant numeric property sets how thick or thin characters in text should be displayed.
|
|
228
|
+
/// @group FontVariantNumeric
|
|
229
|
+
/// @name fontvariantnumeric
|
|
230
|
+
/// @link src/scss/utilities/_fonts.scss
|
|
231
|
+
/// @since 1.0.0
|
|
232
|
+
/// @author Serge Cools
|
|
233
|
+
///
|
|
234
|
+
/// @require $fontvariantnumeric
|
|
235
|
+
/// @example scss - fontvariantnumeric class
|
|
236
|
+
/// @each $fontvariantnumeric-prop, $fontvariantnumeric-value in $fontvariantnumeric {
|
|
237
|
+
/// .#{$fontvariantnumeric-prop} {
|
|
238
|
+
/// font-variant-numeric: $fontvariantnumeric-value;
|
|
239
|
+
/// }
|
|
240
|
+
/// }
|
|
241
|
+
/// @example html - use the fontvariantnumeric class
|
|
242
|
+
/// <div class="container">
|
|
243
|
+
/// <p class="font-1">font-variant-numeric: normal</p>
|
|
244
|
+
/// <p class="font-num-normal font-source font-1.5">123456789</p>
|
|
245
|
+
/// <p class="font-1">font-variant-numeric: ordinal</p>
|
|
246
|
+
/// <p class="font-num-ordinal font-source font-1.5">1st, 2nd, 3rd, 4th, 5th</p>
|
|
247
|
+
/// <p class="font-num-ordinal font-source font-1.5">1st</p>
|
|
248
|
+
/// <p class="font-1">font-variant-numeric: slashed</p>
|
|
249
|
+
/// <p class="font-num-slashed font-source font-1.5">0 100</p>
|
|
250
|
+
/// <p class="font-1">font-variant-numeric: lining</p>
|
|
251
|
+
/// <p class="font-num-lining font-source font-1.5">1234567890</p>
|
|
252
|
+
/// <p class="font-1">font-variant-numeric: oldstyle</p>
|
|
253
|
+
/// <p class="font-num-oldstyle font-source font-1.5">1234567890</p>
|
|
254
|
+
/// <p class="font-1">font-variant-numeric: proportional</p>
|
|
255
|
+
/// <p class="font-num-proportional font-source font-1.5">121212</p>
|
|
256
|
+
/// <p class="font-num-proportional font-source font-1.5">909090</p>
|
|
257
|
+
/// <p class="font-1">font-variant-numeric: tabular</p>
|
|
258
|
+
/// <p class="font-num-tabular font-source font-1.5">121212</p>
|
|
259
|
+
/// <p class="font-num-tabular font-source font-1.5">909090</p>
|
|
260
|
+
/// <p class="font-1">font-variant-numeric: diagonal</p>
|
|
261
|
+
/// <p class="font-num-diagonal font-source font-1.5">3/14 2/71 3/14 2/7</p>
|
|
262
|
+
/// <p class="font-1">font-variant-numeric: stacked</p>
|
|
263
|
+
/// <p class="font-num-stacked font-source font-1.5">3/14 2/71 3/14 2/7</p>
|
|
264
|
+
/// <p class="font-1">font-variant-numeric: oldstacked</p>
|
|
265
|
+
/// <p class="font-num-oldstacked font-source font-1.5">3/14 2/71 3/14 2/7</p>
|
|
266
|
+
/// </div>
|
|
267
|
+
@each $fontvariantnumeric-prop, $fontvariantnumeric-value in $fontvariantnumeric {
|
|
268
|
+
|
|
269
|
+
// fontvariantnumeric
|
|
270
|
+
|
|
271
|
+
.#{$fontvariantnumeric-prop} {
|
|
272
|
+
|
|
273
|
+
font-variant-numeric: $fontvariantnumeric-value;
|
|
274
|
+
|
|
275
|
+
}
|
|
276
|
+
};
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
// SCSS Document
|
|
2
|
+
// File: src/utilities/_gap.scss
|
|
3
|
+
// Description: CSS gap properties
|
|
4
|
+
// Copyright: 2021-2022 Birdycom
|
|
5
|
+
// Autor: Serge Cools
|
|
6
|
+
// Version: 0.2.0
|
|
7
|
+
// Framework: OmniaCSS
|
|
8
|
+
// Properties: gap, row-gap, column-gap
|
|
9
|
+
// Values: value in rem
|
|
10
|
+
|
|
11
|
+
@use "sass:string";
|
|
12
|
+
@use "sass:map";
|
|
13
|
+
@use '../utilities/' as *;
|
|
14
|
+
|
|
15
|
+
/* The Gap property */
|
|
16
|
+
|
|
17
|
+
///
|
|
18
|
+
/// The position Property
|
|
19
|
+
/// @group Gap
|
|
20
|
+
///
|
|
21
|
+
|
|
22
|
+
///
|
|
23
|
+
/// The position property specifies the type of positioning method used for an element.
|
|
24
|
+
/// @group Gap
|
|
25
|
+
/// @name gap
|
|
26
|
+
/// @link src/scss/utilities/_gap.scss
|
|
27
|
+
/// @since 1.0.0
|
|
28
|
+
/// @author Serge Cools
|
|
29
|
+
///
|
|
30
|
+
/// Applies to: multi-column elements, flex containers, grid containers
|
|
31
|
+
///
|
|
32
|
+
/// @require $sizesgap
|
|
33
|
+
/// @example scss - gap class
|
|
34
|
+
/// $min-group: $DEFAULT-BASE-FIRST-MIN-GROUP;
|
|
35
|
+
/// @while $min-group <= $DEFAULT-BASE-SECOND-MAX-GROUP {
|
|
36
|
+
/// $result: omnia-generate-sizing($min-group, 'gap', false, false);
|
|
37
|
+
/// $min-group: map.get($result,1);
|
|
38
|
+
/// .#{map.get($result,5)}-#{map.get($result,2)} {
|
|
39
|
+
/// #{map.get($result,5)} : map.get($result,3) + #{map.get($result,4)}
|
|
40
|
+
/// }
|
|
41
|
+
/// .#{map.get($result,5)+'-row'}-#{map.get($result,2)} {
|
|
42
|
+
/// #{'row-' + map.get($result,5)} : map.get($result,3) + #{map.get($result,4)}
|
|
43
|
+
/// }
|
|
44
|
+
/// .#{map.get($result,5)+'-col'}-#{map.get($result,2)} {
|
|
45
|
+
/// #{'column-' + map.get($result,5)} : map.get($result,3) + #{map.get($result,4)}
|
|
46
|
+
/// }
|
|
47
|
+
/// };
|
|
48
|
+
/// @example html - use gap class
|
|
49
|
+
/// <div class="grid grid-cols-3 gap-col-8 gap-row-4 font-mono text-white text-sm text-center font-bold leading-6 bg-stripes-sky rounded-lg">
|
|
50
|
+
/// <div class="p-4 rounded-lg shadow-lg bg-deepskyblue">01</div>
|
|
51
|
+
/// <div class="p-4 rounded-lg shadow-lg bg-deepskyblue">02</div>
|
|
52
|
+
/// <div class="p-4 rounded-lg shadow-lg bg-deepskyblue">03</div>
|
|
53
|
+
/// <div class="p-4 rounded-lg shadow-lg bg-deepskyblue">04</div>
|
|
54
|
+
/// <div class="p-4 rounded-lg shadow-lg bg-deepskyblue">05</div>
|
|
55
|
+
/// <div class="p-4 rounded-lg shadow-lg bg-deepskyblue">06</div>
|
|
56
|
+
/// </div>
|
|
57
|
+
//
|
|
58
|
+
$min-group: $DEFAULT-BASE-FIRST-MIN-GROUP;
|
|
59
|
+
@while $min-group <= $DEFAULT-BASE-SECOND-MAX-GROUP {
|
|
60
|
+
|
|
61
|
+
$result: omnia-generate-sizing($min-group, 'gap', false, false);
|
|
62
|
+
|
|
63
|
+
$min-group: map.get($result,1);
|
|
64
|
+
|
|
65
|
+
// margin
|
|
66
|
+
.#{map.get($result,5)}-#{map.get($result,2)} {
|
|
67
|
+
|
|
68
|
+
#{map.get($result,5)} : map.get($result,3) + #{map.get($result,4)}
|
|
69
|
+
|
|
70
|
+
}
|
|
71
|
+
// gap row (y-as)
|
|
72
|
+
.#{map.get($result,5)+'-row'}-#{map.get($result,2)} {
|
|
73
|
+
|
|
74
|
+
#{'row-' + map.get($result,5)} : map.get($result,3) + #{map.get($result,4)}
|
|
75
|
+
|
|
76
|
+
}
|
|
77
|
+
// gap column (x-as)
|
|
78
|
+
.#{map.get($result,5)+'-col'}-#{map.get($result,2)} {
|
|
79
|
+
|
|
80
|
+
#{'column-' + map.get($result,5)} : map.get($result,3) + #{map.get($result,4)}
|
|
81
|
+
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
/* ===================================================================
|
|
86
|
+
Short gap aliases
|
|
87
|
+
gap-x-* = gap-col-*, gap-y-* = gap-row-*
|
|
88
|
+
=================================================================== */
|
|
89
|
+
$min-group-alias: $DEFAULT-BASE-FIRST-MIN-GROUP;
|
|
90
|
+
@while $min-group-alias <= $DEFAULT-BASE-SECOND-MAX-GROUP {
|
|
91
|
+
$result: omnia-generate-sizing($min-group-alias, 'gap', false, false);
|
|
92
|
+
$min-group-alias: map.get($result,1);
|
|
93
|
+
|
|
94
|
+
/* gap-x alias for gap-col (column gap) */
|
|
95
|
+
.gap-x-#{map.get($result,2)} {
|
|
96
|
+
column-gap: map.get($result,3) + #{map.get($result,4)};
|
|
97
|
+
}
|
|
98
|
+
/* gap-y alias for gap-row (row gap) */
|
|
99
|
+
.gap-y-#{map.get($result,2)} {
|
|
100
|
+
row-gap: map.get($result,3) + #{map.get($result,4)};
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* End Gap property */
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// SCSS Document
|
|
2
|
+
// File: src/scss/utilities/_gradient_stops.scss
|
|
3
|
+
// Description: Stop positions for the composable gradients of _gradients.scss, extra gradient angles and anchors,
|
|
4
|
+
// and gradients in a perceptual color space.
|
|
5
|
+
// Copyright: 2021-2026 Birdycom
|
|
6
|
+
// Author: Serge Cools
|
|
7
|
+
// Version: 0.4.0
|
|
8
|
+
// Framework: OmniaCSS
|
|
9
|
+
// Purpose: Generate .from-pos-{n}, .via-pos-{n}, .to-pos-{n} (percent), .bg-conic-{deg}, .bg-radial-at-{bl|tr|c},
|
|
10
|
+
// .bg-radial-{closest|farthest}-{side|corner} and .bg-linear-to-{dir}-{oklch|oklab}.
|
|
11
|
+
// Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/gradient/linear-gradient
|
|
12
|
+
// Note: Position classes set --oc-gradient-{from|via|to}-pos; _gradients.scss reads them inside the stop list,
|
|
13
|
+
// e.g. class="bg-linear-to-r from-red from-pos-10 via-yellow to-green to-pos-90".
|
|
14
|
+
// Map: stop positions -> conic angles -> radial anchors and sizes -> color-space gradients
|
|
15
|
+
|
|
16
|
+
$_stop-positions: (0, 5, 10, 15, 20, 25, 30, 33, 35, 40, 45, 50, 55, 60, 65, 66, 70, 75, 80, 85, 90, 95, 100);
|
|
17
|
+
$_gradient-stops: var(--oc-gradient-stops, var(--oc-gradient-from, transparent) var(--oc-gradient-from-pos,), var(--oc-gradient-to, transparent) var(--oc-gradient-to-pos,));
|
|
18
|
+
|
|
19
|
+
/* Stop positions (percent) */
|
|
20
|
+
@each $n in $_stop-positions {
|
|
21
|
+
.from-pos-#{$n} { --oc-gradient-from-pos: #{$n}%; }
|
|
22
|
+
.via-pos-#{$n} { --oc-gradient-via-pos: #{$n}%; }
|
|
23
|
+
.to-pos-#{$n} { --oc-gradient-to-pos: #{$n}%; }
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* Conic gradient start angles (0, 90 and 180 live in _gradients.scss) */
|
|
27
|
+
@each $deg in (45, 135, 225, 270, 315) {
|
|
28
|
+
.bg-conic-#{$deg} { background-image: conic-gradient(from #{$deg}deg, #{$_gradient-stops}); }
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Radial gradient anchors and sizes */
|
|
32
|
+
.bg-radial-at-c { background-image: radial-gradient(at center, #{$_gradient-stops}); }
|
|
33
|
+
.bg-radial-at-bl { background-image: radial-gradient(at bottom left, #{$_gradient-stops}); }
|
|
34
|
+
.bg-radial-at-tr { background-image: radial-gradient(at top right, #{$_gradient-stops}); }
|
|
35
|
+
.bg-radial-closest-side { background-image: radial-gradient(closest-side, #{$_gradient-stops}); }
|
|
36
|
+
.bg-radial-closest-corner { background-image: radial-gradient(closest-corner, #{$_gradient-stops}); }
|
|
37
|
+
.bg-radial-farthest-side { background-image: radial-gradient(farthest-side, #{$_gradient-stops}); }
|
|
38
|
+
.bg-radial-farthest-corner { background-image: radial-gradient(farthest-corner, #{$_gradient-stops}); }
|
|
39
|
+
|
|
40
|
+
/* Linear gradients interpolated in a perceptual color space (smoother mid tones than sRGB) */
|
|
41
|
+
$_directions: ('t': to top, 'tr': to top right, 'r': to right, 'br': to bottom right, 'b': to bottom, 'bl': to bottom left, 'l': to left, 'tl': to top left);
|
|
42
|
+
@each $key, $dir in $_directions {
|
|
43
|
+
@each $space in (oklch, oklab) {
|
|
44
|
+
@if not ($key == 'r' and $space == oklch) {
|
|
45
|
+
.bg-linear-to-#{$key}-#{$space} { background-image: linear-gradient(#{$dir} in #{$space}, #{$_gradient-stops}); }
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
// SCSS Document
|
|
2
|
+
// File: src/scss/utilities/_gradients.scss
|
|
3
|
+
// Description: Gradient utilities — linear, radial, conic and repeating gradients with composable color stops.
|
|
4
|
+
// Copyright: 2021-2026 Birdycom
|
|
5
|
+
// Author: Serge Cools
|
|
6
|
+
// Version: 0.3.0
|
|
7
|
+
// Framework: OmniaCSS
|
|
8
|
+
// Purpose: Generate .bg-linear-*, .bg-radial-*, .bg-conic-*, .bg-repeating-* (shape/direction) and
|
|
9
|
+
// .from-{color}, .via-{color}, .to-{color} (stops) for every Omnia color.
|
|
10
|
+
// Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/gradient
|
|
11
|
+
// Note: stop positions (.from-pos-10 …) live in _gradient_stops.scss.
|
|
12
|
+
// combine one shape class with stop classes, e.g. class="bg-linear-to-r from-red via-yellow to-green".
|
|
13
|
+
// The existing .bg-image-gradient-* / .bg-image-radial presets in _backgrounds.scss stay available.
|
|
14
|
+
// Map: stops -> linear -> radial -> conic -> repeating -> color stops per Omnia color
|
|
15
|
+
|
|
16
|
+
@use "sass:string";
|
|
17
|
+
@use "sass:map";
|
|
18
|
+
@use '../utilities/' as *;
|
|
19
|
+
|
|
20
|
+
// Stops: from -> (via) -> to. A .via-* class switches to a three-stop gradient.
|
|
21
|
+
$_stops: var(--oc-gradient-stops, var(--oc-gradient-from, transparent) var(--oc-gradient-from-pos,), var(--oc-gradient-to, transparent) var(--oc-gradient-to-pos,));
|
|
22
|
+
|
|
23
|
+
/* Linear gradients — direction */
|
|
24
|
+
$_linear: (
|
|
25
|
+
't': to top, 'tr': to top right, 'r': to right, 'br': to bottom right,
|
|
26
|
+
'b': to bottom, 'bl': to bottom left, 'l': to left, 'tl': to top left
|
|
27
|
+
);
|
|
28
|
+
@each $key, $dir in $_linear {
|
|
29
|
+
.bg-linear-to-#{$key} { background-image: linear-gradient(#{$dir}, #{$_stops}); }
|
|
30
|
+
}
|
|
31
|
+
@each $deg in (0, 45, 90, 135, 180, 225, 270, 315) {
|
|
32
|
+
.bg-linear-#{$deg} { background-image: linear-gradient(#{$deg}deg, #{$_stops}); }
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* Linear gradient in a perceptual color space (smoother mid tones) */
|
|
36
|
+
.bg-linear-to-r-oklch { background-image: linear-gradient(to right in oklch, #{$_stops}); }
|
|
37
|
+
|
|
38
|
+
/* Radial gradients — shape and position */
|
|
39
|
+
.bg-radial { background-image: radial-gradient(#{$_stops}); }
|
|
40
|
+
.bg-radial-circle { background-image: radial-gradient(circle, #{$_stops}); }
|
|
41
|
+
.bg-radial-ellipse { background-image: radial-gradient(ellipse, #{$_stops}); }
|
|
42
|
+
.bg-radial-at-t { background-image: radial-gradient(at top, #{$_stops}); }
|
|
43
|
+
.bg-radial-at-b { background-image: radial-gradient(at bottom, #{$_stops}); }
|
|
44
|
+
.bg-radial-at-l { background-image: radial-gradient(at left, #{$_stops}); }
|
|
45
|
+
.bg-radial-at-r { background-image: radial-gradient(at right, #{$_stops}); }
|
|
46
|
+
.bg-radial-at-tl { background-image: radial-gradient(at top left, #{$_stops}); }
|
|
47
|
+
.bg-radial-at-br { background-image: radial-gradient(at bottom right, #{$_stops}); }
|
|
48
|
+
|
|
49
|
+
/* Conic gradients */
|
|
50
|
+
.bg-conic { background-image: conic-gradient(#{$_stops}); }
|
|
51
|
+
.bg-conic-90 { background-image: conic-gradient(from 90deg, #{$_stops}); }
|
|
52
|
+
.bg-conic-180 { background-image: conic-gradient(from 180deg, #{$_stops}); }
|
|
53
|
+
.bg-conic-at-t { background-image: conic-gradient(at top, #{$_stops}); }
|
|
54
|
+
.bg-conic-wheel { background-image: conic-gradient(red, yellow, lime, aqua, blue, magenta, red); }
|
|
55
|
+
|
|
56
|
+
/* Repeating gradients (stripes and rings) */
|
|
57
|
+
.bg-repeating-stripes {
|
|
58
|
+
background-image: repeating-linear-gradient(45deg, var(--oc-gradient-from, transparent) 0 10px, var(--oc-gradient-to, transparent) 10px 20px);
|
|
59
|
+
}
|
|
60
|
+
.bg-repeating-stripes-x {
|
|
61
|
+
background-image: repeating-linear-gradient(90deg, var(--oc-gradient-from, transparent) 0 10px, var(--oc-gradient-to, transparent) 10px 20px);
|
|
62
|
+
}
|
|
63
|
+
.bg-repeating-rings {
|
|
64
|
+
background-image: repeating-radial-gradient(circle, var(--oc-gradient-from, transparent) 0 10px, var(--oc-gradient-to, transparent) 10px 20px);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/* Color stops — keywords */
|
|
68
|
+
@each $name, $value in ('transparent': transparent, 'current': currentcolor, 'white': var(--color-white-50), 'black': var(--color-black-50)) {
|
|
69
|
+
.from-#{$name} { --oc-gradient-from: #{$value}; }
|
|
70
|
+
.to-#{$name} { --oc-gradient-to: #{$value}; }
|
|
71
|
+
.via-#{$name} {
|
|
72
|
+
--oc-gradient-via: #{$value};
|
|
73
|
+
--oc-gradient-stops: var(--oc-gradient-from, transparent) var(--oc-gradient-from-pos,), var(--oc-gradient-via) var(--oc-gradient-via-pos,), var(--oc-gradient-to, transparent) var(--oc-gradient-to-pos,);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* Color stops — every Omnia color (base tone via the color tokens, hex fallback) */
|
|
78
|
+
@each $group, $families in $omnia-colors {
|
|
79
|
+
@each $family, $colors in $families {
|
|
80
|
+
@each $color, $props in $colors {
|
|
81
|
+
$name: string.to-lower-case(#{$color});
|
|
82
|
+
$value: var(--color-#{$name}-100, #{map.get($props, hex)});
|
|
83
|
+
.from-#{$name} { --oc-gradient-from: #{$value}; }
|
|
84
|
+
.to-#{$name} { --oc-gradient-to: #{$value}; }
|
|
85
|
+
.via-#{$name} {
|
|
86
|
+
--oc-gradient-via: #{$value};
|
|
87
|
+
--oc-gradient-stops: var(--oc-gradient-from, transparent) var(--oc-gradient-from-pos,), var(--oc-gradient-via) var(--oc-gradient-via-pos,), var(--oc-gradient-to, transparent) var(--oc-gradient-to-pos,);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/* Gradient text — combine with a gradient class: class="text-gradient bg-linear-to-r from-red to-blue" */
|
|
94
|
+
.text-gradient {
|
|
95
|
+
-webkit-background-clip: text;
|
|
96
|
+
background-clip: text;
|
|
97
|
+
color: transparent;
|
|
98
|
+
-webkit-text-fill-color: transparent;
|
|
99
|
+
}
|