@esportsplus/ui 0.0.117 → 0.0.120

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 (237) hide show
  1. package/.editorconfig +9 -0
  2. package/.gitattributes +2 -0
  3. package/assets/0af89c10df9bc2f8d646.woff2 +0 -0
  4. package/assets/109e3207d9afea8524be.woff2 +0 -0
  5. package/assets/16663c3f6ab1da2d6c86.woff +0 -0
  6. package/assets/16e8721ef5837bc6375e.woff +0 -0
  7. package/assets/2a3e005f58bfca9c117e.woff +0 -0
  8. package/assets/58a8d7ebc386843b62c5.woff2 +0 -0
  9. package/assets/593de7c561e5ffe80c3e.woff2 +0 -0
  10. package/assets/68b7982c2b30b51bf932.woff2 +0 -0
  11. package/assets/a04b5e24af93da353f0e.woff +0 -0
  12. package/assets/bf331673b91821715c08.woff +0 -0
  13. package/assets/c54b0f4340f2914802d1.woff +0 -0
  14. package/assets/dd8646a41e4397b77fc4.woff2 +0 -0
  15. package/assets/e06c107cc50506570954.woff2 +0 -0
  16. package/assets/ecdfe4c05425592708aa.woff2 +0 -0
  17. package/assets/f0032576ac7462ccbd0c.woff +0 -0
  18. package/assets/f872e621917a45943fbc.woff +0 -0
  19. package/build/assets/0af89c10df9bc2f8d646.woff2 +0 -0
  20. package/build/assets/109e3207d9afea8524be.woff2 +0 -0
  21. package/build/assets/16663c3f6ab1da2d6c86.woff +0 -0
  22. package/build/assets/16e8721ef5837bc6375e.woff +0 -0
  23. package/build/assets/2a3e005f58bfca9c117e.woff +0 -0
  24. package/build/assets/58a8d7ebc386843b62c5.woff2 +0 -0
  25. package/build/assets/593de7c561e5ffe80c3e.woff2 +0 -0
  26. package/build/assets/68b7982c2b30b51bf932.woff2 +0 -0
  27. package/build/assets/a04b5e24af93da353f0e.woff +0 -0
  28. package/build/assets/bf331673b91821715c08.woff +0 -0
  29. package/build/assets/c54b0f4340f2914802d1.woff +0 -0
  30. package/build/assets/dd8646a41e4397b77fc4.woff2 +0 -0
  31. package/build/assets/e06c107cc50506570954.woff2 +0 -0
  32. package/build/assets/ecdfe4c05425592708aa.woff2 +0 -0
  33. package/build/assets/f0032576ac7462ccbd0c.woff +0 -0
  34. package/build/assets/f872e621917a45943fbc.woff +0 -0
  35. package/build/css/components/styles.css +1 -0
  36. package/build/css/components/variables.css +1 -0
  37. package/build/css/fonts/montserrat.css +1 -0
  38. package/build/css/normalizer.css +1 -0
  39. package/build/css/utilities/styles.css +1 -0
  40. package/build/css/utilities/variables.css +1 -0
  41. package/components/alert/index.d.ts +10 -0
  42. package/components/alert/index.js +124 -0
  43. package/components/export/clipboard.d.ts +2 -0
  44. package/components/export/clipboard.js +10 -0
  45. package/components/export/index.d.ts +5 -0
  46. package/components/export/index.js +8 -0
  47. package/components/export/json.d.ts +2 -0
  48. package/components/export/json.js +10 -0
  49. package/components/field/checkbox.d.ts +17 -0
  50. package/components/field/checkbox.js +46 -0
  51. package/components/field/description.d.ts +4 -0
  52. package/components/field/description.js +11 -0
  53. package/components/field/error.d.ts +4 -0
  54. package/components/field/error.js +13 -0
  55. package/components/field/file.d.ts +18 -0
  56. package/components/field/file.js +50 -0
  57. package/components/field/index.d.ts +222 -0
  58. package/components/field/index.js +13 -0
  59. package/components/field/optional.d.ts +92 -0
  60. package/components/field/optional.js +21 -0
  61. package/components/field/select.d.ts +32 -0
  62. package/components/field/select.js +110 -0
  63. package/components/field/switch.d.ts +3 -0
  64. package/components/field/switch.js +11 -0
  65. package/components/field/text.d.ts +21 -0
  66. package/components/field/text.js +51 -0
  67. package/components/field/textarea.d.ts +3 -0
  68. package/components/field/textarea.js +10 -0
  69. package/components/field/title.d.ts +5 -0
  70. package/components/field/title.js +24 -0
  71. package/components/form/action.d.ts +5 -0
  72. package/components/form/action.js +51 -0
  73. package/components/form/index.d.ts +23 -0
  74. package/components/form/index.js +9 -0
  75. package/components/form/input.d.ts +9 -0
  76. package/components/form/input.js +12 -0
  77. package/components/form/layout.d.ts +12 -0
  78. package/components/form/layout.js +14 -0
  79. package/components/form/types.d.ts +12 -0
  80. package/components/form/types.js +2 -0
  81. package/components/number/index.d.ts +8 -0
  82. package/components/number/index.js +20 -0
  83. package/components/page/index.d.ts +22 -0
  84. package/components/page/index.js +16 -0
  85. package/components/root/index.d.ts +9 -0
  86. package/components/root/index.js +9 -0
  87. package/components/root/onclick.d.ts +5 -0
  88. package/components/root/onclick.js +16 -0
  89. package/components/scrollbar/index.d.ts +11 -0
  90. package/components/scrollbar/index.js +38 -0
  91. package/components/site/index.d.ts +9 -0
  92. package/components/site/index.js +20 -0
  93. package/components/tooltip/index.d.ts +58 -0
  94. package/components/tooltip/index.js +75 -0
  95. package/components/tooltip/menu.d.ts +25 -0
  96. package/components/tooltip/menu.js +46 -0
  97. package/css/components/styles.css +1 -0
  98. package/css/components/variables.css +1 -0
  99. package/css/fonts/montserrat.css +1 -0
  100. package/css/normalizer.css +1 -0
  101. package/css/utilities/styles.css +1 -0
  102. package/css/utilities/variables.css +1 -0
  103. package/lib.scss +2 -0
  104. package/package.json +3 -9
  105. package/src/components/accordion/scss/index.scss +16 -0
  106. package/src/components/accordion/scss/variables.scss +4 -0
  107. package/src/components/alert/scss/index.scss +55 -0
  108. package/src/components/alert/scss/variables.scss +8 -0
  109. package/src/components/anchor/scss/index.scss +41 -0
  110. package/src/components/anchor/scss/variables.scss +5 -0
  111. package/src/components/banner/scss/index.scss +40 -0
  112. package/src/components/banner/scss/variables.scss +6 -0
  113. package/src/components/border/scss/index.scss +10 -0
  114. package/src/components/border/scss/variables.scss +6 -0
  115. package/src/components/bubble/scss/index.scss +30 -0
  116. package/src/components/bubble/scss/variables.scss +19 -0
  117. package/src/components/button/scss/index.scss +92 -0
  118. package/src/components/button/scss/variables.scss +69 -0
  119. package/src/components/card/scss/index.scss +35 -0
  120. package/src/components/card/scss/variables.scss +42 -0
  121. package/src/components/container/scss/index.scss +10 -0
  122. package/src/components/container/scss/variables.scss +5 -0
  123. package/src/components/ellipsis/scss/index.scss +72 -0
  124. package/src/components/ellipsis/scss/variables.scss +3 -0
  125. package/src/components/field/file.ts +1 -1
  126. package/src/components/field/scss/_check.scss +225 -0
  127. package/src/components/field/scss/_normalize.scss +36 -0
  128. package/src/components/field/scss/_text.scss +106 -0
  129. package/src/components/field/scss/index.scss +159 -0
  130. package/src/components/field/scss/variables.scss +138 -0
  131. package/src/components/field/select.ts +3 -1
  132. package/src/components/field/text.ts +1 -1
  133. package/src/components/field/title.ts +1 -1
  134. package/src/components/group/scss/index.scss +36 -0
  135. package/src/components/group/scss/variables.scss +17 -0
  136. package/src/components/icon/scss/index.scss +17 -0
  137. package/src/components/icon/scss/variables.scss +7 -0
  138. package/src/components/link/scss/index.scss +28 -0
  139. package/src/components/link/scss/variables.scss +47 -0
  140. package/src/components/loading/scss/index.scss +24 -0
  141. package/src/components/loading/scss/variables.scss +31 -0
  142. package/src/components/modal/scss/index.scss +32 -0
  143. package/src/components/modal/scss/variables.scss +10 -0
  144. package/src/components/page/scss/index.scss +27 -0
  145. package/src/components/page/scss/variables.scss +27 -0
  146. package/src/components/processing/scss/index.scss +47 -0
  147. package/src/components/processing/scss/variables.scss +11 -0
  148. package/src/components/root/scss/index.scss +93 -0
  149. package/src/components/root/scss/variables.scss +55 -0
  150. package/src/components/row/scss/index.scss +7 -0
  151. package/src/components/scrollbar/scss/index.scss +59 -0
  152. package/src/components/scrollbar/scss/variables.scss +6 -0
  153. package/src/components/sidebar/scss/index.scss +50 -0
  154. package/src/components/sidebar/scss/variables.scss +21 -0
  155. package/src/components/site/index.ts +1 -1
  156. package/src/components/site/scss/index.scss +3 -0
  157. package/src/components/text/scss/index.scss +12 -0
  158. package/src/components/text/scss/variables.scss +9 -0
  159. package/src/components/thumbnail/scss/index.scss +7 -0
  160. package/src/components/thumbnail/scss/variables.scss +7 -0
  161. package/src/components/tooltip/scss/_center.scss +13 -0
  162. package/src/components/tooltip/scss/_east.scss +34 -0
  163. package/src/components/tooltip/scss/_north.scss +34 -0
  164. package/src/components/tooltip/scss/_south.scss +35 -0
  165. package/src/components/tooltip/scss/_west.scss +34 -0
  166. package/src/components/tooltip/scss/index.scss +93 -0
  167. package/src/components/tooltip/scss/variables.scss +25 -0
  168. package/src/css-utilities/[margin,padding]/scss/index.scss +41 -0
  169. package/src/css-utilities/[margin,padding]/scss/variables.scss +54 -0
  170. package/src/css-utilities/absolute/scss/index.scss +59 -0
  171. package/src/css-utilities/background/scss/variables.scss +27 -0
  172. package/src/css-utilities/border/scss/index.scss +21 -0
  173. package/src/css-utilities/border/scss/variables.scss +66 -0
  174. package/src/css-utilities/color/scss/variables.scss +31 -0
  175. package/src/css-utilities/disabled/scss/index.scss +4 -0
  176. package/src/css-utilities/flex/scss/index.scss +65 -0
  177. package/src/css-utilities/glass/scss/index.scss +3 -0
  178. package/src/css-utilities/glass/scss/variables.scss +3 -0
  179. package/src/css-utilities/hidden/scss/index.scss +28 -0
  180. package/src/css-utilities/index.scss +14 -0
  181. package/src/css-utilities/inline/scss/index.scss +7 -0
  182. package/src/css-utilities/line-height/scss/variables.scss +10 -0
  183. package/src/css-utilities/not-allowed/scss/index.scss +7 -0
  184. package/src/css-utilities/overflow/scss/index.scss +5 -0
  185. package/src/css-utilities/pointer/scss/index.scss +5 -0
  186. package/src/css-utilities/size/scss/variables.scss +12 -0
  187. package/src/css-utilities/slide/scss/index.scss +20 -0
  188. package/src/css-utilities/slide/scss/variables.scss +6 -0
  189. package/src/css-utilities/text/scss/index.scss +93 -0
  190. package/src/css-utilities/text/scss/variables.scss +31 -0
  191. package/src/css-utilities/transition/scss/variables.scss +14 -0
  192. package/src/css-utilities/viewport/scss/index.scss +5 -0
  193. package/src/css-utilities/width/scss/index.scss +3 -0
  194. package/src/css-utilities/width/scss/variables.scss +9 -0
  195. package/src/lib/index.scss +7 -0
  196. package/src/lib/scss/breakpoint.scss +41 -0
  197. package/src/lib/scss/color.scss +1 -0
  198. package/src/lib/scss/css-variables.scss +13 -0
  199. package/src/lib/scss/list.scss +76 -0
  200. package/src/lib/scss/map.scss +1 -0
  201. package/src/lib/scss/position.scss +77 -0
  202. package/src/lib/scss/string.scss +33 -0
  203. package/src/tokens/index.scss +11 -0
  204. package/src/tokens/scss/border-radius.scss +12 -0
  205. package/src/tokens/scss/border-width.scss +6 -0
  206. package/src/tokens/scss/box-shadow.scss +13 -0
  207. package/src/tokens/scss/color.scss +64 -0
  208. package/src/tokens/scss/font-size.scss +12 -0
  209. package/src/tokens/scss/font-weight.scss +6 -0
  210. package/src/tokens/scss/line-height.scss +6 -0
  211. package/src/tokens/scss/size.scss +13 -0
  212. package/src/tokens/scss/spacer.scss +8 -0
  213. package/src/tokens/scss/state.scss +86 -0
  214. package/src/tokens/scss/transition-duration.scss +5 -0
  215. package/storage/fonts/montserrat/Montserrat-Bold.woff +0 -0
  216. package/storage/fonts/montserrat/Montserrat-Bold.woff2 +0 -0
  217. package/storage/fonts/montserrat/Montserrat-BoldItalic.woff +0 -0
  218. package/storage/fonts/montserrat/Montserrat-BoldItalic.woff2 +0 -0
  219. package/storage/fonts/montserrat/Montserrat-Italic.woff +0 -0
  220. package/storage/fonts/montserrat/Montserrat-Italic.woff2 +0 -0
  221. package/storage/fonts/montserrat/Montserrat-Medium.woff +0 -0
  222. package/storage/fonts/montserrat/Montserrat-Medium.woff2 +0 -0
  223. package/storage/fonts/montserrat/Montserrat-MediumItalic.woff +0 -0
  224. package/storage/fonts/montserrat/Montserrat-MediumItalic.woff2 +0 -0
  225. package/storage/fonts/montserrat/Montserrat-Regular.woff +0 -0
  226. package/storage/fonts/montserrat/Montserrat-Regular.woff2 +0 -0
  227. package/storage/fonts/montserrat/Montserrat-SemiBold.woff +0 -0
  228. package/storage/fonts/montserrat/Montserrat-SemiBold.woff2 +0 -0
  229. package/storage/fonts/montserrat/Montserrat-SemiBoldItalic.woff +0 -0
  230. package/storage/fonts/montserrat/Montserrat-SemiBoldItalic.woff2 +0 -0
  231. package/storage/fonts/montserrat/index.css +79 -0
  232. package/storage/psd/Color Palette.psd +0 -0
  233. package/tokens.scss +2 -0
  234. package/tsconfig.json +11 -0
  235. package/webpack.config.ts +28 -0
  236. package/build/index.js +0 -18
  237. package/src/components/index.ts +0 -10
