@simplybusiness/mobius 9.3.4 → 10.1.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 (155) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/cjs/components/AddressLookup/AddressLookup.js +9 -4
  3. package/dist/cjs/components/AddressLookup/AddressLookup.js.map +2 -2
  4. package/dist/cjs/components/AddressLookup/index.js +9 -4
  5. package/dist/cjs/components/AddressLookup/index.js.map +2 -2
  6. package/dist/cjs/components/Checkbox/Checkbox.js +9 -4
  7. package/dist/cjs/components/Checkbox/Checkbox.js.map +2 -2
  8. package/dist/cjs/components/Checkbox/CheckboxGroup.js +9 -4
  9. package/dist/cjs/components/Checkbox/CheckboxGroup.js.map +2 -2
  10. package/dist/cjs/components/Checkbox/index.js +9 -4
  11. package/dist/cjs/components/Checkbox/index.js.map +2 -2
  12. package/dist/cjs/components/Combobox/Combobox.js +9 -4
  13. package/dist/cjs/components/Combobox/Combobox.js.map +2 -2
  14. package/dist/cjs/components/Combobox/index.js +9 -4
  15. package/dist/cjs/components/Combobox/index.js.map +2 -2
  16. package/dist/cjs/components/DateField/DateField.js +9 -4
  17. package/dist/cjs/components/DateField/DateField.js.map +2 -2
  18. package/dist/cjs/components/DateField/index.js +9 -4
  19. package/dist/cjs/components/DateField/index.js.map +2 -2
  20. package/dist/cjs/components/ErrorMessage/ErrorMessage.js +9 -4
  21. package/dist/cjs/components/ErrorMessage/ErrorMessage.js.map +2 -2
  22. package/dist/cjs/components/ErrorMessage/index.js +9 -4
  23. package/dist/cjs/components/ErrorMessage/index.js.map +2 -2
  24. package/dist/cjs/components/ExpandableText/ExpandableText.js +9 -4
  25. package/dist/cjs/components/ExpandableText/ExpandableText.js.map +2 -2
  26. package/dist/cjs/components/ExpandableText/index.js +9 -4
  27. package/dist/cjs/components/ExpandableText/index.js.map +2 -2
  28. package/dist/cjs/components/MaskedField/MaskedField.js +9 -4
  29. package/dist/cjs/components/MaskedField/MaskedField.js.map +2 -2
  30. package/dist/cjs/components/MaskedField/index.js +9 -4
  31. package/dist/cjs/components/MaskedField/index.js.map +2 -2
  32. package/dist/cjs/components/NumberField/NumberField.js +9 -4
  33. package/dist/cjs/components/NumberField/NumberField.js.map +2 -2
  34. package/dist/cjs/components/NumberField/index.js +9 -4
  35. package/dist/cjs/components/NumberField/index.js.map +2 -2
  36. package/dist/cjs/components/PasswordField/PasswordField.js +9 -4
  37. package/dist/cjs/components/PasswordField/PasswordField.js.map +2 -2
  38. package/dist/cjs/components/PasswordField/ShowHideButton.js +9 -4
  39. package/dist/cjs/components/PasswordField/ShowHideButton.js.map +2 -2
  40. package/dist/cjs/components/PasswordField/index.js +9 -4
  41. package/dist/cjs/components/PasswordField/index.js.map +2 -2
  42. package/dist/cjs/components/Radio/Radio.js +9 -4
  43. package/dist/cjs/components/Radio/Radio.js.map +2 -2
  44. package/dist/cjs/components/Radio/RadioGroup.js +9 -4
  45. package/dist/cjs/components/Radio/RadioGroup.js.map +2 -2
  46. package/dist/cjs/components/Radio/index.js +9 -4
  47. package/dist/cjs/components/Radio/index.js.map +2 -2
  48. package/dist/cjs/components/Select/Select.js +9 -4
  49. package/dist/cjs/components/Select/Select.js.map +2 -2
  50. package/dist/cjs/components/Select/index.js +9 -4
  51. package/dist/cjs/components/Select/index.js.map +2 -2
  52. package/dist/cjs/components/TextArea/TextArea.js +9 -4
  53. package/dist/cjs/components/TextArea/TextArea.js.map +2 -2
  54. package/dist/cjs/components/TextArea/index.js +9 -4
  55. package/dist/cjs/components/TextArea/index.js.map +2 -2
  56. package/dist/cjs/components/TextField/TextField.js +9 -4
  57. package/dist/cjs/components/TextField/TextField.js.map +2 -2
  58. package/dist/cjs/components/TextField/index.js +9 -4
  59. package/dist/cjs/components/TextField/index.js.map +2 -2
  60. package/dist/cjs/components/TextOrHTML/TextOrHTML.js +8 -3
  61. package/dist/cjs/components/TextOrHTML/TextOrHTML.js.map +2 -2
  62. package/dist/cjs/components/TextOrHTML/index.js +8 -3
  63. package/dist/cjs/components/TextOrHTML/index.js.map +2 -2
  64. package/dist/cjs/components/index.js +9 -4
  65. package/dist/cjs/components/index.js.map +2 -2
  66. package/dist/cjs/index.js +9 -4
  67. package/dist/cjs/index.js.map +2 -2
  68. package/dist/cjs/meta.json +100 -100
  69. package/dist/esm/{chunk-ZU3XMAWQ.js → chunk-C4BILMFX.js} +2 -2
  70. package/dist/esm/{chunk-HHJ4Y5JQ.js → chunk-QRHDVVRK.js} +9 -4
  71. package/dist/esm/chunk-QRHDVVRK.js.map +7 -0
  72. package/dist/esm/components/AddressLookup/AddressLookup.js +2 -2
  73. package/dist/esm/components/AddressLookup/index.js +2 -2
  74. package/dist/esm/components/Checkbox/Checkbox.js +2 -2
  75. package/dist/esm/components/Checkbox/CheckboxGroup.js +2 -2
  76. package/dist/esm/components/Checkbox/index.js +2 -2
  77. package/dist/esm/components/Combobox/Combobox.js +2 -2
  78. package/dist/esm/components/Combobox/index.js +2 -2
  79. package/dist/esm/components/DateField/DateField.js +2 -2
  80. package/dist/esm/components/DateField/index.js +2 -2
  81. package/dist/esm/components/ErrorMessage/ErrorMessage.js +2 -2
  82. package/dist/esm/components/ErrorMessage/index.js +2 -2
  83. package/dist/esm/components/ExpandableText/ExpandableText.js +2 -2
  84. package/dist/esm/components/ExpandableText/index.js +2 -2
  85. package/dist/esm/components/MaskedField/MaskedField.js +2 -2
  86. package/dist/esm/components/MaskedField/index.js +2 -2
  87. package/dist/esm/components/NumberField/NumberField.js +2 -2
  88. package/dist/esm/components/NumberField/index.js +2 -2
  89. package/dist/esm/components/PasswordField/PasswordField.js +2 -2
  90. package/dist/esm/components/PasswordField/ShowHideButton.js +2 -2
  91. package/dist/esm/components/PasswordField/index.js +2 -2
  92. package/dist/esm/components/Radio/Radio.js +2 -2
  93. package/dist/esm/components/Radio/RadioGroup.js +2 -2
  94. package/dist/esm/components/Radio/index.js +2 -2
  95. package/dist/esm/components/Select/Select.js +2 -2
  96. package/dist/esm/components/Select/index.js +2 -2
  97. package/dist/esm/components/TextArea/TextArea.js +2 -2
  98. package/dist/esm/components/TextArea/index.js +2 -2
  99. package/dist/esm/components/TextField/TextField.js +2 -2
  100. package/dist/esm/components/TextField/index.js +2 -2
  101. package/dist/esm/components/TextOrHTML/TextOrHTML.js +1 -1
  102. package/dist/esm/components/TextOrHTML/index.js +1 -1
  103. package/dist/esm/components/index.js +2 -2
  104. package/dist/esm/index.js +2 -2
  105. package/dist/esm/meta.json +73 -73
  106. package/dist/tsconfig.build.tsbuildinfo +1 -1
  107. package/dist/types/components/TextOrHTML/TextOrHTML.d.ts +3 -1
  108. package/package.json +2 -2
  109. package/src/components/Accordion/Accordion.css +79 -71
  110. package/src/components/Accordion/AccordionList.css +25 -23
  111. package/src/components/Alert/Alert.css +46 -44
  112. package/src/components/Box/Box.css +4 -2
  113. package/src/components/Breadcrumbs/Breadcrumbs.css +25 -23
  114. package/src/components/Button/Button.css +227 -219
  115. package/src/components/Button/Button.story.styles.css +9 -7
  116. package/src/components/Checkbox/Checkbox.css +106 -104
  117. package/src/components/Checkbox/CheckboxGroup.css +22 -20
  118. package/src/components/Combobox/Combobox.css +96 -94
  119. package/src/components/Container/Container.css +11 -9
  120. package/src/components/Divider/Divider.css +14 -12
  121. package/src/components/Drawer/Drawer.css +157 -155
  122. package/src/components/DropdownMenu/DropdownMenu.css +54 -52
  123. package/src/components/DropdownMenu/DropdownMenu.story.styles.css +11 -9
  124. package/src/components/ErrorMessage/ErrorMessage.css +30 -28
  125. package/src/components/ExpandableText/ExpandableText.css +11 -9
  126. package/src/components/Fieldset/Fieldset.css +13 -11
  127. package/src/components/Flex/Flex.css +5 -3
  128. package/src/components/Grid/Grid.story.styles.css +18 -16
  129. package/src/components/Icon/Icon.css +37 -35
  130. package/src/components/Label/Label.css +13 -11
  131. package/src/components/Link/Link.css +29 -27
  132. package/src/components/List/List.css +47 -45
  133. package/src/components/LoadingIndicator/LoadingIndicator.css +4 -2
  134. package/src/components/Modal/Modal.css +122 -120
  135. package/src/components/NumberField/NumberField.css +58 -56
  136. package/src/components/PasswordField/PasswordField.css +27 -25
  137. package/src/components/Popover/Popover.css +32 -30
  138. package/src/components/Popover/Popover.story.styles.css +24 -22
  139. package/src/components/Progress/Progress.css +25 -23
  140. package/src/components/Radio/Radio.css +167 -163
  141. package/src/components/Segment/Segment.css +163 -161
  142. package/src/components/Select/Select.css +82 -80
  143. package/src/components/Slider/Slider.css +113 -111
  144. package/src/components/Stack/Stack.css +24 -22
  145. package/src/components/Switch/Switch.css +58 -56
  146. package/src/components/Table/Table.css +52 -50
  147. package/src/components/Text/Text.css +92 -90
  148. package/src/components/TextArea/TextArea.css +41 -39
  149. package/src/components/TextField/TextField.css +132 -130
  150. package/src/components/TextOrHTML/TextOrHTML.test.tsx +95 -0
  151. package/src/components/TextOrHTML/TextOrHTML.tsx +13 -3
  152. package/src/components/Title/Title.css +32 -30
  153. package/src/components/Toast/Toast.css +234 -232
  154. package/dist/esm/chunk-HHJ4Y5JQ.js.map +0 -7
  155. /package/dist/esm/{chunk-ZU3XMAWQ.js.map → chunk-C4BILMFX.js.map} +0 -0
