linear-react-components-ui 1.0.3 → 1.0.4
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.
- package/lib/alerts/alert.spec.js +133 -0
- package/lib/assets/styles/hint.scss +9 -0
- package/lib/avatar/avatar.spec.js +190 -0
- package/lib/badge/badge.spec.js +127 -0
- package/lib/buttons/SpinnerLoading.js +230 -0
- package/lib/buttons/buttons.spec.js +504 -0
- package/lib/calendar/calendar.spec.js +171 -0
- package/lib/checkbox/checkbox.spec.js +215 -0
- package/lib/checkbox/index.js +6 -3
- package/lib/dialog/dialog.spec.js +488 -0
- package/lib/drawer/Content.d.ts +1 -0
- package/lib/drawer/Drawer.d.ts +1 -0
- package/lib/drawer/Drawer.js +6 -3
- package/lib/drawer/Drawer.spec.js +258 -0
- package/lib/drawer/Header.d.ts +1 -0
- package/lib/drawer/helpers.d.ts +1 -0
- package/lib/drawer/index.d.ts +1 -0
- package/lib/drawer/types.d.ts +2 -1
- package/lib/dropdown/dropdown.spec.js +168 -0
- package/lib/fieldset/fieldset.spec.js +329 -0
- package/lib/form/form.spec.js +293 -0
- package/lib/gridlayout/gridLayout.spec.js +169 -0
- package/lib/hint/index.d.ts +6 -0
- package/lib/hint/index.js +25 -0
- package/lib/hint/types.d.ts +11 -0
- package/lib/hint/types.js +5 -0
- package/lib/icons/icons.spec.js +86 -0
- package/lib/inputs/base/InputTextBase.js +6 -3
- package/lib/inputs/base/base.spec.js +690 -0
- package/lib/inputs/base/index.js +1 -0
- package/lib/inputs/color/color_input.spec.js +174 -0
- package/lib/inputs/date/date.spec.js +354 -0
- package/lib/inputs/date/helper.js +16 -0
- package/lib/inputs/inputHOC.d.ts +2 -1
- package/lib/inputs/mask/helpers.d.ts +2 -1
- package/lib/inputs/mask/imaskHOC.d.ts +2 -1
- package/lib/inputs/mask/input_mask.spec.js +607 -0
- package/lib/inputs/number/BaseNumber.d.ts +2 -1
- package/lib/inputs/number/Currency.d.ts +2 -1
- package/lib/inputs/number/Decimal.d.ts +2 -1
- package/lib/inputs/number/index.d.ts +2 -1
- package/lib/inputs/number/numberfield.spec.js +215 -0
- package/lib/inputs/number/types.d.ts +2 -1
- package/lib/inputs/search/index.d.ts +2 -1
- package/lib/inputs/search/index.js +14 -12
- package/lib/inputs/search/search_input.spec.js +209 -0
- package/lib/inputs/select/ActionButtons.d.ts +2 -1
- package/lib/inputs/select/Dropdown.d.ts +2 -1
- package/lib/inputs/select/helper.d.ts +2 -1
- package/lib/inputs/select/index.d.ts +1 -1
- package/lib/inputs/select/multiple/Selecteds.d.ts +1 -1
- package/lib/inputs/select/multiple/index.d.ts +1 -1
- package/lib/inputs/select/select.spec.js +391 -0
- package/lib/inputs/select/simple/index.d.ts +1 -1
- package/lib/inputs/select/types.d.ts +2 -7
- package/lib/inputs/text/textfield.spec.js +215 -0
- package/lib/inputs/textarea/textarea.spec.js +59 -0
- package/lib/inputs/types.d.ts +9 -3
- package/lib/labelMessages/labelMessages.spec.js +176 -0
- package/lib/labels/label.spec.js +162 -0
- package/lib/list/list.spec.js +768 -0
- package/lib/menus/float/float-menu.spec.js +221 -0
- package/lib/menus/sidenav/sidenav.spec.js +379 -0
- package/lib/panel/panel.spec.js +216 -0
- package/lib/popover/popover.spec.js +146 -0
- package/lib/progress/progress.spec.js +86 -0
- package/lib/radio/radio.spec.js +189 -0
- package/lib/spinner/spinner.spec.js +152 -0
- package/lib/split/split.spec.js +151 -0
- package/lib/table/table.spec.js +352 -0
- package/lib/tabs/tabs.spec.js +349 -0
- package/lib/toolbar/toolbar.spec.js +394 -0
- package/lib/tooltip/tooltip.spec.js +203 -0
- package/lib/treeview/treeview.spec.js +279 -0
- package/lib/uitour/uitour.spec.js +176 -0
- package/package.json +1 -1
|
@@ -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('NumberField', function () {
|
|
22
|
+
var numberField = function numberField(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)(numberField({
|
|
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)(numberField({
|
|
48
|
+
value: value
|
|
49
|
+
})),
|
|
50
|
+
container = _render2.container;
|
|
51
|
+
|
|
52
|
+
var inputHTML = container.querySelector('.textinput');
|
|
53
|
+
expect(inputHTML.value).toBe('');
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
it('should apply textAlign', function () {
|
|
57
|
+
var textAlign = 'left';
|
|
58
|
+
|
|
59
|
+
var _render3 = (0, _react2.render)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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)(numberField({
|
|
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
|
+
});
|
|
@@ -4,7 +4,8 @@ import { IMaskHOCProps } from '../types.js';
|
|
|
4
4
|
import 'react';
|
|
5
5
|
import '../../@types/Period.js';
|
|
6
6
|
import '../../@types/DataCombo.js';
|
|
7
|
-
import '
|
|
7
|
+
import '../../drawer/types.js';
|
|
8
|
+
import '../../@types/Position.js';
|
|
8
9
|
|
|
9
10
|
interface INumberFieldProps extends IMaskHOCProps {
|
|
10
11
|
value?: string;
|
|
@@ -2,9 +2,10 @@ import { ISearchProps } from '../types.js';
|
|
|
2
2
|
import 'react';
|
|
3
3
|
import '../../@types/PermissionAttr.js';
|
|
4
4
|
import '../../@types/DataCombo.js';
|
|
5
|
-
import '../select/types.js';
|
|
6
5
|
import '../base/types.js';
|
|
7
6
|
import '../../@types/Period.js';
|
|
7
|
+
import '../../drawer/types.js';
|
|
8
|
+
import '../../@types/Position.js';
|
|
8
9
|
|
|
9
10
|
declare const SearchField: (props: ISearchProps) => JSX.Element | null;
|
|
10
11
|
|
|
@@ -11,6 +11,7 @@ var _buttons = _interopRequireDefault(require("../../buttons"));
|
|
|
11
11
|
var _icons = _interopRequireDefault(require("../../icons"));
|
|
12
12
|
require("../../assets/styles/search.scss");
|
|
13
13
|
var _drawer = _interopRequireWildcard(require("../../drawer"));
|
|
14
|
+
var _excluded = ["headerTitle", "content", "onStateChange"];
|
|
14
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
16
|
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; }
|
|
@@ -19,6 +20,8 @@ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread n
|
|
|
19
20
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
20
21
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
21
22
|
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); }
|
|
23
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
24
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
22
25
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
23
26
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
24
27
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
@@ -28,7 +31,8 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
28
31
|
var SearchField = function SearchField(props) {
|
|
29
32
|
var _props$resetButton = props.resetButton,
|
|
30
33
|
resetButton = _props$resetButton === void 0 ? true : _props$resetButton,
|
|
31
|
-
|
|
34
|
+
_props$advancedFilter = props.advancedFilterProps,
|
|
35
|
+
advancedFilterProps = _props$advancedFilter === void 0 ? {} : _props$advancedFilter,
|
|
32
36
|
value = props.value;
|
|
33
37
|
var _useState = (0, _react.useState)(false),
|
|
34
38
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -42,6 +46,10 @@ var SearchField = function SearchField(props) {
|
|
|
42
46
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
43
47
|
onDenied = _useState6[0],
|
|
44
48
|
setOnDenied = _useState6[1];
|
|
49
|
+
var headerTitle = advancedFilterProps.headerTitle,
|
|
50
|
+
content = advancedFilterProps.content,
|
|
51
|
+
onStateChange = advancedFilterProps.onStateChange,
|
|
52
|
+
advancedFilterPropsRest = _objectWithoutProperties(advancedFilterProps, _excluded);
|
|
45
53
|
var onReset = function onReset(event) {
|
|
46
54
|
if (props.onReset) props.onReset(event);
|
|
47
55
|
setValorCampo('');
|
|
@@ -58,10 +66,8 @@ var SearchField = function SearchField(props) {
|
|
|
58
66
|
var shouldBeReadOnly = function shouldBeReadOnly() {
|
|
59
67
|
return props.readOnly || onDenied && onDenied.readOnly;
|
|
60
68
|
};
|
|
61
|
-
var hideContent = onDenied
|
|
69
|
+
var hideContent = onDenied === null || onDenied === void 0 ? void 0 : onDenied.hideContent;
|
|
62
70
|
var buttonProps = function buttonProps() {
|
|
63
|
-
var _ref = advancedFilterProps || {},
|
|
64
|
-
onStateChange = _ref.onStateChange;
|
|
65
71
|
var disableCallbacks = shouldBeReadOnly() || shouldDisable() || hideContent;
|
|
66
72
|
var propsButton = {
|
|
67
73
|
icon: /*#__PURE__*/_react.default.createElement(_icons.default, {
|
|
@@ -91,7 +97,7 @@ var SearchField = function SearchField(props) {
|
|
|
91
97
|
return propsButton;
|
|
92
98
|
};
|
|
93
99
|
var rightElements = function rightElements() {
|
|
94
|
-
var enableFilterButton = advancedFilterProps
|
|
100
|
+
var enableFilterButton = Object.keys(advancedFilterProps).length > 0;
|
|
95
101
|
var elements = [/*#__PURE__*/_react.default.createElement(_icons.default, {
|
|
96
102
|
name: "search",
|
|
97
103
|
color: "#a9a8a8",
|
|
@@ -113,15 +119,11 @@ var SearchField = function SearchField(props) {
|
|
|
113
119
|
if (resetButton && valorCampo.trim() !== '') elements = [resetButtonIcon].concat(_toConsumableArray(elements));
|
|
114
120
|
return elements;
|
|
115
121
|
};
|
|
116
|
-
var _ref2 = advancedFilterProps || {},
|
|
117
|
-
headerTitle = _ref2.headerTitle,
|
|
118
|
-
content = _ref2.content,
|
|
119
|
-
onStateChange = _ref2.onStateChange;
|
|
120
122
|
(0, _react.useEffect)(function () {
|
|
121
123
|
if (value !== undefined && value !== valorCampo) {
|
|
122
124
|
setValorCampo(value);
|
|
123
125
|
}
|
|
124
|
-
}, []);
|
|
126
|
+
}, [value]);
|
|
125
127
|
if (onDenied && onDenied.unvisible) {
|
|
126
128
|
return null;
|
|
127
129
|
}
|
|
@@ -132,12 +134,12 @@ var SearchField = function SearchField(props) {
|
|
|
132
134
|
customClass: "",
|
|
133
135
|
handlerSetOnDenied: setOnDenied,
|
|
134
136
|
rightElements: rightElements()
|
|
135
|
-
})), advancedFilterOpened && /*#__PURE__*/_react.default.createElement(_drawer.default, {
|
|
137
|
+
})), advancedFilterOpened && /*#__PURE__*/_react.default.createElement(_drawer.default, _extends({
|
|
136
138
|
handlerClose: function handlerClose() {
|
|
137
139
|
setAdvancedFilterOpened(false);
|
|
138
140
|
if (onStateChange) onStateChange(false);
|
|
139
141
|
}
|
|
140
|
-
}, headerTitle && /*#__PURE__*/_react.default.createElement(_drawer.DrawerHeader, {
|
|
142
|
+
}, advancedFilterPropsRest), headerTitle && /*#__PURE__*/_react.default.createElement(_drawer.DrawerHeader, {
|
|
141
143
|
title: headerTitle
|
|
142
144
|
}), /*#__PURE__*/_react.default.createElement(_drawer.DrawerContent, null, content)));
|
|
143
145
|
};
|
|
@@ -0,0 +1,209 @@
|
|
|
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
|
+
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); }
|
|
22
|
+
|
|
23
|
+
var searchField = function searchField(fieldProps, advancedFilterProps) {
|
|
24
|
+
return /*#__PURE__*/_react["default"].createElement(_index["default"], _extends({
|
|
25
|
+
advancedFilterProps: _extends({
|
|
26
|
+
headerTitle: 'Pesquisa Avançada',
|
|
27
|
+
content: 'Conteúdo da Pesquisa'
|
|
28
|
+
}, advancedFilterProps)
|
|
29
|
+
}, fieldProps));
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
describe('SearchField', function () {
|
|
33
|
+
it('should render correctly', function () {
|
|
34
|
+
var _render = (0, _react2.render)(searchField()),
|
|
35
|
+
container = _render.container;
|
|
36
|
+
|
|
37
|
+
expect(container.firstChild).toBeTruthy();
|
|
38
|
+
});
|
|
39
|
+
it('should be apply value', function () {
|
|
40
|
+
var value = '1 ';
|
|
41
|
+
|
|
42
|
+
var _render2 = (0, _react2.render)(searchField({
|
|
43
|
+
value: value
|
|
44
|
+
})),
|
|
45
|
+
container = _render2.container;
|
|
46
|
+
|
|
47
|
+
var inputHTML = container.querySelector('.textinput');
|
|
48
|
+
expect(inputHTML.value).toBe(value);
|
|
49
|
+
});
|
|
50
|
+
it('should apply textAlign', function () {
|
|
51
|
+
var textAlign = 'left';
|
|
52
|
+
|
|
53
|
+
var _render3 = (0, _react2.render)(searchField({
|
|
54
|
+
textAlign: textAlign
|
|
55
|
+
})),
|
|
56
|
+
container = _render3.container;
|
|
57
|
+
|
|
58
|
+
var inputHTML = container.querySelector('.textinput');
|
|
59
|
+
expect(inputHTML).toHaveClass("text-align-".concat(textAlign));
|
|
60
|
+
});
|
|
61
|
+
it('should apply resetButton and execute onReset callback', function () {
|
|
62
|
+
var onReset = jest.fn();
|
|
63
|
+
|
|
64
|
+
var _render4 = (0, _react2.render)(searchField({
|
|
65
|
+
onReset: onReset,
|
|
66
|
+
resetButton: true,
|
|
67
|
+
value: 'foo'
|
|
68
|
+
})),
|
|
69
|
+
getAllByTestId = _render4.getAllByTestId;
|
|
70
|
+
|
|
71
|
+
_react2.fireEvent.click(getAllByTestId('icon')[0]);
|
|
72
|
+
|
|
73
|
+
expect(onReset).toBeCalled();
|
|
74
|
+
});
|
|
75
|
+
describe('advancedFilterProps', function () {
|
|
76
|
+
it('should drawerHeader content headerTitle', function () {
|
|
77
|
+
var _render5 = (0, _react2.render)(searchField()),
|
|
78
|
+
container = _render5.container;
|
|
79
|
+
|
|
80
|
+
_react2.fireEvent.click(container.querySelector('.button-component'));
|
|
81
|
+
|
|
82
|
+
expect(document.querySelector('.drawerheader')).toHaveTextContent('Pesquisa Avançada');
|
|
83
|
+
});
|
|
84
|
+
it('should drawerContent to have content', function () {
|
|
85
|
+
var _render6 = (0, _react2.render)(searchField()),
|
|
86
|
+
container = _render6.container;
|
|
87
|
+
|
|
88
|
+
_react2.fireEvent.click(container.querySelector('.button-component'));
|
|
89
|
+
|
|
90
|
+
expect(document.querySelector('.drawercontent')).toHaveTextContent('Conteúdo da Pesquisa');
|
|
91
|
+
});
|
|
92
|
+
it('should execute onStateChange on Drawer Open', function () {
|
|
93
|
+
var onStateChange = jest.fn();
|
|
94
|
+
|
|
95
|
+
var _render7 = (0, _react2.render)(searchField({}, {
|
|
96
|
+
onStateChange: onStateChange
|
|
97
|
+
})),
|
|
98
|
+
container = _render7.container;
|
|
99
|
+
|
|
100
|
+
_react2.fireEvent.click(container.querySelector('.button-component'));
|
|
101
|
+
|
|
102
|
+
expect(onStateChange).toBeCalledTimes(1);
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
describe('Permission', function () {
|
|
106
|
+
var setSessionStorageMock = function setSessionStorageMock() {
|
|
107
|
+
Object.defineProperty(window, 'sessionStorage', {
|
|
108
|
+
value: (0, _storageMock["default"])()
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
it('should render subject when permission granted', function () {
|
|
113
|
+
setSessionStorageMock();
|
|
114
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockAuthorized)('unvisible');
|
|
115
|
+
|
|
116
|
+
var _render8 = (0, _react2.render)(searchField({
|
|
117
|
+
permissionAttr: permissionAttr
|
|
118
|
+
})),
|
|
119
|
+
container = _render8.container;
|
|
120
|
+
|
|
121
|
+
expect(container.querySelector('.input-base-component')).not.toBeNull();
|
|
122
|
+
});
|
|
123
|
+
it('should check permission, be unavaible and onDenied is unvisible', function () {
|
|
124
|
+
setSessionStorageMock();
|
|
125
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('unvisible');
|
|
126
|
+
|
|
127
|
+
var _render9 = (0, _react2.render)(searchField({
|
|
128
|
+
permissionAttr: permissionAttr
|
|
129
|
+
})),
|
|
130
|
+
container = _render9.container;
|
|
131
|
+
|
|
132
|
+
expect(container.querySelector('.input-base-component')).toBeNull();
|
|
133
|
+
});
|
|
134
|
+
it('should check permission, be unavaible and onDenied is disabled', function () {
|
|
135
|
+
setSessionStorageMock();
|
|
136
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
|
|
137
|
+
var onChange = jest.fn();
|
|
138
|
+
|
|
139
|
+
var _render10 = (0, _react2.render)(searchField({
|
|
140
|
+
permissionAttr: permissionAttr,
|
|
141
|
+
onChange: onChange
|
|
142
|
+
})),
|
|
143
|
+
container = _render10.container;
|
|
144
|
+
|
|
145
|
+
var inputHTML = container.querySelector('.textinput');
|
|
146
|
+
var inputWrapper = container.querySelector('.inputwrapper');
|
|
147
|
+
|
|
148
|
+
_react2.fireEvent.change(inputHTML, {
|
|
149
|
+
target: {
|
|
150
|
+
value: 'sus'
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
expect(inputHTML.disabled).toBeTruthy();
|
|
155
|
+
expect(onChange).not.toBeCalled();
|
|
156
|
+
expect(inputWrapper).toHaveClass('-disabled');
|
|
157
|
+
});
|
|
158
|
+
it('should check permission, be unavaible and onDenied is readOnly', function () {
|
|
159
|
+
setSessionStorageMock();
|
|
160
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
|
|
161
|
+
var onChange = jest.fn();
|
|
162
|
+
|
|
163
|
+
var _render11 = (0, _react2.render)(searchField({
|
|
164
|
+
permissionAttr: permissionAttr,
|
|
165
|
+
onChange: onChange
|
|
166
|
+
})),
|
|
167
|
+
container = _render11.container;
|
|
168
|
+
|
|
169
|
+
var inputHTML = container.querySelector('.textinput');
|
|
170
|
+
var inputWrapper = container.querySelector('.inputwrapper');
|
|
171
|
+
|
|
172
|
+
_react2.fireEvent.change(inputHTML, {
|
|
173
|
+
target: {
|
|
174
|
+
value: 'sus'
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
expect(inputHTML.disabled).toBeTruthy();
|
|
179
|
+
expect(onChange).not.toBeCalled();
|
|
180
|
+
expect(inputWrapper).toHaveClass('-disabled');
|
|
181
|
+
});
|
|
182
|
+
it('should check permission, be unavaible and onDenied is hideContent', function () {
|
|
183
|
+
setSessionStorageMock();
|
|
184
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
|
|
185
|
+
var onChange = jest.fn();
|
|
186
|
+
|
|
187
|
+
var _render12 = (0, _react2.render)(searchField({
|
|
188
|
+
permissionAttr: permissionAttr,
|
|
189
|
+
onChange: onChange,
|
|
190
|
+
value: 'text'
|
|
191
|
+
})),
|
|
192
|
+
container = _render12.container;
|
|
193
|
+
|
|
194
|
+
var inputHTML = container.querySelector('.textinput');
|
|
195
|
+
var inputWrapper = container.querySelector('.inputwrapper');
|
|
196
|
+
|
|
197
|
+
_react2.fireEvent.change(inputHTML, {
|
|
198
|
+
target: {
|
|
199
|
+
value: 'sus'
|
|
200
|
+
}
|
|
201
|
+
});
|
|
202
|
+
|
|
203
|
+
expect(inputHTML.value).toBe('');
|
|
204
|
+
expect(inputHTML.disabled).toBeTruthy();
|
|
205
|
+
expect(onChange).not.toBeCalled();
|
|
206
|
+
expect(inputWrapper).toHaveClass('-disabled');
|
|
207
|
+
});
|
|
208
|
+
});
|
|
209
|
+
});
|
|
@@ -2,9 +2,10 @@ import { IActionButtonsSelectProps } from '../types.js';
|
|
|
2
2
|
import 'react';
|
|
3
3
|
import '../../@types/PermissionAttr.js';
|
|
4
4
|
import '../../@types/DataCombo.js';
|
|
5
|
-
import './types.js';
|
|
6
5
|
import '../base/types.js';
|
|
7
6
|
import '../../@types/Period.js';
|
|
7
|
+
import '../../drawer/types.js';
|
|
8
|
+
import '../../@types/Position.js';
|
|
8
9
|
|
|
9
10
|
declare const ActionButtons: (props: IActionButtonsSelectProps) => JSX.Element;
|
|
10
11
|
|
|
@@ -2,9 +2,10 @@ import { IDropdownSelectProps } from '../types.js';
|
|
|
2
2
|
import 'react';
|
|
3
3
|
import '../../@types/PermissionAttr.js';
|
|
4
4
|
import '../../@types/DataCombo.js';
|
|
5
|
-
import './types.js';
|
|
6
5
|
import '../base/types.js';
|
|
7
6
|
import '../../@types/Period.js';
|
|
7
|
+
import '../../drawer/types.js';
|
|
8
|
+
import '../../@types/Position.js';
|
|
8
9
|
|
|
9
10
|
declare const Dropdown: (props: IDropdownSelectProps) => JSX.Element;
|
|
10
11
|
|
|
@@ -2,9 +2,10 @@ import { DataCombo } from '../../@types/DataCombo.js';
|
|
|
2
2
|
import { IDropdownSelectProps } from '../types.js';
|
|
3
3
|
import 'react';
|
|
4
4
|
import '../../@types/PermissionAttr.js';
|
|
5
|
-
import './types.js';
|
|
6
5
|
import '../base/types.js';
|
|
7
6
|
import '../../@types/Period.js';
|
|
7
|
+
import '../../drawer/types.js';
|
|
8
|
+
import '../../@types/Position.js';
|
|
8
9
|
|
|
9
10
|
declare const contentClass: (props: IDropdownSelectProps) => string;
|
|
10
11
|
declare const getDropdownItemCssClass: (selected: boolean, disabled: boolean, striped: boolean) => string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ISelectFieldProps } from './types.js';
|
|
2
|
-
import 'react';
|
|
3
2
|
import '../../@types/DataCombo.js';
|
|
4
3
|
import '../../@types/PermissionAttr.js';
|
|
5
4
|
import '../base/types.js';
|
|
5
|
+
import 'react';
|
|
6
6
|
import '../../@types/Period.js';
|
|
7
7
|
|
|
8
8
|
declare const SelectField: (props: ISelectFieldProps) => JSX.Element;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ISelectedsMultipleProps } from '../types.js';
|
|
2
|
-
import 'react';
|
|
3
2
|
import '../../../@types/DataCombo.js';
|
|
4
3
|
import '../../../@types/PermissionAttr.js';
|
|
5
4
|
import '../../base/types.js';
|
|
5
|
+
import 'react';
|
|
6
6
|
import '../../../@types/Period.js';
|
|
7
7
|
|
|
8
8
|
declare const Selecteds: ({ currents, descriptionKey, idKey, handleOnUnselect, }: ISelectedsMultipleProps) => JSX.Element;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { IMultipleSelectProps } from '../types.js';
|
|
2
|
-
import 'react';
|
|
3
2
|
import '../../../@types/DataCombo.js';
|
|
4
3
|
import '../../../@types/PermissionAttr.js';
|
|
5
4
|
import '../../base/types.js';
|
|
5
|
+
import 'react';
|
|
6
6
|
import '../../../@types/Period.js';
|
|
7
7
|
|
|
8
8
|
declare const MultipleSelect: (props: IMultipleSelectProps) => JSX.Element;
|