@i-novus/n2o-components 1.0.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/index.js +0 -0
- package/lib/display/Alerts/Alert.d.ts +2 -0
- package/lib/display/Alerts/Alert.js +121 -0
- package/lib/display/Alerts/AlertSection.d.ts +18 -0
- package/lib/display/Alerts/AlertSection.js +64 -0
- package/lib/display/Alerts/AlertWrapper.d.ts +6 -0
- package/lib/display/Alerts/AlertWrapper.js +39 -0
- package/lib/display/Alerts/DefaultAlert.d.ts +6 -0
- package/lib/display/Alerts/DefaultAlert.js +125 -0
- package/lib/display/Alerts/LoaderAlert.d.ts +5 -0
- package/lib/display/Alerts/LoaderAlert.js +36 -0
- package/lib/display/Alerts/types.d.ts +49 -0
- package/lib/display/Alerts/types.js +24 -0
- package/lib/display/Alerts/utils.d.ts +15 -0
- package/lib/display/Alerts/utils.js +102 -0
- package/lib/display/Badge/Badge.d.ts +16 -0
- package/lib/display/Badge/Badge.js +77 -0
- package/lib/display/Badge/enums.d.ts +9 -0
- package/lib/display/Badge/enums.js +23 -0
- package/lib/display/Badge/utils.d.ts +9 -0
- package/lib/display/Badge/utils.js +49 -0
- package/lib/display/Block.d.ts +369 -0
- package/lib/display/Block.js +38 -0
- package/lib/display/CodeViewer/CodeViewer.d.ts +13 -0
- package/lib/display/CodeViewer/CodeViewer.js +96 -0
- package/lib/display/Drawer/Drawer.d.ts +25 -0
- package/lib/display/Drawer/Drawer.js +99 -0
- package/lib/display/DropdownCustomItem.d.ts +7 -0
- package/lib/display/DropdownCustomItem.js +23 -0
- package/lib/display/Filter/Buttons.d.ts +11 -0
- package/lib/display/Filter/Buttons.js +42 -0
- package/lib/display/Filter/Filter.d.ts +8 -0
- package/lib/display/Filter/Filter.js +38 -0
- package/lib/display/HelpPopover.d.ts +16 -0
- package/lib/display/HelpPopover.js +104 -0
- package/lib/display/Html.d.ts +8 -0
- package/lib/display/Html.js +29 -0
- package/lib/display/Icon/Icon.d.ts +11 -0
- package/lib/display/Icon/Icon.js +42 -0
- package/lib/display/Image/Image.d.ts +30 -0
- package/lib/display/Image/Image.js +93 -0
- package/lib/display/Image/ImageInfo.d.ts +7 -0
- package/lib/display/Image/ImageInfo.js +23 -0
- package/lib/display/InputIcon.d.ts +13 -0
- package/lib/display/InputIcon.js +33 -0
- package/lib/display/NavItemImage/NavItemImage.d.ts +9 -0
- package/lib/display/NavItemImage/NavItemImage.js +35 -0
- package/lib/display/OutputList.d.ts +12 -0
- package/lib/display/OutputList.js +46 -0
- package/lib/display/OutputListItem.d.ts +10 -0
- package/lib/display/OutputListItem.js +58 -0
- package/lib/display/OutputText.d.ts +15 -0
- package/lib/display/OutputText.js +170 -0
- package/lib/display/Pagination/Pagination.d.ts +2 -0
- package/lib/display/Pagination/Pagination.js +273 -0
- package/lib/display/Pagination/PaginationButton.d.ts +13 -0
- package/lib/display/Pagination/PaginationButton.js +53 -0
- package/lib/display/Pagination/types.d.ts +62 -0
- package/lib/display/Pagination/types.js +36 -0
- package/lib/display/PopoverConfirm/PopoverConfirm.d.ts +30 -0
- package/lib/display/PopoverConfirm/PopoverConfirm.js +87 -0
- package/lib/display/ProgressControl/ProgressControl.d.ts +17 -0
- package/lib/display/ProgressControl/ProgressControl.js +68 -0
- package/lib/display/Slider.d.ts +23 -0
- package/lib/display/Slider.js +107 -0
- package/lib/display/Status.d.ts +9 -0
- package/lib/display/Status.js +40 -0
- package/lib/display/StatusText/StatusText.d.ts +10 -0
- package/lib/display/StatusText/StatusText.js +35 -0
- package/lib/display/StatusText/types.d.ts +18 -0
- package/lib/display/StatusText/types.js +19 -0
- package/lib/display/StatusText/utils.d.ts +3 -0
- package/lib/display/StatusText/utils.js +29 -0
- package/lib/display/Text.d.ts +12 -0
- package/lib/display/Text.js +38 -0
- package/lib/display/Typography/Base.d.ts +32 -0
- package/lib/display/Typography/Base.js +259 -0
- package/lib/display/Typography/ContentEditable.d.ts +15 -0
- package/lib/display/Typography/ContentEditable.js +86 -0
- package/lib/display/Typography/Paragraph.d.ts +4 -0
- package/lib/display/Typography/Paragraph.js +23 -0
- package/lib/display/Typography/Text.d.ts +9 -0
- package/lib/display/Typography/Text.js +37 -0
- package/lib/display/Typography/Title.d.ts +7 -0
- package/lib/display/Typography/Title.js +28 -0
- package/lib/display/Typography/utils.d.ts +13 -0
- package/lib/display/Typography/utils.js +75 -0
- package/lib/helpers/HelpPopover.d.ts +9 -0
- package/lib/helpers/HelpPopover.js +46 -0
- package/lib/helpers/withRightPlaceholder.d.ts +9 -0
- package/lib/helpers/withRightPlaceholder.js +35 -0
- package/lib/inputs/Checkbox/Checkbox.d.ts +29 -0
- package/lib/inputs/Checkbox/Checkbox.js +117 -0
- package/lib/inputs/Checkbox/CheckboxControl.d.ts +7 -0
- package/lib/inputs/Checkbox/CheckboxControl.js +33 -0
- package/lib/inputs/CheckboxGroup/CheckboxGroup.d.ts +11 -0
- package/lib/inputs/CheckboxGroup/CheckboxGroup.js +84 -0
- package/lib/inputs/CodeEditor/CodeEditor.d.ts +21 -0
- package/lib/inputs/CodeEditor/CodeEditor.js +85 -0
- package/lib/inputs/DatePicker/Calendar.d.ts +65 -0
- package/lib/inputs/DatePicker/Calendar.js +556 -0
- package/lib/inputs/DatePicker/CalendarHeader.d.ts +26 -0
- package/lib/inputs/DatePicker/CalendarHeader.js +213 -0
- package/lib/inputs/DatePicker/Clock.d.ts +10 -0
- package/lib/inputs/DatePicker/Clock.js +45 -0
- package/lib/inputs/DatePicker/DateInput.d.ts +44 -0
- package/lib/inputs/DatePicker/DateInput.js +262 -0
- package/lib/inputs/DatePicker/DateInputGroup.d.ts +20 -0
- package/lib/inputs/DatePicker/DateInputGroup.js +77 -0
- package/lib/inputs/DatePicker/DateInterval.d.ts +24 -0
- package/lib/inputs/DatePicker/DateInterval.js +92 -0
- package/lib/inputs/DatePicker/DatePicker.d.ts +22 -0
- package/lib/inputs/DatePicker/DatePicker.js +36 -0
- package/lib/inputs/DatePicker/DateTimeControl.d.ts +98 -0
- package/lib/inputs/DatePicker/DateTimeControl.js +452 -0
- package/lib/inputs/DatePicker/Day.d.ts +14 -0
- package/lib/inputs/DatePicker/Day.js +50 -0
- package/lib/inputs/DatePicker/PopUp.d.ts +19 -0
- package/lib/inputs/DatePicker/PopUp.js +71 -0
- package/lib/inputs/DatePicker/types.d.ts +31 -0
- package/lib/inputs/DatePicker/types.js +25 -0
- package/lib/inputs/DatePicker/utils.d.ts +39 -0
- package/lib/inputs/DatePicker/utils.js +304 -0
- package/lib/inputs/Input.d.ts +51 -0
- package/lib/inputs/Input.js +200 -0
- package/lib/inputs/InputMask/InputMask.d.ts +23 -0
- package/lib/inputs/InputMask/InputMask.js +310 -0
- package/lib/inputs/InputMoney/InputMoney.d.ts +101 -0
- package/lib/inputs/InputMoney/InputMoney.js +258 -0
- package/lib/inputs/InputNumber/InputNumber.d.ts +29 -0
- package/lib/inputs/InputNumber/InputNumber.js +316 -0
- package/lib/inputs/InputNumber/index.d.ts +1 -0
- package/lib/inputs/InputNumber/index.js +14 -0
- package/lib/inputs/InputNumber/types.d.ts +18 -0
- package/lib/inputs/InputNumber/types.js +14 -0
- package/lib/inputs/InputNumber/utils.d.ts +6 -0
- package/lib/inputs/InputNumber/utils.js +86 -0
- package/lib/inputs/InputPassword/InputPassword.d.ts +10 -0
- package/lib/inputs/InputPassword/InputPassword.js +81 -0
- package/lib/inputs/InputSelect/InputAddon.d.ts +17 -0
- package/lib/inputs/InputSelect/InputAddon.js +31 -0
- package/lib/inputs/InputSelect/InputContent.d.ts +63 -0
- package/lib/inputs/InputSelect/InputContent.js +188 -0
- package/lib/inputs/InputSelect/InputSelect.d.ts +296 -0
- package/lib/inputs/InputSelect/InputSelect.js +795 -0
- package/lib/inputs/InputSelect/InputSelectGroup.d.ts +43 -0
- package/lib/inputs/InputSelect/InputSelectGroup.js +113 -0
- package/lib/inputs/InputSelect/PopupItems.d.ts +55 -0
- package/lib/inputs/InputSelect/PopupItems.js +357 -0
- package/lib/inputs/InputSelect/PopupList.d.ts +82 -0
- package/lib/inputs/InputSelect/PopupList.js +138 -0
- package/lib/inputs/InputSelect/SelectedItems.d.ts +17 -0
- package/lib/inputs/InputSelect/SelectedItems.js +125 -0
- package/lib/inputs/InputSelect/constants.d.ts +4 -0
- package/lib/inputs/InputSelect/constants.js +15 -0
- package/lib/inputs/InputSelect/types.d.ts +16 -0
- package/lib/inputs/InputSelect/types.js +16 -0
- package/lib/inputs/InputSelect/utils.d.ts +9 -0
- package/lib/inputs/InputSelect/utils.js +142 -0
- package/lib/inputs/InputSelectTree/InputSelectTree.d.ts +114 -0
- package/lib/inputs/InputSelectTree/InputSelectTree.js +466 -0
- package/lib/inputs/InputSelectTree/TreeSelectNode.d.ts +36 -0
- package/lib/inputs/InputSelectTree/TreeSelectNode.js +63 -0
- package/lib/inputs/InputSelectTree/allProps.d.ts +123 -0
- package/lib/inputs/InputSelectTree/allProps.js +48 -0
- package/lib/inputs/InputSelectTree/until.d.ts +4 -0
- package/lib/inputs/InputSelectTree/until.js +83 -0
- package/lib/inputs/InputText.d.ts +41 -0
- package/lib/inputs/InputText.js +170 -0
- package/lib/inputs/NumberPicker/NumberPicker.d.ts +15 -0
- package/lib/inputs/NumberPicker/NumberPicker.js +129 -0
- package/lib/inputs/NumberPicker/NumberPickerButton.d.ts +8 -0
- package/lib/inputs/NumberPicker/NumberPickerButton.js +64 -0
- package/lib/inputs/NumberPicker/index.d.ts +1 -0
- package/lib/inputs/NumberPicker/index.js +14 -0
- package/lib/inputs/NumberPicker/utils.d.ts +2 -0
- package/lib/inputs/NumberPicker/utils.js +31 -0
- package/lib/inputs/RadioGroup/default/Group.d.ts +15 -0
- package/lib/inputs/RadioGroup/default/Group.js +63 -0
- package/lib/inputs/RadioGroup/default/Input.d.ts +17 -0
- package/lib/inputs/RadioGroup/default/Input.js +77 -0
- package/lib/inputs/RadioGroup/tabs/Group.d.ts +3 -0
- package/lib/inputs/RadioGroup/tabs/Group.js +24 -0
- package/lib/inputs/RadioGroup/tabs/Input.d.ts +3 -0
- package/lib/inputs/RadioGroup/tabs/Input.js +21 -0
- package/lib/inputs/Rating/Rating.d.ts +30 -0
- package/lib/inputs/Rating/Rating.js +212 -0
- package/lib/inputs/Select/Popup.d.ts +31 -0
- package/lib/inputs/Select/Popup.js +131 -0
- package/lib/inputs/Select/Select.d.ts +225 -0
- package/lib/inputs/Select/Select.js +705 -0
- package/lib/inputs/Select/SelectInput.d.ts +19 -0
- package/lib/inputs/Select/SelectInput.js +85 -0
- package/lib/inputs/Select/utils.d.ts +1 -0
- package/lib/inputs/Select/utils.js +28 -0
- package/lib/inputs/Switch/Switch.d.ts +11 -0
- package/lib/inputs/Switch/Switch.js +41 -0
- package/lib/inputs/TextArea.d.ts +12 -0
- package/lib/inputs/TextArea.js +54 -0
- package/lib/inputs/TextEditor/TextEditor.d.ts +11 -0
- package/lib/inputs/TextEditor/TextEditor.js +89 -0
- package/lib/inputs/TimePicker/TimePicker.d.ts +50 -0
- package/lib/inputs/TimePicker/TimePicker.js +398 -0
- package/lib/inputs/utils.d.ts +5 -0
- package/lib/inputs/utils.js +39 -0
- package/lib/layouts/ScrollContainer.d.ts +218 -0
- package/lib/layouts/ScrollContainer.js +128 -0
- package/lib/layouts/Spinner/CoverSpinner.d.ts +29 -0
- package/lib/layouts/Spinner/CoverSpinner.js +153 -0
- package/lib/layouts/Spinner/InlineSpinner.d.ts +5 -0
- package/lib/layouts/Spinner/InlineSpinner.js +27 -0
- package/lib/layouts/Spinner/Spinner.d.ts +31 -0
- package/lib/layouts/Spinner/Spinner.js +178 -0
- package/lib/styles/components/Calendar.scss +125 -0
- package/lib/styles/components/CalendarHeader.scss +75 -0
- package/lib/styles/components/DateInputGroup.scss +39 -0
- package/lib/styles/components/DatePicker.scss +18 -0
- package/lib/styles/components/Day.scss +29 -0
- package/lib/styles/components/OutputList.scss +14 -0
- package/lib/styles/components/OutputText.scss +50 -0
- package/lib/styles/controls/CodeEditor.scss +4 -0
- package/lib/styles/controls/InputNumber.scss +36 -0
- package/lib/styles/controls/InputPassword.scss +17 -0
- package/lib/styles/controls/InputText.scss +59 -0
- package/lib/styles/controls/NumberPicker.scss +36 -0
- package/lib/styles/controls/ProgressControl.scss +3 -0
- package/lib/styles/controls/Slider.scss +32 -0
- package/lib/styles/controls/Switch.scss +105 -0
- package/lib/styles/controls/TextEditor.scss +23 -0
- package/lib/styles/controls/TimePicker.scss +32 -0
- package/lib/styles/n2o/variables.scss +328 -0
- package/lib/styles/theme/variables.scss +81 -0
- package/lib/styles/variables.scss +10 -0
- package/lib/types.d.ts +25 -0
- package/lib/types.js +6 -0
- package/lib/utils/id.d.ts +3 -0
- package/lib/utils/id.js +46 -0
- package/lib/utils/isEmptyModel.d.ts +1 -0
- package/lib/utils/isEmptyModel.js +21 -0
- package/lib/utils/parseFormatter.js +153 -0
- package/package.json +196 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.PopUp = exports.PopUpComponent = void 0;
|
|
9
|
+
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _reactOnclickoutside = _interopRequireDefault(require("react-onclickoutside"));
|
|
15
|
+
|
|
16
|
+
var _reactI18next = require("react-i18next");
|
|
17
|
+
|
|
18
|
+
var _Calendar = require("./Calendar");
|
|
19
|
+
|
|
20
|
+
var _excluded = ["hasDefaultTime"];
|
|
21
|
+
|
|
22
|
+
var PopUpComponent = function PopUpComponent(_ref) {
|
|
23
|
+
var dateFormat = _ref.dateFormat,
|
|
24
|
+
markTimeAsSet = _ref.markTimeAsSet,
|
|
25
|
+
timeFormat = _ref.timeFormat,
|
|
26
|
+
value = _ref.value,
|
|
27
|
+
max = _ref.max,
|
|
28
|
+
min = _ref.min,
|
|
29
|
+
locale = _ref.locale,
|
|
30
|
+
select = _ref.select,
|
|
31
|
+
time = _ref.time,
|
|
32
|
+
isTimeSet = _ref.isTimeSet,
|
|
33
|
+
type = _ref.type;
|
|
34
|
+
|
|
35
|
+
var _useTranslation = (0, _reactI18next.useTranslation)(),
|
|
36
|
+
t = _useTranslation.t;
|
|
37
|
+
|
|
38
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
39
|
+
className: "d-inline-flex justify-content-end"
|
|
40
|
+
}, Object.keys(value).map(function (input, i) {
|
|
41
|
+
var _time$input = time[input],
|
|
42
|
+
hasDefaultTime = _time$input.hasDefaultTime,
|
|
43
|
+
timeObj = (0, _objectWithoutProperties2["default"])(_time$input, _excluded);
|
|
44
|
+
return /*#__PURE__*/_react["default"].createElement(_Calendar.Calendar
|
|
45
|
+
/* eslint-disable react/no-array-index-key */
|
|
46
|
+
, {
|
|
47
|
+
key: i,
|
|
48
|
+
index: i,
|
|
49
|
+
values: value,
|
|
50
|
+
type: type,
|
|
51
|
+
time: timeObj,
|
|
52
|
+
markTimeAsSet: markTimeAsSet,
|
|
53
|
+
hasDefaultTime: hasDefaultTime || isTimeSet[input],
|
|
54
|
+
inputName: input,
|
|
55
|
+
value: value[input],
|
|
56
|
+
timeFormat: timeFormat,
|
|
57
|
+
select: select,
|
|
58
|
+
max: max,
|
|
59
|
+
min: min,
|
|
60
|
+
locale: locale,
|
|
61
|
+
dateFormat: dateFormat,
|
|
62
|
+
t: t
|
|
63
|
+
});
|
|
64
|
+
}));
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
exports.PopUpComponent = PopUpComponent;
|
|
68
|
+
PopUpComponent.prototype = {};
|
|
69
|
+
var PopUp = (0, _reactOnclickoutside["default"])(PopUpComponent);
|
|
70
|
+
exports.PopUp = PopUp;
|
|
71
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnB1dHMvRGF0ZVBpY2tlci9Qb3BVcC50c3giXSwibmFtZXMiOlsiUG9wVXBDb21wb25lbnQiLCJkYXRlRm9ybWF0IiwibWFya1RpbWVBc1NldCIsInRpbWVGb3JtYXQiLCJ2YWx1ZSIsIm1heCIsIm1pbiIsImxvY2FsZSIsInNlbGVjdCIsInRpbWUiLCJpc1RpbWVTZXQiLCJ0eXBlIiwidCIsIk9iamVjdCIsImtleXMiLCJtYXAiLCJpbnB1dCIsImkiLCJoYXNEZWZhdWx0VGltZSIsInRpbWVPYmoiLCJwcm90b3R5cGUiLCJQb3BVcCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7QUFFQTs7OztBQWlCTyxJQUFNQSxjQUFjLEdBQUcsU0FBakJBLGNBQWlCLE9BWVo7QUFBQSxNQVhkQyxVQVdjLFFBWGRBLFVBV2M7QUFBQSxNQVZkQyxhQVVjLFFBVmRBLGFBVWM7QUFBQSxNQVRkQyxVQVNjLFFBVGRBLFVBU2M7QUFBQSxNQVJkQyxLQVFjLFFBUmRBLEtBUWM7QUFBQSxNQVBkQyxHQU9jLFFBUGRBLEdBT2M7QUFBQSxNQU5kQyxHQU1jLFFBTmRBLEdBTWM7QUFBQSxNQUxkQyxNQUtjLFFBTGRBLE1BS2M7QUFBQSxNQUpkQyxNQUljLFFBSmRBLE1BSWM7QUFBQSxNQUhkQyxJQUdjLFFBSGRBLElBR2M7QUFBQSxNQUZkQyxTQUVjLFFBRmRBLFNBRWM7QUFBQSxNQURkQyxJQUNjLFFBRGRBLElBQ2M7O0FBQ2Qsd0JBQWMsbUNBQWQ7QUFBQSxNQUFRQyxDQUFSLG1CQUFRQSxDQUFSOztBQUVBLHNCQUNJO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNLQyxNQUFNLENBQUNDLElBQVAsQ0FBWVYsS0FBWixFQUFtQlcsR0FBbkIsQ0FBdUIsVUFBQ0MsS0FBRCxFQUFRQyxDQUFSLEVBQWM7QUFDbEMsc0JBQXVDUixJQUFJLENBQUNPLEtBQUQsQ0FBM0M7QUFBQSxRQUFRRSxjQUFSLGVBQVFBLGNBQVI7QUFBQSxRQUEyQkMsT0FBM0I7QUFFQSx3QkFDSSxnQ0FBQztBQUNHO0FBREo7QUFFSSxNQUFBLEdBQUcsRUFBRUYsQ0FGVDtBQUdJLE1BQUEsS0FBSyxFQUFFQSxDQUhYO0FBSUksTUFBQSxNQUFNLEVBQUViLEtBSlo7QUFLSSxNQUFBLElBQUksRUFBRU8sSUFMVjtBQU1JLE1BQUEsSUFBSSxFQUFFUSxPQU5WO0FBT0ksTUFBQSxhQUFhLEVBQUVqQixhQVBuQjtBQVFJLE1BQUEsY0FBYyxFQUFFZ0IsY0FBYyxJQUFJUixTQUFTLENBQUNNLEtBQUQsQ0FSL0M7QUFTSSxNQUFBLFNBQVMsRUFBRUEsS0FUZjtBQVVJLE1BQUEsS0FBSyxFQUFFWixLQUFLLENBQUNZLEtBQUQsQ0FWaEI7QUFXSSxNQUFBLFVBQVUsRUFBRWIsVUFYaEI7QUFZSSxNQUFBLE1BQU0sRUFBRUssTUFaWjtBQWFJLE1BQUEsR0FBRyxFQUFFSCxHQWJUO0FBY0ksTUFBQSxHQUFHLEVBQUVDLEdBZFQ7QUFlSSxNQUFBLE1BQU0sRUFBRUMsTUFmWjtBQWdCSSxNQUFBLFVBQVUsRUFBRU4sVUFoQmhCO0FBaUJJLE1BQUEsQ0FBQyxFQUFFVztBQWpCUCxNQURKO0FBcUJILEdBeEJBLENBREwsQ0FESjtBQTZCSCxDQTVDTTs7O0FBOENQWixjQUFjLENBQUNvQixTQUFmLEdBQTJCLEVBQTNCO0FBRU8sSUFBTUMsS0FBSyxHQUFHLHFDQUFlckIsY0FBZixDQUFkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgTW9tZW50IH0gZnJvbSAnbW9tZW50L21vbWVudCdcbmltcG9ydCBvbkNsaWNrT3V0c2lkZSBmcm9tICdyZWFjdC1vbmNsaWNrb3V0c2lkZSdcbmltcG9ydCB7IHVzZVRyYW5zbGF0aW9uIH0gZnJvbSAncmVhY3QtaTE4bmV4dCdcblxuaW1wb3J0IHsgQ2FsZW5kYXIgfSBmcm9tICcuL0NhbGVuZGFyJ1xuaW1wb3J0IHsgVGltZSwgRGVmYXVsdFRpbWUgfSBmcm9tICcuL3R5cGVzJ1xuXG50eXBlIFBvcFVwUHJvcHMgPSB7XG4gICAgZGF0ZUZvcm1hdDogc3RyaW5nLFxuICAgIGlzVGltZVNldDogUmVjb3JkPHN0cmluZywgYm9vbGVhbiB8IHVuZGVmaW5lZD4sXG4gICAgbG9jYWxlOiAnZW4nIHwgJ3J1JyxcbiAgICBtYXJrVGltZUFzU2V0KHN0cjogc3RyaW5nKTogdm9pZCxcbiAgICBtYXg/OiBNb21lbnQgfCBEYXRlIHwgc3RyaW5nLFxuICAgIG1pbj86IE1vbWVudCB8IERhdGUgfCBzdHJpbmcsXG4gICAgc2VsZWN0KGRheTogTW9tZW50IHwgbnVsbCwgaW5wdXROYW1lOiBzdHJpbmcsIGNsb3NlPzogYm9vbGVhbik6IHZvaWQsXG4gICAgdGltZTogRGVmYXVsdFRpbWUsXG4gICAgdGltZUZvcm1hdD86IHN0cmluZyxcbiAgICB0eXBlPzogc3RyaW5nLFxuICAgIHZhbHVlOiBSZWNvcmQ8c3RyaW5nLCBNb21lbnQgfCBudWxsPlxufVxuXG5leHBvcnQgY29uc3QgUG9wVXBDb21wb25lbnQgPSAoe1xuICAgIGRhdGVGb3JtYXQsXG4gICAgbWFya1RpbWVBc1NldCxcbiAgICB0aW1lRm9ybWF0LFxuICAgIHZhbHVlLFxuICAgIG1heCxcbiAgICBtaW4sXG4gICAgbG9jYWxlLFxuICAgIHNlbGVjdCxcbiAgICB0aW1lLFxuICAgIGlzVGltZVNldCxcbiAgICB0eXBlLFxufTogUG9wVXBQcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oKVxuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkLWlubGluZS1mbGV4IGp1c3RpZnktY29udGVudC1lbmRcIj5cbiAgICAgICAgICAgIHtPYmplY3Qua2V5cyh2YWx1ZSkubWFwKChpbnB1dCwgaSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgaGFzRGVmYXVsdFRpbWUsIC4uLnRpbWVPYmogfSA9IHRpbWVbaW5wdXRdXG5cbiAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICA8Q2FsZW5kYXJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8qIGVzbGludC1kaXNhYmxlIHJlYWN0L25vLWFycmF5LWluZGV4LWtleSAqL1xuICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtpfVxuICAgICAgICAgICAgICAgICAgICAgICAgaW5kZXg9e2l9XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9e3ZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT17dHlwZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRpbWU9e3RpbWVPYmogYXMgVGltZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtUaW1lQXNTZXQ9e21hcmtUaW1lQXNTZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNEZWZhdWx0VGltZT17aGFzRGVmYXVsdFRpbWUgfHwgaXNUaW1lU2V0W2lucHV0XX1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0TmFtZT17aW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWVbaW5wdXRdfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGltZUZvcm1hdD17dGltZUZvcm1hdH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdD17c2VsZWN0fVxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4PXttYXh9XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW49e21pbn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZT17bG9jYWxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0ZUZvcm1hdD17ZGF0ZUZvcm1hdH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHQ9e3R9XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSl9XG4gICAgICAgIDwvZGl2PlxuICAgIClcbn1cblxuUG9wVXBDb21wb25lbnQucHJvdG90eXBlID0ge31cblxuZXhwb3J0IGNvbnN0IFBvcFVwID0gb25DbGlja091dHNpZGUoUG9wVXBDb21wb25lbnQpXG4iXX0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Moment } from 'moment';
|
|
2
|
+
import { PopperProps } from 'react-popper';
|
|
3
|
+
export declare const enum CalendarType {
|
|
4
|
+
BY_DAYS = "by_days",
|
|
5
|
+
BY_MONTHS = "by_months",
|
|
6
|
+
BY_YEARS = "by_years",
|
|
7
|
+
TIME_PICKER = "time_picker"
|
|
8
|
+
}
|
|
9
|
+
export declare const enum DateTimeControlName {
|
|
10
|
+
BEGIN = "begin",
|
|
11
|
+
DEFAULT_NAME = "singleDate",
|
|
12
|
+
END = "end"
|
|
13
|
+
}
|
|
14
|
+
export declare type DatePickerValue = Array<{
|
|
15
|
+
defaultTime?: string;
|
|
16
|
+
name: string | null;
|
|
17
|
+
value: string | null;
|
|
18
|
+
}> | string | null;
|
|
19
|
+
export declare type DateType = string | Moment | Date;
|
|
20
|
+
export declare type Time = {
|
|
21
|
+
hours: number;
|
|
22
|
+
minutes: number;
|
|
23
|
+
seconds: number;
|
|
24
|
+
};
|
|
25
|
+
export declare type TimeExtended = Time & {
|
|
26
|
+
hasDefaultTime: boolean;
|
|
27
|
+
};
|
|
28
|
+
export declare type DefaultTime = Record<string, TimeExtended>;
|
|
29
|
+
export declare type OnInputChangeHandler = (date: Moment | null, inputName: string, callback?: () => void) => void;
|
|
30
|
+
export declare type PopperPositioningStrategy = PopperProps<unknown>['strategy'];
|
|
31
|
+
export declare type PopperPlacement = PopperProps<unknown>['placement'];
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DateTimeControlName = exports.CalendarType = void 0;
|
|
7
|
+
var CalendarType;
|
|
8
|
+
exports.CalendarType = CalendarType;
|
|
9
|
+
|
|
10
|
+
(function (CalendarType) {
|
|
11
|
+
CalendarType["BY_DAYS"] = "by_days";
|
|
12
|
+
CalendarType["BY_MONTHS"] = "by_months";
|
|
13
|
+
CalendarType["BY_YEARS"] = "by_years";
|
|
14
|
+
CalendarType["TIME_PICKER"] = "time_picker";
|
|
15
|
+
})(CalendarType || (exports.CalendarType = CalendarType = {}));
|
|
16
|
+
|
|
17
|
+
var DateTimeControlName;
|
|
18
|
+
exports.DateTimeControlName = DateTimeControlName;
|
|
19
|
+
|
|
20
|
+
(function (DateTimeControlName) {
|
|
21
|
+
DateTimeControlName["BEGIN"] = "begin";
|
|
22
|
+
DateTimeControlName["DEFAULT_NAME"] = "singleDate";
|
|
23
|
+
DateTimeControlName["END"] = "end";
|
|
24
|
+
})(DateTimeControlName || (exports.DateTimeControlName = DateTimeControlName = {}));
|
|
25
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnB1dHMvRGF0ZVBpY2tlci90eXBlcy50cyJdLCJuYW1lcyI6WyJDYWxlbmRhclR5cGUiLCJEYXRlVGltZUNvbnRyb2xOYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7SUFHa0JBLFk7OztXQUFBQSxZO0FBQUFBLEVBQUFBLFk7QUFBQUEsRUFBQUEsWTtBQUFBQSxFQUFBQSxZO0FBQUFBLEVBQUFBLFk7R0FBQUEsWSw0QkFBQUEsWTs7SUFPQUMsbUI7OztXQUFBQSxtQjtBQUFBQSxFQUFBQSxtQjtBQUFBQSxFQUFBQSxtQjtBQUFBQSxFQUFBQSxtQjtHQUFBQSxtQixtQ0FBQUEsbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb21lbnQgfSBmcm9tICdtb21lbnQnXG5pbXBvcnQgeyBQb3BwZXJQcm9wcyB9IGZyb20gJ3JlYWN0LXBvcHBlcidcblxuZXhwb3J0IGNvbnN0IGVudW0gQ2FsZW5kYXJUeXBlIHtcbiAgICBCWV9EQVlTID0gJ2J5X2RheXMnLFxuICAgIEJZX01PTlRIUyA9ICdieV9tb250aHMnLFxuICAgIEJZX1lFQVJTID0gJ2J5X3llYXJzJyxcbiAgICBUSU1FX1BJQ0tFUiA9ICd0aW1lX3BpY2tlcicsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtIERhdGVUaW1lQ29udHJvbE5hbWUge1xuICAgIEJFR0lOID0gJ2JlZ2luJyxcbiAgICBERUZBVUxUX05BTUUgPSAnc2luZ2xlRGF0ZScsXG4gICAgRU5EID0gJ2VuZCdcbn1cblxuZXhwb3J0IHR5cGUgRGF0ZVBpY2tlclZhbHVlID1cbiAgICBBcnJheTx7IGRlZmF1bHRUaW1lPzogc3RyaW5nLCBuYW1lOiBzdHJpbmcgfCBudWxsLCB2YWx1ZTogc3RyaW5nIHwgbnVsbCB9PlxuICAgIHwgc3RyaW5nXG4gICAgfCBudWxsXG5cbmV4cG9ydCB0eXBlIERhdGVUeXBlID0gc3RyaW5nIHwgTW9tZW50IHwgRGF0ZVxuXG5leHBvcnQgdHlwZSBUaW1lID0ge1xuICAgIGhvdXJzOiBudW1iZXIsXG4gICAgbWludXRlczogbnVtYmVyLFxuICAgIHNlY29uZHM6IG51bWJlclxufVxuXG5leHBvcnQgdHlwZSBUaW1lRXh0ZW5kZWQgPSBUaW1lICYge1xuICAgIGhhc0RlZmF1bHRUaW1lOiBib29sZWFuLFxufVxuXG5leHBvcnQgdHlwZSBEZWZhdWx0VGltZSA9IFJlY29yZDxzdHJpbmcsIFRpbWVFeHRlbmRlZD5cblxuZXhwb3J0IHR5cGUgT25JbnB1dENoYW5nZUhhbmRsZXIgPSAoZGF0ZTogTW9tZW50IHwgbnVsbCwgaW5wdXROYW1lOiBzdHJpbmcsIGNhbGxiYWNrPzogKCkgPT4gdm9pZCkgPT4gdm9pZFxuXG5leHBvcnQgdHlwZSBQb3BwZXJQb3NpdGlvbmluZ1N0cmF0ZWd5ID0gUG9wcGVyUHJvcHM8dW5rbm93bj5bJ3N0cmF0ZWd5J11cbmV4cG9ydCB0eXBlIFBvcHBlclBsYWNlbWVudCA9IFBvcHBlclByb3BzPHVua25vd24+WydwbGFjZW1lbnQnXVxuIl19
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import moment, { LocaleSpecifier, Moment, MomentFormatSpecification } from 'moment/moment';
|
|
2
|
+
import { DateType, DatePickerValue, DefaultTime } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Дата (date) была после конца месяца другой даты(displayedMonth) или нет
|
|
5
|
+
*/
|
|
6
|
+
export declare const isDateFromNextMonth: (date: Moment, displayedMonth: Moment) => boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Дата (date) была до начала месяца другой даты(displayedMonth) или нет
|
|
9
|
+
*/
|
|
10
|
+
export declare const isDateFromPrevMonth: (date: Moment, displayedMonth: Moment) => boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Возвращает массив из недель(каждая неделя - массив из дней)
|
|
13
|
+
*/
|
|
14
|
+
export declare const weeks: (firstDay: Moment) => moment.Moment[][];
|
|
15
|
+
/**
|
|
16
|
+
* добавить часы и минуты к дате
|
|
17
|
+
*/
|
|
18
|
+
export declare const addTime: (date: Moment, hours: number, minutes: number, secs: number) => moment.Moment;
|
|
19
|
+
export declare const withLocale: (date: Moment, locale: LocaleSpecifier) => moment.Moment;
|
|
20
|
+
/**
|
|
21
|
+
* преобразовать дату к moment-объекту
|
|
22
|
+
*/
|
|
23
|
+
export declare const parseDate: (value: DateType, dateFormat: MomentFormatSpecification) => moment.Moment;
|
|
24
|
+
export declare const mapToValue: (val: DatePickerValue, defaultTime: DefaultTime, dateFormat: string, locale: string, defaultName: string) => Record<string, moment.Moment | null>;
|
|
25
|
+
export declare const mapToDefaultTime: (val: DatePickerValue, defaultTime: string, defaultName: string, timeFormat?: string) => DefaultTime;
|
|
26
|
+
export declare const buildDateFormat: (dateFormat?: string, timeFormat?: string, divider?: string) => string;
|
|
27
|
+
export declare const replaceDictionary: (tmp: string | RegExp) => RegExp[];
|
|
28
|
+
export declare const formatToMask: (format: string) => (string | RegExp)[];
|
|
29
|
+
/**
|
|
30
|
+
* Функция проверки находится ли дата в промежутке max и min
|
|
31
|
+
*/
|
|
32
|
+
export declare const hasInsideMixMax: (date: string, { max, min }: Record<string, string>, dateFormat: MomentFormatSpecification) => boolean;
|
|
33
|
+
export declare const getDeletedSymbol: (value: string, index: number) => string;
|
|
34
|
+
export declare const replaceAt: (string: string, index: number, replacement: string) => string;
|
|
35
|
+
export declare const objFromTime: (date: Moment) => {
|
|
36
|
+
minutes: number;
|
|
37
|
+
seconds: number;
|
|
38
|
+
hours: number;
|
|
39
|
+
};
|
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.objFromTime = exports.replaceAt = exports.getDeletedSymbol = exports.hasInsideMixMax = exports.formatToMask = exports.replaceDictionary = exports.buildDateFormat = exports.mapToDefaultTime = exports.mapToValue = exports.parseDate = exports.withLocale = exports.addTime = exports.weeks = exports.isDateFromPrevMonth = exports.isDateFromNextMonth = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _moment = _interopRequireDefault(require("moment/moment"));
|
|
13
|
+
|
|
14
|
+
var _flattenDeep = _interopRequireDefault(require("lodash/flattenDeep"));
|
|
15
|
+
|
|
16
|
+
var _map = _interopRequireDefault(require("lodash/map"));
|
|
17
|
+
|
|
18
|
+
var _isUndefined = _interopRequireDefault(require("lodash/isUndefined"));
|
|
19
|
+
|
|
20
|
+
var _isNull = _interopRequireDefault(require("lodash/isNull"));
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Дата (date) была после конца месяца другой даты(displayedMonth) или нет
|
|
24
|
+
*/
|
|
25
|
+
var isDateFromNextMonth = function isDateFromNextMonth(date, displayedMonth) {
|
|
26
|
+
return date.year() > displayedMonth.year() || date.year() === displayedMonth.year() && date.month() > displayedMonth.month();
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Дата (date) была до начала месяца другой даты(displayedMonth) или нет
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
exports.isDateFromNextMonth = isDateFromNextMonth;
|
|
34
|
+
|
|
35
|
+
var isDateFromPrevMonth = function isDateFromPrevMonth(date, displayedMonth) {
|
|
36
|
+
return date.year() < displayedMonth.year() || date.year() === displayedMonth.year() && date.month() < displayedMonth.month();
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Возвращает массив из недель(каждая неделя - массив из дней)
|
|
40
|
+
*/
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
exports.isDateFromPrevMonth = isDateFromPrevMonth;
|
|
44
|
+
|
|
45
|
+
var weeks = function weeks(firstDay) {
|
|
46
|
+
var lastDay = firstDay.clone().add(35, 'days');
|
|
47
|
+
var day = firstDay.clone();
|
|
48
|
+
var weeks = [];
|
|
49
|
+
|
|
50
|
+
while (day <= lastDay) {
|
|
51
|
+
var week = [];
|
|
52
|
+
|
|
53
|
+
for (var i = 0; i < 7; i++) {
|
|
54
|
+
week.push(day.clone());
|
|
55
|
+
|
|
56
|
+
if (i === 6) {
|
|
57
|
+
weeks.push(week);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
day.add(1, 'days');
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
return weeks;
|
|
65
|
+
};
|
|
66
|
+
/**
|
|
67
|
+
* добавить часы и минуты к дате
|
|
68
|
+
*/
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
exports.weeks = weeks;
|
|
72
|
+
|
|
73
|
+
var addTime = function addTime(date, hours, minutes, secs) {
|
|
74
|
+
return date.clone().add(hours, 'h').add(minutes, 'm').add(secs, 's');
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
exports.addTime = addTime;
|
|
78
|
+
|
|
79
|
+
var withLocale = function withLocale(date, locale) {
|
|
80
|
+
return date.clone().locale(locale);
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* преобразовать дату к moment-объекту
|
|
84
|
+
*/
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
exports.withLocale = withLocale;
|
|
88
|
+
|
|
89
|
+
var parseDate = function parseDate(value, dateFormat) {
|
|
90
|
+
if (value instanceof Date) {
|
|
91
|
+
value = (0, _moment["default"])(value);
|
|
92
|
+
} else if (typeof value === 'string') {
|
|
93
|
+
value = (0, _moment["default"])(value, dateFormat);
|
|
94
|
+
|
|
95
|
+
if (!value.isValid()) {
|
|
96
|
+
// eslint-disable-next-line no-console
|
|
97
|
+
console.warn('Invalid date');
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
return value;
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
exports.parseDate = parseDate;
|
|
105
|
+
|
|
106
|
+
var mapToValue = function mapToValue(val, defaultTime, dateFormat, locale, defaultName) {
|
|
107
|
+
var res = {};
|
|
108
|
+
|
|
109
|
+
if (Array.isArray(val)) {
|
|
110
|
+
(0, _map["default"])(val, function (_ref) {
|
|
111
|
+
var value = _ref.value,
|
|
112
|
+
name = _ref.name;
|
|
113
|
+
|
|
114
|
+
if (!name) {
|
|
115
|
+
name = '';
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
if (!value) {
|
|
119
|
+
res[name] = null;
|
|
120
|
+
} else {
|
|
121
|
+
res[name] = addTime(withLocale(parseDate(value, dateFormat), locale).startOf('day'), defaultTime[name].hours, defaultTime[name].minutes, defaultTime[name].seconds);
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
return res;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
if (!val) {
|
|
128
|
+
return (0, _defineProperty2["default"])({}, defaultName, null);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
res[defaultName] = addTime(withLocale(parseDate(val, dateFormat), locale).startOf('day'), defaultTime[defaultName].hours, defaultTime[defaultName].minutes, defaultTime[defaultName].seconds);
|
|
132
|
+
return res;
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
exports.mapToValue = mapToValue;
|
|
136
|
+
|
|
137
|
+
var mapToDefaultTime = function mapToDefaultTime(val, defaultTime, defaultName) {
|
|
138
|
+
var timeFormat = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'HH:mm:ss';
|
|
139
|
+
|
|
140
|
+
if (Array.isArray(val)) {
|
|
141
|
+
var _result = {};
|
|
142
|
+
(0, _map["default"])(val, function (_ref3) {
|
|
143
|
+
var name = _ref3.name,
|
|
144
|
+
defaultTime = _ref3.defaultTime,
|
|
145
|
+
value = _ref3.value;
|
|
146
|
+
|
|
147
|
+
if ((0, _isNull["default"])(name)) {
|
|
148
|
+
name = '';
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
_result[name] = {
|
|
152
|
+
hours: defaultTime ? (0, _moment["default"])(defaultTime || '00:00', timeFormat).hour() : value && (0, _moment["default"])(value).hour() || 0,
|
|
153
|
+
minutes: defaultTime ? (0, _moment["default"])(defaultTime || '00:00', timeFormat).minute() : value && (0, _moment["default"])(value).minute() || 0,
|
|
154
|
+
seconds: defaultTime ? (0, _moment["default"])(defaultTime || '00:00', timeFormat).second() : value && (0, _moment["default"])(value).second() || 0,
|
|
155
|
+
hasDefaultTime: false
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
if (_result[name].hours || _result[name].minutes || _result[name].seconds || timeFormat) {
|
|
159
|
+
_result[name].hasDefaultTime = true;
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
return _result;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
if (val) {
|
|
166
|
+
return (0, _defineProperty2["default"])({}, defaultName, {
|
|
167
|
+
hours: (0, _moment["default"])(val).hour(),
|
|
168
|
+
minutes: (0, _moment["default"])(val).minute(),
|
|
169
|
+
seconds: (0, _moment["default"])(val).second(),
|
|
170
|
+
hasDefaultTime: true
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
var result = (0, _defineProperty2["default"])({}, defaultName, {
|
|
175
|
+
hours: (0, _moment["default"])(defaultTime, timeFormat).hour(),
|
|
176
|
+
minutes: (0, _moment["default"])(defaultTime, timeFormat).minute(),
|
|
177
|
+
seconds: (0, _moment["default"])(defaultTime, timeFormat).second(),
|
|
178
|
+
hasDefaultTime: false
|
|
179
|
+
});
|
|
180
|
+
|
|
181
|
+
if (result[defaultName].hours || result[defaultName].minutes || result[defaultName].seconds) {
|
|
182
|
+
result[defaultName].hasDefaultTime = true;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
return result;
|
|
186
|
+
};
|
|
187
|
+
|
|
188
|
+
exports.mapToDefaultTime = mapToDefaultTime;
|
|
189
|
+
|
|
190
|
+
var buildDateFormat = function buildDateFormat(dateFormat, timeFormat, divider) {
|
|
191
|
+
return "".concat(dateFormat || '').concat(dateFormat && timeFormat ? divider : '').concat(timeFormat || '');
|
|
192
|
+
};
|
|
193
|
+
|
|
194
|
+
exports.buildDateFormat = buildDateFormat;
|
|
195
|
+
|
|
196
|
+
var replaceDictionary = function replaceDictionary(tmp) {
|
|
197
|
+
switch (tmp) {
|
|
198
|
+
case 'DD':
|
|
199
|
+
return [/[0-3]/, /\d/];
|
|
200
|
+
|
|
201
|
+
case 'MM':
|
|
202
|
+
return [/[01]/, /\d/];
|
|
203
|
+
|
|
204
|
+
case 'YY':
|
|
205
|
+
return [/\d/, /\d/];
|
|
206
|
+
|
|
207
|
+
case 'YYYY':
|
|
208
|
+
return [/[0-2]/, /\d/, /\d/, /\d/];
|
|
209
|
+
|
|
210
|
+
case 'H':
|
|
211
|
+
case 'HH':
|
|
212
|
+
return [/[0-2]/, /\d/];
|
|
213
|
+
|
|
214
|
+
case 'h':
|
|
215
|
+
case 'hh':
|
|
216
|
+
return [/[01]/, /\d/];
|
|
217
|
+
|
|
218
|
+
case 'k':
|
|
219
|
+
case 'kk':
|
|
220
|
+
return [/[12]/, /\d/];
|
|
221
|
+
|
|
222
|
+
case 's':
|
|
223
|
+
case 'm':
|
|
224
|
+
case 'ss':
|
|
225
|
+
case 'mm':
|
|
226
|
+
return [/[0-5]/, /\d/];
|
|
227
|
+
|
|
228
|
+
default:
|
|
229
|
+
return [/\d/];
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
|
|
233
|
+
exports.replaceDictionary = replaceDictionary;
|
|
234
|
+
|
|
235
|
+
var formatToMask = function formatToMask(format) {
|
|
236
|
+
var splitedFormat = format.split(/\b/gi);
|
|
237
|
+
return (0, _flattenDeep["default"])((0, _map["default"])(splitedFormat, function (item) {
|
|
238
|
+
if (item.search(/([a-z])\1+/gi) !== -1) {
|
|
239
|
+
return replaceDictionary(item);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
return item;
|
|
243
|
+
}));
|
|
244
|
+
};
|
|
245
|
+
/**
|
|
246
|
+
* Функция проверки находится ли дата в промежутке max и min
|
|
247
|
+
*/
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
exports.formatToMask = formatToMask;
|
|
251
|
+
|
|
252
|
+
var hasInsideMixMax = function hasInsideMixMax(date, _ref5, dateFormat) {
|
|
253
|
+
var max = _ref5.max,
|
|
254
|
+
min = _ref5.min;
|
|
255
|
+
var currentDate = (0, _moment["default"])(date, dateFormat); // @ts-ignore @fixme не определяется библиотечный метод _f
|
|
256
|
+
// eslint-disable-next-line no-underscore-dangle
|
|
257
|
+
|
|
258
|
+
var hasFormat = function hasFormat(range) {
|
|
259
|
+
return !(0, _isUndefined["default"])((0, _moment["default"])(range)._f);
|
|
260
|
+
};
|
|
261
|
+
|
|
262
|
+
var lessOrEqual = function lessOrEqual(range, dateFormat) {
|
|
263
|
+
return hasFormat(range) ? (0, _moment["default"])(range) <= currentDate : (0, _moment["default"])(range, dateFormat) <= currentDate;
|
|
264
|
+
};
|
|
265
|
+
|
|
266
|
+
var moreOrEqual = function moreOrEqual(range, dateFormat) {
|
|
267
|
+
return hasFormat(range) ? (0, _moment["default"])(range) >= currentDate : (0, _moment["default"])(range, dateFormat) >= currentDate;
|
|
268
|
+
};
|
|
269
|
+
|
|
270
|
+
if (!max && !min) {
|
|
271
|
+
return true;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
if (!max && min && lessOrEqual(min, dateFormat) || max && !min && moreOrEqual(max, dateFormat) || max && min && lessOrEqual(min, dateFormat) && moreOrEqual(max, dateFormat)) {
|
|
275
|
+
return true;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
return false;
|
|
279
|
+
};
|
|
280
|
+
|
|
281
|
+
exports.hasInsideMixMax = hasInsideMixMax;
|
|
282
|
+
|
|
283
|
+
var getDeletedSymbol = function getDeletedSymbol(value, index) {
|
|
284
|
+
return value.substring(index - 1, index);
|
|
285
|
+
};
|
|
286
|
+
|
|
287
|
+
exports.getDeletedSymbol = getDeletedSymbol;
|
|
288
|
+
|
|
289
|
+
var replaceAt = function replaceAt(string, index, replacement) {
|
|
290
|
+
return string.substring(0, index - 1) + replacement + string.substring(index, string.length);
|
|
291
|
+
};
|
|
292
|
+
|
|
293
|
+
exports.replaceAt = replaceAt;
|
|
294
|
+
|
|
295
|
+
var objFromTime = function objFromTime(date) {
|
|
296
|
+
return {
|
|
297
|
+
minutes: date.minutes(),
|
|
298
|
+
seconds: date.seconds(),
|
|
299
|
+
hours: date.hours()
|
|
300
|
+
};
|
|
301
|
+
};
|
|
302
|
+
|
|
303
|
+
exports.objFromTime = objFromTime;
|
|
304
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbnB1dHMvRGF0ZVBpY2tlci91dGlscy50cyJdLCJuYW1lcyI6WyJpc0RhdGVGcm9tTmV4dE1vbnRoIiwiZGF0ZSIsImRpc3BsYXllZE1vbnRoIiwieWVhciIsIm1vbnRoIiwiaXNEYXRlRnJvbVByZXZNb250aCIsIndlZWtzIiwiZmlyc3REYXkiLCJsYXN0RGF5IiwiY2xvbmUiLCJhZGQiLCJkYXkiLCJ3ZWVrIiwiaSIsInB1c2giLCJhZGRUaW1lIiwiaG91cnMiLCJtaW51dGVzIiwic2VjcyIsIndpdGhMb2NhbGUiLCJsb2NhbGUiLCJwYXJzZURhdGUiLCJ2YWx1ZSIsImRhdGVGb3JtYXQiLCJEYXRlIiwiaXNWYWxpZCIsImNvbnNvbGUiLCJ3YXJuIiwibWFwVG9WYWx1ZSIsInZhbCIsImRlZmF1bHRUaW1lIiwiZGVmYXVsdE5hbWUiLCJyZXMiLCJBcnJheSIsImlzQXJyYXkiLCJuYW1lIiwic3RhcnRPZiIsInNlY29uZHMiLCJtYXBUb0RlZmF1bHRUaW1lIiwidGltZUZvcm1hdCIsInJlc3VsdCIsImhvdXIiLCJtaW51dGUiLCJzZWNvbmQiLCJoYXNEZWZhdWx0VGltZSIsImJ1aWxkRGF0ZUZvcm1hdCIsImRpdmlkZXIiLCJyZXBsYWNlRGljdGlvbmFyeSIsInRtcCIsImZvcm1hdFRvTWFzayIsImZvcm1hdCIsInNwbGl0ZWRGb3JtYXQiLCJzcGxpdCIsIml0ZW0iLCJzZWFyY2giLCJoYXNJbnNpZGVNaXhNYXgiLCJtYXgiLCJtaW4iLCJjdXJyZW50RGF0ZSIsImhhc0Zvcm1hdCIsInJhbmdlIiwiX2YiLCJsZXNzT3JFcXVhbCIsIm1vcmVPckVxdWFsIiwiZ2V0RGVsZXRlZFN5bWJvbCIsImluZGV4Iiwic3Vic3RyaW5nIiwicmVwbGFjZUF0Iiwic3RyaW5nIiwicmVwbGFjZW1lbnQiLCJsZW5ndGgiLCJvYmpGcm9tVGltZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFJ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RyxDQUE1QixJQUNJSSxXQURKLEdBRUlELE1BQU0sQ0FBQ0YsU0FBUCxDQUFpQkQsS0FBakIsRUFBd0JHLE1BQU0sQ0FBQ0UsTUFBL0IsQ0FIaUI7QUFBQSxDQUFsQjs7OztBQU1BLElBQU1DLFdBQVcsR0FBRyxTQUFkQSxXQUFjLENBQUN0RSxJQUFEO0FBQUEsU0FBbUI7QUFDMUNnQixJQUFBQSxPQUFPLEVBQUVoQixJQUFJLENBQUNnQixPQUFMLEVBRGlDO0FBRTFDb0IsSUFBQUEsT0FBTyxFQUFFcEMsSUFBSSxDQUFDb0MsT0FBTCxFQUZpQztBQUcxQ3JCLElBQUFBLEtBQUssRUFBRWYsSUFBSSxDQUFDZSxLQUFMO0FBSG1DLEdBQW5CO0FBQUEsQ0FBcEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50LCB7IExvY2FsZVNwZWNpZmllciwgTW9tZW50LCBNb21lbnRGb3JtYXRTcGVjaWZpY2F0aW9uLCBNb21lbnRJbnB1dCB9IGZyb20gJ21vbWVudC9tb21lbnQnXG5pbXBvcnQgZmxhdHRlbkRlZXAgZnJvbSAnbG9kYXNoL2ZsYXR0ZW5EZWVwJ1xuaW1wb3J0IG1hcCBmcm9tICdsb2Rhc2gvbWFwJ1xuaW1wb3J0IGlzVW5kZWZpbmVkIGZyb20gJ2xvZGFzaC9pc1VuZGVmaW5lZCdcbmltcG9ydCBpc051bGwgZnJvbSAnbG9kYXNoL2lzTnVsbCdcblxuaW1wb3J0IHsgRGF0ZVR5cGUsIERhdGVQaWNrZXJWYWx1ZSwgRGVmYXVsdFRpbWUgfSBmcm9tICcuL3R5cGVzJ1xuXG4vKipcbiAqINCU0LDRgtCwIChkYXRlKSDQsdGL0LvQsCDQv9C+0YHQu9C1INC60L7QvdGG0LAg0LzQtdGB0Y/RhtCwINC00YDRg9Cz0L7QuSDQtNCw0YLRiyhkaXNwbGF5ZWRNb250aCkg0LjQu9C4INC90LXRglxuICovXG5leHBvcnQgY29uc3QgaXNEYXRlRnJvbU5leHRNb250aCA9IChkYXRlOiBNb21lbnQsIGRpc3BsYXllZE1vbnRoOiBNb21lbnQpID0+IChcbiAgICBkYXRlLnllYXIoKSA+IGRpc3BsYXllZE1vbnRoLnllYXIoKSB8fFxuICAgIChkYXRlLnllYXIoKSA9PT0gZGlzcGxheWVkTW9udGgueWVhcigpICYmXG4gICAgICAgIGRhdGUubW9udGgoKSA+IGRpc3BsYXllZE1vbnRoLm1vbnRoKCkpXG4pXG5cbi8qKlxuICog0JTQsNGC0LAgKGRhdGUpINCx0YvQu9CwINC00L4g0L3QsNGH0LDQu9CwINC80LXRgdGP0YbQsCDQtNGA0YPQs9C+0Lkg0LTQsNGC0YsoZGlzcGxheWVkTW9udGgpINC40LvQuCDQvdC10YJcbiAqL1xuZXhwb3J0IGNvbnN0IGlzRGF0ZUZyb21QcmV2TW9udGggPSAoZGF0ZTogTW9tZW50LCBkaXNwbGF5ZWRNb250aDogTW9tZW50KSA9PiAoXG4gICAgZGF0ZS55ZWFyKCkgPCBkaXNwbGF5ZWRNb250aC55ZWFyKCkgfHxcbiAgICAoZGF0ZS55ZWFyKCkgPT09IGRpc3BsYXllZE1vbnRoLnllYXIoKSAmJlxuICAgICAgICBkYXRlLm1vbnRoKCkgPCBkaXNwbGF5ZWRNb250aC5tb250aCgpKVxuKVxuXG4vKipcbiAqINCS0L7Qt9Cy0YDQsNGJ0LDQtdGCINC80LDRgdGB0LjQsiDQuNC3INC90LXQtNC10LvRjCjQutCw0LbQtNCw0Y8g0L3QtdC00LXQu9GPIC0g0LzQsNGB0YHQuNCyINC40Lcg0LTQvdC10LkpXG4gKi9cbmV4cG9ydCBjb25zdCB3ZWVrcyA9IChmaXJzdERheTogTW9tZW50KSA9PiB7XG4gICAgY29uc3QgbGFzdERheSA9IGZpcnN0RGF5LmNsb25lKCkuYWRkKDM1LCAnZGF5cycpXG4gICAgY29uc3QgZGF5ID0gZmlyc3REYXkuY2xvbmUoKVxuICAgIGNvbnN0IHdlZWtzID0gW11cblxuICAgIHdoaWxlIChkYXkgPD0gbGFzdERheSkge1xuICAgICAgICBjb25zdCB3ZWVrID0gW11cblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDc7IGkrKykge1xuICAgICAgICAgICAgd2Vlay5wdXNoKGRheS5jbG9uZSgpKVxuICAgICAgICAgICAgaWYgKGkgPT09IDYpIHtcbiAgICAgICAgICAgICAgICB3ZWVrcy5wdXNoKHdlZWspXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkYXkuYWRkKDEsICdkYXlzJylcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB3ZWVrc1xufVxuXG4vKipcbiAqINC00L7QsdCw0LLQuNGC0Ywg0YfQsNGB0Ysg0Lgg0LzQuNC90YPRgtGLINC6INC00LDRgtC1XG4gKi9cbmV4cG9ydCBjb25zdCBhZGRUaW1lID0gKGRhdGU6IE1vbWVudCwgaG91cnM6IG51bWJlciwgbWludXRlczogbnVtYmVyLCBzZWNzOiBudW1iZXIpID0+IGRhdGVcbiAgICAuY2xvbmUoKVxuICAgIC5hZGQoaG91cnMsICdoJylcbiAgICAuYWRkKG1pbnV0ZXMsICdtJylcbiAgICAuYWRkKHNlY3MsICdzJylcblxuZXhwb3J0IGNvbnN0IHdpdGhMb2NhbGUgPSAoZGF0ZTogTW9tZW50LCBsb2NhbGU6IExvY2FsZVNwZWNpZmllcikgPT4gZGF0ZS5jbG9uZSgpLmxvY2FsZShsb2NhbGUpXG5cbi8qKlxuICog0L/RgNC10L7QsdGA0LDQt9C+0LLQsNGC0Ywg0LTQsNGC0YMg0LogbW9tZW50LdC+0LHRitC10LrRgtGDXG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZURhdGUgPSAodmFsdWU6IERhdGVUeXBlLCBkYXRlRm9ybWF0OiBNb21lbnRGb3JtYXRTcGVjaWZpY2F0aW9uKSA9PiB7XG4gICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgICB2YWx1ZSA9IG1vbWVudCh2YWx1ZSlcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdmFsdWUgPSBtb21lbnQodmFsdWUsIGRhdGVGb3JtYXQpXG4gICAgICAgIGlmICghdmFsdWUuaXNWYWxpZCgpKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICAgICAgY29uc29sZS53YXJuKCdJbnZhbGlkIGRhdGUnKVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHZhbHVlXG59XG5cbmV4cG9ydCBjb25zdCBtYXBUb1ZhbHVlID0gKFxuICAgIHZhbDogRGF0ZVBpY2tlclZhbHVlLFxuICAgIGRlZmF1bHRUaW1lOiBEZWZhdWx0VGltZSxcbiAgICBkYXRlRm9ybWF0OiBzdHJpbmcsXG4gICAgbG9jYWxlOiBzdHJpbmcsXG4gICAgZGVmYXVsdE5hbWU6IHN0cmluZyxcbikgPT4ge1xuICAgIGNvbnN0IHJlczogUmVjb3JkPHN0cmluZywgTW9tZW50IHwgbnVsbD4gPSB7fVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsKSkge1xuICAgICAgICBtYXAodmFsLCAoeyB2YWx1ZSwgbmFtZSB9KSA9PiB7XG4gICAgICAgICAgICBpZiAoIW5hbWUpIHtcbiAgICAgICAgICAgICAgICBuYW1lID0gJydcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZXNbbmFtZV0gPSBudWxsXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJlc1tuYW1lXSA9IGFkZFRpbWUoXG4gICAgICAgICAgICAgICAgICAgIHdpdGhMb2NhbGUocGFyc2VEYXRlKHZhbHVlLCBkYXRlRm9ybWF0KSwgbG9jYWxlKS5zdGFydE9mKCdkYXknKSxcbiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdFRpbWVbbmFtZV0uaG91cnMsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRUaW1lW25hbWVdLm1pbnV0ZXMsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRUaW1lW25hbWVdLnNlY29uZHMsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIHJldHVybiByZXNcbiAgICB9XG5cbiAgICBpZiAoIXZhbCkge1xuICAgICAgICByZXR1cm4geyBbZGVmYXVsdE5hbWVdOiBudWxsIH1cbiAgICB9XG5cbiAgICByZXNbZGVmYXVsdE5hbWVdID0gYWRkVGltZShcbiAgICAgICAgd2l0aExvY2FsZShwYXJzZURhdGUodmFsLCBkYXRlRm9ybWF0KSwgbG9jYWxlKS5zdGFydE9mKCdkYXknKSxcbiAgICAgICAgZGVmYXVsdFRpbWVbZGVmYXVsdE5hbWVdLmhvdXJzLFxuICAgICAgICBkZWZhdWx0VGltZVtkZWZhdWx0TmFtZV0ubWludXRlcyxcbiAgICAgICAgZGVmYXVsdFRpbWVbZGVmYXVsdE5hbWVdLnNlY29uZHMsXG4gICAgKVxuXG4gICAgcmV0dXJuIHJlc1xufVxuXG5leHBvcnQgY29uc3QgbWFwVG9EZWZhdWx0VGltZSA9IChcbiAgICB2YWw6IERhdGVQaWNrZXJWYWx1ZSxcbiAgICBkZWZhdWx0VGltZTogc3RyaW5nLFxuICAgIGRlZmF1bHROYW1lOiBzdHJpbmcsXG4gICAgdGltZUZvcm1hdCA9ICdISDptbTpzcycsXG4pID0+IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWwpKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdDogRGVmYXVsdFRpbWUgPSB7fVxuXG4gICAgICAgIG1hcCh2YWwsICh7IG5hbWUsIGRlZmF1bHRUaW1lLCB2YWx1ZSB9KSA9PiB7XG4gICAgICAgICAgICBpZiAoaXNOdWxsKG5hbWUpKSB7XG4gICAgICAgICAgICAgICAgbmFtZSA9ICcnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXN1bHRbbmFtZV0gPSB7XG4gICAgICAgICAgICAgICAgaG91cnM6IGRlZmF1bHRUaW1lXG4gICAgICAgICAgICAgICAgICAgID8gbW9tZW50KGRlZmF1bHRUaW1lIHx8ICcwMDowMCcsIHRpbWVGb3JtYXQpLmhvdXIoKVxuICAgICAgICAgICAgICAgICAgICA6ICh2YWx1ZSAmJiBtb21lbnQodmFsdWUpLmhvdXIoKSkgfHwgMCxcbiAgICAgICAgICAgICAgICBtaW51dGVzOiBkZWZhdWx0VGltZVxuICAgICAgICAgICAgICAgICAgICA/IG1vbWVudChkZWZhdWx0VGltZSB8fCAnMDA6MDAnLCB0aW1lRm9ybWF0KS5taW51dGUoKVxuICAgICAgICAgICAgICAgICAgICA6ICh2YWx1ZSAmJiBtb21lbnQodmFsdWUpLm1pbnV0ZSgpKSB8fCAwLFxuICAgICAgICAgICAgICAgIHNlY29uZHM6IGRlZmF1bHRUaW1lXG4gICAgICAgICAgICAgICAgICAgID8gbW9tZW50KGRlZmF1bHRUaW1lIHx8ICcwMDowMCcsIHRpbWVGb3JtYXQpLnNlY29uZCgpXG4gICAgICAgICAgICAgICAgICAgIDogKHZhbHVlICYmIG1vbWVudCh2YWx1ZSkuc2Vjb25kKCkpIHx8IDAsXG4gICAgICAgICAgICAgICAgaGFzRGVmYXVsdFRpbWU6IGZhbHNlLFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgcmVzdWx0W25hbWVdLmhvdXJzIHx8XG4gICAgICAgIHJlc3VsdFtuYW1lXS5taW51dGVzIHx8XG4gICAgICAgIHJlc3VsdFtuYW1lXS5zZWNvbmRzIHx8XG4gICAgICAgIHRpbWVGb3JtYXRcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHJlc3VsdFtuYW1lXS5oYXNEZWZhdWx0VGltZSA9IHRydWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcblxuICAgICAgICByZXR1cm4gcmVzdWx0XG4gICAgfVxuXG4gICAgaWYgKHZhbCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgW2RlZmF1bHROYW1lXToge1xuICAgICAgICAgICAgICAgIGhvdXJzOiBtb21lbnQodmFsKS5ob3VyKCksXG4gICAgICAgICAgICAgICAgbWludXRlczogbW9tZW50KHZhbCkubWludXRlKCksXG4gICAgICAgICAgICAgICAgc2Vjb25kczogbW9tZW50KHZhbCkuc2Vjb25kKCksXG4gICAgICAgICAgICAgICAgaGFzRGVmYXVsdFRpbWU6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0ge1xuICAgICAgICBbZGVmYXVsdE5hbWVdOiB7XG4gICAgICAgICAgICBob3VyczogbW9tZW50KGRlZmF1bHRUaW1lLCB0aW1lRm9ybWF0KS5ob3VyKCksXG4gICAgICAgICAgICBtaW51dGVzOiBtb21lbnQoZGVmYXVsdFRpbWUsIHRpbWVGb3JtYXQpLm1pbnV0ZSgpLFxuICAgICAgICAgICAgc2Vjb25kczogbW9tZW50KGRlZmF1bHRUaW1lLCB0aW1lRm9ybWF0KS5zZWNvbmQoKSxcbiAgICAgICAgICAgIGhhc0RlZmF1bHRUaW1lOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICAgIHJlc3VsdFtkZWZhdWx0TmFtZV0uaG91cnMgfHxcbiAgICByZXN1bHRbZGVmYXVsdE5hbWVdLm1pbnV0ZXMgfHxcbiAgICByZXN1bHRbZGVmYXVsdE5hbWVdLnNlY29uZHNcbiAgICApIHtcbiAgICAgICAgcmVzdWx0W2RlZmF1bHROYW1lXS5oYXNEZWZhdWx0VGltZSA9IHRydWVcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0XG59XG5cbmV4cG9ydCBjb25zdCBidWlsZERhdGVGb3JtYXQgPSAoZGF0ZUZvcm1hdD86IHN0cmluZywgdGltZUZvcm1hdD86IHN0cmluZywgZGl2aWRlcj86IHN0cmluZykgPT4gYCR7ZGF0ZUZvcm1hdCB8fCAnJ30ke2RhdGVGb3JtYXQgJiYgdGltZUZvcm1hdCA/IGRpdmlkZXIgOiAnJ30ke3RpbWVGb3JtYXQgfHwgJyd9YFxuXG5leHBvcnQgY29uc3QgcmVwbGFjZURpY3Rpb25hcnkgPSAodG1wOiBzdHJpbmcgfCBSZWdFeHApID0+IHtcbiAgICBzd2l0Y2ggKHRtcCkge1xuICAgICAgICBjYXNlICdERCc6XG4gICAgICAgICAgICByZXR1cm4gWy9bMC0zXS8sIC9cXGQvXVxuICAgICAgICBjYXNlICdNTSc6XG4gICAgICAgICAgICByZXR1cm4gWy9bMDFdLywgL1xcZC9dXG4gICAgICAgIGNhc2UgJ1lZJzpcbiAgICAgICAgICAgIHJldHVybiBbL1xcZC8sIC9cXGQvXVxuICAgICAgICBjYXNlICdZWVlZJzpcbiAgICAgICAgICAgIHJldHVybiBbL1swLTJdLywgL1xcZC8sIC9cXGQvLCAvXFxkL11cbiAgICAgICAgY2FzZSAnSCc6XG4gICAgICAgIGNhc2UgJ0hIJzpcbiAgICAgICAgICAgIHJldHVybiBbL1swLTJdLywgL1xcZC9dXG4gICAgICAgIGNhc2UgJ2gnOlxuICAgICAgICBjYXNlICdoaCc6XG4gICAgICAgICAgICByZXR1cm4gWy9bMDFdLywgL1xcZC9dXG4gICAgICAgIGNhc2UgJ2snOlxuICAgICAgICBjYXNlICdrayc6XG4gICAgICAgICAgICByZXR1cm4gWy9bMTJdLywgL1xcZC9dXG4gICAgICAgIGNhc2UgJ3MnOlxuICAgICAgICBjYXNlICdtJzpcbiAgICAgICAgY2FzZSAnc3MnOlxuICAgICAgICBjYXNlICdtbSc6XG4gICAgICAgICAgICByZXR1cm4gWy9bMC01XS8sIC9cXGQvXVxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFsvXFxkL11cbiAgICB9XG59XG5cbmV4cG9ydCBjb25zdCBmb3JtYXRUb01hc2sgPSAoZm9ybWF0OiBzdHJpbmcpID0+IHtcbiAgICBjb25zdCBzcGxpdGVkRm9ybWF0ID0gZm9ybWF0LnNwbGl0KC9cXGIvZ2kpXG5cbiAgICByZXR1cm4gZmxhdHRlbkRlZXAoXG4gICAgICAgIG1hcChzcGxpdGVkRm9ybWF0LCAoaXRlbTogc3RyaW5nKTogKFJlZ0V4cCB8IHN0cmluZykgfCBBcnJheTxSZWdFeHAgfCBzdHJpbmc+ID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtLnNlYXJjaCgvKFthLXpdKVxcMSsvZ2kpICE9PSAtMSkge1xuICAgICAgICAgICAgICAgIHJldHVybiByZXBsYWNlRGljdGlvbmFyeShpdGVtKVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gaXRlbVxuICAgICAgICB9KSxcbiAgICApXG59XG5cbi8qKlxuICog0KTRg9C90LrRhtC40Y8g0L/RgNC+0LLQtdGA0LrQuCDQvdCw0YXQvtC00LjRgtGB0Y8g0LvQuCDQtNCw0YLQsCDQsiDQv9GA0L7QvNC10LbRg9GC0LrQtSBtYXgg0LggbWluXG4gKi9cbmV4cG9ydCBjb25zdCBoYXNJbnNpZGVNaXhNYXggPSAoXG4gICAgZGF0ZTogc3RyaW5nLFxuICAgIHsgbWF4LCBtaW4gfTogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgICBkYXRlRm9ybWF0OiBNb21lbnRGb3JtYXRTcGVjaWZpY2F0aW9uLFxuKSA9PiB7XG4gICAgY29uc3QgY3VycmVudERhdGUgPSBtb21lbnQoZGF0ZSwgZGF0ZUZvcm1hdClcbiAgICAvLyBAdHMtaWdub3JlIEBmaXhtZSDQvdC1INC+0L/RgNC10LTQtdC70Y/QtdGC0YHRjyDQsdC40LHQu9C40L7RgtC10YfQvdGL0Lkg0LzQtdGC0L7QtCBfZlxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlcnNjb3JlLWRhbmdsZVxuICAgIGNvbnN0IGhhc0Zvcm1hdCA9IChyYW5nZTogTW9tZW50SW5wdXQpID0+ICFpc1VuZGVmaW5lZChtb21lbnQocmFuZ2UpLl9mKVxuXG4gICAgY29uc3QgbGVzc09yRXF1YWwgPSAocmFuZ2U6IE1vbWVudElucHV0LCBkYXRlRm9ybWF0OiBNb21lbnRGb3JtYXRTcGVjaWZpY2F0aW9uKSA9PiAoaGFzRm9ybWF0KHJhbmdlKVxuICAgICAgICA/IG1vbWVudChyYW5nZSkgPD0gY3VycmVudERhdGVcbiAgICAgICAgOiBtb21lbnQocmFuZ2UsIGRhdGVGb3JtYXQpIDw9IGN1cnJlbnREYXRlKVxuXG4gICAgY29uc3QgbW9yZU9yRXF1YWwgPSAocmFuZ2U6IE1vbWVudElucHV0LCBkYXRlRm9ybWF0OiBNb21lbnRGb3JtYXRTcGVjaWZpY2F0aW9uKSA9PiAoXG4gICAgICAgIGhhc0Zvcm1hdChyYW5nZSlcbiAgICAgICAgICAgID8gbW9tZW50KHJhbmdlKSA+PSBjdXJyZW50RGF0ZVxuICAgICAgICAgICAgOiBtb21lbnQocmFuZ2UsIGRhdGVGb3JtYXQpID49IGN1cnJlbnREYXRlKVxuXG4gICAgaWYgKCFtYXggJiYgIW1pbikgeyByZXR1cm4gdHJ1ZSB9XG5cbiAgICBpZiAoXG4gICAgICAgICghbWF4ICYmIG1pbiAmJiBsZXNzT3JFcXVhbChtaW4sIGRhdGVGb3JtYXQpKSB8fFxuICAgIChtYXggJiYgIW1pbiAmJiBtb3JlT3JFcXVhbChtYXgsIGRhdGVGb3JtYXQpKSB8fFxuICAgIChtYXggJiYgbWluICYmIGxlc3NPckVxdWFsKG1pbiwgZGF0ZUZvcm1hdCkgJiYgbW9yZU9yRXF1YWwobWF4LCBkYXRlRm9ybWF0KSlcbiAgICApIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2Vcbn1cblxuZXhwb3J0IGNvbnN0IGdldERlbGV0ZWRTeW1ib2wgPSAodmFsdWU6IHN0cmluZywgaW5kZXg6IG51bWJlcikgPT4gdmFsdWUuc3Vic3RyaW5nKGluZGV4IC0gMSwgaW5kZXgpXG5cbmV4cG9ydCBjb25zdCByZXBsYWNlQXQgPSAoc3RyaW5nOiBzdHJpbmcsIGluZGV4OiBudW1iZXIsIHJlcGxhY2VtZW50OiBzdHJpbmcpID0+IChcbiAgICBzdHJpbmcuc3Vic3RyaW5nKDAsIGluZGV4IC0gMSkgK1xuICAgICAgICByZXBsYWNlbWVudCArXG4gICAgICAgIHN0cmluZy5zdWJzdHJpbmcoaW5kZXgsIHN0cmluZy5sZW5ndGgpXG4pXG5cbmV4cG9ydCBjb25zdCBvYmpGcm9tVGltZSA9IChkYXRlOiBNb21lbnQpID0+ICh7XG4gICAgbWludXRlczogZGF0ZS5taW51dGVzKCksXG4gICAgc2Vjb25kczogZGF0ZS5zZWNvbmRzKCksXG4gICAgaG91cnM6IGRhdGUuaG91cnMoKSxcbn0pXG4iXX0=
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import React, { ChangeEvent, KeyboardEvent, LegacyRef } from 'react';
|
|
2
|
+
import { TBaseInputProps, TBaseProps } from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Контрол Input
|
|
5
|
+
* @reactProps {boolean} length - максимальная длина значения
|
|
6
|
+
* @reactProps {string} value - значение поля
|
|
7
|
+
* @reactProps {string} placeholder - плэйсхолдер
|
|
8
|
+
* @reactProps {boolean} disabled - флаг неактивности поля
|
|
9
|
+
* @reactProps {boolean} disabled - флаг только для чтения
|
|
10
|
+
* @reactProps {boolean} autoFocus - автофокус
|
|
11
|
+
* @reactProps {function} onFocus - callback на фокус
|
|
12
|
+
* @reactProps {function} onClick - callback на клик
|
|
13
|
+
* @reactProps {function} onPaste - callback при вставке в инпут
|
|
14
|
+
* @reactProps {function} onBlur - callback при блюре инпута
|
|
15
|
+
* @reactProps {function} onChange - callback при изменение инпута
|
|
16
|
+
* @reactProps {function} onKeyDown - callback при нажатии на кнопку клавиатуры
|
|
17
|
+
* @reactProps {boolean} autoFocus - флаг автофокуса
|
|
18
|
+
* @reactProps {string} className - css-класс
|
|
19
|
+
* @reactProps {object} style - объект стилей
|
|
20
|
+
* @reactProps {boolean} disabled - флаг неактивности поля
|
|
21
|
+
* @reactProps {string} type - тип поля
|
|
22
|
+
*/
|
|
23
|
+
declare type Props = TBaseProps & TBaseInputProps<any> & {
|
|
24
|
+
autoFocus: boolean;
|
|
25
|
+
checked: boolean;
|
|
26
|
+
inputRef?: LegacyRef<HTMLInputElement>;
|
|
27
|
+
label?: string;
|
|
28
|
+
length?: string;
|
|
29
|
+
max?: number;
|
|
30
|
+
min?: number;
|
|
31
|
+
name: string;
|
|
32
|
+
onClick(): void;
|
|
33
|
+
onKeyDown(arg: KeyboardEvent): void;
|
|
34
|
+
onPaste(): void;
|
|
35
|
+
placeholder?: string;
|
|
36
|
+
step?: string | number;
|
|
37
|
+
tabIndex: number;
|
|
38
|
+
type: string;
|
|
39
|
+
};
|
|
40
|
+
export declare class Input extends React.Component<Props> {
|
|
41
|
+
input: HTMLInputElement | null;
|
|
42
|
+
constructor(props: Props);
|
|
43
|
+
focus(): void;
|
|
44
|
+
blur(): void;
|
|
45
|
+
handleChange(e: ChangeEvent<HTMLInputElement>): void;
|
|
46
|
+
setRef(node: HTMLInputElement): void;
|
|
47
|
+
handleKeyDown: (evt: KeyboardEvent<HTMLInputElement>) => void;
|
|
48
|
+
render(): JSX.Element;
|
|
49
|
+
static defaultProps: Props;
|
|
50
|
+
}
|
|
51
|
+
export {};
|