linear-react-components-ui 1.0.2 → 1.0.3-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/lib/@types/Align.d.ts +1 -1
  2. package/lib/@types/ButtonTypes.d.ts +1 -1
  3. package/lib/@types/ColorStyles.d.ts +1 -1
  4. package/lib/@types/DataCombo.d.ts +1 -1
  5. package/lib/@types/Icon.d.ts +1 -1
  6. package/lib/@types/LabelStyles.d.ts +1 -1
  7. package/lib/@types/Period.d.ts +1 -1
  8. package/lib/@types/PermissionAttr.d.ts +2 -2
  9. package/lib/@types/PointerEvents.d.ts +1 -1
  10. package/lib/@types/Position.d.ts +1 -1
  11. package/lib/@types/PositionAlert.d.ts +1 -1
  12. package/lib/@types/Size.d.ts +1 -1
  13. package/lib/@types/SizePixels.d.ts +1 -1
  14. package/lib/alerts/AlertContainer.js +21 -5
  15. package/lib/alerts/AlertProvider.js +45 -15
  16. package/lib/alerts/BaseAlert.js +20 -4
  17. package/lib/alerts/Message.js +32 -21
  18. package/lib/alerts/alert.spec.js +133 -0
  19. package/lib/alerts/helpers.js +2 -0
  20. package/lib/alerts/index.d.ts +1 -4
  21. package/lib/alerts/index.js +4 -0
  22. package/lib/alerts/types.d.ts +4 -4
  23. package/lib/alerts/withAlert.js +12 -1
  24. package/lib/avatar/avatar.spec.js +190 -0
  25. package/lib/avatar/index.js +35 -20
  26. package/lib/badge/badge.spec.js +127 -0
  27. package/lib/badge/index.js +14 -9
  28. package/lib/buttons/ActivateButton.js +6 -0
  29. package/lib/buttons/AddButton.js +7 -0
  30. package/lib/buttons/Button.js +15 -2
  31. package/lib/buttons/ButtonGroups.js +4 -0
  32. package/lib/buttons/CancelButton.js +11 -1
  33. package/lib/buttons/DangerButton.js +11 -1
  34. package/lib/buttons/DefaultButton.js +81 -45
  35. package/lib/buttons/DestroyButton.js +12 -1
  36. package/lib/buttons/EditButton.js +6 -0
  37. package/lib/buttons/InactivateButton.js +6 -0
  38. package/lib/buttons/InfoButton.js +11 -1
  39. package/lib/buttons/PrimaryButton.js +11 -1
  40. package/lib/buttons/RestoreButton.js +6 -0
  41. package/lib/buttons/SaveButton.js +11 -1
  42. package/lib/buttons/SpinnerLoading.js +230 -0
  43. package/lib/buttons/SuccessButton.js +11 -1
  44. package/lib/buttons/WarningButton.js +11 -1
  45. package/lib/buttons/button_container/index.js +11 -5
  46. package/lib/buttons/buttons.spec.js +504 -0
  47. package/lib/buttons/index.d.ts +1 -4
  48. package/lib/buttons/index.js +18 -0
  49. package/lib/buttons/split_button/index.js +17 -11
  50. package/lib/calendar/DangerCalendar.js +11 -1
  51. package/lib/calendar/InfoCalendar.js +11 -1
  52. package/lib/calendar/PrimaryCalendar.js +11 -1
  53. package/lib/calendar/SuccessCalendar.js +11 -1
  54. package/lib/calendar/WarningCalendar.js +11 -1
  55. package/lib/calendar/base/Day.js +13 -2
  56. package/lib/calendar/base/Month.js +18 -1
  57. package/lib/calendar/base/Week.js +18 -2
  58. package/lib/calendar/base/helpers.js +24 -8
  59. package/lib/calendar/base/index.js +37 -13
  60. package/lib/calendar/calendar.spec.js +171 -0
  61. package/lib/calendar/index.d.ts +1 -4
  62. package/lib/calendar/index.js +8 -0
  63. package/lib/checkbox/Label.js +7 -1
  64. package/lib/checkbox/checkbox.spec.js +215 -0
  65. package/lib/checkbox/index.js +53 -28
  66. package/lib/checkbox/types.d.ts +2 -2
  67. package/lib/dialog/Alert.js +8 -0
  68. package/lib/dialog/Custom.js +17 -5
  69. package/lib/dialog/Error.js +8 -0
  70. package/lib/dialog/Information.js +8 -0
  71. package/lib/dialog/Question.js +15 -4
  72. package/lib/dialog/Warning.js +8 -0
  73. package/lib/dialog/base/Content.js +6 -1
  74. package/lib/dialog/base/Footer.js +4 -0
  75. package/lib/dialog/base/Header.js +13 -5
  76. package/lib/dialog/base/index.js +28 -7
  77. package/lib/dialog/base/style.js +2 -0
  78. package/lib/dialog/dialog.spec.js +488 -0
  79. package/lib/dialog/form/index.js +29 -9
  80. package/lib/dialog/index.d.ts +1 -4
  81. package/lib/dialog/index.js +9 -0
  82. package/lib/drawer/Content.d.ts +0 -1
  83. package/lib/drawer/Content.js +13 -2
  84. package/lib/drawer/Drawer.d.ts +0 -1
  85. package/lib/drawer/Drawer.js +55 -22
  86. package/lib/drawer/Drawer.spec.js +258 -0
  87. package/lib/drawer/Header.d.ts +0 -1
  88. package/lib/drawer/Header.js +27 -10
  89. package/lib/drawer/helpers.d.ts +0 -1
  90. package/lib/drawer/helpers.js +4 -0
  91. package/lib/drawer/index.d.ts +0 -1
  92. package/lib/drawer/index.js +8 -0
  93. package/lib/drawer/types.d.ts +1 -2
  94. package/lib/dropdown/Popup.js +32 -19
  95. package/lib/dropdown/dropdown.spec.js +169 -0
  96. package/lib/dropdown/helper.js +4 -0
  97. package/lib/dropdown/withDropdown.js +47 -18
  98. package/lib/fieldset/fieldset.spec.js +329 -0
  99. package/lib/fieldset/index.js +46 -21
  100. package/lib/form/Field.js +42 -16
  101. package/lib/form/FieldArray.js +32 -15
  102. package/lib/form/FieldNumber.js +20 -6
  103. package/lib/form/FieldPeriod.js +21 -9
  104. package/lib/form/form.spec.js +293 -0
  105. package/lib/form/helpers.js +30 -5
  106. package/lib/form/index.js +91 -36
  107. package/lib/form/types.d.ts +6 -6
  108. package/lib/form/withFieldHOC.js +34 -15
  109. package/lib/form/withFormSecurity.js +28 -5
  110. package/lib/gridlayout/GridCol.js +11 -5
  111. package/lib/gridlayout/GridRow.js +9 -3
  112. package/lib/gridlayout/gridLayout.spec.js +169 -0
  113. package/lib/gridlayout/index.d.ts +1 -4
  114. package/lib/gridlayout/index.js +4 -0
  115. package/lib/icons/icons.spec.js +86 -0
  116. package/lib/icons/index.js +26 -16
  117. package/lib/icons/types.d.ts +1 -1
  118. package/lib/index.d.ts +1 -1
  119. package/lib/index.js +10 -0
  120. package/lib/inputs/base/InputTextBase.js +75 -50
  121. package/lib/inputs/base/base.spec.js +690 -0
  122. package/lib/inputs/base/helpers.d.ts +1 -1
  123. package/lib/inputs/base/helpers.js +40 -7
  124. package/lib/inputs/base/index.js +1 -0
  125. package/lib/inputs/base/types.d.ts +1 -0
  126. package/lib/inputs/color/color_input.spec.js +174 -0
  127. package/lib/inputs/color/index.js +38 -11
  128. package/lib/inputs/date/Dialog.js +7 -2
  129. package/lib/inputs/date/Dropdown.js +8 -1
  130. package/lib/inputs/date/date.spec.js +354 -0
  131. package/lib/inputs/date/helpers.js +11 -2
  132. package/lib/inputs/date/index.js +101 -48
  133. package/lib/inputs/file/DefaultFile.js +42 -13
  134. package/lib/inputs/file/DragDropFile.js +90 -37
  135. package/lib/inputs/file/File.js +25 -4
  136. package/lib/inputs/file/FileButtonSettings.js +11 -5
  137. package/lib/inputs/file/helpers.js +5 -0
  138. package/lib/inputs/file/index.d.ts +1 -4
  139. package/lib/inputs/file/index.js +6 -0
  140. package/lib/inputs/file/types.d.ts +1 -1
  141. package/lib/inputs/inputHOC.d.ts +1 -2
  142. package/lib/inputs/inputHOC.js +34 -10
  143. package/lib/inputs/mask/BaseMask.js +17 -1
  144. package/lib/inputs/mask/Cnpj.js +37 -12
  145. package/lib/inputs/mask/Cpf.js +33 -10
  146. package/lib/inputs/mask/Phone.js +6 -0
  147. package/lib/inputs/mask/ZipCode.js +6 -0
  148. package/lib/inputs/mask/helpers.d.ts +1 -2
  149. package/lib/inputs/mask/helpers.js +20 -8
  150. package/lib/inputs/mask/imaskHOC.d.ts +1 -2
  151. package/lib/inputs/mask/imaskHOC.js +83 -52
  152. package/lib/inputs/mask/index.d.ts +1 -4
  153. package/lib/inputs/mask/index.js +7 -0
  154. package/lib/inputs/mask/input_mask.spec.js +607 -0
  155. package/lib/inputs/multiSelect/ActionButtons.js +13 -4
  156. package/lib/inputs/multiSelect/Dropdown.js +45 -22
  157. package/lib/inputs/multiSelect/helper.js +4 -2
  158. package/lib/inputs/multiSelect/index.js +104 -40
  159. package/lib/inputs/number/BaseNumber.d.ts +1 -2
  160. package/lib/inputs/number/BaseNumber.js +16 -3
  161. package/lib/inputs/number/Currency.d.ts +1 -2
  162. package/lib/inputs/number/Currency.js +7 -1
  163. package/lib/inputs/number/Decimal.d.ts +1 -2
  164. package/lib/inputs/number/Decimal.js +5 -0
  165. package/lib/inputs/number/format_number.js +7 -0
  166. package/lib/inputs/number/index.d.ts +1 -2
  167. package/lib/inputs/number/index.js +13 -3
  168. package/lib/inputs/number/numberfield.spec.js +215 -0
  169. package/lib/inputs/number/types.d.ts +1 -2
  170. package/lib/inputs/period/Dialog.js +7 -2
  171. package/lib/inputs/period/Dropdown.js +7 -0
  172. package/lib/inputs/period/PeriodList.js +7 -1
  173. package/lib/inputs/period/helper.js +12 -2
  174. package/lib/inputs/period/index.js +114 -43
  175. package/lib/inputs/period/types.d.ts +1 -1
  176. package/lib/inputs/search/index.d.ts +1 -2
  177. package/lib/inputs/search/index.js +68 -27
  178. package/lib/inputs/search/search_input.spec.js +209 -0
  179. package/lib/inputs/select/ActionButtons.d.ts +1 -2
  180. package/lib/inputs/select/ActionButtons.js +12 -4
  181. package/lib/inputs/select/Dropdown.d.ts +1 -2
  182. package/lib/inputs/select/Dropdown.js +48 -28
  183. package/lib/inputs/select/helper.d.ts +1 -2
  184. package/lib/inputs/select/helper.js +25 -9
  185. package/lib/inputs/select/index.d.ts +1 -1
  186. package/lib/inputs/select/index.js +18 -3
  187. package/lib/inputs/select/multiple/Selecteds.d.ts +1 -1
  188. package/lib/inputs/select/multiple/Selecteds.js +7 -3
  189. package/lib/inputs/select/multiple/index.d.ts +1 -1
  190. package/lib/inputs/select/multiple/index.js +96 -37
  191. package/lib/inputs/select/select.spec.js +395 -0
  192. package/lib/inputs/select/simple/index.d.ts +1 -1
  193. package/lib/inputs/select/simple/index.js +118 -54
  194. package/lib/inputs/select/types.d.ts +7 -2
  195. package/lib/inputs/text/index.js +5 -1
  196. package/lib/inputs/text/textfield.spec.js +215 -0
  197. package/lib/inputs/text/types.d.ts +1 -1
  198. package/lib/inputs/textarea/index.js +10 -4
  199. package/lib/inputs/textarea/textarea.spec.js +59 -0
  200. package/lib/inputs/types.d.ts +3 -9
  201. package/lib/internals/withTooltip.js +70 -25
  202. package/lib/labelMessages/index.js +45 -25
  203. package/lib/labelMessages/labelMessages.spec.js +176 -0
  204. package/lib/labels/DangerLabel.js +11 -1
  205. package/lib/labels/DefaultLabel.js +41 -19
  206. package/lib/labels/InfoLabel.js +11 -1
  207. package/lib/labels/PrimaryLabel.js +11 -1
  208. package/lib/labels/SuccessLabel.js +11 -1
  209. package/lib/labels/WarningLabel.js +11 -1
  210. package/lib/labels/index.d.ts +1 -4
  211. package/lib/labels/index.js +10 -0
  212. package/lib/labels/label.spec.js +162 -0
  213. package/lib/labels/label_container/index.js +7 -3
  214. package/lib/list/Header.js +7 -3
  215. package/lib/list/Item.js +68 -33
  216. package/lib/list/Separator.js +4 -0
  217. package/lib/list/helpers.js +4 -0
  218. package/lib/list/index.js +60 -25
  219. package/lib/list/list.spec.js +769 -0
  220. package/lib/list/types.d.ts +1 -1
  221. package/lib/menus/float/MenuItem.js +26 -9
  222. package/lib/menus/float/SubMenuContainer.js +17 -5
  223. package/lib/menus/float/float-menu.spec.js +221 -0
  224. package/lib/menus/float/helpers.js +4 -0
  225. package/lib/menus/float/index.js +21 -8
  226. package/lib/menus/index.d.ts +1 -4
  227. package/lib/menus/index.js +3 -0
  228. package/lib/menus/sidenav/ExpandMenu.js +7 -2
  229. package/lib/menus/sidenav/MenuLink.js +12 -3
  230. package/lib/menus/sidenav/NavMenuGroup.js +12 -3
  231. package/lib/menus/sidenav/NavMenuItem.js +56 -27
  232. package/lib/menus/sidenav/NavSubMenuItem.js +27 -8
  233. package/lib/menus/sidenav/helpers.js +9 -0
  234. package/lib/menus/sidenav/index.js +75 -26
  235. package/lib/menus/sidenav/popup_menu_search/EmptyList.js +7 -2
  236. package/lib/menus/sidenav/popup_menu_search/index.js +45 -15
  237. package/lib/menus/sidenav/sidenav.spec.js +379 -0
  238. package/lib/menus/sidenav/types.d.ts +1 -1
  239. package/lib/noPermission/index.js +6 -0
  240. package/lib/panel/Content.d.ts +1 -1
  241. package/lib/panel/Content.js +22 -7
  242. package/lib/panel/DangerPanel.d.ts +1 -1
  243. package/lib/panel/DangerPanel.js +7 -0
  244. package/lib/panel/Default.d.ts +1 -1
  245. package/lib/panel/Default.js +44 -20
  246. package/lib/panel/Header.d.ts +1 -1
  247. package/lib/panel/Header.js +27 -12
  248. package/lib/panel/InfoPanel.d.ts +1 -1
  249. package/lib/panel/InfoPanel.js +7 -0
  250. package/lib/panel/PrimaryPanel.d.ts +1 -1
  251. package/lib/panel/PrimaryPanel.js +7 -0
  252. package/lib/panel/SuccessPanel.d.ts +1 -1
  253. package/lib/panel/SuccessPanel.js +7 -0
  254. package/lib/panel/ToolBar.d.ts +1 -1
  255. package/lib/panel/ToolBar.js +5 -0
  256. package/lib/panel/WarningPanel.d.ts +1 -1
  257. package/lib/panel/WarningPanel.js +7 -0
  258. package/lib/panel/helpers.d.ts +1 -1
  259. package/lib/panel/helpers.js +10 -2
  260. package/lib/panel/index.d.ts +2 -5
  261. package/lib/panel/index.js +11 -0
  262. package/lib/panel/panel.spec.js +216 -0
  263. package/lib/panel/types.d.ts +1 -1
  264. package/lib/permissionValidations.js +15 -3
  265. package/lib/popover/PopoverText.js +4 -0
  266. package/lib/popover/PopoverTitle.js +4 -0
  267. package/lib/popover/index.js +29 -16
  268. package/lib/popover/popover.spec.js +146 -0
  269. package/lib/popover/types.d.ts +2 -1
  270. package/lib/progress/Bar.js +33 -20
  271. package/lib/progress/index.js +14 -5
  272. package/lib/progress/progress.spec.js +94 -0
  273. package/lib/radio/index.js +46 -23
  274. package/lib/radio/radio.spec.js +189 -0
  275. package/lib/skeleton/SkeletonContainer.js +9 -3
  276. package/lib/skeleton/index.js +22 -10
  277. package/lib/spinner/SpinnerLoading.js +7 -3
  278. package/lib/spinner/index.js +40 -18
  279. package/lib/spinner/spinner.spec.js +152 -0
  280. package/lib/split/Split.js +83 -32
  281. package/lib/split/SplitSide.js +18 -6
  282. package/lib/split/helpers.d.ts +1 -1
  283. package/lib/split/helpers.js +4 -0
  284. package/lib/split/index.d.ts +1 -4
  285. package/lib/split/index.js +5 -0
  286. package/lib/split/split.spec.js +163 -0
  287. package/lib/table/Body.js +29 -15
  288. package/lib/table/Header.js +28 -5
  289. package/lib/table/HeaderColumn.js +21 -10
  290. package/lib/table/Row.js +28 -18
  291. package/lib/table/RowColumn.js +29 -12
  292. package/lib/table/helpers.js +7 -0
  293. package/lib/table/index.js +62 -32
  294. package/lib/table/table.spec.js +352 -0
  295. package/lib/table/types.d.ts +1 -1
  296. package/lib/tabs/DropdownItems.js +21 -12
  297. package/lib/tabs/Menu.js +15 -5
  298. package/lib/tabs/MenuItems.js +33 -23
  299. package/lib/tabs/Panel.js +39 -14
  300. package/lib/tabs/index.js +113 -46
  301. package/lib/tabs/tabHelpers.js +16 -3
  302. package/lib/tabs/tabs.spec.js +321 -0
  303. package/lib/toolbar/ButtonBar.js +29 -13
  304. package/lib/toolbar/LabelBar.js +28 -11
  305. package/lib/toolbar/Separator.js +4 -0
  306. package/lib/toolbar/ToolBarGroup.js +6 -2
  307. package/lib/toolbar/helpers.js +2 -0
  308. package/lib/toolbar/index.js +23 -7
  309. package/lib/toolbar/toolbar.spec.js +394 -0
  310. package/lib/tooltip/index.js +25 -10
  311. package/lib/tooltip/tooltip.spec.js +215 -0
  312. package/lib/tooltip/types.d.ts +1 -1
  313. package/lib/treetable/Body.js +27 -9
  314. package/lib/treetable/Header.js +11 -1
  315. package/lib/treetable/Row.js +113 -58
  316. package/lib/treetable/helpers.js +10 -0
  317. package/lib/treetable/index.js +11 -0
  318. package/lib/treeview/Header.js +6 -2
  319. package/lib/treeview/Node.js +111 -47
  320. package/lib/treeview/constants.js +4 -0
  321. package/lib/treeview/index.js +134 -54
  322. package/lib/treeview/treeview.spec.js +279 -0
  323. package/lib/treeview/types.d.ts +2 -2
  324. package/lib/treeview_old/Header.js +6 -1
  325. package/lib/treeview_old/Node.js +32 -5
  326. package/lib/treeview_old/index.js +9 -1
  327. package/lib/{types-90c43ae1.d.ts → types-3c6f1c20.d.ts} +1 -1
  328. package/lib/uitour/index.js +73 -33
  329. package/lib/uitour/types.d.ts +1 -1
  330. package/lib/uitour/uitour.spec.js +176 -0
  331. package/package.json +1 -1
