linear-react-components-ui 1.0.1 → 1.0.3-beta.1
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/@types/Align.d.ts +1 -1
- package/lib/@types/ButtonTypes.d.ts +1 -1
- package/lib/@types/ColorStyles.d.ts +1 -1
- package/lib/@types/DataCombo.d.ts +1 -1
- package/lib/@types/Icon.d.ts +1 -1
- package/lib/@types/LabelStyles.d.ts +1 -1
- package/lib/@types/Period.d.ts +1 -1
- package/lib/@types/PermissionAttr.d.ts +2 -2
- package/lib/@types/PointerEvents.d.ts +1 -1
- package/lib/@types/Position.d.ts +1 -1
- package/lib/@types/PositionAlert.d.ts +1 -1
- package/lib/@types/Size.d.ts +1 -1
- package/lib/@types/SizePixels.d.ts +1 -1
- package/lib/alerts/AlertContainer.js +21 -5
- package/lib/alerts/AlertProvider.js +45 -15
- package/lib/alerts/BaseAlert.js +20 -4
- package/lib/alerts/Message.js +32 -21
- package/lib/alerts/alert.spec.js +133 -0
- package/lib/alerts/helpers.js +2 -0
- package/lib/alerts/index.d.ts +1 -4
- package/lib/alerts/index.js +4 -0
- package/lib/alerts/types.d.ts +4 -4
- package/lib/alerts/withAlert.js +12 -1
- package/lib/avatar/avatar.spec.js +190 -0
- package/lib/avatar/index.js +35 -20
- package/lib/badge/badge.spec.js +127 -0
- package/lib/badge/index.js +14 -9
- package/lib/buttons/ActivateButton.js +6 -0
- package/lib/buttons/AddButton.js +7 -0
- package/lib/buttons/Button.js +15 -2
- package/lib/buttons/ButtonGroups.js +4 -0
- package/lib/buttons/CancelButton.js +11 -1
- package/lib/buttons/DangerButton.js +11 -1
- package/lib/buttons/DefaultButton.js +81 -45
- package/lib/buttons/DestroyButton.js +12 -1
- package/lib/buttons/EditButton.js +6 -0
- package/lib/buttons/InactivateButton.js +6 -0
- package/lib/buttons/InfoButton.js +11 -1
- package/lib/buttons/PrimaryButton.js +11 -1
- package/lib/buttons/RestoreButton.js +6 -0
- package/lib/buttons/SaveButton.js +11 -1
- package/lib/buttons/SpinnerLoading.js +230 -0
- package/lib/buttons/SuccessButton.js +11 -1
- package/lib/buttons/WarningButton.js +11 -1
- package/lib/buttons/button_container/index.js +11 -5
- package/lib/buttons/buttons.spec.js +504 -0
- package/lib/buttons/index.d.ts +1 -4
- package/lib/buttons/index.js +18 -0
- package/lib/buttons/split_button/index.js +17 -11
- package/lib/calendar/DangerCalendar.js +11 -1
- package/lib/calendar/InfoCalendar.js +11 -1
- package/lib/calendar/PrimaryCalendar.js +11 -1
- package/lib/calendar/SuccessCalendar.js +11 -1
- package/lib/calendar/WarningCalendar.js +11 -1
- package/lib/calendar/base/Day.js +13 -2
- package/lib/calendar/base/Month.js +18 -1
- package/lib/calendar/base/Week.js +18 -2
- package/lib/calendar/base/helpers.js +24 -8
- package/lib/calendar/base/index.js +37 -13
- package/lib/calendar/calendar.spec.js +171 -0
- package/lib/calendar/index.d.ts +1 -4
- package/lib/calendar/index.js +8 -0
- package/lib/checkbox/Label.js +7 -1
- package/lib/checkbox/checkbox.spec.js +215 -0
- package/lib/checkbox/index.js +53 -28
- package/lib/checkbox/types.d.ts +2 -2
- package/lib/dialog/Alert.js +8 -0
- package/lib/dialog/Custom.js +17 -5
- package/lib/dialog/Error.js +8 -0
- package/lib/dialog/Information.js +8 -0
- package/lib/dialog/Question.js +15 -4
- package/lib/dialog/Warning.js +8 -0
- package/lib/dialog/base/Content.js +6 -1
- package/lib/dialog/base/Footer.js +4 -0
- package/lib/dialog/base/Header.js +13 -5
- package/lib/dialog/base/index.js +28 -7
- package/lib/dialog/base/style.js +2 -0
- package/lib/dialog/dialog.spec.js +488 -0
- package/lib/dialog/form/index.js +29 -9
- package/lib/dialog/index.d.ts +1 -4
- package/lib/dialog/index.js +9 -0
- package/lib/drawer/Content.d.ts +0 -1
- package/lib/drawer/Content.js +13 -2
- package/lib/drawer/Drawer.d.ts +0 -1
- package/lib/drawer/Drawer.js +55 -22
- package/lib/drawer/Drawer.spec.js +258 -0
- package/lib/drawer/Header.d.ts +0 -1
- package/lib/drawer/Header.js +27 -10
- package/lib/drawer/helpers.d.ts +0 -1
- package/lib/drawer/helpers.js +4 -0
- package/lib/drawer/index.d.ts +0 -1
- package/lib/drawer/index.js +8 -0
- package/lib/drawer/types.d.ts +1 -2
- package/lib/dropdown/Popup.js +32 -19
- package/lib/dropdown/dropdown.spec.js +169 -0
- package/lib/dropdown/helper.js +4 -0
- package/lib/dropdown/withDropdown.js +47 -18
- package/lib/fieldset/fieldset.spec.js +329 -0
- package/lib/fieldset/index.js +46 -21
- package/lib/form/Field.js +42 -16
- package/lib/form/FieldArray.js +32 -15
- package/lib/form/FieldNumber.js +20 -6
- package/lib/form/FieldPeriod.js +21 -9
- package/lib/form/form.spec.js +293 -0
- package/lib/form/helpers.js +30 -5
- package/lib/form/index.js +91 -36
- package/lib/form/types.d.ts +6 -6
- package/lib/form/withFieldHOC.js +34 -15
- package/lib/form/withFormSecurity.js +28 -5
- package/lib/gridlayout/GridCol.js +11 -5
- package/lib/gridlayout/GridRow.js +9 -3
- package/lib/gridlayout/gridLayout.spec.js +169 -0
- package/lib/gridlayout/index.d.ts +1 -4
- package/lib/gridlayout/index.js +4 -0
- package/lib/icons/icons.spec.js +86 -0
- package/lib/icons/index.js +26 -16
- package/lib/icons/types.d.ts +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +10 -0
- package/lib/inputs/base/InputTextBase.js +75 -50
- package/lib/inputs/base/base.spec.js +690 -0
- package/lib/inputs/base/helpers.d.ts +1 -1
- package/lib/inputs/base/helpers.js +40 -7
- package/lib/inputs/base/index.js +1 -0
- package/lib/inputs/base/types.d.ts +1 -0
- package/lib/inputs/color/color_input.spec.js +174 -0
- package/lib/inputs/color/index.js +38 -11
- package/lib/inputs/date/Dialog.js +7 -2
- package/lib/inputs/date/Dropdown.js +8 -1
- package/lib/inputs/date/date.spec.js +354 -0
- package/lib/inputs/date/helpers.js +11 -2
- package/lib/inputs/date/index.js +101 -48
- package/lib/inputs/file/DefaultFile.js +42 -13
- package/lib/inputs/file/DragDropFile.js +90 -37
- package/lib/inputs/file/File.js +25 -4
- package/lib/inputs/file/FileButtonSettings.js +11 -5
- package/lib/inputs/file/helpers.js +5 -0
- package/lib/inputs/file/index.d.ts +1 -4
- package/lib/inputs/file/index.js +6 -0
- package/lib/inputs/file/types.d.ts +1 -1
- package/lib/inputs/inputHOC.d.ts +1 -2
- package/lib/inputs/inputHOC.js +34 -10
- package/lib/inputs/mask/BaseMask.js +17 -1
- package/lib/inputs/mask/Cnpj.js +37 -12
- package/lib/inputs/mask/Cpf.js +33 -10
- package/lib/inputs/mask/Phone.js +6 -0
- package/lib/inputs/mask/ZipCode.js +6 -0
- package/lib/inputs/mask/helpers.d.ts +1 -2
- package/lib/inputs/mask/helpers.js +20 -8
- package/lib/inputs/mask/imaskHOC.d.ts +1 -2
- package/lib/inputs/mask/imaskHOC.js +83 -52
- package/lib/inputs/mask/index.d.ts +1 -4
- package/lib/inputs/mask/index.js +7 -0
- package/lib/inputs/mask/input_mask.spec.js +607 -0
- package/lib/inputs/multiSelect/ActionButtons.js +13 -4
- package/lib/inputs/multiSelect/Dropdown.js +45 -22
- package/lib/inputs/multiSelect/helper.js +4 -2
- package/lib/inputs/multiSelect/index.js +104 -40
- package/lib/inputs/number/BaseNumber.d.ts +1 -2
- package/lib/inputs/number/BaseNumber.js +16 -3
- package/lib/inputs/number/Currency.d.ts +1 -2
- package/lib/inputs/number/Currency.js +7 -1
- package/lib/inputs/number/Decimal.d.ts +1 -2
- package/lib/inputs/number/Decimal.js +5 -0
- package/lib/inputs/number/format_number.js +7 -0
- package/lib/inputs/number/index.d.ts +1 -2
- package/lib/inputs/number/index.js +13 -3
- package/lib/inputs/number/numberfield.spec.js +215 -0
- package/lib/inputs/number/types.d.ts +1 -2
- package/lib/inputs/period/Dialog.js +7 -2
- package/lib/inputs/period/Dropdown.js +7 -0
- package/lib/inputs/period/PeriodList.js +7 -1
- package/lib/inputs/period/helper.js +12 -2
- package/lib/inputs/period/index.js +114 -43
- package/lib/inputs/period/types.d.ts +1 -1
- package/lib/inputs/search/index.d.ts +1 -2
- package/lib/inputs/search/index.js +66 -25
- package/lib/inputs/search/search_input.spec.js +209 -0
- package/lib/inputs/select/ActionButtons.d.ts +1 -2
- package/lib/inputs/select/ActionButtons.js +12 -4
- package/lib/inputs/select/Dropdown.d.ts +1 -2
- package/lib/inputs/select/Dropdown.js +48 -28
- package/lib/inputs/select/helper.d.ts +1 -2
- package/lib/inputs/select/helper.js +25 -9
- package/lib/inputs/select/index.d.ts +1 -1
- package/lib/inputs/select/index.js +18 -3
- package/lib/inputs/select/multiple/Selecteds.d.ts +1 -1
- package/lib/inputs/select/multiple/Selecteds.js +7 -3
- package/lib/inputs/select/multiple/index.d.ts +1 -1
- package/lib/inputs/select/multiple/index.js +96 -37
- package/lib/inputs/select/select.spec.js +395 -0
- package/lib/inputs/select/simple/index.d.ts +1 -1
- package/lib/inputs/select/simple/index.js +118 -54
- package/lib/inputs/select/types.d.ts +7 -2
- package/lib/inputs/text/index.js +5 -1
- package/lib/inputs/text/textfield.spec.js +215 -0
- package/lib/inputs/text/types.d.ts +1 -1
- package/lib/inputs/textarea/index.js +10 -4
- package/lib/inputs/textarea/textarea.spec.js +59 -0
- package/lib/inputs/types.d.ts +3 -9
- package/lib/internals/withTooltip.js +70 -25
- package/lib/labelMessages/index.js +45 -25
- package/lib/labelMessages/labelMessages.spec.js +176 -0
- package/lib/labels/DangerLabel.js +11 -1
- package/lib/labels/DefaultLabel.js +41 -19
- package/lib/labels/InfoLabel.js +11 -1
- package/lib/labels/PrimaryLabel.js +11 -1
- package/lib/labels/SuccessLabel.js +11 -1
- package/lib/labels/WarningLabel.js +11 -1
- package/lib/labels/index.d.ts +1 -4
- package/lib/labels/index.js +10 -0
- package/lib/labels/label.spec.js +162 -0
- package/lib/labels/label_container/index.js +7 -3
- package/lib/list/Header.js +7 -3
- package/lib/list/Item.js +68 -33
- package/lib/list/Separator.js +4 -0
- package/lib/list/helpers.js +4 -0
- package/lib/list/index.js +60 -25
- package/lib/list/list.spec.js +769 -0
- package/lib/list/types.d.ts +1 -1
- package/lib/menus/float/MenuItem.js +26 -9
- package/lib/menus/float/SubMenuContainer.js +17 -5
- package/lib/menus/float/float-menu.spec.js +221 -0
- package/lib/menus/float/helpers.js +4 -0
- package/lib/menus/float/index.js +21 -8
- package/lib/menus/index.d.ts +1 -4
- package/lib/menus/index.js +3 -0
- package/lib/menus/sidenav/ExpandMenu.js +7 -2
- package/lib/menus/sidenav/MenuLink.js +12 -3
- package/lib/menus/sidenav/NavMenuGroup.js +12 -3
- package/lib/menus/sidenav/NavMenuItem.js +56 -27
- package/lib/menus/sidenav/NavSubMenuItem.js +27 -8
- package/lib/menus/sidenav/helpers.js +9 -0
- package/lib/menus/sidenav/index.js +75 -26
- package/lib/menus/sidenav/popup_menu_search/EmptyList.js +7 -2
- package/lib/menus/sidenav/popup_menu_search/index.js +45 -15
- package/lib/menus/sidenav/sidenav.spec.js +379 -0
- package/lib/menus/sidenav/types.d.ts +1 -1
- package/lib/noPermission/index.js +6 -0
- package/lib/panel/Content.d.ts +1 -1
- package/lib/panel/Content.js +22 -7
- package/lib/panel/DangerPanel.d.ts +1 -1
- package/lib/panel/DangerPanel.js +7 -0
- package/lib/panel/Default.d.ts +1 -1
- package/lib/panel/Default.js +44 -20
- package/lib/panel/Header.d.ts +1 -1
- package/lib/panel/Header.js +27 -12
- package/lib/panel/InfoPanel.d.ts +1 -1
- package/lib/panel/InfoPanel.js +7 -0
- package/lib/panel/PrimaryPanel.d.ts +1 -1
- package/lib/panel/PrimaryPanel.js +7 -0
- package/lib/panel/SuccessPanel.d.ts +1 -1
- package/lib/panel/SuccessPanel.js +7 -0
- package/lib/panel/ToolBar.d.ts +1 -1
- package/lib/panel/ToolBar.js +5 -0
- package/lib/panel/WarningPanel.d.ts +1 -1
- package/lib/panel/WarningPanel.js +7 -0
- package/lib/panel/helpers.d.ts +1 -1
- package/lib/panel/helpers.js +10 -2
- package/lib/panel/index.d.ts +2 -5
- package/lib/panel/index.js +11 -0
- package/lib/panel/panel.spec.js +216 -0
- package/lib/panel/types.d.ts +1 -1
- package/lib/permissionValidations.js +15 -3
- package/lib/popover/PopoverText.js +4 -0
- package/lib/popover/PopoverTitle.js +4 -0
- package/lib/popover/index.js +29 -16
- package/lib/popover/popover.spec.js +146 -0
- package/lib/popover/types.d.ts +2 -1
- package/lib/progress/Bar.js +33 -20
- package/lib/progress/index.js +14 -5
- package/lib/progress/progress.spec.js +94 -0
- package/lib/radio/index.js +46 -23
- package/lib/radio/radio.spec.js +189 -0
- package/lib/skeleton/SkeletonContainer.js +9 -3
- package/lib/skeleton/index.js +22 -10
- package/lib/spinner/SpinnerLoading.js +7 -3
- package/lib/spinner/index.js +40 -18
- package/lib/spinner/spinner.spec.js +152 -0
- package/lib/split/Split.js +83 -32
- package/lib/split/SplitSide.js +18 -6
- package/lib/split/helpers.d.ts +1 -1
- package/lib/split/helpers.js +4 -0
- package/lib/split/index.d.ts +1 -4
- package/lib/split/index.js +5 -0
- package/lib/split/split.spec.js +163 -0
- package/lib/table/Body.js +29 -15
- package/lib/table/Header.js +28 -5
- package/lib/table/HeaderColumn.js +21 -10
- package/lib/table/Row.js +28 -18
- package/lib/table/RowColumn.js +29 -12
- package/lib/table/helpers.js +7 -0
- package/lib/table/index.js +62 -32
- package/lib/table/table.spec.js +352 -0
- package/lib/table/types.d.ts +1 -1
- package/lib/tabs/DropdownItems.js +21 -12
- package/lib/tabs/Menu.js +15 -5
- package/lib/tabs/MenuItems.js +33 -23
- package/lib/tabs/Panel.js +39 -14
- package/lib/tabs/index.js +113 -46
- package/lib/tabs/tabHelpers.js +16 -3
- package/lib/tabs/tabs.spec.js +321 -0
- package/lib/toolbar/ButtonBar.js +29 -13
- package/lib/toolbar/LabelBar.js +28 -11
- package/lib/toolbar/Separator.js +4 -0
- package/lib/toolbar/ToolBarGroup.js +6 -2
- package/lib/toolbar/helpers.js +2 -0
- package/lib/toolbar/index.js +23 -7
- package/lib/toolbar/toolbar.spec.js +394 -0
- package/lib/tooltip/index.js +25 -10
- package/lib/tooltip/tooltip.spec.js +215 -0
- package/lib/tooltip/types.d.ts +1 -1
- package/lib/treetable/Body.js +27 -9
- package/lib/treetable/Header.js +11 -1
- package/lib/treetable/Row.js +113 -58
- package/lib/treetable/helpers.js +10 -0
- package/lib/treetable/index.js +11 -0
- package/lib/treeview/Header.js +6 -2
- package/lib/treeview/Node.js +111 -47
- package/lib/treeview/constants.js +4 -0
- package/lib/treeview/index.js +134 -54
- package/lib/treeview/treeview.spec.js +279 -0
- package/lib/treeview/types.d.ts +2 -2
- package/lib/treeview_old/Header.js +6 -1
- package/lib/treeview_old/Node.js +32 -5
- package/lib/treeview_old/index.js +9 -1
- package/lib/{types-90c43ae1.d.ts → types-3c6f1c20.d.ts} +1 -1
- package/lib/uitour/index.js +73 -33
- package/lib/uitour/types.d.ts +1 -1
- package/lib/uitour/uitour.spec.js +176 -0
- package/package.json +1 -1
|
@@ -0,0 +1,354 @@
|
|
|
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
|
+
it('show calendar when click', function () {
|
|
75
|
+
var _render6 = (0, _react2.render)(datePicker()),
|
|
76
|
+
container = _render6.container;
|
|
77
|
+
|
|
78
|
+
var calendarButton = container.querySelector('.calendar-button');
|
|
79
|
+
|
|
80
|
+
_react2.fireEvent.click(calendarButton);
|
|
81
|
+
|
|
82
|
+
expect(document.querySelector('.datepicker-component')).toBeInTheDocument();
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
describe('prop shouldCloseOnSelect', function () {
|
|
86
|
+
it('when false should not close Calendar after date beeing chosed', function () {
|
|
87
|
+
var _render7 = (0, _react2.render)(datePicker({
|
|
88
|
+
shouldCloseOnSelect: false
|
|
89
|
+
})),
|
|
90
|
+
container = _render7.container;
|
|
91
|
+
|
|
92
|
+
var inputContent = container.querySelector('.textinput');
|
|
93
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
94
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
95
|
+
|
|
96
|
+
_react2.fireEvent.focus(inputContent);
|
|
97
|
+
|
|
98
|
+
calendarComponent = document.querySelector('.calendar-component');
|
|
99
|
+
var dayButtons = document.querySelectorAll('.daybutton');
|
|
100
|
+
|
|
101
|
+
_react2.fireEvent.click(dayButtons[0]);
|
|
102
|
+
|
|
103
|
+
expect(calendarComponent).toBeInTheDocument();
|
|
104
|
+
});
|
|
105
|
+
it('when true should close Calendar after date beeing chosed', function () {
|
|
106
|
+
var _render8 = (0, _react2.render)(datePicker({
|
|
107
|
+
shouldCloseOnSelect: true
|
|
108
|
+
})),
|
|
109
|
+
container = _render8.container;
|
|
110
|
+
|
|
111
|
+
var inputContent = container.querySelector('.textinput');
|
|
112
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
113
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
114
|
+
|
|
115
|
+
_react2.fireEvent.focus(inputContent);
|
|
116
|
+
|
|
117
|
+
calendarComponent = document.querySelector('.calendar-component');
|
|
118
|
+
var dayButtons = document.querySelectorAll('.daybutton');
|
|
119
|
+
|
|
120
|
+
_react2.fireEvent.click(dayButtons[0]);
|
|
121
|
+
|
|
122
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
describe('prop openOnFocus', function () {
|
|
126
|
+
it('when false should not open Calendar when input receive focus', function () {
|
|
127
|
+
var _render9 = (0, _react2.render)(datePicker({
|
|
128
|
+
openOnFocus: false
|
|
129
|
+
})),
|
|
130
|
+
container = _render9.container;
|
|
131
|
+
|
|
132
|
+
var inputContent = container.querySelector('.textinput');
|
|
133
|
+
|
|
134
|
+
_react2.fireEvent.focus(inputContent);
|
|
135
|
+
|
|
136
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
137
|
+
expect(calendarComponent).not.toBeInTheDocument();
|
|
138
|
+
});
|
|
139
|
+
it('when true should open Calendar when input receive focus', function () {
|
|
140
|
+
var _render10 = (0, _react2.render)(datePicker({
|
|
141
|
+
openOnFocus: true
|
|
142
|
+
})),
|
|
143
|
+
container = _render10.container;
|
|
144
|
+
|
|
145
|
+
var inputContent = container.querySelector('.textinput');
|
|
146
|
+
|
|
147
|
+
_react2.fireEvent.focus(inputContent);
|
|
148
|
+
|
|
149
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
150
|
+
expect(calendarComponent).toBeInTheDocument();
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
describe('prop showCalendarInDialog', function () {
|
|
154
|
+
it('when true should render Calendar within Dialog', function () {
|
|
155
|
+
var _render11 = (0, _react2.render)(datePicker({
|
|
156
|
+
showCalendarInDialog: true
|
|
157
|
+
})),
|
|
158
|
+
container = _render11.container;
|
|
159
|
+
|
|
160
|
+
var inputContent = container.querySelector('.textinput');
|
|
161
|
+
|
|
162
|
+
_react2.fireEvent.focus(inputContent);
|
|
163
|
+
|
|
164
|
+
var calendarComponent = document.querySelector('.dialog .calendar-component');
|
|
165
|
+
expect(calendarComponent).toBeTruthy();
|
|
166
|
+
});
|
|
167
|
+
it('when false should render Calendar within Dropdown', function () {
|
|
168
|
+
var _render12 = (0, _react2.render)(datePicker({
|
|
169
|
+
showCalendarInDialog: false
|
|
170
|
+
})),
|
|
171
|
+
container = _render12.container;
|
|
172
|
+
|
|
173
|
+
var inputContent = container.querySelector('.textinput');
|
|
174
|
+
|
|
175
|
+
_react2.fireEvent.focus(inputContent);
|
|
176
|
+
|
|
177
|
+
var calendarComponent = document.querySelector('.datepicker-component > .calendar-component');
|
|
178
|
+
expect(calendarComponent).toBeTruthy();
|
|
179
|
+
});
|
|
180
|
+
});
|
|
181
|
+
it('should apply dialogSize', function () {
|
|
182
|
+
var dialogSize = {
|
|
183
|
+
width: '750px',
|
|
184
|
+
height: '600px'
|
|
185
|
+
};
|
|
186
|
+
|
|
187
|
+
var _render13 = (0, _react2.render)(datePicker({
|
|
188
|
+
showCalendarInDialog: true,
|
|
189
|
+
dialogSize: dialogSize
|
|
190
|
+
})),
|
|
191
|
+
container = _render13.container;
|
|
192
|
+
|
|
193
|
+
var inputContent = container.querySelector('.textinput');
|
|
194
|
+
|
|
195
|
+
_react2.fireEvent.focus(inputContent);
|
|
196
|
+
|
|
197
|
+
var dialogWrapper = _react2.screen.getByTestId('dialog-wrapper');
|
|
198
|
+
|
|
199
|
+
expect(dialogWrapper).toHaveStyle(dialogSize);
|
|
200
|
+
});
|
|
201
|
+
describe('prop calendarColorStyle', function () {
|
|
202
|
+
it('when receive "primary" add -primary css class to Calendar', function () {
|
|
203
|
+
var _render14 = (0, _react2.render)(datePicker({
|
|
204
|
+
calendarColorStyle: 'primary'
|
|
205
|
+
})),
|
|
206
|
+
container = _render14.container;
|
|
207
|
+
|
|
208
|
+
var inputContent = container.querySelector('.textinput');
|
|
209
|
+
|
|
210
|
+
_react2.fireEvent.focus(inputContent);
|
|
211
|
+
|
|
212
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
213
|
+
expect(calendarComponent).toHaveClass('-primary');
|
|
214
|
+
});
|
|
215
|
+
it('when receive "success" add -success css class to Calendar', function () {
|
|
216
|
+
var _render15 = (0, _react2.render)(datePicker({
|
|
217
|
+
calendarColorStyle: 'success'
|
|
218
|
+
})),
|
|
219
|
+
container = _render15.container;
|
|
220
|
+
|
|
221
|
+
var inputContent = container.querySelector('.textinput');
|
|
222
|
+
|
|
223
|
+
_react2.fireEvent.focus(inputContent);
|
|
224
|
+
|
|
225
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
226
|
+
expect(calendarComponent).toHaveClass('-success');
|
|
227
|
+
});
|
|
228
|
+
it('when receive "danger" add -danger css class to Calendar', function () {
|
|
229
|
+
var _render16 = (0, _react2.render)(datePicker({
|
|
230
|
+
calendarColorStyle: 'danger'
|
|
231
|
+
})),
|
|
232
|
+
container = _render16.container;
|
|
233
|
+
|
|
234
|
+
var inputContent = container.querySelector('.textinput');
|
|
235
|
+
|
|
236
|
+
_react2.fireEvent.focus(inputContent);
|
|
237
|
+
|
|
238
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
239
|
+
expect(calendarComponent).toHaveClass('-danger');
|
|
240
|
+
});
|
|
241
|
+
it('when receive "info" add -info css class to Calendar', function () {
|
|
242
|
+
var _render17 = (0, _react2.render)(datePicker({
|
|
243
|
+
calendarColorStyle: 'info'
|
|
244
|
+
})),
|
|
245
|
+
container = _render17.container;
|
|
246
|
+
|
|
247
|
+
var inputContent = container.querySelector('.textinput');
|
|
248
|
+
|
|
249
|
+
_react2.fireEvent.focus(inputContent);
|
|
250
|
+
|
|
251
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
252
|
+
expect(calendarComponent).toHaveClass('-info');
|
|
253
|
+
});
|
|
254
|
+
it('when receive "warning" add -warning css class to Calendar', function () {
|
|
255
|
+
var _render18 = (0, _react2.render)(datePicker({
|
|
256
|
+
calendarColorStyle: 'warning'
|
|
257
|
+
})),
|
|
258
|
+
container = _render18.container;
|
|
259
|
+
|
|
260
|
+
var inputContent = container.querySelector('.textinput');
|
|
261
|
+
|
|
262
|
+
_react2.fireEvent.focus(inputContent);
|
|
263
|
+
|
|
264
|
+
var calendarComponent = document.querySelector('.calendar-component');
|
|
265
|
+
expect(calendarComponent).toHaveClass('-warning');
|
|
266
|
+
});
|
|
267
|
+
});
|
|
268
|
+
it('prop required should render span for required field', function () {
|
|
269
|
+
var _render19 = (0, _react2.render)(datePicker({
|
|
270
|
+
label: 'teste',
|
|
271
|
+
required: true
|
|
272
|
+
})),
|
|
273
|
+
container = _render19.container;
|
|
274
|
+
|
|
275
|
+
var requiredLabel = container.querySelector('.input-base-component > .labelcontainer > .label > .-requiredlabel');
|
|
276
|
+
expect(requiredLabel).toBeTruthy();
|
|
277
|
+
expect(requiredLabel).toHaveTextContent('*');
|
|
278
|
+
});
|
|
279
|
+
it('should apply onComplete', function () {
|
|
280
|
+
var onComplete = jest.fn();
|
|
281
|
+
|
|
282
|
+
var _render20 = (0, _react2.render)(datePicker({
|
|
283
|
+
onComplete: onComplete
|
|
284
|
+
})),
|
|
285
|
+
container = _render20.container;
|
|
286
|
+
|
|
287
|
+
var inputContent = container.querySelector('.textinput');
|
|
288
|
+
|
|
289
|
+
_react2.fireEvent.change(inputContent, {
|
|
290
|
+
target: {
|
|
291
|
+
value: (0, _moment.default)()
|
|
292
|
+
}
|
|
293
|
+
});
|
|
294
|
+
|
|
295
|
+
expect(onComplete).toBeCalled();
|
|
296
|
+
});
|
|
297
|
+
it('should apply onBlur', function () {
|
|
298
|
+
var onBlur = jest.fn();
|
|
299
|
+
|
|
300
|
+
var _render21 = (0, _react2.render)(datePicker({
|
|
301
|
+
onBlur: onBlur
|
|
302
|
+
})),
|
|
303
|
+
container = _render21.container;
|
|
304
|
+
|
|
305
|
+
var inputContent = container.querySelector('.textinput');
|
|
306
|
+
|
|
307
|
+
_react2.fireEvent.blur(inputContent);
|
|
308
|
+
|
|
309
|
+
expect(onBlur).toBeCalled();
|
|
310
|
+
});
|
|
311
|
+
it('should apply onFocus', function () {
|
|
312
|
+
var onFocus = jest.fn();
|
|
313
|
+
|
|
314
|
+
var _render22 = (0, _react2.render)(datePicker({
|
|
315
|
+
onFocus: onFocus
|
|
316
|
+
})),
|
|
317
|
+
container = _render22.container;
|
|
318
|
+
|
|
319
|
+
var inputContent = container.querySelector('.textinput');
|
|
320
|
+
|
|
321
|
+
_react2.fireEvent.focus(inputContent);
|
|
322
|
+
|
|
323
|
+
expect(onFocus).toBeCalled();
|
|
324
|
+
});
|
|
325
|
+
it('should apply onChange', function () {
|
|
326
|
+
var onChange = jest.fn();
|
|
327
|
+
|
|
328
|
+
var _render23 = (0, _react2.render)(datePicker({
|
|
329
|
+
onChange: onChange
|
|
330
|
+
})),
|
|
331
|
+
container = _render23.container;
|
|
332
|
+
|
|
333
|
+
var inputContent = container.querySelector('.textinput');
|
|
334
|
+
|
|
335
|
+
_react2.fireEvent.change(inputContent, {
|
|
336
|
+
target: {
|
|
337
|
+
value: (0, _moment.default)()
|
|
338
|
+
}
|
|
339
|
+
});
|
|
340
|
+
|
|
341
|
+
expect(onChange).toBeCalled();
|
|
342
|
+
});
|
|
343
|
+
it('should apply name', function () {
|
|
344
|
+
var name = 'sus';
|
|
345
|
+
|
|
346
|
+
var _render24 = (0, _react2.render)(datePicker({
|
|
347
|
+
name: name
|
|
348
|
+
})),
|
|
349
|
+
container = _render24.container;
|
|
350
|
+
|
|
351
|
+
var inputContent = container.querySelector('.textinput');
|
|
352
|
+
expect(inputContent.name).toBe(name);
|
|
353
|
+
});
|
|
354
|
+
});
|
|
@@ -4,24 +4,33 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.getMomentValue = exports.getCalendarDropdownStyle = exports.PT_BR_FORMAT = exports.EN_US_FORMAT = void 0;
|
|
7
|
+
|
|
7
8
|
var _moment = _interopRequireDefault(require("moment"));
|
|
9
|
+
|
|
8
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
9
12
|
var PT_BR_FORMAT = 'DD/MM/YYYY';
|
|
10
13
|
exports.PT_BR_FORMAT = PT_BR_FORMAT;
|
|
11
14
|
var EN_US_FORMAT = 'YYYY-MM-DD';
|
|
12
15
|
exports.EN_US_FORMAT = EN_US_FORMAT;
|
|
16
|
+
|
|
13
17
|
var getCalendarDropdownStyle = function getCalendarDropdownStyle(_ref) {
|
|
14
18
|
var topPosition = _ref.topPosition,
|
|
15
|
-
|
|
16
|
-
|
|
19
|
+
leftPosition = _ref.leftPosition,
|
|
20
|
+
width = _ref.width;
|
|
17
21
|
return "top: ".concat(topPosition, "px;\n left: ").concat(leftPosition, "px;\n width:").concat(width, "px");
|
|
18
22
|
};
|
|
23
|
+
|
|
19
24
|
exports.getCalendarDropdownStyle = getCalendarDropdownStyle;
|
|
25
|
+
|
|
20
26
|
var getMomentValue = function getMomentValue(value) {
|
|
21
27
|
var newValue = value;
|
|
28
|
+
|
|
22
29
|
if ((0, _moment.default)(newValue, PT_BR_FORMAT).isValid()) {
|
|
23
30
|
newValue = (0, _moment.default)(newValue, PT_BR_FORMAT).format(EN_US_FORMAT);
|
|
24
31
|
}
|
|
32
|
+
|
|
25
33
|
return typeof newValue === 'string' ? (0, _moment.default)(newValue, EN_US_FORMAT) : newValue;
|
|
26
34
|
};
|
|
35
|
+
|
|
27
36
|
exports.getMomentValue = getMomentValue;
|
package/lib/inputs/date/index.js
CHANGED
|
@@ -1,127 +1,172 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
9
12
|
var _moment = _interopRequireDefault(require("moment"));
|
|
13
|
+
|
|
10
14
|
var _BaseMask = _interopRequireDefault(require("../mask/BaseMask"));
|
|
15
|
+
|
|
11
16
|
var _Dropdown = _interopRequireDefault(require("./Dropdown"));
|
|
17
|
+
|
|
12
18
|
var _calendar = _interopRequireDefault(require("../../calendar"));
|
|
19
|
+
|
|
13
20
|
require("../../assets/styles/datepicker.scss");
|
|
21
|
+
|
|
14
22
|
var contants = _interopRequireWildcard(require("../../internals/constants"));
|
|
23
|
+
|
|
15
24
|
var _buttons = _interopRequireDefault(require("../../buttons"));
|
|
25
|
+
|
|
16
26
|
var _icons = _interopRequireDefault(require("../../icons"));
|
|
27
|
+
|
|
17
28
|
var _Dialog = _interopRequireDefault(require("./Dialog"));
|
|
29
|
+
|
|
18
30
|
var _helpers = require("./helpers");
|
|
31
|
+
|
|
19
32
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
|
+
|
|
20
34
|
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); }
|
|
35
|
+
|
|
21
36
|
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; }
|
|
37
|
+
|
|
22
38
|
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); }
|
|
39
|
+
|
|
23
40
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
41
|
+
|
|
24
42
|
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."); }
|
|
43
|
+
|
|
25
44
|
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); }
|
|
26
|
-
|
|
27
|
-
function
|
|
45
|
+
|
|
46
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
47
|
+
|
|
48
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
49
|
+
|
|
28
50
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
51
|
+
|
|
29
52
|
var CALENDAR_BUTTON_WIDTH = 24;
|
|
53
|
+
|
|
30
54
|
var DatePicker = function DatePicker(props) {
|
|
31
55
|
var _props$showButtonOpen = props.showButtonOpen,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
56
|
+
showButtonOpen = _props$showButtonOpen === void 0 ? true : _props$showButtonOpen,
|
|
57
|
+
_props$openOnFocus = props.openOnFocus,
|
|
58
|
+
openOnFocus = _props$openOnFocus === void 0 ? true : _props$openOnFocus,
|
|
59
|
+
_props$shouldCloseOnS = props.shouldCloseOnSelect,
|
|
60
|
+
shouldCloseOnSelect = _props$shouldCloseOnS === void 0 ? true : _props$shouldCloseOnS,
|
|
61
|
+
_props$setFocusOnSele = props.setFocusOnSelect,
|
|
62
|
+
setFocusOnSelect = _props$setFocusOnSele === void 0 ? true : _props$setFocusOnSele,
|
|
63
|
+
_props$showCalendarIn = props.showCalendarInDialog,
|
|
64
|
+
showCalendarInDialog = _props$showCalendarIn === void 0 ? false : _props$showCalendarIn,
|
|
65
|
+
_props$required = props.required,
|
|
66
|
+
required = _props$required === void 0 ? false : _props$required,
|
|
67
|
+
_props$value = props.value,
|
|
68
|
+
value = _props$value === void 0 ? '' : _props$value,
|
|
69
|
+
_props$name = props.name,
|
|
70
|
+
name = _props$name === void 0 ? '' : _props$name,
|
|
71
|
+
_props$dialogSize = props.dialogSize,
|
|
72
|
+
dialogSize = _props$dialogSize === void 0 ? {
|
|
73
|
+
width: '350px',
|
|
74
|
+
height: '350px'
|
|
75
|
+
} : _props$dialogSize;
|
|
76
|
+
|
|
52
77
|
var _useState = (0, _react.useState)(value ? (0, _helpers.getMomentValue)(value) : undefined),
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
78
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
79
|
+
valueState = _useState2[0],
|
|
80
|
+
setValueState = _useState2[1];
|
|
81
|
+
|
|
56
82
|
var _useState3 = (0, _react.useState)(value),
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
83
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
84
|
+
valueFromProps = _useState4[0],
|
|
85
|
+
setValueFromProps = _useState4[1];
|
|
86
|
+
|
|
60
87
|
var _useState5 = (0, _react.useState)(false),
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
88
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
89
|
+
showCalendar = _useState6[0],
|
|
90
|
+
setShowCalendar = _useState6[1];
|
|
91
|
+
|
|
64
92
|
var _useState7 = (0, _react.useState)(),
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
93
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
94
|
+
inputDimensions = _useState8[0],
|
|
95
|
+
setInputDimensions = _useState8[1];
|
|
96
|
+
|
|
68
97
|
var _useState9 = (0, _react.useState)({
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
98
|
+
disabled: false,
|
|
99
|
+
readOnly: false,
|
|
100
|
+
unvisible: false,
|
|
101
|
+
hideContent: false
|
|
102
|
+
}),
|
|
103
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
104
|
+
onDenied = _useState10[0],
|
|
105
|
+
setOnDenied = _useState10[1];
|
|
106
|
+
|
|
77
107
|
var _inputRef = (0, _react.useRef)();
|
|
108
|
+
|
|
78
109
|
var buttonOpenRef = (0, _react.useRef)();
|
|
79
110
|
var dropdownContainer = (0, _react.useRef)();
|
|
111
|
+
|
|
80
112
|
var _useState11 = (0, _react.useState)(false),
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
113
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
114
|
+
insideDropdown = _useState12[0],
|
|
115
|
+
setInsideDropdown = _useState12[1];
|
|
116
|
+
|
|
84
117
|
var onScreenResize = function onScreenResize() {
|
|
85
118
|
var _inputRef$current;
|
|
119
|
+
|
|
86
120
|
setInputDimensions(_inputRef === null || _inputRef === void 0 ? void 0 : (_inputRef$current = _inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.getBoundingClientRect());
|
|
87
121
|
};
|
|
122
|
+
|
|
88
123
|
var onClickOutside = function onClickOutside(event) {
|
|
89
124
|
var _buttonOpenRef$curren;
|
|
125
|
+
|
|
90
126
|
var target = event.target;
|
|
91
127
|
if (!dropdownContainer || target === _inputRef.current || target === buttonOpenRef.current) return;
|
|
128
|
+
|
|
92
129
|
if (target !== dropdownContainer.current && dropdownContainer && dropdownContainer.current && !dropdownContainer.current.contains(target) && buttonOpenRef && !(buttonOpenRef !== null && buttonOpenRef !== void 0 && (_buttonOpenRef$curren = buttonOpenRef.current) !== null && _buttonOpenRef$curren !== void 0 && _buttonOpenRef$curren.contains(target))) {
|
|
93
130
|
setShowCalendar(false);
|
|
94
131
|
}
|
|
95
132
|
};
|
|
133
|
+
|
|
96
134
|
var openCalendar = function openCalendar() {
|
|
97
135
|
setShowCalendar(true);
|
|
136
|
+
|
|
98
137
|
if (_inputRef.current) {
|
|
99
138
|
setInputDimensions(_inputRef.current.getBoundingClientRect());
|
|
100
139
|
}
|
|
101
140
|
};
|
|
141
|
+
|
|
102
142
|
var onMouseMove = function onMouseMove(event) {
|
|
103
143
|
var target = event.target;
|
|
104
144
|
setInsideDropdown(false);
|
|
145
|
+
|
|
105
146
|
if (dropdownContainer !== undefined && dropdownContainer.current) {
|
|
106
147
|
if (target === dropdownContainer.current || dropdownContainer.current.contains(target)) {
|
|
107
148
|
setInsideDropdown(true);
|
|
108
149
|
}
|
|
109
150
|
}
|
|
110
151
|
};
|
|
152
|
+
|
|
111
153
|
var onInputFocus = function onInputFocus(e) {
|
|
112
154
|
if (props.onFocus) props.onFocus(e);
|
|
113
155
|
if (openOnFocus) openCalendar();
|
|
114
156
|
};
|
|
157
|
+
|
|
115
158
|
var onInputBlur = function onInputBlur(e) {
|
|
116
159
|
if (props.onBlur) props.onBlur(e);
|
|
117
160
|
if (!insideDropdown) setShowCalendar(false);
|
|
118
161
|
};
|
|
162
|
+
|
|
119
163
|
var onInputKeyDown = function onInputKeyDown(event) {
|
|
120
164
|
if (Number(event.code) === contants.keyCodes.TAB) {
|
|
121
165
|
setInsideDropdown(false);
|
|
122
166
|
setShowCalendar(false);
|
|
123
167
|
}
|
|
124
168
|
};
|
|
169
|
+
|
|
125
170
|
var onInputChange = function onInputChange(event, valueInput) {
|
|
126
171
|
if (props.onChange && event) {
|
|
127
172
|
if ((0, _moment.default)(valueInput, _helpers.PT_BR_FORMAT, true).isValid()) {
|
|
@@ -146,8 +191,10 @@ var DatePicker = function DatePicker(props) {
|
|
|
146
191
|
}
|
|
147
192
|
}
|
|
148
193
|
};
|
|
194
|
+
|
|
149
195
|
var setValue = function setValue(valueParam, e) {
|
|
150
196
|
var _inputRef$current2;
|
|
197
|
+
|
|
151
198
|
if (showCalendar && setFocusOnSelect) (_inputRef$current2 = _inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus();
|
|
152
199
|
if (props.onComplete) props.onComplete(e, valueParam);
|
|
153
200
|
if (props.onChange) onInputChange({
|
|
@@ -159,9 +206,11 @@ var DatePicker = function DatePicker(props) {
|
|
|
159
206
|
if (shouldCloseOnSelect) setShowCalendar(false);
|
|
160
207
|
setValueState((0, _moment.default)(valueParam, _helpers.PT_BR_FORMAT));
|
|
161
208
|
};
|
|
209
|
+
|
|
162
210
|
var shouldDisable = function shouldDisable() {
|
|
163
211
|
return props.disabled || onDenied && (onDenied.disabled || onDenied.hideContent);
|
|
164
212
|
};
|
|
213
|
+
|
|
165
214
|
var getButtonOpen = function getButtonOpen() {
|
|
166
215
|
if (!showButtonOpen) return undefined;
|
|
167
216
|
return /*#__PURE__*/_react.default.createElement(_buttons.default, {
|
|
@@ -182,6 +231,7 @@ var DatePicker = function DatePicker(props) {
|
|
|
182
231
|
disabled: shouldDisable()
|
|
183
232
|
});
|
|
184
233
|
};
|
|
234
|
+
|
|
185
235
|
var getCalendar = function getCalendar(valueCalendar, calendarColorStyle) {
|
|
186
236
|
return /*#__PURE__*/_react.default.createElement(_calendar.default, {
|
|
187
237
|
currentDate: valueCalendar !== undefined ? valueCalendar : (0, _moment.default)(),
|
|
@@ -191,8 +241,10 @@ var DatePicker = function DatePicker(props) {
|
|
|
191
241
|
colorStyle: calendarColorStyle
|
|
192
242
|
});
|
|
193
243
|
};
|
|
244
|
+
|
|
194
245
|
var getWrapperComponent = function getWrapperComponent() {
|
|
195
246
|
if (onDenied && onDenied.readOnly) return null;
|
|
247
|
+
|
|
196
248
|
if (showCalendarInDialog) {
|
|
197
249
|
return /*#__PURE__*/_react.default.createElement(_Dialog.default, {
|
|
198
250
|
dialogSize: dialogSize,
|
|
@@ -201,6 +253,7 @@ var DatePicker = function DatePicker(props) {
|
|
|
201
253
|
}
|
|
202
254
|
}, getCalendar(valueState, props === null || props === void 0 ? void 0 : props.calendarColorStyle));
|
|
203
255
|
}
|
|
256
|
+
|
|
204
257
|
return /*#__PURE__*/_react.default.createElement(_Dropdown.default, {
|
|
205
258
|
topPosition: inputDimensions ? inputDimensions.top + inputDimensions.height + 5 : '',
|
|
206
259
|
leftPosition: inputDimensions ? inputDimensions.left : '',
|
|
@@ -210,6 +263,7 @@ var DatePicker = function DatePicker(props) {
|
|
|
210
263
|
}
|
|
211
264
|
}, getCalendar(valueState, props === null || props === void 0 ? void 0 : props.calendarColorStyle));
|
|
212
265
|
};
|
|
266
|
+
|
|
213
267
|
if (onDenied && onDenied.unvisible) return null;
|
|
214
268
|
(0, _react.useEffect)(function () {
|
|
215
269
|
window.addEventListener('resize', onScreenResize);
|
|
@@ -220,9 +274,7 @@ var DatePicker = function DatePicker(props) {
|
|
|
220
274
|
window.removeEventListener('resize', onScreenResize);
|
|
221
275
|
document.removeEventListener('click', onClickOutside);
|
|
222
276
|
document.removeEventListener('mousemove', onMouseMove);
|
|
223
|
-
};
|
|
224
|
-
|
|
225
|
-
// TODO: Procurar solução melhor.
|
|
277
|
+
}; // TODO: Procurar solução melhor.
|
|
226
278
|
// setTimeout(() => { this.onScreenResize(); }, 300);
|
|
227
279
|
}, [_inputRef.current]);
|
|
228
280
|
(0, _react.useEffect)(function () {
|
|
@@ -263,5 +315,6 @@ var DatePicker = function DatePicker(props) {
|
|
|
263
315
|
}
|
|
264
316
|
})), showCalendar && getWrapperComponent());
|
|
265
317
|
};
|
|
318
|
+
|
|
266
319
|
var _default = DatePicker;
|
|
267
320
|
exports.default = _default;
|