@occmundial/occ-atomic 2.0.0-beta.0 → 2.0.0-beta.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (309) hide show
  1. package/.prettierrc +6 -0
  2. package/.whitesource +12 -0
  3. package/CHANGELOG.md +1354 -581
  4. package/CONTRIBUTING.md +24 -0
  5. package/README.md +21 -21
  6. package/build/Autocomplete/Autocomplete.js +35 -23
  7. package/build/Autocomplete/Autocomplete.test.js +14 -14
  8. package/build/Autocomplete/__snapshots__/Autocomplete.test.js.snap +20 -0
  9. package/build/Avatar/Avatar.js +21 -17
  10. package/build/Avatar/Avatar.test.js +2 -2
  11. package/build/Avatar/AvatarContent/AvatarContent.js +5 -5
  12. package/build/Avatar/AvatarContent/AvatarContent.test.js +6 -6
  13. package/build/Avatar/AvatarContent/__snapshots__/AvatarContent.test.js.snap +41 -0
  14. package/build/Avatar/AvatarContent/styles.js +10 -6
  15. package/build/Avatar/__snapshots__/Avatar.test.js.snap +17 -0
  16. package/build/Avatar/index.js +4 -2
  17. package/build/Banner/Banner.js +76 -0
  18. package/build/Banner/Banner.test.js +40 -0
  19. package/build/Banner/__snapshots__/Banner.test.js.snap +33 -0
  20. package/build/Banner/index.js +18 -0
  21. package/build/Banner/styles.js +41 -0
  22. package/build/Button/Button.js +66 -33
  23. package/build/Button/Button.test.js +23 -28
  24. package/build/Button/Loading.js +82 -0
  25. package/build/Button/__snapshots__/Button.test.js.snap +322 -0
  26. package/build/Button/index.js +4 -2
  27. package/build/Button/styles.js +185 -173
  28. package/build/ButtonAlign/ButtonAlign.js +86 -0
  29. package/build/ButtonAlign/ButtonAlign.test.js +50 -0
  30. package/build/ButtonAlign/__snapshots__/ButtonAlign.test.js.snap +19 -0
  31. package/build/ButtonAlign/index.js +18 -0
  32. package/build/ButtonAlign/styles.js +18 -0
  33. package/build/Card/Card.js +1 -1
  34. package/build/Card/Card.test.js +4 -4
  35. package/build/Card/__snapshots__/Card.test.js.snap +46 -0
  36. package/build/Card/index.js +4 -2
  37. package/build/Check/Check.js +151 -0
  38. package/build/Check/Check.test.js +85 -0
  39. package/build/Check/__snapshots__/Check.test.js.snap +92 -0
  40. package/build/Check/index.js +18 -0
  41. package/build/Check/styles.js +100 -0
  42. package/build/Checkbox/Checkbox.js +29 -16
  43. package/build/Checkbox/Checkbox.test.js +8 -8
  44. package/build/Checkbox/__snapshots__/Checkbox.test.js.snap +92 -0
  45. package/build/Checkbox/index.js +4 -2
  46. package/build/Column/Column.js +67 -0
  47. package/build/Column/Column.test.js +59 -0
  48. package/build/Column/__snapshots__/Column.test.js.snap +647 -0
  49. package/build/Column/index.js +18 -0
  50. package/build/Column/styles.js +93 -0
  51. package/build/Container/Container.js +50 -0
  52. package/build/Container/Container.test.js +53 -0
  53. package/build/Container/__snapshots__/Container.test.js.snap +43 -0
  54. package/build/Container/index.js +18 -0
  55. package/build/Container/styles.js +49 -0
  56. package/build/Droplist/Droplist.js +82 -33
  57. package/build/Droplist/Droplist.test.js +50 -11
  58. package/build/Droplist/__snapshots__/Droplist.test.js.snap +65 -0
  59. package/build/Droplist/functions.js +9 -2
  60. package/build/Droplist/index.js +4 -2
  61. package/build/Droplist/styles.js +39 -10
  62. package/build/Flexbox/Flexbox.js +16 -12
  63. package/build/Flexbox/Flexbox.test.js +3 -3
  64. package/build/Flexbox/__snapshots__/Flexbox.test.js.snap +106 -0
  65. package/build/Flexbox/index.js +4 -2
  66. package/build/Footer/Footer.js +42 -30
  67. package/build/Footer/Footer.test.js +2 -2
  68. package/build/Footer/List/List.js +32 -25
  69. package/build/Footer/__snapshots__/Footer.test.js.snap +90 -0
  70. package/build/Footer/styles.js +5 -0
  71. package/build/Grid/Col/Col.js +1 -1
  72. package/build/Grid/Col/Col.test.js +3 -3
  73. package/build/Grid/Col/__snapshots__/Col.test.js.snap +963 -0
  74. package/build/Grid/Col/index.js +4 -2
  75. package/build/Grid/Grid.js +18 -12
  76. package/build/Grid/Row/Row.js +1 -1
  77. package/build/Grid/Row/Row.test.js +2 -2
  78. package/build/Grid/Row/__snapshots__/Row.test.js.snap +22 -0
  79. package/build/Grid/Row/index.js +4 -2
  80. package/build/Grid/index.js +4 -2
  81. package/build/Header/Header.js +163 -0
  82. package/build/Header/Header.test.js +118 -0
  83. package/build/Header/Menu/Menu.js +135 -0
  84. package/build/Header/Menu/Menu.test.js +107 -0
  85. package/build/Header/Menu/__snapshots__/Menu.test.js.snap +113 -0
  86. package/build/Header/Menu/index.js +18 -0
  87. package/build/Header/Menu/styles.js +123 -0
  88. package/build/Header/Nav/Nav.js +95 -0
  89. package/build/Header/Nav/Nav.test.js +81 -0
  90. package/build/Header/Nav/__snapshots__/Nav.test.js.snap +101 -0
  91. package/build/Header/Nav/index.js +18 -0
  92. package/build/Header/Nav/styles.js +110 -0
  93. package/build/Header/__snapshots__/Header.test.js.snap +79 -0
  94. package/build/Header/index.js +18 -0
  95. package/build/Header/styles.js +94 -0
  96. package/build/Hidden/Hidden.js +17 -13
  97. package/build/Hidden/Hidden.test.js +6 -6
  98. package/build/Hidden/__snapshots__/Hidden.test.js.snap +3 -0
  99. package/build/Hidden/index.js +4 -2
  100. package/build/Icon/Icon.js +85 -42
  101. package/build/Icon/Icon.test.js +15 -13
  102. package/build/Icon/__snapshots__/Icon.test.js.snap +32 -0
  103. package/build/Icon/index.js +4 -2
  104. package/build/Icon/styles.js +14 -4
  105. package/build/Input/Input.js +442 -0
  106. package/build/Input/Input.test.js +258 -0
  107. package/build/Input/__snapshots__/Input.test.js.snap +194 -0
  108. package/build/Input/index.js +78 -0
  109. package/build/Input/styles.js +202 -0
  110. package/build/Input/stylesFlat.js +74 -0
  111. package/build/Label/Label.js +98 -0
  112. package/build/Label/Label.test.js +73 -0
  113. package/build/Label/__snapshots__/Label.test.js.snap +82 -0
  114. package/build/Label/index.js +18 -0
  115. package/build/Label/styles.js +90 -0
  116. package/build/LayerApp/LayerApp.js +113 -0
  117. package/build/LayerApp/LayerApp.test.js +56 -0
  118. package/build/LayerApp/__snapshots__/LayerApp.test.js.snap +37 -0
  119. package/build/LayerApp/index.js +18 -0
  120. package/build/LayerApp/styles.js +43 -0
  121. package/build/Modal/Modal.js +55 -37
  122. package/build/Modal/Modal.test.js +15 -12
  123. package/build/Modal/__snapshots__/Modal.test.js.snap +208 -0
  124. package/build/Modal/index.js +19 -13
  125. package/build/Modal/styles.js +43 -31
  126. package/build/NavAside/NavAside.js +24 -19
  127. package/build/NavAside/NavAside.test.js +15 -13
  128. package/build/NavAside/__snapshots__/NavAside.test.js.snap +116 -0
  129. package/build/NavAside/index.js +16 -12
  130. package/build/NavIcon/NavIcon.js +41 -20
  131. package/build/NavIcon/styles.js +6 -16
  132. package/build/NavItem/NavItem.js +29 -16
  133. package/build/NavTab/NavTab.js +38 -29
  134. package/build/NavTop/NavTop.js +20 -16
  135. package/build/OrderBy/OrderBy.js +23 -19
  136. package/build/OrderBy/OrderBy.test.js +6 -6
  137. package/build/OrderBy/__snapshots__/OrderBy.test.js.snap +54 -0
  138. package/build/Pager/Break/Break.js +1 -1
  139. package/build/Pager/Break/Break.test.js +4 -4
  140. package/build/Pager/Break/__snapshots__/Break.test.js.snap +13 -0
  141. package/build/Pager/Page/Page.js +1 -1
  142. package/build/Pager/Page/Page.test.js +5 -5
  143. package/build/Pager/Page/__snapshots__/Page.test.js.snap +27 -0
  144. package/build/Pager/Pager.js +21 -17
  145. package/build/Pager/Pager.test.js +10 -10
  146. package/build/Pager/__snapshots__/Pager.test.js.snap +50 -0
  147. package/build/Pager/styles.js +1 -1
  148. package/build/Pill/Choice/Choice.js +23 -18
  149. package/build/Pill/Choice/styles.js +8 -3
  150. package/build/Pill/Group/Group.js +7 -4
  151. package/build/Pill/Group/styles.js +7 -4
  152. package/build/Pill/Pill.js +36 -23
  153. package/build/Pill/Pill.test.js +12 -12
  154. package/build/Pill/Stack/Stack.js +10 -7
  155. package/build/Pill/Stack/styles.js +4 -1
  156. package/build/Pill/__snapshots__/Pill.test.js.snap +62 -0
  157. package/build/Pill/styles.js +6 -2
  158. package/build/Placeholder/Placeholder.js +2 -2
  159. package/build/Placeholder/Placeholder.test.js +3 -3
  160. package/build/Placeholder/__snapshots__/Placeholder.test.js.snap +130 -0
  161. package/build/Placeholder/styles.js +23 -16
  162. package/build/Provider/Provider.js +89 -0
  163. package/build/Provider/index.js +13 -0
  164. package/build/Provider/useAtomic.js +17 -0
  165. package/build/Provider/usePrevious.js +19 -0
  166. package/build/Radio/Radio.js +29 -15
  167. package/build/Radio/Radio.test.js +6 -6
  168. package/build/Radio/__snapshots__/Radio.test.js.snap +83 -0
  169. package/build/RangeCounter/RangeCounter.js +110 -0
  170. package/build/RangeCounter/RangeCounter.test.js +57 -0
  171. package/build/RangeCounter/__snapshots__/RangeCounter.test.js.snap +20 -0
  172. package/build/RangeCounter/index.js +18 -0
  173. package/build/RangeCounter/styles.js +26 -0
  174. package/build/Row/Row.js +41 -0
  175. package/build/Row/Row.test.js +40 -0
  176. package/build/Row/__snapshots__/Row.test.js.snap +22 -0
  177. package/build/Row/index.js +18 -0
  178. package/build/Row/styles.js +21 -0
  179. package/build/SightLogo/SightLogo.js +41 -0
  180. package/build/SightLogo/SightLogo.test.js +40 -0
  181. package/build/SightLogo/__snapshots__/SightLogo.test.js.snap +24 -0
  182. package/build/SightLogo/index.js +18 -0
  183. package/build/SightLogo/styles.js +28 -0
  184. package/build/SlideDown/SlideDown.js +41 -27
  185. package/build/SlideDown/SlideDown.test.js +22 -16
  186. package/build/SlideDown/__snapshots__/SlideDown.test.js.snap +42 -0
  187. package/build/SlideToggle/SlideToggle.js +31 -17
  188. package/build/SlideToggle/SlideToggle.test.js +7 -7
  189. package/build/SlideToggle/__snapshots__/SlideToggle.test.js.snap +62 -0
  190. package/build/SubHeader/SubHeader.js +113 -0
  191. package/build/SubHeader/SubHeader.test.js +81 -0
  192. package/build/SubHeader/__snapshots__/SubHeader.test.js.snap +50 -0
  193. package/build/SubHeader/index.js +18 -0
  194. package/build/SubHeader/styles.js +59 -0
  195. package/build/SwitchGroup/SwitchGroup.js +114 -0
  196. package/build/SwitchGroup/SwitchGroup.test.js +91 -0
  197. package/build/SwitchGroup/__snapshots__/SwitchGroup.test.js.snap +52 -0
  198. package/build/SwitchGroup/index.js +18 -0
  199. package/build/SwitchGroup/styles.js +58 -0
  200. package/build/Tag/Tag.js +27 -10
  201. package/build/Tag/Tag.test.js +8 -8
  202. package/build/Tag/__snapshots__/Tag.test.js.snap +137 -0
  203. package/build/Tag/styles.js +72 -27
  204. package/build/Text/Text.js +454 -122
  205. package/build/Text/Text.test.js +13 -13
  206. package/build/Text/__snapshots__/Text.test.js.snap +216 -0
  207. package/build/Text/styles.js +171 -78
  208. package/build/TextField/TextField.js +151 -92
  209. package/build/TextField/TextField.test.js +27 -19
  210. package/build/TextField/__snapshots__/TextField.test.js.snap +258 -0
  211. package/build/TextField/styles.js +74 -17
  212. package/build/Tip/Tip.js +91 -27
  213. package/build/Tip/Tip.test.js +8 -8
  214. package/build/Tip/__snapshots__/Tip.test.js.snap +49 -0
  215. package/build/Tip/styles.js +32 -12
  216. package/build/Title/Title.js +89 -0
  217. package/build/Title/Title.test.js +50 -0
  218. package/build/Title/__snapshots__/Title.test.js.snap +31 -0
  219. package/build/Title/index.js +18 -0
  220. package/build/Title/styles.js +37 -0
  221. package/build/Toaster/Toast/Toast.js +11 -11
  222. package/build/Toaster/Toaster.js +27 -23
  223. package/build/Toaster/Toaster.test.js +6 -6
  224. package/build/Toaster/__snapshots__/Toaster.test.js.snap +5 -0
  225. package/build/Tooltip/Tooltip.js +210 -0
  226. package/build/Tooltip/Tooltip.test.js +35 -0
  227. package/build/Tooltip/__snapshots__/Tooltip.test.js.snap +33 -0
  228. package/build/Tooltip/hooks.js +132 -0
  229. package/build/Tooltip/index.js +18 -0
  230. package/build/Tooltip/styles.js +44 -0
  231. package/build/TourTip/TourTip.js +152 -0
  232. package/build/TourTip/TourTip.test.js +45 -0
  233. package/build/TourTip/__snapshots__/TourTip.test.js.snap +74 -0
  234. package/build/TourTip/index.js +18 -0
  235. package/build/TourTip/styles.js +82 -0
  236. package/build/Visible/Visible.js +119 -0
  237. package/build/Visible/Visible.test.js +31 -0
  238. package/build/Visible/__snapshots__/Visible.test.js.snap +3 -0
  239. package/build/Visible/index.js +13 -0
  240. package/build/WindowSize/WindowSize.js +17 -11
  241. package/build/WindowSize/WindowSize.test.js +4 -4
  242. package/build/WindowSize/__snapshots__/WindowSize.test.js.snap +3 -0
  243. package/build/index.js +82 -8
  244. package/build/plugin/babel.js +61 -0
  245. package/build/subatomic/colors.js +8 -3
  246. package/build/subatomic/fonts.js +1 -1
  247. package/build/subatomic/icons/attachment.js +23 -0
  248. package/build/subatomic/icons/attachmentSolid.js +23 -0
  249. package/build/subatomic/icons/avatarSmile.js +23 -0
  250. package/build/subatomic/icons/book.js +23 -0
  251. package/build/subatomic/icons/cash.js +23 -0
  252. package/build/subatomic/icons/copy.js +23 -0
  253. package/build/subatomic/icons/copySolid.js +23 -0
  254. package/build/subatomic/icons/crossSolid.js +23 -0
  255. package/build/subatomic/icons/dislike.js +1 -1
  256. package/build/subatomic/icons/dislikeSolid.js +23 -0
  257. package/build/subatomic/icons/energy.js +23 -0
  258. package/build/subatomic/icons/energySolid.js +23 -0
  259. package/build/subatomic/icons/eye.js +1 -1
  260. package/build/subatomic/icons/eyeClosed.js +1 -1
  261. package/build/subatomic/icons/eyeClosedSolid.js +23 -0
  262. package/build/subatomic/icons/eyeSolid.js +23 -0
  263. package/build/subatomic/icons/hourGlass.js +23 -0
  264. package/build/subatomic/icons/like.js +1 -1
  265. package/build/subatomic/icons/likeSolid.js +23 -0
  266. package/build/subatomic/icons/location.js +23 -0
  267. package/build/subatomic/icons/locationSolid.js +23 -0
  268. package/build/subatomic/icons/matchJob.js +23 -0
  269. package/build/subatomic/icons/messages.js +1 -1
  270. package/build/subatomic/icons/messagesSolid.js +1 -1
  271. package/build/subatomic/icons/moreOptionsHorizontal.js +23 -0
  272. package/build/subatomic/icons/noMessages.js +23 -0
  273. package/build/subatomic/icons/noMessagesSolid.js +23 -0
  274. package/build/subatomic/icons/occDart.js +25 -8
  275. package/build/subatomic/icons/occHorizontal.js +25 -8
  276. package/build/subatomic/icons/occLogo.js +65 -0
  277. package/build/subatomic/icons/occVertical.js +25 -8
  278. package/build/subatomic/icons/profile.js +23 -0
  279. package/build/subatomic/icons/profileSolid.js +23 -0
  280. package/build/subatomic/icons/profileView.js +23 -0
  281. package/build/subatomic/icons/refresh.js +23 -0
  282. package/build/subatomic/icons/refreshSolid.js +23 -0
  283. package/build/subatomic/icons/sendMessage.js +23 -0
  284. package/build/subatomic/icons/sendMessageSolid.js +23 -0
  285. package/build/subatomic/icons/starsSolid.js +23 -0
  286. package/build/subatomic/icons/suitcase.js +23 -0
  287. package/build/subatomic/icons/suitcaseSolid.js +23 -0
  288. package/build/subatomic/icons/tag.js +1 -1
  289. package/build/subatomic/icons/tagSolid.js +23 -0
  290. package/build/subatomic/icons/trash.js +1 -1
  291. package/build/subatomic/icons/trashSolid.js +1 -1
  292. package/build/subatomic/icons/warning.js +23 -0
  293. package/build/subatomic/icons/warningSolid.js +23 -0
  294. package/build/subatomic/icons/webSite.js +23 -0
  295. package/build/subatomic/icons/webSiteSolid.js +23 -0
  296. package/build/subatomic/icons.js +230 -112
  297. package/build/subatomic/mappedIcons.js +171 -0
  298. package/build/tokens/borderRadius.json +8 -0
  299. package/build/tokens/colors.json +567 -0
  300. package/build/tokens/fonts.json +231 -0
  301. package/build/tokens/index.js +47 -0
  302. package/build/tokens/shadows.json +13 -0
  303. package/build/tokens/spacing.json +16 -0
  304. package/commitlint.config.js +6 -0
  305. package/package.json +124 -111
  306. package/playroom/FrameComponent.js +31 -22
  307. package/playroom/styles.js +14 -14
  308. package/playroom.config.js +7 -7
  309. package/yarn-error.log +0 -10737
