linear-react-components-ui 0.4.77-beta.26 → 0.4.77-beta.28
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 +3 -76
- package/.husky/pre-commit +4 -0
- package/.vscode/settings.json +2 -2
- package/jest.config.js +3 -3
- package/lib/alerts/AlertContainer.js +19 -14
- package/lib/alerts/AlertProvider.js +9 -4
- package/lib/alerts/BaseAlert.js +8 -5
- package/lib/alerts/Message.js +40 -31
- package/lib/alerts/alert.spec.js +55 -32
- package/lib/alerts/helpers.js +5 -2
- package/lib/alerts/withAlert.js +2 -2
- package/lib/assets/styles/commons.scss +10 -0
- package/lib/assets/styles/dropdown.scss +36 -2
- package/lib/assets/styles/effects.scss +11 -0
- package/lib/assets/styles/list.scss +8 -0
- package/lib/assets/styles/table.scss +2 -7
- package/lib/avatar/avatar.spec.js +74 -42
- package/lib/avatar/index.js +58 -13
- package/lib/badge/badge.spec.js +52 -30
- package/lib/badge/index.js +22 -6
- package/lib/buttons/ActivateButton.js +3 -3
- package/lib/buttons/AddButton.js +1 -1
- package/lib/buttons/Button.js +11 -19
- package/lib/buttons/ButtonGroups.js +5 -0
- package/lib/buttons/CancelButton.js +3 -16
- package/lib/buttons/DangerButton.js +19 -14
- package/lib/buttons/DefaultButton.js +127 -65
- package/lib/buttons/DestroyButton.js +3 -12
- package/lib/buttons/EditButton.js +3 -3
- package/lib/buttons/InactivateButton.js +3 -3
- package/lib/buttons/InfoButton.js +19 -14
- package/lib/buttons/PrimaryButton.js +19 -14
- package/lib/buttons/RestoreButton.js +3 -3
- package/lib/buttons/SaveButton.js +2 -15
- package/lib/buttons/SpinnerLoading.js +41 -41
- package/lib/buttons/SuccessButton.js +18 -13
- package/lib/buttons/WarningButton.js +18 -13
- package/lib/buttons/button_container/index.js +18 -5
- package/lib/buttons/buttons.spec.js +210 -136
- package/lib/buttons/index.js +28 -28
- package/lib/buttons/split_button/index.js +30 -13
- package/lib/calendar/DangerCalendar.js +2 -11
- package/lib/calendar/InfoCalendar.js +2 -11
- package/lib/calendar/PrimaryCalendar.js +2 -11
- package/lib/calendar/SuccessCalendar.js +2 -11
- package/lib/calendar/WarningCalendar.js +2 -11
- package/lib/calendar/base/Day.js +8 -2
- package/lib/calendar/base/Month.js +5 -0
- package/lib/calendar/base/Week.js +6 -0
- package/lib/calendar/base/helpers.js +9 -9
- package/lib/calendar/base/index.js +36 -33
- package/lib/calendar/calendar.spec.js +63 -32
- package/lib/calendar/index.js +10 -10
- package/lib/checkbox/Label.js +12 -2
- package/lib/checkbox/checkbox.spec.js +78 -37
- package/lib/checkbox/index.js +79 -42
- package/lib/dialog/Alert.js +8 -3
- package/lib/dialog/Custom.js +25 -17
- package/lib/dialog/Error.js +6 -1
- package/lib/dialog/Information.js +6 -1
- package/lib/dialog/Question.js +17 -6
- package/lib/dialog/Warning.js +6 -1
- package/lib/dialog/base/Content.js +9 -0
- package/lib/dialog/base/Footer.js +8 -2
- package/lib/dialog/base/Header.js +22 -8
- package/lib/dialog/base/index.js +28 -6
- package/lib/dialog/dialog.spec.js +153 -79
- package/lib/dialog/form/index.js +32 -22
- package/lib/dialog/index.js +6 -6
- package/lib/drawer/Content.js +10 -1
- package/lib/drawer/Drawer.js +50 -29
- package/lib/drawer/Drawer.spec.js +95 -52
- package/lib/drawer/Header.js +31 -12
- package/lib/drawer/helpers.js +1 -1
- package/lib/drawer/index.js +4 -4
- package/lib/dropdown/Popup.js +16 -32
- package/lib/dropdown/dropdown.spec.js +58 -34
- package/lib/dropdown/helper.js +2 -2
- package/lib/dropdown/withDropdown.js +43 -18
- package/lib/fieldset/fieldset.spec.js +123 -77
- package/lib/fieldset/index.js +43 -12
- package/lib/form/Field.js +41 -14
- package/lib/form/FieldArray.js +50 -20
- package/lib/form/FieldNumber.js +44 -12
- package/lib/form/FieldPeriod.js +41 -19
- package/lib/form/form.spec.js +90 -48
- package/lib/form/helpers.js +16 -10
- package/lib/form/index.js +92 -57
- package/lib/form/withFieldHOC.js +120 -40
- package/lib/form/withFormSecurity.js +38 -17
- package/lib/gridlayout/GridCol.js +18 -3
- package/lib/gridlayout/GridRow.js +24 -4
- package/lib/gridlayout/gridLayout.spec.js +70 -43
- package/lib/icons/helper.js +571 -560
- package/lib/icons/icons.spec.js +36 -20
- package/lib/icons/index.js +40 -23
- package/lib/index.js +12 -12
- package/lib/inputs/base/InputTextBase.js +149 -40
- package/lib/inputs/base/base.spec.js +289 -174
- package/lib/inputs/base/helpers.js +4 -4
- package/lib/inputs/color/color_input.spec.js +67 -33
- package/lib/inputs/color/index.js +29 -31
- package/lib/inputs/date/Dialog.js +8 -1
- package/lib/inputs/date/Dropdown.js +70 -18
- package/lib/inputs/date/date.spec.js +156 -75
- package/lib/inputs/date/helpers.js +1 -1
- package/lib/inputs/date/index.js +411 -255
- package/lib/inputs/inputHOC.js +96 -44
- package/lib/inputs/mask/BaseMask.js +45 -16
- package/lib/inputs/mask/Cnpj.js +19 -12
- package/lib/inputs/mask/Cpf.js +22 -14
- package/lib/inputs/mask/Phone.js +9 -1
- package/lib/inputs/mask/ZipCode.js +1 -1
- package/lib/inputs/mask/helpers.js +36 -21
- package/lib/inputs/mask/imaskHOC.js +255 -186
- package/lib/inputs/mask/index.js +4 -4
- package/lib/inputs/mask/input_mask.spec.js +290 -177
- package/lib/inputs/multiSelect/ActionButtons.js +14 -2
- package/lib/inputs/multiSelect/Dropdown.js +70 -43
- package/lib/inputs/multiSelect/index.js +80 -64
- package/lib/inputs/number/BaseNumber.js +62 -27
- package/lib/inputs/number/Currency.js +14 -4
- package/lib/inputs/number/format_number.js +1 -1
- package/lib/inputs/number/index.js +15 -9
- package/lib/inputs/number/numberfield.spec.js +83 -42
- package/lib/inputs/period/Dialog.js +8 -1
- package/lib/inputs/period/Dropdown.js +70 -16
- package/lib/inputs/period/PeriodList.js +19 -6
- package/lib/inputs/period/helper.js +71 -30
- package/lib/inputs/period/index.js +160 -112
- package/lib/inputs/search/index.js +261 -129
- package/lib/inputs/search/search_input.spec.js +86 -46
- package/lib/inputs/select/ActionButtons.js +20 -14
- package/lib/inputs/select/Dropdown.js +63 -30
- package/lib/inputs/select/helper.js +16 -18
- package/lib/inputs/select/index.js +13 -14
- package/lib/inputs/select/multiple/Selecteds.js +13 -5
- package/lib/inputs/select/multiple/index.js +414 -289
- package/lib/inputs/select/select.spec.js +182 -127
- package/lib/inputs/select/simple/index.js +462 -305
- package/lib/inputs/select/types.d.ts +4 -0
- package/lib/inputs/text/index.js +0 -1
- package/lib/inputs/text/textfield.spec.js +83 -42
- package/lib/inputs/textarea/index.js +15 -5
- package/lib/inputs/textarea/textarea.spec.js +27 -14
- package/lib/internals/constants.js +1 -1
- package/lib/internals/withTooltip.js +34 -26
- package/lib/labelMessages/index.js +45 -27
- package/lib/labelMessages/labelMessages.spec.js +61 -28
- package/lib/labels/DangerLabel.js +4 -13
- package/lib/labels/DefaultLabel.js +57 -25
- package/lib/labels/InfoLabel.js +4 -13
- package/lib/labels/PrimaryLabel.js +4 -13
- package/lib/labels/SuccessLabel.js +4 -13
- package/lib/labels/WarningLabel.js +4 -13
- package/lib/labels/index.js +10 -10
- package/lib/labels/label.spec.js +68 -41
- package/lib/labels/label_container/index.js +12 -2
- package/lib/list/Header.js +13 -0
- package/lib/list/Item.js +65 -27
- package/lib/list/helpers.js +2 -2
- package/lib/list/index.js +51 -31
- package/lib/list/list.spec.js +358 -211
- package/lib/menus/float/MenuItem.js +42 -10
- package/lib/menus/float/SubMenuContainer.js +95 -0
- package/lib/menus/float/float-menu.spec.js +61 -27
- package/lib/menus/float/helpers.js +1 -1
- package/lib/menus/float/index.js +39 -9
- package/lib/menus/sidenav/ExpandMenu.js +13 -1
- package/lib/menus/sidenav/MenuLink.js +14 -0
- package/lib/menus/sidenav/NavMenuGroup.js +12 -1
- package/lib/menus/sidenav/NavMenuItem.js +45 -19
- package/lib/menus/sidenav/NavSubMenuItem.js +15 -4
- package/lib/menus/sidenav/helpers.js +3 -3
- package/lib/menus/sidenav/index.js +60 -30
- package/lib/menus/sidenav/popup_menu_search/EmptyList.js +11 -2
- package/lib/menus/sidenav/popup_menu_search/index.js +11 -14
- package/lib/menus/sidenav/sidenav.spec.js +78 -29
- package/lib/panel/Content.js +18 -6
- package/lib/panel/DangerPanel.js +1 -1
- package/lib/panel/Default.js +45 -18
- package/lib/panel/Header.js +29 -7
- package/lib/panel/InfoPanel.js +1 -1
- package/lib/panel/PrimaryPanel.js +1 -1
- package/lib/panel/SuccessPanel.js +1 -1
- package/lib/panel/ToolBar.js +5 -0
- package/lib/panel/WarningPanel.js +1 -1
- package/lib/panel/helpers.js +3 -7
- package/lib/panel/index.js +14 -14
- package/lib/panel/panel.spec.js +106 -69
- package/lib/permissionValidations.js +12 -14
- package/lib/popover/PopoverText.js +5 -0
- package/lib/popover/PopoverTitle.js +5 -0
- package/lib/popover/index.js +40 -26
- package/lib/popover/popover.spec.js +70 -40
- package/lib/progress/Bar.js +47 -37
- package/lib/progress/index.js +18 -8
- package/lib/progress/progress.spec.js +48 -32
- package/lib/radio/index.js +46 -22
- package/lib/radio/radio.spec.js +68 -41
- package/lib/skeleton/SkeletonContainer.js +13 -0
- package/lib/skeleton/index.js +26 -7
- package/lib/spinner/SpinnerLoading.js +12 -4
- package/lib/spinner/index.js +29 -24
- package/lib/spinner/spinner.spec.js +65 -43
- package/lib/split/Split.js +62 -45
- package/lib/split/SplitSide.js +21 -1
- package/lib/split/helpers.js +1 -1
- package/lib/split/split.spec.js +76 -51
- package/lib/table/Body.js +16 -9
- package/lib/table/Header.js +19 -40
- package/lib/table/HeaderColumn.js +20 -6
- package/lib/table/Row.js +28 -7
- package/lib/table/RowColumn.js +30 -12
- package/lib/table/helpers.js +3 -3
- package/lib/table/index.js +53 -15
- package/lib/table/table.spec.js +149 -94
- package/lib/tabs/DropdownItems.js +53 -39
- package/lib/tabs/Menu.js +20 -16
- package/lib/tabs/MenuItems.js +39 -25
- package/lib/tabs/Panel.js +51 -18
- package/lib/tabs/index.js +75 -81
- package/lib/tabs/tabHelpers.js +8 -10
- package/lib/tabs/tabs.spec.js +158 -95
- package/lib/toolbar/ButtonBar.js +13 -32
- package/lib/toolbar/LabelBar.js +18 -31
- package/lib/toolbar/ToolBarGroup.js +12 -6
- package/lib/toolbar/helpers.js +1 -1
- package/lib/toolbar/index.js +33 -25
- package/lib/toolbar/toolbar.spec.js +182 -134
- package/lib/tooltip/index.js +34 -25
- package/lib/tooltip/tooltip.spec.js +51 -24
- package/lib/treeview/Header.js +12 -0
- package/lib/treeview/Node.js +387 -261
- package/lib/treeview/constants.js +2 -1
- package/lib/treeview/index.js +548 -363
- package/lib/treeview/treeview.spec.js +86 -49
- package/lib/treeview_old/Node.js +6 -6
- package/lib/uitour/helpers.js +1 -1
- package/lib/uitour/index.js +32 -15
- package/lib/uitour/uitour.spec.js +77 -55
- package/package.json +16 -40
- package/.husky/pre-push +0 -4
- package/babel.config.json +0 -11
- package/dist/main.js +0 -14
- package/lib/assets/styles/treetable.scss +0 -100
- package/lib/treetable/Body.js +0 -46
- package/lib/treetable/Header.js +0 -27
- package/lib/treetable/Row.js +0 -261
- package/lib/treetable/helpers.js +0 -41
- package/lib/treetable/index.js +0 -24
- package/lib/treetable/types.d.js +0 -5
- package/tsconfig.json +0 -32
- package/tsup.config.ts +0 -10
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
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
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -11,7 +11,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _moment = _interopRequireDefault(require("moment"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
15
|
|
|
16
16
|
var _BaseMask = _interopRequireDefault(require("../mask/BaseMask"));
|
|
17
17
|
|
|
@@ -25,6 +25,10 @@ var _icons = _interopRequireDefault(require("../../icons"));
|
|
|
25
25
|
|
|
26
26
|
var _Dialog = _interopRequireDefault(require("./Dialog"));
|
|
27
27
|
|
|
28
|
+
var _colorStyles = _interopRequireDefault(require("../../internals/colorStyles"));
|
|
29
|
+
|
|
30
|
+
var _PeriodList = _interopRequireDefault(require("./PeriodList"));
|
|
31
|
+
|
|
28
32
|
var helperBase = _interopRequireWildcard(require("../base/helpers"));
|
|
29
33
|
|
|
30
34
|
require("../../assets/styles/periodpicker.scss");
|
|
@@ -35,7 +39,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
35
39
|
|
|
36
40
|
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
41
|
|
|
38
|
-
function _extends() { _extends = Object.assign
|
|
42
|
+
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); }
|
|
39
43
|
|
|
40
44
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
41
45
|
|
|
@@ -45,38 +49,33 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
45
49
|
|
|
46
50
|
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
51
|
|
|
48
|
-
function _iterableToArrayLimit(arr, i) { var _i = arr
|
|
52
|
+
function _iterableToArrayLimit(arr, i) { var _i = arr && (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
53
|
|
|
50
54
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
51
55
|
|
|
52
|
-
|
|
53
|
-
var
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
_props$shouldCloseOnS = props.shouldCloseOnSelect,
|
|
60
|
-
shouldCloseOnSelect = _props$shouldCloseOnS === void 0 ? true : _props$shouldCloseOnS,
|
|
61
|
-
_props$showCalendarIn = props.showCalendarInDialog,
|
|
62
|
-
showCalendarInDialog = _props$showCalendarIn === void 0 ? false : _props$showCalendarIn,
|
|
63
|
-
_props$dialogSize = props.dialogSize,
|
|
64
|
-
dialogSize = _props$dialogSize === void 0 ? {
|
|
65
|
-
width: '350px',
|
|
66
|
-
height: '350px'
|
|
67
|
-
} : _props$dialogSize,
|
|
68
|
-
calendarColorStyle = props.calendarColorStyle;
|
|
56
|
+
function usePrevious(value) {
|
|
57
|
+
var ref = (0, _react.useRef)();
|
|
58
|
+
(0, _react.useEffect)(function () {
|
|
59
|
+
ref.current = value;
|
|
60
|
+
});
|
|
61
|
+
return ref.current;
|
|
62
|
+
}
|
|
69
63
|
|
|
70
|
-
|
|
64
|
+
var PeriodPicker = function PeriodPicker(props) {
|
|
65
|
+
var _useState = (0, _react.useState)(props.value && props.value.initial ? (0, _moment.default)(props.value.initial) : undefined),
|
|
71
66
|
_useState2 = _slicedToArray(_useState, 2),
|
|
72
67
|
valueInitial = _useState2[0],
|
|
73
68
|
setValueInitial = _useState2[1];
|
|
74
69
|
|
|
75
|
-
var _useState3 = (0, _react.useState)(props.value && props.value.
|
|
70
|
+
var _useState3 = (0, _react.useState)(props.value && props.value.final ? (0, _moment.default)(props.value.final) : undefined),
|
|
76
71
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
77
72
|
valueFinal = _useState4[0],
|
|
78
73
|
setValueFinal = _useState4[1];
|
|
79
74
|
|
|
75
|
+
var previusValueInitial = usePrevious(valueInitial);
|
|
76
|
+
var previusValueFinal = usePrevious(valueFinal);
|
|
77
|
+
var previusValueProp = usePrevious(props.value);
|
|
78
|
+
|
|
80
79
|
var _useState5 = (0, _react.useState)('valueInitial'),
|
|
81
80
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
82
81
|
changing = _useState6[0],
|
|
@@ -97,28 +96,26 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
97
96
|
showPeriodSelection = _useState12[0],
|
|
98
97
|
setShowPeriodSelection = _useState12[1];
|
|
99
98
|
|
|
100
|
-
var _useState13 = (0, _react.useState)(),
|
|
99
|
+
var _useState13 = (0, _react.useState)(null),
|
|
101
100
|
_useState14 = _slicedToArray(_useState13, 2),
|
|
102
101
|
inputDimensions = _useState14[0],
|
|
103
102
|
setInputDimensions = _useState14[1];
|
|
104
103
|
|
|
105
|
-
var _useState15 = (0, _react.useState)(),
|
|
104
|
+
var _useState15 = (0, _react.useState)(undefined),
|
|
106
105
|
_useState16 = _slicedToArray(_useState15, 2),
|
|
107
106
|
onDenied = _useState16[0],
|
|
108
107
|
setOnDenied = _useState16[1];
|
|
109
108
|
|
|
110
|
-
var inputContainerRef = (0, _react.useRef)(
|
|
111
|
-
var inputInitialRef = (0, _react.useRef)(
|
|
112
|
-
var buttonOpenRef = (0, _react.useRef)(
|
|
113
|
-
var buttonSelectPeriodRef = (0, _react.useRef)(
|
|
114
|
-
var dropdownCalendarContainer = (0, _react.useRef)(
|
|
115
|
-
var dropdownPeriodContainer = (0, _react.useRef)(
|
|
116
|
-
var inputFinalRef = (0, _react.useRef)(
|
|
109
|
+
var inputContainerRef = (0, _react.useRef)();
|
|
110
|
+
var inputInitialRef = (0, _react.useRef)();
|
|
111
|
+
var buttonOpenRef = (0, _react.useRef)();
|
|
112
|
+
var buttonSelectPeriodRef = (0, _react.useRef)();
|
|
113
|
+
var dropdownCalendarContainer = (0, _react.useRef)();
|
|
114
|
+
var dropdownPeriodContainer = (0, _react.useRef)();
|
|
115
|
+
var inputFinalRef = (0, _react.useRef)();
|
|
117
116
|
|
|
118
117
|
var onScreenResize = function onScreenResize() {
|
|
119
|
-
var
|
|
120
|
-
|
|
121
|
-
var inputDimensionsAux = inputContainerRef === null || inputContainerRef === void 0 ? void 0 : (_inputContainerRef$cu = inputContainerRef.current) === null || _inputContainerRef$cu === void 0 ? void 0 : _inputContainerRef$cu.getBoundingClientRect();
|
|
118
|
+
var inputDimensionsAux = inputContainerRef.current.getBoundingClientRect();
|
|
122
119
|
setInputDimensions(inputDimensionsAux);
|
|
123
120
|
};
|
|
124
121
|
|
|
@@ -145,23 +142,28 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
145
142
|
};
|
|
146
143
|
}, []);
|
|
147
144
|
(0, _react.useEffect)(function () {
|
|
148
|
-
if (valueFinal && valueInitial && (
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
props.onChange
|
|
155
|
-
initial:
|
|
156
|
-
final:
|
|
157
|
-
|
|
145
|
+
if (valueFinal && valueInitial && (previusValueFinal !== valueFinal || previusValueInitial !== valueInitial)) {
|
|
146
|
+
// Se for selecionado um valor para data final menor que data inicial trocar as datas
|
|
147
|
+
if (valueFinal < valueInitial) {
|
|
148
|
+
var valueInitialAux = (0, _moment.default)(valueInitial);
|
|
149
|
+
setValueInitial(valueFinal);
|
|
150
|
+
setValueFinal(valueInitialAux); // Sempre que for alterado o estado interno chamar o callback
|
|
151
|
+
} else if (props.onChange) {
|
|
152
|
+
var initial = valueInitial ? valueInitial.format('YYYY-MM-DD') : '';
|
|
153
|
+
var final = valueFinal ? valueFinal.format('YYYY-MM-DD') : '';
|
|
154
|
+
props.onChange({
|
|
155
|
+
initial: initial,
|
|
156
|
+
final: final
|
|
157
|
+
});
|
|
158
|
+
}
|
|
158
159
|
}
|
|
159
|
-
}, [
|
|
160
|
+
}, [valueFinal, valueInitial]);
|
|
160
161
|
(0, _react.useEffect)(function () {
|
|
161
|
-
|
|
162
|
+
// sempre que alterado a prop 'value' atualiza o state interno
|
|
163
|
+
if (props.value !== previusValueProp) {
|
|
162
164
|
var _props$value = props.value,
|
|
163
|
-
valueInitialProp = _props$value.
|
|
164
|
-
valueFinalProp = _props$value.
|
|
165
|
+
valueInitialProp = _props$value.initial,
|
|
166
|
+
valueFinalProp = _props$value.final;
|
|
165
167
|
var newValueInitial;
|
|
166
168
|
var newValueFinal;
|
|
167
169
|
|
|
@@ -176,7 +178,7 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
176
178
|
setValueInitial(newValueInitial);
|
|
177
179
|
setValueFinal(newValueFinal);
|
|
178
180
|
}
|
|
179
|
-
}, [
|
|
181
|
+
}, [props.value]);
|
|
180
182
|
|
|
181
183
|
var openCalendar = function openCalendar() {
|
|
182
184
|
setShowCalendar(true);
|
|
@@ -188,30 +190,27 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
188
190
|
};
|
|
189
191
|
|
|
190
192
|
var onInputFocus = function onInputFocus(e) {
|
|
191
|
-
var
|
|
192
|
-
|
|
193
|
+
var openOnFocus = props.openOnFocus;
|
|
194
|
+
var name = e.target.name;
|
|
193
195
|
setChanging(name);
|
|
194
196
|
if (openOnFocus) openCalendar();
|
|
195
197
|
};
|
|
196
198
|
|
|
197
199
|
var onInputChange = function onInputChange(event, value) {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
} else {
|
|
206
|
-
setValueFinal(undefined);
|
|
207
|
-
}
|
|
200
|
+
var changingAux = event.target.name;
|
|
201
|
+
|
|
202
|
+
if (value.replace(/\D/g, '') === '') {
|
|
203
|
+
if (changingAux === 'valueInitial') {
|
|
204
|
+
setValueInitial(undefined);
|
|
205
|
+
} else {
|
|
206
|
+
setValueFinal(undefined);
|
|
208
207
|
}
|
|
209
208
|
}
|
|
210
209
|
};
|
|
211
210
|
|
|
212
211
|
var setValue = function setValue(e, value) {
|
|
213
212
|
var sholdOpenDropdown = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
214
|
-
var changingAux = e
|
|
213
|
+
var changingAux = e.target.name;
|
|
215
214
|
var dateObj = (0, _moment.default)(value, 'DD/MM/YYYY');
|
|
216
215
|
|
|
217
216
|
if (changingAux === 'valueInitial') {
|
|
@@ -219,17 +218,20 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
219
218
|
} else {
|
|
220
219
|
setValueFinal(dateObj);
|
|
221
220
|
}
|
|
221
|
+
/*
|
|
222
|
+
Caso valor setado for inicial e valor final vazio,
|
|
223
|
+
dar focus na data final e abrir dropdown para selecao de data final
|
|
224
|
+
*/
|
|
222
225
|
|
|
223
|
-
if (changingAux === 'valueInitial' && !valueFinal && sholdOpenDropdown) {
|
|
224
|
-
var _inputFinalRef$curren;
|
|
225
226
|
|
|
226
|
-
|
|
227
|
+
if (changingAux === 'valueInitial' && !valueFinal && sholdOpenDropdown) {
|
|
228
|
+
setChanging(valueFinal);
|
|
227
229
|
setShowCalendar(false);
|
|
228
|
-
|
|
230
|
+
inputFinalRef.current.focus();
|
|
229
231
|
setTimeout(function () {
|
|
230
232
|
return setShowCalendar(true);
|
|
231
233
|
}, 100);
|
|
232
|
-
} else if (shouldCloseOnSelect) {
|
|
234
|
+
} else if (props.shouldCloseOnSelect) {
|
|
233
235
|
setShowCalendar(false);
|
|
234
236
|
}
|
|
235
237
|
};
|
|
@@ -240,6 +242,7 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
240
242
|
};
|
|
241
243
|
|
|
242
244
|
var getButtonOpen = function getButtonOpen() {
|
|
245
|
+
var showButtonOpen = props.showButtonOpen;
|
|
243
246
|
if (!showButtonOpen) return null;
|
|
244
247
|
return /*#__PURE__*/_react.default.createElement(_buttons.default, {
|
|
245
248
|
key: "button-open",
|
|
@@ -248,14 +251,12 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
248
251
|
name: "calendar"
|
|
249
252
|
}),
|
|
250
253
|
onClick: function onClick() {
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
(_inputInitialRef$curr = inputInitialRef.current) === null || _inputInitialRef$curr === void 0 ? void 0 : _inputInitialRef$curr.focus();
|
|
254
|
+
inputInitialRef.current.focus();
|
|
254
255
|
setChanging('valueInitial');
|
|
255
256
|
openCalendar();
|
|
256
257
|
},
|
|
257
258
|
customClass: "calendar-button",
|
|
258
|
-
tabIndex: -1,
|
|
259
|
+
tabIndex: "-1",
|
|
259
260
|
targetRef: function targetRef(ref) {
|
|
260
261
|
buttonOpenRef.current = ref;
|
|
261
262
|
},
|
|
@@ -263,10 +264,10 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
263
264
|
});
|
|
264
265
|
};
|
|
265
266
|
|
|
266
|
-
var getPeriodSelection = function getPeriodSelection(valuePeriodSelectionAux,
|
|
267
|
+
var getPeriodSelection = function getPeriodSelection(valuePeriodSelectionAux, setPeridDates) {
|
|
267
268
|
return /*#__PURE__*/_react.default.createElement(_PeriodList.default, {
|
|
268
269
|
selected: valuePeriodSelectionAux,
|
|
269
|
-
handleOnSelect:
|
|
270
|
+
handleOnSelect: setPeridDates
|
|
270
271
|
});
|
|
271
272
|
};
|
|
272
273
|
|
|
@@ -290,7 +291,7 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
290
291
|
return openPeriodSelecion();
|
|
291
292
|
},
|
|
292
293
|
customClass: "calendar-button",
|
|
293
|
-
tabIndex: -1,
|
|
294
|
+
tabIndex: "-1",
|
|
294
295
|
targetRef: function targetRef(ref) {
|
|
295
296
|
buttonSelectPeriodRef.current = ref;
|
|
296
297
|
},
|
|
@@ -298,9 +299,9 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
298
299
|
});
|
|
299
300
|
};
|
|
300
301
|
|
|
301
|
-
var getCalendar = function getCalendar(value,
|
|
302
|
+
var getCalendar = function getCalendar(value, calendarColorStyle, changingAux) {
|
|
302
303
|
return /*#__PURE__*/_react.default.createElement(_calendar.default, {
|
|
303
|
-
currentDate: value !== undefined ?
|
|
304
|
+
currentDate: value !== undefined ? value : (0, _moment.default)(),
|
|
304
305
|
onDateChange: function onDateChange(date) {
|
|
305
306
|
return setValue({
|
|
306
307
|
target: {
|
|
@@ -308,15 +309,13 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
308
309
|
}
|
|
309
310
|
}, date);
|
|
310
311
|
},
|
|
311
|
-
colorStyle:
|
|
312
|
+
colorStyle: calendarColorStyle
|
|
312
313
|
});
|
|
313
314
|
};
|
|
314
315
|
|
|
315
|
-
var
|
|
316
|
+
var setPeridDates = function setPeridDates(selected, dates) {
|
|
316
317
|
if (selected === 'custom') {
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
(_inputInitialRef$curr2 = inputInitialRef.current) === null || _inputInitialRef$curr2 === void 0 ? void 0 : _inputInitialRef$curr2.focus();
|
|
318
|
+
inputInitialRef.current.focus();
|
|
320
319
|
setValuePeriodSelection(selected);
|
|
321
320
|
setChanging('valueInitial');
|
|
322
321
|
setShowPeriodSelection(false);
|
|
@@ -325,19 +324,19 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
325
324
|
}
|
|
326
325
|
|
|
327
326
|
setValuePeriodSelection(selected);
|
|
327
|
+
setValueInitial(dates[0]);
|
|
328
|
+
setValueFinal(dates[1]);
|
|
328
329
|
|
|
329
|
-
if (
|
|
330
|
-
setValueInitial(dates[0]);
|
|
331
|
-
setValueFinal(dates[1]);
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
if (shouldCloseOnSelect) {
|
|
330
|
+
if (props.shouldCloseOnSelect) {
|
|
335
331
|
setShowPeriodSelection(false);
|
|
336
332
|
}
|
|
337
333
|
};
|
|
338
334
|
|
|
339
335
|
var getWrapperComponentCalendar = function getWrapperComponentCalendar() {
|
|
340
336
|
var value = changing === 'valueInitial' ? valueInitial : valueFinal;
|
|
337
|
+
var showCalendarInDialog = props.showCalendarInDialog,
|
|
338
|
+
dialogSize = props.dialogSize,
|
|
339
|
+
calendarColorStyle = props.calendarColorStyle;
|
|
341
340
|
if (onDenied && onDenied.readOnly) return null;
|
|
342
341
|
|
|
343
342
|
if (showCalendarInDialog) {
|
|
@@ -351,9 +350,9 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
351
350
|
|
|
352
351
|
return /*#__PURE__*/_react.default.createElement(_Dropdown.default, {
|
|
353
352
|
targetElement: inputContainerRef.current,
|
|
354
|
-
topPosition: inputDimensions
|
|
355
|
-
leftPosition: inputDimensions
|
|
356
|
-
width: inputDimensions
|
|
353
|
+
topPosition: inputDimensions.top + inputDimensions.height + 5,
|
|
354
|
+
leftPosition: inputDimensions.left,
|
|
355
|
+
width: inputDimensions.width,
|
|
357
356
|
dropdownRef: function dropdownRef(el) {
|
|
358
357
|
dropdownCalendarContainer.current = el;
|
|
359
358
|
}
|
|
@@ -361,45 +360,54 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
361
360
|
};
|
|
362
361
|
|
|
363
362
|
var getWrapperComponentPeriodSelection = function getWrapperComponentPeriodSelection() {
|
|
363
|
+
var showCalendarInDialog = props.showCalendarInDialog,
|
|
364
|
+
dialogSize = props.dialogSize;
|
|
365
|
+
|
|
364
366
|
if (showCalendarInDialog) {
|
|
365
367
|
return /*#__PURE__*/_react.default.createElement(_Dialog.default, {
|
|
366
368
|
dialogSize: dialogSize,
|
|
367
369
|
handlerClose: function handlerClose() {
|
|
368
370
|
return setShowPeriodSelection(false);
|
|
369
371
|
}
|
|
370
|
-
}, getPeriodSelection(valuePeriodSelection,
|
|
372
|
+
}, getPeriodSelection(valuePeriodSelection, setPeridDates));
|
|
371
373
|
}
|
|
372
374
|
|
|
373
375
|
return /*#__PURE__*/_react.default.createElement(_Dropdown.default, {
|
|
374
376
|
targetElement: inputContainerRef.current,
|
|
375
|
-
topPosition: inputDimensions
|
|
376
|
-
leftPosition: inputDimensions
|
|
377
|
-
width: inputDimensions
|
|
377
|
+
topPosition: inputDimensions.top + inputDimensions.height + 5,
|
|
378
|
+
leftPosition: inputDimensions.left,
|
|
379
|
+
width: inputDimensions.width,
|
|
378
380
|
dropdownRef: function dropdownRef(el) {
|
|
379
381
|
dropdownPeriodContainer.current = el;
|
|
380
382
|
}
|
|
381
|
-
}, getPeriodSelection(valuePeriodSelection,
|
|
383
|
+
}, getPeriodSelection(valuePeriodSelection, setPeridDates));
|
|
382
384
|
};
|
|
383
385
|
|
|
386
|
+
var required = props.required,
|
|
387
|
+
label = props.label,
|
|
388
|
+
customClassForLabel = props.customClassForLabel,
|
|
389
|
+
labelUppercase = props.labelUppercase,
|
|
390
|
+
errorMessages = props.errorMessages;
|
|
384
391
|
if (onDenied && onDenied.unvisible) return null;
|
|
385
392
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
386
393
|
className: "input-base-component"
|
|
387
|
-
},
|
|
394
|
+
}, label && /*#__PURE__*/_react.default.createElement("div", {
|
|
388
395
|
className: "labelcontainer"
|
|
389
396
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
390
|
-
className: "label ".concat(
|
|
391
|
-
},
|
|
397
|
+
className: "label ".concat(customClassForLabel, " ").concat(labelUppercase && ' -uppercase')
|
|
398
|
+
}, label, required && /*#__PURE__*/_react.default.createElement("span", {
|
|
392
399
|
className: "-requiredlabel"
|
|
393
400
|
}, "*"))), /*#__PURE__*/_react.default.createElement("div", {
|
|
394
401
|
className: "periodpicker-component ".concat(helperBase.getInputWrapperClass(_extends({}, props, {
|
|
395
|
-
value: !valueInitial ? '' : (0, _moment.default)(valueInitial).format('DD/MM/YYYY'),
|
|
396
402
|
disabled: shouldDisable()
|
|
397
403
|
}))),
|
|
398
|
-
ref:
|
|
404
|
+
ref: function ref(el) {
|
|
405
|
+
inputContainerRef.current = el;
|
|
406
|
+
}
|
|
399
407
|
}, /*#__PURE__*/_react.default.createElement(_BaseMask.default, {
|
|
400
408
|
permissionAttr: props.permissionAttr,
|
|
401
409
|
name: "valueInitial",
|
|
402
|
-
value: !valueInitial ? '' :
|
|
410
|
+
value: !valueInitial ? '' : valueInitial.format('DD/MM/YYYY'),
|
|
403
411
|
mask: "00/00/0000",
|
|
404
412
|
onComplete: function onComplete(e, date) {
|
|
405
413
|
setValue(e, date, false);
|
|
@@ -407,34 +415,74 @@ var PeriodPicker = function PeriodPicker(props) {
|
|
|
407
415
|
onFocus: onInputFocus,
|
|
408
416
|
onChange: onInputChange,
|
|
409
417
|
inputRef: function inputRef(el) {
|
|
410
|
-
|
|
418
|
+
inputInitialRef.current = el;
|
|
411
419
|
},
|
|
412
|
-
handlerSetOnDenied: function handlerSetOnDenied(
|
|
413
|
-
setOnDenied(
|
|
420
|
+
handlerSetOnDenied: function handlerSetOnDenied(value) {
|
|
421
|
+
return setOnDenied(value);
|
|
414
422
|
},
|
|
415
|
-
required:
|
|
423
|
+
required: required
|
|
416
424
|
}), /*#__PURE__*/_react.default.createElement(_icons.default, {
|
|
417
425
|
name: "arrow_right",
|
|
418
426
|
customClass: "separation_icon"
|
|
419
427
|
}), /*#__PURE__*/_react.default.createElement(_BaseMask.default, {
|
|
420
428
|
permissionAttr: props.permissionAttr,
|
|
421
429
|
name: "valueFinal",
|
|
422
|
-
value: !valueFinal ? '' :
|
|
430
|
+
value: !valueFinal ? '' : valueFinal.format('DD/MM/YYYY'),
|
|
423
431
|
mask: "00/00/0000",
|
|
424
432
|
onComplete: function onComplete(e, date) {
|
|
425
|
-
setValue(e, date, false);
|
|
433
|
+
return setValue(e, date, false);
|
|
426
434
|
},
|
|
427
435
|
onFocus: onInputFocus,
|
|
428
436
|
onChange: onInputChange,
|
|
429
437
|
inputRef: function inputRef(el) {
|
|
430
438
|
inputFinalRef.current = el;
|
|
431
439
|
},
|
|
432
|
-
handlerSetOnDenied: function handlerSetOnDenied(
|
|
433
|
-
return setOnDenied(
|
|
440
|
+
handlerSetOnDenied: function handlerSetOnDenied(value) {
|
|
441
|
+
return setOnDenied(value);
|
|
434
442
|
},
|
|
435
|
-
required:
|
|
436
|
-
}), getButtonOpen(), getButtonSelectPeriod()), showCalendar && getWrapperComponentCalendar(), showPeriodSelection && getWrapperComponentPeriodSelection(),
|
|
443
|
+
required: required
|
|
444
|
+
}), getButtonOpen(), getButtonSelectPeriod()), showCalendar && getWrapperComponentCalendar(), showPeriodSelection && getWrapperComponentPeriodSelection(), helperBase.getErrorMessages(errorMessages));
|
|
437
445
|
};
|
|
438
446
|
|
|
447
|
+
PeriodPicker.propTypes = {
|
|
448
|
+
label: _propTypes.default.string,
|
|
449
|
+
value: _propTypes.default.object,
|
|
450
|
+
customClassForLabel: _propTypes.default.string,
|
|
451
|
+
labelUppercase: _propTypes.default.string,
|
|
452
|
+
showButtonOpen: _propTypes.default.bool,
|
|
453
|
+
shouldCloseOnSelect: _propTypes.default.bool,
|
|
454
|
+
openOnFocus: _propTypes.default.bool,
|
|
455
|
+
showCalendarInDialog: _propTypes.default.bool,
|
|
456
|
+
dialogSize: _propTypes.default.object,
|
|
457
|
+
calendarColorStyle: _propTypes.default.oneOf(['', _colorStyles.default.PRIMARY, _colorStyles.default.SUCCESS, _colorStyles.default.WARNING, _colorStyles.default.INFO, _colorStyles.default.DANGER]),
|
|
458
|
+
required: _propTypes.default.bool,
|
|
459
|
+
onChange: _propTypes.default.func,
|
|
460
|
+
disabled: _propTypes.default.bool,
|
|
461
|
+
permissionAttr: _propTypes.default.object,
|
|
462
|
+
errorMessages: _propTypes.default.arrayOf(_propTypes.default.string)
|
|
463
|
+
};
|
|
464
|
+
PeriodPicker.defaultProps = {
|
|
465
|
+
value: {
|
|
466
|
+
valueInitial: undefined,
|
|
467
|
+
valueFinal: undefined
|
|
468
|
+
},
|
|
469
|
+
label: undefined,
|
|
470
|
+
customClassForLabel: undefined,
|
|
471
|
+
labelUppercase: undefined,
|
|
472
|
+
showButtonOpen: true,
|
|
473
|
+
openOnFocus: true,
|
|
474
|
+
shouldCloseOnSelect: true,
|
|
475
|
+
showCalendarInDialog: false,
|
|
476
|
+
dialogSize: {
|
|
477
|
+
width: '350px',
|
|
478
|
+
height: '350px'
|
|
479
|
+
},
|
|
480
|
+
calendarColorStyle: '',
|
|
481
|
+
required: false,
|
|
482
|
+
onChange: undefined,
|
|
483
|
+
disabled: false,
|
|
484
|
+
permissionAttr: undefined,
|
|
485
|
+
errorMessages: []
|
|
486
|
+
};
|
|
439
487
|
var _default = PeriodPicker;
|
|
440
488
|
exports.default = _default;
|