@haiilo/catalyst 0.7.1 → 0.7.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/dist/catalyst/scss/_mixins.scss +9 -0
- package/dist/catalyst/scss/_variables.scss +64 -0
- package/dist/catalyst/scss/_variables.tokens.scss +84 -0
- package/dist/catalyst/scss/core/_base.scss +12 -0
- package/dist/catalyst/scss/core/_nav.scss +23 -0
- package/dist/catalyst/scss/core/_typography.scss +237 -0
- package/dist/catalyst/scss/fonts/_fonts.mixins.azeret.scss +14 -0
- package/dist/catalyst/scss/fonts/_fonts.mixins.dm.scss +53 -0
- package/dist/catalyst/scss/fonts/_fonts.mixins.lato.scss +185 -0
- package/dist/catalyst/scss/fonts/_fonts.mixins.scss +3 -0
- package/dist/catalyst/scss/fonts/_fonts.scss +13 -0
- package/dist/catalyst/scss/index.scss +32 -0
- package/dist/catalyst/scss/utils/_color.scss +52 -0
- package/dist/catalyst/scss/utils/_disabled.mixins.scss +7 -0
- package/dist/catalyst/scss/utils/_display.scss +20 -0
- package/dist/catalyst/scss/utils/_elevation.mixins.scss +10 -0
- package/dist/catalyst/scss/utils/_elevation.scss +19 -0
- package/dist/catalyst/scss/utils/_layout.scss +78 -0
- package/dist/catalyst/scss/utils/_media.mixins.scss +37 -0
- package/dist/catalyst/scss/utils/_ratio.mixins.scss +12 -0
- package/dist/catalyst/scss/utils/_ratio.scss +20 -0
- package/dist/catalyst/scss/utils/_sizing.mixins.scss +15 -0
- package/dist/catalyst/scss/utils/_sizing.scss +16 -0
- package/dist/catalyst/scss/utils/_spacing.mixins.scss +5 -0
- package/dist/catalyst/scss/utils/_spacing.scss +49 -0
- package/dist/catalyst/scss/utils/_toast.scss +77 -0
- package/dist/catalyst/scss/utils/_typography.mixins.scss +102 -0
- package/dist/catalyst/scss/utils/_typography.scss +34 -0
- package/dist/catalyst/scss/utils/_visibility.mixins.scss +29 -0
- package/dist/catalyst/scss/utils/_visibility.scss +13 -0
- package/dist/collection/scss/_mixins.scss +9 -0
- package/dist/collection/scss/_variables.scss +64 -0
- package/dist/collection/scss/_variables.tokens.scss +84 -0
- package/dist/collection/scss/core/_base.scss +12 -0
- package/dist/collection/scss/core/_nav.scss +23 -0
- package/dist/collection/scss/core/_typography.scss +237 -0
- package/dist/collection/scss/fonts/_fonts.mixins.azeret.scss +14 -0
- package/dist/collection/scss/fonts/_fonts.mixins.dm.scss +53 -0
- package/dist/collection/scss/fonts/_fonts.mixins.lato.scss +185 -0
- package/dist/collection/scss/fonts/_fonts.mixins.scss +3 -0
- package/dist/collection/scss/fonts/_fonts.scss +13 -0
- package/dist/collection/scss/index.scss +32 -0
- package/dist/collection/scss/utils/_color.scss +52 -0
- package/dist/collection/scss/utils/_disabled.mixins.scss +7 -0
- package/dist/collection/scss/utils/_display.scss +20 -0
- package/dist/collection/scss/utils/_elevation.mixins.scss +10 -0
- package/dist/collection/scss/utils/_elevation.scss +19 -0
- package/dist/collection/scss/utils/_layout.scss +78 -0
- package/dist/collection/scss/utils/_media.mixins.scss +37 -0
- package/dist/collection/scss/utils/_ratio.mixins.scss +12 -0
- package/dist/collection/scss/utils/_ratio.scss +20 -0
- package/dist/collection/scss/utils/_sizing.mixins.scss +15 -0
- package/dist/collection/scss/utils/_sizing.scss +16 -0
- package/dist/collection/scss/utils/_spacing.mixins.scss +5 -0
- package/dist/collection/scss/utils/_spacing.scss +49 -0
- package/dist/collection/scss/utils/_toast.scss +77 -0
- package/dist/collection/scss/utils/_typography.mixins.scss +102 -0
- package/dist/collection/scss/utils/_typography.scss +34 -0
- package/dist/collection/scss/utils/_visibility.mixins.scss +29 -0
- package/dist/collection/scss/utils/_visibility.scss +13 -0
- package/package.json +1 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// -- Reset
|
|
2
|
+
|
|
3
|
+
@use '~sanitize.css/sanitize.css';
|
|
4
|
+
@use '~sanitize.css/assets.css';
|
|
5
|
+
@use '~sanitize.css/reduce-motion.css';
|
|
6
|
+
|
|
7
|
+
// -- Vendor
|
|
8
|
+
|
|
9
|
+
@use '~toastify-js/src/toastify.css';
|
|
10
|
+
|
|
11
|
+
// -- Core
|
|
12
|
+
|
|
13
|
+
@use 'core/base' as *;
|
|
14
|
+
@use 'core/nav' as *;
|
|
15
|
+
@use 'core/typography' as *;
|
|
16
|
+
|
|
17
|
+
// -- Fonts
|
|
18
|
+
|
|
19
|
+
@use 'fonts/fonts' as *;
|
|
20
|
+
|
|
21
|
+
// -- Utils
|
|
22
|
+
|
|
23
|
+
@use 'utils/color';
|
|
24
|
+
@use 'utils/display';
|
|
25
|
+
@use 'utils/elevation';
|
|
26
|
+
@use 'utils/layout';
|
|
27
|
+
@use 'utils/sizing';
|
|
28
|
+
@use 'utils/spacing';
|
|
29
|
+
@use 'utils/typography';
|
|
30
|
+
@use 'utils/visibility';
|
|
31
|
+
@use 'utils/ratio';
|
|
32
|
+
@use 'utils/toast';
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
|
|
3
|
+
@each $name, $theme in cat-token('color.theme') {
|
|
4
|
+
.cat-bg-#{$name} {
|
|
5
|
+
background-color: cat-token('color.theme.#{$name}.bg') !important;
|
|
6
|
+
color: cat-token('color.theme.#{$name}.fill') !important;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.cat-bg-#{$name}-hover {
|
|
10
|
+
transition: background-color cat-token('time.transition.s'), color cat-token('time.transition.s');
|
|
11
|
+
|
|
12
|
+
&:hover {
|
|
13
|
+
background-color: cat-token('color.theme.#{$name}.bgHover') !important;
|
|
14
|
+
color: cat-token('color.theme.#{$name}.fillHover') !important;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.cat-text-#{$name},
|
|
19
|
+
.cat-link-#{$name} {
|
|
20
|
+
color: cat-token('color.theme.#{$name}.text') !important;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.cat-link-#{$name},
|
|
24
|
+
.cat-text-#{$name}-hover {
|
|
25
|
+
transition: color cat-token('time.transition.s');
|
|
26
|
+
|
|
27
|
+
&:hover {
|
|
28
|
+
color: cat-token('color.theme.#{$name}.textHover') !important;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
&:active {
|
|
32
|
+
color: cat-token('color.theme.#{$name}.textActive') !important;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.cat-active {
|
|
38
|
+
color: cat-token('color.theme.primary.text') !important;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.cat-muted {
|
|
42
|
+
color: cat-token('color.ui.font.muted') !important;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.cat-text-reset {
|
|
46
|
+
color: inherit !important;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.cat-link-reset {
|
|
50
|
+
color: inherit !important;
|
|
51
|
+
text-decoration: inherit !important;
|
|
52
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
@use 'media.mixins' as *;
|
|
3
|
+
|
|
4
|
+
$-display-props: none, inline, inline-block, block, grid, flex, inline-flex;
|
|
5
|
+
|
|
6
|
+
@each $prop in $-display-props {
|
|
7
|
+
.cat-#{$prop} {
|
|
8
|
+
display: $prop !important;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@each $key, $value in cat-token('size.screen') {
|
|
13
|
+
@include from($key) {
|
|
14
|
+
@each $prop in $-display-props {
|
|
15
|
+
.cat-#{$prop}\:#{$key} {
|
|
16
|
+
display: $prop !important;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
@use 'elevation.mixins' as *;
|
|
3
|
+
|
|
4
|
+
.cat-elevation-transition {
|
|
5
|
+
@include cat-elevation-transition;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
@each $level, $_def in $cat-elevation {
|
|
9
|
+
.cat-elevation-#{$level} {
|
|
10
|
+
@include cat-elevation($level);
|
|
11
|
+
}
|
|
12
|
+
.cat-elevation-hover-#{$level} {
|
|
13
|
+
&:hover,
|
|
14
|
+
&:focus,
|
|
15
|
+
&:focus-within {
|
|
16
|
+
@include cat-elevation($level);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
|
|
3
|
+
@mixin -layout-property($name, $property, $value) {
|
|
4
|
+
.cat-#{$name} {
|
|
5
|
+
#{$property}: #{$value};
|
|
6
|
+
@content;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// -- Direction
|
|
11
|
+
|
|
12
|
+
@include -layout-property('flex-row', 'flex-direction', 'row');
|
|
13
|
+
@include -layout-property('flex-col', 'flex-direction', 'column');
|
|
14
|
+
|
|
15
|
+
// -- Flex
|
|
16
|
+
|
|
17
|
+
@include -layout-property('flex-1', 'flex', '1 1 0%');
|
|
18
|
+
@include -layout-property('flex-auto', 'flex', '1 1 auto');
|
|
19
|
+
@include -layout-property('flex-init', 'flex', '0 1 auto');
|
|
20
|
+
@include -layout-property('flex-none', 'flex', 'none');
|
|
21
|
+
|
|
22
|
+
// -- Wrap
|
|
23
|
+
|
|
24
|
+
@include -layout-property('flex-wrap', 'flex-wrap', 'wrap');
|
|
25
|
+
@include -layout-property('flex-nowrap', 'flex-wrap', 'nowrap');
|
|
26
|
+
|
|
27
|
+
// -- Gap
|
|
28
|
+
|
|
29
|
+
@each $size, $value in cat-token('size.spacing') {
|
|
30
|
+
@include -layout-property('gap-#{$size}', 'gap', $value);
|
|
31
|
+
@include -layout-property('gap-x-#{$size}', 'column-gap', $value);
|
|
32
|
+
@include -layout-property('gap-y-#{$size}', 'row-gap', $value);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// -- Alignment
|
|
36
|
+
|
|
37
|
+
@include -layout-property('justify-start', 'justify-content', 'flex-start');
|
|
38
|
+
@include -layout-property('justify-end', 'justify-content', 'flex-end');
|
|
39
|
+
@include -layout-property('justify-center', 'justify-content', 'center');
|
|
40
|
+
@include -layout-property('justify-between', 'justify-content', 'space-between');
|
|
41
|
+
// @include -layout-property('justify-around', 'justify-content', 'space-around');
|
|
42
|
+
// @include -layout-property('justify-evenly', 'justify-content', 'space-evenly');
|
|
43
|
+
|
|
44
|
+
@include -layout-property('justify-items-start', 'justify-items', 'flex-start');
|
|
45
|
+
@include -layout-property('justify-items-end', 'justify-items', 'flex-end');
|
|
46
|
+
@include -layout-property('justify-items-center', 'justify-items', 'flex-center');
|
|
47
|
+
@include -layout-property('justify-items-stretch', 'justify-items', 'flex-stretch');
|
|
48
|
+
|
|
49
|
+
@include -layout-property('content-start', 'align-content', 'flex-start');
|
|
50
|
+
@include -layout-property('content-end', 'align-content', 'flex-end');
|
|
51
|
+
@include -layout-property('content-center', 'align-content', 'center');
|
|
52
|
+
@include -layout-property('content-between', 'align-content', 'space-between');
|
|
53
|
+
// @include -layout-property('content-around', 'align-content', 'space-around');
|
|
54
|
+
// @include -layout-property('content-evenly', 'align-content', 'space-evenly');
|
|
55
|
+
|
|
56
|
+
@include -layout-property('items-start', 'align-items', 'flex-start');
|
|
57
|
+
@include -layout-property('items-end', 'align-items', 'flex-end');
|
|
58
|
+
@include -layout-property('items-center', 'align-items', 'flex-center');
|
|
59
|
+
@include -layout-property('items-stretch', 'align-items', 'flex-stretch');
|
|
60
|
+
|
|
61
|
+
// -- Grid
|
|
62
|
+
|
|
63
|
+
@for $i from 1 through 12 {
|
|
64
|
+
@include -layout-property('grid-#{$i}', 'grid-template-columns', 'repeat(#{$i}, minmax(0, 1fr))');
|
|
65
|
+
@include -layout-property('grid-col-#{$i}', 'grid-column', 'span #{$i} / span #{$i}');
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@for $i from 1 through 6 {
|
|
69
|
+
@include -layout-property('grid-row-#{$i}', 'grid-row', 'span #{$i} / span #{$i}');
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
@include -layout-property(
|
|
73
|
+
'grid-auto',
|
|
74
|
+
'grid-template-columns',
|
|
75
|
+
'repeat(auto-fill,minmax(min(var(--grid-min),100%),1fr))'
|
|
76
|
+
) {
|
|
77
|
+
--grid-min: 100%;
|
|
78
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
|
|
3
|
+
// ---- Responsive
|
|
4
|
+
|
|
5
|
+
@mixin until($size, $media-type: screen) {
|
|
6
|
+
@media #{$media-type} and (max-width: #{cat-token('size.screen.#{$size}') - 1px}) {
|
|
7
|
+
@content;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
@mixin from($size, $media-type: screen) {
|
|
12
|
+
@media #{$media-type} and (min-width: #{cat-token('size.screen.#{$size}')}) {
|
|
13
|
+
@content;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
// ---- Print
|
|
18
|
+
|
|
19
|
+
@mixin print {
|
|
20
|
+
@media print {
|
|
21
|
+
@content;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// ---- Interaction
|
|
26
|
+
|
|
27
|
+
@mixin pointer($pointer: fine) {
|
|
28
|
+
@media (pointer: #{$pointer}) {
|
|
29
|
+
@content;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@mixin hover($hover: hover) {
|
|
34
|
+
@media (hover: #{$hover}) {
|
|
35
|
+
@content;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
@use 'ratio.mixins' as *;
|
|
2
|
+
|
|
3
|
+
$aspect-ratios: (
|
|
4
|
+
'1x1': 1,
|
|
5
|
+
'3x1': 3,
|
|
6
|
+
'6x1': 6,
|
|
7
|
+
'4x3': calc(4 / 3),
|
|
8
|
+
'16x9': calc(16 / 9),
|
|
9
|
+
'21x9': calc(21 / 9)
|
|
10
|
+
);
|
|
11
|
+
|
|
12
|
+
.cat-ratio {
|
|
13
|
+
@include cat-ratio(var(--cat-aspect-ratio));
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@each $key, $ratio in $aspect-ratios {
|
|
17
|
+
.cat-ratio-#{$key} {
|
|
18
|
+
--cat-aspect-ratio: #{$ratio};
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
|
|
3
|
+
@function cat-size($size) {
|
|
4
|
+
@return cat-token('size.base.#{$size}');
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
@function cat-border-radius($size) {
|
|
8
|
+
@if $size == '0' or $size == 0 {
|
|
9
|
+
@return none;
|
|
10
|
+
} @else if $size == 'full' {
|
|
11
|
+
@return 100rem;
|
|
12
|
+
} @else {
|
|
13
|
+
@return cat-token('size.border.radius.#{$size}');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
@use 'sizing.mixins' as *;
|
|
3
|
+
|
|
4
|
+
@each $size, $_def in cat-token('size.border.radius') {
|
|
5
|
+
.cat-radius-#{$size} {
|
|
6
|
+
border-radius: cat-border-radius($size);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.cat-radius-0 {
|
|
11
|
+
border-radius: cat-border-radius('0');
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.cat-radius-full {
|
|
15
|
+
border-radius: cat-border-radius('full');
|
|
16
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
@use '../variables' as *;
|
|
3
|
+
@use 'spacing.mixins' as *;
|
|
4
|
+
|
|
5
|
+
$-spacings: map.merge(
|
|
6
|
+
(
|
|
7
|
+
'auto': auto,
|
|
8
|
+
'0': 0
|
|
9
|
+
),
|
|
10
|
+
cat-token('size.spacing')
|
|
11
|
+
);
|
|
12
|
+
|
|
13
|
+
@each $name, $spacing in $-spacings {
|
|
14
|
+
.cat-m-#{$name} {
|
|
15
|
+
margin: $spacing !important;
|
|
16
|
+
}
|
|
17
|
+
.cat-mv-#{$name} {
|
|
18
|
+
margin-top: $spacing !important;
|
|
19
|
+
margin-bottom: $spacing !important;
|
|
20
|
+
}
|
|
21
|
+
.cat-mh-#{$name} {
|
|
22
|
+
margin-left: $spacing !important;
|
|
23
|
+
margin-right: $spacing !important;
|
|
24
|
+
}
|
|
25
|
+
@each $dir in (top, bottom, left, right) {
|
|
26
|
+
.cat-m#{str-slice($dir, 0, 1)}-#{$name} {
|
|
27
|
+
margin-#{$dir}: $spacing !important;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
@if $spacing != auto {
|
|
32
|
+
.cat-p-#{$name} {
|
|
33
|
+
padding: $spacing !important;
|
|
34
|
+
}
|
|
35
|
+
.cat-pv-#{$name} {
|
|
36
|
+
padding-top: $spacing !important;
|
|
37
|
+
padding-bottom: $spacing !important;
|
|
38
|
+
}
|
|
39
|
+
.cat-ph-#{$name} {
|
|
40
|
+
padding-left: $spacing !important;
|
|
41
|
+
padding-right: $spacing !important;
|
|
42
|
+
}
|
|
43
|
+
@each $dir in (top, bottom, left, right) {
|
|
44
|
+
.cat-p#{str-slice($dir, 0, 1)}-#{$name} {
|
|
45
|
+
padding-#{$dir}: $spacing !important;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
@import 'variables';
|
|
2
|
+
@import 'mixins';
|
|
3
|
+
|
|
4
|
+
$-background-color: cat-token('color.base.neutral.0');
|
|
5
|
+
$-text-color: cat-token('color.base.neutral.900');
|
|
6
|
+
$-title-border: cat-token('color.base.neutral.300');
|
|
7
|
+
$-shadow: cat-token('color.ui.border.dark');
|
|
8
|
+
$-error-color: cat-token('color.theme.danger.text');
|
|
9
|
+
$-info-color: cat-token('color.theme.secondary.text');
|
|
10
|
+
$-success-color: cat-token('color.theme.success.text');
|
|
11
|
+
|
|
12
|
+
.cat-toastify {
|
|
13
|
+
background: $-background-color;
|
|
14
|
+
color: $-text-color;
|
|
15
|
+
padding: 0;
|
|
16
|
+
@include cat-elevation(1);
|
|
17
|
+
|
|
18
|
+
.toast-close {
|
|
19
|
+
float: right;
|
|
20
|
+
font-size: 20px;
|
|
21
|
+
margin-top: 0.5rem;
|
|
22
|
+
position: absolute;
|
|
23
|
+
top: 0;
|
|
24
|
+
right: 0;
|
|
25
|
+
z-index: 10;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.cat-toastify-wrapper {
|
|
29
|
+
display: block;
|
|
30
|
+
position: relative;
|
|
31
|
+
|
|
32
|
+
.cat-toastify-icon-wrapper {
|
|
33
|
+
position: absolute;
|
|
34
|
+
top: 6px;
|
|
35
|
+
left: 5px;
|
|
36
|
+
|
|
37
|
+
&.info {
|
|
38
|
+
color: $-info-color;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
&.error {
|
|
42
|
+
color: $-error-color;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
&.success {
|
|
46
|
+
color: $-success-color;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.cat-toastify-title-wrapper {
|
|
51
|
+
width: 100%;
|
|
52
|
+
padding: 0.5rem 0.5rem 0.5rem 2rem;
|
|
53
|
+
|
|
54
|
+
&.has-message {
|
|
55
|
+
border-bottom: 1px solid $-title-border;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.cat-toastify-title {
|
|
59
|
+
width: 100%;
|
|
60
|
+
padding-right: 25px;
|
|
61
|
+
overflow: hidden;
|
|
62
|
+
text-overflow: ellipsis;
|
|
63
|
+
white-space: nowrap;
|
|
64
|
+
font-size: 15px;
|
|
65
|
+
line-height: 20px;
|
|
66
|
+
font-weight: 600;
|
|
67
|
+
color: $-text-color;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.cat-toastify-message {
|
|
72
|
+
width: 100%;
|
|
73
|
+
padding: 0.5rem;
|
|
74
|
+
color: $-text-color;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
@use '../variables' as *;
|
|
2
|
+
|
|
3
|
+
// ---- Head
|
|
4
|
+
|
|
5
|
+
@function cat-head-font-family() {
|
|
6
|
+
@return cat-token('font.family.head'), $font-fallback-sans-serif;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
@function cat-head-font-size($size) {
|
|
10
|
+
@return cat-token('size.font.head.#{$size}');
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@function cat-head-line-height($size) {
|
|
14
|
+
@return cat-token('size.line.head.#{$size}');
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@mixin cat-head($size, $weight: null) {
|
|
18
|
+
font-family: cat-head-font-family();
|
|
19
|
+
font-size: cat-head-font-size($size);
|
|
20
|
+
line-height: cat-head-line-height($size);
|
|
21
|
+
color: cat-token('color.ui.font.head');
|
|
22
|
+
font-weight: $weight;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// ---- Body
|
|
26
|
+
|
|
27
|
+
@function cat-body-font-family() {
|
|
28
|
+
@return cat-token('font.family.body'), $font-fallback-sans-serif;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
@function cat-body-font-size($size) {
|
|
32
|
+
@return cat-token('size.font.body.#{$size}');
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
@function cat-body-line-height($size) {
|
|
36
|
+
@return cat-token('size.line.body.#{$size}');
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
@mixin cat-body($size, $weight: null) {
|
|
40
|
+
// skip font family, as it is set on the body
|
|
41
|
+
// skip color, as it is set on the body
|
|
42
|
+
font-size: cat-body-font-size($size);
|
|
43
|
+
line-height: cat-body-line-height($size);
|
|
44
|
+
font-weight: $weight;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// ---- Mono
|
|
48
|
+
|
|
49
|
+
@function cat-mono-font-family() {
|
|
50
|
+
@return cat-token('font.family.mono'), $font-fallback-monospace;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
@function cat-mono-font-size($size) {
|
|
54
|
+
@return cat-token('size.font.mono.#{$size}');
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
@function cat-mono-line-height($size) {
|
|
58
|
+
@return cat-token('size.line.mono.#{$size}');
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@mixin cat-mono($size, $weight: null) {
|
|
62
|
+
font-family: cat-mono-font-family();
|
|
63
|
+
font-size: cat-mono-font-size($size);
|
|
64
|
+
line-height: cat-mono-line-height($size);
|
|
65
|
+
color: cat-token('color.ui.font.mono');
|
|
66
|
+
font-weight: $weight;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// ---- Utils
|
|
70
|
+
|
|
71
|
+
@mixin cat-break-word {
|
|
72
|
+
word-wrap: break-word;
|
|
73
|
+
word-break: break-word;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
@mixin cat-ellipsis($lines: 1) {
|
|
77
|
+
/* stylelint-disable value-no-vendor-prefix, property-no-vendor-prefix */
|
|
78
|
+
@if $lines == 1 {
|
|
79
|
+
overflow: hidden;
|
|
80
|
+
text-overflow: ellipsis;
|
|
81
|
+
white-space: nowrap;
|
|
82
|
+
} @else {
|
|
83
|
+
display: -webkit-box;
|
|
84
|
+
-webkit-line-clamp: $lines;
|
|
85
|
+
-webkit-box-orient: vertical;
|
|
86
|
+
overflow: hidden;
|
|
87
|
+
}
|
|
88
|
+
/* stylelint-enable value-no-vendor-prefix, property-no-vendor-prefix */
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
@mixin cat-select($select: auto) {
|
|
92
|
+
/* stylelint-disable property-no-vendor-prefix */
|
|
93
|
+
-webkit-user-select: $select;
|
|
94
|
+
-ms-user-select: $select;
|
|
95
|
+
user-select: $select;
|
|
96
|
+
/* stylelint-enable property-no-vendor-prefix */
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@mixin cat-font-smooth() {
|
|
100
|
+
-webkit-font-smoothing: antialiased;
|
|
101
|
+
-moz-osx-font-smoothing: greyscale;
|
|
102
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
@use 'typography.mixins' as *;
|
|
2
|
+
|
|
3
|
+
.cat-text-left {
|
|
4
|
+
text-align: left !important;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.cat-text-center {
|
|
8
|
+
text-align: center !important;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.cat-text-right {
|
|
12
|
+
text-align: right !important;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.cat-ellipsis {
|
|
16
|
+
@include cat-ellipsis;
|
|
17
|
+
}
|
|
18
|
+
@for $i from 1 through 5 {
|
|
19
|
+
.cat-ellipsis-#{$i} {
|
|
20
|
+
@include cat-ellipsis($i);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.cat-select {
|
|
25
|
+
@include cat-select;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.cat-no-select {
|
|
29
|
+
@include cat-select(none);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.cat-break-word {
|
|
33
|
+
@include cat-break-word;
|
|
34
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
@mixin cat-visually-hidden {
|
|
2
|
+
position: absolute !important;
|
|
3
|
+
width: 1px !important;
|
|
4
|
+
height: 1px !important;
|
|
5
|
+
padding: 0 !important;
|
|
6
|
+
margin: -1px !important;
|
|
7
|
+
overflow: hidden !important;
|
|
8
|
+
clip: rect(0, 0, 0, 0) !important;
|
|
9
|
+
white-space: nowrap !important;
|
|
10
|
+
border: 0 !important;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@mixin cat-visually-hidden-focusable {
|
|
14
|
+
&:not(:focus):not(:focus-within) {
|
|
15
|
+
@include cat-visually-hidden;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
@mixin cat-visually-hidden-hoverable($container: null) {
|
|
20
|
+
@if $container {
|
|
21
|
+
#{$container}:not(:hover):not(:focus):not(:focus-within) & {
|
|
22
|
+
@include cat-visually-hidden;
|
|
23
|
+
}
|
|
24
|
+
} @else {
|
|
25
|
+
*:not(:hover):not(:focus):not(:focus-within) > & {
|
|
26
|
+
@include cat-visually-hidden;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
@use 'visibility.mixins' as *;
|
|
2
|
+
|
|
3
|
+
.cat-visually-hidden {
|
|
4
|
+
@include cat-visually-hidden;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.cat-visually-hidden-focusable {
|
|
8
|
+
@include cat-visually-hidden-focusable;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.cat-visually-hidden-hoverable {
|
|
12
|
+
@include cat-visually-hidden-hoverable;
|
|
13
|
+
}
|