@moda/om 19.8.2 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/README.md +1 -2
  2. package/dist/index.cjs.js +72 -26
  3. package/dist/index.cjs.js.map +1 -1
  4. package/dist/index.esm.js +72 -26
  5. package/dist/index.esm.js.map +1 -1
  6. package/dist/styles.css +1 -1
  7. package/index.scss +1 -0
  8. package/package.json +65 -62
  9. package/src/components/AspectRatioBox/AspectRatioBox.scss +1 -1
  10. package/src/components/Badge/Badge.scss +17 -17
  11. package/src/components/Breadcrumbs/Breadcrumb/Breadcrumb.scss +5 -5
  12. package/src/components/Breadcrumbs/Breadcrumbs.scss +2 -2
  13. package/src/components/Breakpoint/Breakpoint.scss +9 -7
  14. package/src/components/Button/Button.scss +45 -44
  15. package/src/components/Checkbox/Checkbox.scss +11 -11
  16. package/src/components/Checkbox/Checkbox.tsx +1 -1
  17. package/src/components/Clickable/Clickable.scss +3 -3
  18. package/src/components/ColorSwatch/ColorSwatch.scss +9 -9
  19. package/src/components/ColorSwatch/ColorSwatch.tsx +2 -2
  20. package/src/components/Constrain/Constrain.scss +9 -8
  21. package/src/components/Constrain/ExceedConstrain.scss +7 -7
  22. package/src/components/ControlLink/ControlLink.scss +6 -6
  23. package/src/components/DefinitionList/DefinitionList.scss +5 -5
  24. package/src/components/Dialog/Dialog.scss +4 -4
  25. package/src/components/Divider/Divider.scss +5 -5
  26. package/src/components/Expandable/Expandable.scss +17 -17
  27. package/src/components/Field/Field.scss +7 -7
  28. package/src/components/Label/Label.scss +4 -4
  29. package/src/components/Loading/Loading.scss +4 -4
  30. package/src/components/LoadingBalls/LoadingBalls.scss +2 -2
  31. package/src/components/LoadingShapes/LoadingShapes.scss +2 -2
  32. package/src/components/Modal/Modal.scss +1 -1
  33. package/src/components/ModalOverlay/ModalOverlay.scss +6 -6
  34. package/src/components/Overlay/Overlay.scss +4 -4
  35. package/src/components/Paginator/Paginator.scss +10 -10
  36. package/src/components/PasswordInput/PasswordInput.scss +4 -4
  37. package/src/components/Popover/Popover.scss +9 -9
  38. package/src/components/Popover/Popover.tsx +6 -2
  39. package/src/components/PromoBanner/PromoBanner.scss +9 -9
  40. package/src/components/RadioButton/RadioButton.scss +14 -14
  41. package/src/components/SearchInput/SearchInput.scss +4 -4
  42. package/src/components/Select/MultiSelect.scss +14 -14
  43. package/src/components/Select/MultiSelect.tsx +1 -1
  44. package/src/components/Select/Select.scss +25 -25
  45. package/src/components/Select/Select.tsx +1 -1
  46. package/src/components/Select/SelectOption.scss +7 -7
  47. package/src/components/Select/SelectOption.tsx +1 -1
  48. package/src/components/Select/SelectOptions.scss +8 -8
  49. package/src/components/Select/SelectOptions.tsx +2 -2
  50. package/src/components/Select/useSelect.ts +1 -1
  51. package/src/components/SelectableButton/SelectableButton.scss +13 -13
  52. package/src/components/SlidingPane/SlidingPane.scss +7 -7
  53. package/src/components/Stack/Stack.scss +6 -4
  54. package/src/components/Tabs/Tab.scss +6 -6
  55. package/src/components/Tabs/TabList.scss +3 -3
  56. package/src/components/Tabs/TabPanels.scss +2 -2
  57. package/src/components/Tag/Tag.scss +8 -8
  58. package/src/components/Text/Text.scss +4 -3
  59. package/src/components/TextInput/TextInput.scss +2 -2
  60. package/src/components/Textarea/Textarea.scss +3 -3
  61. package/src/components/Toast/Toast.scss +6 -6
  62. package/src/components/VerticalDivider/VerticalDivider.scss +3 -3
  63. package/src/index.scss +3 -3
  64. package/src/mixins/_mixins.scss +7 -7
  65. package/src/mixins/font-smoothing/_font-smoothing.scss +0 -2
  66. package/src/mixins/font-smoothing/font-smoothing.stories.scss +3 -3
  67. package/src/mixins/global-styles/_global-styles.scss +6 -5
  68. package/src/mixins/input-styles/_input-styles.scss +14 -12
  69. package/src/mixins/overflow-scroll/_overflow-scroll.scss +0 -2
  70. package/src/mixins/overflow-scroll/overflow-scroll.stories.scss +3 -3
  71. package/src/mixins/stack/_stack.scss +3 -3
  72. package/src/mixins/stack/stack.stories.scss +3 -3
  73. package/src/mixins/thin-underline/_thin-underline.scss +0 -2
  74. package/src/mixins/thin-underline/thin-underline.stories.scss +2 -2
  75. package/src/mixins/visually-hidden/_visually-hidden.scss +0 -2
  76. package/src/mixins/visually-hidden/visually-hidden.stories.scss +2 -2
  77. package/src/utilities/States/State.scss +4 -4
  78. package/src/utilities/States/States.scss +2 -2
  79. package/src/utilities/States/StatesProps.scss +8 -8
