linear-react-components-ui 0.4.75-beta.1 → 0.4.75-beta.13

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 (80) hide show
  1. package/.eslintrc.js +2 -5
  2. package/.vscode/settings.json +9 -9
  3. package/config/jest/cssTransform.js +14 -0
  4. package/config/jest/fileTransform.js +12 -0
  5. package/config/jest/storageMock.js +40 -0
  6. package/jest.config.js +18 -0
  7. package/lib/alerts/alert.spec.js +133 -0
  8. package/lib/assets/styles/popover.scss +9 -11
  9. package/lib/assets/styles/treeview.scss +0 -32
  10. package/lib/avatar/avatar.spec.js +190 -0
  11. package/lib/avatar/index.js +6 -2
  12. package/lib/badge/badge.spec.js +127 -0
  13. package/lib/badge/index.js +3 -5
  14. package/lib/buttons/DefaultButton.js +1 -7
  15. package/lib/buttons/buttons.spec.js +504 -0
  16. package/lib/calendar/calendar.spec.js +171 -0
  17. package/lib/checkbox/checkbox.spec.js +215 -0
  18. package/lib/checkbox/index.js +7 -20
  19. package/lib/dialog/Custom.js +7 -1
  20. package/lib/dialog/base/index.js +3 -0
  21. package/lib/dialog/dialog.spec.js +488 -0
  22. package/lib/dialog/form/index.js +7 -1
  23. package/lib/drawer/Drawer.js +3 -0
  24. package/lib/drawer/Drawer.spec.js +258 -0
  25. package/lib/drawer/Header.js +4 -1
  26. package/lib/dropdown/Popup.js +1 -0
  27. package/lib/dropdown/dropdown.spec.js +168 -0
  28. package/lib/dropdown/withDropdown.js +10 -4
  29. package/lib/fieldset/fieldset.spec.js +329 -0
  30. package/lib/form/form.spec.js +285 -0
  31. package/lib/gridlayout/GridRow.js +1 -1
  32. package/lib/gridlayout/gridLayout.spec.js +169 -0
  33. package/lib/icons/icons.spec.js +86 -0
  34. package/lib/icons/index.js +2 -0
  35. package/lib/inputs/base/InputTextBase.js +2 -0
  36. package/lib/inputs/base/base.spec.js +690 -0
  37. package/lib/inputs/color/color_input.spec.js +174 -0
  38. package/lib/inputs/color/index.js +2 -2
  39. package/lib/inputs/date/date.spec.js +344 -0
  40. package/lib/inputs/date/index.js +7 -6
  41. package/lib/inputs/mask/Cpf.js +9 -9
  42. package/lib/inputs/mask/input_mask.spec.js +590 -0
  43. package/lib/inputs/number/numberfield.spec.js +215 -0
  44. package/lib/inputs/search/search_input.spec.js +209 -0
  45. package/lib/inputs/select/select.spec.js +391 -0
  46. package/lib/inputs/text/textfield.spec.js +215 -0
  47. package/lib/inputs/textarea/textarea.spec.js +59 -0
  48. package/lib/labelMessages/index.js +3 -2
  49. package/lib/labelMessages/labelMessages.spec.js +176 -0
  50. package/lib/labels/label.spec.js +162 -0
  51. package/lib/list/Item.js +3 -3
  52. package/lib/list/index.js +17 -8
  53. package/lib/list/list.spec.js +609 -0
  54. package/lib/menus/float/float-menu.spec.js +221 -0
  55. package/lib/menus/sidenav/sidenav.spec.js +312 -0
  56. package/lib/noPermission/index.js +2 -1
  57. package/lib/panel/panel.spec.js +216 -0
  58. package/lib/permissionValidations.js +1 -1
  59. package/lib/popover/index.js +2 -1
  60. package/lib/popover/popover.spec.js +146 -0
  61. package/lib/progress/progress.spec.js +86 -0
  62. package/lib/radio/radio.spec.js +189 -0
  63. package/lib/spinner/SpinnerLoading.js +14 -24
  64. package/lib/spinner/spinner.spec.js +152 -0
  65. package/lib/split/Split.js +5 -1
  66. package/lib/split/split.spec.js +151 -0
  67. package/lib/table/Header.js +3 -1
  68. package/lib/table/Row.js +1 -4
  69. package/lib/table/index.js +1 -4
  70. package/lib/table/table.spec.js +352 -0
  71. package/lib/tabs/tabs.spec.js +346 -0
  72. package/lib/toolbar/toolbar.spec.js +394 -0
  73. package/lib/tooltip/index.js +1 -0
  74. package/lib/tooltip/tooltip.spec.js +203 -0
  75. package/lib/treeview/Node.js +13 -255
  76. package/lib/treeview/index.js +35 -366
  77. package/lib/treeview/treeview.spec.js +261 -0
  78. package/package.json +11 -2
  79. package/.DS_Store +0 -0
  80. package/lib/checkbox/Label.js +0 -37
