@dreamcommerce/aurora 3.1.52-1 → 3.1.52

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.
Files changed (108) hide show
  1. package/build/cjs/packages/aurora/src/components/calendar/styled_day_picker/styled_day_picker.js +1 -1
  2. package/build/cjs/packages/aurora/src/components/color_picker/components/pure_color_picker.js +1 -0
  3. package/build/cjs/packages/aurora/src/components/color_picker/components/pure_color_picker.js.map +1 -1
  4. package/build/cjs/packages/aurora/src/components/controls/values_syncer_control/values_syncer_control.js +3 -5
  5. package/build/cjs/packages/aurora/src/components/controls/values_syncer_control/values_syncer_control.js.map +1 -1
  6. package/build/cjs/packages/aurora/src/components/date_and_time_picker/date_time_picker.js +27 -16
  7. package/build/cjs/packages/aurora/src/components/date_and_time_picker/date_time_picker.js.map +1 -1
  8. package/build/cjs/packages/aurora/src/components/date_picker/components/date_picker_input.js +11 -43
  9. package/build/cjs/packages/aurora/src/components/date_picker/components/date_picker_input.js.map +1 -1
  10. package/build/cjs/packages/aurora/src/components/date_picker/date_picker.js +13 -83
  11. package/build/cjs/packages/aurora/src/components/date_picker/date_picker.js.map +1 -1
  12. package/build/cjs/packages/aurora/src/components/date_picker/date_picker_utils.js +4 -203
  13. package/build/cjs/packages/aurora/src/components/date_picker/date_picker_utils.js.map +1 -1
  14. package/build/cjs/packages/aurora/src/components/time_picker/components/time_picker_input.js +10 -30
  15. package/build/cjs/packages/aurora/src/components/time_picker/components/time_picker_input.js.map +1 -1
  16. package/build/cjs/packages/aurora/src/components/time_picker/time_picker.js +50 -85
  17. package/build/cjs/packages/aurora/src/components/time_picker/time_picker.js.map +1 -1
  18. package/build/cjs/packages/aurora/src/components/time_picker/time_picker_utils.js +1 -62
  19. package/build/cjs/packages/aurora/src/components/time_picker/time_picker_utils.js.map +1 -1
  20. package/build/cjs/packages/aurora/src/index.js +0 -2
  21. package/build/cjs/packages/aurora/src/index.js.map +1 -1
  22. package/build/cjs/packages/aurora/src/translations/en.json.js +1 -4
  23. package/build/cjs/packages/aurora/src/translations/en.json.js.map +1 -1
  24. package/build/cjs/packages/aurora/src/translations/pl.json.js +1 -4
  25. package/build/cjs/packages/aurora/src/translations/pl.json.js.map +1 -1
  26. package/build/esm/packages/aurora/src/components/calendar/styled_day_picker/styled_day_picker.js +1 -1
  27. package/build/esm/packages/aurora/src/components/color_picker/components/pure_color_picker.js +1 -0
  28. package/build/esm/packages/aurora/src/components/color_picker/components/pure_color_picker.js.map +1 -1
  29. package/build/esm/packages/aurora/src/components/controls/values_syncer_control/values_syncer_control.js +3 -5
  30. package/build/esm/packages/aurora/src/components/controls/values_syncer_control/values_syncer_control.js.map +1 -1
  31. package/build/esm/packages/aurora/src/components/date_and_time_picker/date_time_picker.js +27 -16
  32. package/build/esm/packages/aurora/src/components/date_and_time_picker/date_time_picker.js.map +1 -1
  33. package/build/esm/packages/aurora/src/components/date_picker/components/date_picker_input.d.ts +1 -4
  34. package/build/esm/packages/aurora/src/components/date_picker/components/date_picker_input.js +11 -43
  35. package/build/esm/packages/aurora/src/components/date_picker/components/date_picker_input.js.map +1 -1
  36. package/build/esm/packages/aurora/src/components/date_picker/date_picker.d.ts +1 -1
  37. package/build/esm/packages/aurora/src/components/date_picker/date_picker.js +14 -84
  38. package/build/esm/packages/aurora/src/components/date_picker/date_picker.js.map +1 -1
  39. package/build/esm/packages/aurora/src/components/date_picker/date_picker_types.d.ts +1 -1
  40. package/build/esm/packages/aurora/src/components/date_picker/date_picker_utils.d.ts +1 -18
  41. package/build/esm/packages/aurora/src/components/date_picker/date_picker_utils.js +4 -203
  42. package/build/esm/packages/aurora/src/components/date_picker/date_picker_utils.js.map +1 -1
  43. package/build/esm/packages/aurora/src/components/time_picker/components/time_picker_input.d.ts +1 -2
  44. package/build/esm/packages/aurora/src/components/time_picker/components/time_picker_input.js +10 -30
  45. package/build/esm/packages/aurora/src/components/time_picker/components/time_picker_input.js.map +1 -1
  46. package/build/esm/packages/aurora/src/components/time_picker/time_picker.js +52 -87
  47. package/build/esm/packages/aurora/src/components/time_picker/time_picker.js.map +1 -1
  48. package/build/esm/packages/aurora/src/components/time_picker/time_picker_utils.d.ts +0 -11
  49. package/build/esm/packages/aurora/src/components/time_picker/time_picker_utils.js +1 -62
  50. package/build/esm/packages/aurora/src/components/time_picker/time_picker_utils.js.map +1 -1
  51. package/build/esm/packages/aurora/src/index.d.ts +0 -2
  52. package/build/esm/packages/aurora/src/index.js +0 -1
  53. package/build/esm/packages/aurora/src/index.js.map +1 -1
  54. package/build/esm/packages/aurora/src/translations/en.json +1 -4
  55. package/build/esm/packages/aurora/src/translations/en.json.js +1 -4
  56. package/build/esm/packages/aurora/src/translations/en.json.js.map +1 -1
  57. package/build/esm/packages/aurora/src/translations/pl.json +1 -4
  58. package/build/esm/packages/aurora/src/translations/pl.json.js +1 -4
  59. package/build/esm/packages/aurora/src/translations/pl.json.js.map +1 -1
  60. package/package.json +1 -1
  61. package/build/cjs/packages/aurora/src/components/input_mask/hooks/hooks.js +0 -196
  62. package/build/cjs/packages/aurora/src/components/input_mask/hooks/hooks.js.map +0 -1
  63. package/build/cjs/packages/aurora/src/components/input_mask/input-mask-constants.js +0 -14
  64. package/build/cjs/packages/aurora/src/components/input_mask/input-mask-constants.js.map +0 -1
  65. package/build/cjs/packages/aurora/src/components/input_mask/input_mask.js +0 -360
  66. package/build/cjs/packages/aurora/src/components/input_mask/input_mask.js.map +0 -1
  67. package/build/cjs/packages/aurora/src/components/input_mask/utils/defer.js +0 -16
  68. package/build/cjs/packages/aurora/src/components/input_mask/utils/defer.js.map +0 -1
  69. package/build/cjs/packages/aurora/src/components/input_mask/utils/helpers.js +0 -50
  70. package/build/cjs/packages/aurora/src/components/input_mask/utils/helpers.js.map +0 -1
  71. package/build/cjs/packages/aurora/src/components/input_mask/utils/input.js +0 -33
  72. package/build/cjs/packages/aurora/src/components/input_mask/utils/input.js.map +0 -1
  73. package/build/cjs/packages/aurora/src/components/input_mask/utils/mask.js +0 -371
  74. package/build/cjs/packages/aurora/src/components/input_mask/utils/mask.js.map +0 -1
  75. package/build/cjs/packages/aurora/src/components/input_mask/utils/parse-mask.js +0 -94
  76. package/build/cjs/packages/aurora/src/components/input_mask/utils/parse-mask.js.map +0 -1
  77. package/build/cjs/packages/aurora/src/components/input_mask/utils/validate-props.js +0 -37
  78. package/build/cjs/packages/aurora/src/components/input_mask/utils/validate-props.js.map +0 -1
  79. package/build/esm/packages/aurora/src/components/input_mask/hooks/hooks.d.ts +0 -10
  80. package/build/esm/packages/aurora/src/components/input_mask/hooks/hooks.js +0 -190
  81. package/build/esm/packages/aurora/src/components/input_mask/hooks/hooks.js.map +0 -1
  82. package/build/esm/packages/aurora/src/components/input_mask/input-mask-constants.d.ts +0 -6
  83. package/build/esm/packages/aurora/src/components/input_mask/input-mask-constants.js +0 -9
  84. package/build/esm/packages/aurora/src/components/input_mask/input-mask-constants.js.map +0 -1
  85. package/build/esm/packages/aurora/src/components/input_mask/input_mask.d.ts +0 -4
  86. package/build/esm/packages/aurora/src/components/input_mask/input_mask.js +0 -352
  87. package/build/esm/packages/aurora/src/components/input_mask/input_mask.js.map +0 -1
  88. package/build/esm/packages/aurora/src/components/input_mask/input_mask_types.d.ts +0 -39
  89. package/build/esm/packages/aurora/src/components/input_mask/input_mask_types.js +0 -2
  90. package/build/esm/packages/aurora/src/components/input_mask/input_mask_types.js.map +0 -1
  91. package/build/esm/packages/aurora/src/components/input_mask/utils/defer.d.ts +0 -2
  92. package/build/esm/packages/aurora/src/components/input_mask/utils/defer.js +0 -11
  93. package/build/esm/packages/aurora/src/components/input_mask/utils/defer.js.map +0 -1
  94. package/build/esm/packages/aurora/src/components/input_mask/utils/helpers.d.ts +0 -7
  95. package/build/esm/packages/aurora/src/components/input_mask/utils/helpers.js +0 -40
  96. package/build/esm/packages/aurora/src/components/input_mask/utils/helpers.js.map +0 -1
  97. package/build/esm/packages/aurora/src/components/input_mask/utils/input.d.ts +0 -9
  98. package/build/esm/packages/aurora/src/components/input_mask/utils/input.js +0 -29
  99. package/build/esm/packages/aurora/src/components/input_mask/utils/input.js.map +0 -1
  100. package/build/esm/packages/aurora/src/components/input_mask/utils/mask.d.ts +0 -63
  101. package/build/esm/packages/aurora/src/components/input_mask/utils/mask.js +0 -367
  102. package/build/esm/packages/aurora/src/components/input_mask/utils/mask.js.map +0 -1
  103. package/build/esm/packages/aurora/src/components/input_mask/utils/parse-mask.d.ts +0 -7
  104. package/build/esm/packages/aurora/src/components/input_mask/utils/parse-mask.js +0 -90
  105. package/build/esm/packages/aurora/src/components/input_mask/utils/parse-mask.js.map +0 -1
  106. package/build/esm/packages/aurora/src/components/input_mask/utils/validate-props.d.ts +0 -4
  107. package/build/esm/packages/aurora/src/components/input_mask/utils/validate-props.js +0 -31
  108. package/build/esm/packages/aurora/src/components/input_mask/utils/validate-props.js.map +0 -1