@@ -0,0 +1,258 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _enzyme = require("enzyme");
6
+
7
+ var _Input = _interopRequireDefault(require("./Input"));
8
+
9
+ var _styles = _interopRequireDefault(require("./styles"));
10
+
11
+ var _index = _interopRequireDefault(require("./index"));
12
+
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
+
15
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
+
17
+ var reduceClasses = function reduceClasses(prev, curr) {
18
+ return Object.assign({}, prev, _defineProperty({}, curr, curr));
19
+ };
20
+
21
+ var classes = Object.keys(_styles["default"]).reduce(reduceClasses, {});
22
+ describe("Input", function () {
23
+ it('matches the snapshot', function () {
24
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
25
+ classes: classes
26
+ }));
27
+ expect(wrapper).toMatchSnapshot();
28
+ });
29
+ it('renders the right html tag', function () {
30
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
31
+ classes: classes
32
+ }));
33
+ expect(wrapper.find('.input').type()).toBe('input');
34
+ wrapper.setProps({
35
+ type: 'textarea'
36
+ });
37
+ expect(wrapper.find('.input').type()).toBe('textarea');
38
+ wrapper.setProps({
39
+ type: 'select',
40
+ options: []
41
+ });
42
+ expect(wrapper.find('.input').type()).toBe('select');
43
+ });
44
+ it('renders the right type of input', function () {
45
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
46
+ classes: classes
47
+ }));
48
+ expect(wrapper.find('.input').prop('type')).toBe('text');
49
+ wrapper.setProps({
50
+ type: 'email'
51
+ });
52
+ expect(wrapper.find('.input').prop('type')).toBe('email');
53
+ wrapper.setProps({
54
+ type: 'number'
55
+ });
56
+ expect(wrapper.find('.input').prop('type')).toBe('number');
57
+ });
58
+ it('sets the maxLength property', function () {
59
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
60
+ classes: classes,
61
+ maxLength: 2
62
+ }));
63
+ expect(wrapper.find('.input').prop('maxLength')).toBe(2);
64
+ });
65
+ it('shows a counter with the remaining characters', function () {
66
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
67
+ classes: classes,
68
+ maxLength: 50,
69
+ counter: true
70
+ }));
71
+ expect(wrapper.find('.counter').length).toBe(0);
72
+ wrapper.setState({
73
+ status: 'focus'
74
+ });
75
+ expect(wrapper.find('.counter').length).toBe(1);
76
+ expect(wrapper.find('.counter').text()).toBe('50');
77
+ wrapper.setState({
78
+ value: '1234567890'
79
+ });
80
+ expect(wrapper.find('.counter').text()).toBe('40');
81
+ });
82
+ it('renders a label and a placeholder in the input', function () {
83
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
84
+ classes: classes,
85
+ label: "Label",
86
+ placeholder: "Placeholder"
87
+ }));
88
+ expect(wrapper.find('.label').length).toBe(1);
89
+ expect(wrapper.find('.label').text()).toBe('Label');
90
+ expect(wrapper.find('.input').prop('placeholder')).toBe('Placeholder');
91
+ });
92
+ it('renders a placeholder that works as a label on focus', function () {
93
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
94
+ classes: classes,
95
+ placeholder: "Placeholder"
96
+ }));
97
+ expect(wrapper.find('.placeholder').length).toBe(1);
98
+ expect(wrapper.find('.placeholder').text()).toBe('Placeholder');
99
+ expect(wrapper.find('.container').hasClass('push')).toBe(true);
100
+ });
101
+ it('renders a static field when disabled', function () {
102
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
103
+ classes: classes
104
+ }));
105
+ expect(wrapper.find('.container').hasClass('disabled')).toBe(false);
106
+ expect(wrapper.find('.input').type()).toBe('input');
107
+ wrapper.setProps({
108
+ disabled: true
109
+ });
110
+ expect(wrapper.find('.container').hasClass('disabled')).toBe(true);
111
+ expect(wrapper.find('.input').type()).toBe('label');
112
+ });
113
+ it('sets the autoFocus property', function () {
114
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
115
+ classes: classes,
116
+ autoFocus: true
117
+ }));
118
+ expect(wrapper.find('.input').prop('autoFocus')).toBe(true);
119
+ });
120
+ it('shows an icon that clears the value on click', function () {
121
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
122
+ classes: classes,
123
+ clear: true
124
+ }));
125
+ expect(wrapper.find('.clear').length).toBe(0);
126
+ wrapper.setState({
127
+ value: 'Value'
128
+ });
129
+ expect(wrapper.find('.clear').length).toBe(1);
130
+ wrapper.find('.clear').simulate('click');
131
+ expect(wrapper.find('.clear').length).toBe(0);
132
+ expect(wrapper.state('value')).toBe('');
133
+ });
134
+ it('shows an error message', function () {
135
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
136
+ classes: classes,
137
+ error: "This field has an error"
138
+ }));
139
+ expect(wrapper.find('.error').length).toBe(0);
140
+ wrapper.setState({
141
+ touched: true
142
+ });
143
+ expect(wrapper.find('.error').length).toBe(2);
144
+ expect(wrapper.find('.error').at(0).hasClass('container')).toBe(true);
145
+ expect(wrapper.find('.error').at(1).text()).toBe('This field has an error');
146
+ });
147
+ it('shows the field as a valid value', function () {
148
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
149
+ classes: classes,
150
+ valid: true
151
+ }));
152
+ expect(wrapper.find('.container').hasClass('correct')).toBe(false);
153
+ wrapper.setState({
154
+ touched: true
155
+ });
156
+ expect(wrapper.find('.container').hasClass('correct')).toBe(true);
157
+ });
158
+ it('sets a default value', function () {
159
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
160
+ classes: classes,
161
+ valueProp: "Value"
162
+ }));
163
+ expect(wrapper.state('value')).toBe('Value');
164
+ });
165
+ it('calls the onFocus function', function () {
166
+ var onFocus = jest.fn();
167
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
168
+ classes: classes,
169
+ onFocus: onFocus
170
+ }));
171
+ wrapper.find('.input').simulate('focus', {
172
+ target: {}
173
+ });
174
+ expect(onFocus.mock.calls.length).toBe(1);
175
+ });
176
+ it('calls the onBlur function', function () {
177
+ var onBlur = jest.fn();
178
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
179
+ classes: classes,
180
+ onBlur: onBlur
181
+ }));
182
+ wrapper.find('.input').simulate('blur', {
183
+ target: {
184
+ value: 'Value'
185
+ }
186
+ });
187
+ expect(onBlur.mock.calls.length).toBe(1);
188
+ });
189
+ it('calls the onChange function', function () {
190
+ var onChange = jest.fn();
191
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
192
+ classes: classes,
193
+ onChange: onChange
194
+ }));
195
+ wrapper.find('.input').simulate('change', {
196
+ target: {}
197
+ });
198
+ expect(onChange.mock.calls.length).toBe(1);
199
+ });
200
+ it('calls the onClear function', function () {
201
+ var onClear = jest.fn();
202
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
203
+ classes: classes,
204
+ clear: true,
205
+ onClear: onClear,
206
+ valueProp: "Value"
207
+ }));
208
+ wrapper.find('.clear').simulate('click');
209
+ expect(onClear.mock.calls.length).toBe(1);
210
+ });
211
+ it('calls the onRef function', function () {
212
+ var onRef = jest.fn();
213
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
214
+ classes: classes,
215
+ onRef: onRef
216
+ }));
217
+ wrapper.update();
218
+ expect(onRef.mock.calls.length).toBe(1);
219
+ });
220
+ it('renders the options of the select', function () {
221
+ var options = [{
222
+ value: 1,
223
+ text: 'Option 1'
224
+ }, {
225
+ value: 2,
226
+ text: 'Option 2'
227
+ }];
228
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
229
+ classes: classes,
230
+ type: "select",
231
+ options: options
232
+ }));
233
+ expect(wrapper.find('option').length).toBe(2);
234
+ expect(wrapper.find('option').at(0).text()).toBe('Option 1');
235
+ expect(wrapper.find('option').at(0).prop('value')).toBe(1);
236
+ });
237
+ it('shows an icon', function () {
238
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_Input["default"], {
239
+ classes: classes
240
+ }));
241
+ expect(wrapper.find('.icon').length).toBe(0);
242
+ wrapper.setProps({
243
+ iconName: 'search'
244
+ });
245
+ expect(wrapper.find('.icon').length).toBe(1);
246
+ });
247
+ });
248
+ describe("InputJSS", function () {
249
+ it('matches the snapshot', function () {
250
+ var wrapper = (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_index["default"], null));
251
+ expect(wrapper).toMatchSnapshot();
252
+ });
253
+ });
254
+ describe("Input styles", function () {
255
+ it('matches the snapshot', function () {
256
+ expect(_styles["default"]).toMatchSnapshot();
257
+ });
258
+ });
@@ -0,0 +1,194 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Input matches the snapshot 1`] = `ShallowWrapper {}`;
4
+
5
+ exports[`Input styles matches the snapshot 1`] = `
6
+ Object {
7
+ "clear": Object {
8
+ "background": "none",
9
+ "border": "0",
10
+ "cursor": "pointer",
11
+ "margin": "0",
12
+ "outline": "0",
13
+ "padding": "0",
14
+ "position": "absolute",
15
+ "right": "0",
16
+ "top": "20px",
17
+ },
18
+ "complete": Object {
19
+ "& $input": Object {
20
+ "borderColor": "#000000",
21
+ },
22
+ "& $placeholder": Object {
23
+ "color": "#000000",
24
+ },
25
+ "& $pushHolder": Object {
26
+ "left": "0",
27
+ },
28
+ "color": "#000000",
29
+ },
30
+ "container": Object {
31
+ "marginBottom": "16px",
32
+ "paddingBottom": "11px",
33
+ "position": "relative",
34
+ },
35
+ "correct": Object {
36
+ "& $input": Object {
37
+ "borderColor": "#09ba8a",
38
+ },
39
+ "& $placeholder": Object {
40
+ "color": "#09ba8a",
41
+ },
42
+ "& $pushHolder": Object {
43
+ "left": "0",
44
+ },
45
+ "color": "#09ba8a",
46
+ },
47
+ "counter": Object {
48
+ "position": "absolute",
49
+ "right": "0",
50
+ "top": "0",
51
+ },
52
+ "default": Object {
53
+ "& $input": Object {
54
+ "borderColor": "#bfbfbf",
55
+ },
56
+ "& $placeholder": Object {
57
+ "color": "#a7a7a7",
58
+ "fontSize": "16px",
59
+ "top": "20px",
60
+ },
61
+ "color": "#b0b0b0",
62
+ },
63
+ "disabled": Object {
64
+ "& $input": Object {
65
+ "borderColor": "#bfbfbf",
66
+ "color": "#bfbfbf",
67
+ },
68
+ "& $placeholder": Object {
69
+ "color": "#cdcdcd",
70
+ "fontSize": "16px",
71
+ "top": "20px",
72
+ },
73
+ "& $pushHolder": Object {
74
+ "left": "0",
75
+ },
76
+ "color": "#bfbfbf",
77
+ },
78
+ "error": Object {
79
+ "& $input": Object {
80
+ "borderColor": "#ef2525",
81
+ },
82
+ "& $placeholder": Object {
83
+ "color": "#ef2525",
84
+ },
85
+ "& $pushHolder": Object {
86
+ "left": "0",
87
+ },
88
+ "color": "#ef2525",
89
+ },
90
+ "expanded": Object {
91
+ "height": "80px",
92
+ },
93
+ "focus": Object {
94
+ "& $inputWrap:after": Object {
95
+ "left": "0",
96
+ "width": "100%",
97
+ },
98
+ "& $placeholder": Object {
99
+ "color": "#1476fb",
100
+ },
101
+ "& $pushHolder": Object {
102
+ "left": "0",
103
+ },
104
+ "color": "#1476fb",
105
+ },
106
+ "hasClear": Object {
107
+ "paddingRight": "24px",
108
+ },
109
+ "hasIcon": Object {
110
+ "paddingLeft": "24px",
111
+ },
112
+ "icon": Object {
113
+ "left": "0",
114
+ "position": "absolute",
115
+ "top": "19px",
116
+ },
117
+ "input": Object {
118
+ "&::placeholder": Object {
119
+ "color": "#a7a7a7",
120
+ },
121
+ "alignItems": "center",
122
+ "background": "transparent",
123
+ "border": "0",
124
+ "borderBottom": "1px solid #bfbfbf",
125
+ "boxSizing": "border-box",
126
+ "color": "#222222",
127
+ "display": "flex",
128
+ "fontFamily": "'OccText', sans-serif",
129
+ "fontSize": "16px",
130
+ "fontWeight": "normal",
131
+ "height": "34px",
132
+ "lineHeight": "16px",
133
+ "marginBottom": "4px",
134
+ "outline": "none",
135
+ "padding": "10px 0",
136
+ "transition": "0.3s all",
137
+ "width": "100%",
138
+ },
139
+ "inputWrap": Object {
140
+ "&:after": Object {
141
+ "background": "#1476fb",
142
+ "bottom": "0",
143
+ "content": "\\"\\"",
144
+ "display": "block",
145
+ "height": "1px",
146
+ "left": "50%",
147
+ "position": "absolute",
148
+ "transition": "0.3s all",
149
+ "width": "0",
150
+ },
151
+ "boxSizing": "border-box",
152
+ "position": "relative",
153
+ },
154
+ "label": Object {
155
+ "boxSizing": "border-box",
156
+ "display": "inline-block",
157
+ "float": "left",
158
+ "fontFamily": "'OccText', sans-serif",
159
+ "fontSize": "11px",
160
+ "fontWeight": "normal",
161
+ "marginBottom": "0",
162
+ "maxWidth": "100%",
163
+ "transition": "0.3s all",
164
+ },
165
+ "left": Object {
166
+ "float": "left",
167
+ },
168
+ "placeholder": Object {
169
+ "fontSize": "11px",
170
+ "pointerEvents": "none",
171
+ "position": "absolute",
172
+ "top": "0",
173
+ },
174
+ "push": Object {
175
+ "paddingTop": "15px",
176
+ },
177
+ "pushHolder": Object {
178
+ "left": "24px",
179
+ },
180
+ "select": Object {
181
+ "appearance": "none",
182
+ "background": "url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgogICAgICAgICAgICAJIHZpZXdCb3g9IjAgMCAxNCAxNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTQgMTQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KICAgICAgICAgICAgPHBhdGggZmlsbD0iIzRFNjI3MyIgZD0iTTExLjUsNC4ybDAuMywwLjRjMC4xLDAuMSwwLjEsMC4yLDAsMC4zTDcuMSw5LjhjLTAuMSwwLjEtMC4yLDAuMS0wLjMsMGMwLDAsMCwwLDAsMEwyLjEsNC44CiAgICAgICAgICAgIAljLTAuMS0wLjEtMC4xLTAuMiwwLTAuM2wwLjMtMC40YzAuMS0wLjEsMC4yLTAuMSwwLjMsMGMwLDAsMCwwLDAsMGw0LjEsNC40YzAuMSwwLjEsMC4yLDAuMSwwLjMsMGMwLDAsMCwwLDAsMGw0LjEtNC40CiAgICAgICAgICAgIAlDMTEuMyw0LjEsMTEuNCw0LjEsMTEuNSw0LjJDMTEuNSw0LjEsMTEuNSw0LjIsMTEuNSw0LjJ6Ii8+CiAgICAgICAgICAgIDwvc3ZnPg==)",
183
+ "backgroundPosition": "calc(100% - 5px) 5px",
184
+ "backgroundSize": "24px 24px",
185
+ "padding": "0",
186
+ },
187
+ "textarea": Object {
188
+ "lineHeight": "22px",
189
+ "padding": "5px 0",
190
+ },
191
+ }
192
+ `;
193
+
194
+ exports[`InputJSS matches the snapshot 1`] = `ShallowWrapper {}`;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _reactJss = _interopRequireDefault(require("react-jss"));
15
+
16
+ var _Input = _interopRequireDefault(require("./Input"));
17
+
18
+ var _styles = _interopRequireDefault(require("./styles"));
19
+
20
+ var _stylesFlat = _interopRequireDefault(require("./stylesFlat"));
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
+
24
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
25
+
26
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
27
+
28
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
29
+
30
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
31
+
32
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
33
+
34
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
35
+
36
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
37
+
38
+ function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
39
+
40
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
41
+
42
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
43
+
44
+ var InputDefault = (0, _reactJss["default"])(_styles["default"])(_Input["default"]);
45
+ var InputFlat = (0, _reactJss["default"])(_stylesFlat["default"])(_Input["default"]);
46
+
47
+ var StyledInput = /*#__PURE__*/function (_React$Component) {
48
+ _inherits(StyledInput, _React$Component);
49
+
50
+ var _super = _createSuper(StyledInput);
51
+
52
+ function StyledInput() {
53
+ _classCallCheck(this, StyledInput);
54
+
55
+ return _super.apply(this, arguments);
56
+ }
57
+
58
+ _createClass(StyledInput, [{
59
+ key: "render",
60
+ value: function render() {
61
+ var theme = this.props.theme;
62
+
63
+ if (theme != 'flat') {
64
+ return /*#__PURE__*/_react["default"].createElement(InputDefault, this.props);
65
+ } else {
66
+ return /*#__PURE__*/_react["default"].createElement(InputFlat, this.props);
67
+ }
68
+ }
69
+ }]);
70
+
71
+ return StyledInput;
72
+ }(_react["default"].Component);
73
+
74
+ StyledInput.propTypes = {
75
+ theme: _propTypes["default"].string
76
+ };
77
+ var _default = StyledInput;
78
+ exports["default"] = _default;