linear-react-components-ui 1.0.10-rc.0 → 1.0.10-rc.2
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/.eslintrc.json +1 -0
- package/README.md +19 -12
- package/lib/alerts/alert.spec.js +133 -0
- package/lib/assets/styles/dialog.scss +9 -4
- package/lib/assets/styles/effects.scss +2 -2
- package/lib/assets/styles/radio.scss +52 -8
- package/lib/assets/styles/tooltip.scss +42 -2
- package/lib/avatar/avatar.spec.js +190 -0
- package/lib/badge/badge.spec.js +127 -0
- package/lib/buttons/DefaultButton.js +2 -1
- package/lib/buttons/SpinnerLoading.js +230 -0
- package/lib/buttons/buttons.spec.js +504 -0
- package/lib/buttons/types.d.ts +1 -0
- package/lib/calendar/calendar.spec.js +171 -0
- package/lib/checkbox/checkbox.spec.js +215 -0
- package/lib/dialog/base/Header.js +12 -1
- package/lib/dialog/base/index.js +73 -14
- package/lib/dialog/dialog.spec.js +488 -0
- package/lib/dialog/form/index.d.ts +4 -3
- package/lib/dialog/form/index.js +11 -4
- package/lib/dialog/types.d.ts +4 -1
- package/lib/drawer/Drawer.spec.js +258 -0
- package/lib/dropdown/Popup.js +5 -0
- package/lib/dropdown/dropdown.spec.js +169 -0
- package/lib/fieldset/fieldset.spec.js +329 -0
- package/lib/form/FieldArray.js +2 -2
- package/lib/form/form.spec.js +293 -0
- package/lib/gridlayout/gridLayout.spec.js +169 -0
- package/lib/icons/helper.d.ts +4 -0
- package/lib/icons/helper.js +4 -0
- package/lib/icons/icons.spec.js +86 -0
- 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/helpers.d.ts +1 -1
- package/lib/inputs/date/helpers.js +3 -2
- package/lib/inputs/date/index.js +23 -9
- package/lib/inputs/date/types.d.ts +2 -1
- package/lib/inputs/mask/BaseMask.js +20 -5
- package/lib/inputs/mask/helpers.js +1 -1
- package/lib/inputs/mask/imaskHOC.js +1 -1
- package/lib/inputs/mask/input_mask.spec.js +607 -0
- package/lib/inputs/multiSelect/Dropdown.js +3 -3
- package/lib/inputs/multiSelect/index.js +10 -9
- package/lib/inputs/multiSelect/types.d.ts +4 -3
- package/lib/inputs/number/format_number.d.ts +2 -1
- package/lib/inputs/number/format_number.js +11 -2
- package/lib/inputs/number/numberfield.spec.js +215 -0
- package/lib/inputs/search/search_input.spec.js +209 -0
- package/lib/inputs/select/select.spec.js +395 -0
- package/lib/inputs/select/simple/index.js +5 -1
- package/lib/inputs/select/types.d.ts +1 -1
- package/lib/inputs/text/textfield.spec.js +215 -0
- package/lib/inputs/textarea/index.js +1 -1
- package/lib/inputs/textarea/textarea.spec.js +59 -0
- package/lib/internals/types.d.ts +1 -0
- package/lib/internals/withTooltip.js +13 -6
- package/lib/labelMessages/labelMessages.spec.js +176 -0
- package/lib/labels/label.spec.js +162 -0
- package/lib/list/list.spec.js +769 -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 +94 -0
- package/lib/radio/index.d.ts +2 -1
- package/lib/radio/index.js +3 -1
- package/lib/radio/radio.spec.js +189 -0
- package/lib/radio/types.d.ts +2 -0
- package/lib/spinner/spinner.spec.js +152 -0
- package/lib/split/split.spec.js +163 -0
- package/lib/table/table.spec.js +352 -0
- package/lib/tabs/tabs.spec.js +321 -0
- package/lib/toolbar/toolbar.spec.js +394 -0
- package/lib/tooltip/index.d.ts +1 -1
- package/lib/tooltip/index.js +5 -1
- package/lib/tooltip/tooltip.spec.js +215 -0
- package/lib/tooltip/types.d.ts +1 -0
- package/lib/treeview/index.js +1 -0
- package/lib/treeview/treeview.spec.js +279 -0
- package/lib/uitour/uitour.spec.js +176 -0
- package/package.json +6 -3
|
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
9
8
|
var _lodash = _interopRequireDefault(require("lodash"));
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _uuid = _interopRequireDefault(require("uuid"));
|
|
11
|
-
var _Dropdown = _interopRequireDefault(require("./Dropdown"));
|
|
12
11
|
var _InputTextBase = _interopRequireDefault(require("../base/InputTextBase"));
|
|
13
|
-
var _helper = _interopRequireDefault(require("./helper"));
|
|
14
12
|
var _ActionButtons = _interopRequireDefault(require("./ActionButtons"));
|
|
13
|
+
var _Dropdown = _interopRequireDefault(require("./Dropdown"));
|
|
14
|
+
var _helper = _interopRequireDefault(require("./helper"));
|
|
15
15
|
require("../../assets/styles/multiSelect.scss");
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
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); }
|
|
18
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
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
19
|
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); }
|
|
20
20
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
21
21
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
@@ -124,7 +124,7 @@ var MultiSelectField = function MultiSelectField(props) {
|
|
|
124
124
|
};
|
|
125
125
|
var handleOnFilter = function handleOnFilter(currentValue) {
|
|
126
126
|
var newDataCombo = dataSource;
|
|
127
|
-
if (currentValue !== '') {
|
|
127
|
+
if (currentValue !== '' && dataSource) {
|
|
128
128
|
newDataCombo = (0, _helper.default)({
|
|
129
129
|
dataSource: dataSource,
|
|
130
130
|
descriptionKey: descriptionKey,
|
|
@@ -141,7 +141,7 @@ var MultiSelectField = function MultiSelectField(props) {
|
|
|
141
141
|
var onCheckAll = function onCheckAll() {
|
|
142
142
|
var fromFilter = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
143
143
|
var currentData = fromFilter ? dataCombo : dataSource;
|
|
144
|
-
if (onSelect) onSelect(currentData.map(function (i) {
|
|
144
|
+
if (onSelect && currentData) onSelect(currentData.map(function (i) {
|
|
145
145
|
return i[idKey];
|
|
146
146
|
}));
|
|
147
147
|
setSelecteds(currentData);
|
|
@@ -197,16 +197,17 @@ var MultiSelectField = function MultiSelectField(props) {
|
|
|
197
197
|
};
|
|
198
198
|
}, []);
|
|
199
199
|
(0, _react.useEffect)(function () {
|
|
200
|
-
if (dataSource.length > 0) {
|
|
200
|
+
if (dataSource && dataSource.length > 0) {
|
|
201
201
|
var newSelecteds = dataSource.filter(function (item) {
|
|
202
202
|
return value === null || value === void 0 ? void 0 : value.includes(item[idKey]);
|
|
203
203
|
});
|
|
204
204
|
setSelecteds(newSelecteds);
|
|
205
205
|
}
|
|
206
|
-
}, [value === null || value === void 0 ? void 0 : value.length, dataSource.length]);
|
|
206
|
+
}, [value === null || value === void 0 ? void 0 : value.length, dataSource === null || dataSource === void 0 ? void 0 : dataSource.length]);
|
|
207
207
|
(0, _react.useEffect)(function () {
|
|
208
|
-
if (!_lodash.default.isEqual(dataSource, dataCombo)) {
|
|
208
|
+
if (dataSource && dataCombo && !_lodash.default.isEqual(dataSource, dataCombo)) {
|
|
209
209
|
var newDataCombo = (0, _helper.default)(_extends({}, props, {
|
|
210
|
+
dataSource: dataSource || undefined,
|
|
210
211
|
inputText: inputValue
|
|
211
212
|
}));
|
|
212
213
|
setDataCombo(newDataCombo);
|
|
@@ -20,7 +20,7 @@ interface IActionButtonsProps {
|
|
|
20
20
|
dropdownAlignButton?: 'left' | 'right';
|
|
21
21
|
}
|
|
22
22
|
interface IDropdownMultiSelectProps {
|
|
23
|
-
dataCombo
|
|
23
|
+
dataCombo?: DataCombo[];
|
|
24
24
|
idKey: string;
|
|
25
25
|
descriptionKey: DescriptionKey;
|
|
26
26
|
inputValue: string;
|
|
@@ -44,15 +44,16 @@ interface IDropdownMultiSelectProps {
|
|
|
44
44
|
dropdownMaxHeight?: number;
|
|
45
45
|
}
|
|
46
46
|
interface IMultiSelectProps {
|
|
47
|
-
dataSource
|
|
47
|
+
dataSource?: DataCombo[];
|
|
48
48
|
idKey: string;
|
|
49
49
|
descriptionKey: DescriptionKey;
|
|
50
50
|
value?: any[];
|
|
51
51
|
gridLayout?: string;
|
|
52
|
-
onSelect
|
|
52
|
+
onSelect?: (data?: string[]) => void;
|
|
53
53
|
onBlur?: (e: CustomInputEvent) => void;
|
|
54
54
|
disabled?: boolean;
|
|
55
55
|
dropdownAlignButton?: 'left' | 'right';
|
|
56
|
+
label?: string;
|
|
56
57
|
}
|
|
57
58
|
|
|
58
59
|
export { DescriptionKey, GetFilteredParams, IActionButtonsProps, IDropdownMultiSelectProps, IMultiSelectProps };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
declare const numberToPtBR: (value?: string | number) => string | undefined;
|
|
2
2
|
declare const numberToEnUS: (value: string) => string | number;
|
|
3
|
+
declare const formatCnpjCpfField: (value: string) => string;
|
|
3
4
|
|
|
4
|
-
export { numberToEnUS, numberToPtBR };
|
|
5
|
+
export { formatCnpjCpfField, numberToEnUS, numberToPtBR };
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.numberToPtBR = exports.numberToEnUS = void 0;
|
|
6
|
+
exports.numberToPtBR = exports.numberToEnUS = exports.formatCnpjCpfField = void 0;
|
|
7
7
|
var numberToPtBR = function numberToPtBR(value) {
|
|
8
8
|
if (value !== undefined && typeof value === 'number') {
|
|
9
9
|
return value.toLocaleString('pt-BR');
|
|
@@ -19,4 +19,13 @@ var numberToEnUS = function numberToEnUS(value) {
|
|
|
19
19
|
}
|
|
20
20
|
return value;
|
|
21
21
|
};
|
|
22
|
-
exports.numberToEnUS = numberToEnUS;
|
|
22
|
+
exports.numberToEnUS = numberToEnUS;
|
|
23
|
+
var formatCnpjCpfField = function formatCnpjCpfField(value) {
|
|
24
|
+
var formattedString;
|
|
25
|
+
if (value) {
|
|
26
|
+
formattedString = value.replace(/[._\-/]/g, '');
|
|
27
|
+
return formattedString;
|
|
28
|
+
}
|
|
29
|
+
return value;
|
|
30
|
+
};
|
|
31
|
+
exports.formatCnpjCpfField = formatCnpjCpfField;
|
|
@@ -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
|
+
});
|
|
@@ -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
|
+
});
|