linear-react-components-ui 0.4.75 → 0.4.76-beta.11

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 (131) hide show
  1. package/.eslintrc.js +2 -5
  2. package/.tool-versions +1 -0
  3. package/.vscode/settings.json +8 -9
  4. package/README.md +33 -0
  5. package/config/jest/cssTransform.js +14 -0
  6. package/config/jest/fileTransform.js +12 -0
  7. package/config/jest/storageMock.js +40 -0
  8. package/jest.config.js +18 -0
  9. package/lib/alerts/alert.spec.js +133 -0
  10. package/lib/assets/styles/dropdown.scss +28 -2
  11. package/lib/assets/styles/effects.scss +12 -0
  12. package/lib/assets/styles/floatMenu.scss +0 -1
  13. package/lib/assets/styles/multiSelect.scss +105 -0
  14. package/lib/assets/styles/panel.scss +0 -1
  15. package/lib/assets/styles/periodpicker.scss +65 -0
  16. package/lib/assets/styles/popover.scss +9 -11
  17. package/lib/assets/styles/progress.scss +8 -1
  18. package/lib/assets/styles/select.scss +1 -0
  19. package/lib/assets/styles/table.scss +13 -5
  20. package/lib/assets/styles/tabs.scss +79 -44
  21. package/lib/assets/styles/treeview.scss +32 -0
  22. package/lib/avatar/avatar.spec.js +190 -0
  23. package/lib/avatar/index.js +6 -2
  24. package/lib/badge/badge.spec.js +127 -0
  25. package/lib/badge/index.js +3 -5
  26. package/lib/buttons/DefaultButton.js +7 -1
  27. package/lib/buttons/buttons.spec.js +504 -0
  28. package/lib/calendar/calendar.spec.js +171 -0
  29. package/lib/checkbox/Label.js +37 -0
  30. package/lib/checkbox/checkbox.spec.js +215 -0
  31. package/lib/checkbox/index.js +21 -6
  32. package/lib/dialog/Custom.js +7 -1
  33. package/lib/dialog/base/index.js +18 -6
  34. package/lib/dialog/dialog.spec.js +488 -0
  35. package/lib/dialog/form/index.js +23 -4
  36. package/lib/drawer/Drawer.js +3 -0
  37. package/lib/drawer/Drawer.spec.js +258 -0
  38. package/lib/drawer/Header.js +4 -1
  39. package/lib/drawer/index.js +4 -1
  40. package/lib/dropdown/Popup.js +1 -0
  41. package/lib/dropdown/dropdown.spec.js +168 -0
  42. package/lib/dropdown/withDropdown.js +10 -4
  43. package/lib/fieldset/fieldset.spec.js +329 -0
  44. package/lib/form/Field.js +2 -0
  45. package/lib/form/FieldNumber.js +10 -2
  46. package/lib/form/FieldPeriod.js +100 -0
  47. package/lib/form/form.spec.js +285 -0
  48. package/lib/form/helpers.js +9 -1
  49. package/lib/form/index.js +209 -222
  50. package/lib/form/withFieldHOC.js +2 -0
  51. package/lib/form/withFormSecurity.js +106 -0
  52. package/lib/gridlayout/GridRow.js +1 -1
  53. package/lib/gridlayout/gridLayout.spec.js +169 -0
  54. package/lib/icons/helper.js +16 -0
  55. package/lib/icons/icons.spec.js +86 -0
  56. package/lib/icons/index.js +2 -0
  57. package/lib/inputs/base/InputTextBase.js +24 -5
  58. package/lib/inputs/base/base.spec.js +690 -0
  59. package/lib/inputs/base/helpers.js +19 -3
  60. package/lib/inputs/color/color_input.spec.js +174 -0
  61. package/lib/inputs/color/index.js +2 -2
  62. package/lib/inputs/date/Dropdown.js +3 -3
  63. package/lib/inputs/date/date.spec.js +344 -0
  64. package/lib/inputs/date/helpers.js +36 -0
  65. package/lib/inputs/date/index.js +11 -9
  66. package/lib/inputs/mask/Cpf.js +9 -9
  67. package/lib/inputs/mask/input_mask.spec.js +590 -0
  68. package/lib/inputs/multiSelect/ActionButtons.js +68 -0
  69. package/lib/inputs/multiSelect/Dropdown.js +200 -0
  70. package/lib/inputs/multiSelect/helper.js +18 -0
  71. package/lib/inputs/multiSelect/index.js +343 -0
  72. package/lib/inputs/number/BaseNumber.js +1 -1
  73. package/lib/inputs/number/index.js +7 -5
  74. package/lib/inputs/number/numberfield.spec.js +215 -0
  75. package/lib/inputs/period/Dialog.js +38 -0
  76. package/lib/inputs/period/Dropdown.js +90 -0
  77. package/lib/inputs/period/PeriodList.js +79 -0
  78. package/lib/inputs/period/helper.js +118 -0
  79. package/lib/inputs/period/index.js +490 -0
  80. package/lib/inputs/search/search_input.spec.js +209 -0
  81. package/lib/inputs/select/Dropdown.js +4 -4
  82. package/lib/inputs/select/index.js +26 -3
  83. package/lib/inputs/select/multiple/index.js +9 -7
  84. package/lib/inputs/select/select.spec.js +391 -0
  85. package/lib/inputs/select/simple/index.js +30 -18
  86. package/lib/inputs/text/textfield.spec.js +215 -0
  87. package/lib/inputs/textarea/textarea.spec.js +59 -0
  88. package/lib/internals/withTooltip.js +86 -82
  89. package/lib/labelMessages/index.js +3 -2
  90. package/lib/labelMessages/labelMessages.spec.js +176 -0
  91. package/lib/labels/label.spec.js +162 -0
  92. package/lib/list/Item.js +3 -3
  93. package/lib/list/index.js +21 -10
  94. package/lib/list/list.spec.js +611 -0
  95. package/lib/menus/float/MenuItem.js +25 -8
  96. package/lib/menus/float/float-menu.spec.js +221 -0
  97. package/lib/menus/sidenav/index.js +7 -3
  98. package/lib/menus/sidenav/popup_menu_search/index.js +1 -1
  99. package/lib/menus/sidenav/sidenav.spec.js +312 -0
  100. package/lib/noPermission/index.js +2 -1
  101. package/lib/panel/panel.spec.js +216 -0
  102. package/lib/popover/index.js +2 -1
  103. package/lib/popover/popover.spec.js +146 -0
  104. package/lib/progress/Bar.js +40 -9
  105. package/lib/progress/index.js +12 -4
  106. package/lib/progress/progress.spec.js +86 -0
  107. package/lib/radio/radio.spec.js +189 -0
  108. package/lib/spinner/SpinnerLoading.js +14 -24
  109. package/lib/spinner/index.js +6 -1
  110. package/lib/spinner/spinner.spec.js +152 -0
  111. package/lib/split/Split.js +10 -12
  112. package/lib/split/split.spec.js +151 -0
  113. package/lib/table/Header.js +3 -1
  114. package/lib/table/Row.js +2 -5
  115. package/lib/table/index.js +1 -4
  116. package/lib/table/table.spec.js +352 -0
  117. package/lib/tabs/DropdownItems.js +84 -0
  118. package/lib/tabs/Menu.js +18 -5
  119. package/lib/tabs/MenuItems.js +7 -7
  120. package/lib/tabs/Panel.js +1 -3
  121. package/lib/tabs/index.js +151 -20
  122. package/lib/tabs/tabs.spec.js +349 -0
  123. package/lib/toolbar/index.js +8 -4
  124. package/lib/toolbar/toolbar.spec.js +394 -0
  125. package/lib/tooltip/index.js +20 -6
  126. package/lib/tooltip/tooltip.spec.js +203 -0
  127. package/lib/treeview/Node.js +347 -48
  128. package/lib/treeview/index.js +456 -35
  129. package/lib/treeview/treeview.spec.js +261 -0
  130. package/package.json +19 -9
  131. package/.DS_Store +0 -0
