no-frills-ui 0.0.14-alpha.1 → 0.0.14-alpha.3

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 (294) hide show
  1. package/README.md +28 -22
  2. package/dist/index.js +920 -537
  3. package/dist/index.js.map +1 -1
  4. package/lib-esm/components/Accordion/Accordion.d.ts +3 -3
  5. package/lib-esm/components/Accordion/Accordion.d.ts.map +1 -0
  6. package/lib-esm/components/Accordion/Accordion.js +6 -3
  7. package/lib-esm/components/Accordion/Accordion.js.map +1 -1
  8. package/lib-esm/components/Accordion/AccordionStep.d.ts +3 -2
  9. package/lib-esm/components/Accordion/AccordionStep.d.ts.map +1 -0
  10. package/lib-esm/components/Accordion/AccordionStep.js +31 -22
  11. package/lib-esm/components/Accordion/AccordionStep.js.map +1 -1
  12. package/lib-esm/components/Accordion/index.d.ts +1 -0
  13. package/lib-esm/components/Accordion/index.d.ts.map +1 -0
  14. package/lib-esm/components/Accordion/index.js.map +1 -1
  15. package/lib-esm/components/Badge/Badge.d.ts +1 -0
  16. package/lib-esm/components/Badge/Badge.d.ts.map +1 -0
  17. package/lib-esm/components/Badge/Badge.js +5 -6
  18. package/lib-esm/components/Badge/Badge.js.map +1 -1
  19. package/lib-esm/components/Badge/index.d.ts +1 -0
  20. package/lib-esm/components/Badge/index.d.ts.map +1 -0
  21. package/lib-esm/components/Badge/index.js.map +1 -1
  22. package/lib-esm/components/Button/ActionButton.d.ts +1 -0
  23. package/lib-esm/components/Button/ActionButton.d.ts.map +1 -0
  24. package/lib-esm/components/Button/ActionButton.js.map +1 -1
  25. package/lib-esm/components/Button/Button.d.ts +1 -0
  26. package/lib-esm/components/Button/Button.d.ts.map +1 -0
  27. package/lib-esm/components/Button/Button.js.map +1 -1
  28. package/lib-esm/components/Button/IconButton.d.ts +1 -0
  29. package/lib-esm/components/Button/IconButton.d.ts.map +1 -0
  30. package/lib-esm/components/Button/IconButton.js.map +1 -1
  31. package/lib-esm/components/Button/LinkButton.d.ts +1 -0
  32. package/lib-esm/components/Button/LinkButton.d.ts.map +1 -0
  33. package/lib-esm/components/Button/LinkButton.js +2 -1
  34. package/lib-esm/components/Button/LinkButton.js.map +1 -1
  35. package/lib-esm/components/Button/RaisedButton.d.ts +1 -0
  36. package/lib-esm/components/Button/RaisedButton.d.ts.map +1 -0
  37. package/lib-esm/components/Button/RaisedButton.js.map +1 -1
  38. package/lib-esm/components/Button/index.d.ts +1 -0
  39. package/lib-esm/components/Button/index.d.ts.map +1 -0
  40. package/lib-esm/components/Button/index.js.map +1 -1
  41. package/lib-esm/components/Card/Card.d.ts +1 -0
  42. package/lib-esm/components/Card/Card.d.ts.map +1 -0
  43. package/lib-esm/components/Card/Card.js +1 -1
  44. package/lib-esm/components/Card/Card.js.map +1 -1
  45. package/lib-esm/components/Card/index.d.ts +1 -0
  46. package/lib-esm/components/Card/index.d.ts.map +1 -0
  47. package/lib-esm/components/Card/index.js.map +1 -1
  48. package/lib-esm/components/Chip/Chip.d.ts +1 -0
  49. package/lib-esm/components/Chip/Chip.d.ts.map +1 -0
  50. package/lib-esm/components/Chip/Chip.js +1 -1
  51. package/lib-esm/components/Chip/Chip.js.map +1 -1
  52. package/lib-esm/components/Chip/index.d.ts +1 -0
  53. package/lib-esm/components/Chip/index.d.ts.map +1 -0
  54. package/lib-esm/components/Chip/index.js.map +1 -1
  55. package/lib-esm/components/ChipInput/ChipInput.d.ts +1 -0
  56. package/lib-esm/components/ChipInput/ChipInput.d.ts.map +1 -0
  57. package/lib-esm/components/ChipInput/ChipInput.js +21 -12
  58. package/lib-esm/components/ChipInput/ChipInput.js.map +1 -1
  59. package/lib-esm/components/ChipInput/index.d.ts +1 -0
  60. package/lib-esm/components/ChipInput/index.d.ts.map +1 -0
  61. package/lib-esm/components/ChipInput/index.js.map +1 -1
  62. package/lib-esm/components/Dialog/AlertDialog.d.ts +1 -0
  63. package/lib-esm/components/Dialog/AlertDialog.d.ts.map +1 -0
  64. package/lib-esm/components/Dialog/AlertDialog.js +4 -4
  65. package/lib-esm/components/Dialog/AlertDialog.js.map +1 -1
  66. package/lib-esm/components/Dialog/ConfirmDialog.d.ts +1 -0
  67. package/lib-esm/components/Dialog/ConfirmDialog.d.ts.map +1 -0
  68. package/lib-esm/components/Dialog/ConfirmDialog.js +8 -3
  69. package/lib-esm/components/Dialog/ConfirmDialog.js.map +1 -1
  70. package/lib-esm/components/Dialog/Dialog.d.ts +5 -5
  71. package/lib-esm/components/Dialog/Dialog.d.ts.map +1 -0
  72. package/lib-esm/components/Dialog/Dialog.js +22 -16
  73. package/lib-esm/components/Dialog/Dialog.js.map +1 -1
  74. package/lib-esm/components/Dialog/PromptDialog.d.ts +1 -0
  75. package/lib-esm/components/Dialog/PromptDialog.d.ts.map +1 -0
  76. package/lib-esm/components/Dialog/PromptDialog.js +2 -2
  77. package/lib-esm/components/Dialog/PromptDialog.js.map +1 -1
  78. package/lib-esm/components/Dialog/index.d.ts +1 -0
  79. package/lib-esm/components/Dialog/index.d.ts.map +1 -0
  80. package/lib-esm/components/Dialog/index.js.map +1 -1
  81. package/lib-esm/components/DragAndDrop/DragAndDrop.d.ts +2 -1
  82. package/lib-esm/components/DragAndDrop/DragAndDrop.d.ts.map +1 -0
  83. package/lib-esm/components/DragAndDrop/DragAndDrop.js +4 -2
  84. package/lib-esm/components/DragAndDrop/DragAndDrop.js.map +1 -1
  85. package/lib-esm/components/DragAndDrop/DragItem.d.ts +1 -0
  86. package/lib-esm/components/DragAndDrop/DragItem.d.ts.map +1 -0
  87. package/lib-esm/components/DragAndDrop/DragItem.js +25 -17
  88. package/lib-esm/components/DragAndDrop/DragItem.js.map +1 -1
  89. package/lib-esm/components/DragAndDrop/index.d.ts +1 -0
  90. package/lib-esm/components/DragAndDrop/index.d.ts.map +1 -0
  91. package/lib-esm/components/DragAndDrop/index.js.map +1 -1
  92. package/lib-esm/components/DragAndDrop/types.d.ts +1 -0
  93. package/lib-esm/components/DragAndDrop/types.d.ts.map +1 -0
  94. package/lib-esm/components/DragAndDrop/types.js +1 -1
  95. package/lib-esm/components/DragAndDrop/types.js.map +1 -1
  96. package/lib-esm/components/Drawer/Drawer.d.ts +1 -0
  97. package/lib-esm/components/Drawer/Drawer.d.ts.map +1 -0
  98. package/lib-esm/components/Drawer/Drawer.js +10 -8
  99. package/lib-esm/components/Drawer/Drawer.js.map +1 -1
  100. package/lib-esm/components/Drawer/index.d.ts +2 -1
  101. package/lib-esm/components/Drawer/index.d.ts.map +1 -0
  102. package/lib-esm/components/Drawer/index.js +1 -1
  103. package/lib-esm/components/Drawer/index.js.map +1 -1
  104. package/lib-esm/components/Groups/Group.d.ts +1 -0
  105. package/lib-esm/components/Groups/Group.d.ts.map +1 -0
  106. package/lib-esm/components/Groups/Group.js +26 -14
  107. package/lib-esm/components/Groups/Group.js.map +1 -1
  108. package/lib-esm/components/Groups/GroupLabel.d.ts +1 -0
  109. package/lib-esm/components/Groups/GroupLabel.d.ts.map +1 -0
  110. package/lib-esm/components/Groups/GroupLabel.js.map +1 -1
  111. package/lib-esm/components/Groups/index.d.ts +1 -0
  112. package/lib-esm/components/Groups/index.d.ts.map +1 -0
  113. package/lib-esm/components/Groups/index.js.map +1 -1
  114. package/lib-esm/components/Input/Checkbox.d.ts +1 -0
  115. package/lib-esm/components/Input/Checkbox.d.ts.map +1 -0
  116. package/lib-esm/components/Input/Checkbox.js +11 -8
  117. package/lib-esm/components/Input/Checkbox.js.map +1 -1
  118. package/lib-esm/components/Input/Dropdown.d.ts +3 -2
  119. package/lib-esm/components/Input/Dropdown.d.ts.map +1 -0
  120. package/lib-esm/components/Input/Dropdown.js +22 -22
  121. package/lib-esm/components/Input/Dropdown.js.map +1 -1
  122. package/lib-esm/components/Input/Input.d.ts +1 -0
  123. package/lib-esm/components/Input/Input.d.ts.map +1 -0
  124. package/lib-esm/components/Input/Input.js +19 -10
  125. package/lib-esm/components/Input/Input.js.map +1 -1
  126. package/lib-esm/components/Input/Radio.d.ts +1 -0
  127. package/lib-esm/components/Input/Radio.d.ts.map +1 -0
  128. package/lib-esm/components/Input/Radio.js +4 -3
  129. package/lib-esm/components/Input/Radio.js.map +1 -1
  130. package/lib-esm/components/Input/RadioButton.d.ts +1 -0
  131. package/lib-esm/components/Input/RadioButton.d.ts.map +1 -0
  132. package/lib-esm/components/Input/RadioButton.js +1 -1
  133. package/lib-esm/components/Input/RadioButton.js.map +1 -1
  134. package/lib-esm/components/Input/Select.d.ts +1 -0
  135. package/lib-esm/components/Input/Select.d.ts.map +1 -0
  136. package/lib-esm/components/Input/Select.js +17 -9
  137. package/lib-esm/components/Input/Select.js.map +1 -1
  138. package/lib-esm/components/Input/TextArea.d.ts +1 -0
  139. package/lib-esm/components/Input/TextArea.d.ts.map +1 -0
  140. package/lib-esm/components/Input/TextArea.js +17 -9
  141. package/lib-esm/components/Input/TextArea.js.map +1 -1
  142. package/lib-esm/components/Input/Toggle.d.ts +1 -0
  143. package/lib-esm/components/Input/Toggle.d.ts.map +1 -0
  144. package/lib-esm/components/Input/Toggle.js +5 -5
  145. package/lib-esm/components/Input/Toggle.js.map +1 -1
  146. package/lib-esm/components/Input/index.d.ts +1 -0
  147. package/lib-esm/components/Input/index.d.ts.map +1 -0
  148. package/lib-esm/components/Input/index.js.map +1 -1
  149. package/lib-esm/components/Menu/Menu.d.ts +2 -1
  150. package/lib-esm/components/Menu/Menu.d.ts.map +1 -0
  151. package/lib-esm/components/Menu/Menu.js +3 -2
  152. package/lib-esm/components/Menu/Menu.js.map +1 -1
  153. package/lib-esm/components/Menu/MenuContext.d.ts +12 -5
  154. package/lib-esm/components/Menu/MenuContext.d.ts.map +1 -0
  155. package/lib-esm/components/Menu/MenuContext.js.map +1 -1
  156. package/lib-esm/components/Menu/MenuItem.d.ts +3 -2
  157. package/lib-esm/components/Menu/MenuItem.d.ts.map +1 -0
  158. package/lib-esm/components/Menu/MenuItem.js +9 -5
  159. package/lib-esm/components/Menu/MenuItem.js.map +1 -1
  160. package/lib-esm/components/Menu/index.d.ts +1 -0
  161. package/lib-esm/components/Menu/index.d.ts.map +1 -0
  162. package/lib-esm/components/Menu/index.js.map +1 -1
  163. package/lib-esm/components/Modal/Modal.d.ts +1 -0
  164. package/lib-esm/components/Modal/Modal.d.ts.map +1 -0
  165. package/lib-esm/components/Modal/Modal.js +6 -4
  166. package/lib-esm/components/Modal/Modal.js.map +1 -1
  167. package/lib-esm/components/Modal/index.d.ts +1 -0
  168. package/lib-esm/components/Modal/index.d.ts.map +1 -0
  169. package/lib-esm/components/Modal/index.js.map +1 -1
  170. package/lib-esm/components/Notification/Notification.d.ts +1 -0
  171. package/lib-esm/components/Notification/Notification.d.ts.map +1 -0
  172. package/lib-esm/components/Notification/Notification.js +8 -4
  173. package/lib-esm/components/Notification/Notification.js.map +1 -1
  174. package/lib-esm/components/Notification/NotificationManager.d.ts +1 -0
  175. package/lib-esm/components/Notification/NotificationManager.d.ts.map +1 -0
  176. package/lib-esm/components/Notification/NotificationManager.js +11 -9
  177. package/lib-esm/components/Notification/NotificationManager.js.map +1 -1
  178. package/lib-esm/components/Notification/index.d.ts +1 -0
  179. package/lib-esm/components/Notification/index.d.ts.map +1 -0
  180. package/lib-esm/components/Notification/index.js.map +1 -1
  181. package/lib-esm/components/Notification/style.d.ts +1 -0
  182. package/lib-esm/components/Notification/style.d.ts.map +1 -0
  183. package/lib-esm/components/Notification/style.js +10 -8
  184. package/lib-esm/components/Notification/style.js.map +1 -1
  185. package/lib-esm/components/Notification/types.d.ts +1 -0
  186. package/lib-esm/components/Notification/types.d.ts.map +1 -0
  187. package/lib-esm/components/Notification/types.js +0 -1
  188. package/lib-esm/components/Notification/types.js.map +1 -1
  189. package/lib-esm/components/Popover/Popover.d.ts +1 -0
  190. package/lib-esm/components/Popover/Popover.d.ts.map +1 -0
  191. package/lib-esm/components/Popover/Popover.js +20 -17
  192. package/lib-esm/components/Popover/Popover.js.map +1 -1
  193. package/lib-esm/components/Popover/index.d.ts +1 -0
  194. package/lib-esm/components/Popover/index.d.ts.map +1 -0
  195. package/lib-esm/components/Popover/index.js.map +1 -1
  196. package/lib-esm/components/Spinner/Spinner.d.ts +1 -0
  197. package/lib-esm/components/Spinner/Spinner.d.ts.map +1 -0
  198. package/lib-esm/components/Spinner/Spinner.js +10 -6
  199. package/lib-esm/components/Spinner/Spinner.js.map +1 -1
  200. package/lib-esm/components/Spinner/index.d.ts +1 -0
  201. package/lib-esm/components/Spinner/index.d.ts.map +1 -0
  202. package/lib-esm/components/Spinner/index.js.map +1 -1
  203. package/lib-esm/components/Stepper/Step.d.ts +1 -0
  204. package/lib-esm/components/Stepper/Step.d.ts.map +1 -0
  205. package/lib-esm/components/Stepper/Step.js +1 -0
  206. package/lib-esm/components/Stepper/Step.js.map +1 -1
  207. package/lib-esm/components/Stepper/Stepper.d.ts +4 -3
  208. package/lib-esm/components/Stepper/Stepper.d.ts.map +1 -0
  209. package/lib-esm/components/Stepper/Stepper.js +17 -9
  210. package/lib-esm/components/Stepper/Stepper.js.map +1 -1
  211. package/lib-esm/components/Stepper/index.d.ts +1 -0
  212. package/lib-esm/components/Stepper/index.d.ts.map +1 -0
  213. package/lib-esm/components/Stepper/index.js.map +1 -1
  214. package/lib-esm/components/Tabs/Tab.d.ts +1 -0
  215. package/lib-esm/components/Tabs/Tab.d.ts.map +1 -0
  216. package/lib-esm/components/Tabs/Tab.js.map +1 -1
  217. package/lib-esm/components/Tabs/Tabs.d.ts +6 -5
  218. package/lib-esm/components/Tabs/Tabs.d.ts.map +1 -0
  219. package/lib-esm/components/Tabs/Tabs.js +12 -9
  220. package/lib-esm/components/Tabs/Tabs.js.map +1 -1
  221. package/lib-esm/components/Tabs/index.d.ts +1 -0
  222. package/lib-esm/components/Tabs/index.d.ts.map +1 -0
  223. package/lib-esm/components/Tabs/index.js.map +1 -1
  224. package/lib-esm/components/Toast/Toast.d.ts +2 -0
  225. package/lib-esm/components/Toast/Toast.d.ts.map +1 -0
  226. package/lib-esm/components/Toast/Toast.js +9 -8
  227. package/lib-esm/components/Toast/Toast.js.map +1 -1
  228. package/lib-esm/components/Toast/ToastStory.d.ts +1 -0
  229. package/lib-esm/components/Toast/ToastStory.d.ts.map +1 -0
  230. package/lib-esm/components/Toast/ToastStory.js +1 -1
  231. package/lib-esm/components/Toast/ToastStory.js.map +1 -1
  232. package/lib-esm/components/Toast/index.d.ts +1 -0
  233. package/lib-esm/components/Toast/index.d.ts.map +1 -0
  234. package/lib-esm/components/Toast/index.js.map +1 -1
  235. package/lib-esm/components/Tooltip/Tooltip.d.ts +1 -0
  236. package/lib-esm/components/Tooltip/Tooltip.d.ts.map +1 -0
  237. package/lib-esm/components/Tooltip/Tooltip.js +5 -6
  238. package/lib-esm/components/Tooltip/Tooltip.js.map +1 -1
  239. package/lib-esm/components/Tooltip/index.d.ts +1 -0
  240. package/lib-esm/components/Tooltip/index.d.ts.map +1 -0
  241. package/lib-esm/components/Tooltip/index.js.map +1 -1
  242. package/lib-esm/components/index.d.ts +2 -0
  243. package/lib-esm/components/index.d.ts.map +1 -0
  244. package/lib-esm/components/index.js +1 -0
  245. package/lib-esm/components/index.js.map +1 -1
  246. package/lib-esm/icons/CheckCircle.d.ts +2 -1
  247. package/lib-esm/icons/CheckCircle.d.ts.map +1 -0
  248. package/lib-esm/icons/CheckCircle.js +1 -1
  249. package/lib-esm/icons/CheckCircle.js.map +1 -1
  250. package/lib-esm/icons/Close.d.ts +2 -1
  251. package/lib-esm/icons/Close.d.ts.map +1 -0
  252. package/lib-esm/icons/Close.js +1 -1
  253. package/lib-esm/icons/Close.js.map +1 -1
  254. package/lib-esm/icons/DragIndicator.d.ts +2 -1
  255. package/lib-esm/icons/DragIndicator.d.ts.map +1 -0
  256. package/lib-esm/icons/DragIndicator.js +1 -1
  257. package/lib-esm/icons/DragIndicator.js.map +1 -1
  258. package/lib-esm/icons/ErrorOutline.d.ts +2 -1
  259. package/lib-esm/icons/ErrorOutline.d.ts.map +1 -0
  260. package/lib-esm/icons/ErrorOutline.js +1 -1
  261. package/lib-esm/icons/ErrorOutline.js.map +1 -1
  262. package/lib-esm/icons/ExpandMore.d.ts +2 -1
  263. package/lib-esm/icons/ExpandMore.d.ts.map +1 -0
  264. package/lib-esm/icons/ExpandMore.js +1 -1
  265. package/lib-esm/icons/ExpandMore.js.map +1 -1
  266. package/lib-esm/icons/FiberManualRecord.d.ts +2 -1
  267. package/lib-esm/icons/FiberManualRecord.d.ts.map +1 -0
  268. package/lib-esm/icons/FiberManualRecord.js +1 -1
  269. package/lib-esm/icons/FiberManualRecord.js.map +1 -1
  270. package/lib-esm/icons/Info.d.ts +2 -1
  271. package/lib-esm/icons/Info.d.ts.map +1 -0
  272. package/lib-esm/icons/Info.js +1 -1
  273. package/lib-esm/icons/Info.js.map +1 -1
  274. package/lib-esm/icons/ReportProblem.d.ts +2 -1
  275. package/lib-esm/icons/ReportProblem.d.ts.map +1 -0
  276. package/lib-esm/icons/ReportProblem.js +1 -1
  277. package/lib-esm/icons/ReportProblem.js.map +1 -1
  278. package/lib-esm/icons/index.d.ts +1 -0
  279. package/lib-esm/icons/index.d.ts.map +1 -0
  280. package/lib-esm/icons/index.js.map +1 -1
  281. package/lib-esm/index.d.ts +1 -0
  282. package/lib-esm/index.d.ts.map +1 -0
  283. package/lib-esm/index.js.map +1 -1
  284. package/lib-esm/shared/LayerManager.d.ts +29 -2
  285. package/lib-esm/shared/LayerManager.d.ts.map +1 -0
  286. package/lib-esm/shared/LayerManager.js +95 -45
  287. package/lib-esm/shared/LayerManager.js.map +1 -1
  288. package/lib-esm/shared/constants.d.ts +1 -0
  289. package/lib-esm/shared/constants.d.ts.map +1 -0
  290. package/lib-esm/shared/constants.js.map +1 -1
  291. package/lib-esm/shared/styles.d.ts +1 -0
  292. package/lib-esm/shared/styles.d.ts.map +1 -0
  293. package/lib-esm/shared/styles.js.map +1 -1
  294. package/package.json +93 -74