@@ -1,190 +0,0 @@
1
- import { useCallback, useRef, useEffect, useLayoutEffect } from 'react';
2
- import { slicedToArray as _slicedToArray } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
3
- import { cancelDefer, defer } from '../utils/defer.js';
4
- import InputUtils from '../utils/input.js';
5
- import { isDOMElement } from '../utils/helpers.js';
6
-
7
- function useInputElement(inputRef) {
8
- return useCallback(function () {
9
- var input = inputRef.current;
10
- var isDOMNode = typeof window !== 'undefined' && isDOMElement(input);
11
- // workaround for react-test-renderer
12
- // https://github.com/sanniassin/react-input-mask/issues/147
13
- if (!input || !isDOMNode) {
14
- return null;
15
- }
16
- if (input.nodeName !== 'INPUT') {
17
- input = input.querySelector('input');
18
- }
19
- if (!input) {
20
- throw new Error("inputComponent doesn't contain input node");
21
- }
22
- return input;
23
- }, [inputRef]);
24
- }
25
- function useDeferLoop(callback) {
26
- var deferIdRef = useRef(null);
27
- var runLoop = useCallback(function () {
28
- // If there are simulated focus events, runLoop could be
29
- // called multiple times without blur or re-render
30
- if (deferIdRef.current !== null) {
31
- return;
32
- }
33
- function loop() {
34
- callback();
35
- deferIdRef.current = defer(loop);
36
- }
37
- loop();
38
- }, [callback]);
39
- var stopLoop = useCallback(function () {
40
- if (deferIdRef.current !== null) {
41
- cancelDefer(deferIdRef.current);
42
- deferIdRef.current = null;
43
- }
44
- }, []);
45
- useEffect(function () {
46
- if (deferIdRef.current) {
47
- stopLoop();
48
- runLoop();
49
- }
50
- }, [runLoop, stopLoop]);
51
- useEffect(function () {
52
- return function () {
53
- if (deferIdRef.current !== null) {
54
- cancelDefer(deferIdRef.current);
55
- }
56
- };
57
- }, []);
58
- return [runLoop, stopLoop];
59
- }
60
- function useSelection(inputRef, isMasked) {
61
- var inputUtilsRef = useRef(new InputUtils());
62
- var inputUtils = inputUtilsRef.current;
63
- var selectionRef = useRef({
64
- start: null,
65
- end: null
66
- });
67
- var getInputElement = useInputElement(inputRef);
68
- var getSelection = useCallback(function () {
69
- var input = getInputElement();
70
- if (!input) {
71
- return {
72
- start: null,
73
- end: null
74
- };
75
- }
76
- return inputUtils.getInputSelection(input);
77
- }, [getInputElement]);
78
- var getLastSelection = useCallback(function () {
79
- return selectionRef.current;
80
- }, []);
81
- var setSelection = useCallback(function (selection) {
82
- var _selection$start, _selection$end;
83
- var input = getInputElement();
84
- // Don't change selection on unfocused input
85
- // because Safari sets focus on selection change (#154)
86
- if (!input || !inputUtils.isInputFocused(input)) {
87
- return;
88
- }
89
- inputUtils.setInputSelection(input, (_selection$start = selection.start) !== null && _selection$start !== void 0 ? _selection$start : 0, (_selection$end = selection.end) !== null && _selection$end !== void 0 ? _selection$end : undefined);
90
- // Use actual selection in case the requested one was out of range
91
- selectionRef.current = getSelection();
92
- }, [getInputElement, getSelection]);
93
- var selectionLoop = useCallback(function () {
94
- selectionRef.current = getSelection();
95
- }, [getSelection]);
96
- var _useDeferLoop = useDeferLoop(selectionLoop),
97
- _useDeferLoop2 = _slicedToArray(_useDeferLoop, 2),
98
- runSelectionLoop = _useDeferLoop2[0],
99
- stopSelectionLoop = _useDeferLoop2[1];
100
- useLayoutEffect(function () {
101
- if (!isMasked) {
102
- return;
103
- }
104
- var input = getInputElement();
105
- if (!input) return;
106
- input.addEventListener('focus', runSelectionLoop);
107
- input.addEventListener('blur', stopSelectionLoop);
108
- if (inputUtils.isInputFocused(input)) {
109
- runSelectionLoop();
110
- }
111
- return function () {
112
- input.removeEventListener('focus', runSelectionLoop);
113
- input.removeEventListener('blur', stopSelectionLoop);
114
- stopSelectionLoop();
115
- };
116
- }, [isMasked, getInputElement, runSelectionLoop, stopSelectionLoop]);
117
- return {
118
- getSelection: getSelection,
119
- getLastSelection: getLastSelection,
120
- setSelection: setSelection
121
- };
122
- }
123
- function useValue(inputRef, initialValue) {
124
- var getInputElement = useInputElement(inputRef);
125
- var valueRef = useRef(initialValue);
126
- var getValue = useCallback(function () {
127
- var input = getInputElement();
128
- return (input === null || input === void 0 ? void 0 : input.value) || '';
129
- }, [getInputElement]);
130
- var getLastValue = useCallback(function () {
131
- return valueRef.current;
132
- }, []);
133
- var setValue = useCallback(function (newValue) {
134
- valueRef.current = newValue;
135
- var input = getInputElement();
136
- if (input) {
137
- input.value = newValue;
138
- }
139
- }, [getInputElement]);
140
- return {
141
- getValue: getValue,
142
- getLastValue: getLastValue,
143
- setValue: setValue
144
- };
145
- }
146
- function useInputState(initialValue, isMasked) {
147
- var inputRef = useRef(null);
148
- var _useSelection = useSelection(inputRef, isMasked),
149
- getSelection = _useSelection.getSelection,
150
- getLastSelection = _useSelection.getLastSelection,
151
- setSelection = _useSelection.setSelection;
152
- var _useValue = useValue(inputRef, initialValue),
153
- getValue = _useValue.getValue,
154
- getLastValue = _useValue.getLastValue,
155
- setValue = _useValue.setValue;
156
- function getLastInputState() {
157
- return {
158
- value: getLastValue(),
159
- selection: getLastSelection()
160
- };
161
- }
162
- function getInputState() {
163
- return {
164
- value: getValue(),
165
- selection: getSelection()
166
- };
167
- }
168
- function setInputState(_ref) {
169
- var value = _ref.value,
170
- selection = _ref.selection;
171
- setValue(value);
172
- setSelection(selection);
173
- }
174
- return {
175
- inputRef: inputRef,
176
- getInputState: getInputState,
177
- getLastInputState: getLastInputState,
178
- setInputState: setInputState
179
- };
180
- }
181
- function usePrevious(value) {
182
- var ref = useRef();
183
- useEffect(function () {
184
- ref.current = value;
185
- });
186
- return ref.current;
187
- }
188
-
189
- export { useInputElement, useInputState, usePrevious };
190
- //# sourceMappingURL=hooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,6 +0,0 @@
1
- export declare const CONTROLLED_PROPS: string[];
2
- export declare const defaultFormatChars: {
3
- '9': RegExp;
4
- a: RegExp;
5
- '*': RegExp;
6
- };
@@ -1,9 +0,0 @@
1
- var CONTROLLED_PROPS = ['disabled', 'onBlur', 'onChange', 'onFocus', 'onMouseDown', 'readOnly', 'value'];
2
- var defaultFormatChars = {
3
- '9': /[0-9]/,
4
- a: /[A-Za-z]/,
5
- '*': /[A-Za-z0-9]/
6
- };
7
-
8
- export { CONTROLLED_PROPS, defaultFormatChars };
9
- //# sourceMappingURL=input-mask-constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import { InputMaskProps } from './input_mask_types';
3
- declare const InputMask: React.ForwardRefExoticComponent<Omit<InputMaskProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
4
- export { InputMask };
@@ -1,352 +0,0 @@
1
- import React__default, { forwardRef, useLayoutEffect } from 'react';
2
- import { objectWithoutProperties as _objectWithoutProperties, objectSpread2 as _objectSpread2, typeof as _typeof } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
3
- import { defer } from './utils/defer.js';
4
- import InputUtils from './utils/input.js';
5
- import { toString, isFunction, getElementDocument } from './utils/helpers.js';
6
- import { usePrevious, useInputState, useInputElement } from './hooks/hooks.js';
7
- import { validateMaxLength, validateMaskPlaceholder, validateChildren } from './utils/validate-props.js';
8
- import MaskUtils from './utils/mask.js';
9
-
10
- var _excluded = ["alwaysShowMask", "children", "mask", "maskPlaceholder", "formatChars", "beforeMaskedStateChange"];
11
- var InputMask = /*#__PURE__*/forwardRef(function InputMask(props, forwardedRef) {
12
- var _props$alwaysShowMask = props.alwaysShowMask,
13
- alwaysShowMask = _props$alwaysShowMask === void 0 ? false : _props$alwaysShowMask,
14
- children = props.children,
15
- mask = props.mask,
16
- _props$maskPlaceholde = props.maskPlaceholder,
17
- maskPlaceholder = _props$maskPlaceholde === void 0 ? '_' : _props$maskPlaceholde,
18
- formatChars = props.formatChars,
19
- beforeMaskedStateChange = props.beforeMaskedStateChange,
20
- restProps = _objectWithoutProperties(props, _excluded);
21
- validateMaxLength(props);
22
- validateMaskPlaceholder(props);
23
- var maskUtils = new MaskUtils({
24
- mask: mask,
25
- maskPlaceholder: maskPlaceholder,
26
- formatChars: formatChars
27
- });
28
- var inputUtils = new InputUtils();
29
- var isMasked = !!mask;
30
- var isEditable = !restProps.disabled && !restProps.readOnly;
31
- var isControlled = props.value !== null && props.value !== undefined;
32
- var previousIsMasked = usePrevious(isMasked);
33
- var initialValue = toString((isControlled ? props.value : props.defaultValue) || '');
34
- var _useInputState = useInputState(initialValue, isMasked),
35
- inputRef = _useInputState.inputRef,
36
- getInputState = _useInputState.getInputState,
37
- setInputState = _useInputState.setInputState,
38
- getLastInputState = _useInputState.getLastInputState;
39
- var getInputElement = useInputElement(inputRef);
40
- function onChange(event) {
41
- var currentState = getInputState();
42
- var previousState = getLastInputState();
43
- var newInputState = maskUtils.processChange(currentState, previousState);
44
- if (beforeMaskedStateChange) {
45
- newInputState = beforeMaskedStateChange({
46
- currentState: currentState,
47
- previousState: previousState,
48
- nextState: newInputState
49
- });
50
- }
51
- setInputState(newInputState);
52
- if (props.onChange) {
53
- props.onChange(event);
54
- }
55
- }
56
- function onFocus(event) {
57
- // If autoFocus property is set, focus event fires before the ref handler gets called
58
- inputRef.current = event.target;
59
- var currentValue = getInputState().value;
60
- if (isMasked && !maskUtils.isValueFilled(currentValue)) {
61
- var newValue = maskUtils.formatValue(currentValue);
62
- var defaultSelection = maskUtils.getDefaultSelectionForValue(newValue);
63
- var newSelection = {
64
- start: defaultSelection.start,
65
- end: defaultSelection.end
66
- };
67
- var newInputState = {
68
- value: newValue,
69
- selection: newSelection
70
- };
71
- if (beforeMaskedStateChange) {
72
- newInputState = beforeMaskedStateChange({
73
- currentState: getInputState(),
74
- nextState: newInputState
75
- });
76
- newValue = newInputState.value;
77
- newSelection = newInputState.selection;
78
- }
79
- setInputState(newInputState);
80
- if (newValue !== currentValue && props.onChange) {
81
- props.onChange(event);
82
- }
83
- // Chrome resets selection after focus event,
84
- // so we want to restore it later
85
- defer(function () {
86
- setInputState(getLastInputState());
87
- });
88
- }
89
- if (props.onFocus) {
90
- props.onFocus(event);
91
- }
92
- }
93
- function onBlur(event) {
94
- var currentValue = getInputState().value;
95
- var lastValue = getLastInputState().value;
96
- if (isMasked && !alwaysShowMask && maskUtils.isValueEmpty(lastValue)) {
97
- var newValue = '';
98
- var newInputState = {
99
- value: newValue,
100
- selection: {
101
- start: null,
102
- end: null
103
- }
104
- };
105
- if (beforeMaskedStateChange) {
106
- newInputState = beforeMaskedStateChange({
107
- currentState: getInputState(),
108
- nextState: newInputState
109
- });
110
- newValue = newInputState.value;
111
- }
112
- setInputState(newInputState);
113
- if (newValue !== currentValue && props.onChange) {
114
- props.onChange(event);
115
- }
116
- }
117
- if (props.onBlur) {
118
- props.onBlur(event);
119
- }
120
- }
121
- function onKeyDown(event) {
122
- var callOriginalOnKeyDown = function callOriginalOnKeyDown() {
123
- if (props.onKeyDown) {
124
- props.onKeyDown(event);
125
- }
126
- };
127
- if (!isMasked || !isEditable) {
128
- callOriginalOnKeyDown();
129
- return;
130
- }
131
- if (event.key !== 'Tab') {
132
- callOriginalOnKeyDown();
133
- return;
134
- }
135
- var input = getInputElement();
136
- if (!input) {
137
- callOriginalOnKeyDown();
138
- return;
139
- }
140
- var isFocused = inputUtils.isInputFocused(input);
141
- var currentState = getInputState();
142
- var currentValue = currentState.value;
143
- var isEmpty = maskUtils.isValueEmpty(currentValue);
144
- var selection = inputUtils.getInputSelection(input);
145
- var currentPosition = selection.start;
146
- var hasSelection = selection.length > 0;
147
- var firstEditablePosition = maskUtils.getFirstEditablePosition();
148
- if (isEmpty && !isFocused) {
149
- event.preventDefault();
150
- input.focus();
151
- if (firstEditablePosition !== null) {
152
- defer(function () {
153
- var sections = maskUtils.getSections();
154
- var sectionRange = maskUtils.getSectionRange(firstEditablePosition, sections);
155
- if (sectionRange) {
156
- inputUtils.setInputSelection(input, sectionRange.start, sectionRange.end + 1);
157
- } else {
158
- inputUtils.setInputSelection(input, firstEditablePosition);
159
- }
160
- });
161
- }
162
- return;
163
- }
164
- if (isEmpty && isFocused) {
165
- callOriginalOnKeyDown();
166
- return;
167
- }
168
- var sections = maskUtils.getSections();
169
- var checkPosition = hasSelection ? selection.start : currentPosition;
170
- var currentSectionIndex = maskUtils.getSectionIndexForPosition(checkPosition, sections);
171
- var isAtFirstSection = currentSectionIndex === 0;
172
- var isAtLastSection = currentSectionIndex === sections.length - 1;
173
- if (isAtLastSection && !event.shiftKey) {
174
- callOriginalOnKeyDown();
175
- return;
176
- }
177
- if (isAtFirstSection && event.shiftKey) {
178
- callOriginalOnKeyDown();
179
- return;
180
- }
181
- if (hasSelection) {
182
- event.preventDefault();
183
- var jumpPosition = event.shiftKey ? maskUtils.getPreviousSectionFirstPosition(selection.start) : maskUtils.getNextSectionFirstPosition(selection.start);
184
- if (jumpPosition !== null) {
185
- defer(function () {
186
- var sectionRange = maskUtils.getSectionRange(jumpPosition, sections);
187
- if (sectionRange) {
188
- inputUtils.setInputSelection(input, sectionRange.start, sectionRange.end + 1);
189
- } else {
190
- inputUtils.setInputSelection(input, jumpPosition);
191
- }
192
- });
193
- } else {
194
- callOriginalOnKeyDown();
195
- }
196
- return;
197
- }
198
- var currentEditablePosition = maskUtils.isPositionEditable(currentPosition) ? currentPosition : event.shiftKey ? maskUtils.getLeftEditablePosition(currentPosition) : maskUtils.getRightEditablePosition(currentPosition);
199
- if (currentEditablePosition === null) {
200
- callOriginalOnKeyDown();
201
- return;
202
- }
203
- event.preventDefault();
204
- var nextSectionPosition = event.shiftKey ? maskUtils.getPreviousSectionFirstPosition(currentEditablePosition) : maskUtils.getNextSectionFirstPosition(currentEditablePosition);
205
- if (nextSectionPosition !== null) {
206
- defer(function () {
207
- var sectionRange = maskUtils.getSectionRange(nextSectionPosition, sections);
208
- if (sectionRange) {
209
- inputUtils.setInputSelection(input, sectionRange.start, sectionRange.end + 1);
210
- } else {
211
- inputUtils.setInputSelection(input, nextSectionPosition);
212
- }
213
- });
214
- } else {
215
- callOriginalOnKeyDown();
216
- }
217
- }
218
- // Tiny unintentional mouse movements can break cursor
219
- // position on focus, so we have to restore it in that case
220
- //
221
- // https://github.com/sanniassin/react-input-mask/issues/108
222
- function onMouseDown(event) {
223
- var input = getInputElement();
224
- var _getInputState = getInputState(),
225
- value = _getInputState.value;
226
- var inputDocument = getElementDocument(input);
227
- if (!input || !inputDocument) return;
228
- if (!inputUtils.isInputFocused(input) && !maskUtils.isValueFilled(value)) {
229
- var mouseDownX = event.clientX;
230
- var mouseDownY = event.clientY;
231
- var mouseDownTime = new Date().getTime();
232
- var _mouseUpHandler = function mouseUpHandler(mouseUpEvent) {
233
- inputDocument.removeEventListener('mouseup', _mouseUpHandler);
234
- if (!inputUtils.isInputFocused(input)) {
235
- return;
236
- }
237
- var deltaX = Math.abs(mouseUpEvent.clientX - mouseDownX);
238
- var deltaY = Math.abs(mouseUpEvent.clientY - mouseDownY);
239
- var axisDelta = Math.max(deltaX, deltaY);
240
- var timeDelta = new Date().getTime() - mouseDownTime;
241
- if (axisDelta <= 10 && timeDelta <= 200 || axisDelta <= 5 && timeDelta <= 300) {
242
- var _lastState = getLastInputState();
243
- var defaultSelection = maskUtils.getDefaultSelectionForValue(_lastState.value);
244
- var newSelection = {
245
- start: defaultSelection.start,
246
- end: defaultSelection.end
247
- };
248
- var newState = _objectSpread2(_objectSpread2({}, _lastState), {}, {
249
- selection: newSelection
250
- });
251
- setInputState(newState);
252
- }
253
- };
254
- inputDocument.addEventListener('mouseup', _mouseUpHandler);
255
- }
256
- if (props.onMouseDown) {
257
- props.onMouseDown(event);
258
- }
259
- }
260
- // For controlled inputs we want to provide properly formatted
261
- // value prop
262
- if (isMasked && isControlled) {
263
- var input = getInputElement();
264
- var isFocused = input && inputUtils.isInputFocused(input);
265
- var newValue = isFocused || alwaysShowMask || props.value ? maskUtils.formatValue(props.value || '') : props.value || '';
266
- if (beforeMaskedStateChange) {
267
- newValue = beforeMaskedStateChange({
268
- nextState: {
269
- value: newValue,
270
- selection: {
271
- start: null,
272
- end: null
273
- }
274
- }
275
- }).value;
276
- }
277
- setInputState(_objectSpread2(_objectSpread2({}, getLastInputState()), {}, {
278
- value: newValue
279
- }));
280
- }
281
- var lastState = getLastInputState();
282
- var lastSelection = lastState.selection;
283
- var lastValue = lastState.value;
284
- useLayoutEffect(function () {
285
- if (!isMasked) {
286
- return;
287
- }
288
- var input = getInputElement();
289
- var isFocused = inputUtils.isInputFocused(input);
290
- var previousSelection = lastSelection;
291
- var currentState = getInputState();
292
- var newInputState = _objectSpread2({}, currentState);
293
- // Update value for uncontrolled inputs to make sure
294
- // it's always in sync with mask props
295
- if (!isControlled) {
296
- var currentValue = currentState.value;
297
- var formattedValue = maskUtils.formatValue(currentValue);
298
- var isValueEmpty = maskUtils.isValueEmpty(formattedValue);
299
- var shouldFormatValue = !isValueEmpty || isFocused || alwaysShowMask;
300
- if (shouldFormatValue) {
301
- newInputState.value = formattedValue;
302
- } else if (isValueEmpty && !isFocused) {
303
- newInputState.value = '';
304
- }
305
- }
306
- if (isFocused && !previousIsMasked) {
307
- // Adjust selection if input got masked while being focused
308
- var defaultSelection = maskUtils.getDefaultSelectionForValue(newInputState.value);
309
- newInputState.selection = {
310
- start: defaultSelection.start,
311
- end: defaultSelection.end
312
- };
313
- } else if (isControlled && isFocused && previousSelection) {
314
- // Restore cursor position if value has changed outside change event
315
- if (previousSelection.start !== null && previousSelection.end !== null) {
316
- newInputState.selection = previousSelection;
317
- }
318
- }
319
- if (beforeMaskedStateChange) {
320
- newInputState = beforeMaskedStateChange({
321
- currentState: currentState,
322
- nextState: newInputState
323
- });
324
- }
325
- setInputState(newInputState);
326
- });
327
- var inputProps = _objectSpread2(_objectSpread2({}, restProps), {}, {
328
- onFocus: onFocus,
329
- onBlur: onBlur,
330
- onChange: isMasked && isEditable ? onChange : props.onChange,
331
- onMouseDown: isMasked && isEditable ? onMouseDown : props.onMouseDown,
332
- onKeyDown: isMasked && isEditable ? onKeyDown : props.onKeyDown,
333
- ref: function ref(_ref) {
334
- inputRef.current = _ref;
335
- if (isFunction(forwardedRef)) {
336
- forwardedRef(_ref);
337
- } else if (forwardedRef !== null && _typeof(forwardedRef) === 'object') {
338
- forwardedRef.current = _ref;
339
- }
340
- },
341
- value: isMasked && isControlled ? lastValue : props.value
342
- });
343
- if (children) {
344
- validateChildren(props, children);
345
- return /*#__PURE__*/React__default.cloneElement(React__default.Children.only(children), inputProps);
346
- }
347
- return /*#__PURE__*/React__default.createElement("input", _objectSpread2({}, inputProps));
348
- });
349
- InputMask.displayName = 'InputMask';
350
-
351
- export { InputMask };
352
- //# sourceMappingURL=input_mask.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,39 +0,0 @@
1
- import React from 'react';
2
- export interface InputMaskProps {
3
- mask?: string | Array<string | RegExp>;
4
- maskPlaceholder?: string;
5
- formatChars?: Record<string, RegExp>;
6
- alwaysShowMask?: boolean;
7
- beforeMaskedStateChange?: (state: {
8
- currentState?: InputState;
9
- previousState?: InputState;
10
- nextState: InputState;
11
- }) => InputState;
12
- children?: React.ReactElement;
13
- value?: string | null;
14
- defaultValue?: string | null;
15
- onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
16
- onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
17
- onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
18
- onMouseDown?: (event: React.MouseEvent<HTMLInputElement>) => void;
19
- disabled?: boolean;
20
- readOnly?: boolean;
21
- [key: string]: any;
22
- }
23
- export interface InputSelection {
24
- start: number | null;
25
- end: number | null;
26
- length?: number;
27
- }
28
- export interface InputState {
29
- value: string;
30
- selection: InputSelection;
31
- enteredString?: string;
32
- }
33
- export interface MaskOptions {
34
- maskPlaceholder: string | null;
35
- mask: Array<string | RegExp> | null;
36
- prefix: string | null;
37
- lastEditablePosition: number | null;
38
- permanents: number[];
39
- }
@@ -1,2 +0,0 @@
1
- import 'react';
2
- //# sourceMappingURL=input_mask_types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input_mask_types.js","sourceRoot":"","sources":["../../../../../../../src/components/input_mask/input_mask_types.ts"],"names":[],"mappings":"AAAA,OAAkB,OAAO,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const defer: (fn: () => void) => number;
2
- export declare const cancelDefer: (deferId: number | null) => void;
@@ -1,11 +0,0 @@
1
- var defer = function defer(fn) {
2
- return requestAnimationFrame(fn);
3
- };
4
- var cancelDefer = function cancelDefer(deferId) {
5
- if (deferId !== null) {
6
- cancelAnimationFrame(deferId);
7
- }
8
- };
9
-
10
- export { cancelDefer, defer };
11
- //# sourceMappingURL=defer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,7 +0,0 @@
1
- export declare const getElementDocument: (element: HTMLElement | null) => Document | null;
2
- export declare const getElementWindow: (element: HTMLElement | null) => Window | null;
3
- export declare const isDOMElement: (element: any) => boolean;
4
- export declare const isFunction: (value: any) => value is Function;
5
- export declare const findLastIndex: <T>(array: T[], predicate: (item: T, index: number) => boolean) => number;
6
- export declare const repeat: (string: string, n?: number) => string;
7
- export declare const toString: (value: any) => string;