@birdycom/omniacss 0.11.0 → 0.11.2
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 -21
- package/README.md +44 -44
- package/dist/oc-theme.css +1 -1
- package/dist/omnia.css +2 -1
- package/dist/omnia.min.css +1 -1
- package/dist/omnia.starter.css +2 -0
- package/dist/omnia.starter.min.css +1 -1
- package/dist/tokens/omnia.dtcg.json +2 -2
- package/dist/tokens/omnia.tokens.json +1 -1
- package/dist/tokens/omnia_tokens.py +2 -2
- package/package.json +63 -63
- package/scss/utilities/_anchor_positioning.scss +65 -65
- package/scss/utilities/_animation_properties.scss +143 -143
- package/scss/utilities/_borders_extended.scss +97 -97
- package/scss/utilities/_borders_outlines.scss +161 -161
- package/scss/utilities/_containment.scss +82 -82
- package/scss/utilities/_css_functions.scss +34 -34
- package/scss/utilities/_dark_mode.scss +117 -117
- package/scss/utilities/_drop_shadow_colors.scss +26 -26
- package/scss/utilities/_experimental_css.scss +149 -149
- package/scss/utilities/_flexbox.scss +317 -317
- package/scss/utilities/_font_variants.scss +139 -139
- package/scss/utilities/_gap.scss +103 -103
- package/scss/utilities/_gradient_stops.scss +48 -48
- package/scss/utilities/_grid.scss +672 -672
- package/scss/utilities/_layout_extras.scss +171 -171
- package/scss/utilities/_layout_flow.scss +210 -210
- package/scss/utilities/_mask_extras.scss +62 -62
- package/scss/utilities/_motion_transforms.scss +167 -167
- package/scss/utilities/_scroll_animations.scss +80 -80
- package/scss/utilities/_scrollbar.scss +2 -1
- package/scss/utilities/_shadow_tokens.scss +21 -21
- package/scss/utilities/_shapes.scss +72 -72
- package/scss/utilities/_sizing_logical.scss +99 -99
- package/scss/utilities/_starting_style.scss +53 -53
- package/scss/utilities/_state_variants.scss +196 -196
- package/scss/utilities/_svg.scss +100 -100
- package/scss/utilities/_table_advanced.scss +19 -19
- package/scss/utilities/_typography_advanced.scss +124 -124
- package/scss/utilities/_typography_modern.scss +83 -83
- package/scss/utilities/_view_transitions.scss +64 -64
- package/scss/utilities/_writing_modes.scss +72 -72
- package/scss/variables/_hulp.scss +107 -107
- package/scss/variables/_variables_effects.scss +108 -108
- package/src/postcss.mjs +43 -43
- package/src/tokens.mjs +377 -377
- package/src/variants.mjs +278 -278
- package/tokens/semantic.json +80 -80
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
// SCSS Document
|
|
2
|
-
// File: src/scss/utilities/_writing_modes.scss
|
|
3
|
-
// Description: Writing modes, direction, text orientation, unicode-bidi and logical inset/sizing utilities.
|
|
4
|
-
// Copyright: 2021-2026 Birdycom
|
|
5
|
-
// Author: Serge Cools
|
|
6
|
-
// Version: 0.3.0
|
|
7
|
-
// Framework: OmniaCSS
|
|
8
|
-
// Purpose: Generate .write-*, .dir-*, .text-orient-*, .bidi-*, .start-* / .end-* / .inset-inline-* / .inset-block-*
|
|
9
|
-
// and .inline-size-* / .block-size-* classes.
|
|
10
|
-
// Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_logical_properties_and_values
|
|
11
|
-
// Note: logical margin/padding live in _spacing_margin.scss / _spacing_padding.scss (.m-inline-*, .p-block-start-*).
|
|
12
|
-
// The older .writingmode-* classes in _text.scss remain available.
|
|
13
|
-
// Map: writing-mode -> direction -> text-orientation -> unicode-bidi -> logical inset -> logical sizing
|
|
14
|
-
|
|
15
|
-
/* Writing mode */
|
|
16
|
-
.write-horizontal { writing-mode: horizontal-tb; }
|
|
17
|
-
.write-vertical-rl { writing-mode: vertical-rl; }
|
|
18
|
-
.write-vertical-lr { writing-mode: vertical-lr; }
|
|
19
|
-
.write-sideways-rl { writing-mode: sideways-rl; }
|
|
20
|
-
.write-sideways-lr { writing-mode: sideways-lr; }
|
|
21
|
-
|
|
22
|
-
/* Direction */
|
|
23
|
-
.dir-ltr { direction: ltr; }
|
|
24
|
-
.dir-rtl { direction: rtl; }
|
|
25
|
-
|
|
26
|
-
/* Text orientation (vertical writing modes only) */
|
|
27
|
-
.text-orient-mixed { text-orientation: mixed; }
|
|
28
|
-
.text-orient-upright { text-orientation: upright; }
|
|
29
|
-
.text-orient-sideways { text-orientation: sideways; }
|
|
30
|
-
|
|
31
|
-
/* Unicode bidi */
|
|
32
|
-
.bidi-normal { unicode-bidi: normal; }
|
|
33
|
-
.bidi-embed { unicode-bidi: embed; }
|
|
34
|
-
.bidi-isolate { unicode-bidi: isolate; }
|
|
35
|
-
.bidi-override { unicode-bidi: bidi-override; }
|
|
36
|
-
.bidi-isolate-override { unicode-bidi: isolate-override; }
|
|
37
|
-
.bidi-plaintext { unicode-bidi: plaintext; }
|
|
38
|
-
|
|
39
|
-
// ---------------------------------------------------------------------------
|
|
40
|
-
// Logical inset — follows writing-mode and direction (start = left in LTR, right in RTL)
|
|
41
|
-
// ---------------------------------------------------------------------------
|
|
42
|
-
$_logical-inset: (
|
|
43
|
-
'auto': auto,
|
|
44
|
-
'0': 0,
|
|
45
|
-
'1': 0.25rem,
|
|
46
|
-
'2': 0.5rem,
|
|
47
|
-
'4': 1rem,
|
|
48
|
-
'8': 2rem,
|
|
49
|
-
'full': 100%
|
|
50
|
-
);
|
|
51
|
-
|
|
52
|
-
/* Logical inset */
|
|
53
|
-
@each $key, $value in $_logical-inset {
|
|
54
|
-
.start-#{$key} { inset-inline-start: $value; }
|
|
55
|
-
.end-#{$key} { inset-inline-end: $value; }
|
|
56
|
-
.inset-inline-#{$key} { inset-inline: $value; }
|
|
57
|
-
.inset-block-#{$key} { inset-block: $value; }
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
/* Logical sizing — inline-size (width in horizontal-tb) and block-size (height in horizontal-tb) */
|
|
61
|
-
.inline-size-auto { inline-size: auto; }
|
|
62
|
-
.inline-size-full { inline-size: 100%; }
|
|
63
|
-
.inline-size-fit { inline-size: fit-content; }
|
|
64
|
-
.inline-size-min { inline-size: min-content; }
|
|
65
|
-
.inline-size-max { inline-size: max-content; }
|
|
66
|
-
.block-size-auto { block-size: auto; }
|
|
67
|
-
.block-size-full { block-size: 100%; }
|
|
68
|
-
.block-size-fit { block-size: fit-content; }
|
|
69
|
-
.block-size-min { block-size: min-content; }
|
|
70
|
-
.block-size-max { block-size: max-content; }
|
|
71
|
-
.max-inline-size-prose { max-inline-size: 65ch; }
|
|
72
|
-
.max-inline-size-full { max-inline-size: 100%; }
|
|
1
|
+
// SCSS Document
|
|
2
|
+
// File: src/scss/utilities/_writing_modes.scss
|
|
3
|
+
// Description: Writing modes, direction, text orientation, unicode-bidi and logical inset/sizing utilities.
|
|
4
|
+
// Copyright: 2021-2026 Birdycom
|
|
5
|
+
// Author: Serge Cools
|
|
6
|
+
// Version: 0.3.0
|
|
7
|
+
// Framework: OmniaCSS
|
|
8
|
+
// Purpose: Generate .write-*, .dir-*, .text-orient-*, .bidi-*, .start-* / .end-* / .inset-inline-* / .inset-block-*
|
|
9
|
+
// and .inline-size-* / .block-size-* classes.
|
|
10
|
+
// Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_logical_properties_and_values
|
|
11
|
+
// Note: logical margin/padding live in _spacing_margin.scss / _spacing_padding.scss (.m-inline-*, .p-block-start-*).
|
|
12
|
+
// The older .writingmode-* classes in _text.scss remain available.
|
|
13
|
+
// Map: writing-mode -> direction -> text-orientation -> unicode-bidi -> logical inset -> logical sizing
|
|
14
|
+
|
|
15
|
+
/* Writing mode */
|
|
16
|
+
.write-horizontal { writing-mode: horizontal-tb; }
|
|
17
|
+
.write-vertical-rl { writing-mode: vertical-rl; }
|
|
18
|
+
.write-vertical-lr { writing-mode: vertical-lr; }
|
|
19
|
+
.write-sideways-rl { writing-mode: sideways-rl; }
|
|
20
|
+
.write-sideways-lr { writing-mode: sideways-lr; }
|
|
21
|
+
|
|
22
|
+
/* Direction */
|
|
23
|
+
.dir-ltr { direction: ltr; }
|
|
24
|
+
.dir-rtl { direction: rtl; }
|
|
25
|
+
|
|
26
|
+
/* Text orientation (vertical writing modes only) */
|
|
27
|
+
.text-orient-mixed { text-orientation: mixed; }
|
|
28
|
+
.text-orient-upright { text-orientation: upright; }
|
|
29
|
+
.text-orient-sideways { text-orientation: sideways; }
|
|
30
|
+
|
|
31
|
+
/* Unicode bidi */
|
|
32
|
+
.bidi-normal { unicode-bidi: normal; }
|
|
33
|
+
.bidi-embed { unicode-bidi: embed; }
|
|
34
|
+
.bidi-isolate { unicode-bidi: isolate; }
|
|
35
|
+
.bidi-override { unicode-bidi: bidi-override; }
|
|
36
|
+
.bidi-isolate-override { unicode-bidi: isolate-override; }
|
|
37
|
+
.bidi-plaintext { unicode-bidi: plaintext; }
|
|
38
|
+
|
|
39
|
+
// ---------------------------------------------------------------------------
|
|
40
|
+
// Logical inset — follows writing-mode and direction (start = left in LTR, right in RTL)
|
|
41
|
+
// ---------------------------------------------------------------------------
|
|
42
|
+
$_logical-inset: (
|
|
43
|
+
'auto': auto,
|
|
44
|
+
'0': 0,
|
|
45
|
+
'1': 0.25rem,
|
|
46
|
+
'2': 0.5rem,
|
|
47
|
+
'4': 1rem,
|
|
48
|
+
'8': 2rem,
|
|
49
|
+
'full': 100%
|
|
50
|
+
);
|
|
51
|
+
|
|
52
|
+
/* Logical inset */
|
|
53
|
+
@each $key, $value in $_logical-inset {
|
|
54
|
+
.start-#{$key} { inset-inline-start: $value; }
|
|
55
|
+
.end-#{$key} { inset-inline-end: $value; }
|
|
56
|
+
.inset-inline-#{$key} { inset-inline: $value; }
|
|
57
|
+
.inset-block-#{$key} { inset-block: $value; }
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/* Logical sizing — inline-size (width in horizontal-tb) and block-size (height in horizontal-tb) */
|
|
61
|
+
.inline-size-auto { inline-size: auto; }
|
|
62
|
+
.inline-size-full { inline-size: 100%; }
|
|
63
|
+
.inline-size-fit { inline-size: fit-content; }
|
|
64
|
+
.inline-size-min { inline-size: min-content; }
|
|
65
|
+
.inline-size-max { inline-size: max-content; }
|
|
66
|
+
.block-size-auto { block-size: auto; }
|
|
67
|
+
.block-size-full { block-size: 100%; }
|
|
68
|
+
.block-size-fit { block-size: fit-content; }
|
|
69
|
+
.block-size-min { block-size: min-content; }
|
|
70
|
+
.block-size-max { block-size: max-content; }
|
|
71
|
+
.max-inline-size-prose { max-inline-size: 65ch; }
|
|
72
|
+
.max-inline-size-full { max-inline-size: 100%; }
|
|
@@ -1,108 +1,108 @@
|
|
|
1
|
-
// SCSS Document
|
|
2
|
-
// File: src/utilities/_hulp.scss
|
|
3
|
-
// Description: CSS hulp class (demo helpers only — no global element/id rules: they would leak into every page)
|
|
4
|
-
// Copyright: 2021-2023 Birdycom
|
|
5
|
-
// Autor: Serge Cools
|
|
6
|
-
// Version: 0.2.0
|
|
7
|
-
// Framework: OmniaCSS
|
|
8
|
-
// Properties:
|
|
9
|
-
// Values:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
.wrapbox-1 {
|
|
13
|
-
width: 10em;
|
|
14
|
-
margin: 0.5em;
|
|
15
|
-
white-space: normal;
|
|
16
|
-
vertical-align: top;
|
|
17
|
-
display: inline-block;
|
|
18
|
-
}
|
|
19
|
-
.wrapbox-2 {
|
|
20
|
-
width: 40em;
|
|
21
|
-
margin: 0.5em;
|
|
22
|
-
white-space: normal;
|
|
23
|
-
vertical-align: top;
|
|
24
|
-
display: inline-block;
|
|
25
|
-
}
|
|
26
|
-
.narrow {
|
|
27
|
-
padding: 10px;
|
|
28
|
-
border: 1px solid;
|
|
29
|
-
width: 500px;
|
|
30
|
-
margin: 0 auto;
|
|
31
|
-
font-size: 20px;
|
|
32
|
-
line-height: 1.5;
|
|
33
|
-
letter-spacing: 1px;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
/* hulp for writing mode */
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
/* Scoped (was a global th/td rule that leaked into every table): add .hulp-table to opt in. */
|
|
40
|
-
.hulp-table th {
|
|
41
|
-
background-color: var(--oc-muted, var(--color-frostblue-60));
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
.hulp-table td, .hulp-table th {
|
|
45
|
-
border: 1px solid var(--oc-border-strong, var(--color-mistblue-80));
|
|
46
|
-
padding: 3px;
|
|
47
|
-
}
|
|
48
|
-
/* End hulp for writing mode */
|
|
49
|
-
|
|
50
|
-
/* hulp for aspect ratio */
|
|
51
|
-
|
|
52
|
-
.output {
|
|
53
|
-
height: 300px;
|
|
54
|
-
overflow: hidden;
|
|
55
|
-
position: relative;
|
|
56
|
-
background-color: var(--background-primary);
|
|
57
|
-
overflow: hidden;
|
|
58
|
-
padding: 1em;
|
|
59
|
-
}
|
|
60
|
-
.output section {
|
|
61
|
-
height: 100%;
|
|
62
|
-
text-align: center;
|
|
63
|
-
}
|
|
64
|
-
/* End hulp for aspect ratio */
|
|
65
|
-
|
|
66
|
-
/* hulp for alignment */
|
|
67
|
-
.box {
|
|
68
|
-
padding: 0.5rem;
|
|
69
|
-
background: linear-gradient(-45deg, var(--color-vividblue-60), var(--color-mistblue-30));
|
|
70
|
-
display: flex;
|
|
71
|
-
justify-content: center;
|
|
72
|
-
align-items: center;
|
|
73
|
-
}
|
|
74
|
-
.bg-stripes-sky{
|
|
75
|
-
background-color: oklch(from var(--color-skycyan-70) l c h / 0.1);
|
|
76
|
-
background-image: linear-gradient(135deg,oklch(from var(--color-skycyan-80) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-skycyan-80) l c h / 0.5) 0,oklch(from var(--color-skycyan-80) l c h / 0.5) 60%,transparent 0,transparent);
|
|
77
|
-
background-size: 7.07px 7.07px;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.bg-stripes-fuchsia {
|
|
81
|
-
background-color: oklch(from var(--color-violet-60) l c h / 0.1);
|
|
82
|
-
background-image: linear-gradient(135deg,oklch(from var(--color-violet-70) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-violet-70) l c h / 0.5) 0,oklch(from var(--color-violet-70) l c h / 0.5) 60%,transparent 0,transparent);
|
|
83
|
-
background-size: 7.07px 7.07px;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
.bg-stripes-pink {
|
|
87
|
-
background-color: oklch(from var(--color-purple-2) l c h / 0.1);
|
|
88
|
-
background-image: linear-gradient(135deg,oklch(from var(--color-purple-10) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-purple-10) l c h / 0.5) 0,oklch(from var(--color-purple-10) l c h / 0.5) 60%,transparent 0,transparent);
|
|
89
|
-
background-size: 7.07px 7.07px;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
.bg-stripes-purple {
|
|
93
|
-
background-color: oklch(from var(--color-indigo-2) l c h / 0.1);
|
|
94
|
-
background-image: linear-gradient(135deg,oklch(from var(--color-indigo-10) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-indigo-10) l c h / 0.5) 0,oklch(from var(--color-indigo-10) l c h / 0.5) 60%,transparent 0,transparent);
|
|
95
|
-
background-size: 7.07px 7.07px;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
.leading-6 {
|
|
99
|
-
line-height: 1.5rem;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
.rounded-lg {
|
|
103
|
-
border-radius: 0.5rem;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/* .shadow-md / .shadow-lg live in utilities/_effects_advanced.scss (light-dark aware) */
|
|
107
|
-
|
|
1
|
+
// SCSS Document
|
|
2
|
+
// File: src/utilities/_hulp.scss
|
|
3
|
+
// Description: CSS hulp class (demo helpers only — no global element/id rules: they would leak into every page)
|
|
4
|
+
// Copyright: 2021-2023 Birdycom
|
|
5
|
+
// Autor: Serge Cools
|
|
6
|
+
// Version: 0.2.0
|
|
7
|
+
// Framework: OmniaCSS
|
|
8
|
+
// Properties:
|
|
9
|
+
// Values:
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
.wrapbox-1 {
|
|
13
|
+
width: 10em;
|
|
14
|
+
margin: 0.5em;
|
|
15
|
+
white-space: normal;
|
|
16
|
+
vertical-align: top;
|
|
17
|
+
display: inline-block;
|
|
18
|
+
}
|
|
19
|
+
.wrapbox-2 {
|
|
20
|
+
width: 40em;
|
|
21
|
+
margin: 0.5em;
|
|
22
|
+
white-space: normal;
|
|
23
|
+
vertical-align: top;
|
|
24
|
+
display: inline-block;
|
|
25
|
+
}
|
|
26
|
+
.narrow {
|
|
27
|
+
padding: 10px;
|
|
28
|
+
border: 1px solid;
|
|
29
|
+
width: 500px;
|
|
30
|
+
margin: 0 auto;
|
|
31
|
+
font-size: 20px;
|
|
32
|
+
line-height: 1.5;
|
|
33
|
+
letter-spacing: 1px;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/* hulp for writing mode */
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
/* Scoped (was a global th/td rule that leaked into every table): add .hulp-table to opt in. */
|
|
40
|
+
.hulp-table th {
|
|
41
|
+
background-color: var(--oc-muted, var(--color-frostblue-60));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.hulp-table td, .hulp-table th {
|
|
45
|
+
border: 1px solid var(--oc-border-strong, var(--color-mistblue-80));
|
|
46
|
+
padding: 3px;
|
|
47
|
+
}
|
|
48
|
+
/* End hulp for writing mode */
|
|
49
|
+
|
|
50
|
+
/* hulp for aspect ratio */
|
|
51
|
+
|
|
52
|
+
.output {
|
|
53
|
+
height: 300px;
|
|
54
|
+
overflow: hidden;
|
|
55
|
+
position: relative;
|
|
56
|
+
background-color: var(--background-primary);
|
|
57
|
+
overflow: hidden;
|
|
58
|
+
padding: 1em;
|
|
59
|
+
}
|
|
60
|
+
.output section {
|
|
61
|
+
height: 100%;
|
|
62
|
+
text-align: center;
|
|
63
|
+
}
|
|
64
|
+
/* End hulp for aspect ratio */
|
|
65
|
+
|
|
66
|
+
/* hulp for alignment */
|
|
67
|
+
.box {
|
|
68
|
+
padding: 0.5rem;
|
|
69
|
+
background: linear-gradient(-45deg, var(--color-vividblue-60), var(--color-mistblue-30));
|
|
70
|
+
display: flex;
|
|
71
|
+
justify-content: center;
|
|
72
|
+
align-items: center;
|
|
73
|
+
}
|
|
74
|
+
.bg-stripes-sky{
|
|
75
|
+
background-color: oklch(from var(--color-skycyan-70) l c h / 0.1);
|
|
76
|
+
background-image: linear-gradient(135deg,oklch(from var(--color-skycyan-80) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-skycyan-80) l c h / 0.5) 0,oklch(from var(--color-skycyan-80) l c h / 0.5) 60%,transparent 0,transparent);
|
|
77
|
+
background-size: 7.07px 7.07px;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.bg-stripes-fuchsia {
|
|
81
|
+
background-color: oklch(from var(--color-violet-60) l c h / 0.1);
|
|
82
|
+
background-image: linear-gradient(135deg,oklch(from var(--color-violet-70) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-violet-70) l c h / 0.5) 0,oklch(from var(--color-violet-70) l c h / 0.5) 60%,transparent 0,transparent);
|
|
83
|
+
background-size: 7.07px 7.07px;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.bg-stripes-pink {
|
|
87
|
+
background-color: oklch(from var(--color-purple-2) l c h / 0.1);
|
|
88
|
+
background-image: linear-gradient(135deg,oklch(from var(--color-purple-10) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-purple-10) l c h / 0.5) 0,oklch(from var(--color-purple-10) l c h / 0.5) 60%,transparent 0,transparent);
|
|
89
|
+
background-size: 7.07px 7.07px;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.bg-stripes-purple {
|
|
93
|
+
background-color: oklch(from var(--color-indigo-2) l c h / 0.1);
|
|
94
|
+
background-image: linear-gradient(135deg,oklch(from var(--color-indigo-10) l c h / 0.5) 10%,transparent 0,transparent 50%,oklch(from var(--color-indigo-10) l c h / 0.5) 0,oklch(from var(--color-indigo-10) l c h / 0.5) 60%,transparent 0,transparent);
|
|
95
|
+
background-size: 7.07px 7.07px;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.leading-6 {
|
|
99
|
+
line-height: 1.5rem;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.rounded-lg {
|
|
103
|
+
border-radius: 0.5rem;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/* .shadow-md / .shadow-lg live in utilities/_effects_advanced.scss (light-dark aware) */
|
|
107
|
+
|
|
108
108
|
/* End hulp for alignment */
|
|
@@ -1,109 +1,109 @@
|
|
|
1
|
-
// SCSS Document
|
|
2
|
-
// File: src/scss/variables/_variables_effects.scss
|
|
3
|
-
// Description: Default string items for using in the CSS properties
|
|
4
|
-
// Copyright: 2021-2023 Birdycom
|
|
5
|
-
// Autor: Serge Cools
|
|
6
|
-
// Version: 0.2.0
|
|
7
|
-
// Framework: OmniaCSS
|
|
8
|
-
// Variables and strings:
|
|
9
|
-
|
|
10
|
-
///
|
|
11
|
-
/// Below you will find the list of all strings and arrays that we will use within our framework - file variables_effects.
|
|
12
|
-
/// @group variableseffects
|
|
13
|
-
///
|
|
14
|
-
|
|
15
|
-
// Default Pseudo-classes
|
|
16
|
-
///
|
|
17
|
-
/// The different variableseffects: none, underline, overline & line-through
|
|
18
|
-
/// @group variableseffects
|
|
19
|
-
///
|
|
20
|
-
/// @name opacity
|
|
21
|
-
///
|
|
22
|
-
/// @since 1.0.0
|
|
23
|
-
/// @author Serge Cools
|
|
24
|
-
///
|
|
25
|
-
///
|
|
26
|
-
$opacity: (
|
|
27
|
-
"opacity-0": (0), // 0
|
|
28
|
-
"opacity-5": (0.05), // 5%
|
|
29
|
-
"opacity-10": (0.1), // 10%
|
|
30
|
-
"opacity-20": (0.2), // 20%
|
|
31
|
-
"opacity-25": (0.25), // 25%
|
|
32
|
-
"opacity-30": (0.3), // 30%
|
|
33
|
-
"opacity-40": (0.4), // 40%
|
|
34
|
-
"opacity-50": (0.5), // 50%
|
|
35
|
-
"opacity-60": (0.6), // 60%
|
|
36
|
-
"opacity-70": (0.7), // 70%
|
|
37
|
-
"opacity-75": (0.75), // 75%
|
|
38
|
-
"opacity-80": (0.8), // 80%
|
|
39
|
-
"opacity-90": (0.9), // 90%
|
|
40
|
-
"opacity-100": (1),// 100%
|
|
41
|
-
);
|
|
42
|
-
// end default opacity
|
|
43
|
-
|
|
44
|
-
// Default OpacityColor
|
|
45
|
-
///
|
|
46
|
-
/// The different variableseffects: color opacity
|
|
47
|
-
/// @group variableseffects
|
|
48
|
-
///
|
|
49
|
-
/// @name opacitycolor
|
|
50
|
-
///
|
|
51
|
-
/// @since 1.0.0
|
|
52
|
-
/// @author Serge Cools
|
|
53
|
-
///
|
|
54
|
-
///
|
|
55
|
-
$opacitycolor: (
|
|
56
|
-
"-2": (2), // 2%
|
|
57
|
-
"-10": (10), // 10%
|
|
58
|
-
"-20": (20), // 20%
|
|
59
|
-
"-30": (30), // 30%
|
|
60
|
-
"-40": (40), // 40%
|
|
61
|
-
"-50": (50), // 50%
|
|
62
|
-
"-60": (60), // 60%
|
|
63
|
-
"-70": (70), // 70%
|
|
64
|
-
"-80": (80), // 80%
|
|
65
|
-
"-90": (90), // 90%
|
|
66
|
-
"-95": (95), // 95%
|
|
67
|
-
"-100": (100),
|
|
68
|
-
);
|
|
69
|
-
// end default opacitycolor
|
|
70
|
-
|
|
71
|
-
/// Color-mix steps (percent of color, rest transparent). Used by _colors_mix.scss.
|
|
72
|
-
/// @name color-mix-steps
|
|
73
|
-
$color-mix-steps: (0, 5, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100);
|
|
74
|
-
|
|
75
|
-
// Default percent
|
|
76
|
-
///
|
|
77
|
-
/// The different variableseffects:
|
|
78
|
-
/// @group variableseffects
|
|
79
|
-
///
|
|
80
|
-
/// @name percent
|
|
81
|
-
///
|
|
82
|
-
/// @since 1.0.0
|
|
83
|
-
/// @author Serge Cools
|
|
84
|
-
///
|
|
85
|
-
///
|
|
86
|
-
$percent: (
|
|
87
|
-
// "-5": (005), // 5%
|
|
88
|
-
"-10": (10%), // 10%
|
|
89
|
-
"-20": (20%), // 20%
|
|
90
|
-
"-30": (30%), // 30%
|
|
91
|
-
"-40": (40%), // 40%
|
|
92
|
-
"-50": (50%), // 50%
|
|
93
|
-
"-60": (60%), // 60%
|
|
94
|
-
"-70": (70%), // 70%
|
|
95
|
-
"-80": (80%), // 80%
|
|
96
|
-
"-90": (90%), // 90%
|
|
97
|
-
"-100": (100%), // 100%
|
|
98
|
-
"-n10": (-10%), // 10%
|
|
99
|
-
"-n20": (-20%), // 20%
|
|
100
|
-
"-n30": (-30%), // 30%
|
|
101
|
-
"-n40": (-40%), // 40%
|
|
102
|
-
"-n50": (-50%), // 50%
|
|
103
|
-
"-n60": (-60%), // 60%
|
|
104
|
-
"-n70": (-70%), // 70%
|
|
105
|
-
"-n80": (-80%), // 80%
|
|
106
|
-
"-n90": (-90%), // 90%
|
|
107
|
-
"-n100": (-100%), // 100%
|
|
108
|
-
);
|
|
1
|
+
// SCSS Document
|
|
2
|
+
// File: src/scss/variables/_variables_effects.scss
|
|
3
|
+
// Description: Default string items for using in the CSS properties
|
|
4
|
+
// Copyright: 2021-2023 Birdycom
|
|
5
|
+
// Autor: Serge Cools
|
|
6
|
+
// Version: 0.2.0
|
|
7
|
+
// Framework: OmniaCSS
|
|
8
|
+
// Variables and strings:
|
|
9
|
+
|
|
10
|
+
///
|
|
11
|
+
/// Below you will find the list of all strings and arrays that we will use within our framework - file variables_effects.
|
|
12
|
+
/// @group variableseffects
|
|
13
|
+
///
|
|
14
|
+
|
|
15
|
+
// Default Pseudo-classes
|
|
16
|
+
///
|
|
17
|
+
/// The different variableseffects: none, underline, overline & line-through
|
|
18
|
+
/// @group variableseffects
|
|
19
|
+
///
|
|
20
|
+
/// @name opacity
|
|
21
|
+
///
|
|
22
|
+
/// @since 1.0.0
|
|
23
|
+
/// @author Serge Cools
|
|
24
|
+
///
|
|
25
|
+
///
|
|
26
|
+
$opacity: (
|
|
27
|
+
"opacity-0": (0), // 0
|
|
28
|
+
"opacity-5": (0.05), // 5%
|
|
29
|
+
"opacity-10": (0.1), // 10%
|
|
30
|
+
"opacity-20": (0.2), // 20%
|
|
31
|
+
"opacity-25": (0.25), // 25%
|
|
32
|
+
"opacity-30": (0.3), // 30%
|
|
33
|
+
"opacity-40": (0.4), // 40%
|
|
34
|
+
"opacity-50": (0.5), // 50%
|
|
35
|
+
"opacity-60": (0.6), // 60%
|
|
36
|
+
"opacity-70": (0.7), // 70%
|
|
37
|
+
"opacity-75": (0.75), // 75%
|
|
38
|
+
"opacity-80": (0.8), // 80%
|
|
39
|
+
"opacity-90": (0.9), // 90%
|
|
40
|
+
"opacity-100": (1),// 100%
|
|
41
|
+
);
|
|
42
|
+
// end default opacity
|
|
43
|
+
|
|
44
|
+
// Default OpacityColor
|
|
45
|
+
///
|
|
46
|
+
/// The different variableseffects: color opacity
|
|
47
|
+
/// @group variableseffects
|
|
48
|
+
///
|
|
49
|
+
/// @name opacitycolor
|
|
50
|
+
///
|
|
51
|
+
/// @since 1.0.0
|
|
52
|
+
/// @author Serge Cools
|
|
53
|
+
///
|
|
54
|
+
///
|
|
55
|
+
$opacitycolor: (
|
|
56
|
+
"-2": (2), // 2%
|
|
57
|
+
"-10": (10), // 10%
|
|
58
|
+
"-20": (20), // 20%
|
|
59
|
+
"-30": (30), // 30%
|
|
60
|
+
"-40": (40), // 40%
|
|
61
|
+
"-50": (50), // 50%
|
|
62
|
+
"-60": (60), // 60%
|
|
63
|
+
"-70": (70), // 70%
|
|
64
|
+
"-80": (80), // 80%
|
|
65
|
+
"-90": (90), // 90%
|
|
66
|
+
"-95": (95), // 95%
|
|
67
|
+
"-100": (100),
|
|
68
|
+
);
|
|
69
|
+
// end default opacitycolor
|
|
70
|
+
|
|
71
|
+
/// Color-mix steps (percent of color, rest transparent). Used by _colors_mix.scss.
|
|
72
|
+
/// @name color-mix-steps
|
|
73
|
+
$color-mix-steps: (0, 5, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100);
|
|
74
|
+
|
|
75
|
+
// Default percent
|
|
76
|
+
///
|
|
77
|
+
/// The different variableseffects:
|
|
78
|
+
/// @group variableseffects
|
|
79
|
+
///
|
|
80
|
+
/// @name percent
|
|
81
|
+
///
|
|
82
|
+
/// @since 1.0.0
|
|
83
|
+
/// @author Serge Cools
|
|
84
|
+
///
|
|
85
|
+
///
|
|
86
|
+
$percent: (
|
|
87
|
+
// "-5": (005), // 5%
|
|
88
|
+
"-10": (10%), // 10%
|
|
89
|
+
"-20": (20%), // 20%
|
|
90
|
+
"-30": (30%), // 30%
|
|
91
|
+
"-40": (40%), // 40%
|
|
92
|
+
"-50": (50%), // 50%
|
|
93
|
+
"-60": (60%), // 60%
|
|
94
|
+
"-70": (70%), // 70%
|
|
95
|
+
"-80": (80%), // 80%
|
|
96
|
+
"-90": (90%), // 90%
|
|
97
|
+
"-100": (100%), // 100%
|
|
98
|
+
"-n10": (-10%), // 10%
|
|
99
|
+
"-n20": (-20%), // 20%
|
|
100
|
+
"-n30": (-30%), // 30%
|
|
101
|
+
"-n40": (-40%), // 40%
|
|
102
|
+
"-n50": (-50%), // 50%
|
|
103
|
+
"-n60": (-60%), // 60%
|
|
104
|
+
"-n70": (-70%), // 70%
|
|
105
|
+
"-n80": (-80%), // 80%
|
|
106
|
+
"-n90": (-90%), // 90%
|
|
107
|
+
"-n100": (-100%), // 100%
|
|
108
|
+
);
|
|
109
109
|
// end default percent
|
package/src/postcss.mjs
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
// File: packages/core/src/postcss.mjs
|
|
2
|
-
// PostCSS plugin: replaces `@omnia;` (or `@omnia utilities;`) in your CSS with the OmniaCSS classes your
|
|
3
|
-
// project uses. Works in every PostCSS pipeline (Vite, Laravel Vite, Next.js, Astro, webpack …).
|
|
4
|
-
//
|
|
5
|
-
// // postcss.config.js
|
|
6
|
-
// import omniacss from "@birdycom/omniacss/postcss";
|
|
7
|
-
// export default { plugins: [omniacss({ content: ["resources/**/*.blade.php", "resources/js/**/*.{vue,tsx}"] })] };
|
|
8
|
-
//
|
|
9
|
-
// /* app.css */
|
|
10
|
-
// @omnia;
|
|
11
|
-
//
|
|
12
|
-
// Author: Serge Cools | Framework: OmniaCSS
|
|
13
|
-
|
|
14
|
-
import path from "node:path";
|
|
15
|
-
import postcss from "postcss";
|
|
16
|
-
import { buildCss } from "./engine.mjs";
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* @param {{ content: string[], layer?: string|false, keep?: string[], cwd?: string }} options
|
|
20
|
-
*/
|
|
21
|
-
export default function omniacss(options = {}) {
|
|
22
|
-
return {
|
|
23
|
-
postcssPlugin: "omniacss",
|
|
24
|
-
async Once(root, { result }) {
|
|
25
|
-
const directives = [];
|
|
26
|
-
root.walkAtRules("omnia", (at) => directives.push(at));
|
|
27
|
-
if (!directives.length) return;
|
|
28
|
-
|
|
29
|
-
const cwd = options.cwd || process.cwd();
|
|
30
|
-
const { css, files } = await buildCss({ content: options.content, cwd, layer: options.layer ?? "omnia", keep: options.keep });
|
|
31
|
-
const generated = postcss.parse(css, { from: undefined });
|
|
32
|
-
|
|
33
|
-
directives[0].replaceWith(generated.nodes);
|
|
34
|
-
directives.slice(1).forEach((at) => at.remove());
|
|
35
|
-
|
|
36
|
-
// Let Vite & co. rebuild when a content file changes.
|
|
37
|
-
for (const file of files) {
|
|
38
|
-
result.messages.push({ type: "dependency", plugin: "omniacss", file: path.resolve(file), parent: result.opts.from });
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
omniacss.postcss = true;
|
|
1
|
+
// File: packages/core/src/postcss.mjs
|
|
2
|
+
// PostCSS plugin: replaces `@omnia;` (or `@omnia utilities;`) in your CSS with the OmniaCSS classes your
|
|
3
|
+
// project uses. Works in every PostCSS pipeline (Vite, Laravel Vite, Next.js, Astro, webpack …).
|
|
4
|
+
//
|
|
5
|
+
// // postcss.config.js
|
|
6
|
+
// import omniacss from "@birdycom/omniacss/postcss";
|
|
7
|
+
// export default { plugins: [omniacss({ content: ["resources/**/*.blade.php", "resources/js/**/*.{vue,tsx}"] })] };
|
|
8
|
+
//
|
|
9
|
+
// /* app.css */
|
|
10
|
+
// @omnia;
|
|
11
|
+
//
|
|
12
|
+
// Author: Serge Cools | Framework: OmniaCSS
|
|
13
|
+
|
|
14
|
+
import path from "node:path";
|
|
15
|
+
import postcss from "postcss";
|
|
16
|
+
import { buildCss } from "./engine.mjs";
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @param {{ content: string[], layer?: string|false, keep?: string[], cwd?: string }} options
|
|
20
|
+
*/
|
|
21
|
+
export default function omniacss(options = {}) {
|
|
22
|
+
return {
|
|
23
|
+
postcssPlugin: "omniacss",
|
|
24
|
+
async Once(root, { result }) {
|
|
25
|
+
const directives = [];
|
|
26
|
+
root.walkAtRules("omnia", (at) => directives.push(at));
|
|
27
|
+
if (!directives.length) return;
|
|
28
|
+
|
|
29
|
+
const cwd = options.cwd || process.cwd();
|
|
30
|
+
const { css, files } = await buildCss({ content: options.content, cwd, layer: options.layer ?? "omnia", keep: options.keep });
|
|
31
|
+
const generated = postcss.parse(css, { from: undefined });
|
|
32
|
+
|
|
33
|
+
directives[0].replaceWith(generated.nodes);
|
|
34
|
+
directives.slice(1).forEach((at) => at.remove());
|
|
35
|
+
|
|
36
|
+
// Let Vite & co. rebuild when a content file changes.
|
|
37
|
+
for (const file of files) {
|
|
38
|
+
result.messages.push({ type: "dependency", plugin: "omniacss", file: path.resolve(file), parent: result.opts.from });
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
omniacss.postcss = true;
|