linear-react-components-ui 1.0.10-beta.2 → 1.0.10-beta.21

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 (281) hide show
  1. package/.eslintrc.json +1 -0
  2. package/.vscode/settings.json +1 -1
  3. package/README.md +19 -12
  4. package/lib/@types/Align.d.ts +2 -1
  5. package/lib/alerts/AlertContainer.d.ts +2 -0
  6. package/lib/alerts/AlertProvider.d.ts +2 -0
  7. package/lib/alerts/BaseAlert.d.ts +2 -0
  8. package/lib/alerts/Message.d.ts +2 -0
  9. package/lib/alerts/Message.js +1 -1
  10. package/lib/alerts/alert.spec.js +133 -0
  11. package/lib/alerts/helpers.d.ts +2 -0
  12. package/lib/alerts/index.d.ts +2 -0
  13. package/lib/alerts/types.d.ts +3 -1
  14. package/lib/alerts/withAlert.d.ts +2 -0
  15. package/lib/assets/styles/dialog.scss +9 -6
  16. package/lib/assets/styles/drawers.scss +9 -0
  17. package/lib/assets/styles/effects.scss +2 -2
  18. package/lib/assets/styles/radio.scss +52 -8
  19. package/lib/assets/styles/table.scss +30 -0
  20. package/lib/assets/styles/tooltip.scss +42 -2
  21. package/lib/avatar/avatar.spec.js +190 -0
  22. package/lib/badge/badge.spec.js +127 -0
  23. package/lib/buttons/ActivateButton.d.ts +2 -0
  24. package/lib/buttons/AddButton.d.ts +2 -0
  25. package/lib/buttons/Button.d.ts +2 -0
  26. package/lib/buttons/CancelButton.d.ts +2 -0
  27. package/lib/buttons/DangerButton.d.ts +2 -0
  28. package/lib/buttons/DefaultButton.d.ts +2 -0
  29. package/lib/buttons/DefaultButton.js +14 -4
  30. package/lib/buttons/DestroyButton.d.ts +2 -0
  31. package/lib/buttons/EditButton.d.ts +2 -0
  32. package/lib/buttons/InactivateButton.d.ts +2 -0
  33. package/lib/buttons/InfoButton.d.ts +2 -0
  34. package/lib/buttons/PrimaryButton.d.ts +2 -0
  35. package/lib/buttons/RestoreButton.d.ts +2 -0
  36. package/lib/buttons/SaveButton.d.ts +2 -0
  37. package/lib/buttons/SpinnerLoading.js +230 -0
  38. package/lib/buttons/SuccessButton.d.ts +2 -0
  39. package/lib/buttons/WarningButton.d.ts +2 -0
  40. package/lib/buttons/buttons.spec.js +504 -0
  41. package/lib/buttons/index.d.ts +2 -0
  42. package/lib/buttons/split_button/index.d.ts +2 -0
  43. package/lib/buttons/types.d.ts +6 -2
  44. package/lib/calendar/calendar.spec.js +171 -0
  45. package/lib/checkbox/checkbox.spec.js +215 -0
  46. package/lib/dialog/Alert.d.ts +3 -0
  47. package/lib/dialog/Custom.d.ts +3 -0
  48. package/lib/dialog/Custom.js +1 -1
  49. package/lib/dialog/Error.d.ts +3 -0
  50. package/lib/dialog/Information.d.ts +3 -0
  51. package/lib/dialog/Question.d.ts +3 -0
  52. package/lib/dialog/Warning.d.ts +3 -0
  53. package/lib/dialog/base/Content.d.ts +3 -0
  54. package/lib/dialog/base/Footer.d.ts +3 -0
  55. package/lib/dialog/base/Header.d.ts +3 -0
  56. package/lib/dialog/base/Header.js +12 -1
  57. package/lib/dialog/base/index.d.ts +3 -0
  58. package/lib/dialog/base/index.js +78 -16
  59. package/lib/dialog/dialog.spec.js +488 -0
  60. package/lib/dialog/form/index.d.ts +7 -3
  61. package/lib/dialog/form/index.js +11 -4
  62. package/lib/dialog/index.d.ts +3 -0
  63. package/lib/dialog/types.d.ts +10 -4
  64. package/lib/drawer/Content.d.ts +2 -0
  65. package/lib/drawer/Drawer.d.ts +3 -1
  66. package/lib/drawer/Drawer.js +22 -2
  67. package/lib/drawer/Drawer.spec.js +258 -0
  68. package/lib/drawer/Header.d.ts +2 -0
  69. package/lib/drawer/helpers.d.ts +2 -0
  70. package/lib/drawer/index.d.ts +2 -0
  71. package/lib/drawer/types.d.ts +4 -1
  72. package/lib/dropdown/Popup.js +5 -0
  73. package/lib/dropdown/dropdown.spec.js +169 -0
  74. package/lib/fieldset/fieldset.spec.js +329 -0
  75. package/lib/form/Field.d.ts +2 -1
  76. package/lib/form/Field.js +33 -24
  77. package/lib/form/FieldArray.d.ts +1 -0
  78. package/lib/form/FieldArray.js +41 -4
  79. package/lib/form/FieldNumber.d.ts +1 -0
  80. package/lib/form/FieldNumber.js +24 -5
  81. package/lib/form/FieldPeriod.d.ts +1 -0
  82. package/lib/form/FieldPeriod.js +16 -2
  83. package/lib/form/form.spec.js +293 -0
  84. package/lib/form/helpers.d.ts +2 -1
  85. package/lib/form/helpers.js +2 -2
  86. package/lib/form/index.d.ts +4 -2
  87. package/lib/form/index.js +72 -35
  88. package/lib/form/types.d.ts +25 -6
  89. package/lib/form/withFieldHOC.d.ts +1 -0
  90. package/lib/form/withFieldHOC.js +1 -0
  91. package/lib/form/withFormSecurity.d.ts +1 -0
  92. package/lib/form/withFormSecurity.js +2 -1
  93. package/lib/gridlayout/gridLayout.spec.js +169 -0
  94. package/lib/icons/helper.d.ts +4 -0
  95. package/lib/icons/helper.js +4 -0
  96. package/lib/icons/icons.spec.js +86 -0
  97. package/lib/icons/index.d.ts +2 -0
  98. package/lib/icons/types.d.ts +3 -1
  99. package/lib/index.d.ts +4 -1
  100. package/lib/inputs/base/InputTextBase.d.ts +1 -0
  101. package/lib/inputs/base/InputTextBase.js +10 -2
  102. package/lib/inputs/base/base.spec.js +690 -0
  103. package/lib/inputs/base/helpers.d.ts +2 -1
  104. package/lib/inputs/base/index.js +1 -0
  105. package/lib/inputs/base/types.d.ts +2 -1
  106. package/lib/inputs/color/color_input.spec.js +174 -0
  107. package/lib/inputs/date/Dialog.d.ts +1 -0
  108. package/lib/inputs/date/Dropdown.d.ts +1 -0
  109. package/lib/inputs/date/date.spec.js +354 -0
  110. package/lib/inputs/date/helpers.d.ts +2 -1
  111. package/lib/inputs/date/helpers.js +3 -2
  112. package/lib/inputs/date/index.d.ts +1 -0
  113. package/lib/inputs/date/index.js +24 -9
  114. package/lib/inputs/date/types.d.ts +3 -1
  115. package/lib/inputs/file/DefaultFile.d.ts +1 -0
  116. package/lib/inputs/file/DragDropFile.d.ts +1 -0
  117. package/lib/inputs/file/File.d.ts +1 -0
  118. package/lib/inputs/file/FileButtonSettings.d.ts +1 -0
  119. package/lib/inputs/file/helpers.d.ts +1 -0
  120. package/lib/inputs/file/index.d.ts +1 -0
  121. package/lib/inputs/file/types.d.ts +1 -0
  122. package/lib/inputs/inputHOC.d.ts +3 -0
  123. package/lib/inputs/mask/BaseMask.d.ts +1 -0
  124. package/lib/inputs/mask/BaseMask.js +20 -5
  125. package/lib/inputs/mask/Cnpj.d.ts +1 -0
  126. package/lib/inputs/mask/Cpf.d.ts +1 -0
  127. package/lib/inputs/mask/Cpf.js +4 -4
  128. package/lib/inputs/mask/Phone.d.ts +1 -0
  129. package/lib/inputs/mask/ZipCode.d.ts +1 -0
  130. package/lib/inputs/mask/helpers.d.ts +3 -0
  131. package/lib/inputs/mask/helpers.js +1 -1
  132. package/lib/inputs/mask/imaskHOC.d.ts +3 -0
  133. package/lib/inputs/mask/imaskHOC.js +16 -12
  134. package/lib/inputs/mask/index.d.ts +1 -0
  135. package/lib/inputs/mask/input_mask.spec.js +607 -0
  136. package/lib/inputs/mask/types.d.ts +2 -1
  137. package/lib/inputs/multiSelect/ActionButtons.d.ts +2 -1
  138. package/lib/inputs/multiSelect/ActionButtons.js +4 -1
  139. package/lib/inputs/multiSelect/Dropdown.d.ts +1 -0
  140. package/lib/inputs/multiSelect/Dropdown.js +4 -4
  141. package/lib/inputs/multiSelect/helper.d.ts +8 -6
  142. package/lib/inputs/multiSelect/helper.js +5 -1
  143. package/lib/inputs/multiSelect/index.d.ts +1 -0
  144. package/lib/inputs/multiSelect/index.js +15 -11
  145. package/lib/inputs/multiSelect/types.d.ts +16 -6
  146. package/lib/inputs/number/BaseNumber.d.ts +3 -0
  147. package/lib/inputs/number/BaseNumber.js +1 -2
  148. package/lib/inputs/number/Currency.d.ts +3 -0
  149. package/lib/inputs/number/Decimal.d.ts +3 -0
  150. package/lib/inputs/number/format_number.d.ts +2 -1
  151. package/lib/inputs/number/format_number.js +8 -3
  152. package/lib/inputs/number/index.d.ts +3 -0
  153. package/lib/inputs/number/numberfield.spec.js +215 -0
  154. package/lib/inputs/number/types.d.ts +3 -1
  155. package/lib/inputs/period/Dialog.d.ts +1 -0
  156. package/lib/inputs/period/Dropdown.d.ts +1 -0
  157. package/lib/inputs/period/PeriodList.d.ts +1 -0
  158. package/lib/inputs/period/helper.d.ts +1 -0
  159. package/lib/inputs/period/index.d.ts +1 -0
  160. package/lib/inputs/period/index.js +8 -9
  161. package/lib/inputs/period/types.d.ts +3 -2
  162. package/lib/inputs/search/index.d.ts +3 -0
  163. package/lib/inputs/search/search_input.spec.js +209 -0
  164. package/lib/inputs/select/ActionButtons.d.ts +3 -0
  165. package/lib/inputs/select/Dropdown.d.ts +3 -0
  166. package/lib/inputs/select/Dropdown.js +1 -1
  167. package/lib/inputs/select/helper.d.ts +7 -9
  168. package/lib/inputs/select/helper.js +11 -2
  169. package/lib/inputs/select/index.d.ts +1 -0
  170. package/lib/inputs/select/index.js +6 -5
  171. package/lib/inputs/select/multiple/Selecteds.d.ts +1 -0
  172. package/lib/inputs/select/multiple/Selecteds.js +1 -1
  173. package/lib/inputs/select/multiple/index.d.ts +1 -0
  174. package/lib/inputs/select/multiple/index.js +13 -10
  175. package/lib/inputs/select/select.spec.js +395 -0
  176. package/lib/inputs/select/simple/index.d.ts +1 -0
  177. package/lib/inputs/select/simple/index.js +35 -18
  178. package/lib/inputs/select/types.d.ts +22 -7
  179. package/lib/inputs/text/index.d.ts +1 -0
  180. package/lib/inputs/text/textfield.spec.js +215 -0
  181. package/lib/inputs/text/types.d.ts +1 -1
  182. package/lib/inputs/textarea/index.d.ts +1 -0
  183. package/lib/inputs/textarea/index.js +1 -1
  184. package/lib/inputs/textarea/textarea.spec.js +59 -0
  185. package/lib/inputs/textarea/types.d.ts +1 -0
  186. package/lib/inputs/types.d.ts +7 -3
  187. package/lib/internals/types.d.ts +1 -0
  188. package/lib/internals/withTooltip.js +13 -6
  189. package/lib/labelMessages/index.d.ts +2 -0
  190. package/lib/labelMessages/index.js +3 -4
  191. package/lib/labelMessages/labelMessages.spec.js +176 -0
  192. package/lib/labelMessages/types.d.ts +3 -1
  193. package/lib/labels/DangerLabel.d.ts +2 -0
  194. package/lib/labels/DefaultLabel.d.ts +2 -0
  195. package/lib/labels/InfoLabel.d.ts +2 -0
  196. package/lib/labels/PrimaryLabel.d.ts +2 -0
  197. package/lib/labels/SuccessLabel.d.ts +2 -0
  198. package/lib/labels/WarningLabel.d.ts +2 -0
  199. package/lib/labels/index.d.ts +2 -0
  200. package/lib/labels/label.spec.js +162 -0
  201. package/lib/labels/types.d.ts +3 -1
  202. package/lib/list/Header.d.ts +2 -0
  203. package/lib/list/Item.d.ts +2 -0
  204. package/lib/list/helpers.d.ts +2 -0
  205. package/lib/list/index.d.ts +2 -0
  206. package/lib/list/list.spec.js +769 -0
  207. package/lib/list/types.d.ts +4 -2
  208. package/lib/menus/float/MenuItem.d.ts +2 -0
  209. package/lib/menus/float/float-menu.spec.js +221 -0
  210. package/lib/menus/float/helpers.d.ts +2 -0
  211. package/lib/menus/float/index.d.ts +2 -0
  212. package/lib/menus/float/types.d.ts +3 -1
  213. package/lib/menus/index.d.ts +2 -0
  214. package/lib/menus/sidenav/ExpandMenu.d.ts +2 -0
  215. package/lib/menus/sidenav/MenuLink.d.ts +2 -0
  216. package/lib/menus/sidenav/NavMenuGroup.d.ts +2 -0
  217. package/lib/menus/sidenav/NavMenuItem.d.ts +2 -0
  218. package/lib/menus/sidenav/NavSubMenuItem.d.ts +2 -0
  219. package/lib/menus/sidenav/helpers.d.ts +2 -0
  220. package/lib/menus/sidenav/index.d.ts +2 -0
  221. package/lib/menus/sidenav/popup_menu_search/EmptyList.d.ts +2 -0
  222. package/lib/menus/sidenav/popup_menu_search/index.d.ts +2 -0
  223. package/lib/menus/sidenav/sidenav.spec.js +379 -0
  224. package/lib/menus/sidenav/types.d.ts +4 -2
  225. package/lib/panel/Content.d.ts +3 -1
  226. package/lib/panel/DangerPanel.d.ts +3 -1
  227. package/lib/panel/Default.d.ts +3 -1
  228. package/lib/panel/Header.d.ts +3 -1
  229. package/lib/panel/Header.js +3 -4
  230. package/lib/panel/InfoPanel.d.ts +3 -1
  231. package/lib/panel/PrimaryPanel.d.ts +3 -1
  232. package/lib/panel/SuccessPanel.d.ts +3 -1
  233. package/lib/panel/ToolBar.d.ts +3 -1
  234. package/lib/panel/WarningPanel.d.ts +3 -1
  235. package/lib/panel/helpers.d.ts +3 -1
  236. package/lib/panel/index.d.ts +3 -1
  237. package/lib/panel/panel.spec.js +216 -0
  238. package/lib/panel/types.d.ts +3 -1
  239. package/lib/popover/PopoverText.d.ts +2 -0
  240. package/lib/popover/PopoverTitle.d.ts +2 -0
  241. package/lib/popover/index.d.ts +2 -0
  242. package/lib/popover/index.js +1 -2
  243. package/lib/popover/popover.spec.js +146 -0
  244. package/lib/popover/types.d.ts +3 -1
  245. package/lib/progress/progress.spec.js +94 -0
  246. package/lib/radio/index.d.ts +2 -1
  247. package/lib/radio/index.js +5 -1
  248. package/lib/radio/radio.spec.js +189 -0
  249. package/lib/radio/types.d.ts +4 -1
  250. package/lib/spinner/spinner.spec.js +152 -0
  251. package/lib/split/split.spec.js +163 -0
  252. package/lib/table/Body.js +9 -12
  253. package/lib/table/Header.js +19 -16
  254. package/lib/table/Row.js +20 -3
  255. package/lib/table/index.js +1 -0
  256. package/lib/table/table.spec.js +352 -0
  257. package/lib/table/types.d.ts +7 -0
  258. package/lib/tabs/DropdownItems.d.ts +2 -0
  259. package/lib/tabs/Menu.d.ts +2 -0
  260. package/lib/tabs/MenuItems.d.ts +2 -0
  261. package/lib/tabs/Panel.d.ts +2 -0
  262. package/lib/tabs/index.d.ts +2 -0
  263. package/lib/tabs/tabHelpers.d.ts +2 -0
  264. package/lib/tabs/tabs.spec.js +321 -0
  265. package/lib/tabs/types.d.ts +3 -1
  266. package/lib/toolbar/ButtonBar.d.ts +2 -0
  267. package/lib/toolbar/LabelBar.d.ts +2 -0
  268. package/lib/toolbar/ToolBarGroup.d.ts +2 -0
  269. package/lib/toolbar/helpers.d.ts +2 -0
  270. package/lib/toolbar/index.d.ts +2 -0
  271. package/lib/toolbar/toolbar.spec.js +394 -0
  272. package/lib/toolbar/types.d.ts +4 -2
  273. package/lib/tooltip/index.d.ts +1 -1
  274. package/lib/tooltip/index.js +5 -1
  275. package/lib/tooltip/tooltip.spec.js +215 -0
  276. package/lib/tooltip/types.d.ts +1 -0
  277. package/lib/treeview/index.js +1 -0
  278. package/lib/treeview/treeview.spec.js +279 -0
  279. package/lib/{types-90c43ae1.d.ts → types-c1e2d0c9.d.ts} +2 -1
  280. package/lib/uitour/uitour.spec.js +176 -0
  281. package/package.json +67 -64