@@ -0,0 +1,138 @@
1
+ @use '/tokens';
2
+ @use 'check' as check;
3
+ @use 'text' as text;
4
+
5
+ .field {
6
+ --transition-duration: var(--transition-duration-400);
7
+ --width: 100%;
8
+
9
+
10
+ &--optional {
11
+ --max-height: 0;
12
+ --max-height-active: 0;
13
+
14
+ #{tokens.state(active, '.field')} & {
15
+ --max-height: var(--max-height-active);
16
+ }
17
+ }
18
+
19
+
20
+ &-description,
21
+ &-error {
22
+ --font-size: var(--font-size-300);
23
+ }
24
+
25
+ &-error {
26
+ --color: var(--color-red-400);
27
+ }
28
+
29
+ &-mask {
30
+ --background: var(--background-default);
31
+ --background-active: var(--background-default);
32
+ --background-default: transparent;
33
+ --background-hover: var(--background-default);
34
+ --background-pressed: var(--background-default);
35
+ --border-color: var(--border-color-default);
36
+ --border-color-default: var(--background);
37
+ --border-radius: var(--border-radius-400);
38
+ --border-style: solid;
39
+ --border-width: 0px;
40
+ --box-shadow: var(--box-shadow-default);
41
+ --box-shadow-active: var(--box-shadow-400);
42
+ --box-shadow-default: var(--box-shadow-300);
43
+ --box-shadow-hover: var(--box-shadow-400);
44
+ --box-shadow-pressed: none;
45
+ --color: var(--color-default);
46
+ --color-active: var(--color-default);
47
+ --color-default: var(--color-text-400);
48
+ --color-hover: var(--color-default);
49
+ --color-pressed: var(--color-default);
50
+ --outline-opacity: var(--outline-opacity-default);
51
+ --outline-opacity-active: 0.32;
52
+ --outline-opacity-default: 0;
53
+ --outline-opacity-hover: 0;
54
+ --outline-opacity-pressed: 0;
55
+ --outline-spacing: 0px;
56
+ --outline-width: var(--outline-width-default);
57
+ --outline-width-active: 4px;
58
+ --outline-width-default: 0px;
59
+ --outline-width-hover: 0px;
60
+ --outline-width-pressed: 0px;
61
+ --padding-horizontal: 0px;
62
+ --padding-vertical: var(--size-400);
63
+
64
+
65
+ #{tokens.state(active, '.field')} > &,
66
+ #{tokens.state(active, '.field')} *:not(.field) & {
67
+ --background: var(--background-active);
68
+ --border-color: var(--border-color-active);
69
+ --box-shadow: var(--box-shadow-active);
70
+ --color: var(--color-active);
71
+ --outline-opacity: var(--outline-opacity-active);
72
+ --outline-width: var(--outline-width-active);
73
+ }
74
+
75
+ $inactive: tokens.state(inactive, '.field');
76
+
77
+ #{tokens.state(hover, 'label#{$inactive}')} > &,
78
+ #{tokens.state(hover, '#{$inactive}:not(label) &')} {
79
+ --background: var(--background-hover);
80
+ --border-color: var(--border-color-hover);
81
+ --box-shadow: var(--box-shadow-hover);
82
+ --color: var(--color-hover);
83
+ --outline-opacity: var(--outline-opacity-hover);
84
+ --outline-width: var(--outline-width-hover);
85
+ }
86
+
87
+ #{tokens.state(pressed, 'label#{$inactive}')} > &,
88
+ #{tokens.state(pressed, '#{$inactive}:not(label) &')} {
89
+ --background: var(--background-pressed);
90
+ --border-color: var(--border-color-pressed);
91
+ --box-shadow: var(--box-shadow-pressed);
92
+ --color: var(--color-pressed);
93
+ --outline-opacity: var(--outline-opacity-pressed);
94
+ --outline-width: var(--outline-width-pressed);
95
+ }
96
+
97
+ &--outline {
98
+ @include tokens.state(pressed) {
99
+ --border-color: var(--border-color-default);
100
+
101
+ &::before {
102
+ --outline-width: 0px;
103
+ }
104
+ }
105
+ }
106
+ }
107
+
108
+ &-required {
109
+ --border-radius: var(--border-radius-circle);
110
+ --size: 6px;
111
+ }
112
+
113
+ &-title {
114
+ --color: var(--color-default);
115
+ --color-active: var(--color-default);
116
+ --color-default: var(--color-text-400);
117
+ --color-hover: var(--color-default);
118
+ --color-pressed: var(--color-default);
119
+ --font-size: var(--font-size-400);
120
+ --font-weight: var(--font-weight-500);
121
+
122
+ #{tokens.state(active, '.field')} & {
123
+ --color: var(--color-active);
124
+ }
125
+
126
+ #{tokens.state(hover, '.field')} & {
127
+ --color: var(--color-hover);
128
+ }
129
+
130
+ #{tokens.state(pressed, '.field')} & {
131
+ --color: var(--color-pressed);
132
+ }
133
+ }
134
+
135
+
136
+ @include check.variables();
137
+ @include text.variables();
138
+ }
@@ -1,6 +1,8 @@
1
1
  import { reactive } from '@esportsplus/reactivity';