@@ -1,9 +1,9 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .LoadingShapes__item--current {
4
4
  // stylelint-disable-next-line plugin/selector-bem-pattern
5
5
  path {
6
- fill: color('snow');
6
+ fill: om.color('snow');
7
7
  transition: fill 1s;
8
8
  }
9
9
  }
@@ -1,4 +1,4 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .Modal {
4
4
  position: fixed;
@@ -1,15 +1,15 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .ModalOverlay {
4
4
  background: rgba(255, 255, 255, 0.9);
5
- padding: spacing(8, 6);
5
+ padding: om.spacing(8, 6);
6
6
 
7
- @include breakpoint(sm, $prop: max-width) {
8
- padding: spacing(8, 4);
7
+ @include om.breakpoint(sm, $prop: max-width) {
8
+ padding: om.spacing(8, 4);
9
9
  }
10
10
 
11
- @include breakpoint(xs, $prop: max-width) {
12
- padding: spacing(8, 2);
11
+ @include om.breakpoint(xs, $prop: max-width) {
12
+ padding: om.spacing(8, 2);
13
13
  }
14
14
 
15
15
  &__content {
@@ -1,17 +1,17 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .Overlay {
4
- @include stack(2);
4
+ @include om.stack(2);
5
5
 
6
6
  position: absolute;
7
7
  top: 0;
8
8
  right: 0;
9
9
  bottom: 0;
10
10
  left: 0;
11
- background-color: color('snow', 0.9);
11
+ background-color: om.color('snow', 0.9);
12
12
  justify-content: center;
13
13
  align-items: center;
14
- color: color('ink');
14
+ color: om.color('ink');
15
15
  animation: slow-in 0.5s;
16
16
 
17
17
  @keyframes slow-in {
@@ -1,21 +1,21 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .Paginator {
4
4
  display: flex;
5
5
  justify-content: center;
6
6
 
7
7
  &__button {
8
- @include text(body1);
8
+ @include om.text(body1);
9
9
 
10
10
  border: none;
11
- height: space(6);
12
- width: space(6);
11
+ height: om.space(6);
12
+ width: om.space(6);
13
13
  display: flex;
14
14
  justify-content: center;
15
15
  align-items: center;
16
16
  cursor: pointer;
17
- margin-right: space(1);
18
- margin-left: space(1);
17
+ margin-right: om.space(1);
18
+ margin-left: om.space(1);
19
19
  background-color: transparent;
20
20
 
21
21
  &:first-child {
@@ -27,7 +27,7 @@
27
27
  }
28
28
 
29
29
  &:hover {
30
- background-color: color(noise);
30
+ background-color: om.color(noise);
31
31
  }
32
32
 
33
33
  &--next,
@@ -36,16 +36,16 @@
36
36
  }
37
37
 
38
38
  &--currentPage {
39
- background-color: color(noise);
39
+ background-color: om.color(noise);
40
40
  }
41
41
  }
42
42
 
43
43
  &__next-chevron {
44
- margin-left: space(2);
44
+ margin-left: om.space(2);
45
45
  }
46
46
 
47
47
  &__previous-chevron {
48
- margin-right: space(2);
48
+ margin-right: om.space(2);
49
49
  }
50
50
 
51
51
  &__button--ellipsis {
@@ -1,4 +1,4 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .PasswordInput {
4
4
  position: relative;
@@ -9,10 +9,10 @@
9
9
 
10
10
  &__password-action {
11
11
  position: absolute;
12
- top: space(2);
13
- right: space(6);
12
+ top: om.space(2);
13
+ right: om.space(6);
14
14
 
15
- @include breakpoint(sm, $prop: max-width) {
15
+ @include om.breakpoint(sm, $prop: max-width) {
16
16
  top: 0.7rem;
17
17
  }
18
18
  }
@@ -1,17 +1,17 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .Popover {
4
4
  $self: &;
5
- $caret-size: space(2);
5
+ $caret-size: om.space(2);
6
6
  $border-width: calc(1rem / 16);
7
- $offset: space(2);
7
+ $offset: om.space(2);
8
8
 
9
9
  position: relative;
10
10
 
11
11
  &__content {
12
12
  position: absolute;
13
- background-color: color('snow');
14
- border: $border-width solid color(elephant);
13
+ background-color: om.color('snow');
14
+ border: $border-width solid om.color(elephant);
15
15
  z-index: 1;
16
16
 
17
17
  // Fills space of offset so hover works without issue
@@ -119,11 +119,11 @@
119
119
  top: auto;
120
120
  bottom: -($border-width + $offset);
121
121
  border-top: none;
122
- border-bottom: $caret-size solid color('snow');
122
+ border-bottom: $caret-size solid om.color('snow');
123
123
  }
124
124
 
125
125
  &:before {
126
- border-bottom: $caret-size solid color(ink);
126
+ border-bottom: $caret-size solid om.color(ink);
127
127
  }
128
128
  }
129
129
  }
@@ -137,12 +137,12 @@
137
137
  &:before {
138
138
  top: -($border-width + $offset);
139
139
  bottom: auto;
140
- border-top: $caret-size solid color('snow');
140
+ border-top: $caret-size solid om.color('snow');
141
141
  border-bottom: none;
142
142
  }
143
143
 
144
144
  &:before {
145
- border-top: $caret-size solid color(ink);
145
+ border-top: $caret-size solid om.color(ink);
146
146
  }
147
147
  }
148
148
  }
@@ -69,7 +69,7 @@ export const Popover: React.FC<PopoverProps> = ({
69
69
 
70
70
  const handleMouseEnter = useCallback(() => {
71
71
  if (!open) {
72
- timeout.current && clearTimeout(timeout.current);
72
+ if (timeout.current) clearTimeout(timeout.current);
73
73
  handleOpen();
74
74
  }
75
75
  }, [handleOpen, open]);
@@ -115,7 +115,11 @@ export const Popover: React.FC<PopoverProps> = ({
115
115
  useEffect(() => {
116
116
  if (open === undefined) return;
117
117
 
118
- open ? handleOpen() : handleClose();
118
+ if (open) {
119
+ handleOpen();
120
+ } else {
121
+ handleClose();
122
+ }
119
123
  }, [handleClose, handleOpen, open]);
120
124
 
121
125
  const isOpen =
@@ -1,12 +1,12 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .PromoBanner {
4
4
  $self: &;
5
5
 
6
- @include text(body2);
6
+ @include om.text(body2);
7
7
 
8
- background-color: color(cream);
9
- border-top: space(1) solid color(burnt-orange);
8
+ background-color: om.color(cream);
9
+ border-top: om.space(1) solid om.color(burnt-orange);
10
10
 
11
11
  &__constrain {
12
12
  display: flex;
@@ -15,8 +15,8 @@
15
15
  }
16
16
 
17
17
  &__child {
18
- min-width: space(11);
19
- padding: spacing(2, 3);
18
+ min-width: om.space(11);
19
+ padding: om.spacing(2, 3);
20
20
 
21
21
  &--center {
22
22
  flex: 1;
@@ -33,13 +33,13 @@
33
33
  }
34
34
 
35
35
  > a {
36
- color: color(ink);
36
+ color: om.color(ink);
37
37
 
38
- @include thin-underline();
38
+ @include om.thin-underline();
39
39
  }
40
40
  }
41
41
 
42
- @include breakpoint(sm, $prop: max-width) {
42
+ @include om.breakpoint(sm, $prop: max-width) {
43
43
  #{$self}__child--left,
44
44
  #{$self}__child--right {
45
45
  display: none;
@@ -1,16 +1,16 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .RadioButton {
4
- $radio-button-size: space(4);
5
- $radio-button-check-offset: space(1);
4
+ $radio-button-size: om.space(4);
5
+ $radio-button-check-offset: om.space(1);
6
6
 
7
- @include stack(2, $direction: horizontal);
7
+ @include om.stack(2, $direction: horizontal);
8
8
 
9
9
  position: relative;
10
10
  align-items: center;
11
11
  user-select: none;
12
12
  cursor: pointer;
13
- color: color(ink);
13
+ color: om.color(ink);
14
14
 
15
15
  &__indicator {
16
16
  position: relative;
@@ -19,10 +19,10 @@
19
19
  flex-shrink: 0;
20
20
  border: 1px solid;
21
21
  border-radius: 50%;
22
- background-color: color('snow');
22
+ background-color: om.color('snow');
23
23
 
24
24
  &--checked {
25
- background-color: color(ink);
25
+ background-color: om.color(ink);
26
26
 
27
27
  &::after {
28
28
  content: '';
@@ -33,27 +33,27 @@
33
33
  bottom: $radio-button-check-offset;
34
34
  left: $radio-button-check-offset;
35
35
  border-radius: 50%;
36
- background-color: color('snow');
36
+ background-color: om.color('snow');
37
37
  }
38
38
  }
39
39
 
40
40
  &--disabled {
41
- color: color(elephant);
41
+ color: om.color(elephant);
42
42
  pointer-events: none;
43
- background-color: color('snow');
43
+ background-color: om.color('snow');
44
44
  &::after {
45
- background-color: color(elephant);
45
+ background-color: om.color(elephant);
46
46
  }
47
47
  }
48
48
  }
49
49
 
50
50
  &__input {
51
- @include visually-hidden();
51
+ @include om.visually-hidden();
52
52
  }
53
53
 
54
54
  &__label {
55
- @include text(body1);
55
+ @include om.text(body1);
56
56
 
57
- color: color(ink);
57
+ color: om.color(ink);
58
58
  }
59
59
  }
@@ -1,7 +1,7 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .SearchInput {
4
- $icon-width: space(7);
4
+ $icon-width: om.space(7);
5
5
 
6
6
  position: relative;
7
7
  display: inline-block;
@@ -16,7 +16,7 @@
16
16
  bottom: 0;
17
17
  width: $icon-width;
18
18
  height: 100%;
19
- color: color(cement);
19
+ color: om.color(cement);
20
20
  }
21
21
 
22
22
  &__input--round-borders {
@@ -37,7 +37,7 @@
37
37
  right: 0;
38
38
 
39
39
  &:hover {
40
- color: color(ink);
40
+ color: om.color(ink);
41
41
  cursor: pointer;
42
42
  }
43
43
  }
@@ -1,4 +1,4 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .MultiSelect {
4
4
  $self: &;
@@ -12,27 +12,27 @@
12
12
  cursor: default;
13
13
 
14
14
  #{$self}__search {
15
- color: color(fog);
15
+ color: om.color(fog);
16
16
  cursor: default;
17
17
 
18
18
  &:hover,
19
19
  &:focus {
20
- border-color: color(elephant);
21
- background-color: color(noise);
20
+ border-color: om.color(elephant);
21
+ background-color: om.color(noise);
22
22
  }
23
23
  }
24
24
  }
25
25
 
26
26
  &--error {
27
- border: 1px solid color(code-red);
27
+ border: 1px solid om.color(code-red);
28
28
  }
29
29
 
30
30
  &__search {
31
- @include input-styles();
31
+ @include om.input-styles();
32
32
 
33
33
  display: flex;
34
34
  align-items: center;
35
- padding: spacing(1, 7, 1, 1);
35
+ padding: om.spacing(1, 7, 1, 1);
36
36
  }
37
37
 
38
38
  &__selected-items {
@@ -43,10 +43,10 @@
43
43
  &__selected-item {
44
44
  display: flex;
45
45
  align-items: center;
46
- border: 1px solid color('ink');
47
- border-radius: space(2);
48
- margin: space(1);
49
- padding: space(1);
46
+ border: 1px solid om.color('ink');
47
+ border-radius: om.space(2);
48
+ margin: om.space(1);
49
+ padding: om.space(1);
50
50
  }
51
51
 
52
52
  &__selected-value {
@@ -54,19 +54,19 @@
54
54
  }
55
55
 
56
56
  &__exit {
57
- margin-left: space(1);
57
+ margin-left: om.space(1);
58
58
  cursor: pointer;
59
59
  }
60
60
 
61
61
  &__icon {
62
62
  pointer-events: none;
63
63
  position: absolute;
64
- right: space(4);
64
+ right: om.space(4);
65
65
  top: 50%;
66
66
  transform: translateY(-50%);
67
67
 
68
68
  &--shifted {
69
- right: space(6);
69
+ right: om.space(6);
70
70
  }
71
71
  }
72
72
  }
@@ -71,7 +71,7 @@ export const MultiSelect: React.FC<Props> = ({
71
71
  );
72
72
 
73
73
  useEffect(() => {
74
- onChange && onChange(values);
74
+ onChange?.(values);
75
75
  }, [onChange, values]);
76
76
 
77
77
  return (
@@ -1,11 +1,11 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .Select {
4
4
  $self: &;
5
5
 
6
6
  //ios devices zoom in if inputs are smaller than 16px
7
- @include breakpoint(sm, $prop: max-width) {
8
- @include text(h6);
7
+ @include om.breakpoint(sm, $prop: max-width) {
8
+ @include om.text(h6);
9
9
  }
10
10
 
11
11
  min-height: 2.5625rem;
@@ -17,35 +17,35 @@
17
17
  cursor: default;
18
18
 
19
19
  #{$self}__value {
20
- color: color(fog);
20
+ color: om.color(fog);
21
21
  cursor: default;
22
22
 
23
23
  &:hover,
24
24
  &:focus {
25
- border-color: color(elephant);
26
- background-color: color('snow');
25
+ border-color: om.color(elephant);
26
+ background-color: om.color('snow');
27
27
  }
28
28
  }
29
29
  }
30
30
 
31
31
  &--error {
32
- border: 1px solid color(code-red);
32
+ border: 1px solid om.color(code-red);
33
33
  }
34
34
 
35
35
  &__value {
36
- @include text(body1);
36
+ @include om.text(body1);
37
37
 
38
38
  //ios devices zoom in if inputs are smaller than 16px
39
- @include breakpoint(sm, $prop: max-width) {
40
- @include text(h6);
39
+ @include om.breakpoint(sm, $prop: max-width) {
40
+ @include om.text(h6);
41
41
  }
42
42
 
43
43
  display: block;
44
44
  width: 100%;
45
45
  text-align: left;
46
- padding: spacing(2, 7, 2, 3);
47
- color: color(ink);
48
- border: 1px solid color(elephant);
46
+ padding: om.spacing(2, 7, 2, 3);
47
+ color: om.color(ink);
48
+ border: 1px solid om.color(elephant);
49
49
  overflow: hidden;
50
50
  white-space: nowrap;
51
51
  text-overflow: ellipsis;
@@ -53,25 +53,25 @@
53
53
  cursor: pointer;
54
54
 
55
55
  &:hover {
56
- border-color: color(cement);
57
- background-color: color(noise);
56
+ border-color: om.color(cement);
57
+ background-color: om.color(noise);
58
58
  }
59
59
 
60
60
  &:focus {
61
- border-color: color(cement);
62
- background-color: color(elephant);
61
+ border-color: om.color(cement);
62
+ background-color: om.color(elephant);
63
63
  }
64
64
  }
65
65
 
66
66
  &__icon {
67
67
  pointer-events: none;
68
68
  position: absolute;
69
- right: space(4);
69
+ right: om.space(4);
70
70
  top: 50%;
71
71
  transform: translateY(-50%);
72
72
 
73
73
  &--shifted {
74
- right: space(6);
74
+ right: om.space(6);
75
75
  }
76
76
  }
77
77
 
@@ -85,12 +85,12 @@
85
85
  &--up {
86
86
  flex-direction: column-reverse;
87
87
  bottom: 100%;
88
- margin-bottom: space(1);
88
+ margin-bottom: om.space(1);
89
89
  }
90
90
 
91
91
  &--down {
92
92
  flex-direction: column;
93
- margin-top: space(1);
93
+ margin-top: om.space(1);
94
94
  top: 100%;
95
95
  }
96
96
  }
@@ -105,15 +105,15 @@
105
105
  }
106
106
 
107
107
  &__selected-color {
108
- border-color: color(ink);
108
+ border-color: om.color(ink);
109
109
  border-style: solid;
110
110
  border-radius: 50%;
111
111
  border-width: 1px;
112
112
  display: inline-block;
113
- height: space(4);
113
+ height: om.space(4);
114
114
  position: absolute;
115
- right: space(7);
115
+ right: om.space(7);
116
116
  transform: translateY(25%);
117
- width: space(4);
117
+ width: om.space(4);
118
118
  }
119
119
  }
@@ -82,7 +82,7 @@ export const Select: React.FC<SelectProps> = ({
82
82
 
83
83
  const handleAutofill = useCallback(
84
84
  (value: string) => {
85
- value && dispatch({ type: 'SELECT', payload: { value } });
85
+ if (value) dispatch({ type: 'SELECT', payload: { value } });
86
86
  },
87
87
  [dispatch]
88
88
  );
@@ -1,13 +1,13 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .SelectOption {
4
- @include text(body1);
4
+ @include om.text(body1);
5
5
 
6
6
  display: block;
7
7
  width: 100%;
8
8
  text-align: left;
9
- padding: spacing(2, 3);
10
- color: color(ink);
9
+ padding: om.spacing(2, 3);
10
+ color: om.color(ink);
11
11
 
12
12
  &--selected {
13
13
  text-decoration: underline;
@@ -15,15 +15,15 @@
15
15
 
16
16
  &:hover,
17
17
  &--active {
18
- background-color: color(noise);
18
+ background-color: om.color(noise);
19
19
  }
20
20
 
21
21
  &--disabled {
22
- color: color(fog);
22
+ color: om.color(fog);
23
23
  cursor: default;
24
24
 
25
25
  &:hover {
26
- background-color: color('snow');
26
+ background-color: om.color('snow');
27
27
  }
28
28
  }
29
29
  }
@@ -25,7 +25,7 @@ export const SelectOption: React.FC<SelectOptionProps> = ({
25
25
  const handleClick = useCallback(
26
26
  (event: React.MouseEvent<HTMLLIElement>) => {
27
27
  event.preventDefault();
28
- !option.disabled && onClick(option);
28
+ if (!option.disabled) onClick(option);
29
29
  },
30
30
  [onClick, option]
31
31
  );
@@ -1,24 +1,24 @@
1
- @import '~om';
1
+ @use '~@moda/om';
2
2
 
3
3
  .SelectOptions {
4
- background-color: color('snow');
5
- border: 1px solid color(elephant);
4
+ background-color: om.color('snow');
5
+ border: 1px solid om.color(elephant);
6
6
 
7
7
  &:focus {
8
8
  outline: 0;
9
- border-color: color(cement);
9
+ border-color: om.color(cement);
10
10
  }
11
11
 
12
12
  &__search {
13
- margin: space(2);
13
+ margin: om.space(2);
14
14
  }
15
15
 
16
16
  &__none {
17
- padding: spacing(2, 3);
17
+ padding: om.spacing(2, 3);
18
18
  }
19
19
 
20
20
  &__list {
21
- @include overflow-scroll();
22
- max-height: space(12);
21
+ @include om.overflow-scroll();
22
+ max-height: om.space(12);
23
23
  }
24
24
  }
@@ -51,12 +51,12 @@ export const SelectOptions: React.FC<SelectOptionsProps> = ({
51
51
 
52
52
  useEffect(() => {
53
53
  if (autoFocus) {
54
- ref.current && ref.current.focus();
54
+ ref.current?.focus();
55
55
  }
56
56
  }, [autoFocus]);
57
57
 
58
58
  useUpdateEffect(() => {
59
- onFocus && activeOption && onFocus(activeOption);
59
+ if (activeOption) onFocus?.(activeOption);
60
60
  }, [activeOption, onFocus]);
61
61
 
62
62
  return (