@@ -0,0 +1,215 @@
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 _index = _interopRequireDefault(require("./index"));
12
+
13
+ var _storageMock = _interopRequireWildcard(require("../../../../config/jest/storageMock"));
14
+
15
+ 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); }
16
+
17
+ 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; }
18
+
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+
21
+ describe('TextField', function () {
22
+ var textField = function textField(fieldProps) {
23
+ return /*#__PURE__*/_react.default.createElement(_index.default, fieldProps);
24
+ };
25
+
26
+ var setSessionStorageMock = function setSessionStorageMock() {
27
+ Object.defineProperty(window, 'sessionStorage', {
28
+ value: (0, _storageMock.default)()
29
+ });
30
+ };
31
+
32
+ describe('prop value should', function () {
33
+ it('be applied when is a numeric string', function () {
34
+ var value = '1';
35
+
36
+ var _render = (0, _react2.render)(textField({
37
+ value: value
38
+ })),
39
+ container = _render.container;
40
+
41
+ var inputHTML = container.querySelector('.textinput');
42
+ expect(inputHTML.value).toBe(value);
43
+ });
44
+ it('not be applied when is not a numeric string', function () {
45
+ var value = 'sus';
46
+
47
+ var _render2 = (0, _react2.render)(textField({
48
+ value: value
49
+ })),
50
+ container = _render2.container;
51
+
52
+ var inputHTML = container.querySelector('.textinput');
53
+ expect(inputHTML.value).toBe('sus');
54
+ });
55
+ });
56
+ it('should apply textAlign', function () {
57
+ var textAlign = 'left';
58
+
59
+ var _render3 = (0, _react2.render)(textField({
60
+ textAlign: textAlign
61
+ })),
62
+ container = _render3.container;
63
+
64
+ var inputHTML = container.querySelector('.textinput');
65
+ expect(inputHTML).toHaveClass("text-align-".concat(textAlign));
66
+ });
67
+ describe('prop permissionAttr', function () {
68
+ describe('when permission granted', function () {
69
+ it('should render subject', function () {
70
+ setSessionStorageMock();
71
+ var permissionAttr = (0, _storageMock.permissionAttrMockAuthorized)('unvisible');
72
+
73
+ var _render4 = (0, _react2.render)(textField({
74
+ permissionAttr: permissionAttr
75
+ })),
76
+ container = _render4.container;
77
+
78
+ expect(container.querySelector('.input-base-component')).not.toBeNull();
79
+ });
80
+ });
81
+ describe('when permission denied', function () {
82
+ it('onDenied.unvisible option should not render subject', function () {
83
+ setSessionStorageMock();
84
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('unvisible');
85
+
86
+ var _render5 = (0, _react2.render)(textField({
87
+ permissionAttr: permissionAttr
88
+ })),
89
+ container = _render5.container;
90
+
91
+ expect(container.querySelector('.input-base-component')).toBeNull();
92
+ });
93
+ describe('onDenied.disabled option/disabled prop should', function () {
94
+ it('disable subject', function () {
95
+ setSessionStorageMock();
96
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
97
+ var onChange = jest.fn();
98
+
99
+ var _render6 = (0, _react2.render)(textField({
100
+ permissionAttr: permissionAttr,
101
+ onChange: onChange
102
+ })),
103
+ container = _render6.container;
104
+
105
+ var inputHTML = container.querySelector('.textinput');
106
+
107
+ _react2.fireEvent.change(inputHTML, {
108
+ target: {
109
+ value: 'sus'
110
+ }
111
+ });
112
+
113
+ expect(inputHTML.disabled).toBeTruthy();
114
+ expect(onChange).not.toBeCalled();
115
+ });
116
+ it('add -disabled css class', function () {
117
+ setSessionStorageMock();
118
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
119
+
120
+ var _render7 = (0, _react2.render)(textField({
121
+ permissionAttr: permissionAttr
122
+ })),
123
+ container = _render7.container;
124
+
125
+ var inputWrapper = container.querySelector('.inputwrapper');
126
+ expect(inputWrapper).toHaveClass('-disabled');
127
+ });
128
+ });
129
+ describe('onDenied.readOnly option/readOnly prop should', function () {
130
+ it('apply readOnly attribute in input', function () {
131
+ setSessionStorageMock();
132
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('readOnly');
133
+
134
+ var _render8 = (0, _react2.render)(textField({
135
+ permissionAttr: permissionAttr
136
+ })),
137
+ container = _render8.container;
138
+
139
+ var inputHTML = container.querySelector('.textinput');
140
+ expect(inputHTML.readOnly).toBeTruthy();
141
+ });
142
+ it('disable callbacks', function () {
143
+ setSessionStorageMock();
144
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('readOnly');
145
+ var onChange = jest.fn();
146
+
147
+ var _render9 = (0, _react2.render)(textField({
148
+ permissionAttr: permissionAttr,
149
+ onChange: onChange
150
+ })),
151
+ container = _render9.container;
152
+
153
+ var inputHTML = container.querySelector('.textinput');
154
+
155
+ _react2.fireEvent.change(inputHTML, {
156
+ target: {
157
+ value: 'sus'
158
+ }
159
+ });
160
+
161
+ expect(onChange).not.toBeCalled();
162
+ });
163
+ });
164
+ describe('onDenied.hideContent should', function () {
165
+ it('should set input value to blank', function () {
166
+ setSessionStorageMock();
167
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
168
+
169
+ var _render10 = (0, _react2.render)(textField({
170
+ permissionAttr: permissionAttr,
171
+ value: 'text'
172
+ })),
173
+ container = _render10.container;
174
+
175
+ var inputHTML = container.querySelector('.textinput');
176
+ expect(inputHTML.value).toBe('');
177
+ });
178
+ it('disable input', function () {
179
+ setSessionStorageMock();
180
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
181
+ var onChange = jest.fn();
182
+
183
+ var _render11 = (0, _react2.render)(textField({
184
+ permissionAttr: permissionAttr,
185
+ onChange: onChange
186
+ })),
187
+ container = _render11.container;
188
+
189
+ var inputHTML = container.querySelector('.textinput');
190
+
191
+ _react2.fireEvent.change(inputHTML, {
192
+ target: {
193
+ value: 'sus'
194
+ }
195
+ });
196
+
197
+ expect(onChange).not.toBeCalled();
198
+ expect(inputHTML.disabled).toBeTruthy();
199
+ });
200
+ it('add -disabled css class', function () {
201
+ setSessionStorageMock();
202
+ var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
203
+
204
+ var _render12 = (0, _react2.render)(textField({
205
+ permissionAttr: permissionAttr
206
+ })),
207
+ container = _render12.container;
208
+
209
+ var inputWrapper = container.querySelector('.inputwrapper');
210
+ expect(inputWrapper).toHaveClass('-disabled');
211
+ });
212
+ });
213
+ });
214
+ });
215
+ });
@@ -3,6 +3,7 @@ import { PermissionAttr } from '../../@types/PermissionAttr.js';
3
3
  import { IBaseProps, CustomInputEvent } from '../base/types.js';