@@ -1,10 +1,10 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
2
  import { useEffect, useState } from 'react';
3
3
  import styled from '@emotion/styled';
4
+ import { ExpandMore } from '../../icons';
4
5
  import { Menu } from '../Menu';
5
6
  import { Popover, POPOVER_POSITION } from '../Popover';
6
7
  import Input from './Input';
7
- import { ExpandMore } from '../../icons';
8
8
  const ArrowContainer = styled.span `
9
9
  position: absolute;
10
10
  right: 12px;
@@ -15,30 +15,30 @@ export default function Dropdown(props) {
15
15
  const { multiSelect, onChange } = props;
16
16
  const [open, setOpen] = useState(false);
17
17
  const [value, setValue] = useState(props.value);
18
- const focusHandler = (e) => {
19
- var _a, _b;
20
- if (open && (e.keyCode === 38 || e.keyCode === 40)) {
21
- e.preventDefault();
22
- const current = document.querySelector(':focus');
23
- if (current.tagName === "DIV") {
24
- const firstBtn = current.querySelector('button');
25
- firstBtn === null || firstBtn === void 0 ? void 0 : firstBtn.focus();
26
- }
27
- else {
28
- const currentBtn = current.closest('button');
29
- if (e.keyCode === 38) {
30
- const prev = (_a = currentBtn === null || currentBtn === void 0 ? void 0 : currentBtn.previousElementSibling) === null || _a === void 0 ? void 0 : _a.closest('button');
31
- prev === null || prev === void 0 ? void 0 : prev.focus();
18
+ useEffect(() => {
19
+ const focusHandler = (e) => {
20
+ var _a, _b;
21
+ if (open && (e.keyCode === 38 || e.keyCode === 40)) {
22
+ e.preventDefault();
23
+ const current = document.querySelector(':focus');
24
+ if (current.tagName === 'DIV') {
25
+ const firstBtn = current.querySelector('button');
26
+ firstBtn === null || firstBtn === void 0 ? void 0 : firstBtn.focus();
32
27
  }
33
28
  else {
34
- const next = (_b = currentBtn === null || currentBtn === void 0 ? void 0 : currentBtn.nextElementSibling) === null || _b === void 0 ? void 0 : _b.closest('button');
35
- next === null || next === void 0 ? void 0 : next.focus();
29
+ const currentBtn = current.closest('button');
30
+ if (e.keyCode === 38) {
31
+ const prev = (_a = currentBtn === null || currentBtn === void 0 ? void 0 : currentBtn.previousElementSibling) === null || _a === void 0 ? void 0 : _a.closest('button');
32
+ prev === null || prev === void 0 ? void 0 : prev.focus();
33
+ }
34
+ else {
35
+ const next = (_b = currentBtn === null || currentBtn === void 0 ? void 0 : currentBtn.nextElementSibling) === null || _b === void 0 ? void 0 : _b.closest('button');
36
+ next === null || next === void 0 ? void 0 : next.focus();
37
+ }
36
38
  }
39
+ return false;
37
40
  }
38
- return false;
39
- }
40
- };
41
- useEffect(() => {
41
+ };
42
42
  document.addEventListener('keydown', focusHandler);
43
43
  return () => {
44
44
  document.removeEventListener('keydown', focusHandler);
@@ -58,7 +58,7 @@ export default function Dropdown(props) {
58
58
  setOpen(false);
59
59
  }
60
60
  };
61
- return (_jsx(Popover, { position: POPOVER_POSITION.BOTTOM_LEFT, open: open, element: () => (_jsxs(_Fragment, { children: [_jsx(Input, { type: 'text', value: value && String(value), label: props.label, errorText: props.errorText, onClick: clickHandler, onKeyUp: keyUp, required: props.required, disabled: props.disabled }), _jsx(ArrowContainer, { children: _jsx(ExpandMore, {}) })] })), onClose: () => setOpen(false), children: _jsx(Menu, { value: value, multiSelect: multiSelect, onChange: changeHandler, children: props.children }) }));
61
+ return (_jsx(Popover, { position: POPOVER_POSITION.BOTTOM_LEFT, open: open, element: () => (_jsxs(_Fragment, { children: [_jsx(Input, { type: "text", value: value && String(value), label: props.label, errorText: props.errorText, onClick: clickHandler, onKeyUp: keyUp, required: props.required, disabled: props.disabled }), _jsx(ArrowContainer, { children: _jsx(ExpandMore, {}) })] })), onClose: () => setOpen(false), children: _jsx(Menu, { value: value, multiSelect: multiSelect, onChange: changeHandler, children: props.children }) }));
62
62
  }
63
63
  Dropdown.defaultProps = {
64
64
  multiSelect: false,
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../../../src/components/Input/Dropdown.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAmBzC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAA;;;;;CAKjC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAI,KAAuB;IACvD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACxC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAEhD,MAAM,YAAY,GAAG,CAAC,CAAgB,EAAE,EAAE;;QACtC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,KAAK,EAAE,CAAC,EAAE,CAAC;YACjD,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBACjD,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,EAAE,CAAC;YACtB,CAAC;iBAAM,CAAC;gBACJ,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAC7C,IAAI,CAAC,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;oBACnB,MAAM,IAAI,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,sBAAsB,0CAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACnE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACJ,MAAM,IAAI,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,kBAAkB,0CAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC/D,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,EAAE,CAAC;gBAClB,CAAC;YACL,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACX,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAEnD,OAAO,GAAG,EAAE;YACR,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAC1D,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC,MAAM,KAAK,GAAG,CAAC,CAAwC,EAAE,EAAE;QACvD,IAAI,CAAC,CAAC,OAAO,KAAK,EAAE,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;IACL,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,GAAY,EAAE,EAAE;QACnC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACd,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,GAAG,CAAC,CAAC;QAEhB,oDAAoD;QACpD,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;IACL,CAAC,CAAA;IAED,OAAO,CACH,KAAC,OAAO,IACJ,QAAQ,EAAE,gBAAgB,CAAC,WAAW,EACtC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,GAAG,EAAE,CAAC,CACX,8BACA,KAAC,KAAK,IACF,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,EAC7B,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAC1B,EACF,KAAC,cAAc,cAAC,KAAC,UAAU,KAAG,GAAiB,IAC5C,CACN,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,YAE7B,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,YAChE,KAAK,CAAC,QAAQ,GACZ,GACD,CACb,CAAC;AACN,CAAC;AAED,QAAQ,CAAC,YAAY,GAAG;IACpB,WAAW,EAAE,KAAK;CACrB,CAAA"}
1
+ {"version":3,"file":"Dropdown.js","sourceRoot":"","sources":["../../../src/components/Input/Dropdown.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from 'react';\nimport styled from '@emotion/styled';\nimport { ExpandMore } from '../../icons';\nimport { Menu } from '../Menu';\nimport { Popover, POPOVER_POSITION } from '../Popover';\nimport Input from './Input';\n\ntype DropdownProps<T> = {\n /** Value of the control */\n value?: T | T[];\n /** If multiple elements can be selected */\n multiSelect: boolean;\n /** Change handler */\n onChange?: (v: T | T[]) => void;\n /** Label of the control */\n label?: string;\n /** Error message */\n errorText?: string;\n /** Makes field required */\n required?: boolean;\n /** Disables the field */\n disabled?: boolean;\n} & React.PropsWithChildren<unknown>;\n\nconst ArrowContainer = styled.span`\n position: absolute;\n right: 12px;\n top: 16px;\n pointer-events: none;\n`;\n\nexport default function Dropdown<T extends object>(props: DropdownProps<T>) {\n const { multiSelect, onChange } = props;\n const [open, setOpen] = useState(false);\n const [value, setValue] = useState(props.value);\n\n useEffect(() => {\n const focusHandler = (e: KeyboardEvent) => {\n if (open && (e.keyCode === 38 || e.keyCode === 40)) {\n e.preventDefault();\n const current = document.querySelector(':focus');\n if (current.tagName === 'DIV') {\n const firstBtn = current.querySelector('button');\n firstBtn?.focus();\n } else {\n const currentBtn = current.closest('button');\n if (e.keyCode === 38) {\n const prev = currentBtn?.previousElementSibling?.closest('button');\n prev?.focus();\n } else {\n const next = currentBtn?.nextElementSibling?.closest('button');\n next?.focus();\n }\n }\n return false;\n }\n };\n document.addEventListener('keydown', focusHandler);\n\n return () => {\n document.removeEventListener('keydown', focusHandler);\n };\n }, [open]);\n\n const clickHandler = () => setOpen(true);\n\n const keyUp = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.keyCode === 40) {\n setOpen(true);\n }\n };\n\n const changeHandler = (val: T | T[]) => {\n setValue(val);\n onChange?.(val);\n\n // Close dropdown after selection if not multiSelect\n if (!multiSelect) {\n setOpen(false);\n }\n };\n\n return (\n <Popover\n position={POPOVER_POSITION.BOTTOM_LEFT}\n open={open}\n element={() => (\n <>\n <Input\n type=\"text\"\n value={value && String(value)}\n label={props.label}\n errorText={props.errorText}\n onClick={clickHandler}\n onKeyUp={keyUp}\n required={props.required}\n disabled={props.disabled}\n />\n <ArrowContainer>\n <ExpandMore />\n </ArrowContainer>\n </>\n )}\n onClose={() => setOpen(false)}\n >\n <Menu value={value} multiSelect={multiSelect} onChange={changeHandler}>\n {props.children}\n </Menu>\n </Popover>\n );\n}\n\nDropdown.defaultProps = {\n multiSelect: false,\n};\n"]}
@@ -7,3 +7,4 @@ type InputProps = React.AllHTMLAttributes<HTMLInputElement> & {
7
7
  };
8
8
  declare const Input: React.ForwardRefExoticComponent<Omit<InputProps, "as"> & React.RefAttributes<HTMLInputElement>>;
9
9
  export default Input;
10
+ //# sourceMappingURL=Input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,KAAK,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG;IAC1D,0BAA0B;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AA6HF,QAAA,MAAM,KAAK,iGAkCT,CAAC;AAIH,eAAe,KAAK,CAAC"}
@@ -23,12 +23,14 @@ const TextField = styled.input `
23
23
  background-color: var(--background, ${constants.BACKGROUND});