@@ -0,0 +1,690 @@
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
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _react2 = require("@testing-library/react");
8
+
9
+ require("@testing-library/jest-dom/extend-expect");
10
+
11
+ var _InputTextBase = _interopRequireDefault(require("./InputTextBase"));
12
+
13
+ var _buttons = _interopRequireDefault(require("../../buttons"));
14
+
15
+ var _storageMock = _interopRequireWildcard(require("../../../../config/jest/storageMock"));
16
+
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+
19
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+
21
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
+
23
+ describe('InputTextBase', function () {
24
+ var inputTextBase = function inputTextBase(inputTextBaseProps) {
25
+ return /*#__PURE__*/_react.default.createElement(_InputTextBase.default, inputTextBaseProps, /*#__PURE__*/_react.default.createElement(_buttons.default, {
26
+ customClass: "child-button"
27
+ }));
28
+ };
29
+
30
+ var setSessionStorageMock = function setSessionStorageMock() {
31
+ Object.defineProperty(window, 'sessionStorage', {
32
+ value: (0, _storageMock.default)()
33
+ });
34
+ };
35
+
36
+ it('should render correctly', function () {
37
+ var _render = (0, _react2.render)(inputTextBase()),
38
+ container = _render.container;
39
+
40
+ expect(container.firstChild).toHaveClass('input-base-component');
41
+ });
42
+ it('should apply value', function () {
43
+ var value = 'text';
44
+
45
+ var _render2 = (0, _react2.render)(inputTextBase({
46
+ value: value
47
+ })),
48
+ container = _render2.container;
49
+
50
+ var inputHTML = container.querySelector('.textinput');
51
+ expect(inputHTML.value).toBe(value);
52
+ });
53
+ it('should apply label', function () {
54
+ var label = 'teste label';
55
+
56
+ var _render3 = (0, _react2.render)(inputTextBase({
57
+ label: label
58
+ })),
59
+ container = _render3.container;
60
+
61
+ var labelHTML = container.querySelector('.labelcontainer > .label');
62
+ expect(labelHTML).toHaveTextContent(label);
63
+ });
64
+ it('should apply id', function () {
65
+ var id = 'testeID';
66
+
67
+ var _render4 = (0, _react2.render)(inputTextBase({
68
+ id: id
69
+ })),
70
+ container = _render4.container;
71
+
72
+ var inputHTML = container.querySelector('.textinput');
73
+ expect(inputHTML.id).toBe(id);
74
+ });
75
+ it('prop labelUppercase should add -uppercase css class', function () {
76
+ var label = 'teste label';
77
+
78
+ var _render5 = (0, _react2.render)(inputTextBase({
79
+ label: label,
80
+ labelUppercase: true
81
+ })),
82
+ container = _render5.container;
83
+
84
+ var labelHTML = container.querySelector('.labelcontainer > .label');
85
+ expect(labelHTML).toHaveClass('-uppercase');
86
+ });
87
+ describe('prop type', function () {
88
+ describe('when receive "textarea" subject', function () {
89
+ it('should render textarea', function () {
90
+ var _render6 = (0, _react2.render)(inputTextBase({
91
+ type: 'textarea'
92
+ })),
93
+ container = _render6.container;
94
+
95
+ var textAreaHTML = container.querySelector('textarea.textinput');
96
+ expect(textAreaHTML).toBeInTheDocument();
97
+ expect(textAreaHTML.type).toBe('textarea');
98
+ });
99
+ it('should apply rows', function () {
100
+ var rows = '12';
101
+
102
+ var _render7 = (0, _react2.render)(inputTextBase({
103
+ rows: rows,
104
+ type: 'textarea'
105
+ })),
106
+ container = _render7.container;
107
+
108
+ var textAreaHTML = container.querySelector('textarea.textinput');
109
+ expect(textAreaHTML.rows).toBe(parseInt(rows, 10));
110
+ });
111
+ it('should apply cols', function () {
112
+ var cols = '12';
113
+
114
+ var _render8 = (0, _react2.render)(inputTextBase({
115
+ cols: cols,
116
+ type: 'textarea'
117
+ })),
118
+ container = _render8.container;
119
+
120
+ var textAreaHTML = container.querySelector('textarea.textinput');
121
+ expect(textAreaHTML.cols).toBe(parseInt(cols, 10));
122
+ });
123
+ });
124
+ describe('when receive "text" subject', function () {
125
+ it('should render input text', function () {
126
+ var _render9 = (0, _react2.render)(inputTextBase({
127
+ type: 'text'
128
+ })),
129
+ container = _render9.container;
130
+
131
+ var inputHTML = container.querySelector('.textinput');
132
+ expect(inputHTML).toBeInTheDocument();
133
+ expect(inputHTML.type).toBe('text');
134
+ });
135
+ });
136
+ describe('when receive "number" subject', function () {
137
+ it('should render input number', function () {
138
+ var _render10 = (0, _react2.render)(inputTextBase({
139
+ type: 'number'
140
+ })),
141
+ container = _render10.container;
142
+
143
+ var inputHTML = container.querySelector('.textinput');
144
+ expect(inputHTML).toBeInTheDocument();
145
+ expect(inputHTML.type).toBe('number');
146
+ });
147
+ });
148
+ describe('when receive "date" subject', function () {
149
+ it('should render input date', function () {
150
+ var _render11 = (0, _react2.render)(inputTextBase({
151
+ type: 'date'
152
+ })),
153
+ container = _render11.container;
154
+
155
+ var inputHTML = container.querySelector('.textinput');
156
+ expect(inputHTML).toBeInTheDocument();
157
+ expect(inputHTML.type).toBe('date');
158
+ });
159
+ });
160
+ });
161
+ it('prop readOnly should add -readonly css class', function () {
162
+ var _render12 = (0, _react2.render)(inputTextBase({
163
+ readOnly: true
164
+ })),
165
+ container = _render12.container;
166
+
167
+ var inputHTML = container.querySelector('.textinput');
168
+ expect(inputHTML).toHaveClass('-readonly');
169
+ });
170
+ it('should apply placeHolder', function () {
171
+ var _render13 = (0, _react2.render)(inputTextBase({
172
+ placeHolder: 'saas'
173
+ })),
174
+ container = _render13.container;
175
+
176
+ var inputHTML = container.querySelector('.textinput');
177
+ expect(inputHTML.placeholder).toBe('saas');
178
+ });
179
+ it('prop disabled should add -disabled css class', function () {
180
+ var _render14 = (0, _react2.render)(inputTextBase({
181
+ disabled: true
182
+ })),
183
+ container = _render14.container;
184
+
185
+ var inputWrapper = container.querySelector('.inputwrapper');
186
+ expect(inputWrapper).toHaveClass('-disabled');
187
+ });
188
+ it('should apply autoFocus', function () {
189
+ var _render15 = (0, _react2.render)(inputTextBase({
190
+ autoFocus: true
191
+ })),
192
+ container = _render15.container;
193
+
194
+ var inputHTML = container.querySelector('.textinput');
195
+ expect(inputHTML).toHaveFocus();
196
+ });
197
+ it('should apply maxLength', function () {
198
+ var maxLength = 10;
199
+
200
+ var _render16 = (0, _react2.render)(inputTextBase({
201
+ maxLength: maxLength
202
+ })),
203
+ container = _render16.container;
204
+
205
+ var inputHTML = container.querySelector('.textinput');
206
+ expect(inputHTML.maxLength).toBe(maxLength);
207
+ });
208
+ it('should apply name', function () {
209
+ var name = 'saas';
210
+
211
+ var _render17 = (0, _react2.render)(inputTextBase({
212
+ name: name
213
+ })),
214
+ container = _render17.container;
215
+
216
+ var inputHTML = container.querySelector('.textinput');
217
+ expect(inputHTML.name).toBe(name);
218
+ });
219
+ it('prop required should render label with -requiredlabel css class', function () {
220
+ var label = 'teste label';
221
+
222
+ var _render18 = (0, _react2.render)(inputTextBase({
223
+ label: label,
224
+ required: true
225
+ })),
226
+ container = _render18.container;
227
+
228
+ var requiredLabel = container.querySelector('.labelcontainer > .label > .-requiredlabel');
229
+ expect(requiredLabel).toBeTruthy();
230
+ });
231
+ it('prop inputHasFocus should add -focusable css class to inputwrapper', function () {
232
+ var _render19 = (0, _react2.render)(inputTextBase()),
233
+ container = _render19.container;
234
+
235
+ var inputWrapper = container.querySelector('.inputwrapper');
236
+ var inputHTML = container.querySelector('.textinput');
237
+
238
+ _react2.fireEvent.focus(inputHTML);
239
+
240
+ expect(inputWrapper).toHaveClass('-focusable');
241
+ });
242
+ it('should apply onFocus', function () {
243
+ var onFocus = jest.fn();
244
+
245
+ var _render20 = (0, _react2.render)(inputTextBase({
246
+ onFocus: onFocus
247
+ })),
248
+ container = _render20.container;
249
+
250
+ var inputHTML = container.querySelector('.textinput');
251
+
252
+ _react2.fireEvent.focus(inputHTML);
253
+
254
+ expect(onFocus).toBeCalled();
255
+ });
256
+ it('should apply onBlur', function () {
257
+ var onBlur = jest.fn();
258
+
259
+ var _render21 = (0, _react2.render)(inputTextBase({
260
+ onBlur: onBlur
261
+ })),
262
+ container = _render21.container;
263
+
264
+ var inputHTML = container.querySelector('.textinput');
265
+
266
+ _react2.fireEvent.blur(inputHTML);
267
+
268
+ expect(onBlur).toBeCalled();
269
+ expect(inputHTML).not.toHaveFocus();
270
+ });
271
+ it('should apply onChange', function () {
272
+ var onChange = jest.fn();
273
+
274
+ var _render22 = (0, _react2.render)(inputTextBase({
275
+ onChange: onChange
276
+ })),
277
+ container = _render22.container;
278
+
279
+ var inputHTML = container.querySelector('.textinput');
280
+
281
+ _react2.fireEvent.change(inputHTML, {
282
+ target: {
283
+ value: 'sus'
284
+ }
285
+ });
286
+
287
+ expect(onChange).toBeCalled();
288
+ expect(inputHTML.value).toBe('sus');
289
+ });
290
+ it('should apply onKeyDown', function () {
291
+ var onKeyDown = jest.fn();
292
+
293
+ var _render23 = (0, _react2.render)(inputTextBase({
294
+ onKeyDown: onKeyDown
295
+ })),
296
+ container = _render23.container;
297
+
298
+ var inputHTML = container.querySelector('.textinput');
299
+
300
+ _react2.fireEvent.keyDown(inputHTML, {
301
+ key: 'Escape',
302
+ code: 'Escape',
303
+ keyCode: 27,
304
+ charCode: 27
305
+ });
306
+
307
+ expect(onKeyDown).toBeCalled();
308
+ });
309
+ it('should apply onKeyPress', function () {
310
+ var onKeyPress = jest.fn();
311
+
312
+ var _render24 = (0, _react2.render)(inputTextBase({
313
+ onKeyPress: onKeyPress
314
+ })),
315
+ container = _render24.container;
316
+
317
+ var inputHTML = container.querySelector('.textinput');
318
+
319
+ _react2.fireEvent.keyPress(inputHTML, {
320
+ key: 'Enter',
321
+ code: 13,
322
+ charCode: 13
323
+ });
324
+
325
+ expect(onKeyPress).toBeCalled();
326
+ });
327
+ describe('prop leftElements should', function () {
328
+ it('render single component within subject', function () {
329
+ var leftElements = /*#__PURE__*/_react.default.createElement(_buttons.default, {
330
+ customClass: "btn1"
331
+ });
332
+
333
+ var _render25 = (0, _react2.render)(inputTextBase({
334
+ leftElements: leftElements
335
+ })),
336
+ container = _render25.container;
337
+
338
+ var buttonHTML = container.querySelector('.sidebuttons > .btn1');
339
+ expect(buttonHTML).toBeTruthy();
340
+ });
341
+ it('render multiple components within subject', function () {
342
+ var leftElements = [/*#__PURE__*/_react.default.createElement(_buttons.default, {
343
+ customClass: "btnteste",
344
+ key: "btn_teste1"
345
+ }), /*#__PURE__*/_react.default.createElement(_buttons.default, {
346
+ customClass: "btnteste",
347
+ key: "btn_teste2"
348
+ })];
349
+
350
+ var _render26 = (0, _react2.render)(inputTextBase({
351
+ leftElements: leftElements
352
+ })),
353
+ container = _render26.container;
354
+
355
+ var buttonHTML = container.querySelectorAll('.sidebuttons > .btnteste');
356
+ expect(buttonHTML.length).toBe(2);
357
+ });
358
+ });
359
+ describe('prop rightElements should', function () {
360
+ it('render single component within subject', function () {
361
+ var rightElements = /*#__PURE__*/_react.default.createElement(_buttons.default, {
362
+ customClass: "btn1"
363
+ });
364
+
365
+ var _render27 = (0, _react2.render)(inputTextBase({
366
+ rightElements: rightElements
367
+ })),
368
+ container = _render27.container;
369
+
370
+ var buttonHTML = container.querySelector('.btn1');
371
+ expect(buttonHTML).toBeTruthy();
372
+ });
373
+ it('render multiple components within subject', function () {
374
+ var rightElements = [/*#__PURE__*/_react.default.createElement(_buttons.default, {
375
+ customClass: "btnteste",
376
+ key: "btn_teste1"
377
+ }), /*#__PURE__*/_react.default.createElement(_buttons.default, {
378
+ customClass: "btnteste",
379
+ key: "btn_teste2"
380
+ })];
381
+
382
+ var _render28 = (0, _react2.render)(inputTextBase({
383
+ rightElements: rightElements
384
+ })),
385
+ container = _render28.container;
386
+
387
+ var buttonHTML = container.querySelectorAll('.btnteste');
388
+ expect(buttonHTML.length).toBe(2);
389
+ });
390
+ });
391
+ it('should render children', function () {
392
+ var _render29 = (0, _react2.render)(inputTextBase()),
393
+ container = _render29.container;
394
+
395
+ var childButton = container.querySelector('.child-button');
396
+ expect(childButton).toBeTruthy();
397
+ });
398
+ it('should apply customClass', function () {
399
+ var customClass = 'saas';
400
+
401
+ var _render30 = (0, _react2.render)(inputTextBase({
402
+ customClass: customClass
403
+ })),
404
+ container = _render30.container;
405
+
406
+ expect(container.firstChild).toHaveClass(customClass);
407
+ });
408
+ it('should apply customClassForWrapper', function () {
409
+ var customClassForWrapper = 'saas';
410
+
411
+ var _render31 = (0, _react2.render)(inputTextBase({
412
+ customClassForWrapper: customClassForWrapper
413
+ })),
414
+ container = _render31.container;
415
+
416
+ var inputWrapper = container.querySelector('.inputwrapper');
417
+ expect(inputWrapper).toHaveClass(customClassForWrapper);
418
+ });
419
+ it('should apply customClassForInputContent', function () {
420
+ var customClassForInputContent = 'saas';
421
+
422
+ var _render32 = (0, _react2.render)(inputTextBase({
423
+ customClassForInputContent: customClassForInputContent
424
+ })),
425
+ container = _render32.container;
426
+
427
+ var inputContent = container.querySelector('.inputcontent');
428
+ expect(inputContent).toHaveClass(customClassForInputContent);
429
+ });
430
+ it('should apply customClassForLabel', function () {
431
+ var customClassForLabel = 'saas';
432
+
433
+ var _render33 = (0, _react2.render)(inputTextBase({
434
+ customClassForLabel: customClassForLabel,
435
+ label: 'sus'
436
+ })),
437
+ container = _render33.container;
438
+
439
+ var labelSpan = container.querySelector('.label');
440
+ expect(labelSpan).toHaveClass(customClassForLabel);
441
+ });
442
+ it('should apply customClassForSideButtons', function () {
443
+ var leftElements = /*#__PURE__*/_react.default.createElement(_buttons.default, {
444
+ customClass: "btn1"
445
+ });
446
+
447
+ var customClassForSideButtons = 'saas';
448
+
449
+ var _render34 = (0, _react2.render)(inputTextBase({
450
+ leftElements: leftElements,
451
+ customClassForSideButtons: customClassForSideButtons
452
+ })),
453
+ container = _render34.container;
454
+
455
+ var sideButtonsContainer = container.querySelector('.sidebuttons');
456
+ expect(sideButtonsContainer).toHaveClass(customClassForSideButtons);
457
+ });
458
+ it('should apply inputRef', function () {
459
+ var inputRef = /*#__PURE__*/_react.default.createRef();
460
+
461
+ (0, _react2.render)(inputTextBase({
462
+ inputRef: inputRef
463
+ }));
464
+ expect(inputRef.current).not.toBeNull();
465
+ });
466
+ it('should apply inputBaseRef', function () {
467
+ var inputBaseRef = /*#__PURE__*/_react.default.createRef();
468
+
469
+ (0, _react2.render)(inputTextBase({
470
+ inputBaseRef: inputBaseRef
471
+ }));
472
+ expect(inputBaseRef.current).not.toBeNull();
473
+ });
474
+ it('prop hint should render hint', function () {
475
+ var hint = 'saas';
476
+
477
+ var _render35 = (0, _react2.render)(inputTextBase({
478
+ hint: hint
479
+ })),
480
+ container = _render35.container;
481
+
482
+ var hintHTML = container.querySelector('.hint');
483
+ expect(hintHTML).toBeTruthy();
484
+ expect(hintHTML).toHaveTextContent(hint);
485
+ });
486
+ it('should apply textAlign', function () {
487
+ var textAlign = 'right';
488
+
489
+ var _render36 = (0, _react2.render)(inputTextBase({
490
+ textAlign: textAlign
491
+ })),
492
+ container = _render36.container;
493
+
494
+ var inputHTML = container.querySelector('.textinput');
495
+ expect(inputHTML).toHaveClass("text-align-".concat(textAlign));
496
+ });
497
+ it('should apply rounded', function () {
498
+ var _render37 = (0, _react2.render)(inputTextBase({
499
+ rounded: true
500
+ })),
501
+ container = _render37.container;
502
+
503
+ var inputWrapper = container.querySelector('.inputwrapper');
504
+ expect(inputWrapper).toHaveClass('-roundedborders');
505
+ });
506
+ it('prop errorMessages should render error messages', function () {
507
+ var errorMessages = ['teste', 'erros', 'aleatorios'];
508
+
509
+ var _render38 = (0, _react2.render)(inputTextBase({
510
+ errorMessages: errorMessages
511
+ })),
512
+ container = _render38.container;
513
+
514
+ var errorMessagesHTML = container.querySelector('.errormessages');
515
+ expect(errorMessagesHTML).toHaveTextContent(errorMessages.join(', '));
516
+ });
517
+ describe('prop visible should', function () {
518
+ it('not render subject when false', function () {
519
+ var _render39 = (0, _react2.render)(inputTextBase({
520
+ visible: false
521
+ })),
522
+ container = _render39.container;
523
+
524
+ expect(container.firstChild).toBeNull();
525
+ });
526
+ it('render subject when true', function () {
527
+ var _render40 = (0, _react2.render)(inputTextBase({
528
+ visible: true
529
+ })),
530
+ container = _render40.container;
531
+
532
+ expect(container.firstChild).not.toBeNull();
533
+ });
534
+ });
535
+ it('should apply handlerSetOnDenied', function () {
536
+ var handlerSetOnDenied = jest.fn();
537
+ (0, _react2.render)(inputTextBase({
538
+ handlerSetOnDenied: handlerSetOnDenied
539
+ }));
540
+ expect(handlerSetOnDenied).toBeCalled();
541
+ });
542
+ describe('prop permissionAttr', function () {
543
+ describe('when permission granted', function () {
544
+ it('should render subject', function () {
545
+ setSessionStorageMock();
546
+ var permissionAttr = (0, _storageMock.permissionAttrMockAuthorized)('unvisible');
547
+
548
+ var _render41 = (0, _react2.render)(inputTextBase({
549
+ permissionAttr: permissionAttr
550
+ })),
551
+ container = _render41.container;
552
+
553
+ expect(container.firstChild).not.toBeNull();
554
+ });
555
+ });
556
+ describe('when permission denied', function () {
557
+ it('onDenied.unvisible option should not render subject', function () {
558
+ setSessionStorageMock();
559
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('unvisible');
560
+
561
+ var _render42 = (0, _react2.render)(inputTextBase({
562
+ permissionAttr: permissionAttr
563
+ })),
564
+ container = _render42.container;
565
+
566
+ expect(container.firstChild).toBeNull();
567
+ });
568
+ describe('onDenied.disabled option/disabled prop should', function () {
569
+ it('disable subject', function () {
570
+ setSessionStorageMock();
571
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
572
+ var onChange = jest.fn();
573
+
574
+ var _render43 = (0, _react2.render)(inputTextBase({
575
+ permissionAttr: permissionAttr,
576
+ onChange: onChange
577
+ })),
578
+ container = _render43.container;
579
+
580
+ var inputHTML = container.querySelector('.textinput');
581
+
582
+ _react2.fireEvent.change(inputHTML, {
583
+ target: {
584
+ value: 'sus'
585
+ }
586
+ });
587
+
588
+ expect(inputHTML.disabled).toBeTruthy();
589
+ expect(onChange).not.toBeCalled();
590
+ });
591
+ it('add -disabled css class', function () {
592
+ setSessionStorageMock();
593
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
594
+
595
+ var _render44 = (0, _react2.render)(inputTextBase({
596
+ permissionAttr: permissionAttr
597
+ })),
598
+ container = _render44.container;
599
+
600
+ var inputWrapper = container.querySelector('.inputwrapper');
601
+ expect(inputWrapper).toHaveClass('-disabled');
602
+ });
603
+ });
604
+ describe('onDenied.readOnly option/readOnly prop should', function () {
605
+ it('apply readOnly attribute in input', function () {
606
+ setSessionStorageMock();
607
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('readOnly');
608
+
609
+ var _render45 = (0, _react2.render)(inputTextBase({
610
+ permissionAttr: permissionAttr
611
+ })),
612
+ container = _render45.container;
613
+
614
+ var inputHTML = container.querySelector('.textinput');
615
+ expect(inputHTML.readOnly).toBeTruthy();
616
+ });
617
+ it('disable callbacks', function () {
618
+ setSessionStorageMock();
619
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('readOnly');
620
+ var onChange = jest.fn();
621
+
622
+ var _render46 = (0, _react2.render)(inputTextBase({
623
+ permissionAttr: permissionAttr,
624
+ onChange: onChange
625
+ })),
626
+ container = _render46.container;
627
+
628
+ var inputHTML = container.querySelector('.textinput');
629
+
630
+ _react2.fireEvent.change(inputHTML, {
631
+ target: {
632
+ value: 'sus'
633
+ }
634
+ });
635
+
636
+ expect(onChange).not.toBeCalled();
637
+ });
638
+ });
639
+ describe('onDenied.hideContent should', function () {
640
+ it('should set input value to blank', function () {
641
+ setSessionStorageMock();
642
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
643
+
644
+ var _render47 = (0, _react2.render)(inputTextBase({
645
+ permissionAttr: permissionAttr,
646
+ value: 'text'
647
+ })),
648
+ container = _render47.container;
649
+
650
+ var inputHTML = container.querySelector('.textinput');
651
+ expect(inputHTML.value).toBe('');
652
+ });
653
+ it('disable input', function () {
654
+ setSessionStorageMock();
655
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
656
+ var onChange = jest.fn();
657
+
658
+ var _render48 = (0, _react2.render)(inputTextBase({
659
+ permissionAttr: permissionAttr,
660
+ onChange: onChange
661
+ })),
662
+ container = _render48.container;
663
+
664
+ var inputHTML = container.querySelector('.textinput');
665
+
666
+ _react2.fireEvent.change(inputHTML, {
667
+ target: {
668
+ value: 'sus'
669
+ }
670
+ });
671
+
672
+ expect(onChange).not.toBeCalled();
673
+ expect(inputHTML.disabled).toBeTruthy();
674
+ });
675
+ it('add -disabled css class', function () {
676
+ setSessionStorageMock();
677
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
678
+
679
+ var _render49 = (0, _react2.render)(inputTextBase({
680
+ permissionAttr: permissionAttr
681
+ })),
682
+ container = _render49.container;
683
+
684
+ var inputWrapper = container.querySelector('.inputwrapper');
685
+ expect(inputWrapper).toHaveClass('-disabled');
686
+ });
687
+ });
688
+ });
689
+ });
690
+ });
@@ -10,6 +10,6 @@ declare const getInputClass: ({ textAlign, readOnly, readOnlyClass }: {
10
10
  }) => string;
11
11
  declare const getInputWrapperClass: (props: IBaseProps) => string;
12
12
  declare const getErrorMessages: (messages: string[]) => JSX.Element;
13
- declare const getRightElements: (errorMessages: string[], skeletonize: boolean, rightElements?: JSX.Element | JSX.Element[]) => JSX.Element | JSX.Element[] | null;
13
+ declare const getRightElements: (errorMessages: string[], skeletonize: boolean, help?: string, rightElements?: JSX.Element | JSX.Element[]) => JSX.Element | JSX.Element[] | null;
14
14
 
15
15
  export { getErrorMessages, getInputClass, getInputWrapperClass, getRightElements };