@@ -0,0 +1,189 @@
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 = _interopRequireWildcard(require("react"));
8
+
9
+ require("babel-polyfill");
10
+
11
+ var _ = _interopRequireDefault(require("."));
12
+
13
+ var _storageMock = _interopRequireWildcard(require("../../../config/jest/storageMock"));
14
+
15
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
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 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); } }
22
+
23
+ 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); }); }; }
24
+
25
+ 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); }
26
+
27
+ var radioMockRender = function radioMockRender(props) {
28
+ return /*#__PURE__*/_react2["default"].createElement(_react2.Fragment, null, /*#__PURE__*/_react2["default"].createElement(_["default"], _extends({
29
+ name: "test",
30
+ label: "C#",
31
+ value: "5",
32
+ id: "c#-lang"
33
+ }, props)), /*#__PURE__*/_react2["default"].createElement(_["default"], {
34
+ name: "test",
35
+ label: "RUBY",
36
+ value: "6",
37
+ id: "ruby-lang"
38
+ }), /*#__PURE__*/_react2["default"].createElement(_["default"], {
39
+ name: "test",
40
+ label: "JAVA",
41
+ value: "7",
42
+ id: "java-lang"
43
+ }), /*#__PURE__*/_react2["default"].createElement(_["default"], {
44
+ name: "test",
45
+ label: "Disabled",
46
+ value: "8",
47
+ id: "disabled-lang"
48
+ }));
49
+ };
50
+
51
+ describe('Radio', function () {
52
+ describe('Default', function () {
53
+ it('should render without errors', function () {
54
+ var _render = (0, _react.render)(radioMockRender()),
55
+ container = _render.container;
56
+
57
+ expect(container.firstChild).toBeTruthy();
58
+ });
59
+ it('should render 4 radio buttons', function () {
60
+ var _render2 = (0, _react.render)(radioMockRender()),
61
+ container = _render2.container;
62
+
63
+ expect(container.querySelectorAll('.radio-button').length).toBe(4);
64
+ });
65
+ it('radio element should have a input and label', function () {
66
+ var _render3 = (0, _react.render)(radioMockRender()),
67
+ container = _render3.container;
68
+
69
+ expect(container.querySelector('.radio-button input')).toBeTruthy();
70
+ expect(container.querySelector('.radio-button label')).toBeTruthy();
71
+ });
72
+ it('should label text match with prop label', function () {
73
+ var _render4 = (0, _react.render)(radioMockRender()),
74
+ container = _render4.container;
75
+
76
+ expect(container.querySelector('.radio-button label')).toHaveTextContent('C#');
77
+ });
78
+ it('should input have type radio', function () {
79
+ var _render5 = (0, _react.render)(radioMockRender()),
80
+ container = _render5.container;
81
+
82
+ expect(container.querySelector('.radio-button input').type).toBe('radio');
83
+ });
84
+ it('should input have id from props', function () {
85
+ var _render6 = (0, _react.render)(radioMockRender()),
86
+ container = _render6.container;
87
+
88
+ expect(container.querySelector('.radio-button input').id).toBe('c#-lang');
89
+ });
90
+ it('should input have name test', function () {
91
+ var _render7 = (0, _react.render)(radioMockRender()),
92
+ container = _render7.container;
93
+
94
+ expect(container.querySelector('.radio-button input').name).toBe('test');
95
+ });
96
+ it('should input have value', function () {
97
+ var _render8 = (0, _react.render)(radioMockRender()),
98
+ container = _render8.container;
99
+
100
+ expect(container.querySelector('.radio-button input').value).toBe('5');
101
+ });
102
+ it('should change checked', function () {
103
+ var _render9 = (0, _react.render)(radioMockRender()),
104
+ container = _render9.container;
105
+
106
+ expect(container.querySelector('.radio-button input').checked).toEqual(false);
107
+
108
+ _react.fireEvent.click(container.querySelector('.radio-button label'));
109
+
110
+ expect(container.querySelector('.radio-button input').checked).toEqual(true);
111
+ });
112
+ it('should start default Checked', function () {
113
+ var _render10 = (0, _react.render)(radioMockRender({
114
+ defaultChecked: true
115
+ })),
116
+ container = _render10.container;
117
+
118
+ expect(container.querySelector('.radio-button input').checked).toEqual(true);
119
+ });
120
+ it('should fire onChange callback', function () {
121
+ var mockOnClick = jest.fn();
122
+
123
+ var _render11 = (0, _react.render)(radioMockRender({
124
+ onChange: mockOnClick
125
+ })),
126
+ container = _render11.container;
127
+
128
+ _react.fireEvent.click(container.querySelector('.radio-button label'));
129
+
130
+ expect(mockOnClick).toBeCalledTimes(1);
131
+ });
132
+ it('should disable', function () {
133
+ var _render12 = (0, _react.render)(radioMockRender({
134
+ disabled: true
135
+ })),
136
+ container = _render12.container;
137
+
138
+ expect(container.querySelector('.radio-button input').checked).toEqual(false);
139
+
140
+ _react.fireEvent.click(container.querySelector('.radio-button label'));
141
+
142
+ expect(container.querySelector('.radio-button input').checked).toEqual(false);
143
+ });
144
+ it('should check permittion', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
145
+ var _render13, container;
146
+
147
+ return regeneratorRuntime.wrap(function _callee$(_context) {
148
+ while (1) {
149
+ switch (_context.prev = _context.next) {
150
+ case 0:
151
+ Object.defineProperty(window, 'sessionStorage', {
152
+ value: (0, _storageMock["default"])()
153
+ });
154
+ _render13 = (0, _react.render)(radioMockRender({
155
+ permissionAttr: (0, _storageMock.permissionAttrMockAuthorized)('disabled')
156
+ })), container = _render13.container;
157
+ expect(container.querySelector('.radio-button input')).not.toBeDisabled();
158
+
159
+ case 3:
160
+ case "end":
161
+ return _context.stop();
162
+ }
163
+ }
164
+ }, _callee);
165
+ })));
166
+ it('should check permission and be unavailable', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
167
+ var _render14, container;
168
+
169
+ return regeneratorRuntime.wrap(function _callee2$(_context2) {
170
+ while (1) {
171
+ switch (_context2.prev = _context2.next) {
172
+ case 0:
173
+ Object.defineProperty(window, 'sessionStorage', {
174
+ value: (0, _storageMock["default"])()
175
+ });
176
+ _render14 = (0, _react.render)(radioMockRender({
177
+ permissionAttr: (0, _storageMock.permissionAttrMockUnauthorized)('disabled')
178
+ })), container = _render14.container;
179
+ expect(container.querySelector('.radio-button input')).toBeDisabled();
180
+
181
+ case 3:
182
+ case "end":
183
+ return _context2.stop();
184
+ }
185
+ }
186
+ }, _callee2);
187
+ })));
188
+ });
189
+ });
@@ -15,7 +15,9 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
15
15
  var color = _ref.color,