4
4
  import { WithTooltipProps } from '../../internals/types.js';
5
5
  import 'react';
6
+ import '../../@types/Align.js';
6
7
  import '../../@types/Position.js';
7
8
 
8
9
  type CommonProperties = Pick<WithTooltipProps, 'tooltip' | 'tooltipPosition' | 'tooltipWidth'>;
@@ -18,7 +19,6 @@ interface ITextField extends IBaseProps, CommonProperties {
18
19
  leftElements?: JSX.Element | JSX.Element[];
19
20
  rightElements?: JSX.Element | JSX.Element[];
20
21
  permissionAttr?: PermissionAttr;
21
- textAlign?: string;
22
22
  gridLayout?: string;
23
23
  }
24
24
 
@@ -1,6 +1,7 @@
1
1
  import { ITextAreaProps } from './types.js';
2
2
  import '../base/types.js';
3
3
  import 'react';
4
+ import '../../@types/Align.js';
4
5
  import '../../@types/Period.js';
5
6
  import '../../@types/PermissionAttr.js';
6
7
 
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _InputTextBase = _interopRequireDefault(require("../base/InputTextBase"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
10
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } // eslint-disable-next-line import/no-named-as-default
11
11
  var TextArea = function TextArea(props) {
12
12
  var rows = props.rows,
13
13
  cols = props.cols,
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _react2 = require("@testing-library/react");
6
+
7
+ require("@testing-library/jest-dom/extend-expect");
8
+
9
+ var _index = _interopRequireDefault(require("./index"));
10
+
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+
13
+ describe('TextArea', function () {
14
+ var textArea = function textArea(textAreaProps) {
15
+ return /*#__PURE__*/_react.default.createElement(_index.default, textAreaProps);
16
+ };
17
+
18
+ it('should render correctly', function () {
19
+ var _render = (0, _react2.render)(textArea()),
20
+ container = _render.container;
21
+
22
+ var textAreaHTML = container.querySelector('textarea.textinput');
23
+ expect(container.firstChild).toHaveClass('textarea-container');
24
+ expect(textAreaHTML).toBeInTheDocument();
25
+ expect(textAreaHTML.type).toBe('textarea');
26
+ });
27
+ it('should apply customClass', function () {
28
+ var customClass = 'teste-textarea';
29
+
30
+ var _render2 = (0, _react2.render)(textArea({
31
+ customClass: customClass
32
+ })),
33
+ container = _render2.container;
34
+
35
+ expect(container.firstChild).toHaveClass(customClass);
36
+ });
37
+ it('should apply rows', function () {
38
+ var rows = '12';
39
+
40
+ var _render3 = (0, _react2.render)(textArea({
41
+ rows: rows
42
+ })),
43
+ container = _render3.container;
44
+
45
+ var textAreaHTML = container.querySelector('textarea.textinput');
46
+ expect(textAreaHTML.rows).toBe(parseInt(rows, 10));
47
+ });
48
+ it('should apply cols', function () {
49
+ var cols = '12';
50
+
51
+ var _render4 = (0, _react2.render)(textArea({
52
+ cols: cols
53
+ })),
54
+ container = _render4.container;
55
+
56
+ var textAreaHTML = container.querySelector('textarea.textinput');
57
+ expect(textAreaHTML.cols).toBe(parseInt(cols, 10));
58
+ });
59
+ });
@@ -1,5 +1,6 @@
1
1
  import { IBaseProps } from '../base/types.js';
2
2
  import 'react';
3
+ import '../../@types/Align.js';
3
4
  import '../../@types/Period.js';
4
5
  import '../../@types/PermissionAttr.js';
5
6
 
@@ -3,9 +3,13 @@ import { PermissionAttr, OnDenied } from '../@types/PermissionAttr.js';
3
3
  import { DataCombo } from '../@types/DataCombo.js';
4
4
  import { IBaseProps, CustomInputEvent } from './base/types.js';
5
5
  import { IDrawerProps } from '../drawer/types.js';
6
+ import { TextAlign } from '../@types/Align.js';
6
7
  import '../@types/Period.js';
7
8
  import '../@types/Position.js';
9
+ import '../@types/Icon.js';
10
+ import '../icons/helper.js';
8
11
 
12
+ type DescriptionKey = string | ((dataSelected: DataCombo) => string);
9
13
  interface IAdvancedFilterProps extends Omit<IDrawerProps, 'content'> {
10
14
  onStateChange?: (value?: boolean) => void;
11
15
  headerTitle?: string;
@@ -16,7 +20,7 @@ interface ISearchProps extends IBaseProps {
16
20
  onReset?: (event?: CustomInputEvent) => void;
17
21
  onChange?: (event?: CustomInputEvent) => void;
18
22
  onClick?: (event: MouseEvent<HTMLButtonElement>) => void;
19
- textAlign?: string;
23
+ textAlign?: TextAlign;
20
24
  disabled?: boolean;
21
25
  readOnly?: boolean;
22
26
  value?: string;
@@ -87,7 +91,7 @@ interface IMaskHOCProps {
87
91
  customClass?: string;
88
92
  customClassForInputContent?: string;
89
93
  customClassForLabel?: string;
90
- textAlign?: string;
94
+ textAlign?: TextAlign;
91
95
  onBlur?: (e: CustomInputEvent) => void;
92
96
  leftElements?: JSX.Element | JSX.Element[];
93
97
  rounded?: boolean;
@@ -98,7 +102,7 @@ interface IMaskHOCProps {
98
102
  }
99
103
  interface IDropdownSelectProps {
100
104
  idKey: string;
101
- descriptionKey: string;
105
+ descriptionKey: DescriptionKey;
102
106
  dropdownWidth: number;
103
107
  showClearButton?: boolean;
104
108
  handleOnSelect: (item?: DataCombo) => void;
@@ -9,6 +9,7 @@ interface WithTooltipProps {
9
9
  tooltipPosition?: Exclude<Position, 'center'>;
10
10
  style?: CSSProperties;
11
11
  handlerSetOnDenied?: (onDeniedValue: OnDenied) => void;
12
+ errorMessage?: string;
12
13
  }
13
14
  interface GetDisplayNameParams {
14
15
  displayName?: string;
@@ -35,7 +35,8 @@ var withTooltip = function withTooltip(WrappedComponent) {
35
35
  _props$space = props.space,
36
36
  space = _props$space === void 0 ? 20 : _props$space,
37
37
  _props$tooltipPositio = props.tooltipPosition,
38
- tooltipPosition = _props$tooltipPositio === void 0 ? 'bottom' : _props$tooltipPositio;
38
+ tooltipPosition = _props$tooltipPositio === void 0 ? 'bottom' : _props$tooltipPositio,
39
+ errorMessage = props.errorMessage;
39
40
  var _useState = (0, _react.useState)(tooltipPosition),
40
41
  _useState2 = _slicedToArray(_useState, 2),
41
42
  stateTooltipPosition = _useState2[0],
@@ -70,10 +71,15 @@ var withTooltip = function withTooltip(WrappedComponent) {
70
71
  };
71
72
  (0, _react.useEffect)(function () {
72
73
  if (hasTooltip(props)) {
73
- document.addEventListener('mouseover', onMouseOver);
74
- document.addEventListener('scroll', onAnyScroll, true);
75
- if (targetElement && targetElement.current) {
76
- targetElement.current.addEventListener('mouseout', onMouseOut);
74
+ if (errorMessage) {
75
+ setShowTooltip(true);
76
+ } else {
77
+ setShowTooltip(false);
78
+ document.addEventListener('mouseover', onMouseOver);
79
+ document.addEventListener('scroll', onAnyScroll, true);
80
+ if (targetElement && targetElement.current) {
81
+ targetElement.current.addEventListener('mouseout', onMouseOut);
82
+ }
77
83
  }
78
84
  }
79
85
  return function () {
@@ -85,7 +91,7 @@ var withTooltip = function withTooltip(WrappedComponent) {
85
91
  }
86
92
  }
87
93
  };
88
- }, []);
94
+ }, [errorMessage]);
89
95
  (0, _react.useEffect)(function () {
90
96
  if (targetElement.current && tooltipElement.current) {
91
97
  var width = tooltipDimensions.width,
@@ -141,6 +147,7 @@ var withTooltip = function withTooltip(WrappedComponent) {
141
147
  if (tooltip) {
142
148
  return /*#__PURE__*/_react.default.createElement(_tooltip.default, {
143
149
  text: tooltip,
150
+ textError: errorMessage,
144
151
  tooltipRef: tooltipElement,
145
152
  style: tooltipStyle,
146
153
  className: stateTooltipPosition,
@@ -1,6 +1,8 @@
1
1
  import { ILabelMessagesProps } from './types.js';
2
2
  import 'react';
3
3
  import '../@types/LabelStyles.js';
4
+ import '../@types/Icon.js';
5
+ import '../icons/helper.js';
4
6
 
5
7
  declare const LabelMessages: ({ style, icon, flat, iconName, handlerClosed, square, visible, children, customClass, type, showCloseButton }: ILabelMessagesProps) => JSX.Element | null;
6
8
 
@@ -24,8 +24,7 @@ var LabelMessages = function LabelMessages(_ref) {
24
24
  icon = _ref$icon === void 0 ? null : _ref$icon,
25
25
  _ref$flat = _ref.flat,
26
26
  flat = _ref$flat === void 0 ? false : _ref$flat,
27
- _ref$iconName = _ref.iconName,
28
- iconName = _ref$iconName === void 0 ? '' : _ref$iconName,
27
+ iconName = _ref.iconName,
29
28
  handlerClosed = _ref.handlerClosed,
30
29
  _ref$square = _ref.square,
31
30
  square = _ref$square === void 0 ? true : _ref$square,
@@ -47,9 +46,9 @@ var LabelMessages = function LabelMessages(_ref) {
47
46
  return "labelmessages-component -".concat(type, " ").concat(customClass, "\n ").concat(square && '-square', " ").concat(flat && '-flat');
48
47
  };
49
48
  var getIcon = function getIcon() {
50
- if (icon !== null) {
49
+ if (icon) {
51
50
  return icon;
52
- } else if (iconName !== null) {
51
+ } else if (iconName) {
53
52
  return /*#__PURE__*/_react.default.createElement(_icons.default, {
54
53
  name: iconName,
55
54
  size: 16,
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _react2 = require("@testing-library/react");
6
+
7
+ require("@testing-library/jest-dom/extend-expect");
8
+
9
+ require("babel-polyfill");
10
+
11
+ var _index = _interopRequireDefault(require("./index"));
12
+
13
+ var _icons = _interopRequireDefault(require("../icons"));
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
+
17
+ describe('LabelMessages', function () {
18
+ describe('Default', function () {
19
+ var Default = /*#__PURE__*/_react.default.createElement(_index.default, {
20
+ icon: /*#__PURE__*/_react.default.createElement(_icons.default, {
21
+ name: "user"
22
+ })
23
+ }, "Teste");
24
+
25
+ it('should render correctly', function () {
26
+ var _render = (0, _react2.render)(Default),
27
+ container = _render.container;
28
+
29
+ expect(container.firstChild).toHaveTextContent('Teste');
30
+ });
31
+ it('should render icon', function () {
32
+ var _render2 = (0, _react2.render)(Default),
33
+ getByTestId = _render2.getByTestId;
34
+
35
+ expect(getByTestId('icon')).toBeTruthy();
36
+ });
37
+ it('should render icon when use iconName', function () {
38
+ var _render3 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_index.default, {
39
+ iconName: "user"
40
+ }, "Teste")),
41
+ getByTestId = _render3.getByTestId;
42
+
43
+ expect(getByTestId('icon')).toBeTruthy();
44
+ });
45
+ it('should render close button', function () {
46
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_index.default, {
47
+ showCloseButton: true
48
+ }, "Teste")),
49
+ getByRole = _render4.getByRole;
50
+
51
+ expect(getByRole('presentation')).toBeTruthy();
52
+ });
53
+ it('should execute function when clicking the close button', function () {
54
+ var mockHandlerClosed = jest.fn();
55
+
56
+ var mockLabelMessage = /*#__PURE__*/_react.default.createElement(_index.default, {
57
+ showCloseButton: true,
58
+ handlerClosed: mockHandlerClosed
59
+ }, "Teste");
60
+
61
+ (0, _react2.render)(mockLabelMessage);
62
+
63
+ _react2.fireEvent.click(_react2.screen.getByRole('presentation'));
64
+
65
+ expect(mockHandlerClosed).toHaveBeenCalled();
66
+ });
67
+ it('should close labelMessage', function () {
68
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_index.default, {
69
+ showCloseButton: true
70
+ }, "Teste")),
71
+ container = _render5.container;
72
+
73
+ _react2.fireEvent.click(_react2.screen.getByRole('presentation'));
74
+
75
+ expect(container.firstChild).not.toBeInTheDocument();
76
+ });
77
+ it('should apply customClass', function () {
78
+ var _render6 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_index.default, {
79
+ customClass: "customClass"
80
+ }, "Teste")),
81
+ container = _render6.container;
82
+
83
+ expect(container.firstChild).toHaveClass('customClass');
84
+ });
85
+ it('should apply inline style', function () {
86
+ var _render7 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_index.default, {
87
+ style: {
88
+ borderWidth: 10
89
+ }
90
+ }, "Teste")),
91
+ container = _render7.container;
92
+
93
+ expect(container.firstChild).toHaveStyle('border-width: 10px');
94
+ });
95
+ it('should hide labelMessage when visible is false', function () {
96
+ var _render8 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_index.default, {
97
+ visible: false
98
+ }, "Teste")),
99
+ container = _render8.container;
100
+
101
+ expect(container.firstChild).not.toBeTruthy();
102
+ });
103
+ });
104
+ describe('Danger', function () {
105
+ var dangerLabelMessages = /*#__PURE__*/_react.default.createElement(_index.default, {
106
+ type: "danger"
107
+ }, "Teste");
108
+
109
+ it('should apply type danger', function () {
110
+ var _render9 = (0, _react2.render)(dangerLabelMessages),
111
+ container = _render9.container;
112
+
113
+ expect(container.firstChild).toHaveClass('-danger');
114
+ });
115
+ });
116
+ describe('Info', function () {
117
+ var infoLabelMessages = /*#__PURE__*/_react.default.createElement(_index.default, {
118
+ type: "info"
119
+ }, "Teste");
120
+
121
+ it('should apply type info', function () {
122
+ var _render10 = (0, _react2.render)(infoLabelMessages),
123
+ container = _render10.container;
124
+
125
+ expect(container.firstChild).toHaveClass('-info');
126
+ });
127
+ });
128
+ describe('Warning', function () {
129
+ var warningLabelMessages = /*#__PURE__*/_react.default.createElement(_index.default, {
130
+ type: "warning"
131
+ }, "Teste");
132
+
133
+ it('should apply type warning', function () {
134
+ var _render11 = (0, _react2.render)(warningLabelMessages),
135
+ container = _render11.container;
136
+
137
+ expect(container.firstChild).toHaveClass('-warning');
138
+ });
139
+ });
140
+ describe('Success', function () {
141
+ var successLabelMessages = /*#__PURE__*/_react.default.createElement(_index.default, {
142
+ type: "success"
143
+ }, "Teste");
144
+
145
+ it('should apply type success', function () {
146
+ var _render12 = (0, _react2.render)(successLabelMessages),
147
+ container = _render12.container;
148
+
149
+ expect(container.firstChild).toHaveClass('-success');
150
+ });
151
+ });
152
+ describe('Flat', function () {
153
+ var flatLabelMessages = /*#__PURE__*/_react.default.createElement(_index.default, {
154
+ flat: true
155
+ }, "Teste");
156
+
157
+ it('should apply rounded border', function () {
158
+ var _render13 = (0, _react2.render)(flatLabelMessages),
159
+ container = _render13.container;
160
+
161
+ expect(container.firstChild).toHaveClass('-flat');
162
+ });
163
+ });
164
+ describe('Square', function () {
165
+ var squareLabelMessages = /*#__PURE__*/_react.default.createElement(_index.default, {
166
+ square: true
167
+ }, "Teste");
168
+
169
+ it('should apply rounded borderless', function () {
170
+ var _render14 = (0, _react2.render)(squareLabelMessages),
171
+ container = _render14.container;
172
+
173
+ expect(container.firstChild).toHaveClass('-square');
174
+ });
175
+ });
176
+ });
@@ -1,10 +1,12 @@
1
1
  import { CSSProperties, ReactNode } from 'react';
2
2
  import { LabelStyles } from '../@types/LabelStyles.js';
3
+ import { IconNames } from '../@types/Icon.js';
4
+ import '../icons/helper.js';
3
5
 
4
6
  interface ILabelMessagesProps {
5
7
  style?: CSSProperties;
6
8
  type?: LabelStyles;
7
- iconName?: string;
9
+ iconName?: IconNames;
8
10
  icon?: ReactNode | null;
9
11
  children?: ReactNode;
10
12
  customClass?: string;
@@ -3,6 +3,8 @@ import 'react';
3
3
  import '../@types/PermissionAttr.js';
4
4
  import '../@types/Position.js';
5
5
  import '../@types/Size.js';
6
+ import '../@types/Icon.js';
7
+ import '../icons/helper.js';
6
8
 
7
9
  declare const DangerLabel: ({ className, ...rest }: ILabelProps) => JSX.Element;
8
10
 
@@ -3,6 +3,8 @@ import 'react';
3
3
  import '../@types/PermissionAttr.js';
4
4
  import '../@types/Position.js';
5
5
  import '../@types/Size.js';
6
+ import '../@types/Icon.js';
7
+ import '../icons/helper.js';
6
8
 
7
9
  declare const _default: {
8
10
  (props: ILabelProps): JSX.Element;
@@ -3,6 +3,8 @@ import 'react';
3
3
  import '../@types/PermissionAttr.js';
4
4
  import '../@types/Position.js';
5
5
  import '../@types/Size.js';
6
+ import '../@types/Icon.js';
7
+ import '../icons/helper.js';
6
8
 
7
9
  declare const InfoLabel: ({ className, ...rest }: ILabelProps) => JSX.Element;
8
10