@@ -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 = require("@testing-library/react");
6
+
7
+ var _react2 = _interopRequireDefault(require("react"));
8
+
9
+ require("babel-polyfill");
10
+
11
+ var _checkbox = _interopRequireDefault(require("../checkbox"));
12
+
13
+ var _storageMock = _interopRequireWildcard(require("../../../config/jest/storageMock"));
14
+
15
+ var _gridlayout = require("../gridlayout");
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
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
24
+
25
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
26
+
27
+ function _extends() { _extends = Object.assign || 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); }
28
+
29
+ var CheckBoxTest = function CheckBoxTest(props) {
30
+ return /*#__PURE__*/_react2["default"].createElement(_gridlayout.GridRow, {
31
+ template: "columns",
32
+ style: {
33
+ marginBottom: 20
34
+ }
35
+ }, /*#__PURE__*/_react2["default"].createElement(_checkbox["default"], _extends({}, props, {
36
+ name: "test",
37
+ value: "1",
38
+ label: "testLabel",
39
+ id: "1",
40
+ hint: "test",
41
+ gridLayout: "6 6 6 6"
42
+ })));
43
+ };
44
+
45
+ describe('CheckBox', function () {
46
+ describe('Default', function () {
47
+ it('should render without errors', function () {
48
+ var _render = (0, _react.render)(CheckBoxTest()),
49
+ container = _render.container;
50
+
51
+ expect(container.firstChild).toBeTruthy();
52
+ });
53
+ it('should hint', function () {
54
+ var _render2 = (0, _react.render)(CheckBoxTest()),
55
+ container = _render2.container;
56
+
57
+ expect(container.firstChild).toContainElement(container.querySelector('.checkbox-hint'));
58
+ });
59
+ it('should label text match with prop label', function () {
60
+ var _render3 = (0, _react.render)(CheckBoxTest()),
61
+ container = _render3.container;
62
+
63
+ expect(container.querySelector('.checkbox-description')).toHaveTextContent('testLabel');
64
+ });
65
+ it('should checkbox have id ', function () {
66
+ var _render4 = (0, _react.render)(CheckBoxTest()),
67
+ container = _render4.container;
68
+
69
+ expect(container.querySelector('.checkbox-component').id).toBe('1');
70
+ });
71
+ it('should checkbox have name test', function () {
72
+ var _render5 = (0, _react.render)(CheckBoxTest()),
73
+ container = _render5.container;
74
+
75
+ expect(container.querySelector('.checkbox-component').name).toBe('test');
76
+ });
77
+ it('should checkbox have value', function () {
78
+ var _render6 = (0, _react.render)(CheckBoxTest()),
79
+ container = _render6.container;
80
+
81
+ expect(container.querySelector('.checkbox-component').value).toBe('1');
82
+ });
83
+ it('should change checked', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
84
+ var _render7, container;
85
+
86
+ return regeneratorRuntime.wrap(function _callee$(_context) {
87
+ while (1) {
88
+ switch (_context.prev = _context.next) {
89
+ case 0:
90
+ _render7 = (0, _react.render)(CheckBoxTest()), container = _render7.container;
91
+ expect(container.querySelector('.checkbox-component').checked).toEqual(false);
92
+
93
+ _react.fireEvent.click(container.querySelector('.checkbox-component'));
94
+
95
+ expect(container.querySelector('.checkbox-component').checked).toEqual(true);
96
+
97
+ case 4:
98
+ case "end":
99
+ return _context.stop();
100
+ }
101
+ }
102
+ }, _callee);
103
+ })));
104
+ it('should disable', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
105
+ var _render8, container;
106
+
107
+ return regeneratorRuntime.wrap(function _callee2$(_context2) {
108
+ while (1) {
109
+ switch (_context2.prev = _context2.next) {
110
+ case 0:
111
+ _render8 = (0, _react.render)(CheckBoxTest({
112
+ disabled: true
113
+ })), container = _render8.container;
114
+ expect(container.querySelector('.checkbox-component').checked).toEqual(false);
115
+
116
+ _react.fireEvent.click(container.querySelector('.checkbox-component'));
117
+
118
+ expect(container.querySelector('.checkbox-component').checked).toEqual(false);
119
+
120
+ case 4:
121
+ case "end":
122
+ return _context2.stop();
123
+ }
124
+ }
125
+ }, _callee2);
126
+ })));
127
+ it('should required', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
128
+ var _render9, container;
129
+
130
+ return regeneratorRuntime.wrap(function _callee3$(_context3) {
131
+ while (1) {
132
+ switch (_context3.prev = _context3.next) {
133
+ case 0:
134
+ _render9 = (0, _react.render)(CheckBoxTest({
135
+ required: true
136
+ })), container = _render9.container;
137
+ expect(container.querySelector('.checkbox-component').required).toEqual(true);
138
+
139
+ case 2:
140
+ case "end":
141
+ return _context3.stop();
142
+ }
143
+ }
144
+ }, _callee3);
145
+ })));
146
+ it('should autoFocus', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {
147
+ var _render10, container;
148
+
149
+ return regeneratorRuntime.wrap(function _callee4$(_context4) {
150
+ while (1) {
151
+ switch (_context4.prev = _context4.next) {
152
+ case 0:
153
+ _render10 = (0, _react.render)(CheckBoxTest({
154
+ autoFocus: true
155
+ })), container = _render10.container;
156
+ container.querySelector('.checkbox-component').focus();
157
+ expect(container.querySelector('.checkbox-component')).toHaveFocus();
158
+
159
+ case 3:
160
+ case "end":
161
+ return _context4.stop();
162
+ }
163
+ }
164
+ }, _callee4);
165
+ })));
166
+ });
167
+ describe('Permission', function () {
168
+ var defineStorage = function defineStorage() {
169
+ Object.defineProperty(window, 'sessionStorage', {
170
+ value: (0, _storageMock["default"])()
171
+ });
172
+ };
173
+
174
+ it('should check permission', function () {
175
+ defineStorage();
176
+
177
+ var _render11 = (0, _react.render)( /*#__PURE__*/_react2["default"].createElement(_checkbox["default"], {
178
+ permissionAttr: (0, _storageMock.permissionAttrMockAuthorized)('disabled')
179
+ })),
180
+ container = _render11.container;
181
+
182
+ expect(container.firstChild).not.toHaveClass('disabled');
183
+ expect(container.firstChild).toBeTruthy();
184
+ });
185
+ it('should check permission, be unavaible and onDenied is disabled', function () {
186
+ defineStorage();
187
+ var mockOnClick = jest.fn();
188
+
189
+ var mockCheckbox = /*#__PURE__*/_react2["default"].createElement(_checkbox["default"], {
190
+ onClick: mockOnClick,
191
+ permissionAttr: (0, _storageMock.permissionAttrMockUnauthorized)('disabled')
192
+ });
193
+
194
+ var _render12 = (0, _react.render)(mockCheckbox),
195
+ getByTestId = _render12.getByTestId,
196
+ container = _render12.container;
197
+
198
+ _react.fireEvent.click(container.firstChild);
199
+
200
+ expect(getByTestId('checkbox-container')).toHaveClass('disabled');
201
+ expect(container.querySelector('.checkbox-component')).toBeDisabled();
202
+ expect(mockOnClick).toBeCalledTimes(0);
203
+ });
204
+ it('should check permission, be unavaible and onDenied is unvisible', function () {
205
+ defineStorage();
206
+
207
+ var _render13 = (0, _react.render)( /*#__PURE__*/_react2["default"].createElement(_checkbox["default"], {
208
+ permissionAttr: (0, _storageMock.permissionAttrMockUnauthorized)('unvisible')
209
+ })),
210
+ container = _render13.container;
211
+
212
+ expect(container.firstChild).not.toBeTruthy();
213
+ });
214
+ });
215
+ });
@@ -13,8 +13,6 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
14
  var _gridlayout = _interopRequireDefault(require("../gridlayout"));