@@ -1,44 +1,46 @@
1
- .mobius-icon {
2
- height: 1em;
3
- vertical-align: -0.2em;
4
- transform-origin: center;
1
+ @layer atoms {
2
+ .mobius-icon {
3
+ height: 1em;
4
+ vertical-align: -0.2em;
5
+ transform-origin: center;
5
6
 
6
- /* 16px */
7
- &.--size-xs {
8
- font-size: 1em;
9
- }
7
+ /* 16px */
8
+ &.--size-xs {
9
+ font-size: 1em;
10
+ }
10
11
 
11
- /* 20px */
12
- &.--size-sm {
13
- font-size: 1.25em;
14
- line-height: 0.05em;
15
- vertical-align: -0.075em;
16
- }
12
+ /* 20px */
13
+ &.--size-sm {
14
+ font-size: 1.25em;
15
+ line-height: 0.05em;
16
+ vertical-align: -0.075em;
17
+ }
17
18
 
18
- /* 24px */
19
- &.--size-md {
20
- font-size: 1.5em;
21
- line-height: 0.0416666682em;
22
- vertical-align: -0.125em;
23
- }
19
+ /* 24px */
20
+ &.--size-md {
21
+ font-size: 1.5em;
22
+ line-height: 0.0416666682em;
23
+ vertical-align: -0.125em;
24
+ }
24
25
 
25
- /* 32px */
26
- &.--size-lg {
27
- font-size: 2em;
28
- line-height: 0.03125em;
29
- vertical-align: -0.1875em;
26
+ /* 32px */
27
+ &.--size-lg {
28
+ font-size: 2em;
29
+ line-height: 0.03125em;
30
+ vertical-align: -0.1875em;
31
+ }
30
32
  }
31
- }
32
33
 
33
- .mobius-icon.--is-spinning {
34
- animation: MobiusIconSpinningKeyframes 2s linear infinite;
35
- }
36
-
37
- @keyframes MobiusIconSpinningKeyframes {
38
- from {
39
- transform: rotate(0deg);
34
+ .mobius-icon.--is-spinning {
35
+ animation: MobiusIconSpinningKeyframes 2s linear infinite;
40
36
  }
41
- to {
42
- transform: rotate(1turn);
37
+
38
+ @keyframes MobiusIconSpinningKeyframes {
39
+ from {
40
+ transform: rotate(0deg);
41
+ }
42
+ to {
43
+ transform: rotate(1turn);
44
+ }
43
45
  }
44
46
  }
@@ -1,15 +1,17 @@
1
- .mobius-label {
2
- box-sizing: border-box;
3
- font-size: var(--font-size-regular);
4
- line-height: var(--line-height-normal);
5
- font-family: var(--font-family);
6
- font-weight: var(--label-font-weight);
7
- font-variation-settings: var(--label-font-variation-settings);
8
- color: var(--label-color);
1
+ @layer atoms {
2
+ .mobius-label {
3
+ box-sizing: border-box;
4
+ font-size: var(--font-size-regular);
5
+ line-height: var(--line-height-normal);
6
+ font-family: var(--font-family);
7
+ font-weight: var(--label-font-weight);
8
+ font-variation-settings: var(--label-font-variation-settings);
9
+ color: var(--label-color);
9
10
 
10
- &:not(.--is-disabled) {
11
- &.--is-invalid {
12
- color: var(--color-error);
11
+ &:not(.--is-disabled) {
12
+ &.--is-invalid {
13
+ color: var(--color-error);
14
+ }
13
15
  }
14
16
  }
15
17
  }
@@ -1,35 +1,37 @@
1
- .mobius-link {
2
- box-sizing: border-box;
3
- font-family: var(--font-family);
4
- line-height: var(--line-height-normal);
5
- color: var(--color-link);
6
- outline: none;
7
- border-radius: var(--radius-1);
1
+ @layer atoms {
2
+ .mobius-link {
3
+ box-sizing: border-box;
4
+ font-family: var(--font-family);
5
+ line-height: var(--line-height-normal);
6
+ color: var(--color-link);
7
+ outline: none;
8
+ border-radius: var(--radius-1);
8
9
 
9
- &:hover,
10
- &:active {
11
- text-decoration: var(--link-hover-text-decoration, underline);
12
- cursor: pointer;
13
- color: var(--color-link-hover);
14
- }
10
+ &:hover,
11
+ &:active {
12
+ text-decoration: var(--link-hover-text-decoration, underline);
13
+ cursor: pointer;
14
+ color: var(--color-link-hover);
15
+ }
15
16
 
16
- &:focus-visible {
17
- box-shadow: var(--link-box-shadow, var(--box-shadow-default));
18
- padding: 3px 0;
19
- }
17
+ &:focus-visible {
18
+ box-shadow: var(--link-box-shadow, var(--box-shadow-default));
19
+ padding: 3px 0;
20
+ }
20
21
 
21
- &.--is-disabled {
22
- color: var(--color-text-light);
23
- pointer-events: none;
24
- cursor: not-allowed;
22
+ &.--is-disabled {
23
+ color: var(--color-text-light);
24
+ pointer-events: none;
25
+ cursor: not-allowed;
26
+ }
25
27
  }
26
- }
27
28
 
28
- .mobius-link--secondary {
29
- color: var(--color-link-secondary);
29
+ .mobius-link--secondary {
30
+ color: var(--color-link-secondary);
30
31
 
31
- &:hover,
32
- &:active {
33
- color: var(--color-link-secondary-hover);
32
+ &:hover,
33
+ &:active {
34
+ color: var(--color-link-secondary-hover);
35
+ }
34
36
  }
35
37
  }
@@ -1,60 +1,62 @@
1
- .mobius-list {
2
- box-sizing: border-box;
3
- font-family: var(--font-family);
4
- width: 100%;
5
- text-align: left;
6
- margin: 0;
7
-
8
- &.--has-icon {
9
- padding-left: 0;
10
- }
1
+ @layer atoms {
2
+ .mobius-list {
3
+ box-sizing: border-box;
4
+ font-family: var(--font-family);
5
+ width: 100%;
6
+ text-align: left;
7
+ margin: 0;
8
+
9
+ &.--has-icon {
10
+ padding-left: 0;
11
+ }
11
12
 
12
- &.--is-disc {
13
- list-style-type: disc;
14
- }
13
+ &.--is-disc {
14
+ list-style-type: disc;
15
+ }
15
16
 
16
- &.--is-circle {
17
- list-style-type: circle;
18
- }
17
+ &.--is-circle {
18
+ list-style-type: circle;
19
+ }
19
20
 
20
- &.--is-square {
21
- list-style-type: square;
22
- }
21
+ &.--is-square {
22
+ list-style-type: square;
23
+ }
23
24
 
24
- &.--is-decimal {
25
- list-style-type: decimal;
26
- }
25
+ &.--is-decimal {
26
+ list-style-type: decimal;
27
+ }
27
28
 
28
- &.--is-georgian {
29
- list-style-type: georgian;
30
- }
29
+ &.--is-georgian {
30
+ list-style-type: georgian;
31
+ }
31
32
 
32
- &.--is-trad-chinese-informal {
33
- list-style-type: trad-chinese-informal;
34
- }
33
+ &.--is-trad-chinese-informal {
34
+ list-style-type: trad-chinese-informal;
35
+ }
35
36
 
36
- &.--is-kannada {
37
- list-style-type: kannada;
37
+ &.--is-kannada {
38
+ list-style-type: kannada;
39
+ }
38
40
  }
39
- }
40
41
 
41
- .mobius-list__item {
42
- &.--has-icon {
43
- list-style-type: none;
44
- margin-bottom: var(--size-xs);
42
+ .mobius-list__item {
43
+ &.--has-icon {
44
+ list-style-type: none;
45
+ margin-bottom: var(--size-xs);
45
46
 
46
- & p {
47
- margin-top: 0;
48
- margin-bottom: 0;
47
+ & p {
48
+ margin-top: 0;
49
+ margin-bottom: 0;
50
+ }
49
51
  }
50
52
  }
51
- }
52
53
 
53
- .mobius-list__item-content {
54
- display: flex;
55
- }
54
+ .mobius-list__item-content {
55
+ display: flex;
56
+ }
56
57
 
57
- .mobius-list__icon {
58
- flex-shrink: 0;
59
- margin-right: var(--size-xs);
58
+ .mobius-list__icon {
59
+ flex-shrink: 0;
60
+ margin-right: var(--size-xs);
61
+ }
60
62
  }
@@ -1,3 +1,5 @@
1
- .mobius-loading-indicator {
2
- color: var(--color-primary);
1
+ @layer atoms {
2
+ .mobius-loading-indicator {
3
+ color: var(--color-primary);
4
+ }
3
5
  }
@@ -1,160 +1,162 @@
1
- /* Disable transitions if reduce motion flag is on */
2
- @media (prefers-reduced-motion: reduce) {
3
- :root,
4
- :host,
5
- ::backdrop {
6
- --modal-transition-duration: 0;
1
+ @layer atoms {
2
+ /* Disable transitions if reduce motion flag is on */
3
+ @media (prefers-reduced-motion: reduce) {
4
+ :root,
5
+ :host,
6
+ ::backdrop {
7
+ --modal-transition-duration: 0;
8
+ }
7
9
  }
8
- }
9
10
 
10
- .mobius-modal {
11
- position: fixed;
12
- display: flex;
13
- flex-direction: column;
14
- width: min(90%, 600px);
15
- max-height: 90%;
16
- padding: 0;
17
- margin: auto;
18
- background-color: var(--color-background);
19
- border: none;
20
- border-radius: var(--radius-1);
21
- overflow: hidden;
22
-
23
- @media (min-width: 768px) {
24
- max-height: 80%;
25
- }
11
+ .mobius-modal {
12
+ position: fixed;
13
+ display: flex;
14
+ flex-direction: column;
15
+ width: min(90%, 600px);
16
+ max-height: 90%;
17
+ padding: 0;
18
+ margin: auto;
19
+ background-color: var(--color-background);
20
+ border: none;
21
+ border-radius: var(--radius-1);
22
+ overflow: hidden;
23
+
24
+ @media (min-width: 768px) {
25
+ max-height: 80%;
26
+ }
26
27
 
27
- &:not([open]) {
28
- display: none;
29
- }
28
+ &:not([open]) {
29
+ display: none;
30
+ }
30
31
 
31
- &:focus-visible {
32
- outline: none;
33
- }
32
+ &:focus-visible {
33
+ outline: none;
34
+ }
34
35
 
35
- &::backdrop {
36
- background-color: var(--backdrop-color);
37
- opacity: 0;
38
- transition: opacity var(--modal-transition-duration) ease-in-out;
39
- }
36
+ &::backdrop {
37
+ background-color: var(--backdrop-color);
38
+ opacity: 0;
39
+ transition: opacity var(--modal-transition-duration) ease-in-out;
40
+ }
40
41
 
41
- /* Injected by "dialog-polyfill" */
42
- /* Required for iOS <= 15.2 */
43
- & + .backdrop {
44
- position: fixed;
45
- top: 0;
46
- right: 0;
47
- bottom: 0;
48
- left: 0;
49
- background-color: var(--backdrop-color);
50
- opacity: 0.3;
51
-
52
- & + ._dialog_overlay {
42
+ /* Injected by "dialog-polyfill" */
43
+ /* Required for iOS <= 15.2 */
44
+ & + .backdrop {
53
45
  position: fixed;
54
46
  top: 0;
55
47
  right: 0;
56
48
  bottom: 0;
57
49
  left: 0;
58
- }
59
- }
60
-
61
- &.--is-fullscreen {
62
- top: 0;
63
- border-radius: 0;
64
- height: 100%;
65
- max-height: 100%;
66
- width: 100%;
67
- max-width: 100vw;
68
- }
69
-
70
- &.--no-dialog-support {
71
- /* Correctly position modal in x/y middle on iOS <= 15.2 */
72
- top: 50%;
73
- left: 50%;
74
- transform: translate(-50%, -50%);
75
- }
50
+ background-color: var(--backdrop-color);
51
+ opacity: 0.3;
76
52
 
77
- &:not(.--should-transition) {
78
- display: none;
53
+ & + ._dialog_overlay {
54
+ position: fixed;
55
+ top: 0;
56
+ right: 0;
57
+ bottom: 0;
58
+ left: 0;
59
+ }
60
+ }
79
61
 
80
- &[open] {
81
- display: flex;
62
+ &.--is-fullscreen {
63
+ top: 0;
64
+ border-radius: 0;
65
+ height: 100%;
66
+ max-height: 100%;
67
+ width: 100%;
68
+ max-width: 100vw;
82
69
  }
83
70
 
84
- &::backdrop {
85
- opacity: 0.3;
71
+ &.--no-dialog-support {
72
+ /* Correctly position modal in x/y middle on iOS <= 15.2 */
73
+ top: 50%;
74
+ left: 50%;
75
+ transform: translate(-50%, -50%);
86
76
  }
87
- }
88
77
 
89
- &.--fade {
90
- transition: opacity var(--modal-transition-duration) ease-in-out;
91
- }
78
+ &:not(.--should-transition) {
79
+ display: none;
92
80
 
93
- &.--slide-up {
94
- transition: transform var(--modal-transition-duration) ease-in-out;
95
- }
81
+ &[open] {
82
+ display: flex;
83
+ }
96
84
 
97
- &.--should-transition {
98
- &.--transition {
99
85
  &::backdrop {
100
86
  opacity: 0.3;
101
87
  }
102
88
  }
103
89
 
90
+ &.--fade {
91
+ transition: opacity var(--modal-transition-duration) ease-in-out;
92
+ }
93
+
104
94
  &.--slide-up {
105
- transform: translateY(100vh);
95
+ transition: transform var(--modal-transition-duration) ease-in-out;
96
+ }
106
97
 
98
+ &.--should-transition {
107
99
  &.--transition {
108
- transform: translateY(0vh);
100
+ &::backdrop {
101
+ opacity: 0.3;
102
+ }
109
103
  }
110
- }
111
104
 
112
- &.--fade {
113
- opacity: 0;
105
+ &.--slide-up {
106
+ transform: translateY(100vh);
114
107
 
115
- &.--transition {
116
- opacity: 1;
108
+ &.--transition {
109
+ transform: translateY(0vh);
110
+ }
111
+ }
112
+
113
+ &.--fade {
114
+ opacity: 0;
115
+
116
+ &.--transition {
117
+ opacity: 1;
118
+ }
117
119
  }
118
120
  }
119
121
  }
120
- }
121
122
 
122
- .mobius-modal__header {
123
- display: grid;
124
- grid-template-columns: 1fr auto;
125
- justify-content: space-between;
126
- gap: var(--size-md);
127
- align-items: start;
128
- padding: var(--size-xs);
129
- padding-inline: var(--size-sm);
130
- font-family: var(--font-family);
131
- font-size: var(--font-size-4);
132
- margin: 0;
133
-
134
- @media (min-width: 768px) {
135
- padding: var(--size-sm);
136
- padding-inline: var(--size-md);
137
- font-size: var(--font-size-5);
123
+ .mobius-modal__header {
124
+ display: grid;
125
+ grid-template-columns: 1fr auto;
126
+ justify-content: space-between;
127
+ gap: var(--size-md);
128
+ align-items: start;
129
+ padding: var(--size-xs);
130
+ padding-inline: var(--size-sm);
131
+ font-family: var(--font-family);
132
+ font-size: var(--font-size-4);
133
+ margin: 0;
134
+
135
+ @media (min-width: 768px) {
136
+ padding: var(--size-sm);
137
+ padding-inline: var(--size-md);
138
+ font-size: var(--font-size-5);
139
+ }
138
140
  }
139
- }
140
141
 
141
- .mobius-modal__close.mobius-button {
142
- /* negative padding to match the padding of the header, so it aligns
143
- horizontally */
144
- padding: calc(var(--size-sm) * -1);
145
- font-size: var(--font-size-4);
146
- flex-shrink: 0;
147
- }
142
+ .mobius-modal__close.mobius-button {
143
+ /* negative padding to match the padding of the header, so it aligns
144
+ horizontally */
145
+ padding: calc(var(--size-sm) * -1);
146
+ font-size: var(--font-size-4);
147
+ flex-shrink: 0;
148
+ }
148
149
 
149
- .mobius-modal__content {
150
- flex-grow: 1;
151
- padding: 0 var(--size-sm);
152
- margin: var(--size-sm) 0;
153
- font-family: var(--font-family);
154
- overflow-y: auto;
150
+ .mobius-modal__content {
151
+ flex-grow: 1;
152
+ padding: 0 var(--size-sm);
153
+ margin: var(--size-sm) 0;
154
+ font-family: var(--font-family);
155
+ overflow-y: auto;
155
156
 
156
- @media (min-width: 768px) {
157
- padding: 0 var(--size-md);
158
- margin: var(--size-md) 0;
157
+ @media (min-width: 768px) {
158
+ padding: 0 var(--size-md);
159
+ margin: var(--size-md) 0;
160
+ }
159
161
  }
160
162
  }