16
16
  size = _ref.size;
17
17
  return /*#__PURE__*/_react["default"].createElement("svg", {
18
+ "data-testid": "spinner",
18
19
  className: "lds-spinner spinnerloading",
20
+ fill: color,
19
21
  width: size,
20
22
  viewBox: "0 0 100 100",
21
23
  preserveAspectRatio: "xMidYMid",
@@ -31,8 +33,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
31
33
  rx: "9.4",
32
34
  ry: "4.8",
33
35
  width: "6",
34
- height: "12",
35
- fill: color
36
+ height: "12"
36
37
  }, /*#__PURE__*/_react["default"].createElement("animate", {
37
38
  attributeName: "opacity",
38
39
  values: "1;0",
@@ -48,8 +49,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
48
49
  rx: "9.4",
49
50
  ry: "4.8",
50
51
  width: "6",
51
- height: "12",
52
- fill: color
52
+ height: "12"
53
53
  }, /*#__PURE__*/_react["default"].createElement("animate", {
54
54
  attributeName: "opacity",
55
55
  values: "1;0",
@@ -65,8 +65,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
65
65
  rx: "9.4",
66
66
  ry: "4.8",
67
67
  width: "6",
68
- height: "12",
69
- fill: color
68
+ height: "12"
70
69
  }, /*#__PURE__*/_react["default"].createElement("animate", {
71
70
  attributeName: "opacity",
72
71
  values: "1;0",
@@ -82,8 +81,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
82
81
  rx: "9.4",
83
82
  ry: "4.8",
84
83
  width: "6",
85
- height: "12",
86
- fill: color
84
+ height: "12"
87
85
  }, /*#__PURE__*/_react["default"].createElement("animate", {
88
86
  attributeName: "opacity",
89
87
  values: "1;0",
@@ -99,8 +97,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
99
97
  rx: "9.4",
100
98
  ry: "4.8",
101
99
  width: "6",
102
- height: "12",
103
- fill: color
100
+ height: "12"
104
101
  }, /*#__PURE__*/_react["default"].createElement("animate", {
105
102
  attributeName: "opacity",
106
103
  values: "1;0",
@@ -116,8 +113,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
116
113
  rx: "9.4",
117
114
  ry: "4.8",
118
115
  width: "6",
119
- height: "12",
120
- fill: color
116
+ height: "12"
121
117
  }, /*#__PURE__*/_react["default"].createElement("animate", {
122
118
  attributeName: "opacity",
123
119
  values: "1;0",
@@ -133,8 +129,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
133
129
  rx: "9.4",
134
130
  ry: "4.8",
135
131
  width: "6",
136
- height: "12",
137
- fill: color
132
+ height: "12"
138
133
  }, /*#__PURE__*/_react["default"].createElement("animate", {
139
134
  attributeName: "opacity",
140
135
  values: "1;0",
@@ -150,8 +145,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
150
145
  rx: "9.4",
151
146
  ry: "4.8",
152
147
  width: "6",
153
- height: "12",
154
- fill: color
148
+ height: "12"
155
149
  }, /*#__PURE__*/_react["default"].createElement("animate", {
156
150
  attributeName: "opacity",
157
151
  values: "1;0",
@@ -167,8 +161,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
167
161
  rx: "9.4",
168
162
  ry: "4.8",
169
163
  width: "6",
170
- height: "12",
171
- fill: color
164
+ height: "12"
172
165
  }, /*#__PURE__*/_react["default"].createElement("animate", {
173
166
  attributeName: "opacity",
174
167
  values: "1;0",
@@ -184,8 +177,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
184
177
  rx: "9.4",
185
178
  ry: "4.8",
186
179
  width: "6",
187
- height: "12",
188
- fill: color
180
+ height: "12"
189
181
  }, /*#__PURE__*/_react["default"].createElement("animate", {
190
182
  attributeName: "opacity",
191
183
  values: "1;0",
@@ -201,8 +193,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
201
193
  rx: "9.4",
202
194
  ry: "4.8",
203
195
  width: "6",
204
- height: "12",
205
- fill: color
196
+ height: "12"
206
197
  }, /*#__PURE__*/_react["default"].createElement("animate", {
207
198
  attributeName: "opacity",
208
199
  values: "1;0",
@@ -218,8 +209,7 @@ var SpinnerLoading = function SpinnerLoading(_ref) {
218
209
  rx: "9.4",
219
210
  ry: "4.8",
220
211
  width: "6",
221
- height: "12",
222
- fill: color
212
+ height: "12"
223
213
  }, /*#__PURE__*/_react["default"].createElement("animate", {
224
214
  attributeName: "opacity",
225
215
  values: "1;0",
@@ -47,12 +47,17 @@ var Spinner = function Spinner(props) {
47
47
  delay = _useState2[0],
48
48
  setDelay = _useState2[1];
49
49
 
50
+ var delayTimeout = (0, _react.useRef)(null);
50
51
  (0, _react.useEffect)(function () {
51
52
  if (delayTime) {
52
- setTimeout(function () {
53
+ delayTimeout.current = setTimeout(function () {
53
54
  setDelay(false);
54
55
  }, delayTime);
55
56
  }
57
+
58
+ return function () {
59
+ clearTimeout(delayTimeout.current);
60
+ };
56
61
  }, []);
57
62
 
58
63
  var getCssClass = function getCssClass() {
@@ -0,0 +1,152 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ require("babel-polyfill");
6
+
7
+ require("@testing-library/jest-dom/extend-expect");
8
+
9
+ var _react2 = require("@testing-library/react");
10
+
11
+ var _ = _interopRequireDefault(require("."));
12
+
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
+
15
+ 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); } }
16
+
17
+ 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); }); }; }
18
+
19
+ 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); }
20
+
21
+ var mockSpinner = function mockSpinner(props) {
22
+ return /*#__PURE__*/_react["default"].createElement(_["default"], _extends({
23
+ customClass: "mockspinner-component",
24
+ size: "100px",
25
+ text: "Carregando",
26
+ style: {
27
+ marginBottom: '10px'
28
+ },
29
+ color: "#f00"
30
+ }, props));
31
+ };
32
+
33
+ describe('Spinner Loading', function () {
34
+ it('should render with delay', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
35
+ var _render, container;
36
+
37
+ return regeneratorRuntime.wrap(function _callee$(_context) {
38
+ while (1) {
39
+ switch (_context.prev = _context.next) {
40
+ case 0:
41
+ _render = (0, _react2.render)(mockSpinner({
42
+ delayTime: 500
43
+ })), container = _render.container;
44
+ _context.next = 3;
45
+ return (0, _react2.waitFor)(function () {
46
+ return _react2.screen.getByTestId('spinner');
47
+ });
48
+
49
+ case 3:
50
+ expect(container.firstChild).toBeTruthy();
51
+
52
+ case 4:
53
+ case "end":
54
+ return _context.stop();
55
+ }
56
+ }
57
+ }, _callee);
58
+ })));
59
+ it('should render without delay', function () {
60
+ var _render2 = (0, _react2.render)(mockSpinner({
61
+ delayTime: 0
62
+ })),
63
+ container = _render2.container;
64
+
65
+ expect(container.firstChild).toBeTruthy();
66
+ });
67
+ it('should render text', function () {
68
+ var _render3 = (0, _react2.render)(mockSpinner({
69
+ delayTime: 0
70
+ })),
71
+ container = _render3.container;
72
+
73
+ expect(container.firstChild).toHaveTextContent('Carregando');
74
+ });
75
+ it('should render spinner icon', function () {
76
+ var _render4 = (0, _react2.render)(mockSpinner({
77
+ delayTime: 0
78
+ })),
79
+ container = _render4.container,
80
+ getByTestId = _render4.getByTestId;
81
+
82
+ expect(container.firstChild).toContainElement(getByTestId('spinner'));
83
+ });
84
+ it('should apply custom class', function () {
85
+ var _render5 = (0, _react2.render)(mockSpinner({
86
+ delayTime: 0
87
+ })),
88
+ container = _render5.container;
89
+
90
+ expect(container.firstChild).toHaveClass('mockspinner-component');
91
+ });
92
+ it('should apply style', function () {
93
+ var _render6 = (0, _react2.render)(mockSpinner({
94
+ delayTime: 0
95
+ })),
96
+ container = _render6.container;
97
+
98
+ expect(container.firstChild).toHaveStyle('margin-bottom: 10px;');
99
+ });
100
+ it('should apply color', function () {
101
+ var _render7 = (0, _react2.render)(mockSpinner({
102
+ delayTime: 0
103
+ })),
104
+ getByTestId = _render7.getByTestId;
105
+
106
+ expect(getByTestId('spinner')).toHaveAttribute('fill', '#f00');
107
+ });
108
+ it('should apply height auto', function () {
109
+ var _render8 = (0, _react2.render)(mockSpinner({
110
+ delayTime: 0,
111
+ heightAuto: true
112
+ })),
113
+ container = _render8.container;
114
+
115
+ expect(container.firstChild).toHaveClass('-heightauto');
116
+ });
117
+ it('should apply align center', function () {
118
+ var _render9 = (0, _react2.render)(mockSpinner({
119
+ delayTime: 0
120
+ })),
121
+ container = _render9.container;
122
+
123
+ expect(container.firstChild).toHaveClass('-center');
124
+ });
125
+ it('should apply align right', function () {
126
+ var _render10 = (0, _react2.render)(mockSpinner({
127
+ delayTime: 0,
128
+ align: 'right'
129
+ })),
130
+ container = _render10.container;
131
+
132
+ expect(container.firstChild).toHaveClass('-right');
133
+ });
134
+ it('should apply align left', function () {
135
+ var _render11 = (0, _react2.render)(mockSpinner({
136
+ delayTime: 0,
137
+ align: 'left'
138
+ })),
139
+ container = _render11.container;
140
+
141
+ expect(container.firstChild).toHaveClass('-left');
142
+ });
143
+ it('should hide component when visible is false', function () {
144
+ var _render12 = (0, _react2.render)(mockSpinner({
145
+ delayTime: 0,
146
+ visible: false
147
+ })),
148
+ container = _render12.container;
149
+
150
+ expect(container.firstChild).not.toBeInTheDocument();
151
+ });
152
+ });
@@ -49,8 +49,6 @@ var Split = function Split(props) {
49
49
  var hotKey = props.hotKey,
50
50
  secondaryInitialSize = props.secondaryInitialSize,
51
51
  onSecondaryPaneSizeChange = props.onSecondaryPaneSizeChange,
52
- onDragStart = props.onDragStart,
53
- onDragEnd = props.onDragEnd,
54
52
  vertical = props.vertical,
55
53
  primaryIndex = props.primaryIndex,
56
54
  percentage = props.percentage,
@@ -58,7 +56,8 @@ var Split = function Split(props) {
58
56
  secondaryMinSize = props.secondaryMinSize,
59
57
  customClass = props.customClass,
60
58
  children = props.children,
61
- hideSplitSideOnToggleClick = props.hideSplitSideOnToggleClick;
59
+ hideSplitSideOnToggleClick = props.hideSplitSideOnToggleClick,
60
+ style = props.style;
62
61
 
63
62
  var getSecondaryPaneSize = function getSecondaryPaneSize(containerRect, splitterRect, clientPosition, offsetMouse) {
64
63
  var totalSize = vertical ? containerRect.height : containerRect.width;
@@ -270,9 +269,6 @@ var Split = function Split(props) {
270
269
  (0, _react.useEffect)(function () {
271
270
  if (state.resizing) {
272
271
  document.addEventListener('mousemove', handleMouseMove);
273
- if (onDragStart) onDragStart();
274
- } else if (onDragEnd) {
275
- onDragEnd();
276
272
  }
277
273
 
278
274
  return function () {
@@ -309,6 +305,7 @@ var Split = function Split(props) {
309
305
  value: getChildContext()
310
306
  }, /*#__PURE__*/_react["default"].createElement("div", {
311
307
  className: containerClasses,
308
+ style: style,
312
309
  ref: function ref(r) {
313
310
  container.current = r;
314
311
  }
@@ -332,8 +329,11 @@ var Split = function Split(props) {
332
329
  role: "button",
333
330
  tabIndex: "-1",
334
331
  onDoubleClick: function onDoubleClick() {
335
- return setState(_extends({}, state, {
336
- visibleSplitSide: !visibleSplitSide,
332
+ return state.secondaryPaneSize === 100 ? setState(_extends({}, state, {
333
+ secondaryPaneSize: 50,
334
+ resizing: false
335
+ })) : setState(_extends({}, state, {
336
+ secondaryPaneSize: 100,
337
337
  resizing: false
338
338
  }));
339
339
  },
@@ -342,6 +342,7 @@ var Split = function Split(props) {
342
342
  };
343
343
 
344
344
  Split.propTypes = {
345
+ style: _propTypes["default"].object,
345
346
  customClass: _propTypes["default"].string,
346
347
  vertical: _propTypes["default"].bool,
347
348
  percentage: _propTypes["default"].bool,
@@ -351,12 +352,11 @@ Split.propTypes = {
351
352
  secondaryInitialSize: _propTypes["default"].number,
352
353
  secondaryMinSize: _propTypes["default"].number,
353
354
  hideSplitSideOnToggleClick: _propTypes["default"].string,
354
- onDragStart: _propTypes["default"].func,
355
- onDragEnd: _propTypes["default"].func,
356
355
  onSecondaryPaneSizeChange: _propTypes["default"].func,
357
356
  children: _propTypes["default"].arrayOf(_propTypes["default"].node)
358
357
  };
359
358
  Split.defaultProps = {
359
+ style: {},
360
360
  customClass: '',
361
361
  vertical: false,
362
362
  percentage: false,
@@ -365,8 +365,6 @@ Split.defaultProps = {
365
365
  secondaryInitialSize: undefined,
366
366
  secondaryMinSize: 0,
367
367
  hideSplitSideOnToggleClick: 'primary',
368
- onDragStart: null,
369
- onDragEnd: null,
370
368
  onSecondaryPaneSizeChange: null,
371
369
  children: [],
372
370
  hotKey: false