@edvisor/product-language 0.3.0 → 0.3.1

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 (278) hide show
  1. package/index.d.ts +2 -0
  2. package/index.js +7914 -0
  3. package/lib/components/alert-banner/alert-banner.d.ts +11 -0
  4. package/lib/components/alert-banner/alert-level-flags.d.ts +13 -0
  5. package/lib/components/alert-banner/index.d.ts +1 -0
  6. package/lib/components/badge/badge-type-flags.d.ts +18 -0
  7. package/lib/components/badge/badge.d.ts +5 -0
  8. package/lib/components/badge/index.d.ts +1 -0
  9. package/{src/lib/components/card/atoms/card-frame.tsx → lib/components/card/atoms/card-frame.d.ts} +7 -17
  10. package/lib/components/card/atoms/index.d.ts +1 -0
  11. package/lib/components/card/card.d.ts +14 -0
  12. package/lib/components/card/components/card-alert-banner-slot.d.ts +5 -0
  13. package/lib/components/card/components/card-controls-slot.d.ts +4 -0
  14. package/lib/components/card/components/card-section-slot.d.ts +11 -0
  15. package/lib/components/card/components/index.d.ts +3 -0
  16. package/lib/components/card/index.d.ts +2 -0
  17. package/lib/components/card/molecules/index.d.ts +1 -0
  18. package/lib/components/card/molecules/left-right-card.d.ts +16 -0
  19. package/lib/components/checkbox/checkbox.d.ts +10 -0
  20. package/lib/components/checkbox/helpers.d.ts +12 -0
  21. package/lib/components/checkbox/index.d.ts +1 -0
  22. package/lib/components/divider/divider-type-flags.d.ts +9 -0
  23. package/lib/components/divider/divider.d.ts +7 -0
  24. package/lib/components/divider/index.d.ts +1 -0
  25. package/lib/components/flag/flag-size-flags.d.ts +12 -0
  26. package/lib/components/flag/flag.d.ts +9 -0
  27. package/lib/components/flag/flag.list.d.ts +781 -0
  28. package/lib/components/flag/index.d.ts +1 -0
  29. package/lib/components/icon/icon-list.d.ts +131 -0
  30. package/lib/components/icon/icon.d.ts +131 -0
  31. package/lib/components/icon/index.d.ts +1 -0
  32. package/lib/components/index.d.ts +17 -0
  33. package/lib/components/input-field/components/index.d.ts +2 -0
  34. package/lib/components/input-field/components/labeled-input.d.ts +10 -0
  35. package/lib/components/input-field/components/stepper.d.ts +7 -0
  36. package/lib/components/input-field/index.d.ts +3 -0
  37. package/lib/components/input-field/input-field.d.ts +25 -0
  38. package/lib/components/input-field/input-number.d.ts +18 -0
  39. package/lib/components/input-field/input-text.d.ts +14 -0
  40. package/lib/components/layout/flex.d.ts +16 -0
  41. package/lib/components/layout/grid-layout.d.ts +11 -0
  42. package/lib/components/layout/index.d.ts +3 -0
  43. package/lib/components/layout/left-right-layout.d.ts +34 -0
  44. package/lib/components/link/index.d.ts +1 -0
  45. package/lib/components/link/link.d.ts +14 -0
  46. package/lib/components/molecules/avatar/avatar-size-flags.d.ts +12 -0
  47. package/lib/components/molecules/avatar/avatar.d.ts +12 -0
  48. package/lib/components/molecules/avatar/index.d.ts +1 -0
  49. package/lib/components/molecules/button/button-flags.d.ts +44 -0
  50. package/lib/components/molecules/button/button.d.ts +12 -0
  51. package/lib/components/molecules/button/index.d.ts +1 -0
  52. package/lib/components/molecules/index.d.ts +3 -0
  53. package/lib/components/molecules/input-checkbox/index.d.ts +1 -0
  54. package/lib/components/molecules/input-checkbox/input-checkbox.d.ts +8 -0
  55. package/lib/components/organisms/index.d.ts +1 -0
  56. package/lib/components/organisms/multi-choice-list/index.d.ts +1 -0
  57. package/lib/components/organisms/multi-choice-list/multi-choice-list.d.ts +10 -0
  58. package/lib/components/spinner/index.d.ts +1 -0
  59. package/lib/components/spinner/spinner-size-flags.d.ts +10 -0
  60. package/lib/components/spinner/spinner.d.ts +9 -0
  61. package/lib/components/tabs/components/index.d.ts +1 -0
  62. package/lib/components/tabs/components/tab.d.ts +7 -0
  63. package/lib/components/tabs/index.d.ts +1 -0
  64. package/lib/components/tabs/tabs.d.ts +15 -0
  65. package/lib/components/tag/components/close-button.d.ts +8 -0
  66. package/lib/components/tag/components/index.d.ts +2 -0
  67. package/lib/components/tag/components/tag-label.d.ts +8 -0
  68. package/lib/components/tag/index.d.ts +1 -0
  69. package/lib/components/tag/tag.d.ts +10 -0
  70. package/lib/components/thumbnail/index.d.ts +1 -0
  71. package/lib/components/thumbnail/thumbnail-size-flags.d.ts +10 -0
  72. package/lib/components/thumbnail/thumbnail.d.ts +10 -0
  73. package/lib/components/typography/index.d.ts +1 -0
  74. package/lib/components/typography/typography.d.ts +24 -0
  75. package/lib/foundations/color-system/base-palette/base-palette.d.ts +76 -0
  76. package/lib/foundations/color-system/base-palette/index.d.ts +1 -0
  77. package/lib/foundations/color-system/color-guidelines/color-guidelines.d.ts +132 -0
  78. package/lib/foundations/color-system/color-guidelines/index.d.ts +1 -0
  79. package/lib/foundations/color-system/components/color-sample.d.ts +17 -0
  80. package/lib/foundations/color-system/components/index.d.ts +1 -0
  81. package/lib/foundations/color-system/index.d.ts +1 -0
  82. package/lib/foundations/index.d.ts +4 -0
  83. package/lib/foundations/shadows/components.d.ts +8 -0
  84. package/lib/foundations/shadows/index.d.ts +1 -0
  85. package/lib/foundations/shadows/shadows.d.ts +8 -0
  86. package/lib/foundations/spacing/index.d.ts +1 -0
  87. package/lib/foundations/spacing/spacing-guidelines.d.ts +22 -0
  88. package/lib/foundations/spacing/spacing.d.ts +18 -0
  89. package/lib/foundations/typography/constants.d.ts +22 -0
  90. package/lib/foundations/typography/fonts.d.ts +1 -0
  91. package/lib/foundations/typography/index.d.ts +1 -0
  92. package/lib/foundations/typography/text-aspect-flags.d.ts +19 -0
  93. package/lib/foundations/typography/typography.d.ts +24 -0
  94. package/lib/helpers/generic-types.d.ts +21 -0
  95. package/lib/helpers/index.d.ts +6 -0
  96. package/lib/helpers/nothing.d.ts +8 -0
  97. package/{src/lib/helpers/numbers.ts → lib/helpers/numbers.d.ts} +50 -67
  98. package/lib/helpers/safe-navigation.d.ts +15 -0
  99. package/lib/helpers/slots.d.ts +23 -0
  100. package/lib/helpers/strings.d.ts +1 -0
  101. package/package.json +11 -3
  102. package/.babelrc +0 -12
  103. package/.eslintrc.json +0 -147
  104. package/.storybook/main.js +0 -57
  105. package/.storybook/manager.js +0 -7
  106. package/.storybook/preview.js +0 -15
  107. package/.storybook/tsconfig.json +0 -30
  108. package/jest.config.ts +0 -15
  109. package/jest.setup.ts +0 -2
  110. package/project.json +0 -96
  111. package/release-it.json +0 -18
  112. package/src/README.md +0 -61
  113. package/src/assets/svg/example_icon.svg +0 -3
  114. package/src/assets/svg/example_icon_white.svg +0 -3
  115. package/src/assets/svg/spinner.svg +0 -3
  116. package/src/assets/svg/spinner_white.svg +0 -3
  117. package/src/helpers/index.ts +0 -4
  118. package/src/helpers/playground.ts +0 -16
  119. package/src/helpers/talesOf.tsx +0 -42
  120. package/src/index.ts +0 -2
  121. package/src/lib/components/README.md +0 -49
  122. package/src/lib/components/alert-banner/alert-banner.tsx +0 -34
  123. package/src/lib/components/alert-banner/alert-level-flags.ts +0 -77
  124. package/src/lib/components/alert-banner/index.ts +0 -1
  125. package/src/lib/components/badge/badge-type-flags.ts +0 -72
  126. package/src/lib/components/badge/badge.test.tsx +0 -29
  127. package/src/lib/components/badge/badge.tsx +0 -22
  128. package/src/lib/components/badge/index.ts +0 -1
  129. package/src/lib/components/badge/stories/badge.stories.mdx +0 -44
  130. package/src/lib/components/badge/stories/components.tsx +0 -49
  131. package/src/lib/components/card/atoms/index.ts +0 -1
  132. package/src/lib/components/card/card.test.tsx +0 -162
  133. package/src/lib/components/card/card.tsx +0 -78
  134. package/src/lib/components/card/components/card-alert-banner-slot.tsx +0 -16
  135. package/src/lib/components/card/components/card-controls-slot.tsx +0 -19
  136. package/src/lib/components/card/components/card-section-slot.tsx +0 -51
  137. package/src/lib/components/card/components/index.ts +0 -3
  138. package/src/lib/components/card/index.ts +0 -2
  139. package/src/lib/components/card/molecules/index.ts +0 -1
  140. package/src/lib/components/card/molecules/left-right-card.test.tsx +0 -89
  141. package/src/lib/components/card/molecules/left-right-card.tsx +0 -63
  142. package/src/lib/components/card/storybook/card.stories.mdx +0 -100
  143. package/src/lib/components/card/storybook/components.tsx +0 -223
  144. package/src/lib/components/checkbox/checkbox.test.tsx +0 -39
  145. package/src/lib/components/checkbox/checkbox.tsx +0 -63
  146. package/src/lib/components/checkbox/helpers.tsx +0 -100
  147. package/src/lib/components/checkbox/index.tsx +0 -1
  148. package/src/lib/components/checkbox/stories/checkbox.stories.mdx +0 -57
  149. package/src/lib/components/checkbox/stories/components.tsx +0 -84
  150. package/src/lib/components/divider/divider-type-flags.tsx +0 -37
  151. package/src/lib/components/divider/divider.test.tsx +0 -34
  152. package/src/lib/components/divider/divider.tsx +0 -37
  153. package/src/lib/components/divider/index.tsx +0 -1
  154. package/src/lib/components/divider/stories/components.tsx +0 -13
  155. package/src/lib/components/divider/stories/divider.stories.mdx +0 -44
  156. package/src/lib/components/flag/flag-size-flags.tsx +0 -55
  157. package/src/lib/components/flag/flag.list.tsx +0 -788
  158. package/src/lib/components/flag/flag.test.tsx +0 -65
  159. package/src/lib/components/flag/flag.tsx +0 -97
  160. package/src/lib/components/flag/index.tsx +0 -1
  161. package/src/lib/components/flag/stories/components.tsx +0 -403
  162. package/src/lib/components/flag/stories/flag.stories.mdx +0 -48
  163. package/src/lib/components/flag/stories/playGround-select.tsx +0 -145
  164. package/src/lib/components/icon/icon-list.tsx +0 -135
  165. package/src/lib/components/icon/icon.test.tsx +0 -48
  166. package/src/lib/components/icon/icon.tsx +0 -181
  167. package/src/lib/components/icon/index.tsx +0 -1
  168. package/src/lib/components/icon/stories/components.tsx +0 -282
  169. package/src/lib/components/icon/stories/icon.stories.mdx +0 -65
  170. package/src/lib/components/index.ts +0 -19
  171. package/src/lib/components/input-field/components/index.ts +0 -2
  172. package/src/lib/components/input-field/components/labeled-input.tsx +0 -54
  173. package/src/lib/components/input-field/components/stepper.tsx +0 -60
  174. package/src/lib/components/input-field/index.ts +0 -6
  175. package/src/lib/components/input-field/input-field.test.tsx +0 -107
  176. package/src/lib/components/input-field/input-field.tsx +0 -126
  177. package/src/lib/components/input-field/input-number.tsx +0 -41
  178. package/src/lib/components/input-field/input-text.tsx +0 -30
  179. package/src/lib/components/input-field/storybook/components.tsx +0 -327
  180. package/src/lib/components/input-field/storybook/input-field.stories.mdx +0 -113
  181. package/src/lib/components/layout/flex.tsx +0 -22
  182. package/src/lib/components/layout/grid-layout.tsx +0 -40
  183. package/src/lib/components/layout/index.ts +0 -3
  184. package/src/lib/components/layout/left-right-layout.tsx +0 -67
  185. package/src/lib/components/link/index.ts +0 -1
  186. package/src/lib/components/link/link.test.tsx +0 -29
  187. package/src/lib/components/link/link.tsx +0 -56
  188. package/src/lib/components/link/storybook/link.stories.mdx +0 -52
  189. package/src/lib/components/molecules/avatar/avatar-size-flags.tsx +0 -55
  190. package/src/lib/components/molecules/avatar/avatar.test.tsx +0 -114
  191. package/src/lib/components/molecules/avatar/avatar.tsx +0 -80
  192. package/src/lib/components/molecules/avatar/index.tsx +0 -1
  193. package/src/lib/components/molecules/avatar/stories/avatar.stories.mdx +0 -52
  194. package/src/lib/components/molecules/avatar/stories/components.tsx +0 -36
  195. package/src/lib/components/molecules/button/button-flags.tsx +0 -340
  196. package/src/lib/components/molecules/button/button.test.tsx +0 -77
  197. package/src/lib/components/molecules/button/button.tsx +0 -214
  198. package/src/lib/components/molecules/button/index.tsx +0 -1
  199. package/src/lib/components/molecules/button/stories/button.stories.mdx +0 -105
  200. package/src/lib/components/molecules/button/stories/components.tsx +0 -84
  201. package/src/lib/components/molecules/index.ts +0 -3
  202. package/src/lib/components/molecules/input-checkbox/index.tsx +0 -1
  203. package/src/lib/components/molecules/input-checkbox/input-checkbox.test.tsx +0 -34
  204. package/src/lib/components/molecules/input-checkbox/input-checkbox.tsx +0 -49
  205. package/src/lib/components/molecules/input-checkbox/stories/components.tsx +0 -53
  206. package/src/lib/components/molecules/input-checkbox/stories/input-checkbox.stories.mdx +0 -49
  207. package/src/lib/components/organisms/index.ts +0 -1
  208. package/src/lib/components/organisms/multi-choice-list/index.tsx +0 -1
  209. package/src/lib/components/organisms/multi-choice-list/multi-choice-list.test.tsx +0 -33
  210. package/src/lib/components/organisms/multi-choice-list/multi-choice-list.tsx +0 -52
  211. package/src/lib/components/organisms/multi-choice-list/stories/components.tsx +0 -124
  212. package/src/lib/components/organisms/multi-choice-list/stories/multi-choice-list.stories.mdx +0 -99
  213. package/src/lib/components/spinner/index.tsx +0 -1
  214. package/src/lib/components/spinner/spinner-size-flags.tsx +0 -39
  215. package/src/lib/components/spinner/spinner.test.tsx +0 -31
  216. package/src/lib/components/spinner/spinner.tsx +0 -54
  217. package/src/lib/components/spinner/stories/components.tsx +0 -39
  218. package/src/lib/components/spinner/stories/spinner.stories.mdx +0 -35
  219. package/src/lib/components/tabs/components/index.ts +0 -1
  220. package/src/lib/components/tabs/components/tab.tsx +0 -62
  221. package/src/lib/components/tabs/index.tsx +0 -1
  222. package/src/lib/components/tabs/storybook/components.tsx +0 -282
  223. package/src/lib/components/tabs/storybook/tabs.stories.mdx +0 -97
  224. package/src/lib/components/tabs/tabs.test.tsx +0 -86
  225. package/src/lib/components/tabs/tabs.tsx +0 -101
  226. package/src/lib/components/tag/components/close-button.tsx +0 -85
  227. package/src/lib/components/tag/components/index.ts +0 -2
  228. package/src/lib/components/tag/components/tag-label.tsx +0 -44
  229. package/src/lib/components/tag/index.tsx +0 -1
  230. package/src/lib/components/tag/stories/components.tsx +0 -86
  231. package/src/lib/components/tag/stories/tag.stories.mdx +0 -42
  232. package/src/lib/components/tag/tag.test.tsx +0 -36
  233. package/src/lib/components/tag/tag.tsx +0 -33
  234. package/src/lib/components/thumbnail/index.tsx +0 -1
  235. package/src/lib/components/thumbnail/stories/thumbnail.stories.mdx +0 -34
  236. package/src/lib/components/thumbnail/thumbnail-size-flags.tsx +0 -41
  237. package/src/lib/components/thumbnail/thumbnail.test.tsx +0 -51
  238. package/src/lib/components/thumbnail/thumbnail.tsx +0 -45
  239. package/src/lib/components/typography/index.ts +0 -1
  240. package/src/lib/components/typography/storybook/components.tsx +0 -288
  241. package/src/lib/components/typography/storybook/typography.stories.mdx +0 -90
  242. package/src/lib/components/typography/typography.test.tsx +0 -97
  243. package/src/lib/components/typography/typography.tsx +0 -99
  244. package/src/lib/foundations/color-system/base-palette/base-palette.stories.tsx +0 -123
  245. package/src/lib/foundations/color-system/base-palette/base-palette.ts +0 -93
  246. package/src/lib/foundations/color-system/base-palette/index.ts +0 -1
  247. package/src/lib/foundations/color-system/color-guidelines/color-guidelines.stories.mdx +0 -85
  248. package/src/lib/foundations/color-system/color-guidelines/color-guidelines.stories.tsx +0 -231
  249. package/src/lib/foundations/color-system/color-guidelines/color-guidelines.ts +0 -160
  250. package/src/lib/foundations/color-system/color-guidelines/index.ts +0 -1
  251. package/src/lib/foundations/color-system/components/color-sample.tsx +0 -99
  252. package/src/lib/foundations/color-system/components/index.ts +0 -1
  253. package/src/lib/foundations/color-system/index.ts +0 -1
  254. package/src/lib/foundations/index.ts +0 -4
  255. package/src/lib/foundations/shadows/components.tsx +0 -59
  256. package/src/lib/foundations/shadows/index.ts +0 -1
  257. package/src/lib/foundations/shadows/shadows.stories.mdx +0 -71
  258. package/src/lib/foundations/shadows/shadows.tsx +0 -47
  259. package/src/lib/foundations/spacing/index.ts +0 -1
  260. package/src/lib/foundations/spacing/spacing-guidelines.ts +0 -24
  261. package/src/lib/foundations/spacing/spacing.stories.mdx +0 -51
  262. package/src/lib/foundations/spacing/spacing.ts +0 -18
  263. package/src/lib/foundations/typography/constants.ts +0 -25
  264. package/src/lib/foundations/typography/fonts.ts +0 -205
  265. package/src/lib/foundations/typography/index.tsx +0 -1
  266. package/src/lib/foundations/typography/text-aspect-flags.ts +0 -61
  267. package/src/lib/foundations/typography/typography.tsx +0 -102
  268. package/src/lib/helpers/generic-types.ts +0 -44
  269. package/src/lib/helpers/index.ts +0 -6
  270. package/src/lib/helpers/nothing.tsx +0 -18
  271. package/src/lib/helpers/safe-navigation.ts +0 -44
  272. package/src/lib/helpers/slots.test.tsx +0 -98
  273. package/src/lib/helpers/slots.tsx +0 -157
  274. package/src/lib/helpers/strings.test.ts +0 -47
  275. package/src/lib/helpers/strings.ts +0 -16
  276. package/tsconfig.json +0 -35
  277. package/tsconfig.lib.json +0 -28
  278. package/tsconfig.spec.json +0 -21
