aidos-ui 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. package/.prettierrc +4 -0
  2. package/LICENSE +21 -0
  3. package/README.md +55 -0
  4. package/dist/Badge.d.ts +7 -0
  5. package/dist/Badge.js +22 -0
  6. package/dist/Badge.js.map +1 -0
  7. package/dist/BaseButton.d.ts +13 -0
  8. package/dist/BaseButton.js +22 -0
  9. package/dist/BaseButton.js.map +1 -0
  10. package/dist/BaseInput.d.ts +15 -0
  11. package/dist/BaseInput.js +14 -0
  12. package/dist/BaseInput.js.map +1 -0
  13. package/dist/BaseLink.d.ts +17 -0
  14. package/dist/BaseLink.js +28 -0
  15. package/dist/BaseLink.js.map +1 -0
  16. package/dist/BaseList.d.ts +6 -0
  17. package/dist/BaseList.js +14 -0
  18. package/dist/BaseList.js.map +1 -0
  19. package/dist/BaseListAddOn.d.ts +5 -0
  20. package/dist/BaseListAddOn.js +7 -0
  21. package/dist/BaseListAddOn.js.map +1 -0
  22. package/dist/BaseListItem.d.ts +27 -0
  23. package/dist/BaseListItem.js +26 -0
  24. package/dist/BaseListItem.js.map +1 -0
  25. package/dist/BaseView.d.ts +12 -0
  26. package/dist/BaseView.js +26 -0
  27. package/dist/BaseView.js.map +1 -0
  28. package/dist/Box.d.ts +5 -0
  29. package/dist/Box.js +6 -0
  30. package/dist/Box.js.map +1 -0
  31. package/dist/Button.d.ts +20 -0
  32. package/dist/Button.js +20 -0
  33. package/dist/Button.js.map +1 -0
  34. package/dist/Calendar.d.ts +18 -0
  35. package/dist/Calendar.js +57 -0
  36. package/dist/Calendar.js.map +1 -0
  37. package/dist/Card.d.ts +4 -0
  38. package/dist/Card.js +12 -0
  39. package/dist/Card.js.map +1 -0
  40. package/dist/Checkbox.d.ts +12 -0
  41. package/dist/Checkbox.js +32 -0
  42. package/dist/Checkbox.js.map +1 -0
  43. package/dist/Circle.d.ts +6 -0
  44. package/dist/Circle.js +12 -0
  45. package/dist/Circle.js.map +1 -0
  46. package/dist/Column.d.ts +6 -0
  47. package/dist/Column.js +7 -0
  48. package/dist/Column.js.map +1 -0
  49. package/dist/DarkMode.d.ts +13 -0
  50. package/dist/DarkMode.js +61 -0
  51. package/dist/DarkMode.js.map +1 -0
  52. package/dist/DateInput.d.ts +13 -0
  53. package/dist/DateInput.js +29 -0
  54. package/dist/DateInput.js.map +1 -0
  55. package/dist/DatePicker.d.ts +12 -0
  56. package/dist/DatePicker.js +34 -0
  57. package/dist/DatePicker.js.map +1 -0
  58. package/dist/DatetimeInput.d.ts +13 -0
  59. package/dist/DatetimeInput.js +31 -0
  60. package/dist/DatetimeInput.js.map +1 -0
  61. package/dist/DesignBook.d.ts +2 -0
  62. package/dist/DesignBook.js +55 -0
  63. package/dist/DesignBook.js.map +1 -0
  64. package/dist/Dialog.d.ts +17 -0
  65. package/dist/Dialog.js +86 -0
  66. package/dist/Dialog.js.map +1 -0
  67. package/dist/Dropdown.d.ts +10 -0
  68. package/dist/Dropdown.js +64 -0
  69. package/dist/Dropdown.js.map +1 -0
  70. package/dist/Emitter.d.ts +6 -0
  71. package/dist/Emitter.js +19 -0
  72. package/dist/Emitter.js.map +1 -0
  73. package/dist/FlexLayout.d.ts +11 -0
  74. package/dist/FlexLayout.js +18 -0
  75. package/dist/FlexLayout.js.map +1 -0
  76. package/dist/Icon.d.ts +12 -0
  77. package/dist/Icon.js +69 -0
  78. package/dist/Icon.js.map +1 -0
  79. package/dist/IconButton.d.ts +9 -0
  80. package/dist/IconButton.js +31 -0
  81. package/dist/IconButton.js.map +1 -0
  82. package/dist/IconLink.d.ts +9 -0
  83. package/dist/IconLink.js +31 -0
  84. package/dist/IconLink.js.map +1 -0
  85. package/dist/IconType.d.ts +1 -0
  86. package/dist/IconType.js +2 -0
  87. package/dist/IconType.js.map +1 -0
  88. package/dist/Interactable.d.ts +48 -0
  89. package/dist/Interactable.js +131 -0
  90. package/dist/Interactable.js.map +1 -0
  91. package/dist/Link.d.ts +20 -0
  92. package/dist/Link.js +22 -0
  93. package/dist/Link.js.map +1 -0
  94. package/dist/List.d.ts +11 -0
  95. package/dist/List.js +17 -0
  96. package/dist/List.js.map +1 -0
  97. package/dist/ListButtonItem.d.ts +15 -0
  98. package/dist/ListButtonItem.js +9 -0
  99. package/dist/ListButtonItem.js.map +1 -0
  100. package/dist/ListDivider.d.ts +2 -0
  101. package/dist/ListDivider.js +12 -0
  102. package/dist/ListDivider.js.map +1 -0
  103. package/dist/ListHeaderItem.d.ts +11 -0
  104. package/dist/ListHeaderItem.js +13 -0
  105. package/dist/ListHeaderItem.js.map +1 -0
  106. package/dist/ListItem.d.ts +10 -0
  107. package/dist/ListItem.js +7 -0
  108. package/dist/ListItem.js.map +1 -0
  109. package/dist/ListLinkItem.d.ts +17 -0
  110. package/dist/ListLinkItem.js +9 -0
  111. package/dist/ListLinkItem.js.map +1 -0
  112. package/dist/ListSpacer.d.ts +2 -0
  113. package/dist/ListSpacer.js +13 -0
  114. package/dist/ListSpacer.js.map +1 -0
  115. package/dist/OnVisible.d.ts +5 -0
  116. package/dist/OnVisible.js +28 -0
  117. package/dist/OnVisible.js.map +1 -0
  118. package/dist/Popover.d.ts +21 -0
  119. package/dist/Popover.js +88 -0
  120. package/dist/Popover.js.map +1 -0
  121. package/dist/ProgressBar.d.ts +8 -0
  122. package/dist/ProgressBar.js +42 -0
  123. package/dist/ProgressBar.js.map +1 -0
  124. package/dist/ProgressCircle.d.ts +6 -0
  125. package/dist/ProgressCircle.js +12 -0
  126. package/dist/ProgressCircle.js.map +1 -0
  127. package/dist/Providers.d.ts +9 -0
  128. package/dist/Providers.js +16 -0
  129. package/dist/Providers.js.map +1 -0
  130. package/dist/RangeInput.d.ts +14 -0
  131. package/dist/RangeInput.js +32 -0
  132. package/dist/RangeInput.js.map +1 -0
  133. package/dist/ResultOrError.d.ts +13 -0
  134. package/dist/ResultOrError.js +7 -0
  135. package/dist/ResultOrError.js.map +1 -0
  136. package/dist/RootView.d.ts +5 -0
  137. package/dist/RootView.js +35 -0
  138. package/dist/RootView.js.map +1 -0
  139. package/dist/Router.d.ts +2 -0
  140. package/dist/Router.js +37 -0
  141. package/dist/Router.js.map +1 -0
  142. package/dist/RouterState.d.ts +38 -0
  143. package/dist/RouterState.js +111 -0
  144. package/dist/RouterState.js.map +1 -0
  145. package/dist/Row.d.ts +6 -0
  146. package/dist/Row.js +7 -0
  147. package/dist/Row.js.map +1 -0
  148. package/dist/StackContext.d.ts +8 -0
  149. package/dist/StackContext.js +25 -0
  150. package/dist/StackContext.js.map +1 -0
  151. package/dist/StaticCheckbox.d.ts +17 -0
  152. package/dist/StaticCheckbox.js +48 -0
  153. package/dist/StaticCheckbox.js.map +1 -0
  154. package/dist/Storage.d.ts +12 -0
  155. package/dist/Storage.js +148 -0
  156. package/dist/Storage.js.map +1 -0
  157. package/dist/Stream.d.ts +9 -0
  158. package/dist/Stream.js +36 -0
  159. package/dist/Stream.js.map +1 -0
  160. package/dist/Sublist.d.ts +12 -0
  161. package/dist/Sublist.js +18 -0
  162. package/dist/Sublist.js.map +1 -0
  163. package/dist/SubmitIconInput.d.ts +9 -0
  164. package/dist/SubmitIconInput.js +25 -0
  165. package/dist/SubmitIconInput.js.map +1 -0
  166. package/dist/Tabs.d.ts +20 -0
  167. package/dist/Tabs.js +35 -0
  168. package/dist/Tabs.js.map +1 -0
  169. package/dist/Text.d.ts +25 -0
  170. package/dist/Text.js +50 -0
  171. package/dist/Text.js.map +1 -0
  172. package/dist/TextArea.d.ts +10 -0
  173. package/dist/TextArea.js +22 -0
  174. package/dist/TextArea.js.map +1 -0
  175. package/dist/TextInput.d.ts +14 -0
  176. package/dist/TextInput.js +52 -0
  177. package/dist/TextInput.js.map +1 -0
  178. package/dist/TextInputWithState.d.ts +10 -0
  179. package/dist/TextInputWithState.js +14 -0
  180. package/dist/TextInputWithState.js.map +1 -0
  181. package/dist/TextPairing.d.ts +21 -0
  182. package/dist/TextPairing.js +26 -0
  183. package/dist/TextPairing.js.map +1 -0
  184. package/dist/TimeInput.d.ts +15 -0
  185. package/dist/TimeInput.js +58 -0
  186. package/dist/TimeInput.js.map +1 -0
  187. package/dist/Tooltip.d.ts +11 -0
  188. package/dist/Tooltip.js +72 -0
  189. package/dist/Tooltip.js.map +1 -0
  190. package/dist/aria.d.ts +8 -0
  191. package/dist/aria.js +42 -0
  192. package/dist/aria.js.map +1 -0
  193. package/dist/guid.d.ts +1 -0
  194. package/dist/guid.js +7 -0
  195. package/dist/guid.js.map +1 -0
  196. package/dist/hash.d.ts +1 -0
  197. package/dist/hash.js +20 -0
  198. package/dist/hash.js.map +1 -0
  199. package/dist/index.d.ts +65 -0
  200. package/dist/index.js +66 -0
  201. package/dist/index.js.map +1 -0
  202. package/dist/jss.d.ts +110 -0
  203. package/dist/jss.js +438 -0
  204. package/dist/jss.js.map +1 -0
  205. package/dist/numberToBase.d.ts +1 -0
  206. package/dist/numberToBase.js +44 -0
  207. package/dist/numberToBase.js.map +1 -0
  208. package/dist/stateMachineContextFactory.d.ts +36 -0
  209. package/dist/stateMachineContextFactory.js +48 -0
  210. package/dist/stateMachineContextFactory.js.map +1 -0
  211. package/dist/useCookie.d.ts +9 -0
  212. package/dist/useCookie.js +65 -0
  213. package/dist/useCookie.js.map +1 -0
  214. package/dist/useKeyboard.d.ts +8 -0
  215. package/dist/useKeyboard.js +26 -0
  216. package/dist/useKeyboard.js.map +1 -0
  217. package/dist/useNavigation.d.ts +5 -0
  218. package/dist/useNavigation.js +79 -0
  219. package/dist/useNavigation.js.map +1 -0
  220. package/dist/usePromise.d.ts +1 -0
  221. package/dist/usePromise.js +12 -0
  222. package/dist/usePromise.js.map +1 -0
  223. package/dist/useRefEffect.d.ts +1 -0
  224. package/dist/useRefEffect.js +15 -0
  225. package/dist/useRefEffect.js.map +1 -0
  226. package/next-env.d.ts +5 -0
  227. package/next.config.js +21 -0
  228. package/package.json +40 -0
  229. package/scripts/publish.js +27 -0
  230. package/src/Badge.tsx +36 -0
  231. package/src/BaseButton.tsx +58 -0
  232. package/src/BaseInput.tsx +57 -0
  233. package/src/BaseLink.tsx +77 -0
  234. package/src/BaseList.tsx +29 -0
  235. package/src/BaseListAddOn.tsx +10 -0
  236. package/src/BaseListItem.tsx +117 -0
  237. package/src/BaseView.tsx +57 -0
  238. package/src/Box.tsx +20 -0
  239. package/src/Button.tsx +84 -0
  240. package/src/Calendar.tsx +125 -0
  241. package/src/Card.tsx +17 -0
  242. package/src/Checkbox.tsx +63 -0
  243. package/src/Circle.tsx +24 -0
  244. package/src/Column.tsx +12 -0
  245. package/src/DarkMode.tsx +99 -0
  246. package/src/DateInput.tsx +63 -0
  247. package/src/DatePicker.tsx +67 -0
  248. package/src/DatetimeInput.tsx +71 -0
  249. package/src/DesignBook.tsx +697 -0
  250. package/src/Dialog.tsx +144 -0
  251. package/src/Dropdown.tsx +129 -0
  252. package/src/Emitter.ts +26 -0
  253. package/src/FlexLayout.tsx +53 -0
  254. package/src/Icon.tsx +96 -0
  255. package/src/IconButton.tsx +66 -0
  256. package/src/IconLink.tsx +58 -0
  257. package/src/IconType.ts +787 -0
  258. package/src/Interactable.tsx +159 -0
  259. package/src/Link.tsx +86 -0
  260. package/src/List.tsx +41 -0
  261. package/src/ListButtonItem.tsx +69 -0
  262. package/src/ListDivider.tsx +13 -0
  263. package/src/ListHeaderItem.tsx +45 -0
  264. package/src/ListItem.tsx +27 -0
  265. package/src/ListLinkItem.tsx +76 -0
  266. package/src/ListSpacer.tsx +14 -0
  267. package/src/OnVisible.tsx +42 -0
  268. package/src/Popover.tsx +141 -0
  269. package/src/ProgressBar.tsx +63 -0
  270. package/src/ProgressCircle.tsx +38 -0
  271. package/src/Providers.tsx +33 -0
  272. package/src/RangeInput.tsx +82 -0
  273. package/src/ResultOrError.ts +15 -0
  274. package/src/RootView.tsx +55 -0
  275. package/src/Router.tsx +62 -0
  276. package/src/RouterState.tsx +154 -0
  277. package/src/Row.tsx +12 -0
  278. package/src/StackContext.tsx +52 -0
  279. package/src/StaticCheckbox.tsx +74 -0
  280. package/src/Storage.tsx +200 -0
  281. package/src/Stream.tsx +50 -0
  282. package/src/Sublist.tsx +62 -0
  283. package/src/SubmitIconInput.tsx +45 -0
  284. package/src/Tabs.tsx +103 -0
  285. package/src/Text.tsx +102 -0
  286. package/src/TextArea.tsx +45 -0
  287. package/src/TextInput.tsx +111 -0
  288. package/src/TextInputWithState.tsx +35 -0
  289. package/src/TextPairing.tsx +115 -0
  290. package/src/TimeInput.tsx +109 -0
  291. package/src/Tooltip.tsx +108 -0
  292. package/src/aria.ts +72 -0
  293. package/src/examples/ExampleDialog.tsx +28 -0
  294. package/src/guid.ts +7 -0
  295. package/src/hash.ts +21 -0
  296. package/src/index.ts +65 -0
  297. package/src/jss.tsx +607 -0
  298. package/src/numberToBase.ts +52 -0
  299. package/src/pages/Badge.mdx +30 -0
  300. package/src/pages/Button.mdx +57 -0
  301. package/src/pages/Calendar.mdx +60 -0
  302. package/src/pages/Checkbox.mdx +56 -0
  303. package/src/pages/Dialog.mdx +32 -0
  304. package/src/pages/FlexLayout.mdx +77 -0
  305. package/src/pages/Hashing.mdx +20 -0
  306. package/src/pages/Icon.mdx +63 -0
  307. package/src/pages/IconButton.mdx +144 -0
  308. package/src/pages/Link.mdx +57 -0
  309. package/src/pages/List.mdx +292 -0
  310. package/src/pages/ListHeader.mdx +94 -0
  311. package/src/pages/Popover.mdx +101 -0
  312. package/src/pages/ProgressBar.mdx +20 -0
  313. package/src/pages/ProgressCircle.mdx +35 -0
  314. package/src/pages/RangeInput.mdx +109 -0
  315. package/src/pages/Tabs.mdx +168 -0
  316. package/src/pages/Text.mdx +133 -0
  317. package/src/pages/TextInput.mdx +110 -0
  318. package/src/pages/TextPairing.mdx +155 -0
  319. package/src/pages/TimeInput.mdx +73 -0
  320. package/src/pages/Tooltip.mdx +28 -0
  321. package/src/pages/_app.tsx +561 -0
  322. package/src/pages/_document.tsx +30 -0
  323. package/src/pages/css-in-js.mdx +127 -0
  324. package/src/pages/index.mdx +58 -0
  325. package/src/pages/navigation.mdx +56 -0
  326. package/src/pages/prism.css +3 -0
  327. package/src/pages/useCookie.mdx +15 -0
  328. package/src/pages/useKeyboard.mdx +20 -0
  329. package/src/pages/useNavigation.mdx +30 -0
  330. package/src/pages/usePromise.mdx +15 -0
  331. package/src/pages/useRefEffect.mdx +49 -0
  332. package/src/stateMachineContextFactory.tsx +111 -0
  333. package/src/useCookie.tsx +89 -0
  334. package/src/useKeyboard.tsx +43 -0
  335. package/src/useNavigation.tsx +89 -0
  336. package/src/usePromise.tsx +18 -0
  337. package/src/useRefEffect.tsx +18 -0
  338. package/tsconfig.build.json +23 -0
  339. package/tsconfig.json +23 -0