15
15
 
16
- var _Label = _interopRequireDefault(require("./Label"));
17
-
18
16
  require("../assets/styles/checkbox.scss");
19
17
 
20
18
  var _permissionValidations = require("../permissionValidations");
@@ -54,10 +52,7 @@ var CheckBox = function CheckBox(props) {
54
52
  id = props.id,
55
53
  gridLayout = props.gridLayout,
56
54
  checked = props.checked,
57
- permissionAttr = props.permissionAttr,
58
- tooltip = props.tooltip,
59
- tooltipPosition = props.tooltipPosition,
60
- tooltipWidth = props.tooltipWidth;
55
+ permissionAttr = props.permissionAttr;
61
56
 
62
57
  var _useState = (0, _react.useState)(checked),
63
58
  _useState2 = _slicedToArray(_useState, 2),
@@ -106,6 +101,7 @@ var CheckBox = function CheckBox(props) {
106
101
 
107
102
  var renderInput = function renderInput() {
108
103
  return /*#__PURE__*/_react["default"].createElement("div", getProps(), /*#__PURE__*/_react["default"].createElement("span", {
104
+ "data-testid": "checkbox-container",
109
105
  className: shouldDisable() ? 'disabled' : '',
110
106
  onClick: !shouldDisable() ? function () {
111
107
  return setIsChecked(!isChecked);
@@ -126,12 +122,9 @@ var CheckBox = function CheckBox(props) {
126
122
  value: value,
127
123
  id: id,
128
124
  onChange: function onChange() {}
129
- }), /*#__PURE__*/_react["default"].createElement("span", null), label && /*#__PURE__*/_react["default"].createElement(_Label["default"], {
130
- label: label,
131
- tooltip: tooltip,
132
- tooltipWidth: tooltipWidth,
133
- tooltipPosition: tooltipPosition
134
- })), hint && /*#__PURE__*/_react["default"].createElement("div", {
125
+ }), /*#__PURE__*/_react["default"].createElement("span", null), label && /*#__PURE__*/_react["default"].createElement("span", {
126
+ className: "checkbox-description"
127
+ }, label)), hint && /*#__PURE__*/_react["default"].createElement("div", {
135
128
  className: "checkbox-hint"
136
129
  }, hint));
137
130
  };
@@ -156,10 +149,7 @@ CheckBox.propTypes = {
156
149
  autofocus: _propTypes["default"].bool,
157
150
  hint: _propTypes["default"].string,
158
151
  gridLayout: _propTypes["default"].string,
159
- permissionAttr: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].arrayOf(_propTypes["default"].object)]),
160
- tooltip: _propTypes["default"].string,
161
- tooltipPosition: _propTypes["default"].string,
162
- tooltipWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number])
152
+ permissionAttr: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].arrayOf(_propTypes["default"].object)])
163
153
  };
