linear-react-components-ui 0.4.75 → 0.4.76-rc.0
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.js +2 -5
- package/.tool-versions +1 -0
- package/.vscode/settings.json +8 -9
- package/README.md +23 -0
- package/config/jest/cssTransform.js +14 -0
- package/config/jest/fileTransform.js +12 -0
- package/config/jest/storageMock.js +40 -0
- package/jest.config.js +18 -0
- package/lib/alerts/alert.spec.js +133 -0
- package/lib/assets/styles/dropdown.scss +25 -2
- package/lib/assets/styles/effects.scss +12 -0
- package/lib/assets/styles/floatMenu.scss +0 -1
- package/lib/assets/styles/multiSelect.scss +105 -0
- package/lib/assets/styles/panel.scss +0 -1
- package/lib/assets/styles/periodpicker.scss +65 -0
- package/lib/assets/styles/popover.scss +9 -11
- package/lib/assets/styles/progress.scss +8 -1
- package/lib/assets/styles/select.scss +1 -0
- package/lib/assets/styles/table.scss +13 -5
- package/lib/assets/styles/tabs.scss +77 -43
- package/lib/assets/styles/treeview.scss +32 -0
- package/lib/avatar/avatar.spec.js +190 -0
- package/lib/avatar/index.js +6 -2
- package/lib/badge/badge.spec.js +127 -0
- package/lib/badge/index.js +3 -5
- package/lib/buttons/DefaultButton.js +7 -1
- package/lib/buttons/buttons.spec.js +504 -0
- package/lib/calendar/calendar.spec.js +171 -0
- package/lib/checkbox/Label.js +37 -0
- package/lib/checkbox/checkbox.spec.js +215 -0
- package/lib/checkbox/index.js +21 -6
- package/lib/dialog/Custom.js +7 -1
- package/lib/dialog/base/index.js +18 -6
- package/lib/dialog/dialog.spec.js +488 -0
- package/lib/dialog/form/index.js +23 -4
- package/lib/drawer/Drawer.js +3 -0
- package/lib/drawer/Drawer.spec.js +258 -0
- package/lib/drawer/Header.js +4 -1
- package/lib/drawer/index.js +4 -1
- package/lib/dropdown/Popup.js +1 -0
- package/lib/dropdown/dropdown.spec.js +168 -0
- package/lib/dropdown/withDropdown.js +10 -4
- package/lib/fieldset/fieldset.spec.js +329 -0
- package/lib/form/Field.js +2 -0
- package/lib/form/FieldNumber.js +10 -2
- package/lib/form/FieldPeriod.js +100 -0
- package/lib/form/form.spec.js +285 -0
- package/lib/form/helpers.js +9 -1
- package/lib/form/index.js +76 -10
- package/lib/form/withFieldHOC.js +2 -0
- package/lib/form/withFormSecurity.js +106 -0
- package/lib/gridlayout/GridRow.js +1 -1
- package/lib/gridlayout/gridLayout.spec.js +169 -0
- package/lib/icons/helper.js +16 -0
- package/lib/icons/icons.spec.js +86 -0
- package/lib/icons/index.js +2 -0
- package/lib/inputs/base/InputTextBase.js +15 -5
- package/lib/inputs/base/base.spec.js +690 -0
- package/lib/inputs/color/color_input.spec.js +174 -0
- package/lib/inputs/color/index.js +2 -2
- package/lib/inputs/date/date.spec.js +344 -0
- package/lib/inputs/date/index.js +7 -6
- package/lib/inputs/mask/Cpf.js +9 -9
- package/lib/inputs/mask/input_mask.spec.js +590 -0
- package/lib/inputs/multiSelect/ActionButtons.js +68 -0
- package/lib/inputs/multiSelect/Dropdown.js +200 -0
- package/lib/inputs/multiSelect/helper.js +18 -0
- package/lib/inputs/multiSelect/index.js +343 -0
- package/lib/inputs/number/BaseNumber.js +1 -1
- package/lib/inputs/number/index.js +7 -5
- package/lib/inputs/number/numberfield.spec.js +215 -0
- package/lib/inputs/period/Dialog.js +38 -0
- package/lib/inputs/period/Dropdown.js +90 -0
- package/lib/inputs/period/PeriodList.js +79 -0
- package/lib/inputs/period/helper.js +118 -0
- package/lib/inputs/period/index.js +490 -0
- package/lib/inputs/search/search_input.spec.js +209 -0
- package/lib/inputs/select/Dropdown.js +4 -4
- package/lib/inputs/select/index.js +26 -3
- package/lib/inputs/select/multiple/index.js +9 -7
- package/lib/inputs/select/select.spec.js +391 -0
- package/lib/inputs/select/simple/index.js +30 -18
- package/lib/inputs/text/textfield.spec.js +215 -0
- package/lib/inputs/textarea/textarea.spec.js +59 -0
- package/lib/internals/withTooltip.js +83 -82
- package/lib/labelMessages/index.js +3 -2
- package/lib/labelMessages/labelMessages.spec.js +176 -0
- package/lib/labels/label.spec.js +162 -0
- package/lib/list/Item.js +3 -3
- package/lib/list/index.js +21 -10
- package/lib/list/list.spec.js +611 -0
- package/lib/menus/float/MenuItem.js +25 -8
- package/lib/menus/float/float-menu.spec.js +221 -0
- package/lib/menus/sidenav/index.js +7 -3
- package/lib/menus/sidenav/popup_menu_search/index.js +1 -1
- package/lib/menus/sidenav/sidenav.spec.js +312 -0
- package/lib/noPermission/index.js +2 -1
- package/lib/panel/panel.spec.js +216 -0
- package/lib/popover/index.js +2 -1
- package/lib/popover/popover.spec.js +146 -0
- package/lib/progress/Bar.js +40 -9
- package/lib/progress/index.js +12 -4
- package/lib/progress/progress.spec.js +86 -0
- package/lib/radio/radio.spec.js +189 -0
- package/lib/spinner/SpinnerLoading.js +14 -24
- package/lib/spinner/index.js +6 -1
- package/lib/spinner/spinner.spec.js +152 -0
- package/lib/split/Split.js +10 -12
- package/lib/split/split.spec.js +151 -0
- package/lib/table/Header.js +3 -1
- package/lib/table/Row.js +2 -5
- package/lib/table/index.js +1 -4
- package/lib/table/table.spec.js +352 -0
- package/lib/tabs/DropdownItems.js +84 -0
- package/lib/tabs/Menu.js +18 -5
- package/lib/tabs/MenuItems.js +7 -7
- package/lib/tabs/Panel.js +1 -3
- package/lib/tabs/index.js +126 -17
- package/lib/tabs/tabs.spec.js +346 -0
- package/lib/toolbar/index.js +8 -4
- package/lib/toolbar/toolbar.spec.js +394 -0
- package/lib/tooltip/index.js +13 -0
- package/lib/tooltip/tooltip.spec.js +203 -0
- package/lib/treeview/Node.js +288 -18
- package/lib/treeview/index.js +448 -35
- package/lib/treeview/treeview.spec.js +261 -0
- package/package.json +19 -9
- package/.DS_Store +0 -0
|
@@ -0,0 +1,174 @@
|
|
|
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");
|
|
10
|
+
|
|
11
|
+
var _storageMock = _interopRequireWildcard(require("../../../../config/jest/storageMock"));
|
|
12
|
+
|
|
13
|
+
var _index = _interopRequireDefault(require("./index"));
|
|
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 colorField = function colorField(props) {
|
|
24
|
+
return /*#__PURE__*/_react["default"].createElement(_index["default"], _extends({}, props, {
|
|
25
|
+
value: "#AAAAAA",
|
|
26
|
+
onChange: function onChange() {}
|
|
27
|
+
}));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
describe('ColorField', function () {
|
|
31
|
+
it('should render correctly', function () {
|
|
32
|
+
var _render = (0, _react2.render)(colorField()),
|
|
33
|
+
container = _render.container;
|
|
34
|
+
|
|
35
|
+
expect(container.firstChild).toBeTruthy();
|
|
36
|
+
});
|
|
37
|
+
it('should be apply value', function () {
|
|
38
|
+
var value = '#AAAAAA';
|
|
39
|
+
|
|
40
|
+
var _render2 = (0, _react2.render)(colorField({
|
|
41
|
+
value: value
|
|
42
|
+
})),
|
|
43
|
+
container = _render2.container;
|
|
44
|
+
|
|
45
|
+
var inputHTML = container.querySelector('.textinput');
|
|
46
|
+
expect(inputHTML.value).toBe(value);
|
|
47
|
+
});
|
|
48
|
+
it('should be apply asTextField', function () {
|
|
49
|
+
var _render3 = (0, _react2.render)(colorField({
|
|
50
|
+
asTextField: true
|
|
51
|
+
})),
|
|
52
|
+
container = _render3.container;
|
|
53
|
+
|
|
54
|
+
expect(container.querySelector('.input-base-component')).toBeTruthy();
|
|
55
|
+
expect(container.querySelector('.sidebuttons .colorpicker-colormirror')).toBeTruthy();
|
|
56
|
+
expect(container.querySelector('.button-component.colorpicker-palettebutton')).toBeTruthy();
|
|
57
|
+
});
|
|
58
|
+
it('should call onButtonClick', function () {
|
|
59
|
+
var onButtonClick = jest.fn();
|
|
60
|
+
|
|
61
|
+
var _render4 = (0, _react2.render)(colorField({
|
|
62
|
+
onButtonClick: onButtonClick
|
|
63
|
+
})),
|
|
64
|
+
container = _render4.container;
|
|
65
|
+
|
|
66
|
+
_react2.fireEvent.click(container.querySelector('.button-component.colorpicker-palettebutton'));
|
|
67
|
+
|
|
68
|
+
expect(onButtonClick).toBeCalled();
|
|
69
|
+
});
|
|
70
|
+
describe('Permission', function () {
|
|
71
|
+
var setSessionStorageMock = function setSessionStorageMock() {
|
|
72
|
+
Object.defineProperty(window, 'sessionStorage', {
|
|
73
|
+
value: (0, _storageMock["default"])()
|
|
74
|
+
});
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
it('should render subject when permission granted', function () {
|
|
78
|
+
setSessionStorageMock();
|
|
79
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockAuthorized)('unvisible');
|
|
80
|
+
|
|
81
|
+
var _render5 = (0, _react2.render)(colorField({
|
|
82
|
+
permissionAttr: permissionAttr
|
|
83
|
+
})),
|
|
84
|
+
container = _render5.container;
|
|
85
|
+
|
|
86
|
+
expect(container.querySelector('.input-base-component')).not.toBeNull();
|
|
87
|
+
});
|
|
88
|
+
it('should check permission, be unavaible and onDenied is unvisible', function () {
|
|
89
|
+
setSessionStorageMock();
|
|
90
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('unvisible');
|
|
91
|
+
|
|
92
|
+
var _render6 = (0, _react2.render)(colorField({
|
|
93
|
+
permissionAttr: permissionAttr
|
|
94
|
+
})),
|
|
95
|
+
container = _render6.container;
|
|
96
|
+
|
|
97
|
+
expect(container.querySelector('.input-base-component')).toBeNull();
|
|
98
|
+
});
|
|
99
|
+
it('should check permission, be unavaible and onDenied is disabled', function () {
|
|
100
|
+
setSessionStorageMock();
|
|
101
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
|
|
102
|
+
var onChange = jest.fn();
|
|
103
|
+
|
|
104
|
+
var _render7 = (0, _react2.render)(colorField({
|
|
105
|
+
permissionAttr: permissionAttr,
|
|
106
|
+
onChange: onChange
|
|
107
|
+
})),
|
|
108
|
+
container = _render7.container;
|
|
109
|
+
|
|
110
|
+
var inputHTML = container.querySelector('.textinput');
|
|
111
|
+
var inputWrapper = container.querySelector('.inputwrapper');
|
|
112
|
+
|
|
113
|
+
_react2.fireEvent.change(inputHTML, {
|
|
114
|
+
target: {
|
|
115
|
+
value: '#000000'
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
|
|
119
|
+
expect(inputHTML.disabled).toBeTruthy();
|
|
120
|
+
expect(onChange).not.toBeCalled();
|
|
121
|
+
expect(inputWrapper).toHaveClass('-disabled');
|
|
122
|
+
});
|
|
123
|
+
it('should check permission, be unavaible and onDenied is readOnly', function () {
|
|
124
|
+
setSessionStorageMock();
|
|
125
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('disabled');
|
|
126
|
+
var onChange = jest.fn();
|
|
127
|
+
|
|
128
|
+
var _render8 = (0, _react2.render)(colorField({
|
|
129
|
+
permissionAttr: permissionAttr,
|
|
130
|
+
onChange: onChange
|
|
131
|
+
})),
|
|
132
|
+
container = _render8.container;
|
|
133
|
+
|
|
134
|
+
var inputHTML = container.querySelector('.textinput');
|
|
135
|
+
var inputWrapper = container.querySelector('.inputwrapper');
|
|
136
|
+
|
|
137
|
+
_react2.fireEvent.change(inputHTML, {
|
|
138
|
+
target: {
|
|
139
|
+
value: '#000000'
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
expect(inputHTML.disabled).toBeTruthy();
|
|
144
|
+
expect(onChange).not.toBeCalled();
|
|
145
|
+
expect(inputWrapper).toHaveClass('-disabled');
|
|
146
|
+
});
|
|
147
|
+
it('should check permission, be unavaible and onDenied is hideContent', function () {
|
|
148
|
+
setSessionStorageMock();
|
|
149
|
+
var permissionAttr = (0, _storageMock.permissionAttrMockUnauthorized)('hideContent');
|
|
150
|
+
var onChange = jest.fn();
|
|
151
|
+
|
|
152
|
+
var _render9 = (0, _react2.render)(colorField({
|
|
153
|
+
permissionAttr: permissionAttr,
|
|
154
|
+
onChange: onChange,
|
|
155
|
+
value: '#000000'
|
|
156
|
+
})),
|
|
157
|
+
container = _render9.container;
|
|
158
|
+
|
|
159
|
+
var inputHTML = container.querySelector('.textinput');
|
|
160
|
+
var inputWrapper = container.querySelector('.inputwrapper');
|
|
161
|
+
|
|
162
|
+
_react2.fireEvent.change(inputHTML, {
|
|
163
|
+
target: {
|
|
164
|
+
value: '#000000'
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
|
|
168
|
+
expect(inputHTML.value).toBe('');
|
|
169
|
+
expect(inputHTML.disabled).toBeTruthy();
|
|
170
|
+
expect(onChange).not.toBeCalled();
|
|
171
|
+
expect(inputWrapper).toHaveClass('-disabled');
|
|
172
|
+
});
|
|
173
|
+
});
|
|
174
|
+
});
|
|
@@ -87,7 +87,7 @@ var ColorPicker = function ColorPicker(props) {
|
|
|
87
87
|
className: "colorpicker-hideinputcolor",
|
|
88
88
|
ref: inputRef,
|
|
89
89
|
type: "color",
|
|
90
|
-
|
|
90
|
+
defaultValue: color,
|
|
91
91
|
name: name,
|
|
92
92
|
onClick: function onClick(e) {
|
|
93
93
|
return onButtonClick ? onButtonClick(e) : null;
|
|
@@ -106,7 +106,7 @@ var ColorPicker = function ColorPicker(props) {
|
|
|
106
106
|
name: name,
|
|
107
107
|
ref: inputRef,
|
|
108
108
|
type: "color",
|
|
109
|
-
|
|
109
|
+
defaultValue: color,
|
|
110
110
|
onClick: function onClick(e) {
|
|
111
111
|
return onButtonClick ? onButtonClick(e) : null;
|
|
112
112
|
},
|
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _react = _interopRequireDefault(require("react"));
|
|
4
|
+
|
|
5
|
+
var _moment = _interopRequireDefault(require("moment"));
|
|
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
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
14
|
+
|
|
15
|
+
describe('DatePicker', function () {
|
|
16
|
+
var datePicker = function datePicker(datePickerProps) {
|
|
17
|
+
return /*#__PURE__*/_react["default"].createElement(_index["default"], datePickerProps);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
describe('prop value should', function () {
|
|
21
|
+
it('apply valid date string', function () {
|
|
22
|
+
var value = '12/12/2001';
|
|
23
|
+
|
|
24
|
+
var _render = (0, _react2.render)(datePicker({
|
|
25
|
+
value: value
|
|
26
|
+
})),
|
|
27
|
+
container = _render.container;
|
|
28
|
+
|
|
29
|
+
var inputContent = container.querySelector('.textinput');
|
|
30
|
+
expect(inputContent.value).toBe(value);
|
|
31
|
+
});
|
|
32
|
+
it('apply moment object', function () {
|
|
33
|
+
var value = (0, _moment["default"])();
|
|
34
|
+
|
|
35
|
+
var _render2 = (0, _react2.render)(datePicker({
|
|
36
|
+
value: value
|
|
37
|
+
})),
|
|
38
|
+
container = _render2.container;
|
|
39
|
+
|
|
40
|
+
var inputContent = container.querySelector('.textinput');
|
|
41
|
+
expect(inputContent.value).toBe(value.format('DD/MM/YYYY'));
|
|
42
|
+
});
|
|
43
|
+
it('not apply invalid string date', function () {
|
|
44
|
+
var value = '29/29/2001';
|
|
45
|
+
|
|
46
|
+
var _render3 = (0, _react2.render)(datePicker({
|
|
47
|
+
value: value
|
|
48
|
+
})),
|
|
49
|
+
container = _render3.container;
|
|
50
|
+
|
|
51
|
+
var inputContent = container.querySelector('.textinput');
|
|
52
|
+
expect(inputContent.value).toBe('__/__/____');
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
describe('prop showButtonOpen should', function () {
|
|
56
|
+
it('render calendar button when true', function () {
|
|
57
|
+
var _render4 = (0, _react2.render)(datePicker({
|
|
58
|
+
showButtonOpen: true
|
|
59
|
+
})),
|
|
60
|
+
container = _render4.container;
|
|
61
|
+
|
|
62
|
+
var calendarButton = container.querySelector('.calendar-button');
|
|
63
|
+
expect(calendarButton).toBeTruthy();
|
|
64
|
+
});
|
|
65
|
+
it('not render calendar button when false', function () {
|
|
66
|
+
var _render5 = (0, _react2.render)(datePicker({
|
|
67
|
+
showButtonOpen: false
|
|
68
|
+
})),
|
|
69
|
+
container = _render5.container;
|
|
70
|
+
|
|
71
|
+
var calendarButton = container.querySelector('.calendar-button');
|
|
72
|
+
expect(calendarButton).not.toBeTruthy();
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
describe('prop shouldCloseOnSelect', function () {
|
|
76
|
+
it('when false should not close Calendar after date beeing chosed', function () {
|
|
77
|
+
var _render6 = (0, _react2.render)(datePicker({
|
|
78
|
+
shouldCloseOnSelect: false
|
|
79
|
+
})),
|
|
80
|
+
container = _render6.container;
|
|
81
|
+
|
|
82
|
+
var inputContent = container.querySelector('.textinput');
|
|
83
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
84
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
85
|
+
|
|
86
|
+
_react2.fireEvent.focus(inputContent);
|
|
87
|
+
|
|
88
|
+
calendarComponent = document.querySelector('.calendar-component');
|
|
89
|
+
var dayButtons = document.querySelectorAll('.daybutton');
|
|
90
|
+
|
|
91
|
+
_react2.fireEvent.click(dayButtons[0]);
|
|
92
|
+
|
|
93
|
+
expect(calendarComponent).toBeInTheDocument();
|
|
94
|
+
});
|
|
95
|
+
it('when true should close Calendar after date beeing chosed', function () {
|
|
96
|
+
var _render7 = (0, _react2.render)(datePicker({
|
|
97
|
+
shouldCloseOnSelect: true
|
|
98
|
+
})),
|
|
99
|
+
container = _render7.container;
|
|
100
|
+
|
|
101
|
+
var inputContent = container.querySelector('.textinput');
|
|
102
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
103
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
104
|
+
|
|
105
|
+
_react2.fireEvent.focus(inputContent);
|
|
106
|
+
|
|
107
|
+
calendarComponent = document.querySelector('.calendar-component');
|
|
108
|
+
var dayButtons = document.querySelectorAll('.daybutton');
|
|
109
|
+
|
|
110
|
+
_react2.fireEvent.click(dayButtons[0]);
|
|
111
|
+
|
|
112
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
describe('prop openOnFocus', function () {
|
|
116
|
+
it('when false should not open Calendar when input receive focus', function () {
|
|
117
|
+
var _render8 = (0, _react2.render)(datePicker({
|
|
118
|
+
openOnFocus: false
|
|
119
|
+
})),
|
|
120
|
+
container = _render8.container;
|
|
121
|
+
|
|
122
|
+
var inputContent = container.querySelector('.textinput');
|
|
123
|
+
|
|
124
|
+
_react2.fireEvent.focus(inputContent);
|
|
125
|
+
|
|
126
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
127
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
128
|
+
});
|
|
129
|
+
it('when true should open Calendar when input receive focus', function () {
|
|
130
|
+
var _render9 = (0, _react2.render)(datePicker({
|
|
131
|
+
openOnFocus: true
|
|
132
|
+
})),
|
|
133
|
+
container = _render9.container;
|
|
134
|
+
|
|
135
|
+
var inputContent = container.querySelector('.textinput');
|
|
136
|
+
|
|
137
|
+
_react2.fireEvent.focus(inputContent);
|
|
138
|
+
|
|
139
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
140
|
+
expect(calendarComponent).toBeInTheDocument();
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
describe('prop showCalendarInDialog', function () {
|
|
144
|
+
it('when true should render Calendar within Dialog', function () {
|
|
145
|
+
var _render10 = (0, _react2.render)(datePicker({
|
|
146
|
+
showCalendarInDialog: true
|
|
147
|
+
})),
|
|
148
|
+
container = _render10.container;
|
|
149
|
+
|
|
150
|
+
var inputContent = container.querySelector('.textinput');
|
|
151
|
+
|
|
152
|
+
_react2.fireEvent.focus(inputContent);
|
|
153
|
+
|
|
154
|
+
var calendarComponent = document.querySelector('.dialog .calendar-component');
|
|
155
|
+
expect(calendarComponent).toBeTruthy();
|
|
156
|
+
});
|
|
157
|
+
it('when false should render Calendar within Dropdown', function () {
|
|
158
|
+
var _render11 = (0, _react2.render)(datePicker({
|
|
159
|
+
showCalendarInDialog: false
|
|
160
|
+
})),
|
|
161
|
+
container = _render11.container;
|
|
162
|
+
|
|
163
|
+
var inputContent = container.querySelector('.textinput');
|
|
164
|
+
|
|
165
|
+
_react2.fireEvent.focus(inputContent);
|
|
166
|
+
|
|
167
|
+
var calendarComponent = document.querySelector('.datepicker-component > .calendar-component');
|
|
168
|
+
expect(calendarComponent).toBeTruthy();
|
|
169
|
+
});
|
|
170
|
+
});
|
|
171
|
+
it('should apply dialogSize', function () {
|
|
172
|
+
var dialogSize = {
|
|
173
|
+
width: '750px',
|
|
174
|
+
height: '600px'
|
|
175
|
+
};
|
|
176
|
+
|
|
177
|
+
var _render12 = (0, _react2.render)(datePicker({
|
|
178
|
+
showCalendarInDialog: true,
|
|
179
|
+
dialogSize: dialogSize
|
|
180
|
+
})),
|
|
181
|
+
container = _render12.container;
|
|
182
|
+
|
|
183
|
+
var inputContent = container.querySelector('.textinput');
|
|
184
|
+
|
|
185
|
+
_react2.fireEvent.focus(inputContent);
|
|
186
|
+
|
|
187
|
+
var dialogWrapper = _react2.screen.getByTestId('dialog-wrapper');
|
|
188
|
+
|
|
189
|
+
expect(dialogWrapper).toHaveStyle(dialogSize);
|
|
190
|
+
});
|
|
191
|
+
describe('prop calendarColorStyle', function () {
|
|
192
|
+
it('when receive "primary" add -primary css class to Calendar', function () {
|
|
193
|
+
var _render13 = (0, _react2.render)(datePicker({
|
|
194
|
+
calendarColorStyle: 'primary'
|
|
195
|
+
})),
|
|
196
|
+
container = _render13.container;
|
|
197
|
+
|
|
198
|
+
var inputContent = container.querySelector('.textinput');
|
|
199
|
+
|
|
200
|
+
_react2.fireEvent.focus(inputContent);
|
|
201
|
+
|
|
202
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
203
|
+
expect(calendarComponent).toHaveClass('-primary');
|
|
204
|
+
});
|
|
205
|
+
it('when receive "success" add -success css class to Calendar', function () {
|
|
206
|
+
var _render14 = (0, _react2.render)(datePicker({
|
|
207
|
+
calendarColorStyle: 'success'
|
|
208
|
+
})),
|
|
209
|
+
container = _render14.container;
|
|
210
|
+
|
|
211
|
+
var inputContent = container.querySelector('.textinput');
|
|
212
|
+
|
|
213
|
+
_react2.fireEvent.focus(inputContent);
|
|
214
|
+
|
|
215
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
216
|
+
expect(calendarComponent).toHaveClass('-success');
|
|
217
|
+
});
|
|
218
|
+
it('when receive "danger" add -danger css class to Calendar', function () {
|
|
219
|
+
var _render15 = (0, _react2.render)(datePicker({
|
|
220
|
+
calendarColorStyle: 'danger'
|
|
221
|
+
})),
|
|
222
|
+
container = _render15.container;
|
|
223
|
+
|
|
224
|
+
var inputContent = container.querySelector('.textinput');
|
|
225
|
+
|
|
226
|
+
_react2.fireEvent.focus(inputContent);
|
|
227
|
+
|
|
228
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
229
|
+
expect(calendarComponent).toHaveClass('-danger');
|
|
230
|
+
});
|
|
231
|
+
it('when receive "info" add -info css class to Calendar', function () {
|
|
232
|
+
var _render16 = (0, _react2.render)(datePicker({
|
|
233
|
+
calendarColorStyle: 'info'
|
|
234
|
+
})),
|
|
235
|
+
container = _render16.container;
|
|
236
|
+
|
|
237
|
+
var inputContent = container.querySelector('.textinput');
|
|
238
|
+
|
|
239
|
+
_react2.fireEvent.focus(inputContent);
|
|
240
|
+
|
|
241
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
242
|
+
expect(calendarComponent).toHaveClass('-info');
|
|
243
|
+
});
|
|
244
|
+
it('when receive "warning" add -warning css class to Calendar', function () {
|
|
245
|
+
var _render17 = (0, _react2.render)(datePicker({
|
|
246
|
+
calendarColorStyle: 'warning'
|
|
247
|
+
})),
|
|
248
|
+
container = _render17.container;
|
|
249
|
+
|
|
250
|
+
var inputContent = container.querySelector('.textinput');
|
|
251
|
+
|
|
252
|
+
_react2.fireEvent.focus(inputContent);
|
|
253
|
+
|
|
254
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
255
|
+
expect(calendarComponent).toHaveClass('-warning');
|
|
256
|
+
});
|
|
257
|
+
});
|
|
258
|
+
it('prop required should render span for required field', function () {
|
|
259
|
+
var _render18 = (0, _react2.render)(datePicker({
|
|
260
|
+
label: 'teste',
|
|
261
|
+
required: true
|
|
262
|
+
})),
|
|
263
|
+
container = _render18.container;
|
|
264
|
+
|
|
265
|
+
var requiredLabel = container.querySelector('.input-base-component > .labelcontainer > .label > .-requiredlabel');
|
|
266
|
+
expect(requiredLabel).toBeTruthy();
|
|
267
|
+
expect(requiredLabel).toHaveTextContent('*');
|
|
268
|
+
});
|
|
269
|
+
it('should apply onComplete', function () {
|
|
270
|
+
var onComplete = jest.fn();
|
|
271
|
+
|
|
272
|
+
var _render19 = (0, _react2.render)(datePicker({
|
|
273
|
+
onComplete: onComplete
|
|
274
|
+
})),
|
|
275
|
+
container = _render19.container;
|
|
276
|
+
|
|
277
|
+
var inputContent = container.querySelector('.textinput');
|
|
278
|
+
|
|
279
|
+
_react2.fireEvent.change(inputContent, {
|
|
280
|
+
target: {
|
|
281
|
+
value: (0, _moment["default"])()
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
|
|
285
|
+
expect(onComplete).toBeCalled();
|
|
286
|
+
});
|
|
287
|
+
it('should apply onBlur', function () {
|
|
288
|
+
var onBlur = jest.fn();
|
|
289
|
+
|
|
290
|
+
var _render20 = (0, _react2.render)(datePicker({
|
|
291
|
+
onBlur: onBlur
|
|
292
|
+
})),
|
|
293
|
+
container = _render20.container;
|
|
294
|
+
|
|
295
|
+
var inputContent = container.querySelector('.textinput');
|
|
296
|
+
|
|
297
|
+
_react2.fireEvent.blur(inputContent);
|
|
298
|
+
|
|
299
|
+
expect(onBlur).toBeCalled();
|
|
300
|
+
});
|
|
301
|
+
it('should apply onFocus', function () {
|
|
302
|
+
var onFocus = jest.fn();
|
|
303
|
+
|
|
304
|
+
var _render21 = (0, _react2.render)(datePicker({
|
|
305
|
+
onFocus: onFocus
|
|
306
|
+
})),
|
|
307
|
+
container = _render21.container;
|
|
308
|
+
|
|
309
|
+
var inputContent = container.querySelector('.textinput');
|
|
310
|
+
|
|
311
|
+
_react2.fireEvent.focus(inputContent);
|
|
312
|
+
|
|
313
|
+
expect(onFocus).toBeCalled();
|
|
314
|
+
});
|
|
315
|
+
it('should apply onChange', function () {
|
|
316
|
+
var onChange = jest.fn();
|
|
317
|
+
|
|
318
|
+
var _render22 = (0, _react2.render)(datePicker({
|
|
319
|
+
onChange: onChange
|
|
320
|
+
})),
|
|
321
|
+
container = _render22.container;
|
|
322
|
+
|
|
323
|
+
var inputContent = container.querySelector('.textinput');
|
|
324
|
+
|
|
325
|
+
_react2.fireEvent.change(inputContent, {
|
|
326
|
+
target: {
|
|
327
|
+
value: (0, _moment["default"])()
|
|
328
|
+
}
|
|
329
|
+
});
|
|
330
|
+
|
|
331
|
+
expect(onChange).toBeCalled();
|
|
332
|
+
});
|
|
333
|
+
it('should apply name', function () {
|
|
334
|
+
var name = 'sus';
|
|
335
|
+
|
|
336
|
+
var _render23 = (0, _react2.render)(datePicker({
|
|
337
|
+
name: name
|
|
338
|
+
})),
|
|
339
|
+
container = _render23.container;
|
|
340
|
+
|
|
341
|
+
var inputContent = container.querySelector('.textinput');
|
|
342
|
+
expect(inputContent.name).toBe(name);
|
|
343
|
+
});
|
|
344
|
+
});
|
package/lib/inputs/date/index.js
CHANGED
|
@@ -60,6 +60,7 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
|
|
|
60
60
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
61
61
|
|
|
62
62
|
var CALENDAR_BUTTON_WIDTH = 24;
|
|
63
|
+
var dateFormat = 'DD/MM/YYYY';
|
|
63
64
|
|
|
64
65
|
var DatePicker = /*#__PURE__*/function (_Component) {
|
|
65
66
|
_inherits(DatePicker, _Component);
|
|
@@ -115,7 +116,7 @@ var DatePicker = /*#__PURE__*/function (_Component) {
|
|
|
115
116
|
var required = this.props.required;
|
|
116
117
|
if (onDenied && onDenied.unvisible) return null;
|
|
117
118
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_BaseMask["default"], _extends({}, this.props, {
|
|
118
|
-
value: !value ? ' ' : value.format(
|
|
119
|
+
value: !value ? ' ' : value.format(dateFormat),
|
|
119
120
|
mask: "00/00/0000",
|
|
120
121
|
onComplete: function onComplete(e, date) {
|
|
121
122
|
_this2.setValue(e, date);
|
|
@@ -153,7 +154,7 @@ Object.defineProperty(DatePicker, "getDerivedStateFromProps", {
|
|
|
153
154
|
var value = props.value;
|
|
154
155
|
var propsValue = state.propsValue;
|
|
155
156
|
|
|
156
|
-
if (value && (0, _moment["default"])(value).format() !== 'Invalid date' && (0, _moment["default"])(propsValue).format() !== (0, _moment["default"])(value).format()) {
|
|
157
|
+
if (value && (0, _moment["default"])(value, dateFormat).format() !== 'Invalid date' && (0, _moment["default"])(propsValue, dateFormat).format() !== (0, _moment["default"])(value, dateFormat).format()) {
|
|
157
158
|
return {
|
|
158
159
|
value: (0, _moment["default"])(value),
|
|
159
160
|
propsValue: value
|
|
@@ -261,8 +262,8 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
261
262
|
var onChange = _this3.props.onChange;
|
|
262
263
|
|
|
263
264
|
if (onChange) {
|
|
264
|
-
if ((0, _moment["default"])(_value,
|
|
265
|
-
var newValue = (0, _moment["default"])(_value,
|
|
265
|
+
if ((0, _moment["default"])(_value, dateFormat, true).isValid()) {
|
|
266
|
+
var newValue = (0, _moment["default"])(_value, dateFormat).format('YYYY-MM-DD');
|
|
266
267
|
var obj = {
|
|
267
268
|
target: {
|
|
268
269
|
value: newValue,
|
|
@@ -308,7 +309,7 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
308
309
|
if (_this3.props.shouldCloseOnSelect) showCalendar = false;
|
|
309
310
|
|
|
310
311
|
_this3.setState({
|
|
311
|
-
value: (0, _moment["default"])(_value2,
|
|
312
|
+
value: (0, _moment["default"])(_value2, dateFormat),
|
|
312
313
|
showCalendar: showCalendar
|
|
313
314
|
});
|
|
314
315
|
}
|
|
@@ -432,7 +433,7 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
432
433
|
};
|
|
433
434
|
|
|
434
435
|
DatePicker.propTypes = {
|
|
435
|
-
value: _propTypes["default"].string,
|
|
436
|
+
value: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object]),
|
|
436
437
|
showButtonOpen: _propTypes["default"].bool,
|
|
437
438
|
shouldCloseOnSelect: _propTypes["default"].bool,
|
|
438
439
|
setFocusOnSelect: _propTypes["default"].bool,
|
package/lib/inputs/mask/Cpf.js
CHANGED
|
@@ -54,18 +54,18 @@ var CpfField = function CpfField(props) {
|
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
56
|
}, []);
|
|
57
|
+
var debouncedOnChange = (0, _react.useMemo)(function () {
|
|
58
|
+
return _lodash["default"].debounce(function (value) {
|
|
59
|
+
(0, _helpers.CPFValidation)(value, !handlerSetComponentValidator ? setMessageFromValidator : undefined);
|
|
60
|
+
}, 300);
|
|
61
|
+
}, [handlerSetComponentValidator]);
|
|
62
|
+
(0, _react.useEffect)(function () {
|
|
63
|
+
return debouncedOnChange.cancel;
|
|
64
|
+
}, []);
|
|
57
65
|
|
|
58
66
|
var onChange = function onChange(e) {
|
|
59
67
|
if (enableValidation) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if (!debouncedOnChange) {
|
|
63
|
-
debouncedOnChange = _lodash["default"].debounce(function () {
|
|
64
|
-
(0, _helpers.CPFValidation)(e.target.value, !handlerSetComponentValidator ? setMessageFromValidator : undefined);
|
|
65
|
-
}, 300);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
debouncedOnChange();
|
|
68
|
+
debouncedOnChange(e.target.value);
|
|
69
69
|
if (props.onChange) props.onChange(e);
|
|
70
70
|
}
|
|
71
71
|
|