24
24
 
25
25
  /** Focused */
26
- &:focus, &:active {
26
+ &:focus,
27
+ &:active {
27
28
  border-color: var(--primary, ${constants.PRIMARY});
28
29
  box-shadow: 0 0 0 4px var(--primary-light, ${constants.PRIMARY_LIGHT});
29
30
  }
30
31
 
31
- &:focus + span, &:active + span {
32
+ &:focus + span,
33
+ &:active + span {
32
34
  color: var(--primary, ${constants.PRIMARY});
33
35
  }
34
36
 
@@ -37,7 +39,7 @@ const TextField = styled.input `
37
39
  border-color: var(--disabled-border, ${constants.DISABLED_BORDER});
38
40
  background-color: var(--disabled-background, ${constants.DISABLED_BACKGROUND});
39
41
  }
40
-
42
+
41
43
  &:disabled + span {
42
44
  color: #777;
43
45
  }
@@ -48,7 +50,8 @@ const TextField = styled.input `
48
50
  box-shadow: 0 0 0 4px var(--error-light, ${constants.ERROR_LIGHT});
49
51
  }
50
52
 
51
- ${props => props.touched ? `
53
+ ${(props) => props.touched
54
+ ? `
52
55
  &:invalid {
53
56
  border-color: var(--error, ${constants.ERROR});
54
57
  }
@@ -56,16 +59,19 @@ const TextField = styled.input `
56
59
  &:invalid + span {
57
60
  color: var(--error, ${constants.ERROR});
58
61
  }
59
- ` : ''}
62
+ `
63
+ : ''}
60
64
 
61
65
  /** Error */
62
- ${props => props.errorText ? `
66
+ ${(props) => props.errorText
67
+ ? `
63
68
  border-color: var(--error, ${constants.ERROR});
64
69
 
65
70
  & + span {
66
71
  color: var(--error, ${constants.ERROR});
67
72
  }
68
- ` : ''}
73
+ `
74
+ : ''}
69
75
 
70
76
  /** Required */
71
77
  &:required + span:after {
@@ -85,14 +91,16 @@ const TextField = styled.input `
85
91
  transition: all 300ms ease;
86
92
  }
