@elliemae/ds-form 3.1.0-next.2 → 3.1.0-next.3
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/cjs/CheckboxGroup/DSCheckboxGroup.js +2 -2
- package/dist/cjs/CheckboxGroup/DSCheckboxGroup.js.map +2 -2
- package/dist/cjs/CheckboxGroup/props.js +12 -12
- package/dist/cjs/CheckboxGroup/props.js.map +2 -2
- package/dist/cjs/ComboBoxFreeSolo/components/MultiValueLabel.js +3 -3
- package/dist/cjs/ComboBoxFreeSolo/components/MultiValueLabel.js.map +2 -2
- package/dist/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js +2 -2
- package/dist/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js.map +2 -2
- package/dist/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js +2 -2
- package/dist/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js.map +2 -2
- package/dist/cjs/DateInput/DSDateInput.js +1 -2
- package/dist/cjs/DateInput/DSDateInput.js.map +2 -2
- package/dist/cjs/DateInput/props.js +19 -19
- package/dist/cjs/DateInput/props.js.map +2 -2
- package/dist/cjs/DateInputV2/components/DSDateInput.js +2 -2
- package/dist/cjs/DateInputV2/components/DSDateInput.js.map +2 -2
- package/dist/cjs/DateInputV2/components/props.js +13 -13
- package/dist/cjs/DateInputV2/components/props.js.map +2 -2
- package/dist/cjs/DateInputV2/components/styled.js +5 -5
- package/dist/cjs/DateInputV2/components/styled.js.map +2 -2
- package/dist/cjs/FormItem/DSFormItemLayout.js +1 -2
- package/dist/cjs/FormItem/DSFormItemLayout.js.map +2 -2
- package/dist/cjs/FormItem/Error/DSError.js +4 -4
- package/dist/cjs/FormItem/Error/DSError.js.map +2 -2
- package/dist/cjs/FormItem/Suffix/Suffix.js +4 -4
- package/dist/cjs/FormItem/Suffix/Suffix.js.map +2 -2
- package/dist/cjs/FormItem/props.js +42 -42
- package/dist/cjs/FormItem/props.js.map +2 -2
- package/dist/cjs/InputGroup/DSInputGroup.js +2 -2
- package/dist/cjs/InputGroup/DSInputGroup.js.map +2 -2
- package/dist/cjs/InputGroup/props.js +10 -10
- package/dist/cjs/InputGroup/props.js.map +2 -2
- package/dist/cjs/InputMask/DSInputMask.js +2 -2
- package/dist/cjs/InputMask/DSInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/DateInputMask.js +34 -34
- package/dist/cjs/InputMask/mask_types/DateInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/DateTimeInputMask.js +34 -34
- package/dist/cjs/InputMask/mask_types/DateTimeInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/DictionaryInputMask.js +37 -37
- package/dist/cjs/InputMask/mask_types/DictionaryInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/NumberInputMask.js +46 -46
- package/dist/cjs/InputMask/mask_types/NumberInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/PhoneInputMask.js +34 -34
- package/dist/cjs/InputMask/mask_types/PhoneInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/PhoneInternationalInputMask.js +34 -34
- package/dist/cjs/InputMask/mask_types/PhoneInternationalInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/SsnInputMask.js +34 -34
- package/dist/cjs/InputMask/mask_types/SsnInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/UsZipCodeInputMask.js +34 -34
- package/dist/cjs/InputMask/mask_types/UsZipCodeInputMask.js.map +2 -2
- package/dist/cjs/InputMask/mask_types/ZipCodeSearchInputMask.js +34 -34
- package/dist/cjs/InputMask/mask_types/ZipCodeSearchInputMask.js.map +2 -2
- package/dist/cjs/InputMask/props.js +36 -36
- package/dist/cjs/InputMask/props.js.map +2 -2
- package/dist/cjs/InputProtected/DSInputProtected.js +2 -2
- package/dist/cjs/InputProtected/DSInputProtected.js.map +2 -2
- package/dist/cjs/InputProtected/props.js +11 -11
- package/dist/cjs/InputProtected/props.js.map +2 -2
- package/dist/cjs/LargeInputText/DSLargeInputText.js +2 -2
- package/dist/cjs/LargeInputText/DSLargeInputText.js.map +2 -2
- package/dist/cjs/LargeInputText/props.js +28 -28
- package/dist/cjs/LargeInputText/props.js.map +2 -2
- package/dist/cjs/Radio/DSRadio.js +16 -16
- package/dist/cjs/Radio/DSRadio.js.map +2 -2
- package/dist/cjs/RadioGroup/DSRadioGroup.js +2 -2
- package/dist/cjs/RadioGroup/DSRadioGroup.js.map +2 -2
- package/dist/cjs/RadioGroup/props.js +11 -11
- package/dist/cjs/RadioGroup/props.js.map +2 -2
- package/dist/cjs/TimeInput/DSTimeInput.js +15 -15
- package/dist/cjs/TimeInput/DSTimeInput.js.map +2 -2
- package/dist/cjs/Toggle/DSToggle.js +13 -13
- package/dist/cjs/Toggle/DSToggle.js.map +2 -2
- package/dist/esm/CheckboxGroup/DSCheckboxGroup.js +1 -1
- package/dist/esm/CheckboxGroup/DSCheckboxGroup.js.map +1 -1
- package/dist/esm/CheckboxGroup/props.js +4 -4
- package/dist/esm/CheckboxGroup/props.js.map +2 -2
- package/dist/esm/ComboBoxFreeSolo/components/MultiValueLabel.js +1 -1
- package/dist/esm/ComboBoxFreeSolo/components/MultiValueLabel.js.map +1 -1
- package/dist/esm/ComboBoxFreeSolo/components/MultiValueRemove.js +1 -1
- package/dist/esm/ComboBoxFreeSolo/components/MultiValueRemove.js.map +1 -1
- package/dist/esm/ComboBoxFreeSolo/components/SingleValueRemove.js +1 -1
- package/dist/esm/ComboBoxFreeSolo/components/SingleValueRemove.js.map +1 -1
- package/dist/esm/DateInput/DSDateInput.js +1 -2
- package/dist/esm/DateInput/DSDateInput.js.map +2 -2
- package/dist/esm/DateInput/props.js +1 -1
- package/dist/esm/DateInput/props.js.map +1 -1
- package/dist/esm/DateInputV2/components/DSDateInput.js +1 -1
- package/dist/esm/DateInputV2/components/DSDateInput.js.map +1 -1
- package/dist/esm/DateInputV2/components/props.js +1 -1
- package/dist/esm/DateInputV2/components/props.js.map +1 -1
- package/dist/esm/DateInputV2/components/styled.js +1 -1
- package/dist/esm/DateInputV2/components/styled.js.map +1 -1
- package/dist/esm/FormItem/DSFormItemLayout.js +1 -2
- package/dist/esm/FormItem/DSFormItemLayout.js.map +2 -2
- package/dist/esm/FormItem/Error/DSError.js +1 -1
- package/dist/esm/FormItem/Error/DSError.js.map +1 -1
- package/dist/esm/FormItem/Suffix/Suffix.js +1 -1
- package/dist/esm/FormItem/Suffix/Suffix.js.map +1 -1
- package/dist/esm/FormItem/props.js +1 -1
- package/dist/esm/FormItem/props.js.map +1 -1
- package/dist/esm/InputGroup/DSInputGroup.js +1 -1
- package/dist/esm/InputGroup/DSInputGroup.js.map +1 -1
- package/dist/esm/InputGroup/props.js +1 -1
- package/dist/esm/InputGroup/props.js.map +1 -1
- package/dist/esm/InputMask/DSInputMask.js +1 -1
- package/dist/esm/InputMask/DSInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/DateInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/DateInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/DateTimeInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/DateTimeInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/DictionaryInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/DictionaryInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/NumberInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/NumberInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/PhoneInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/PhoneInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/PhoneInternationalInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/PhoneInternationalInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/SsnInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/SsnInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/UsZipCodeInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/UsZipCodeInputMask.js.map +1 -1
- package/dist/esm/InputMask/mask_types/ZipCodeSearchInputMask.js +1 -1
- package/dist/esm/InputMask/mask_types/ZipCodeSearchInputMask.js.map +1 -1
- package/dist/esm/InputMask/props.js +1 -1
- package/dist/esm/InputMask/props.js.map +1 -1
- package/dist/esm/InputProtected/DSInputProtected.js +1 -1
- package/dist/esm/InputProtected/DSInputProtected.js.map +1 -1
- package/dist/esm/InputProtected/props.js +1 -1
- package/dist/esm/InputProtected/props.js.map +1 -1
- package/dist/esm/LargeInputText/DSLargeInputText.js +1 -1
- package/dist/esm/LargeInputText/DSLargeInputText.js.map +1 -1
- package/dist/esm/LargeInputText/props.js +1 -1
- package/dist/esm/LargeInputText/props.js.map +1 -1
- package/dist/esm/Radio/DSRadio.js +1 -1
- package/dist/esm/Radio/DSRadio.js.map +1 -1
- package/dist/esm/RadioGroup/DSRadioGroup.js +1 -1
- package/dist/esm/RadioGroup/DSRadioGroup.js.map +1 -1
- package/dist/esm/RadioGroup/props.js +1 -1
- package/dist/esm/RadioGroup/props.js.map +1 -1
- package/dist/esm/TimeInput/DSTimeInput.js +1 -1
- package/dist/esm/TimeInput/DSTimeInput.js.map +1 -1
- package/dist/esm/Toggle/DSToggle.js +1 -1
- package/dist/esm/Toggle/DSToggle.js.map +1 -1
- package/package.json +22 -21
|
@@ -55,7 +55,7 @@ __export(PhoneInternationalInputMask_exports, {
|
|
|
55
55
|
module.exports = __toCommonJS(PhoneInternationalInputMask_exports);
|
|
56
56
|
var React = __toESM(require("react"));
|
|
57
57
|
var import_react = __toESM(require("react"));
|
|
58
|
-
var
|
|
58
|
+
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
59
59
|
var import_TextBox = require("../../TextBox");
|
|
60
60
|
var import_setCaretPosition = require("../utils/setCaretPosition");
|
|
61
61
|
const conformValue = (rawValue, cursorPos, lastkeycode) => {
|
|
@@ -236,39 +236,39 @@ const PhoneInternationalInputMask = (_a) => {
|
|
|
236
236
|
}));
|
|
237
237
|
};
|
|
238
238
|
PhoneInternationalInputMask.propTypes = {
|
|
239
|
-
focus:
|
|
240
|
-
setFocus:
|
|
241
|
-
setRawMask:
|
|
242
|
-
cursorPosition:
|
|
243
|
-
setCursorPosition:
|
|
244
|
-
lastkey:
|
|
245
|
-
setLastkey:
|
|
246
|
-
setRawValue:
|
|
247
|
-
style:
|
|
248
|
-
disabled:
|
|
249
|
-
className:
|
|
250
|
-
name:
|
|
251
|
-
maxLength:
|
|
252
|
-
minLength:
|
|
253
|
-
fluidWidth:
|
|
254
|
-
placeholder:
|
|
255
|
-
value:
|
|
256
|
-
onChange:
|
|
257
|
-
onKeyDown:
|
|
258
|
-
leftComponent:
|
|
259
|
-
rightComponent:
|
|
260
|
-
onFocus:
|
|
261
|
-
onBlur:
|
|
262
|
-
onPaste:
|
|
263
|
-
onKeyUp:
|
|
264
|
-
hasError:
|
|
265
|
-
readOnly:
|
|
266
|
-
onClick:
|
|
267
|
-
clearable:
|
|
268
|
-
type:
|
|
269
|
-
innerRef:
|
|
270
|
-
mask:
|
|
271
|
-
placeholderChar:
|
|
239
|
+
focus: import_ds_utilities.PropTypes.bool,
|
|
240
|
+
setFocus: import_ds_utilities.PropTypes.func,
|
|
241
|
+
setRawMask: import_ds_utilities.PropTypes.func,
|
|
242
|
+
cursorPosition: import_ds_utilities.PropTypes.shape({ current: import_ds_utilities.PropTypes.number }),
|
|
243
|
+
setCursorPosition: import_ds_utilities.PropTypes.func,
|
|
244
|
+
lastkey: import_ds_utilities.PropTypes.shape({ code: import_ds_utilities.PropTypes.number, key: import_ds_utilities.PropTypes.string }),
|
|
245
|
+
setLastkey: import_ds_utilities.PropTypes.func,
|
|
246
|
+
setRawValue: import_ds_utilities.PropTypes.func,
|
|
247
|
+
style: import_ds_utilities.PropTypes.object,
|
|
248
|
+
disabled: import_ds_utilities.PropTypes.bool,
|
|
249
|
+
className: import_ds_utilities.PropTypes.string,
|
|
250
|
+
name: import_ds_utilities.PropTypes.string,
|
|
251
|
+
maxLength: import_ds_utilities.PropTypes.number,
|
|
252
|
+
minLength: import_ds_utilities.PropTypes.number,
|
|
253
|
+
fluidWidth: import_ds_utilities.PropTypes.bool,
|
|
254
|
+
placeholder: import_ds_utilities.PropTypes.string,
|
|
255
|
+
value: import_ds_utilities.PropTypes.string,
|
|
256
|
+
onChange: import_ds_utilities.PropTypes.func,
|
|
257
|
+
onKeyDown: import_ds_utilities.PropTypes.func,
|
|
258
|
+
leftComponent: import_ds_utilities.PropTypes.element,
|
|
259
|
+
rightComponent: import_ds_utilities.PropTypes.element,
|
|
260
|
+
onFocus: import_ds_utilities.PropTypes.func,
|
|
261
|
+
onBlur: import_ds_utilities.PropTypes.func,
|
|
262
|
+
onPaste: import_ds_utilities.PropTypes.func,
|
|
263
|
+
onKeyUp: import_ds_utilities.PropTypes.func,
|
|
264
|
+
hasError: import_ds_utilities.PropTypes.bool,
|
|
265
|
+
readOnly: import_ds_utilities.PropTypes.bool,
|
|
266
|
+
onClick: import_ds_utilities.PropTypes.func,
|
|
267
|
+
clearable: import_ds_utilities.PropTypes.bool,
|
|
268
|
+
type: import_ds_utilities.PropTypes.string,
|
|
269
|
+
innerRef: import_ds_utilities.PropTypes.any,
|
|
270
|
+
mask: import_ds_utilities.PropTypes.any,
|
|
271
|
+
placeholderChar: import_ds_utilities.PropTypes.string
|
|
272
272
|
};
|
|
273
273
|
var PhoneInternationalInputMask_default = PhoneInternationalInputMask;
|
|
274
274
|
//# sourceMappingURL=PhoneInternationalInputMask.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/InputMask/mask_types/PhoneInternationalInputMask.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,mBAAsE;AACtE,
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { TCharsToAdd } from '../types';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\nconst conformValue = (rawValue, cursorPos, lastkeycode) => {\n let nextMaskedValue = rawValue\n .split('+1')\n .slice(-1)[0]\n .split('')\n .filter((char) => char >= '0' && char <= '9');\n\n while (nextMaskedValue.length && nextMaskedValue[0] === '0')\n nextMaskedValue.splice(0, 1);\n\n nextMaskedValue = nextMaskedValue.slice(0, 10);\n\n let maskedPos = 0;\n for (let i = 0; i < cursorPos; i += 1) {\n if (nextMaskedValue[maskedPos] === rawValue[i]) maskedPos += 1;\n }\n\n // list of [string to add, position to add]\nconst charactersToAdd: TCharsToAdd = [\n ['+1 (', 0],\n [') ', 7],\n ['-', 12],\n ];\n\n charactersToAdd.forEach(([chars, pos]) => {\n if (nextMaskedValue.length > pos) {\n nextMaskedValue.splice(pos, 0, ...chars);\n if (maskedPos >= pos) maskedPos += chars.length;\n }\n });\n\n if (lastkeycode !== 8 && maskedPos < nextMaskedValue.length) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos) maskedPos += chars.length;\n });\n } else if (lastkeycode === 8 && maskedPos) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos + 1) maskedPos -= chars.length;\n });\n }\n return { nextMaskedValue: nextMaskedValue.join(''), maskedPos };\n};\n\nconst PhoneInternationalInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n style,\n disabled,\n className,\n name,\n maxLength,\n minLength,\n fluidWidth,\n placeholder,\n onKeyDown,\n onClick,\n onChange,\n onFocus,\n onBlur,\n onPaste,\n onKeyUp,\n hasError,\n readOnly,\n type,\n innerRef,\n clearable = false,\n leftComponent,\n rightComponent,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {\n const { nextMaskedValue, maskedPos } = conformValue(\n rawValue,\n cursorPos,\n lastkeycode,\n );\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n },\n [onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef) innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nPhoneInternationalInputMask.propTypes = {\n focus: PropTypes.bool,\n setFocus: PropTypes.func,\n setRawMask: PropTypes.func,\n cursorPosition: PropTypes.shape({ current: PropTypes.number }),\n setCursorPosition: PropTypes.func,\n lastkey: PropTypes.shape({ code: PropTypes.number, key: PropTypes.string }),\n setLastkey: PropTypes.func,\n setRawValue: PropTypes.func,\n style: PropTypes.object,\n disabled: PropTypes.bool,\n className: PropTypes.string,\n name: PropTypes.string,\n maxLength: PropTypes.number,\n minLength: PropTypes.number,\n fluidWidth: PropTypes.bool,\n placeholder: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func,\n onKeyDown: PropTypes.func,\n leftComponent: PropTypes.element,\n rightComponent: PropTypes.element,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onPaste: PropTypes.func,\n onKeyUp: PropTypes.func,\n hasError: PropTypes.bool,\n readOnly: PropTypes.bool,\n onClick: PropTypes.func,\n clearable: PropTypes.bool,\n type: PropTypes.string,\n innerRef: PropTypes.any,\n mask: PropTypes.any,\n placeholderChar: PropTypes.string,\n};\n\nexport { PhoneInternationalInputMask };\nexport default PhoneInternationalInputMask;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -55,7 +55,7 @@ __export(SsnInputMask_exports, {
|
|
|
55
55
|
module.exports = __toCommonJS(SsnInputMask_exports);
|
|
56
56
|
var React = __toESM(require("react"));
|
|
57
57
|
var import_react = __toESM(require("react"));
|
|
58
|
-
var
|
|
58
|
+
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
59
59
|
var import_TextBox = require("../../TextBox");
|
|
60
60
|
var import_setCaretPosition = require("../utils/setCaretPosition");
|
|
61
61
|
const conformValue = (rawValue, cursorPos, lastkeycode) => {
|
|
@@ -232,39 +232,39 @@ const SsnInputMask = (_a) => {
|
|
|
232
232
|
}));
|
|
233
233
|
};
|
|
234
234
|
SsnInputMask.propTypes = {
|
|
235
|
-
focus:
|
|
236
|
-
setFocus:
|
|
237
|
-
setRawMask:
|
|
238
|
-
cursorPosition:
|
|
239
|
-
setCursorPosition:
|
|
240
|
-
lastkey:
|
|
241
|
-
setLastkey:
|
|
242
|
-
setRawValue:
|
|
243
|
-
style:
|
|
244
|
-
disabled:
|
|
245
|
-
className:
|
|
246
|
-
name:
|
|
247
|
-
maxLength:
|
|
248
|
-
minLength:
|
|
249
|
-
fluidWidth:
|
|
250
|
-
placeholder:
|
|
251
|
-
value:
|
|
252
|
-
onChange:
|
|
253
|
-
onKeyDown:
|
|
254
|
-
leftComponent:
|
|
255
|
-
rightComponent:
|
|
256
|
-
onFocus:
|
|
257
|
-
onBlur:
|
|
258
|
-
onPaste:
|
|
259
|
-
onKeyUp:
|
|
260
|
-
hasError:
|
|
261
|
-
readOnly:
|
|
262
|
-
onClick:
|
|
263
|
-
clearable:
|
|
264
|
-
type:
|
|
265
|
-
innerRef:
|
|
266
|
-
mask:
|
|
267
|
-
placeholderChar:
|
|
235
|
+
focus: import_ds_utilities.PropTypes.bool,
|
|
236
|
+
setFocus: import_ds_utilities.PropTypes.func,
|
|
237
|
+
setRawMask: import_ds_utilities.PropTypes.func,
|
|
238
|
+
cursorPosition: import_ds_utilities.PropTypes.shape({ current: import_ds_utilities.PropTypes.number }),
|
|
239
|
+
setCursorPosition: import_ds_utilities.PropTypes.func,
|
|
240
|
+
lastkey: import_ds_utilities.PropTypes.shape({ code: import_ds_utilities.PropTypes.number, key: import_ds_utilities.PropTypes.string }),
|
|
241
|
+
setLastkey: import_ds_utilities.PropTypes.func,
|
|
242
|
+
setRawValue: import_ds_utilities.PropTypes.func,
|
|
243
|
+
style: import_ds_utilities.PropTypes.object,
|
|
244
|
+
disabled: import_ds_utilities.PropTypes.bool,
|
|
245
|
+
className: import_ds_utilities.PropTypes.string,
|
|
246
|
+
name: import_ds_utilities.PropTypes.string,
|
|
247
|
+
maxLength: import_ds_utilities.PropTypes.number,
|
|
248
|
+
minLength: import_ds_utilities.PropTypes.number,
|
|
249
|
+
fluidWidth: import_ds_utilities.PropTypes.bool,
|
|
250
|
+
placeholder: import_ds_utilities.PropTypes.string,
|
|
251
|
+
value: import_ds_utilities.PropTypes.string,
|
|
252
|
+
onChange: import_ds_utilities.PropTypes.func,
|
|
253
|
+
onKeyDown: import_ds_utilities.PropTypes.func,
|
|
254
|
+
leftComponent: import_ds_utilities.PropTypes.element,
|
|
255
|
+
rightComponent: import_ds_utilities.PropTypes.element,
|
|
256
|
+
onFocus: import_ds_utilities.PropTypes.func,
|
|
257
|
+
onBlur: import_ds_utilities.PropTypes.func,
|
|
258
|
+
onPaste: import_ds_utilities.PropTypes.func,
|
|
259
|
+
onKeyUp: import_ds_utilities.PropTypes.func,
|
|
260
|
+
hasError: import_ds_utilities.PropTypes.bool,
|
|
261
|
+
readOnly: import_ds_utilities.PropTypes.bool,
|
|
262
|
+
onClick: import_ds_utilities.PropTypes.func,
|
|
263
|
+
clearable: import_ds_utilities.PropTypes.bool,
|
|
264
|
+
type: import_ds_utilities.PropTypes.string,
|
|
265
|
+
innerRef: import_ds_utilities.PropTypes.any,
|
|
266
|
+
mask: import_ds_utilities.PropTypes.any,
|
|
267
|
+
placeholderChar: import_ds_utilities.PropTypes.string
|
|
268
268
|
};
|
|
269
269
|
var SsnInputMask_default = SsnInputMask;
|
|
270
270
|
//# sourceMappingURL=SsnInputMask.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/InputMask/mask_types/SsnInputMask.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,mBAAsE;AACtE,
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { TCharsToAdd } from '../types';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\nconst conformValue = (rawValue, cursorPos, lastkeycode) => {\n const nextMaskedValue = rawValue\n .split('')\n .filter((char) => char >= '0' && char <= '9')\n .slice(0, 9);\n\n let maskedPos = 0;\n for (let i = 0; i < cursorPos; i += 1) {\n if (nextMaskedValue[maskedPos] === rawValue[i]) maskedPos += 1;\n }\n\n // list of [string to add, position to add]\nconst charactersToAdd: TCharsToAdd = [\n ['-', 3],\n ['-', 6],\n ];\n\n charactersToAdd.forEach(([chars, pos]) => {\n if (nextMaskedValue.length > pos) {\n nextMaskedValue.splice(pos, 0, ...chars);\n if (maskedPos >= pos) maskedPos += chars.length;\n }\n });\n\n if (lastkeycode !== 8 && maskedPos < nextMaskedValue.length) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos) maskedPos += chars.length;\n });\n } else if (lastkeycode === 8 && maskedPos) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos + 1) maskedPos -= chars.length;\n });\n }\n return { nextMaskedValue: nextMaskedValue.join(''), maskedPos };\n};\n\nconst SsnInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n style,\n disabled,\n className,\n name,\n maxLength,\n minLength,\n fluidWidth,\n placeholder,\n onKeyDown,\n onClick,\n onChange,\n onFocus,\n onBlur,\n onPaste,\n onKeyUp,\n hasError,\n readOnly,\n type,\n innerRef,\n clearable = false,\n leftComponent,\n rightComponent,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {\n const { nextMaskedValue, maskedPos } = conformValue(\n rawValue,\n cursorPos,\n lastkeycode,\n );\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n },\n [onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef) innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nSsnInputMask.propTypes = {\n focus: PropTypes.bool,\n setFocus: PropTypes.func,\n setRawMask: PropTypes.func,\n cursorPosition: PropTypes.shape({ current: PropTypes.number }),\n setCursorPosition: PropTypes.func,\n lastkey: PropTypes.shape({ code: PropTypes.number, key: PropTypes.string }),\n setLastkey: PropTypes.func,\n setRawValue: PropTypes.func,\n style: PropTypes.object,\n disabled: PropTypes.bool,\n className: PropTypes.string,\n name: PropTypes.string,\n maxLength: PropTypes.number,\n minLength: PropTypes.number,\n fluidWidth: PropTypes.bool,\n placeholder: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func,\n onKeyDown: PropTypes.func,\n leftComponent: PropTypes.element,\n rightComponent: PropTypes.element,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onPaste: PropTypes.func,\n onKeyUp: PropTypes.func,\n hasError: PropTypes.bool,\n readOnly: PropTypes.bool,\n onClick: PropTypes.func,\n clearable: PropTypes.bool,\n type: PropTypes.string,\n innerRef: PropTypes.any,\n mask: PropTypes.any,\n placeholderChar: PropTypes.string,\n};\n\nexport { SsnInputMask };\nexport default SsnInputMask;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -55,7 +55,7 @@ __export(UsZipCodeInputMask_exports, {
|
|
|
55
55
|
module.exports = __toCommonJS(UsZipCodeInputMask_exports);
|
|
56
56
|
var React = __toESM(require("react"));
|
|
57
57
|
var import_react = __toESM(require("react"));
|
|
58
|
-
var
|
|
58
|
+
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
59
59
|
var import_TextBox = require("../../TextBox");
|
|
60
60
|
var import_setCaretPosition = require("../utils/setCaretPosition");
|
|
61
61
|
const conformValue = (rawValue, cursorPos) => {
|
|
@@ -210,39 +210,39 @@ const UsZipCodeInputMask = (_a) => {
|
|
|
210
210
|
}));
|
|
211
211
|
};
|
|
212
212
|
UsZipCodeInputMask.propTypes = {
|
|
213
|
-
focus:
|
|
214
|
-
setFocus:
|
|
215
|
-
setRawMask:
|
|
216
|
-
cursorPosition:
|
|
217
|
-
setCursorPosition:
|
|
218
|
-
lastkey:
|
|
219
|
-
setLastkey:
|
|
220
|
-
setRawValue:
|
|
221
|
-
style:
|
|
222
|
-
disabled:
|
|
223
|
-
className:
|
|
224
|
-
name:
|
|
225
|
-
maxLength:
|
|
226
|
-
minLength:
|
|
227
|
-
fluidWidth:
|
|
228
|
-
placeholder:
|
|
229
|
-
value:
|
|
230
|
-
onChange:
|
|
231
|
-
onKeyDown:
|
|
232
|
-
leftComponent:
|
|
233
|
-
rightComponent:
|
|
234
|
-
onFocus:
|
|
235
|
-
onBlur:
|
|
236
|
-
onPaste:
|
|
237
|
-
onKeyUp:
|
|
238
|
-
hasError:
|
|
239
|
-
readOnly:
|
|
240
|
-
onClick:
|
|
241
|
-
clearable:
|
|
242
|
-
type:
|
|
243
|
-
innerRef:
|
|
244
|
-
mask:
|
|
245
|
-
placeholderChar:
|
|
213
|
+
focus: import_ds_utilities.PropTypes.bool,
|
|
214
|
+
setFocus: import_ds_utilities.PropTypes.func,
|
|
215
|
+
setRawMask: import_ds_utilities.PropTypes.func,
|
|
216
|
+
cursorPosition: import_ds_utilities.PropTypes.shape({ current: import_ds_utilities.PropTypes.number }),
|
|
217
|
+
setCursorPosition: import_ds_utilities.PropTypes.func,
|
|
218
|
+
lastkey: import_ds_utilities.PropTypes.shape({ code: import_ds_utilities.PropTypes.number, key: import_ds_utilities.PropTypes.string }),
|
|
219
|
+
setLastkey: import_ds_utilities.PropTypes.func,
|
|
220
|
+
setRawValue: import_ds_utilities.PropTypes.func,
|
|
221
|
+
style: import_ds_utilities.PropTypes.object,
|
|
222
|
+
disabled: import_ds_utilities.PropTypes.bool,
|
|
223
|
+
className: import_ds_utilities.PropTypes.string,
|
|
224
|
+
name: import_ds_utilities.PropTypes.string,
|
|
225
|
+
maxLength: import_ds_utilities.PropTypes.number,
|
|
226
|
+
minLength: import_ds_utilities.PropTypes.number,
|
|
227
|
+
fluidWidth: import_ds_utilities.PropTypes.bool,
|
|
228
|
+
placeholder: import_ds_utilities.PropTypes.string,
|
|
229
|
+
value: import_ds_utilities.PropTypes.string,
|
|
230
|
+
onChange: import_ds_utilities.PropTypes.func,
|
|
231
|
+
onKeyDown: import_ds_utilities.PropTypes.func,
|
|
232
|
+
leftComponent: import_ds_utilities.PropTypes.element,
|
|
233
|
+
rightComponent: import_ds_utilities.PropTypes.element,
|
|
234
|
+
onFocus: import_ds_utilities.PropTypes.func,
|
|
235
|
+
onBlur: import_ds_utilities.PropTypes.func,
|
|
236
|
+
onPaste: import_ds_utilities.PropTypes.func,
|
|
237
|
+
onKeyUp: import_ds_utilities.PropTypes.func,
|
|
238
|
+
hasError: import_ds_utilities.PropTypes.bool,
|
|
239
|
+
readOnly: import_ds_utilities.PropTypes.bool,
|
|
240
|
+
onClick: import_ds_utilities.PropTypes.func,
|
|
241
|
+
clearable: import_ds_utilities.PropTypes.bool,
|
|
242
|
+
type: import_ds_utilities.PropTypes.string,
|
|
243
|
+
innerRef: import_ds_utilities.PropTypes.any,
|
|
244
|
+
mask: import_ds_utilities.PropTypes.any,
|
|
245
|
+
placeholderChar: import_ds_utilities.PropTypes.string
|
|
246
246
|
};
|
|
247
247
|
var UsZipCodeInputMask_default = UsZipCodeInputMask;
|
|
248
248
|
//# sourceMappingURL=UsZipCodeInputMask.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/InputMask/mask_types/UsZipCodeInputMask.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,mBAAsE;AACtE,
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\nconst conformValue = (rawValue: string, cursorPos: number) => {\n const nextMaskedValue = rawValue\n .split('')\n .filter((char) => char >= '0' && char <= '9')\n .slice(0, 5);\n\n let maskedPos = 0;\n for (let i = 0; i < cursorPos; i += 1) {\n if (nextMaskedValue[maskedPos] === rawValue[i]) maskedPos += 1;\n }\n return { nextMaskedValue: nextMaskedValue.join(''), maskedPos };\n};\n\nconst UsZipCodeInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n style,\n disabled,\n className,\n name,\n maxLength,\n minLength,\n fluidWidth,\n placeholder,\n onKeyDown,\n onClick,\n onChange,\n onFocus,\n onBlur,\n onPaste,\n onKeyUp,\n hasError,\n readOnly,\n type,\n innerRef,\n clearable = false,\n leftComponent,\n rightComponent,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {\n const { nextMaskedValue, maskedPos } = conformValue(rawValue, cursorPos);\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n },\n [onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef) innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nUsZipCodeInputMask.propTypes = {\n focus: PropTypes.bool,\n setFocus: PropTypes.func,\n setRawMask: PropTypes.func,\n cursorPosition: PropTypes.shape({ current: PropTypes.number }),\n setCursorPosition: PropTypes.func,\n lastkey: PropTypes.shape({ code: PropTypes.number, key: PropTypes.string }),\n setLastkey: PropTypes.func,\n setRawValue: PropTypes.func,\n style: PropTypes.object,\n disabled: PropTypes.bool,\n className: PropTypes.string,\n name: PropTypes.string,\n maxLength: PropTypes.number,\n minLength: PropTypes.number,\n fluidWidth: PropTypes.bool,\n placeholder: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func,\n onKeyDown: PropTypes.func,\n leftComponent: PropTypes.element,\n rightComponent: PropTypes.element,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onPaste: PropTypes.func,\n onKeyUp: PropTypes.func,\n hasError: PropTypes.bool,\n readOnly: PropTypes.bool,\n onClick: PropTypes.func,\n clearable: PropTypes.bool,\n type: PropTypes.string,\n innerRef: PropTypes.any,\n mask: PropTypes.any,\n placeholderChar: PropTypes.string,\n};\n\nexport { UsZipCodeInputMask };\nexport default UsZipCodeInputMask;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -55,7 +55,7 @@ __export(ZipCodeSearchInputMask_exports, {
|
|
|
55
55
|
module.exports = __toCommonJS(ZipCodeSearchInputMask_exports);
|
|
56
56
|
var React = __toESM(require("react"));
|
|
57
57
|
var import_react = __toESM(require("react"));
|
|
58
|
-
var
|
|
58
|
+
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
59
59
|
var import_TextBox = require("../../TextBox");
|
|
60
60
|
var import_setCaretPosition = require("../utils/setCaretPosition");
|
|
61
61
|
const conformValue = (rawValue, cursorPos, lastkeycode) => {
|
|
@@ -229,39 +229,39 @@ const ZipCodeSearchInputMask = (_a) => {
|
|
|
229
229
|
}));
|
|
230
230
|
};
|
|
231
231
|
ZipCodeSearchInputMask.propTypes = {
|
|
232
|
-
focus:
|
|
233
|
-
setFocus:
|
|
234
|
-
setRawMask:
|
|
235
|
-
cursorPosition:
|
|
236
|
-
setCursorPosition:
|
|
237
|
-
lastkey:
|
|
238
|
-
setLastkey:
|
|
239
|
-
setRawValue:
|
|
240
|
-
style:
|
|
241
|
-
disabled:
|
|
242
|
-
className:
|
|
243
|
-
name:
|
|
244
|
-
maxLength:
|
|
245
|
-
minLength:
|
|
246
|
-
fluidWidth:
|
|
247
|
-
placeholder:
|
|
248
|
-
value:
|
|
249
|
-
onChange:
|
|
250
|
-
onKeyDown:
|
|
251
|
-
leftComponent:
|
|
252
|
-
rightComponent:
|
|
253
|
-
onFocus:
|
|
254
|
-
onBlur:
|
|
255
|
-
onPaste:
|
|
256
|
-
onKeyUp:
|
|
257
|
-
hasError:
|
|
258
|
-
readOnly:
|
|
259
|
-
onClick:
|
|
260
|
-
clearable:
|
|
261
|
-
type:
|
|
262
|
-
innerRef:
|
|
263
|
-
mask:
|
|
264
|
-
placeholderChar:
|
|
232
|
+
focus: import_ds_utilities.PropTypes.bool,
|
|
233
|
+
setFocus: import_ds_utilities.PropTypes.func,
|
|
234
|
+
setRawMask: import_ds_utilities.PropTypes.func,
|
|
235
|
+
cursorPosition: import_ds_utilities.PropTypes.shape({ current: import_ds_utilities.PropTypes.number }),
|
|
236
|
+
setCursorPosition: import_ds_utilities.PropTypes.func,
|
|
237
|
+
lastkey: import_ds_utilities.PropTypes.shape({ code: import_ds_utilities.PropTypes.number, key: import_ds_utilities.PropTypes.string }),
|
|
238
|
+
setLastkey: import_ds_utilities.PropTypes.func,
|
|
239
|
+
setRawValue: import_ds_utilities.PropTypes.func,
|
|
240
|
+
style: import_ds_utilities.PropTypes.object,
|
|
241
|
+
disabled: import_ds_utilities.PropTypes.bool,
|
|
242
|
+
className: import_ds_utilities.PropTypes.string,
|
|
243
|
+
name: import_ds_utilities.PropTypes.string,
|
|
244
|
+
maxLength: import_ds_utilities.PropTypes.number,
|
|
245
|
+
minLength: import_ds_utilities.PropTypes.number,
|
|
246
|
+
fluidWidth: import_ds_utilities.PropTypes.bool,
|
|
247
|
+
placeholder: import_ds_utilities.PropTypes.string,
|
|
248
|
+
value: import_ds_utilities.PropTypes.string,
|
|
249
|
+
onChange: import_ds_utilities.PropTypes.func,
|
|
250
|
+
onKeyDown: import_ds_utilities.PropTypes.func,
|
|
251
|
+
leftComponent: import_ds_utilities.PropTypes.element,
|
|
252
|
+
rightComponent: import_ds_utilities.PropTypes.element,
|
|
253
|
+
onFocus: import_ds_utilities.PropTypes.func,
|
|
254
|
+
onBlur: import_ds_utilities.PropTypes.func,
|
|
255
|
+
onPaste: import_ds_utilities.PropTypes.func,
|
|
256
|
+
onKeyUp: import_ds_utilities.PropTypes.func,
|
|
257
|
+
hasError: import_ds_utilities.PropTypes.bool,
|
|
258
|
+
readOnly: import_ds_utilities.PropTypes.bool,
|
|
259
|
+
onClick: import_ds_utilities.PropTypes.func,
|
|
260
|
+
clearable: import_ds_utilities.PropTypes.bool,
|
|
261
|
+
type: import_ds_utilities.PropTypes.string,
|
|
262
|
+
innerRef: import_ds_utilities.PropTypes.any,
|
|
263
|
+
mask: import_ds_utilities.PropTypes.any,
|
|
264
|
+
placeholderChar: import_ds_utilities.PropTypes.string
|
|
265
265
|
};
|
|
266
266
|
var ZipCodeSearchInputMask_default = ZipCodeSearchInputMask;
|
|
267
267
|
//# sourceMappingURL=ZipCodeSearchInputMask.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/InputMask/mask_types/ZipCodeSearchInputMask.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,mBAAsE;AACtE,
|
|
4
|
+
"sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useCallback, useLayoutEffect, useRef, useState } from 'react';\nimport { PropTypes } from '@elliemae/ds-utilities';\nimport { DSTextBox } from '../../TextBox';\nimport { TCharsToAdd } from '../types';\nimport { setCaretPosition } from '../utils/setCaretPosition';\n\nconst conformValue = (rawValue, cursorPos, lastkeycode) => {\n const nextMaskedValue = rawValue\n .split('')\n .filter((char) => char >= '0' && char <= '9')\n .slice(0, 9);\n\n let maskedPos = 0;\n for (let i = 0; i < cursorPos; i += 1) {\n if (nextMaskedValue[maskedPos] === rawValue[i]) maskedPos += 1;\n }\n\n // list of [string to add, position to add]\n const charactersToAdd: TCharsToAdd = [['-', 5]];\n\n charactersToAdd.forEach(([chars, pos]) => {\n if (nextMaskedValue.length > pos) {\n nextMaskedValue.splice(pos, 0, chars);\n if (maskedPos >= pos) maskedPos += chars.length;\n }\n });\n\n if (lastkeycode !== 8 && maskedPos < nextMaskedValue.length) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos) maskedPos += chars.length;\n });\n } else if (lastkeycode === 8 && maskedPos) {\n charactersToAdd.forEach(([chars, pos]) => {\n if (maskedPos === pos + 1) maskedPos -= chars.length;\n });\n }\n return { nextMaskedValue: nextMaskedValue.join(''), maskedPos };\n};\n\nconst ZipCodeSearchInputMask = ({\n focus,\n setFocus,\n setRawMask,\n cursorPosition,\n setCursorPosition,\n lastkey,\n setLastkey,\n setRawValue,\n style,\n disabled,\n className,\n name,\n maxLength,\n minLength,\n fluidWidth,\n placeholder,\n onKeyDown,\n onClick,\n onChange,\n onFocus,\n onBlur,\n onPaste,\n onKeyUp,\n hasError,\n readOnly,\n type,\n innerRef,\n clearable = false,\n leftComponent,\n rightComponent,\n value,\n ...rest\n}) => {\n const inputRef = useRef();\n const [maskedValue, setMaskedValue] = useState(value);\n\n const conform = useCallback(\n ({ rawValue, cursorPos, lastkeycode, shouldUpdateCursorPos = true }) => {\n const { nextMaskedValue, maskedPos } = conformValue(\n rawValue,\n cursorPos,\n lastkeycode,\n );\n const event = {\n target: {\n value: nextMaskedValue,\n originalValue: rawValue,\n },\n };\n if (onChange && nextMaskedValue !== maskedValue) onChange(event);\n\n setMaskedValue(nextMaskedValue);\n setRawValue(nextMaskedValue);\n\n if (shouldUpdateCursorPos) setCursorPosition({ current: maskedPos });\n },\n [maskedValue, onChange],\n );\n\n const handleOnChange = useCallback(\n (e) => {\n const { value: rawValue, selectionEnd } = e.target;\n setRawMask(rawValue);\n setRawValue(rawValue);\n setCursorPosition({ current: selectionEnd });\n setFocus(true);\n },\n [setRawMask, setRawValue, setCursorPosition, setFocus, lastkey.code],\n );\n\n useLayoutEffect(() => {\n if (focus) setCaretPosition(inputRef.current, cursorPosition.current);\n }, [focus, cursorPosition]);\n\n useLayoutEffect(() => {\n // if the value changes, then re-conform the mask\n conform({\n rawValue: value,\n cursorPos: cursorPosition.current,\n lastkeycode: lastkey.code,\n shouldUpdateCursorPos: focus,\n });\n }, [focus, value, cursorPosition.current]);\n\n const handleKeyDown = useCallback(\n (e) => {\n e.stopPropagation();\n setLastkey({ key: e.key, code: e.keyCode });\n onKeyDown(e);\n },\n [onKeyDown],\n );\n\n const handleBlur = useCallback(\n (e) => {\n setFocus(false);\n onBlur(e);\n },\n [onBlur],\n );\n\n return (\n <DSTextBox\n {...rest}\n className={className}\n clearable={clearable}\n disabled={disabled}\n fluidWidth={fluidWidth}\n hasError={hasError}\n innerRef={(ref) => {\n inputRef.current = ref;\n if (innerRef && typeof innerRef === 'function') innerRef(ref);\n }}\n isActive={focus}\n leftComponent={leftComponent}\n maxLength={maxLength}\n minLength={minLength}\n name={name}\n onBlur={handleBlur}\n onChange={handleOnChange}\n onClick={onClick}\n onFocus={onFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={onKeyUp}\n onPaste={onPaste}\n placeholder={placeholder}\n readOnly={readOnly}\n rightComponent={rightComponent}\n style={style}\n type={type}\n value={maskedValue}\n />\n );\n};\n\nZipCodeSearchInputMask.propTypes = {\n focus: PropTypes.bool,\n setFocus: PropTypes.func,\n setRawMask: PropTypes.func,\n cursorPosition: PropTypes.shape({ current: PropTypes.number }),\n setCursorPosition: PropTypes.func,\n lastkey: PropTypes.shape({ code: PropTypes.number, key: PropTypes.string }),\n setLastkey: PropTypes.func,\n setRawValue: PropTypes.func,\n style: PropTypes.object,\n disabled: PropTypes.bool,\n className: PropTypes.string,\n name: PropTypes.string,\n maxLength: PropTypes.number,\n minLength: PropTypes.number,\n fluidWidth: PropTypes.bool,\n placeholder: PropTypes.string,\n value: PropTypes.string,\n onChange: PropTypes.func,\n onKeyDown: PropTypes.func,\n leftComponent: PropTypes.element,\n rightComponent: PropTypes.element,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n onPaste: PropTypes.func,\n onKeyUp: PropTypes.func,\n hasError: PropTypes.bool,\n readOnly: PropTypes.bool,\n onClick: PropTypes.func,\n clearable: PropTypes.bool,\n type: PropTypes.string,\n innerRef: PropTypes.any,\n mask: PropTypes.any,\n placeholderChar: PropTypes.string,\n};\n\nexport { ZipCodeSearchInputMask };\nexport default ZipCodeSearchInputMask;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|