intelicoreact 0.0.4 → 0.0.8
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/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +6 -2
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.scss +91 -60
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.stories.js +2 -1
- package/dist/Atomic/FormElements/DateTime/DateTime.stories.js +1 -1
- package/dist/Atomic/FormElements/Dropdown/Dropdown.js +64 -32
- package/dist/Atomic/FormElements/Dropdown/Dropdown.scss +26 -3
- package/dist/Atomic/FormElements/Dropdown/Dropdown.stories.js +40 -9
- package/dist/Atomic/FormElements/Input/Input.js +141 -97
- package/dist/Atomic/FormElements/Input/Input.scss +18 -15
- package/dist/Atomic/FormElements/Input/Input.stories.js +46 -29
- package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +89 -0
- package/dist/Atomic/FormElements/{Calendar/Calendar.stories.js → InputCalendar/InputCalendar.stories.js} +19 -20
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +234 -0
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.scss +626 -0
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.stories.js +91 -0
- package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +491 -0
- package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +156 -0
- package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +46 -0
- package/dist/Atomic/FormElements/InputDateRange/dependencies.js +249 -0
- package/dist/Atomic/FormElements/Label/Label.js +3 -10
- package/dist/Atomic/FormElements/Label/Label.scss +2 -0
- package/dist/Atomic/FormElements/Label/Label.stories.js +5 -4
- package/dist/Atomic/FormElements/Modal/Modal.stories.js +64 -18
- package/dist/Atomic/FormElements/NumericInput/NumericInput.js +254 -0
- package/dist/Atomic/FormElements/NumericInput/NumericInput.scss +135 -0
- package/dist/Atomic/FormElements/NumericInput/NumericInput.stories.js +121 -0
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +167 -0
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.scss +101 -0
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.stories.js +81 -0
- package/dist/Atomic/FormElements/Table/Table.scss +1 -1
- package/dist/Atomic/FormElements/Textarea/Textarea.scss +1 -1
- package/dist/Atomic/MainMenu/MainMenu.scss +2 -2
- package/dist/Atomic/UI/Accordion/Accordion.scss +2 -2
- package/dist/Atomic/UI/Arrow/Arrow.js +80 -0
- package/dist/Atomic/UI/Arrow/Arrow.scss +19 -0
- package/dist/Atomic/UI/Arrow/Arrow.stories.js +46 -0
- package/dist/Atomic/UI/Button/Button.js +4 -2
- package/dist/Atomic/UI/Button/Button.scss +26 -0
- package/dist/Atomic/UI/Button/Button.stories.js +2 -2
- package/dist/Atomic/UI/Calendar/Calendar.js +146 -0
- package/dist/Atomic/UI/Calendar/Calendar.scss +544 -0
- package/dist/Atomic/UI/Calendar/Calendar.stories.js +38 -0
- package/dist/Atomic/UI/Price/Price.js +1 -0
- package/dist/Atomic/UI/Status/Status.scss +1 -1
- package/dist/Constants/index.constants.js +8 -0
- package/dist/Functions/inputExecutor.js +58 -0
- package/dist/Functions/useClickOutside.js +25 -0
- package/dist/Functions/utils.js +10 -2
- package/dist/Molecular/Datepicker/Datepicker.js +451 -0
- package/dist/Molecular/Datepicker/Datepicker.scss +8 -0
- package/dist/Molecular/Datepicker/Datepicker.stories.js +44 -0
- package/dist/Molecular/Datepicker/components/Calendar.js +156 -0
- package/dist/Molecular/FormElements/FormElement.js +40 -0
- package/dist/Molecular/FormElements/FormElement.scss +8 -0
- package/dist/Molecular/FormElements/FormElement.stories.js +73 -0
- package/dist/scss/_vars.scss +3 -1
- package/dist/scss/main.scss +3 -3
- package/package.json +9 -4
- package/src/Atomic/FormElements/CheckboxInput/CheckboxInput.js +12 -2
- package/src/Atomic/FormElements/CheckboxInput/CheckboxInput.scss +91 -60
- package/src/Atomic/FormElements/CheckboxInput/CheckboxInput.stories.js +4 -3
- package/src/Atomic/FormElements/DateTime/DateTime.stories.js +1 -1
- package/src/Atomic/FormElements/Dropdown/Dropdown.js +57 -19
- package/src/Atomic/FormElements/Dropdown/Dropdown.scss +26 -3
- package/src/Atomic/FormElements/Dropdown/Dropdown.stories.js +37 -15
- package/src/Atomic/FormElements/Input/Input.js +136 -79
- package/src/Atomic/FormElements/Input/Input.scss +18 -15
- package/src/Atomic/FormElements/Input/Input.stories.js +48 -31
- package/src/Atomic/FormElements/InputCalendar/InputCalendar.js +43 -0
- package/src/Atomic/FormElements/InputCalendar/InputCalendar.stories.js +27 -0
- package/src/Atomic/FormElements/InputDateRange/InputDateRange.js +214 -0
- package/src/Atomic/FormElements/InputDateRange/InputDateRange.scss +626 -0
- package/src/Atomic/FormElements/InputDateRange/InputDateRange.stories.js +61 -0
- package/src/Atomic/FormElements/InputDateRange/components/Datepicker.js +412 -0
- package/src/Atomic/FormElements/InputDateRange/components/OpenedPart.js +114 -0
- package/src/Atomic/FormElements/InputDateRange/components/SelectItem.js +24 -0
- package/src/Atomic/FormElements/InputDateRange/dependencies.js +161 -0
- package/src/Atomic/FormElements/Label/Label.js +3 -4
- package/src/Atomic/FormElements/Label/Label.scss +2 -0
- package/src/Atomic/FormElements/Label/Label.stories.js +5 -4
- package/src/Atomic/FormElements/Modal/Modal.stories.js +60 -15
- package/src/Atomic/FormElements/NumericInput/NumericInput.js +220 -0
- package/src/Atomic/FormElements/NumericInput/NumericInput.scss +135 -0
- package/src/Atomic/FormElements/NumericInput/NumericInput.stories.js +94 -0
- package/src/Atomic/FormElements/RangeCalendar/RangeCalendar.js +146 -0
- package/src/Atomic/FormElements/RangeCalendar/RangeCalendar.scss +101 -0
- package/src/Atomic/FormElements/RangeCalendar/RangeCalendar.stories.js +54 -0
- package/src/Atomic/FormElements/Table/Table.scss +1 -1
- package/src/Atomic/FormElements/Textarea/Textarea.scss +1 -1
- package/src/Atomic/MainMenu/MainMenu.scss +2 -2
- package/src/Atomic/UI/Accordion/Accordion.scss +2 -2
- package/src/Atomic/UI/Arrow/Arrow.js +41 -0
- package/src/Atomic/UI/Arrow/Arrow.scss +19 -0
- package/src/Atomic/UI/Arrow/Arrow.stories.js +32 -0
- package/src/Atomic/UI/Button/Button.js +3 -3
- package/src/Atomic/UI/Button/Button.scss +26 -0
- package/src/Atomic/UI/Button/Button.stories.js +4 -3
- package/src/Atomic/{FormElements → UI}/Calendar/Calendar.js +26 -23
- package/src/Atomic/UI/Calendar/Calendar.scss +544 -0
- package/src/Atomic/UI/Calendar/Calendar.stories.js +24 -0
- package/src/Atomic/UI/Price/Price.js +1 -0
- package/src/Atomic/UI/Status/Status.scss +1 -1
- package/src/Constants/index.constants.js +41 -0
- package/src/Functions/inputExecutor.js +62 -0
- package/src/Functions/useClickOutside.js +15 -0
- package/src/Functions/utils.js +10 -1
- package/src/Molecular/Datepicker/Datepicker.js +346 -0
- package/src/Molecular/Datepicker/Datepicker.scss +8 -0
- package/src/Molecular/Datepicker/Datepicker.stories.js +27 -0
- package/src/Molecular/Datepicker/components/Calendar.js +118 -0
- package/src/Molecular/FormElements/FormElement.js +18 -0
- package/src/Molecular/FormElements/FormElement.scss +8 -0
- package/src/Molecular/FormElements/FormElement.stories.js +59 -0
- package/src/scss/_vars.scss +3 -1
- package/src/scss/main.scss +3 -3
- package/dist/Atomic/FormElements/Calendar/Calendar.js +0 -127
- package/dist/Atomic/FormElements/Calendar/Calendar.scss +0 -498
- package/dist/scss/anme/_anme-bootstrap-grid.scss +0 -748
- package/dist/scss/anme/_anme-elements.scss +0 -269
- package/dist/scss/anme/_anme-grid.scss +0 -111
- package/dist/scss/anme/_anme-justify.scss +0 -111
- package/dist/scss/anme/_anme-mixins-media.scss +0 -116
- package/dist/scss/anme/_anme-mixins.scss +0 -166
- package/dist/scss/anme/_anme-normalize.scss +0 -8
- package/dist/scss/anme/_anme-overall.scss +0 -34
- package/dist/scss/anme/_anme-padding-margins.scss +0 -419
- package/dist/scss/anme/_anme-table.scss +0 -81
- package/dist/scss/anme/_anme-theme.scss +0 -275
- package/dist/scss/anme/_anme-vars.scss +0 -91
- package/dist/scss/anme/_code-styling.scss +0 -23
- package/dist/scss/anme/styles.scss +0 -12
- package/src/Atomic/FormElements/Calendar/Calendar.scss +0 -498
- package/src/Atomic/FormElements/Calendar/Calendar.stories.js +0 -26
- package/src/scss/anme/_anme-bootstrap-grid.scss +0 -748
- package/src/scss/anme/_anme-elements.scss +0 -269
- package/src/scss/anme/_anme-grid.scss +0 -111
- package/src/scss/anme/_anme-justify.scss +0 -111
- package/src/scss/anme/_anme-mixins-media.scss +0 -116
- package/src/scss/anme/_anme-mixins.scss +0 -166
- package/src/scss/anme/_anme-normalize.scss +0 -8
- package/src/scss/anme/_anme-overall.scss +0 -34
- package/src/scss/anme/_anme-padding-margins.scss +0 -419
- package/src/scss/anme/_anme-table.scss +0 -81
- package/src/scss/anme/_anme-theme.scss +0 -275
- package/src/scss/anme/_anme-vars.scss +0 -91
- package/src/scss/anme/_code-styling.scss +0 -23
- package/src/scss/anme/styles.scss +0 -12
|
@@ -15,47 +15,51 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
15
15
|
|
|
16
16
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
17
|
|
|
18
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
19
|
-
|
|
20
18
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
19
|
|
|
22
20
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
23
21
|
|
|
24
|
-
var
|
|
22
|
+
var _reactInputMask = _interopRequireDefault(require("react-input-mask"));
|
|
25
23
|
|
|
26
|
-
var
|
|
24
|
+
var _index = require("../../../Constants/index.constants");
|
|
27
25
|
|
|
28
|
-
require("
|
|
26
|
+
var _inputExecutor = require("../../../Functions/inputExecutor");
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
require("./Input.scss");
|
|
31
29
|
|
|
32
30
|
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); }
|
|
33
31
|
|
|
34
32
|
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; }
|
|
35
33
|
|
|
34
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
35
|
+
|
|
36
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
37
|
+
|
|
36
38
|
var Input = function Input(_ref) {
|
|
37
|
-
var
|
|
38
|
-
|
|
39
|
+
var onChange = _ref.onChange,
|
|
40
|
+
onBlur = _ref.onBlur,
|
|
41
|
+
onFocus = _ref.onFocus,
|
|
42
|
+
onKeyUp = _ref.onKeyUp,
|
|
43
|
+
isNotBlinkErrors = _ref.isNotBlinkErrors,
|
|
44
|
+
isPriceInput = _ref.isPriceInput,
|
|
45
|
+
isOnlyNumber = _ref.isOnlyNumber,
|
|
46
|
+
isOnlyString = _ref.isOnlyString,
|
|
47
|
+
isTwoDigitAfterDot = _ref.isTwoDigitAfterDot,
|
|
39
48
|
disabled = _ref.disabled,
|
|
40
49
|
withDelete = _ref.withDelete,
|
|
41
|
-
|
|
42
|
-
min = _ref.min,
|
|
43
|
-
max = _ref.max,
|
|
44
|
-
_ref$value = _ref.value,
|
|
45
|
-
value = _ref$value === void 0 ? min : _ref$value,
|
|
50
|
+
value = _ref.value,
|
|
46
51
|
placeholder = _ref.placeholder,
|
|
47
|
-
hint = _ref.hint,
|
|
48
|
-
label = _ref.label,
|
|
49
|
-
hintSide = _ref.hintSide,
|
|
50
52
|
className = _ref.className,
|
|
51
|
-
isLabelBold = _ref.isLabelBold,
|
|
52
53
|
_ref$type = _ref.type,
|
|
53
54
|
type = _ref$type === void 0 ? 'text' : _ref$type,
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
mask = _ref.mask,
|
|
56
|
+
maskChar = _ref.maskChar,
|
|
57
|
+
formatChars = _ref.formatChars,
|
|
58
|
+
error = _ref.error,
|
|
56
59
|
icon = _ref.icon,
|
|
57
|
-
|
|
58
|
-
|
|
60
|
+
symbolsLimit = _ref.symbolsLimit,
|
|
61
|
+
blinkTime = _ref.blinkTime;
|
|
62
|
+
var DEFAULT_BLINK_TIME = 100; // STATES
|
|
59
63
|
|
|
60
64
|
var _useState = (0, _react.useState)(false),
|
|
61
65
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
@@ -64,98 +68,138 @@ var Input = function Input(_ref) {
|
|
|
64
68
|
|
|
65
69
|
var _useState3 = (0, _react.useState)(false),
|
|
66
70
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
67
|
-
|
|
68
|
-
|
|
71
|
+
isEditing = _useState4[0],
|
|
72
|
+
setEditing = _useState4[1];
|
|
73
|
+
|
|
74
|
+
var inputRef = (0, _react.useRef)(null);
|
|
75
|
+
var previousValueRef = (0, _react.useRef)(value);
|
|
69
76
|
|
|
70
77
|
var _useState5 = (0, _react.useState)(false),
|
|
71
78
|
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
72
|
-
|
|
73
|
-
|
|
79
|
+
isAttemptToChange = _useState6[0],
|
|
80
|
+
setIsAttemptToChange = _useState6[1];
|
|
81
|
+
|
|
82
|
+
var _useState7 = (0, _react.useState)(false),
|
|
83
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
|
84
|
+
isToHighlightError = _useState8[0],
|
|
85
|
+
setIsToHighlightError = _useState8[1];
|
|
86
|
+
|
|
87
|
+
var onlyNumbers = _inputExecutor.formatInput.onlyNumbers,
|
|
88
|
+
onlyString = _inputExecutor.formatInput.onlyString;
|
|
89
|
+
var _formatInput$priceInp = _inputExecutor.formatInput.priceInput,
|
|
90
|
+
addCommas = _formatInput$priceInp.addCommas,
|
|
91
|
+
removeComma = _formatInput$priceInp.removeComma; // HANDLES
|
|
92
|
+
|
|
93
|
+
var handle = {
|
|
94
|
+
change: function change(e) {
|
|
95
|
+
var inputValue = e.target ? e.target.value : e;
|
|
96
|
+
|
|
97
|
+
if (symbolsLimit && inputValue.length > +symbolsLimit) {
|
|
98
|
+
inputValue = inputValue.substring(0, +symbolsLimit);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (isOnlyNumber && !isTwoDigitAfterDot) inputValue = onlyNumbers(inputValue);
|
|
102
|
+
if (isTwoDigitAfterDot) inputValue = onlyNumbers(inputValue, true);
|
|
103
|
+
if (isOnlyString) inputValue = onlyString(inputValue);
|
|
104
|
+
onChange(inputValue.toString());
|
|
105
|
+
},
|
|
106
|
+
toggleEdit: function toggleEdit() {
|
|
107
|
+
setEditing(!isEditing);
|
|
108
|
+
onChange('');
|
|
109
|
+
},
|
|
110
|
+
focus: function focus(e) {
|
|
111
|
+
setIsFocused(true);
|
|
112
|
+
if (isPriceInput && isOnlyNumber && !isTwoDigitAfterDot) onChange(removeComma(value));
|
|
113
|
+
if (onFocus) onFocus(e);
|
|
114
|
+
},
|
|
115
|
+
blur: function blur(e) {
|
|
116
|
+
setIsFocused(false);
|
|
117
|
+
setEditing(false);
|
|
74
118
|
|
|
75
|
-
|
|
119
|
+
if (isPriceInput && isOnlyNumber && !isTwoDigitAfterDot) {
|
|
120
|
+
onChange(addCommas(value));
|
|
121
|
+
}
|
|
76
122
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
if (totalValue >= (min !== null && min !== void 0 ? min : -Infinity) && totalValue <= (max !== null && max !== void 0 ? max : Infinity)) onChange(totalValue);
|
|
81
|
-
return;
|
|
82
|
-
}
|
|
123
|
+
if (isTwoDigitAfterDot && !isPriceInput) {
|
|
124
|
+
onChange(cutOffsingleDot(value));
|
|
125
|
+
}
|
|
83
126
|
|
|
84
|
-
|
|
85
|
-
|
|
127
|
+
if (onBlur) onBlur(e);
|
|
128
|
+
},
|
|
129
|
+
keyUp: function keyUp(e) {
|
|
130
|
+
if (!isNotBlinkErrors) {
|
|
131
|
+
var _previousValueRef$cur;
|
|
132
|
+
|
|
133
|
+
var changedValue = '' + (value !== null && value !== void 0 ? value : '');
|
|
134
|
+
var previousValue = '' + ((_previousValueRef$cur = previousValueRef.current) !== null && _previousValueRef$cur !== void 0 ? _previousValueRef$cur : '');
|
|
135
|
+
|
|
136
|
+
var currentSet = function () {
|
|
137
|
+
if (previousValue.length < changedValue.length) return value.slice(previousValue.length - changedValue.length);else return changedValue.includes(e.key) ? e.key : '';
|
|
138
|
+
}();
|
|
86
139
|
|
|
87
|
-
|
|
88
|
-
|
|
140
|
+
if (!_index.KEYBOARD_SERVICE_KEYS.includes(e.key) && changedValue === previousValue) setIsAttemptToChange(true);
|
|
141
|
+
console.log(changedValue, previousValue);
|
|
142
|
+
if (_index.KEYBOARD_SERVICE_KEYS.includes(e.key) || !currentSet) previousValueRef.current = value;else previousValueRef.current = previousValue + currentSet[0];
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
if (onKeyUp) onKeyUp(e.keyCode, e);
|
|
146
|
+
}
|
|
89
147
|
};
|
|
90
148
|
|
|
149
|
+
function cutOffsingleDot(value) {
|
|
150
|
+
return value.slice(-1) === '.' ? value.slice(0, -1) : value;
|
|
151
|
+
}
|
|
152
|
+
|
|
91
153
|
(0, _react.useEffect)(function () {
|
|
92
|
-
if (isEditing)
|
|
93
|
-
inputRef.current.focus();
|
|
94
|
-
}
|
|
154
|
+
if (isEditing) inputRef.current.focus();
|
|
95
155
|
}, [isEditing, isFocused]);
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
isBold: isLabelBold,
|
|
101
|
-
label: label,
|
|
102
|
-
hint: hint,
|
|
103
|
-
hintSide: hintSide,
|
|
104
|
-
isRequired: isRequired
|
|
105
|
-
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
106
|
-
onMouseEnter: function onMouseEnter() {
|
|
107
|
-
return setOnInputHover(true);
|
|
108
|
-
},
|
|
109
|
-
onMouseLeave: function onMouseLeave() {
|
|
110
|
-
return setOnInputHover(false);
|
|
111
|
-
},
|
|
112
|
-
className: (0, _classnames.default)("input-classic__wrap", (0, _defineProperty2.default)({}, "input-classic__wrap_focus", isFocused), (0, _defineProperty2.default)({}, "input-classic__wrap_error", error), (0, _defineProperty2.default)({}, "input-classic__wrap_disabled", disabled))
|
|
113
|
-
}, /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({
|
|
114
|
-
ref: inputRef,
|
|
115
|
-
className: "input-classic__input",
|
|
116
|
-
type: isNumeric ? 'number' : type,
|
|
117
|
-
onChange: function onChange(e) {
|
|
118
|
-
return changeHandler(e.target.value);
|
|
119
|
-
},
|
|
156
|
+
|
|
157
|
+
var uniProps = _objectSpread(_objectSpread({
|
|
158
|
+
className: "input ".concat(className),
|
|
159
|
+
placeholder: placeholder,
|
|
120
160
|
value: value || '',
|
|
121
161
|
disabled: disabled,
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
162
|
+
onChange: handle.change,
|
|
163
|
+
onFocus: handle.focus,
|
|
164
|
+
onBlur: handle.blur,
|
|
165
|
+
onKeyUp: handle.keyUp
|
|
166
|
+
}, maskChar ? {
|
|
167
|
+
maskChar: maskChar
|
|
168
|
+
} : {}), formatChars ? {
|
|
169
|
+
formatChars: formatChars
|
|
170
|
+
} : {});
|
|
171
|
+
|
|
172
|
+
function renderInput() {
|
|
173
|
+
if (mask) {
|
|
174
|
+
return /*#__PURE__*/_react.default.createElement(_reactInputMask.default, (0, _extends2.default)({}, uniProps, {
|
|
175
|
+
ref: inputRef,
|
|
176
|
+
mask: mask
|
|
177
|
+
}));
|
|
178
|
+
}
|
|
125
179
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
className: (0, _classnames.default)("input-classic__num-btn", {
|
|
146
|
-
disabled: value === max
|
|
147
|
-
})
|
|
148
|
-
}, /*#__PURE__*/_react.default.createElement(_reactFeather.Plus, null))), withDelete && onInputHover && !isNumeric && /*#__PURE__*/_react.default.createElement("button", {
|
|
149
|
-
className: (0, _classnames.default)("input-classic__close", {
|
|
180
|
+
return /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({}, uniProps, {
|
|
181
|
+
ref: inputRef,
|
|
182
|
+
type: isPriceInput ? 'text' : type
|
|
183
|
+
}));
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
(0, _react.useEffect)(function () {
|
|
187
|
+
if (!isNotBlinkErrors && isAttemptToChange) {
|
|
188
|
+
setIsAttemptToChange(null);
|
|
189
|
+
setIsToHighlightError(true);
|
|
190
|
+
setTimeout(function () {
|
|
191
|
+
setIsToHighlightError(false);
|
|
192
|
+
}, blinkTime || DEFAULT_BLINK_TIME);
|
|
193
|
+
}
|
|
194
|
+
}, [isAttemptToChange]);
|
|
195
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
196
|
+
className: (0, _classnames.default)("input__wrap", (0, _defineProperty2.default)({}, "input__wrap_focus", isFocused), (0, _defineProperty2.default)({}, "input__wrap_error", error || isToHighlightError), (0, _defineProperty2.default)({}, "input__wrap_disabled", disabled))
|
|
197
|
+
}, renderInput(), icon, withDelete && /*#__PURE__*/_react.default.createElement("span", {
|
|
198
|
+
className: (0, _classnames.default)("input__close", {
|
|
150
199
|
hidden: !value
|
|
151
200
|
}),
|
|
152
|
-
onClick:
|
|
153
|
-
|
|
154
|
-
onChange('');
|
|
155
|
-
}
|
|
156
|
-
}), icon !== null && icon !== void 0 ? icon : null), error && /*#__PURE__*/_react.default.createElement("span", {
|
|
157
|
-
className: "input-classic__error"
|
|
158
|
-
}, error));
|
|
201
|
+
onClick: handle.toggleEdit
|
|
202
|
+
}));
|
|
159
203
|
};
|
|
160
204
|
|
|
161
205
|
var _default = Input;
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
.input
|
|
1
|
+
.input {
|
|
2
2
|
position: relative;
|
|
3
3
|
word-break: break-all;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
border: none;
|
|
5
|
+
background: none;
|
|
6
|
+
padding: 0 10px;
|
|
7
|
+
width: 100%;
|
|
8
|
+
&::-webkit-outer-spin-button,
|
|
9
|
+
&::-webkit-inner-spin-button {
|
|
7
10
|
-webkit-appearance: none;
|
|
8
11
|
}
|
|
9
12
|
|
|
@@ -60,15 +63,6 @@
|
|
|
60
63
|
border-radius: 4px;
|
|
61
64
|
}
|
|
62
65
|
|
|
63
|
-
&__error {
|
|
64
|
-
margin-top: 2px;
|
|
65
|
-
margin-left: 1px;
|
|
66
|
-
position: absolute;
|
|
67
|
-
display: block;
|
|
68
|
-
font-size: 10px;
|
|
69
|
-
color: #f06d8d;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
66
|
&__close {
|
|
73
67
|
position: relative;
|
|
74
68
|
opacity: 0.6;
|
|
@@ -77,7 +71,8 @@
|
|
|
77
71
|
background: none;
|
|
78
72
|
cursor: pointer;
|
|
79
73
|
margin-right: 4px;
|
|
80
|
-
|
|
74
|
+
visibility: hidden;
|
|
75
|
+
pointer-events: none;
|
|
81
76
|
&:hover {
|
|
82
77
|
opacity: 1;
|
|
83
78
|
}
|
|
@@ -121,7 +116,9 @@
|
|
|
121
116
|
background: none;
|
|
122
117
|
font-size: 20px;
|
|
123
118
|
user-select: none;
|
|
124
|
-
|
|
119
|
+
&.disabled {
|
|
120
|
+
opacity: 0.3;
|
|
121
|
+
}
|
|
125
122
|
svg {
|
|
126
123
|
margin-right: 0;
|
|
127
124
|
}
|
|
@@ -131,3 +128,9 @@
|
|
|
131
128
|
margin-bottom: 5px;
|
|
132
129
|
}
|
|
133
130
|
}
|
|
131
|
+
|
|
132
|
+
.input__wrap:hover .input__close {
|
|
133
|
+
visibility: visible;
|
|
134
|
+
pointer-events: all;
|
|
135
|
+
}
|
|
136
|
+
|
|
@@ -15,6 +15,8 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
15
15
|
|
|
16
16
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
17
|
|
|
18
|
+
var _reactFeather = require("react-feather");
|
|
19
|
+
|
|
18
20
|
var _Input = _interopRequireDefault(require("./Input"));
|
|
19
21
|
|
|
20
22
|
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); }
|
|
@@ -26,46 +28,60 @@ var _default = {
|
|
|
26
28
|
title: 'Form Elements/Input',
|
|
27
29
|
component: _Input.default,
|
|
28
30
|
argTypes: {
|
|
29
|
-
hintSide: {
|
|
30
|
-
description: 'string: ["right", "bottom", "top", "left"]',
|
|
31
|
-
control: {
|
|
32
|
-
type: 'select',
|
|
33
|
-
options: ['right', 'bottom', 'top', 'left']
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
|
-
hint: {
|
|
37
|
-
description: 'string'
|
|
38
|
-
},
|
|
39
31
|
disabled: {
|
|
40
32
|
description: 'boolean'
|
|
41
33
|
},
|
|
42
34
|
error: {
|
|
43
|
-
description: 'text'
|
|
35
|
+
description: 'text - coloring input if is errored'
|
|
36
|
+
},
|
|
37
|
+
isPriceInput: {
|
|
38
|
+
description: 'boolean - if true, the input will be styled as PriceInput'
|
|
44
39
|
},
|
|
45
40
|
withDelete: {
|
|
46
|
-
description: 'boolean'
|
|
41
|
+
description: 'boolean - add clear-cross by hover'
|
|
47
42
|
},
|
|
48
|
-
|
|
49
|
-
description: 'boolean'
|
|
43
|
+
isOnlyNumber: {
|
|
44
|
+
description: 'boolean - only numbers'
|
|
50
45
|
},
|
|
51
|
-
|
|
52
|
-
description: '
|
|
46
|
+
isOnlyString: {
|
|
47
|
+
description: 'boolean - only strings'
|
|
53
48
|
},
|
|
54
|
-
|
|
55
|
-
description: '
|
|
49
|
+
isTwoDigitAfterDot: {
|
|
50
|
+
description: 'boolean - only two digits after dot'
|
|
56
51
|
},
|
|
57
52
|
placeholder: {
|
|
58
53
|
description: 'text'
|
|
59
54
|
},
|
|
60
|
-
label: {
|
|
61
|
-
description: 'text'
|
|
62
|
-
},
|
|
63
55
|
type: {
|
|
64
|
-
description: '
|
|
56
|
+
description: "'text', 'number', 'password', 'color', 'date', 'datetime-local', 'month', 'time', 'email', 'range'",
|
|
65
57
|
control: {
|
|
66
58
|
type: 'select',
|
|
67
|
-
options: ['text', 'number']
|
|
59
|
+
options: ['text', 'number', 'password', 'color', 'date', 'datetime-local', 'month', 'time', 'email', 'range']
|
|
68
60
|
}
|
|
61
|
+
},
|
|
62
|
+
icon: {
|
|
63
|
+
description: 'JSX'
|
|
64
|
+
},
|
|
65
|
+
value: {
|
|
66
|
+
description: '(* - required prop)'
|
|
67
|
+
},
|
|
68
|
+
className: {
|
|
69
|
+
description: 'string'
|
|
70
|
+
},
|
|
71
|
+
mask: {
|
|
72
|
+
description: 'string: force input to masked https://www.npmjs.com/package/react-input-mask'
|
|
73
|
+
},
|
|
74
|
+
symbolsLimit: {
|
|
75
|
+
description: 'Set limit of symbols in input, overhead will be ignored'
|
|
76
|
+
},
|
|
77
|
+
onBlur: {
|
|
78
|
+
description: 'custom callback on blur'
|
|
79
|
+
},
|
|
80
|
+
onFocus: {
|
|
81
|
+
description: 'custom callback on focus'
|
|
82
|
+
},
|
|
83
|
+
onKeyUp: {
|
|
84
|
+
description: 'custom callback on keyup, returns event keyCode'
|
|
69
85
|
}
|
|
70
86
|
}
|
|
71
87
|
};
|
|
@@ -87,14 +103,15 @@ var InputTemplate = Template.bind({});
|
|
|
87
103
|
exports.InputTemplate = InputTemplate;
|
|
88
104
|
InputTemplate.args = {
|
|
89
105
|
type: 'text',
|
|
106
|
+
isOnlyNumber: false,
|
|
107
|
+
isOnlyString: false,
|
|
108
|
+
isPriceInput: false,
|
|
109
|
+
isTwoDigitAfterDot: false,
|
|
90
110
|
disabled: false,
|
|
91
111
|
error: '',
|
|
112
|
+
mask: '',
|
|
92
113
|
withDelete: true,
|
|
93
|
-
|
|
94
|
-
min: '0',
|
|
95
|
-
max: 5,
|
|
114
|
+
symbolsLimit: 255,
|
|
96
115
|
placeholder: 'Placeholder',
|
|
97
|
-
|
|
98
|
-
hint: 'hint',
|
|
99
|
-
hintSide: 'bottom'
|
|
116
|
+
icon: /*#__PURE__*/_react.default.createElement(_reactFeather.User, null)
|
|
100
117
|
};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.default = void 0;
|
|
11
|
+
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
+
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
|
|
16
|
+
var _moment = _interopRequireDefault(require("moment"));
|
|
17
|
+
|
|
18
|
+
var _reactInputMask = _interopRequireDefault(require("react-input-mask"));
|
|
19
|
+
|
|
20
|
+
var _Calendar = _interopRequireDefault(require("../../UI/Calendar/Calendar"));
|
|
21
|
+
|
|
22
|
+
var _useClickOutside = require("../../../Functions/useClickOutside");
|
|
23
|
+
|
|
24
|
+
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); }
|
|
25
|
+
|
|
26
|
+
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; }
|
|
27
|
+
|
|
28
|
+
var InputCalendar = function InputCalendar(_ref) {
|
|
29
|
+
var data = _ref.data,
|
|
30
|
+
params = _ref.params;
|
|
31
|
+
|
|
32
|
+
var _useState = (0, _react.useState)(data),
|
|
33
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
34
|
+
date = _useState2[0],
|
|
35
|
+
setDate = _useState2[1];
|
|
36
|
+
|
|
37
|
+
var _useState3 = (0, _react.useState)(date),
|
|
38
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
39
|
+
inputValue = _useState4[0],
|
|
40
|
+
setInputValue = _useState4[1];
|
|
41
|
+
|
|
42
|
+
var _useState5 = (0, _react.useState)(false),
|
|
43
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
44
|
+
isOpened = _useState6[0],
|
|
45
|
+
setIsOpened = _useState6[1];
|
|
46
|
+
|
|
47
|
+
var calendarRef = (0, _react.useRef)(null);
|
|
48
|
+
(0, _useClickOutside.useClickOutside)(calendarRef, function () {
|
|
49
|
+
return setIsOpened(false);
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
var changeInputValue = function changeInputValue(value) {
|
|
53
|
+
if (!value.includes('_') && value) {
|
|
54
|
+
setDate((0, _moment.default)(value).format('L'));
|
|
55
|
+
setInputValue((0, _moment.default)(value).format('L'));
|
|
56
|
+
} else {
|
|
57
|
+
setInputValue(value);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
var changeCalendarDay = function changeCalendarDay(value) {
|
|
62
|
+
setDate(value);
|
|
63
|
+
setInputValue(value);
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
67
|
+
className: "calendar-container",
|
|
68
|
+
ref: calendarRef
|
|
69
|
+
}, /*#__PURE__*/_react.default.createElement(_reactInputMask.default, {
|
|
70
|
+
mask: "99/99/9999",
|
|
71
|
+
value: inputValue,
|
|
72
|
+
onChange: function onChange(e) {
|
|
73
|
+
return changeInputValue(e.target.value);
|
|
74
|
+
},
|
|
75
|
+
className: "calendar-dropdown",
|
|
76
|
+
onFocus: function onFocus() {
|
|
77
|
+
return setIsOpened(!isOpened);
|
|
78
|
+
}
|
|
79
|
+
}), isOpened ? /*#__PURE__*/_react.default.createElement(_Calendar.default, {
|
|
80
|
+
date: date,
|
|
81
|
+
setDate: function setDate(newDate) {
|
|
82
|
+
return changeCalendarDay(newDate);
|
|
83
|
+
},
|
|
84
|
+
params: params
|
|
85
|
+
}) : null);
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
var _default = InputCalendar;
|
|
89
|
+
exports.default = _default;
|
|
@@ -7,13 +7,13 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
|
-
exports.
|
|
11
|
-
|
|
12
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
exports.Calendar = exports.default = void 0;
|
|
13
11
|
|
|
14
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
13
|
|
|
16
|
-
var
|
|
14
|
+
var _yup = require("yup");
|
|
15
|
+
|
|
16
|
+
var _InputCalendar = _interopRequireDefault(require("./InputCalendar"));
|
|
17
17
|
|
|
18
18
|
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); }
|
|
19
19
|
|
|
@@ -21,27 +21,26 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
21
21
|
|
|
22
22
|
global.lng = 'en';
|
|
23
23
|
var _default = {
|
|
24
|
-
title: 'Form Elements/
|
|
25
|
-
component:
|
|
24
|
+
title: 'Form Elements/InputCalendar',
|
|
25
|
+
component: _InputCalendar.default
|
|
26
26
|
};
|
|
27
27
|
exports.default = _default;
|
|
28
28
|
|
|
29
29
|
var Template = function Template(args) {
|
|
30
|
-
var
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
onClick: function onClick(newDate) {
|
|
38
|
-
return setDate(newDate);
|
|
39
|
-
}
|
|
30
|
+
var params = {
|
|
31
|
+
minDate: args === null || args === void 0 ? void 0 : args.minDate,
|
|
32
|
+
maxDate: args === null || args === void 0 ? void 0 : args.maxDate
|
|
33
|
+
};
|
|
34
|
+
return /*#__PURE__*/_react.default.createElement(_InputCalendar.default, {
|
|
35
|
+
data: args.date,
|
|
36
|
+
params: params
|
|
40
37
|
});
|
|
41
38
|
};
|
|
42
39
|
|
|
43
|
-
var
|
|
44
|
-
exports.
|
|
45
|
-
|
|
46
|
-
date: '10
|
|
40
|
+
var Calendar = Template.bind({});
|
|
41
|
+
exports.Calendar = Calendar;
|
|
42
|
+
Calendar.args = {
|
|
43
|
+
date: '10/14/2021',
|
|
44
|
+
minDate: '10/11/2021',
|
|
45
|
+
maxDate: '10/25/2021'
|
|
47
46
|
};
|