87
93
 
88
- ${props => props.value !== '' ? `
94
+ ${(props) => props.value !== ''
95
+ ? `
89
96
  & + span {
90
97
  top: -8px;
91
98
  background: var(--background, ${constants.BACKGROUND});
92
99
  font-size: 12px;
93
100
  line-height: 14px;
94
101
  }
95
- ` : ''}
102
+ `
103
+ : ''}
96
104
 
97
105
  &:focus + span, &:placeholder-shown + span {
98
106
  top: -8px;
@@ -105,7 +113,7 @@ const ErrorContainer = styled.div `
105
113
  color: var(--error, ${constants.ERROR});
106
114
  padding-top: 3px;
107
115
  font-size: 12px;
108
- line-height: 14px;
116
+ line-height: 14px;
109
117
  margin-left: 3px;
110
118
  `;
111
119
  const Input = React.forwardRef((props, ref) => {
@@ -128,6 +136,7 @@ const Input = React.forwardRef((props, ref) => {
128
136
  };
129
137
  return (_jsxs(Label, { children: [_jsx(TextField, Object.assign({}, props, { ref: ref, value: value, onChange: onChangeHandler, onFocus: handleFocus, touched: touched })), _jsx("span", { children: props.label }), props.errorText && _jsx(ErrorContainer, { children: props.errorText })] }));
130
138
  });
139
+ Input.displayName = 'Input';
131
140
  export default Input;
132
141
  Input.propTypes = {
133
142
  /** Label for the field */
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport constants from '../../shared/constants';\n\ntype InputProps = React.AllHTMLAttributes<HTMLInputElement> & {\n /** Label for the field */\n label?: string;\n /** Error message for the field */\n errorText?: string;\n};\n\ntype InputInternalProps = InputProps & {\n touched: boolean;\n};\n\nconst Label = styled.label`\n display: inline-flex;\n flex-direction: column;\n flex: 1;\n position: relative;\n margin: 10px 5px;\n`;\n\nconst TextField = styled.input<InputInternalProps>`\n outline: none;\n color: inherit;\n padding: 0 8px;\n line-height: 30px;\n min-height: 30px;\n width: 250px;\n border-radius: 3px;\n border: 1px solid var(--border-color, ${constants.BORDER_COLOR});\n display: inline-block;\n background-color: var(--background, ${constants.BACKGROUND});\n\n /** Focused */\n &:focus,\n &:active {\n border-color: var(--primary, ${constants.PRIMARY});\n box-shadow: 0 0 0 4px var(--primary-light, ${constants.PRIMARY_LIGHT});\n }\n\n &:focus + span,\n &:active + span {\n color: var(--primary, ${constants.PRIMARY});\n }\n\n /** Disabled */\n &:disabled {\n border-color: var(--disabled-border, ${constants.DISABLED_BORDER});\n background-color: var(--disabled-background, ${constants.DISABLED_BACKGROUND});\n }\n\n &:disabled + span {\n color: #777;\n }\n\n /** Invalid */\n &:focus:invalid {\n border-color: var(--error, ${constants.ERROR});\n box-shadow: 0 0 0 4px var(--error-light, ${constants.ERROR_LIGHT});\n }\n\n ${(props) =>\n props.touched\n ? `\n &:invalid {\n border-color: var(--error, ${constants.ERROR});\n }\n\n &:invalid + span {\n color: var(--error, ${constants.ERROR});\n }\n `\n : ''}\n\n /** Error */\n ${(props) =>\n props.errorText\n ? `\n border-color: var(--error, ${constants.ERROR});\n\n & + span {\n color: var(--error, ${constants.ERROR});\n }\n `\n : ''}\n\n /** Required */\n &:required + span:after {\n content: '*';\n margin-left: 2px;\n color: var(--error, ${constants.ERROR});\n }\n\n /** Label Animation */\n & + span {\n position: absolute;\n padding: 0 5px;\n top: 0px;\n left: 4px;\n font-size: 14px;\n line-height: 32px;\n transition: all 300ms ease;\n }\n\n ${(props) =>\n props.value !== ''\n ? `\n & + span {\n top: -8px;\n background: var(--background, ${constants.BACKGROUND});\n font-size: 12px;\n line-height: 14px;\n }\n `\n : ''}\n\n &:focus + span, &:placeholder-shown + span {\n top: -8px;\n background: var(--background, ${constants.BACKGROUND});\n font-size: 12px;\n line-height: 14px;\n }\n`;\n\nconst ErrorContainer = styled.div`\n color: var(--error, ${constants.ERROR});\n padding-top: 3px;\n font-size: 12px;\n line-height: 14px;\n margin-left: 3px;\n`;\n\nconst Input = React.forwardRef<HTMLInputElement, Omit<InputProps, 'as'>>((props, ref) => {\n const [touched, setTouched] = useState(false);\n const [value, setValue] = useState(props.value || '');\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setTouched(true);\n if (props.onFocus) {\n props.onFocus(e);\n }\n };\n\n const onChangeHandler = (e: React.ChangeEvent<HTMLInputElement>) => {\n if (props.onChange) {\n setValue(e.target.value);\n props.onChange(e);\n } else {\n setValue(e.target.value);\n }\n };\n\n return (\n <Label>\n <TextField\n {...props}\n ref={ref}\n value={value}\n onChange={onChangeHandler}\n onFocus={handleFocus}\n touched={touched}\n />\n <span>{props.label}</span>\n {props.errorText && <ErrorContainer>{props.errorText}</ErrorContainer>}\n </Label>\n );\n});\n\nInput.displayName = 'Input';\n\nexport default Input;\n\nInput.propTypes = {\n /** Label for the field */\n label: PropTypes.string,\n /** Error text to be shown below the field */\n errorText: PropTypes.string,\n};\n"]}
@@ -8,3 +8,4 @@ declare namespace Radio {
8
8
  };
9
9
  }
10
10
  export default Radio;
11
+ //# sourceMappingURL=Radio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Radio.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Radio.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AA2EnC,iBAAS,KAAK,CACV,KAAK,EAAE,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,OAAO,KAAK,CAAC,SAAS,CAAC,oDAQlG;kBATQ,KAAK;;QAYV,0BAA0B;;;;AAI9B,eAAe,KAAK,CAAC"}
@@ -19,7 +19,7 @@ const Input = styled.input `
19
19
  border: 1px solid var(--border-color, ${constants.BORDER_COLOR});
20
20
  border-radius: 50%;
21
21
  display: block;
22
- transition: background-color .3s ease;
22
+ transition: background-color 0.3s ease;
23
23
  }
24
24
 
25
25
  /* checked */
@@ -38,7 +38,8 @@ const Input = styled.input `
38
38
 
39
39
  &:enabled:checked:focus::before {
40
40
  border: 1px solid var(--primary, ${constants.PRIMARY});
41
- box-shadow: 0 0 0 3px var(--primary, ${constants.PRIMARY_LIGHT}),
41
+ box-shadow:
42
+ 0 0 0 3px var(--primary, ${constants.PRIMARY_LIGHT}),
42
43
  inset 0 0 0 3px var(--background, ${constants.BACKGROUND});
43
44
  cursor: pointer;
44
45
  }
@@ -71,7 +72,7 @@ const Input = styled.input `
71
72
  }
72
73
  `;
73
74
  function Radio(props) {
74
- return (_jsxs(Label, { children: [_jsx(Input, Object.assign({}, props, { type: 'radio' })), _jsx("span", { children: props.label })] }));
75
+ return (_jsxs(Label, { children: [_jsx(Input, Object.assign({}, props, { type: "radio" })), _jsx("span", { children: props.label })] }));
75
76
  }
76
77
  Radio.propTypes = {
77
78
  /** Label for the field */
@@ -1 +1 @@
1
- {"version":3,"file":"Radio.js","sourceRoot":"","sources":["../../../src/components/Input/Radio.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;CAIzB,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;;;;gDASsB,SAAS,CAAC,YAAY;;;;;;;;2CAQ3B,SAAS,CAAC,OAAO;2CACjB,SAAS,CAAC,OAAO;wDACJ,SAAS,CAAC,UAAU;;;;;2CAKjC,SAAS,CAAC,OAAO;+CACb,SAAS,CAAC,aAAa;;;;;2CAK3B,SAAS,CAAC,OAAO;+CACb,SAAS,CAAC,aAAa;gDACtB,SAAS,CAAC,UAAU;;;;;;2CAMzB,SAAS,CAAC,OAAO;;;;;gCAK5B,SAAS,CAAC,OAAO;;;;;;mDAME,SAAS,CAAC,eAAe;8CAC9B,SAAS,CAAC,UAAU;;;;mDAIf,SAAS,CAAC,eAAe;mDACzB,SAAS,CAAC,eAAe;wDACpB,SAAS,CAAC,UAAU;;;;wCAIpC,SAAS,CAAC,eAAe;;CAEhE,CAAC;AAEF,SAAS,KAAK,CAAC,KAA+F;IAC1G,OAAO,CACH,MAAC,KAAK,eACF,KAAC,KAAK,oBAAK,KAAK,IAAE,IAAI,EAAC,OAAO,IAAG,EACjC,yBAAO,KAAK,CAAC,KAAK,GAAQ,IACtB,CACX,CAAC;AACN,CAAC;AAED,KAAK,CAAC,SAAS,GAAG;IACd,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAC,MAAM;CAC1B,CAAA;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Radio.js","sourceRoot":"","sources":["../../../src/components/Input/Radio.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;CAIzB,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;;;;gDASsB,SAAS,CAAC,YAAY;;;;;;;;2CAQ3B,SAAS,CAAC,OAAO;2CACjB,SAAS,CAAC,OAAO;wDACJ,SAAS,CAAC,UAAU;;;;;2CAKjC,SAAS,CAAC,OAAO;+CACb,SAAS,CAAC,aAAa;;;;;2CAK3B,SAAS,CAAC,OAAO;;uCAErB,SAAS,CAAC,aAAa;gDACd,SAAS,CAAC,UAAU;;;;;;2CAMzB,SAAS,CAAC,OAAO;;;;;gCAK5B,SAAS,CAAC,OAAO;;;;;;mDAME,SAAS,CAAC,eAAe;8CAC9B,SAAS,CAAC,UAAU;;;;mDAIf,SAAS,CAAC,eAAe;mDACzB,SAAS,CAAC,eAAe;wDACpB,SAAS,CAAC,UAAU;;;;wCAIpC,SAAS,CAAC,eAAe;;CAEhE,CAAC;AAEF,SAAS,KAAK,CACV,KAA+F;IAE/F,OAAO,CACH,MAAC,KAAK,eACF,KAAC,KAAK,oBAAK,KAAK,IAAE,IAAI,EAAC,OAAO,IAAG,EACjC,yBAAO,KAAK,CAAC,KAAK,GAAQ,IACtB,CACX,CAAC;AACN,CAAC;AAED,KAAK,CAAC,SAAS,GAAG;IACd,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAC,MAAM;CAC1B,CAAC;AAEF,eAAe,KAAK,CAAC","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport constants from '../../shared/constants';\n\nconst Label = styled.label`\n display: inline-flex;\n align-items: center;\n margin: 5px 0;\n`;\n\nconst Input = styled.input`\n appearance: none;\n margin: 0;\n\n &::before {\n content: ' ';\n width: 16px;\n height: 16px;\n margin: 0 5px;\n border: 1px solid var(--border-color, ${constants.BORDER_COLOR});\n border-radius: 50%;\n display: block;\n transition: background-color 0.3s ease;\n }\n\n /* checked */\n &:checked::before {\n border: 1px solid var(--primary, ${constants.PRIMARY});\n background-color: var(--primary, ${constants.PRIMARY});\n box-shadow: inset 0 0 0 3px var(--background, ${constants.BACKGROUND});\n }\n\n /* focus */\n &:enabled:focus::before {\n border: 1px solid var(--primary, ${constants.PRIMARY});\n box-shadow: 0 0 0 3px var(--primary, ${constants.PRIMARY_LIGHT});\n cursor: pointer;\n }\n\n &:enabled:checked:focus::before {\n border: 1px solid var(--primary, ${constants.PRIMARY});\n box-shadow:\n 0 0 0 3px var(--primary, ${constants.PRIMARY_LIGHT}),\n inset 0 0 0 3px var(--background, ${constants.BACKGROUND});\n cursor: pointer;\n }\n\n /* hover */\n &:enabled:hover::before {\n border: 1px solid var(--primary, ${constants.PRIMARY});\n cursor: pointer;\n }\n\n &:enabled:hover + span {\n color: var(--primary, ${constants.PRIMARY});\n cursor: pointer;\n }\n\n /* disabled */\n &:disabled::before {\n border: 1px solid var(--disabled-border, ${constants.DISABLED_BORDER});\n background-color: var(--light-grey, ${constants.LIGHT_GREY});\n }\n\n &:disabled:checked::before {\n border: 1px solid var(--disabled-border, ${constants.DISABLED_BORDER});\n background-color: var(--disabled-border, ${constants.DISABLED_BORDER});\n box-shadow: inset 0 0 0 3px var(--background, ${constants.BACKGROUND});\n }\n\n &:disabled + span {\n color: var(--disabled-border, ${constants.DISABLED_BORDER});\n }\n`;\n\nfunction Radio(\n props: PropTypes.InferProps<React.AllHTMLAttributes<HTMLInputElement> & typeof Radio.propTypes>,\n) {\n return (\n <Label>\n <Input {...props} type=\"radio\" />\n <span>{props.label}</span>\n </Label>\n );\n}\n\nRadio.propTypes = {\n /** Label for the field */\n label: PropTypes.string,\n};\n\nexport default Radio;\n"]}
@@ -12,3 +12,4 @@ declare namespace RadioButton {
12
12
  };
13
13
  }
14
14
  export default RadioButton;
15
+ //# sourceMappingURL=RadioButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioButton.d.ts","sourceRoot":"","sources":["../../../src/components/Input/RadioButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AAoDnC,eAAO,MAAM,UAAU;;SA7Bf,MAAO,WAAW;qFA0CzB,CAAC;AAEF,iBAAS,WAAW,CAChB,KAAK,EAAE,SAAS,CAAC,UAAU,CACvB,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,OAAO,WAAW,CAAC,SAAS,CAC3E,oDAQJ;kBAXQ,WAAW;;QAchB,0BAA0B;;;;AAI9B,eAAe,WAAW,CAAC"}
@@ -63,7 +63,7 @@ export const RadioGroup = styled.div `
63
63
  }
64
64
  `;
65
65
  function RadioButton(props) {
66
- return (_jsxs(Label, { children: [_jsx(Input, Object.assign({}, props, { type: 'radio' })), _jsx("span", { children: props.label })] }));
66
+ return (_jsxs(Label, { children: [_jsx(Input, Object.assign({}, props, { type: "radio" })), _jsx("span", { children: props.label })] }));
67
67
  }
68
68
  RadioButton.propTypes = {
69
69
  /** Label for the field */
@@ -1 +1 @@
1
- {"version":3,"file":"RadioButton.js","sourceRoot":"","sources":["../../../src/components/Input/RadioButton.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;gCAMM,SAAS,CAAC,OAAO;;;2CAGN,SAAS,CAAC,OAAO;;;;;;;+CAOb,SAAS,CAAC,aAAa;;;;2CAI3B,SAAS,CAAC,aAAa;;;;;2CAKvB,SAAS,CAAC,OAAO;;;;;sDAKN,SAAS,CAAC,kBAAkB;wCAC1C,SAAS,CAAC,eAAe;;;;mDAId,SAAS,CAAC,eAAe;;;CAG3E,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;CAMzB,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;QAM5B,KAAK;;;;QAIL,KAAK;;;CAGZ,CAAC;AAEF,SAAS,WAAW,CAAC,KAAqG;IACtH,OAAO,CACH,MAAC,KAAK,eACF,KAAC,KAAK,oBAAK,KAAK,IAAE,IAAI,EAAC,OAAO,IAAG,EACjC,yBAAO,KAAK,CAAC,KAAK,GAAQ,IACtB,CACX,CAAC;AACN,CAAC;AAED,WAAW,CAAC,SAAS,GAAG;IACpB,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAC,MAAM;CAC1B,CAAA;AAED,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"RadioButton.js","sourceRoot":"","sources":["../../../src/components/Input/RadioButton.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;gCAMM,SAAS,CAAC,OAAO;;;2CAGN,SAAS,CAAC,OAAO;;;;;;;+CAOb,SAAS,CAAC,aAAa;;;;2CAI3B,SAAS,CAAC,aAAa;;;;;2CAKvB,SAAS,CAAC,OAAO;;;;;sDAKN,SAAS,CAAC,kBAAkB;wCAC1C,SAAS,CAAC,eAAe;;;;mDAId,SAAS,CAAC,eAAe;;;CAG3E,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;CAMzB,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;QAM5B,KAAK;;;;QAIL,KAAK;;;CAGZ,CAAC;AAEF,SAAS,WAAW,CAChB,KAEC;IAED,OAAO,CACH,MAAC,KAAK,eACF,KAAC,KAAK,oBAAK,KAAK,IAAE,IAAI,EAAC,OAAO,IAAG,EACjC,yBAAO,KAAK,CAAC,KAAK,GAAQ,IACtB,CACX,CAAC;AACN,CAAC;AAED,WAAW,CAAC,SAAS,GAAG;IACpB,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAC,MAAM;CAC1B,CAAC;AAEF,eAAe,WAAW,CAAC","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport constants from '../../shared/constants';\n\nconst Input = styled.input`\n appearance: none;\n margin: 0;\n width: 0;\n\n & + span {\n color: var(--primary, ${constants.PRIMARY});\n padding: 6px 12px;\n border: none;\n border: 1px solid var(--primary, ${constants.PRIMARY});\n cursor: pointer;\n margin-right: -1px;\n line-height: 18px;\n }\n\n &:enabled:focus + span {\n box-shadow: 0 0 0 4px var(--primary, ${constants.PRIMARY_LIGHT});\n }\n\n &:enabled:hover + span {\n background-color: var(--primary, ${constants.PRIMARY_LIGHT});\n color: #fff;\n }\n\n &:enabled:checked + span {\n background-color: var(--primary, ${constants.PRIMARY});\n color: #fff;\n }\n\n &:disabled + span {\n background-color: var(--border-light-color, ${constants.BORDER_LIGHT_COLOR});\n color: var(--disabled-border, ${constants.DISABLED_BORDER});\n }\n\n &:disabled:checked + span {\n background-color: var(--disabled-border, ${constants.DISABLED_BORDER});\n color: #fff;\n }\n`;\n\nconst Label = styled.label`\n display: inline-flex;\n\n &:focus-within {\n z-index: 1;\n }\n`;\n\nexport const RadioGroup = styled.div`\n display: inline-flex;\n align-items: center;\n border-radius: 3px;\n margin: 5px 0;\n\n & ${Label}:first-child > span {\n border-radius: 3px 0 0 3px;\n }\n\n & ${Label}:last-child > span {\n border-radius: 0 3px 3px 0;\n }\n`;\n\nfunction RadioButton(\n props: PropTypes.InferProps<\n React.AllHTMLAttributes<HTMLInputElement> & typeof RadioButton.propTypes\n >,\n) {\n return (\n <Label>\n <Input {...props} type=\"radio\" />\n <span>{props.label}</span>\n </Label>\n );\n}\n\nRadioButton.propTypes = {\n /** Label for the field */\n label: PropTypes.string,\n};\n\nexport default RadioButton;\n"]}
@@ -13,3 +13,4 @@ declare namespace Select {
13
13
  };
14
14
  }
15
15
  export default Select;
16
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,SAAS,MAAM,YAAY,CAAC;AAKnC,UAAU,WACN,SACI,SAAS,CAAC,SAAS,CAAC,OAAO,MAAM,CAAC,SAAS,CAAC,EAC5C,KAAK,CAAC,mBAAmB,CAAC,iBAAiB,CAAC;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AA2ID,iBAAwB,MAAM,CAAC,KAAK,EAAE,WAAW,oDAwChD;kBAxCuB,MAAM;;QA2C1B,0BAA0B;;QAE1B,6CAA6C;;;;eA7CzB,MAAM"}
@@ -32,12 +32,14 @@ const SelectField = styled.select `
32
32
  appearance: none;
33
33
 
34
34
  /** Focused */
35
- &:focus, &:active {
35
+ &:focus,
36
+ &:active {
36
37
  border-color: var(--primary, ${constants.PRIMARY});
37
38
  box-shadow: 0 0 0 4px var(--primary, ${constants.PRIMARY_LIGHT});
38
39
  }
39
40
 
40
- &:focus ~ span, &:active ~ span {
41
+ &:focus ~ span,
42
+ &:active ~ span {
41
43
  color: var(--primary, ${constants.PRIMARY});
42
44
  }
43
45
 
@@ -46,7 +48,7 @@ const SelectField = styled.select `
46
48
  border-color: var(--disabled-border, ${constants.DISABLED_BORDER});
47
49
  background-color: var(--disabled-background, ${constants.DISABLED_BACKGROUND});
48
50
  }
49
-
51
+
50
52
  &:disabled ~ span {
51
53
  color: var(--disabled, ${constants.DISABLED});
52
54
  }
@@ -57,7 +59,8 @@ const SelectField = styled.select `
57
59
  box-shadow: 0 0 0 4px var(--error-light, ${constants.ERROR_LIGHT});
58
60
  }
59
61
 
60
- ${props => props.touched ? `
62
+ ${(props) => props.touched
63
+ ? `
61
64
  &:invalid {
62
65
  border-color: var(--error, ${constants.ERROR});
63
66
  }
@@ -65,16 +68,19 @@ const SelectField = styled.select `
65
68
  &:invalid ~ span {
66
69
  color: var(--error, ${constants.ERROR});
67
70
  }
68
- ` : ''}
71
+ `
72
+ : ''}
69
73
 
70
74
  /** Error */
71
- ${props => props.errorText ? `
75
+ ${(props) => props.errorText
76
+ ? `
72
77
  border-color: var(--error, ${constants.ERROR});
73
78
 
74
79
  & ~ span {
75
80
  color: var(--error, ${constants.ERROR});
76
81
  }
77
- ` : ''}
82
+ `
83
+ : ''}
78
84
 
79
85
  /** Required */
80
86
  &:required + span:after {
@@ -94,14 +100,16 @@ const SelectField = styled.select `
94
100
  transition: all 300ms ease;
95
101
  }
96
102
 
97
- ${props => props.value !== '' ? `
103
+ ${(props) => props.value !== ''
104
+ ? `
98
105
  & + span {
99
106
  top: -8px;
100
107
  background: var(--background, ${constants.BACKGROUND});
101
108
  font-size: 12px;
102
109
  line-height: 14px;
103
110
  }
104
- ` : ''}
111
+ `
112
+ : ''}
105
113
 
106
114
  &:focus + span, &:placeholder-shown + span {
107
115
  top: -8px;
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../src/components/Input/Select.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../src/components/Input/Select.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport ExpandMore from '../../icons/ExpandMore';\nimport constants from '../../shared/constants';\n\ninterface SelectProps\n extends\n PropTypes.InferType<typeof Select.propTypes>,\n React.InputHTMLAttributes<HTMLSelectElement> {\n value?: string;\n}\n\ntype SelectInternalProps = SelectProps & {\n touched: boolean;\n};\n\nconst Label = styled.label`\n display: inline-flex;\n flex-direction: column;\n flex: 1;\n position: relative;\n margin: 10px 5px;\n pointer-events: none;\n max-width: 268px;\n\n & svg {\n fill: currentColor;\n }\n`;\n\nconst SelectField = styled.select<SelectInternalProps>`\n border: none;\n color: inherit;\n padding: 0 8px;\n line-height: 30px;\n min-height: 32px;\n width: 268px;\n border-radius: 3px;\n border: 1px solid var(--border-color, ${constants.BORDER_COLOR});\n display: inline-block;\n background-color: var(--background, ${constants.BACKGROUND});\n pointer-events: auto;\n appearance: none;\n\n /** Focused */\n &:focus,\n &:active {\n border-color: var(--primary, ${constants.PRIMARY});\n box-shadow: 0 0 0 4px var(--primary, ${constants.PRIMARY_LIGHT});\n }\n\n &:focus ~ span,\n &:active ~ span {\n color: var(--primary, ${constants.PRIMARY});\n }\n\n /** Disabled */\n &:disabled {\n border-color: var(--disabled-border, ${constants.DISABLED_BORDER});\n background-color: var(--disabled-background, ${constants.DISABLED_BACKGROUND});\n }\n\n &:disabled ~ span {\n color: var(--disabled, ${constants.DISABLED});\n }\n\n /** Invalid */\n &:focus:invalid {\n border-color: var(--error, ${constants.ERROR});\n box-shadow: 0 0 0 4px var(--error-light, ${constants.ERROR_LIGHT});\n }\n\n ${(props) =>\n props.touched\n ? `\n &:invalid {\n border-color: var(--error, ${constants.ERROR});\n }\n\n &:invalid ~ span {\n color: var(--error, ${constants.ERROR});\n }\n `\n : ''}\n\n /** Error */\n ${(props) =>\n props.errorText\n ? `\n border-color: var(--error, ${constants.ERROR});\n\n & ~ span {\n color: var(--error, ${constants.ERROR});\n }\n `\n : ''}\n\n /** Required */\n &:required + span:after {\n content: '*';\n margin-left: 2px;\n color: var(--error, ${constants.ERROR});\n }\n\n /** Label Animation */\n & + span {\n position: absolute;\n padding: 0 5px;\n top: 0px;\n left: 4px;\n font-size: 14px;\n line-height: 32px;\n transition: all 300ms ease;\n }\n\n ${(props) =>\n props.value !== ''\n ? `\n & + span {\n top: -8px;\n background: var(--background, ${constants.BACKGROUND});\n font-size: 12px;\n line-height: 14px;\n }\n `\n : ''}\n\n &:focus + span, &:placeholder-shown + span {\n top: -8px;\n background: var(--background, ${constants.BACKGROUND});\n font-size: 12px;\n line-height: 14px;\n }\n`;\n\nconst ErrorContainer = styled.div`\n color: var(--error, ${constants.ERROR});\n padding-top: 3px;\n font-size: 12px;\n line-height: 14px;\n margin-left: 3px;\n`;\n\nconst ArrowContainer = styled.span`\n position: absolute;\n right: 8px;\n top: 8px;\n`;\n\nexport default function Select(props: SelectProps) {\n const [touched, setTouched] = useState(false);\n const [value, setValue] = useState(props.value || '');\n\n const handleFocus = (e: React.FocusEvent<HTMLSelectElement>) => {\n setTouched(true);\n if (props.onFocus) {\n props.onFocus(e);\n }\n };\n\n const onChangeHandler = (e: React.ChangeEvent<HTMLSelectElement>) => {\n if (props.onChange) {\n setValue(e.target.value);\n props.onChange(e);\n } else {\n setValue(e.target.value);\n }\n };\n\n return (\n <Label>\n <SelectField\n {...props}\n multiple={false}\n value={value}\n onChange={onChangeHandler}\n onFocus={handleFocus}\n touched={touched}\n >\n <option />\n {props.children}\n </SelectField>\n <span>{props.label}</span>\n <ArrowContainer>\n <ExpandMore />\n </ArrowContainer>\n {props.errorText && <ErrorContainer>{props.errorText}</ErrorContainer>}\n </Label>\n );\n}\n\nSelect.propTypes = {\n /** Label for the field */\n label: PropTypes.string,\n /** Error text to be shown below the field */\n errorText: PropTypes.string,\n};\n"]}
@@ -13,3 +13,4 @@ declare namespace TextArea {
13
13
  };
14
14
  }
15
15
  export default TextArea;
16
+ //# sourceMappingURL=TextArea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextArea.d.ts","sourceRoot":"","sources":["../../../src/components/Input/TextArea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,SAAS,MAAM,YAAY,CAAC;AAInC,UAAU,aACN,SACI,SAAS,CAAC,SAAS,CAAC,OAAO,QAAQ,CAAC,SAAS,CAAC,EAC9C,KAAK,CAAC,mBAAmB,CAAC,mBAAmB,CAAC;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AA4HD,iBAAwB,QAAQ,CAAC,KAAK,EAAE,aAAa,oDAiCpD;kBAjCuB,QAAQ;;QAoC5B,0BAA0B;;QAE1B,6CAA6C;;;;eAtCzB,QAAQ"}
@@ -22,12 +22,14 @@ const TextField = styled.textarea `
22
22
  background-color: var(--background, ${constants.BACKGROUND});
23
23
 
24
24
  /** Focused */
25
- &:focus, &:active {
25
+ &:focus,
26
+ &:active {
26
27
  border-color: var(--primary, ${constants.PRIMARY});
27
28
  box-shadow: 0 0 0 4px var(--primary, ${constants.PRIMARY_LIGHT});
28
29
  }
29
30
 
30
- &:focus + span, &:active + span {
31
+ &:focus + span,
32
+ &:active + span {
31
33
  color: var(--primary, ${constants.PRIMARY});
32
34
  }
33
35
 
@@ -36,7 +38,7 @@ const TextField = styled.textarea `
36
38
  border-color: var(--disabled-border, ${constants.DISABLED_BORDER});
37
39
  background-color: var(--disabled-background, ${constants.DISABLED_BACKGROUND});
38
40
  }
39
-
41
+
40
42
  &:disabled + span {
41
43
  color: var(--disabled, ${constants.DISABLED});
42
44
  }
@@ -47,7 +49,8 @@ const TextField = styled.textarea `
47
49
  box-shadow: 0 0 0 4px var(--error-light, ${constants.ERROR_LIGHT});
48
50
  }
49
51
 
50
- ${props => props.touched ? `
52
+ ${(props) => props.touched
53
+ ? `
51
54
  &:invalid {
52
55
  border-color: var(--error, ${constants.ERROR});
53
56
  }
@@ -55,16 +58,19 @@ const TextField = styled.textarea `
55
58
  &:invalid + span {
56
59
  color: var(--error, ${constants.ERROR});
57
60
  }
58
- ` : ''}
61
+ `
62
+ : ''}
59
63
 
60
64
  /** Error */
61
- ${props => props.errorText ? `
65
+ ${(props) => props.errorText
66
+ ? `
62
67
  border-color: var(--error, ${constants.ERROR});
63
68
 
64
69
  & + span {
65
70
  color: var(--error, ${constants.ERROR});
66
71
  }
67
- ` : ''}
72
+ `
73
+ : ''}
68
74
 
69
75
  /** Required */
70
76
  &:required + span:after {
@@ -84,14 +90,16 @@ const TextField = styled.textarea `
84
90
  transition: all 300ms ease;
85
91
  }
86
92
 
87
- ${props => props.value !== '' ? `
93
+ ${(props) => props.value !== ''
94
+ ? `
88
95
  & + span {
89
96
  top: -8px;
90
97
  background: var(--background, ${constants.BACKGROUND});
91
98
  font-size: 12px;
92
99
  line-height: 14px;
93
100
  }
94
- ` : ''}
101
+ `
102
+ : ''}
95
103
 
96
104
  &:focus + span, &:placeholder-shown + span {
97
105
  top: -8px;
@@ -1 +1 @@
1
- {"version":3,"file":"TextArea.js","sourceRoot":"","sources":["../../../src/components/Input/TextArea.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextArea.js","sourceRoot":"","sources":["../../../src/components/Input/TextArea.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport constants from '../../shared/constants';\n\ninterface TextAreaProps\n extends\n PropTypes.InferType<typeof TextArea.propTypes>,\n React.InputHTMLAttributes<HTMLTextAreaElement> {\n value?: string;\n}\n\ntype TextAreaInternalProps = TextAreaProps & {\n touched: boolean;\n};\n\nconst Label = styled.label`\n display: inline-flex;\n flex-direction: column;\n flex: 1;\n position: relative;\n margin: 10px 5px;\n`;\n\nconst TextField = styled.textarea<TextAreaInternalProps>`\n border: none;\n color: inherit;\n padding: 8px;\n min-height: 150px;\n min-width: 250px;\n border-radius: 3px;\n border: 1px solid var(--border-color, ${constants.BORDER_COLOR});\n display: inline-block;\n background-color: var(--background, ${constants.BACKGROUND});\n\n /** Focused */\n &:focus,\n &:active {\n border-color: var(--primary, ${constants.PRIMARY});\n box-shadow: 0 0 0 4px var(--primary, ${constants.PRIMARY_LIGHT});\n }\n\n &:focus + span,\n &:active + span {\n color: var(--primary, ${constants.PRIMARY});\n }\n\n /** Disabled */\n &:disabled {\n border-color: var(--disabled-border, ${constants.DISABLED_BORDER});\n background-color: var(--disabled-background, ${constants.DISABLED_BACKGROUND});\n }\n\n &:disabled + span {\n color: var(--disabled, ${constants.DISABLED});\n }\n\n /** Invalid */\n &:focus:invalid {\n border-color: var(--error, ${constants.ERROR});\n box-shadow: 0 0 0 4px var(--error-light, ${constants.ERROR_LIGHT});\n }\n\n ${(props) =>\n props.touched\n ? `\n &:invalid {\n border-color: var(--error, ${constants.ERROR});\n }\n\n &:invalid + span {\n color: var(--error, ${constants.ERROR});\n }\n `\n : ''}\n\n /** Error */\n ${(props) =>\n props.errorText\n ? `\n border-color: var(--error, ${constants.ERROR});\n\n & + span {\n color: var(--error, ${constants.ERROR});\n }\n `\n : ''}\n\n /** Required */\n &:required + span:after {\n content: '*';\n margin-left: 2px;\n color: var(--error, ${constants.ERROR});\n }\n\n /** Label Animation */\n & + span {\n position: absolute;\n padding: 0 5px;\n top: 0px;\n left: 4px;\n font-size: 14px;\n line-height: 32px;\n transition: all 300ms ease;\n }\n\n ${(props) =>\n props.value !== ''\n ? `\n & + span {\n top: -8px;\n background: var(--background, ${constants.BACKGROUND});\n font-size: 12px;\n line-height: 14px;\n }\n `\n : ''}\n\n &:focus + span, &:placeholder-shown + span {\n top: -8px;\n background: var(--background, ${constants.BACKGROUND});\n font-size: 12px;\n line-height: 14px;\n }\n`;\n\nconst ErrorContainer = styled.div`\n color: var(--error, ${constants.ERROR});\n padding-top: 3px;\n font-size: 12px;\n line-height: 14px;\n margin-left: 3px;\n`;\n\nexport default function TextArea(props: TextAreaProps) {\n const [touched, setTouched] = useState(false);\n const [value, setValue] = useState(props.value || '');\n\n const handleFocus = (e: React.FocusEvent<HTMLTextAreaElement>) => {\n setTouched(true);\n if (props.onFocus) {\n props.onFocus(e);\n }\n };\n\n const onChangeHandler = (e: React.ChangeEvent<HTMLTextAreaElement>) => {\n if (props.onChange) {\n setValue(e.target.value);\n props.onChange(e);\n } else {\n setValue(e.target.value);\n }\n };\n\n return (\n <Label>\n <TextField\n {...props}\n value={value}\n onChange={onChangeHandler}\n onFocus={handleFocus}\n touched={touched}\n />\n <span>{props.label}</span>\n {props.errorText && <ErrorContainer>{props.errorText}</ErrorContainer>}\n </Label>\n );\n}\n\nTextArea.propTypes = {\n /** Label for the field */\n label: PropTypes.string,\n /** Error text to be shown below the field */\n errorText: PropTypes.string,\n};\n"]}
@@ -9,3 +9,4 @@ declare namespace Toggle {
9
9
  };
10
10
  }
11
11
  export default Toggle;
12
+ //# sourceMappingURL=Toggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AA4EnC,KAAK,WAAW,GAAG,SAAS,CAAC,UAAU,CACnC,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,OAAO,MAAM,CAAC,SAAS,CACtE,CAAC;AAEF,iBAAS,MAAM,CAAC,KAAK,EAAE,WAAW,oDAQjC;kBARQ,MAAM;;QAWX,0BAA0B;;;;AAI9B,eAAe,MAAM,CAAC"}
@@ -17,14 +17,14 @@ const Input = styled.input `
17
17
  width: 30px;
18
18
  height: 18px;
19
19
  background-color: ${constants.LIGHT_GREY};
20
- transition: .4s;
20
+ transition: 0.4s;
21
21
  border-radius: 10px;
22
22
  padding: 0 3px;
23
23
  margin: 0 10px 0 5px;
24
24
  }
25
25
  & + span:before {
26
26
  position: absolute;
27
- content: "";
27
+ content: '';
28
28
  height: 14px;
29
29
  width: 14px;
30
30
  left: 1px;
@@ -32,7 +32,7 @@ const Input = styled.input `
32
32
  border: 1px solid var(--disabled-border, ${constants.DISABLED_BORDER});
33
33
  border-radius: 50%;
34
34
  background-color: var(--background, ${constants.BACKGROUND});
35
- transition: .4s;
35
+ transition: 0.4s;
36
36
  }
37
37
 
38
38
  /* checked */
@@ -66,14 +66,14 @@ const Input = styled.input `
66
66
  background-color: ${constants.LIGHT_GREY};
67
67
  cursor: not-allowed;
68
68
  }
69
-
69
+
70
70
  &:disabled + span:before {
71
71
  background-color: var(--border-light-color, ${constants.BORDER_LIGHT_COLOR});
72
72
  border-color: var(--disabled-border, ${constants.DISABLED_BORDER});
73
73
  }
74
74
  `;
75
75
  function Toggle(props) {
76
- return (_jsxs(Switch, { children: [_jsx(Input, Object.assign({}, props, { type: 'checkbox' })), _jsx("span", {}), _jsx("span", { children: props.label })] }));
76
+ return (_jsxs(Switch, { children: [_jsx(Input, Object.assign({}, props, { type: "checkbox" })), _jsx("span", {}), _jsx("span", { children: props.label })] }));
77
77
  }
78
78
  Toggle.propTypes = {
79
79
  /** Label for the field */
@@ -1 +1 @@
1
- {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../src/components/Input/Toggle.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAA;;;;CAI1B,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;;;;4BASE,SAAS,CAAC,UAAU;;;;;;;;;;;;;mDAaG,SAAS,CAAC,eAAe;;8CAE9B,SAAS,CAAC,UAAU;;;;;;2CAMvB,SAAS,CAAC,aAAa;;;;;uCAK3B,SAAS,CAAC,OAAO;;;;;+CAKT,SAAS,CAAC,aAAa;uCAC/B,SAAS,CAAC,OAAO;;;;;;gCAMxB,SAAS,CAAC,OAAO;;;;;wCAKT,SAAS,CAAC,eAAe;;;;4BAIrC,SAAS,CAAC,UAAU;;;;;sDAKM,SAAS,CAAC,kBAAkB;+CACnC,SAAS,CAAC,eAAe;;CAEvE,CAAC;AAKF,SAAS,MAAM,CAAC,KAAkB;IAC9B,OAAO,CACH,MAAC,MAAM,eACH,KAAC,KAAK,oBAAK,KAAK,IAAE,IAAI,EAAC,UAAU,IAAG,EACpC,gBAAa,EACb,yBAAO,KAAK,CAAC,KAAK,GAAQ,IACrB,CACZ,CAAC;AACN,CAAC;AAED,MAAM,CAAC,SAAS,GAAG;IACf,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAC,MAAM;CAC1B,CAAA;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../src/components/Input/Toggle.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAA;;;;CAI1B,CAAC;AAEF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;;;;;;;;;4BASE,SAAS,CAAC,UAAU;;;;;;;;;;;;;mDAaG,SAAS,CAAC,eAAe;;8CAE9B,SAAS,CAAC,UAAU;;;;;;2CAMvB,SAAS,CAAC,aAAa;;;;;uCAK3B,SAAS,CAAC,OAAO;;;;;+CAKT,SAAS,CAAC,aAAa;uCAC/B,SAAS,CAAC,OAAO;;;;;;gCAMxB,SAAS,CAAC,OAAO;;;;;wCAKT,SAAS,CAAC,eAAe;;;;4BAIrC,SAAS,CAAC,UAAU;;;;;sDAKM,SAAS,CAAC,kBAAkB;+CACnC,SAAS,CAAC,eAAe;;CAEvE,CAAC;AAMF,SAAS,MAAM,CAAC,KAAkB;IAC9B,OAAO,CACH,MAAC,MAAM,eACH,KAAC,KAAK,oBAAK,KAAK,IAAE,IAAI,EAAC,UAAU,IAAG,EACpC,gBAAa,EACb,yBAAO,KAAK,CAAC,KAAK,GAAQ,IACrB,CACZ,CAAC;AACN,CAAC;AAED,MAAM,CAAC,SAAS,GAAG;IACf,0BAA0B;IAC1B,KAAK,EAAE,SAAS,CAAC,MAAM;CAC1B,CAAC;AAEF,eAAe,MAAM,CAAC","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport constants from '../../shared/constants';\n\nconst Switch = styled.label`\n position: relative;\n display: inline-flex;\n margin: 5px 0;\n`;\n\nconst Input = styled.input`\n appearance: none;\n margin: 0;\n\n & + span {\n position: relative;\n cursor: pointer;\n width: 30px;\n height: 18px;\n background-color: ${constants.LIGHT_GREY};\n transition: 0.4s;\n border-radius: 10px;\n padding: 0 3px;\n margin: 0 10px 0 5px;\n }\n & + span:before {\n position: absolute;\n content: '';\n height: 14px;\n width: 14px;\n left: 1px;\n top: 1px;\n border: 1px solid var(--disabled-border, ${constants.DISABLED_BORDER});\n border-radius: 50%;\n background-color: var(--background, ${constants.BACKGROUND});\n transition: 0.4s;\n }\n\n /* checked */\n &:checked + span {\n background-color: var(--primary, ${constants.PRIMARY_LIGHT});\n }\n\n &:checked + span:before {\n transform: translateX(18px);\n border-color: var(--primary, ${constants.PRIMARY});\n }\n\n /* focus */\n &:enabled:focus + span:before {\n box-shadow: 0 0 0 3px var(--primary, ${constants.PRIMARY_LIGHT});\n border-color: var(--primary, ${constants.PRIMARY});\n }\n\n /* hover */\n &:enabled:hover ~ span {\n cursor: pointer;\n color: var(--primary, ${constants.PRIMARY});\n }\n\n /* disabled */\n &:disabled ~ span {\n color: var(--disabled-border, ${constants.DISABLED_BORDER});\n }\n\n &:disabled + span {\n background-color: ${constants.LIGHT_GREY};\n cursor: not-allowed;\n }\n\n &:disabled + span:before {\n background-color: var(--border-light-color, ${constants.BORDER_LIGHT_COLOR});\n border-color: var(--disabled-border, ${constants.DISABLED_BORDER});\n }\n`;\n\ntype ToggleProps = PropTypes.InferProps<\n React.AllHTMLAttributes<HTMLInputElement> & typeof Toggle.propTypes\n>;\n\nfunction Toggle(props: ToggleProps) {\n return (\n <Switch>\n <Input {...props} type=\"checkbox\" />\n <span></span>\n <span>{props.label}</span>\n </Switch>\n );\n}\n\nToggle.propTypes = {\n /** Label for the field */\n label: PropTypes.string,\n};\n\nexport default Toggle;\n"]}
@@ -6,3 +6,4 @@ export { default as Toggle } from './Toggle';
6
6
  export { default as Radio } from './Radio';
7
7
  export { default as RadioButton, RadioGroup } from './RadioButton';
8
8
  export { default as Dropdown } from './Dropdown';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Input/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC","sourcesContent":["export { default as Input } from './Input';\nexport { default as TextArea } from './TextArea';\nexport { default as Select } from './Select';\nexport { default as Checkbox } from './Checkbox';\nexport { default as Toggle } from './Toggle';\nexport { default as Radio } from './Radio';\nexport { default as RadioButton, RadioGroup } from './RadioButton';\nexport { default as Dropdown } from './Dropdown';\n"]}