2
2
  import { html } from '@esportsplus/template';
3
- import { form, scrollbar, root } from '~/components';
3
+ import form from '~/components/form';
4
+ import scrollbar from '~/components/scrollbar';
5
+ import root from '~/components/root';
4
6
  import description from './description';
5
7
  import error from './error';
6
8
  import title from './title';
@@ -1,6 +1,6 @@
1
1
  import { reactive } from '@esportsplus/reactivity';
2
2
  import { html } from '@esportsplus/template';
3
- import { form } from '~/components';
3
+ import form from '~/components/form';
4
4
  import description from './description';
5
5
  import error from './error';
6
6
  import title from './title';
@@ -1,5 +1,5 @@
1
1
  import { html } from '@esportsplus/template';
2
- import { tooltip } from '~/components';
2
+ import tooltip from '~/components/tooltip';
3
3
 
4
4
 
5
5
  export default (data: { required?: boolean, title?: string }) => {
@@ -0,0 +1,36 @@
1
+ .group {
2
+ display: flex;
3
+ flex-wrap: wrap;
4
+ justify-content: flex-start;
5
+ margin: 0 calc(var(--margin-horizontal) / -2);
6
+ position: relative;
7
+ width: calc(100% + var(--margin-horizontal));
8
+
9
+
10
+ &--offset {
11
+ @each $direction in 'bottom' 'top' {
12
+ &-#{$direction} {
13
+ margin-#{$direction}: calc(var(--margin-vertical) * -1);
14
+ }
15
+ }
16
+ }
17
+
18
+ &--scroller {
19
+ flex-flow: row;
20
+ margin-bottom: calc(var(--scrollbar-width) * -1);
21
+ overflow-y: hidden;
22
+ padding-bottom: var(--scrollbar-width);
23
+ }
24
+
25
+
26
+ &-item {
27
+ display: flex;
28
+ margin: var(--margin-vertical) calc(var(--margin-horizontal) / 2) 0;
29
+ position: relative;
30
+ width: var(--width);
31
+
32
+ &[class*='--width'] {
33
+ width: calc(var(--width) - var(--margin-horizontal));
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,17 @@
1
+ .group {
2
+ --margin-horizontal: var(--size-400);
3
+ --width: auto;
4
+
5
+
6
+ &.--flex-column {
7
+ .group-item {
8
+ --width: 100%;
9
+ }
10
+ }
11
+
12
+ &--scroller {
13
+ .group-item {
14
+ --margin-vertical: 0px;
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,17 @@
1
+ .icon {
2
+ color: var(--color);
3
+ display: flex;
4
+ flex: 0 0 var(--width);
5
+ height: var(--height);
6
+ pointer-events: none;
7
+ position: relative;
8
+ width: var(--width);
9
+
10
+
11
+ svg {
12
+ color: currentColor;
13
+ fill: currentColor;
14
+ height: 100%;
15
+ width: 100%;
16
+ }
17
+ }
@@ -0,0 +1,7 @@
1
+ .icon {
2
+ --color: inherit;
3
+ --height: var(--size);
4
+ --margin-horizontal: var(--size-300);
5
+ --size: var(--size-400);
6
+ --width: var(--size);
7
+ }
@@ -0,0 +1,28 @@
1
+ @use '/tokens';
2
+
3
+ .link {
4
+ align-content: center;
5
+ background: var(--background);
6
+ color: var(--color);
7
+ cursor: pointer;
8
+ display: flex;
9
+ flex-wrap: wrap;
10
+ font-size: var(--font-size);
11
+ justify-content: flex-start;
12
+ line-height: var(--line-height);
13
+ padding: calc(var(--padding-vertical) - var(--border-width)) calc(var(--padding-horizontal) - var(--border-width));
14
+ position: relative;
15
+ transition:
16
+ background var(--transition-duration) ease-in-out,
17
+ border-color var(--transition-duration) ease-in-out,
18
+ color var(--transition-duration) ease-in-out,
19
+ opacity var(--transition-duration) ease-in-out;
20
+ width: var(--width);
21
+
22
+
23
+ &--underline {
24
+ @include tokens.state(active hover) {
25
+ text-decoration: underline;
26
+ }
27
+ }
28
+ }
@@ -0,0 +1,47 @@
1
+ @use '/tokens';
2
+
3
+ .link {
4
+ --background: var(--background-default);
5
+ --background-active: var(--background-default);
6
+ --background-default: transparent;
7
+ --background-hover: var(--background-default);
8
+ --background-pressed: var(--background-default);
9
+ --border-color: var(--border-color-default);
10
+ --border-color-active: var(--border-color-default);
11
+ --border-color-default: var(--background);
12
+ --border-color-hover: var(--border-color-default);
13
+ --border-color-pressed: var(--border-color-default);
14
+ --border-radius: var(--border-radius-400);
15
+ --border-width: 0px;
16
+ --color: var(--color-default);
17
+ --color-active: var(--color-default);
18
+ --color-default: var(--color-text-400);
19
+ --color-hover: var(--color-default);
20
+ --color-pressed: var(--color-default);
21
+ --font-size: var(--font-size-400);
22
+ --font-weight: var(--font-weight-500);
23
+ --line-height: var(--line-height-400);
24
+ --padding-horizontal: var(--size-400);
25
+ --padding-vertical: var(--size-400);
26
+ --transition-duration: var(--transition-duration-400);
27
+ --width: auto;
28
+
29
+
30
+ @include tokens.state(active) {
31
+ --background: var(--background-active);
32
+ --border-color: var(--border-color-active);
33
+ --color: var(--color-active);
34
+ }
35
+
36
+ @include tokens.state(hover) {
37
+ --background: var(--background-hover);
38
+ --border-color: var(--border-color-hover);
39
+ --color: var(--color-hover);
40
+ }
41
+
42
+ @include tokens.state(pressed) {
43
+ --background: var(--background-pressed);
44
+ --border-color: var(--border-color-pressed);
45
+ --color: var(--color-pressed);
46
+ }
47
+ }
@@ -0,0 +1,24 @@
1
+ .loading {
2
+ animation: loading var(--animation-duration) infinite linear;
3
+ animation-delay: var(--animation-delay);
4
+ border: var(--border-width) var(--border-style) var(--border-color);
5
+ border-radius: 100%;
6
+ border-right-color: transparent;
7
+ border-top-color: transparent;
8
+ box-shadow: var(--box-shadow);
9
+ height: var(--height);
10
+ pointer-events: none;
11
+ position: relative;
12
+ transition: border-color var(--transition-duration) ease-in-out;
13
+ width: var(--width);
14
+ z-index: 0;
15
+ }
16
+
17
+ @keyframes loading {
18
+ 0% {
19
+ transform: rotate(0deg);
20
+ }
21
+ 100% {
22
+ transform: rotate(360deg);
23
+ }
24
+ }
@@ -0,0 +1,31 @@
1
+ .loading {
2
+ --animation-delay: calc(0s + (0.032s * var(--i)));
3
+ --animation-duration: calc(0.64s * (var(--i) + 1.5));
4
+ --border-color: inherit;
5
+ --border-style: solid;
6
+ --border-width: var(--border-width-400);
7
+ --box-shadow: none;
8
+ --height: calc(var(--size) * var(--multiplier));
9
+ --i: 0;
10
+ --multiplier: calc(1 - (.2 * var(--i)));
11
+ --size: var(--size-400);
12
+ --transition-duration: var(--transition-duration-400);
13
+ --width: calc(var(--size) * var(--multiplier));
14
+
15
+ .loading {
16
+ --i: 1;
17
+ --size: inherit;
18
+
19
+ .loading {
20
+ --i: 2;
21
+
22
+ .loading {
23
+ --i: 3;
24
+
25
+ .loading {
26
+ --i: 4;
27
+ }
28
+ }
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,32 @@
1
+ @use '/lib';
2
+ @use '/tokens';
3
+
4
+ .modal {
5
+ @include lib.position(fixed, center);
6
+ max-height: var(--max-height);
7
+ max-width: var(--max-width);
8
+ overflow: hidden;
9
+ transition: opacity var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out;
10
+ transform-origin: center;
11
+ width: var(--width);
12
+ z-index: 2;
13
+
14
+ @include tokens.state(inactive) {
15
+ opacity: 0;
16
+ pointer-events: none;
17
+ transform: translate(50%, 50%) scale(0.8);
18
+
19
+ input[type='password'] {
20
+ display: none;
21
+ }
22
+ }
23
+
24
+ &-frame {
25
+ transition: opacity var(--transition-duration) ease-in-out, transform var(--transition-duration) ease-in-out;
26
+ transform-origin: center;
27
+
28
+ @include tokens.state(inactive) {
29
+ display: none;
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,10 @@
1
+ .modal {
2
+ --max-height: calc(100svh - (var(--margin) * 2));
3
+ --max-width: 320px;
4
+ --width: calc(100svw - (var(--margin) * 2));
5
+
6
+ &,
7
+ &-frame {
8
+ --transition-duration: var(--transition-duration-300);
9
+ }
10
+ }
@@ -0,0 +1,27 @@
1
+ .page {
2
+ min-height: 100svh;
3
+ position: relative;
4
+ width: 100vw;
5
+
6
+
7
+ &-subtitle,
8
+ &-suptitle,
9
+ &-title {
10
+ color: var(--color);
11
+ display: block;
12
+ line-height: var(--line-height);
13
+ position: relative;
14
+ width: 100%;
15
+ z-index: 1;
16
+ }
17
+
18
+ &-subtitle,
19
+ &-suptitle {
20
+ font-size: var(--font-size);
21
+ }
22
+
23
+ &-suptitle + &-title,
24
+ &-title + &-subtitle {
25
+ margin-top: var(--margin-vertical);
26
+ }
27
+ }
@@ -0,0 +1,27 @@
1
+ .page {
2
+ &-subtitle,
3
+ &-suptitle {
4
+ --color: var(--color-default);
5
+ --color-default: var(--color-text-400);
6
+ --font-size: var(--font-size-400);
7
+ --line-height: var(--line-height-400);
8
+ }
9
+
10
+ &-suptitle + &-title {
11
+ &::before {
12
+ --line-height: 1;
13
+ }
14
+ }
15
+
16
+ &-title {
17
+ --color: var(--color-default);
18
+ --color-default: var(--color-text-500);
19
+ --line-height: var(--line-height-400);
20
+ }
21
+
22
+ &-title:has(+ .page-subtitle) {
23
+ &::after {
24
+ --line-height: 1;
25
+ }
26
+ }
27
+ }
@@ -0,0 +1,47 @@
1
+ @use '/lib';
2
+
3
+ .processing {
4
+ height: var(--size);
5
+ position: relative;
6
+ width: var(--size);
7
+ animation: processing var(--animation-duration) linear infinite;
8
+
9
+ &-ring {
10
+ clip: rect(calc(var(--size) / 2), var(--size), var(--size), 0);
11
+
12
+ &,
13
+ &::after,
14
+ &::before {
15
+ @include lib.position(absolute, full);
16
+ }
17
+
18
+ &,
19
+ &::before {
20
+ animation: processing calc(var(--animation-duration) / 2) cubic-bezier(0.770, 0.000, 0.175, 1.000) infinite;
21
+ }
22
+
23
+ &::after,
24
+ &::before {
25
+ border-radius: 50%;
26
+ content: "";
27
+ }
28
+
29
+ &::after {
30
+ border: var(--border-width) var(--border-style) var(--border-color-secondary);
31
+ opacity: var(--opacity);
32
+ }
33
+
34
+ &::before {
35
+ border-top: var(--border-width) var(--border-style) var(--border-color-primary);
36
+ }
37
+ }
38
+ }
39
+
40
+ @keyframes processing {
41
+ 0% {
42
+ transform: rotate(0deg);
43
+ }
44
+ 100% {
45
+ transform: rotate(360deg);
46
+ }
47
+ }
@@ -0,0 +1,11 @@
1
+ .processing {
2
+ --animation-duration: 2.64s;
3
+ --border-color-primary: var(--color-black-500);
4
+ --border-color-secondary: var(--color-border-300);
5
+ --border-style: solid;
6
+ --border-width: var(--border-width-600);
7
+ --height: var(--size);
8
+ --opacity: 0.64;
9
+ --size: var(--size-600);
10
+ --width: var(--size);
11
+ }
@@ -0,0 +1,93 @@
1
+ body,
2
+ html {
3
+ height: 100%;
4
+ overflow-x: hidden;
5
+ width: 100%;
6
+ }
7
+
8
+ body {
9
+ background-color: var(--background);
10
+ color: var(--color);
11
+ font-family: var(--font-family);
12
+ font-size: var(--font-size);
13
+ font-weight: var(--font-weight);
14
+ line-height: var(--line-height);
15
+ min-width: var(--min-width);
16
+ text-rendering: optimizeLegibility;
17
+ -webkit-font-smoothing: antialiased;
18
+ -moz-osx-font-smoothing: grayscale;
19
+ }
20
+
21
+ *,
22
+ *::after,
23
+ *::before {
24
+ box-sizing: border-box;
25
+ transition: inherit;
26
+ }
27
+
28
+ section {
29
+ align-content: flex-start;
30
+ display: flex;
31
+ flex-wrap: wrap;
32
+ justify-content: flex-start;
33
+ position: relative;
34
+ width: var(--width);
35
+ }
36
+
37
+ h1, h2, h3, h4, h5 {
38
+ color: var(--color);
39
+ font-size: var(--font-size);
40
+ font-weight: var(--font-weight);
41
+ line-height: var(--line-height);
42
+ margin: 0;
43
+ padding: 0;
44
+ position: relative;
45
+ width: 100%;
46
+ word-wrap: break-word;
47
+
48
+ sub,
49
+ sup {
50
+ font-size: 0.64em;
51
+ }
52
+ }
53
+
54
+ a {
55
+ color: var(--color, inherit);
56
+ cursor: pointer;
57
+ outline: none;
58
+ text-decoration: none;
59
+ }
60
+
61
+ b,
62
+ strong {
63
+ color: var(--color, inherit);
64
+ font-weight: var(--font-weight);
65
+ }
66
+
67
+ p {
68
+ margin: 0;
69
+ padding: 0;
70
+ width: 100%;
71
+ word-wrap: break-word;
72
+ }
73
+
74
+ pre {
75
+ margin: 0;
76
+ overflow-wrap: break-word;
77
+ padding: 0;
78
+ white-space: break-spaces;
79
+ width: 100%;
80
+ }
81
+
82
+ sub,
83
+ sup {
84
+ font-size: 0.8em;
85
+ }
86
+
87
+ sub {
88
+ bottom: -0.48em;
89
+ }
90
+
91
+ sup {
92
+ top: -0.48em;
93
+ }
@@ -0,0 +1,55 @@
1
+ @use '/lib';
2
+ @use '/tokens';
3
+
4
+ body {
5
+ @include lib.css-variables(border-radius, tokens.$border-radius);
6
+ @include lib.css-variables(box-shadow, tokens.$box-shadow);
7
+ @include lib.css-variables(border-width, tokens.$border-width);
8
+ @include lib.css-variables(color, tokens.$color);
9
+ @include lib.css-variables(font-size, tokens.$font-size);
10
+ @include lib.css-variables(font-weight, tokens.$font-weight);
11
+ @include lib.css-variables(line-height, tokens.$line-height);
12
+ @include lib.css-variables(size, tokens.$size);
13
+ @include lib.css-variables(spacer, tokens.$spacer);
14
+ @include lib.css-variables(transition-duration, tokens.$transition-duration);
15
+
16
+ --background: var(--color-grey-400);
17
+ --color: var(--color-text-400);
18
+ --font-family: 'Montserrat', sans-serif;
19
+ --font-size: var(--font-size-400);
20
+ --font-weight: var(--font-weight-400);
21
+ --line-height: var(--line-height-400);
22
+ --min-width: 320px;
23
+
24
+ // Used by components requiring scrollbar width
25
+ // - Should be updated using JS on load
26
+ --scrollbar-width: 17px;
27
+ }
28
+
29
+ section {
30
+ --width: 100%;
31
+ }
32
+
33
+ h1, h2, h3, h4, h5 {
34
+ --color: var(--color-text-400);
35
+ --font-weight: var(--font-weight-600);
36
+ --line-height: var(--line-height-300);
37
+ }
38
+
39
+ // Loop Through Font Size Keys To Set Header Font Size + Line Height
40
+ $keys: lib.map-keys(tokens.$font-size);
41
+ $i: nth($keys, lib.list-length($keys));
42
+
43
+ @each $h in h1 h2 h3 h4 h5 {
44
+ #{$h} {
45
+ --font-size: var(--font-size-#{$i});
46
+ }
47
+
48
+ $i: $i - 100;
49
+ }
50
+
51
+ b,
52
+ strong {
53
+ --color: var(--color-text-400);
54
+ --font-weight: var(--font-weight-500);
55
+ }