@@ -0,0 +1,697 @@
1
+ import React, { useContext, useState } from "react";
2
+
3
+ import { RootView } from "./RootView";
4
+ import { Sublist } from "./Sublist";
5
+ import { Button } from "./Button";
6
+ import { IconButton } from "./IconButton";
7
+ import { Text } from "./Text";
8
+ import { TextPairing } from "./TextPairing";
9
+ import { Icon } from "./Icon";
10
+ import { TextInput } from "./TextInput";
11
+ import { Checkbox } from "./Checkbox";
12
+ import { List } from "./List";
13
+ import { ListSpacer } from "./ListSpacer";
14
+
15
+ import { ListButtonItem } from "./ListButtonItem";
16
+ import { Dialog, useDialog } from "./Dialog";
17
+ import { Row } from "./Row";
18
+ import { DarkModeContext } from "./DarkMode";
19
+ import { Popover, PopoverTrigger } from "./Popover";
20
+ import { Tooltip } from "./Tooltip";
21
+ import { Link } from "./Link";
22
+ import { Calendar } from "./Calendar";
23
+ import { Box } from "./Box";
24
+ import { Badge } from "./Badge";
25
+
26
+ function ExampleDialog({ close }) {
27
+ const darkMode = useContext(DarkModeContext);
28
+ return (
29
+ <Dialog close={close} label="Example">
30
+ <Row padding="medium" align="center" justify="space-between">
31
+ <Text>Dark mode</Text>
32
+ <Checkbox
33
+ size="medium"
34
+ checked={darkMode.enabled}
35
+ onClick={() => darkMode.toggle()}
36
+ />
37
+ </Row>
38
+ </Dialog>
39
+ );
40
+ }
41
+
42
+ export function DesignBook() {
43
+ const dialog = useDialog<void>(
44
+ ({ close }) => <ExampleDialog close={close} />,
45
+ { closeOnOutsideClick: true }
46
+ );
47
+
48
+ const [checkbox1, setCheckbox1] = useState(true);
49
+ const [checkbox2, setCheckbox2] = useState(true);
50
+ const [checkbox3, setCheckbox3] = useState(true);
51
+ const [checkbox4, setCheckbox4] = useState(false);
52
+ const [checkbox5, setCheckbox5] = useState(false);
53
+ const [checkbox6, setCheckbox6] = useState(false);
54
+
55
+ return (
56
+ <RootView>
57
+ <List navigation={false} ariaLabel="Design book">
58
+ <ListSpacer />
59
+ <Sublist label="Button" initialState={{ collapsed: false }}>
60
+ <Row gap="medium">
61
+ <Button
62
+ label="Positive button"
63
+ color="positive"
64
+ onClick={() => {
65
+ dialog.open();
66
+ }}
67
+ />
68
+ </Row>
69
+
70
+ <Row gap="medium">
71
+ <PopoverTrigger
72
+ PopoverComponent={({ close }) => {
73
+ return (
74
+ <Popover close={close}>
75
+ <List navigation={false} ariaLabel="Popover ">
76
+ <ListButtonItem
77
+ gap="medium"
78
+ addOn={
79
+ <Icon
80
+ size="medium"
81
+ color="primary"
82
+ icon="fa-address-book"
83
+ />
84
+ }
85
+ headline="Option 1"
86
+ onClick={() => {}}
87
+ color={"positive"}
88
+ ></ListButtonItem>
89
+ <ListButtonItem
90
+ gap="medium"
91
+ addOn={
92
+ <Icon
93
+ size="medium"
94
+ color="primary"
95
+ icon="fa-adjust"
96
+ />
97
+ }
98
+ headline="Option 2"
99
+ onClick={() => {}}
100
+ withDivider={false}
101
+ color={"positive"}
102
+ ></ListButtonItem>
103
+ </List>
104
+ </Popover>
105
+ );
106
+ }}
107
+ >
108
+ {({ toggle }) => (
109
+ <Button
110
+ style={{ position: "relative" }}
111
+ label="Secondary button"
112
+ color="secondary"
113
+ onClick={() => {
114
+ toggle(undefined);
115
+ }}
116
+ />
117
+ )}
118
+ </PopoverTrigger>
119
+ </Row>
120
+
121
+ <Row gap="medium">
122
+ <PopoverTrigger
123
+ PopoverComponent={({ close }) => {
124
+ return (
125
+ <Popover close={close}>
126
+ <List ariaLabel="Popover ">
127
+ <ListButtonItem
128
+ gap="medium"
129
+ addOn={
130
+ <Icon
131
+ size="medium"
132
+ color="primary"
133
+ icon="fa-address-book"
134
+ />
135
+ }
136
+ headline="Option 1"
137
+ onClick={() => {}}
138
+ color={"positive"}
139
+ ></ListButtonItem>
140
+ <ListButtonItem
141
+ gap="medium"
142
+ addOn={
143
+ <Icon
144
+ size="medium"
145
+ color="primary"
146
+ icon="fa-adjust"
147
+ />
148
+ }
149
+ headline="Option 2"
150
+ onClick={() => {}}
151
+ withDivider={false}
152
+ color={"positive"}
153
+ ></ListButtonItem>
154
+ </List>
155
+ </Popover>
156
+ );
157
+ }}
158
+ >
159
+ {({ toggle }) => (
160
+ <Button
161
+ label="Negative button"
162
+ color="negative"
163
+ onClick={() => {
164
+ toggle(undefined);
165
+ }}
166
+ />
167
+ )}
168
+ </PopoverTrigger>
169
+ </Row>
170
+
171
+ <Row gap="medium">
172
+ <Tooltip content="Tooltip here">
173
+ <Button
174
+ label="Disabled button"
175
+ color="positive"
176
+ onClick={() => {}}
177
+ disabled={true}
178
+ />
179
+ </Tooltip>
180
+ </Row>
181
+
182
+ <Row gap="medium">
183
+ <Button
184
+ bare={true}
185
+ label="Bare positive button"
186
+ color="positive"
187
+ onClick={() => {}}
188
+ />
189
+ </Row>
190
+
191
+ <Row gap="medium">
192
+ <Button
193
+ bare={true}
194
+ label="Bare secondary button"
195
+ color="secondary"
196
+ onClick={() => {}}
197
+ />
198
+ </Row>
199
+
200
+ <Row gap="medium">
201
+ <Button
202
+ bare={true}
203
+ label="Bare negative button"
204
+ color="negative"
205
+ onClick={() => {}}
206
+ />
207
+ </Row>
208
+
209
+ <Row gap="medium">
210
+ <Button
211
+ bare={true}
212
+ label="Bare disabled button"
213
+ color="positive"
214
+ onClick={() => {}}
215
+ disabled={true}
216
+ />
217
+ </Row>
218
+ </Sublist>
219
+
220
+ <Sublist label="Link" initialState={{ collapsed: false }}>
221
+ <Row gap="medium">
222
+ <Link label="Positive link" color="positive" href="/" />
223
+ </Row>
224
+
225
+ <Row gap="medium">
226
+ <Link label="Secondary link" color="secondary" href="/" />
227
+ </Row>
228
+
229
+ <Row gap="medium">
230
+ <Tooltip content="Tooltip here">
231
+ <Link
232
+ label="Disabled link"
233
+ color="positive"
234
+ href="/"
235
+ disabled={true}
236
+ />
237
+ </Tooltip>
238
+ </Row>
239
+
240
+ <Row gap="medium">
241
+ <Link
242
+ bare={true}
243
+ label="Bare positive Link"
244
+ color="positive"
245
+ href="/"
246
+ />
247
+ </Row>
248
+
249
+ <Row gap="medium">
250
+ <Link
251
+ bare={true}
252
+ label="Bare secondary Link"
253
+ color="secondary"
254
+ href="/"
255
+ />
256
+ </Row>
257
+
258
+ <Row gap="medium">
259
+ <Link
260
+ bare={true}
261
+ label="Bare negative Link"
262
+ color="negative"
263
+ href="/"
264
+ />
265
+ </Row>
266
+
267
+ <Row gap="medium">
268
+ <Link
269
+ bare={true}
270
+ label="Bare disabled Link"
271
+ color="positive"
272
+ href="/"
273
+ disabled={true}
274
+ />
275
+ </Row>
276
+ </Sublist>
277
+
278
+ <ListSpacer />
279
+ <Sublist label="Icon button" initialState={{ collapsed: false }}>
280
+ <Row padding="medium" gap="medium">
281
+ <IconButton
282
+ size="large"
283
+ icon="fa-check"
284
+ color="positive"
285
+ onClick={() => {}}
286
+ />
287
+ <IconButton
288
+ size="medium"
289
+ icon="fa-check"
290
+ color="positive"
291
+ onClick={() => {}}
292
+ />
293
+ <IconButton
294
+ size="small"
295
+ icon="fa-check"
296
+ color="positive"
297
+ onClick={() => {}}
298
+ />
299
+ <IconButton
300
+ size="large"
301
+ icon="fa-check"
302
+ color="positive"
303
+ onClick={() => {}}
304
+ bare={true}
305
+ />
306
+ <IconButton
307
+ size="medium"
308
+ icon="fa-check"
309
+ color="positive"
310
+ onClick={() => {}}
311
+ bare={true}
312
+ />
313
+ <IconButton
314
+ size="small"
315
+ icon="fa-check"
316
+ color="positive"
317
+ onClick={() => {}}
318
+ bare={true}
319
+ />
320
+ </Row>
321
+
322
+ <Row padding="medium" gap="medium">
323
+ <IconButton
324
+ size="large"
325
+ icon="fa-remove"
326
+ color="negative"
327
+ onClick={() => {}}
328
+ />
329
+ <IconButton
330
+ size="medium"
331
+ icon="fa-remove"
332
+ color="negative"
333
+ onClick={() => {}}
334
+ />
335
+ <IconButton
336
+ size="small"
337
+ icon="fa-remove"
338
+ color="negative"
339
+ onClick={() => {}}
340
+ />
341
+ <IconButton
342
+ size="large"
343
+ icon="fa-remove"
344
+ color="negative"
345
+ onClick={() => {}}
346
+ bare={true}
347
+ />
348
+ <IconButton
349
+ size="medium"
350
+ icon="fa-remove"
351
+ color="negative"
352
+ onClick={() => {}}
353
+ bare={true}
354
+ />
355
+ <IconButton
356
+ size="small"
357
+ icon="fa-remove"
358
+ color="negative"
359
+ onClick={() => {}}
360
+ bare={true}
361
+ />
362
+ </Row>
363
+
364
+ <Row padding="medium" gap="medium">
365
+ <IconButton
366
+ size="large"
367
+ icon="fa-info"
368
+ color="secondary"
369
+ onClick={() => {}}
370
+ />
371
+ <IconButton
372
+ size="medium"
373
+ icon="fa-info"
374
+ color="secondary"
375
+ onClick={() => {}}
376
+ />
377
+ <IconButton
378
+ size="small"
379
+ icon="fa-info"
380
+ color="secondary"
381
+ onClick={() => {}}
382
+ />
383
+ <IconButton
384
+ size="large"
385
+ icon="fa-info"
386
+ color="secondary"
387
+ onClick={() => {}}
388
+ bare={true}
389
+ />
390
+ <IconButton
391
+ size="medium"
392
+ icon="fa-info"
393
+ color="secondary"
394
+ onClick={() => {}}
395
+ bare={true}
396
+ />
397
+ <IconButton
398
+ size="small"
399
+ icon="fa-info"
400
+ color="secondary"
401
+ onClick={() => {}}
402
+ bare={true}
403
+ />
404
+ </Row>
405
+
406
+ <Row padding="medium" gap="medium">
407
+ <IconButton
408
+ disabled={true}
409
+ size="large"
410
+ icon="fa-check"
411
+ color="positive"
412
+ onClick={() => {}}
413
+ />
414
+ <IconButton
415
+ disabled={true}
416
+ size="medium"
417
+ icon="fa-check"
418
+ color="positive"
419
+ onClick={() => {}}
420
+ />
421
+ <IconButton
422
+ disabled={true}
423
+ size="small"
424
+ icon="fa-check"
425
+ color="positive"
426
+ onClick={() => {}}
427
+ />
428
+ <IconButton
429
+ disabled={true}
430
+ size="large"
431
+ icon="fa-check"
432
+ color="positive"
433
+ onClick={() => {}}
434
+ bare={true}
435
+ />
436
+ <IconButton
437
+ disabled={true}
438
+ size="medium"
439
+ icon="fa-check"
440
+ color="positive"
441
+ onClick={() => {}}
442
+ bare={true}
443
+ />
444
+ <IconButton
445
+ disabled={true}
446
+ size="small"
447
+ icon="fa-check"
448
+ color="positive"
449
+ onClick={() => {}}
450
+ bare={true}
451
+ />
452
+ </Row>
453
+ </Sublist>
454
+ <ListSpacer />
455
+ <Sublist
456
+ label="Pressable list row"
457
+ initialState={{
458
+ collapsed: false,
459
+ }}
460
+ >
461
+ <ListButtonItem
462
+ onClick={() => {}}
463
+ headline="Headline"
464
+ color={"positive"}
465
+ />
466
+ <ListButtonItem
467
+ selected={true}
468
+ onClick={() => {}}
469
+ headline="Selected"
470
+ color={"positive"}
471
+ />
472
+ <ListButtonItem
473
+ onClick={() => {}}
474
+ headline="Headline"
475
+ body="Body"
476
+ color={"positive"}
477
+ />
478
+ <ListButtonItem
479
+ onClick={() => {}}
480
+ headline="Disabled"
481
+ body="Body"
482
+ disabled={true}
483
+ color={"positive"}
484
+ />
485
+ <ListButtonItem
486
+ gap="medium"
487
+ addOn={
488
+ <Box padding="medium">
489
+ <Icon size="medium" color="primary" icon="fa-address-book" />
490
+ </Box>
491
+ }
492
+ headline="Really long body"
493
+ body="Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
494
+ onClick={() => {}}
495
+ color={"positive"}
496
+ ></ListButtonItem>
497
+ </Sublist>
498
+ <Sublist label="Text" initialState={{ collapsed: false }}>
499
+ <Row padding="medium" gap="medium">
500
+ <Text size="large" color="primary">
501
+ Primary large
502
+ </Text>
503
+ <Text size="medium" color="primary">
504
+ Primary medium
505
+ </Text>
506
+ <Text size="small" color="primary">
507
+ Primary small
508
+ </Text>
509
+ </Row>
510
+
511
+ <Row padding="medium" gap="medium">
512
+ <Text size="large" color="secondary">
513
+ Secondary large
514
+ </Text>
515
+ <Text size="medium" color="secondary">
516
+ Secondary medium
517
+ </Text>
518
+ <Text size="small" color="secondary">
519
+ Secondary small
520
+ </Text>
521
+ </Row>
522
+
523
+ <Row padding="medium" gap="medium">
524
+ <Text size="large" color="subtle">
525
+ Subtle large
526
+ </Text>
527
+ <Text size="medium" color="subtle">
528
+ Subtle medium
529
+ </Text>
530
+ <Text size="small" color="subtle">
531
+ Subtle small
532
+ </Text>
533
+ </Row>
534
+
535
+ <Row padding="medium" gap="medium">
536
+ <Text size="large" color="light">
537
+ Light large
538
+ </Text>
539
+ <Text size="medium" color="light">
540
+ Light medium
541
+ </Text>
542
+ <Text size="small" color="light">
543
+ Light small
544
+ </Text>
545
+ </Row>
546
+
547
+ <Row padding="medium" gap="medium">
548
+ <Text size="large" color="highlight">
549
+ Highlight large
550
+ </Text>
551
+ <Text size="medium" color="highlight">
552
+ Highlight medium
553
+ </Text>
554
+ <Text size="small" color="highlight">
555
+ Highlight small
556
+ </Text>
557
+ </Row>
558
+
559
+ <Row padding="medium" gap="medium">
560
+ <Text size="large" color="negative">
561
+ Negative large
562
+ </Text>
563
+ <Text size="medium" color="negative">
564
+ Negative medium
565
+ </Text>
566
+ <Text size="small" color="negative">
567
+ Negative small
568
+ </Text>
569
+ </Row>
570
+ </Sublist>
571
+ <ListSpacer />
572
+ <Sublist initialState={{ collapsed: false }} label="Icon">
573
+ <Row padding="medium" gap="medium">
574
+ <Icon size="large" color="primary" icon="fa-check" />
575
+ <Icon size="medium" color="primary" icon="fa-check" />
576
+ <Icon size="small" color="primary" icon="fa-check" />
577
+ </Row>
578
+
579
+ <Row padding="medium" gap="medium">
580
+ <Icon size="large" color="secondary" icon="fa-check" />
581
+ <Icon size="medium" color="secondary" icon="fa-check" />
582
+ <Icon size="small" color="secondary" icon="fa-check" />
583
+ </Row>
584
+
585
+ <Row padding="medium" gap="medium">
586
+ <Icon size="large" color="subtle" icon="fa-check" />
587
+ <Icon size="medium" color="subtle" icon="fa-check" />
588
+ <Icon size="small" color="subtle" icon="fa-check" />
589
+ </Row>
590
+
591
+ <Row padding="medium" gap="medium">
592
+ <Icon size="large" color="light" icon="fa-check" />
593
+ <Icon size="medium" color="light" icon="fa-check" />
594
+ <Icon size="small" color="light" icon="fa-check" />
595
+ </Row>
596
+ </Sublist>
597
+ <ListSpacer />
598
+ <Sublist initialState={{ collapsed: false }} label="Text pairing">
599
+ <Row padding="medium" gap="medium">
600
+ <TextPairing headline="Headline" />
601
+ </Row>
602
+
603
+ <Row padding="medium" gap="medium">
604
+ <TextPairing headline="Headline" body="Body" />
605
+ </Row>
606
+
607
+ <Row padding="medium" gap="medium">
608
+ <TextPairing
609
+ headline="Headline"
610
+ body="Body"
611
+ addOn={<Icon size="large" color="primary" icon="fa-user" />}
612
+ />
613
+ </Row>
614
+ </Sublist>
615
+ <ListSpacer />
616
+ <Sublist initialState={{ collapsed: false }} label="Input">
617
+ <Row padding="medium" gap="medium">
618
+ <TextInput
619
+ value=""
620
+ placeholder="Placeholder text input"
621
+ onValueChange={() => {}}
622
+ />
623
+ </Row>
624
+
625
+ <Row padding="medium" gap="medium">
626
+ <TextInput value="Text input" onValueChange={() => {}} />
627
+ </Row>
628
+
629
+ <Row padding="medium" gap="medium">
630
+ <Checkbox
631
+ size="small"
632
+ checked={checkbox1}
633
+ onClick={() => setCheckbox1((x) => !x)}
634
+ />
635
+ <Checkbox
636
+ size="medium"
637
+ checked={checkbox2}
638
+ onClick={() => setCheckbox2((x) => !x)}
639
+ />
640
+ <Checkbox
641
+ size="large"
642
+ checked={checkbox3}
643
+ onClick={() => setCheckbox3((x) => !x)}
644
+ />
645
+ </Row>
646
+
647
+ <Row padding="medium" gap="medium">
648
+ <Checkbox
649
+ size="small"
650
+ checked={checkbox4}
651
+ onClick={() => setCheckbox4((x) => !x)}
652
+ />
653
+ <Checkbox
654
+ size="medium"
655
+ checked={checkbox5}
656
+ onClick={() => setCheckbox5((x) => !x)}
657
+ />
658
+ <Checkbox
659
+ size="large"
660
+ checked={checkbox6}
661
+ onClick={() => setCheckbox6((x) => !x)}
662
+ />
663
+ </Row>
664
+ </Sublist>
665
+ <ListSpacer />
666
+
667
+ <ListSpacer />
668
+
669
+ <Sublist label="Calendar">
670
+ <Calendar
671
+ date={new Date()}
672
+ header={({ weekday }) => (
673
+ <Box>
674
+ <Text>{weekday}</Text>
675
+ </Box>
676
+ )}
677
+ cell={({ today, date, outOfMonth }) => (
678
+ <Box relative={true} style={{ opacity: outOfMonth ? 0.2 : 1 }}>
679
+ {today && (
680
+ <Badge
681
+ jsStyle={{
682
+ position: "absolute",
683
+ top: "50%",
684
+ transform: "translateY(-50%) translateX(-75%)",
685
+ right: "50%",
686
+ }}
687
+ />
688
+ )}
689
+ <Text>{date.getDate()}</Text>
690
+ </Box>
691
+ )}
692
+ />
693
+ </Sublist>
694
+ </List>
695
+ </RootView>
696
+ );
697
+ }