164
154
  CheckBox.defaultProps = {
165
155
  label: '',
@@ -174,10 +164,7 @@ CheckBox.defaultProps = {
174
164
  hint: undefined,
175
165
  id: undefined,
176
166
  gridLayout: undefined,
177
- permissionAttr: undefined,
178
- tooltip: '',
179
- tooltipPosition: 'top',
180
- tooltipWidth: 'auto'
167
+ permissionAttr: undefined
181
168
  };
182
169
  var _default = CheckBox;
183
170
  exports["default"] = _default;
@@ -7,6 +7,8 @@ exports["default"] = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
+ var _uuid = _interopRequireDefault(require("uuid"));
11
+
10
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
13
 
12
14
  var _base = _interopRequireDefault(require("./base"));
@@ -48,7 +50,11 @@ var Custom = function Custom(props) {
48
50
  className: "text"
49
51
  }, props.text)), /*#__PURE__*/_react["default"].createElement(_Footer["default"], null, /*#__PURE__*/_react["default"].createElement(_buttons.ButtonContainer, {
50
52
  position: "right"
51
- }, props.buttons)));
53
+ }, props.buttons.map(function (button) {
54
+ return /*#__PURE__*/_react["default"].cloneElement(button, {
55
+ key: "button-".concat(_uuid["default"].v1())
56
+ });
57
+ }))));
52
58
  };
53
59
 
54
60
  Custom.propTypes = {
@@ -34,6 +34,7 @@ var BaseDialog = function BaseDialog(props) {
34
34
  children = props.children;
35
35
  var dialogEl = (0, _react.useRef)(document.createElement('div'));
36
36
  dialogEl.current.className = 'dialog';
37
+ dialogEl.current.dataset.testid = 'dialog-component';
37
38
  var modalContainerEl = (0, _react.useRef)(document.createElement('div'));
38
39
  var overlayEl = (0, _react.useRef)(null);
39
40
  var wrapperEl = (0, _react.useRef)(null);
@@ -41,6 +42,7 @@ var BaseDialog = function BaseDialog(props) {
41
42
  if (overlay && overlayEl.current === null) {
42
43
  overlayEl.current = document.createElement('div');
43
44
  overlayEl.current.className = 'modal-overlay';
45
+ overlayEl.current.dataset.testid = 'modal-overlay';
44
46
  body.appendChild(overlayEl.current);
45
47
  }
46
48
 
@@ -87,6 +89,7 @@ var BaseDialog = function BaseDialog(props) {
87
89
  var renderModal = function renderModal() {
88
90
  return /*#__PURE__*/_react["default"].createElement("div", {
89
91
  className: wrapperClassName,
92
+ "data-testid": "dialog-wrapper",
90
93
  style: (0, _style["default"])(props),
91
94
  ref: function ref(r) {
92
95
  wrapperEl.current = r;