@@ -1,51 +0,0 @@
1
- import { Meta, Description } from '@storybook/addon-docs';
2
-
3
-
4
- <Meta title="Foundations/Spacing" />
5
-
6
- # Spacing System
7
-
8
- All spacing for components and typography is done in increments of 8 pixels.
9
- This forms the basic unit of measurement for spacing.
10
-
11
- For more details, check out the guidelines on [Figma](https://www.figma.com/file/ue1CurHfZ426o2T2l8Dk64/UI-Library-(in-progress)?node-id=388%3A364)
12
-
13
- ## How to use
14
-
15
- ```javascript
16
- import SPACING from './spacing'
17
-
18
- //get the token value
19
- SPACING.[`YOUR-VALUE-HERE`]
20
- ```
21
-
22
- ## When to use
23
-
24
- You can set this values from this props:
25
-
26
- - width
27
- - heigth
28
- - margin
29
- - padding
30
-
31
-
32
- ## List of Values
33
-
34
- | Name | Value |
35
- | ---- | ----- |
36
- | `Size2` | 2px|
37
- | `Size4` | 4px|
38
- | `Size8` | 8px|
39
- | `Size12` | 12px|
40
- | `Size16` | 16px|
41
- | `Size24` | 24px|
42
- | `Size32` | 32px|
43
- | `Size64` | 64px|
44
- | `Size96` | 96px|
45
- | `Size128` | 128px|
46
- | `Size192` | 192px|
47
- | `Size256` | 256px|
48
- | `Size384` | 384px|
49
- | `Size512` | 512px|
50
- | `Size640` | 640px|
51
- | `Size768` | 768px|
@@ -1,18 +0,0 @@
1
- export enum SPACING {
2
- Size2 = '2px',
3
- Size4 = '4px',
4
- Size8 = '8px',
5
- Size12 = '12px',
6
- Size16 = '16px',
7
- Size24 = '24px',
8
- Size32 = '32px',
9
- Size64 = '64px',
10
- Size96 = '96px',
11
- Size128 = '128px',
12
- Size192 = '192px',
13
- Size256 = '256px',
14
- Size384 = '384px',
15
- Size512 = '512px',
16
- Size640 = '640px',
17
- Size768 = '768px',
18
- }
@@ -1,25 +0,0 @@
1
-
2
- export const enum FontWeight {
3
- Regular = '400',
4
- Medium = '500',
5
- SemiBold = '600',
6
- }
7
-
8
- export const FontSize = {
9
- a: '13px',
10
- b: '14px',
11
- c: '16px',
12
- d: '18px',
13
- e: '20px',
14
- f: '28px',
15
- g: '36px',
16
- } as const
17
-
18
- export const LineHeight = {
19
- a: '16px',
20
- b: '20px',
21
- c: '24px',
22
- d: '28px',
23
- e: '32px',
24
- f: '44px',
25
- } as const
@@ -1,205 +0,0 @@
1
- export const InterFontFace = `
2
- @font-face {
3
- font-family: 'Inter';
4
- font-style: normal;
5
- font-weight: 300;
6
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7W0Q5n-wU.woff2)
7
- format('woff2');
8
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
9
- U+FE2E-FE2F;
10
- }
11
- /* cyrillic */
12
- @font-face {
13
- font-family: 'Inter';
14
- font-style: normal;
15
- font-weight: 300;
16
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7W0Q5n-wU.woff2)
17
- format('woff2');
18
- unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
19
- }
20
- /* greek-ext */
21
- @font-face {
22
- font-family: 'Inter';
23
- font-style: normal;
24
- font-weight: 300;
25
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7W0Q5n-wU.woff2)
26
- format('woff2');
27
- unicode-range: U+1F00-1FFF;
28
- }
29
- /* greek */
30
- @font-face {
31
- font-family: 'Inter';
32
- font-style: normal;
33
- font-weight: 300;
34
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7W0Q5n-wU.woff2)
35
- format('woff2');
36
- unicode-range: U+0370-03FF;
37
- }
38
- /* vietnamese */
39
- @font-face {
40
- font-family: 'Inter';
41
- font-style: normal;
42
- font-weight: 300;
43
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7W0Q5n-wU.woff2)
44
- format('woff2');
45
- unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,
46
- U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
47
- }
48
- /* latin-ext */
49
- @font-face {
50
- font-family: 'Inter';
51
- font-style: normal;
52
- font-weight: 300;
53
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7W0Q5n-wU.woff2)
54
- format('woff2');
55
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,
56
- U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
57
- }
58
- /* latin */
59
- @font-face {
60
- font-family: 'Inter';
61
- font-style: normal;
62
- font-weight: 300;
63
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7W0Q5nw.woff2)
64
- format('woff2');
65
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
66
- U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212,
67
- U+2215, U+FEFF, U+FFFD;
68
- }
69
- /* cyrillic-ext */
70
- @font-face {
71
- font-family: 'Inter';
72
- font-style: normal;
73
- font-weight: 400;
74
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7W0Q5n-wU.woff2)
75
- format('woff2');
76
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
77
- U+FE2E-FE2F;
78
- }
79
- /* cyrillic */
80
- @font-face {
81
- font-family: 'Inter';
82
- font-style: normal;
83
- font-weight: 400;
84
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7W0Q5n-wU.woff2)
85
- format('woff2');
86
- unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
87
- }
88
- /* greek-ext */
89
- @font-face {
90
- font-family: 'Inter';
91
- font-style: normal;
92
- font-weight: 400;
93
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7W0Q5n-wU.woff2)
94
- format('woff2');
95
- unicode-range: U+1F00-1FFF;
96
- }
97
- /* greek */
98
- @font-face {
99
- font-family: 'Inter';
100
- font-style: normal;
101
- font-weight: 400;
102
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7W0Q5n-wU.woff2)
103
- format('woff2');
104
- unicode-range: U+0370-03FF;
105
- }
106
- /* vietnamese */
107
- @font-face {
108
- font-family: 'Inter';
109
- font-style: normal;
110
- font-weight: 400;
111
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7W0Q5n-wU.woff2)
112
- format('woff2');
113
- unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,
114
- U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
115
- }
116
- /* latin-ext */
117
- @font-face {
118
- font-family: 'Inter';
119
- font-style: normal;
120
- font-weight: 400;
121
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7W0Q5n-wU.woff2)
122
- format('woff2');
123
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,
124
- U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
125
- }
126
- /* latin */
127
- @font-face {
128
- font-family: 'Inter';
129
- font-style: normal;
130
- font-weight: 400;
131
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7W0Q5nw.woff2)
132
- format('woff2');
133
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
134
- U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212,
135
- U+2215, U+FEFF, U+FFFD;
136
- }
137
- /* cyrillic-ext */
138
- @font-face {
139
- font-family: 'Inter';
140
- font-style: normal;
141
- font-weight: 500;
142
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2JL7W0Q5n-wU.woff2)
143
- format('woff2');
144
- unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F,
145
- U+FE2E-FE2F;
146
- }
147
- /* cyrillic */
148
- @font-face {
149
- font-family: 'Inter';
150
- font-style: normal;
151
- font-weight: 500;
152
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa0ZL7W0Q5n-wU.woff2)
153
- format('woff2');
154
- unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
155
- }
156
- /* greek-ext */
157
- @font-face {
158
- font-family: 'Inter';
159
- font-style: normal;
160
- font-weight: 500;
161
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2ZL7W0Q5n-wU.woff2)
162
- format('woff2');
163
- unicode-range: U+1F00-1FFF;
164
- }
165
- /* greek */
166
- @font-face {
167
- font-family: 'Inter';
168
- font-style: normal;
169
- font-weight: 500;
170
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1pL7W0Q5n-wU.woff2)
171
- format('woff2');
172
- unicode-range: U+0370-03FF;
173
- }
174
- /* vietnamese */
175
- @font-face {
176
- font-family: 'Inter';
177
- font-style: normal;
178
- font-weight: 500;
179
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa2pL7W0Q5n-wU.woff2)
180
- format('woff2');
181
- unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169,
182
- U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
183
- }
184
- /* latin-ext */
185
- @font-face {
186
- font-family: 'Inter';
187
- font-style: normal;
188
- font-weight: 500;
189
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa25L7W0Q5n-wU.woff2)
190
- format('woff2');
191
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,
192
- U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
193
- }
194
- /* latin */
195
- @font-face {
196
- font-family: 'Inter';
197
- font-style: normal;
198
- font-weight: 500;
199
- src: url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7W0Q5nw.woff2)
200
- format('woff2');
201
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
202
- U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212,
203
- U+2215, U+FEFF, U+FFFD;
204
- }
205
- `
@@ -1 +0,0 @@
1
- export * from './typography'
@@ -1,61 +0,0 @@
1
- import { bitwiseOr, isDefined, MappedEnum, PropsWithChildren, RequireOnlyOne } from '@helpers'
2
- import { Text } from '../color-system'
3
-
4
- export const enum TextAspects {
5
- default = 1,
6
- subdued = 2,
7
- light = 4,
8
- critical = 8,
9
- success = 16,
10
- onPrimary = 32,
11
- onCritical = 64,
12
- }
13
-
14
- type TextOptions<T> = MappedEnum<typeof TextAspects, T>
15
-
16
- function toTextAspect(n: number): TextAspects {
17
- switch (n) {
18
- case TextAspects.subdued: return TextAspects.subdued
19
- case TextAspects.light: return TextAspects.light
20
- case TextAspects.critical: return TextAspects.critical
21
- case TextAspects.success: return TextAspects.success
22
- case TextAspects.onPrimary: return TextAspects.onPrimary
23
- case TextAspects.onCritical: return TextAspects.onCritical
24
- default: return TextAspects.default
25
- }
26
- }
27
-
28
- const TextAspectColors = {
29
- [TextAspects.default]: Text.Default,
30
- [TextAspects.subdued]: Text.Subdued,
31
- [TextAspects.light]: Text.Light,
32
- [TextAspects.onPrimary]: Text.OnPrimary,
33
- [TextAspects.onCritical]: Text.OnPrimary,
34
- [TextAspects.success]: Text.Success,
35
- [TextAspects.critical]: Text.Critical,
36
- }
37
-
38
- export type ITextAspectProps = Partial<RequireOnlyOne<TextOptions<boolean>>> & PropsWithChildren
39
-
40
- export type TransientTextOptions = Omit<TextOptions<boolean>, 'onCritical' | 'onPrimary'> & {
41
- $onCritical?: boolean
42
- $onPrimary?: boolean
43
- }
44
-
45
- export type ITransientTextAspectProps = Partial<RequireOnlyOne<TransientTextOptions>> & PropsWithChildren
46
-
47
- export function getTextAspect(props: ITextAspectProps & ITransientTextAspectProps) {
48
- return TextAspectColors[
49
- toTextAspect(
50
- bitwiseOr([
51
- props.default,
52
- props.subdued,
53
- props.light,
54
- props.critical,
55
- props.success,
56
- isDefined(props.onPrimary) ? props.onPrimary : props.$onPrimary,
57
- isDefined(props.onCritical) ? props.onCritical : props.$onCritical,
58
- ])
59
- )
60
- ]
61
- }
@@ -1,102 +0,0 @@
1
- import { css } from 'styled-components'
2
- import { getTextAspect, ITransientTextAspectProps } from './text-aspect-flags'
3
- import { FontWeight, FontSize, LineHeight } from './constants'
4
- import { is } from '@helpers'
5
- import { InterFontFace } from './fonts'
6
-
7
- export type ILabelProps = ITransientTextAspectProps & {
8
- default?: boolean,
9
- subtle?: boolean,
10
- strong?: boolean,
11
- }
12
-
13
- export type IBodyProps = ITransientTextAspectProps & {
14
- default?: boolean,
15
- strong?: boolean,
16
- }
17
-
18
- const LightText = css`
19
- color: ${getTextAspect({ light: true })};
20
- `
21
-
22
- const Base = css<ITransientTextAspectProps>`
23
- color: ${(props) => getTextAspect(props)};
24
- ${InterFontFace}
25
- font-family: 'Inter';
26
- `
27
-
28
- const Display = css<ITransientTextAspectProps>`
29
- ${Base}
30
- font-weight: ${FontWeight.Regular};
31
- font-size: ${FontSize.g};
32
- line-height: ${LineHeight.f};
33
- `
34
-
35
- const Heading1 = css<ITransientTextAspectProps>`
36
- ${Base}
37
- font-weight: ${FontWeight.SemiBold};
38
- font-size: ${FontSize.f};
39
- line-height: ${LineHeight.e};
40
- `
41
-
42
- const Heading2 = css<ITransientTextAspectProps>`
43
- ${Heading1}
44
- font-size: ${FontSize.e};
45
- line-height: ${LineHeight.d};
46
- `
47
-
48
- const Heading3 = css<ITransientTextAspectProps>`
49
- ${Heading1}
50
- font-size: ${FontSize.c};
51
- line-height: ${LineHeight.c};
52
- `
53
-
54
- const Heading4 = css<ITransientTextAspectProps>`
55
- ${Heading1}
56
- font-size: ${FontSize.b};
57
- line-height: ${LineHeight.b};
58
- `
59
-
60
- const Body = css<IBodyProps>`
61
- ${Base}
62
- font-weight: ${({ strong }) => is(strong) ? FontWeight.Medium : FontWeight.Regular};
63
- font-size: ${FontSize.b};
64
- line-height: ${LineHeight.b};
65
- `
66
-
67
- const BodyLarge = css<IBodyProps>`
68
- ${Base}
69
- font-weight: ${({ strong }) => is(strong) ? FontWeight.SemiBold : FontWeight.Regular};
70
- font-size: ${FontSize.d};
71
- line-height: ${LineHeight.d};
72
- `
73
-
74
- const Caption = css<ITransientTextAspectProps>`
75
- ${Base}
76
- font-weight: ${FontWeight.Regular};
77
- font-size: ${FontSize.a};
78
- line-height: ${LineHeight.a};
79
- `
80
-
81
- const Label = css<ILabelProps>`
82
- ${Base}
83
- font-weight: ${({ strong }) => is(strong) ? FontWeight.Medium : FontWeight.Regular};
84
- font-size: ${({ subtle }) => is(subtle) ? FontSize.a : FontSize.b};
85
- line-height: ${({ subtle }) => is(subtle) ? LineHeight.a : LineHeight.b};
86
- `
87
-
88
- export const Typography = {
89
- Display,
90
- Heading1,
91
- Heading2,
92
- Heading3,
93
- Heading4,
94
- Body,
95
- BodyLarge,
96
- Caption,
97
- Label,
98
- }
99
-
100
- export const _Typography = {
101
- LightText,
102
- }
@@ -1,44 +0,0 @@
1
- // eslint-disable-next-line no-restricted-syntax
2
- import React, { FC as FunctionComponent, ForwardRefExoticComponent, ForwardRefRenderFunction, PropsWithChildren as PWC, PropsWithoutRef, RefAttributes } from 'react'
3
- import { Slot } from './slots'
4
-
5
- /** @see https://stackoverflow.com/a/49725198/29182 */
6
- export type RequireOnlyOne<T, Keys extends keyof T = keyof T> = Pick<
7
- T,
8
- Exclude<keyof T, Keys>
9
- > &
10
- {
11
- [K in Keys]-?: Required<Pick<T, K>> &
12
- Partial<Record<Exclude<Keys, K>, undefined>>;
13
- }[Keys];
14
-
15
- export type MappedEnum<E, T> = {
16
- [key in keyof E]: T;
17
- }
18
-
19
- export type Values<T> = T[keyof T];
20
-
21
- export type PropsWithChildren<T = unknown> = PWC<T>
22
-
23
- // Our FC type adds the ability to specify sub-components such as Slots
24
- // also, just good to wrap imports from 3rd parties in general
25
- export type FC<
26
- // eslint-disable-next-line @typescript-eslint/ban-types
27
- P = {},
28
- // eslint-disable-next-line @typescript-eslint/ban-types
29
- E extends { [x: symbol]: FunctionComponent<PropsWithChildren> | typeof Slot } = {}
30
- > = FunctionComponent<P>
31
- & {
32
- [key in keyof E]: E[key]
33
- }
34
-
35
- // eslint-disable-next-line @typescript-eslint/ban-types
36
- type ExtensibleForwardRef<T, P = {}, E = {}> = ForwardRefExoticComponent<PropsWithoutRef<P> & RefAttributes<T>>
37
- & {
38
- [key in keyof E]: E[key]
39
- }
40
-
41
- // eslint-disable-next-line @typescript-eslint/ban-types
42
- export function forwardRef<T, P = {}, E = {}>(render: ForwardRefRenderFunction<T, P>): ExtensibleForwardRef<T, P, E> {
43
- return React.forwardRef(render) as ExtensibleForwardRef<T, P, E>
44
- }
@@ -1,6 +0,0 @@
1
- export * from './safe-navigation'
2
- export * from './slots'
3
- export * from './generic-types'
4
- export * from './numbers'
5
- export * from './nothing'
6
- export * from './strings'
@@ -1,18 +0,0 @@
1
- import { FC, PropsWithChildren } from './generic-types'
2
- import { isDefined } from './safe-navigation'
3
-
4
- // eslint-disable-next-line no-null/no-null
5
- export const Nothing: FC = () => null
6
-
7
- export function maybeRender<T>(prop: T, JSX: JSX.Element) {
8
- return isDefined(prop) && Boolean(prop) ? JSX : <Nothing />
9
- }
10
-
11
- interface IIfProps {
12
- is: unknown
13
- }
14
-
15
- export const If: FC<PropsWithChildren<IIfProps>> = (props) => {
16
- // eslint-disable-next-line react/jsx-no-useless-fragment
17
- return maybeRender(props.is, <>{props.children}</>)
18
- }
@@ -1,44 +0,0 @@
1
-
2
- /** even though we have null disabled in the repo,
3
- * I still would not want isNil to skip checking null
4
- * it is for juuuuust in case a third party sends us a null
5
- * or something, and the types are not correct
6
- */
7
-
8
- /* eslint-disable no-null/no-null */
9
- /* eslint-disable @typescript-eslint/ban-types */
10
-
11
- export function isNil<T>(value: T | undefined | null): value is undefined | null {
12
- return value === null || value === undefined
13
- }
14
-
15
- export function isDefined<T>(value: T | undefined | null): value is T {
16
- return !isNil(value)
17
- }
18
-
19
- export function defaultTo<T>(value: T | undefined | null, fallback: T): T {
20
- return isDefined(value) ? value : fallback
21
- }
22
-
23
- export function isEmpty<T extends { length: number }>(obj: T) {
24
- return obj.length < 1
25
- }
26
-
27
- /** used for evaluating tri-state logic (true | false | undefined) */
28
- export function is (pred?: boolean): boolean {
29
- return isDefined(pred) && pred
30
- }
31
-
32
- export function safeArray<T>(arr: T[] | undefined | null): T[] {
33
- return isDefined(arr) ? arr : []
34
- }
35
-
36
- export function safeCallback <T>(f?: (e: T) => void, e?: T) {
37
- if (isDefined(f)) {
38
- if (isDefined(e)) {
39
- f(e)
40
- } else {
41
- (f as () => void)()
42
- }
43
- }
44
- }
@@ -1,98 +0,0 @@
1
- import styled from 'styled-components'
2
- import { FC } from './generic-types'
3
- import { isReactElementOfType, Slot } from './slots'
4
-
5
- describe('isReactElementOfType', () => {
6
- describe('class component', () => {
7
- class Bob extends Slot {}
8
-
9
- describe('both component and element are unstyled', () => {
10
- it('knows when they are different', () => {
11
- expect(isReactElementOfType(Bob)(<div />)).toBe(false)
12
- })
13
- it('knows when they are the same', () => {
14
- expect(isReactElementOfType(Bob)(<Bob />)).toBe(true)
15
- })
16
- })
17
-
18
- describe('component type is styled', () => {
19
- const StyledBob = styled(Bob)``
20
-
21
- it('knows when they are different', () => {
22
- expect(isReactElementOfType(StyledBob)(<div />)).toBe(false)
23
- })
24
- it('knows when they are the same', () => {
25
- expect(isReactElementOfType(StyledBob)(<Bob />)).toBe(true)
26
- })
27
- })
28
-
29
- describe('element is styled', () => {
30
- const StyledBob = styled(Bob)``
31
-
32
- it('knows when they are different', () => {
33
- expect(isReactElementOfType(Bob)(<div />)).toBe(false)
34
- })
35
- it('knows when they are the same', () => {
36
- expect(isReactElementOfType(Bob)(<StyledBob />)).toBe(true)
37
- })
38
- })
39
-
40
- describe('both component and element are styled', () => {
41
- const StyledBob = styled(Bob)``
42
-
43
- it('knows when they are different', () => {
44
- expect(isReactElementOfType(StyledBob)(<div />)).toBe(false)
45
- })
46
- it('knows when they are the same', () => {
47
- expect(isReactElementOfType(StyledBob)(<StyledBob />)).toBe(true)
48
- })
49
- })
50
- })
51
-
52
- describe('function component', () => {
53
- const Bob: FC = () => <div />
54
-
55
- describe('both component and element are unstyled', () => {
56
- it('knows when they are different', () => {
57
- expect(isReactElementOfType(Bob)(<div />)).toBe(false)
58
- })
59
- it('knows when they are the same', () => {
60
- expect(isReactElementOfType(Bob)(<Bob />)).toBe(true)
61
- })
62
- })
63
-
64
- describe('component type is styled', () => {
65
- const StyledBob = styled(Bob)``
66
-
67
- it('knows when they are different', () => {
68
- expect(isReactElementOfType(StyledBob)(<div />)).toBe(false)
69
- })
70
- it('knows when they are the same', () => {
71
- expect(isReactElementOfType(StyledBob)(<Bob />)).toBe(true)
72
- })
73
- })
74
-
75
- describe('element is styled', () => {
76
- const StyledBob = styled(Bob)``
77
-
78
- it('knows when they are different', () => {
79
- expect(isReactElementOfType(Bob)(<div />)).toBe(false)
80
- })
81
- it('knows when they are the same', () => {
82
- expect(isReactElementOfType(Bob)(<StyledBob />)).toBe(true)
83
- })
84
- })
85
-
86
- describe('both component and element are styled', () => {
87
- const StyledBob = styled(Bob)``
88
-
89
- it('knows when they are different', () => {
90
- expect(isReactElementOfType(StyledBob)(<div />)).toBe(false)
91
- })
92
- it('knows when they are the same', () => {
93
- expect(isReactElementOfType(StyledBob)(<StyledBob />)).toBe(true)
94
- })
95
- })
96
- })
97
-
98
- })