@dnb/eufemia 10.67.0 → 10.67.1

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 (72) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/cjs/components/input/Input.js +17 -2
  3. package/cjs/components/input/Input.js.map +1 -1
  4. package/cjs/components/input-masked/InputMaskedHooks.js +5 -4
  5. package/cjs/components/input-masked/InputMaskedHooks.js.map +1 -1
  6. package/cjs/components/input-masked/MultiInputMask.js +3 -3
  7. package/cjs/components/input-masked/MultiInputMask.js.map +1 -1
  8. package/cjs/extensions/forms/Field/Date/Date.js +5 -4
  9. package/cjs/extensions/forms/Field/Date/Date.js.map +1 -1
  10. package/cjs/extensions/forms/Field/Date/DateDocs.js +4 -1
  11. package/cjs/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  12. package/cjs/shared/Eufemia.d.ts +1 -1
  13. package/cjs/shared/Eufemia.js +2 -2
  14. package/cjs/shared/Eufemia.js.map +1 -1
  15. package/cjs/style/core/scopes.scss +1 -1
  16. package/cjs/style/dnb-ui-basis.css +1 -1
  17. package/cjs/style/dnb-ui-basis.min.css +1 -1
  18. package/cjs/style/dnb-ui-body.css +1 -1
  19. package/cjs/style/dnb-ui-body.min.css +1 -1
  20. package/cjs/style/dnb-ui-core.css +1 -1
  21. package/cjs/style/dnb-ui-core.min.css +1 -1
  22. package/components/input/Input.js +17 -2
  23. package/components/input/Input.js.map +1 -1
  24. package/components/input-masked/InputMaskedHooks.js +3 -4
  25. package/components/input-masked/InputMaskedHooks.js.map +1 -1
  26. package/components/input-masked/MultiInputMask.js +3 -3
  27. package/components/input-masked/MultiInputMask.js.map +1 -1
  28. package/es/components/input/Input.js +17 -2
  29. package/es/components/input/Input.js.map +1 -1
  30. package/es/components/input-masked/InputMaskedHooks.js +3 -4
  31. package/es/components/input-masked/InputMaskedHooks.js.map +1 -1
  32. package/es/components/input-masked/MultiInputMask.js +3 -3
  33. package/es/components/input-masked/MultiInputMask.js.map +1 -1
  34. package/es/extensions/forms/Field/Date/Date.js +5 -4
  35. package/es/extensions/forms/Field/Date/Date.js.map +1 -1
  36. package/es/extensions/forms/Field/Date/DateDocs.js +4 -1
  37. package/es/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  38. package/es/shared/Eufemia.d.ts +1 -1
  39. package/es/shared/Eufemia.js +2 -2
  40. package/es/shared/Eufemia.js.map +1 -1
  41. package/es/style/core/scopes.scss +1 -1
  42. package/es/style/dnb-ui-basis.css +1 -1
  43. package/es/style/dnb-ui-basis.min.css +1 -1
  44. package/es/style/dnb-ui-body.css +1 -1
  45. package/es/style/dnb-ui-body.min.css +1 -1
  46. package/es/style/dnb-ui-core.css +1 -1
  47. package/es/style/dnb-ui-core.min.css +1 -1
  48. package/esm/dnb-ui-basis.min.mjs +1 -1
  49. package/esm/dnb-ui-components.min.mjs +1 -1
  50. package/esm/dnb-ui-elements.min.mjs +1 -1
  51. package/esm/dnb-ui-extensions.min.mjs +1 -1
  52. package/esm/dnb-ui-lib.min.mjs +1 -1
  53. package/extensions/forms/Field/Date/Date.js +5 -4
  54. package/extensions/forms/Field/Date/Date.js.map +1 -1
  55. package/extensions/forms/Field/Date/DateDocs.js +4 -1
  56. package/extensions/forms/Field/Date/DateDocs.js.map +1 -1
  57. package/package.json +1 -1
  58. package/shared/Eufemia.d.ts +1 -1
  59. package/shared/Eufemia.js +2 -2
  60. package/shared/Eufemia.js.map +1 -1
  61. package/style/core/scopes.scss +1 -1
  62. package/style/dnb-ui-basis.css +1 -1
  63. package/style/dnb-ui-basis.min.css +1 -1
  64. package/style/dnb-ui-body.css +1 -1
  65. package/style/dnb-ui-body.min.css +1 -1
  66. package/style/dnb-ui-core.css +1 -1
  67. package/style/dnb-ui-core.min.css +1 -1
  68. package/umd/dnb-ui-basis.min.js +1 -1
  69. package/umd/dnb-ui-components.min.js +1 -1
  70. package/umd/dnb-ui-elements.min.js +1 -1
  71. package/umd/dnb-ui-extensions.min.js +1 -1
  72. package/umd/dnb-ui-lib.min.js +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
3
3
  All notable changes to @dnb/eufemia will be documented in this file. See
4
4
  [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [10.67.1](https://github.com/dnbexperience/eufemia/compare/v10.67.0...v10.67.1) (2025-03-11)
7
+
8
+
9
+ ### :memo: Documentation
10
+
11
+ * correct broken link to uutilsynet about WCAG ([34f4001](https://github.com/dnbexperience/eufemia/commit/34f40013afb0d3040687fc52e06bafc0275c77a1))
12
+ * **Field.Date:** remove `date` property ([#4718](https://github.com/dnbexperience/eufemia/issues/4718)) ([b0e34a0](https://github.com/dnbexperience/eufemia/commit/b0e34a070b73d23c27e619a6bc0bb0998dc6606d))
13
+ * **Field.Date:** remove `startDate` property ([#4720](https://github.com/dnbexperience/eufemia/issues/4720)) ([4181d04](https://github.com/dnbexperience/eufemia/commit/4181d049f4c906c832f1b741f8db757d0e9c15ac))
14
+ * **Field.Date:** remove date property ([243f141](https://github.com/dnbexperience/eufemia/commit/243f1415f03e179975682d111bae117ec5597da0))
15
+ * **Field.Date:** remove endDate property ([f617677](https://github.com/dnbexperience/eufemia/commit/f6176773b9c9437181faefad29f6a3afb985759a))
16
+ * **Field.Date:** remove endDate property ([#4721](https://github.com/dnbexperience/eufemia/issues/4721)) ([f1fa1cd](https://github.com/dnbexperience/eufemia/commit/f1fa1cd53157720dbd4b5623bcbb369ce4ff5500))
17
+ * **Field.Date:** remove startDate property ([81fedcd](https://github.com/dnbexperience/eufemia/commit/81fedcdb0bcae6cf3e806e9f143ca57de9a92ac4))
18
+ * **PushContainer:** move events docs to events tab ([c35d2c8](https://github.com/dnbexperience/eufemia/commit/c35d2c8d5f7d5ac0b321028d3c6348876a756854))
19
+ * **PushContainer:** move events docs to events tab ([#4717](https://github.com/dnbexperience/eufemia/issues/4717)) ([86dfa3f](https://github.com/dnbexperience/eufemia/commit/86dfa3fc9f831d26e0503cfb643fb24867017e3e))
20
+
21
+
22
+ ### :bug: Bug Fixes
23
+
24
+ * **Field.Date:** validate `minDate` & `maxDate` by the start of the day (00:00) ([#4716](https://github.com/dnbexperience/eufemia/issues/4716)) ([98996bd](https://github.com/dnbexperience/eufemia/commit/98996bdb91680e65572c1db0538492ab7f962410))
25
+ * **Input:** remove `value` attribute (use element.value for getting the value in tests) ([f1711a8](https://github.com/dnbexperience/eufemia/commit/f1711a853573a2494e7a574ee7e959cb18dc121b))
26
+ * **Input:** remove value attribute (⚠️ Use element.value instead in e.g. tests) ([#4713](https://github.com/dnbexperience/eufemia/issues/4713)) ([dd2ae1a](https://github.com/dnbexperience/eufemia/commit/dd2ae1a6c48e7cd7c51c9b9c82b84a312ed7b53e))
27
+
6
28
  ## [10.67.0](https://github.com/dnbexperience/eufemia/compare/v10.66.1...v10.67.0) (2025-03-10)
7
29
 
8
30
 
@@ -126,6 +126,13 @@ class Input extends _react.default.PureComponent {
126
126
  value: null,
127
127
  _value: null
128
128
  });
129
+ _defineProperty(this, "updateInputValue", () => {
130
+ if (this._ref.current && !this.props.input_element) {
131
+ const value = this.state.value;
132
+ const hasValue = Input.hasValue(value);
133
+ this._ref.current.value = hasValue ? value : '';
134
+ }
135
+ });
129
136
  _defineProperty(this, "onFocusHandler", event => {
130
137
  const {
131
138
  value
@@ -171,6 +178,7 @@ class Input extends _react.default.PureComponent {
171
178
  event
172
179
  });
173
180
  if (result === false) {
181
+ this.updateInputValue();
174
182
  return;
175
183
  }
176
184
  if (typeof result === 'string') {
@@ -224,6 +232,12 @@ class Input extends _react.default.PureComponent {
224
232
  componentWillUnmount() {
225
233
  clearTimeout(this._selectallTimeout);
226
234
  }
235
+ componentDidMount() {
236
+ this.updateInputValue();
237
+ }
238
+ componentDidUpdate() {
239
+ this.updateInputValue();
240
+ }
227
241
  render() {
228
242
  var _this$context, _this$context2, _this$context3;
229
243
  const props = (0, _componentHelper.extendPropsWithContextInClassComponent)(this.props, Input.defaultProps, {
@@ -300,7 +314,6 @@ class Input extends _react.default.PureComponent {
300
314
  const inputParams = _objectSpread(_objectSpread(_objectSpread({
301
315
  className: (0, _classnames.default)('dnb-input__input', input_class),
302
316
  autoComplete: autocomplete,
303
- value: hasValue ? value : '',
304
317
  type,
305
318
  id,
306
319
  disabled: (0, _componentHelper.isTrue)(disabled),
@@ -328,7 +341,9 @@ class Input extends _react.default.PureComponent {
328
341
  (0, _componentHelper.validateDOMAttributes)(this.props, inputParams);
329
342
  (0, _componentHelper.validateDOMAttributes)(null, shellParams);
330
343
  if (InputElement && typeof InputElement === 'function') {
331
- InputElement = InputElement(inputParams, this._ref);
344
+ InputElement = InputElement(_objectSpread(_objectSpread({}, inputParams), {}, {
345
+ value
346
+ }), this._ref);
332
347
  } else if (!InputElement && _input_element) {
333
348
  InputElement = _input_element;
334
349
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_componentHelper","_AlignmentHelper2","_SpacingHelper","_SkeletonHelper","_filterValidProps","_Button","_interopRequireWildcard","_FormLabel","_FormStatus","_IconPrimary","_Context","_Suffix","_AlignmentHelper","_excluded","_excluded2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","inputPropTypes","type","PropTypes","string","size","oneOfType","oneOf","number","id","label","func","node","label_direction","label_sr_only","bool","status","globalStatus","shape","message","status_state","status_props","status_no_animation","input_state","autocomplete","submit_button_title","clear_button_title","placeholder","clear","keep_placeholder","suffix","align","selectall","stretch","disabled","skeleton","input_class","input_attributes","input_element","icon","icon_size","icon_position","inner_ref","readOnly","inner_element","submit_element","submit_button_variant","buttonVariantPropType","variant","submit_button_icon","submit_button_status","spacingPropTypes","className","children","on_change","on_key_down","on_submit","on_focus","on_blur","on_submit_focus","on_submit_blur","on_state_update","on_clear","exports","Input","React","PureComponent","getDerivedStateFromProps","props","state","getValue","_value","dispatchCustomElementEvent","inputState","hasValue","processChildren","constructor","context","event","setState","isTrue","_ref","current","clearTimeout","_selectallTimeout","setTimeout","select","e","warn","result","previousValue","focus","preventScroll","createRef","_id","FormRow","useId","formElement","makeUniqueId","componentWillUnmount","render","_this$context","_this$context2","_this$context3","extendPropsWithContextInClassComponent","defaultProps","getTranslation","pickFormElementProps","_input_element","attributes","focusState","sizeIsNumber","parseFloat","showStatus","getStatusState","hasSubmitButton","iconSize","mainParams","classnames","createSpacingClasses","innerParams","InputElement","inputAttributes","JSON","parse","inputParams","autoComplete","name","convertJsxToString","onChange","onChangeHandler","onKeyDown","onKeyDownHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","combineDescribedBy","shellParams","createSkeletonClass","skeletonDOMAttributes","validateDOMAttributes","createElement","forId","text","labelDirection","srOnly","show","text_id","no_animation","ref","InputIcon","role","InputSubmitButton","tooltip","onClick","clearValue","convertStatusToStateOnly","title","Context","process","env","NODE_ENV","propTypes","_this$props","rest","params","onSubmitHandler","SubmitButton","forwardRef","innerRef","memo","_ref2","prev","next","isRequired","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/input/Input.js"],"sourcesContent":["/**\n * Web Input Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n convertStatusToStateOnly,\n combineDescribedBy,\n dispatchCustomElementEvent,\n convertJsxToString,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport IconPrimary from '../icon-primary/IconPrimary'\n\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\nexport const inputPropTypes = {\n type: PropTypes.string,\n size: PropTypes.oneOfType([\n PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n input_state: PropTypes.string,\n autocomplete: PropTypes.string,\n submit_button_title: PropTypes.string,\n clear_button_title: PropTypes.string,\n placeholder: PropTypes.node,\n clear: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_placeholder: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n align: PropTypes.oneOf(['left', 'center', 'right']),\n selectall: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n input_class: PropTypes.string,\n input_attributes: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n ]),\n input_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n icon_position: PropTypes.oneOf(['left', 'right']),\n inner_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n inner_element: PropTypes.node,\n\n // Submit button\n submit_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n submit_button_variant: buttonVariantPropType.variant,\n submit_button_icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n submit_button_status: PropTypes.string,\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_key_down: PropTypes.func,\n on_submit: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_submit_focus: PropTypes.func,\n on_submit_blur: PropTypes.func,\n on_state_update: PropTypes.func,\n on_clear: PropTypes.func,\n}\n\nexport default class Input extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n ...inputPropTypes,\n }\n\n static defaultProps = {\n type: 'text',\n size: null,\n value: 'initval',\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n globalStatus: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n input_state: null,\n autocomplete: 'off',\n placeholder: null,\n clear: null,\n keep_placeholder: null,\n suffix: null,\n align: null,\n selectall: null,\n stretch: null,\n disabled: null,\n skeleton: null,\n input_class: null,\n input_attributes: null,\n input_element: null,\n inner_ref: null,\n icon: null,\n icon_size: null,\n icon_position: 'left',\n readOnly: false,\n inner_element: null,\n\n // Submit button\n submit_element: null,\n submit_button_title: null,\n clear_button_title: null,\n submit_button_variant: 'secondary',\n submit_button_icon: 'loupe',\n submit_button_status: null,\n\n className: null,\n children: null,\n\n on_change: null,\n on_key_down: null,\n on_submit: null,\n on_focus: null,\n on_blur: null,\n on_submit_focus: null,\n on_submit_blur: null,\n on_state_update: null,\n on_clear: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = Input.getValue(props)\n if (\n value !== 'initval' &&\n value !== state.value &&\n value !== state._value\n ) {\n if (\n value !== state.value &&\n typeof props.on_state_update === 'function'\n ) {\n dispatchCustomElementEvent({ props }, 'on_state_update', { value })\n }\n state.value = value\n }\n if (props.input_state) {\n state.inputState = props.input_state\n }\n state._value = props.value\n return state\n }\n\n static hasValue(value) {\n return (\n ((typeof value === 'string' || typeof value === 'number') &&\n String(value).length > 0) ||\n false\n )\n }\n\n static getValue(props) {\n const value = processChildren(props)\n if (value === '' || Input.hasValue(value)) {\n return value\n }\n return props.value\n }\n\n state = { inputState: 'virgin', value: null, _value: null }\n\n constructor(props, context) {\n super(props)\n\n this._ref = props.inner_ref || React.createRef()\n\n this._id =\n props.id ||\n // Deprecated – can be removed in v11\n (context.FormRow &&\n typeof context.FormRow.useId === 'function' &&\n context.FormRow.useId()) ||\n (context.formElement &&\n typeof context.formElement.useId === 'function' &&\n context.formElement.useId()) ||\n makeUniqueId() // cause we need an id anyway\n\n if (isTrue(props.clear) && props.icon_position === 'right') {\n warn('You cannot have a clear button and icon_position=\"right\"')\n }\n\n // make sure we trigger getDerivedStateFromProps on startup\n }\n componentWillUnmount() {\n clearTimeout(this._selectallTimeout)\n }\n onFocusHandler = (event) => {\n const { value } = event.target\n this.setState({\n // value,// why should we update the value on blur?\n inputState: 'focus',\n })\n\n dispatchCustomElementEvent(this, 'on_focus', { value, event })\n\n if (isTrue(this.props.selectall) && this._ref.current) {\n clearTimeout(this._selectallTimeout)\n this._selectallTimeout = setTimeout(() => {\n try {\n this._ref.current.select()\n } catch (e) {\n warn(e)\n }\n }, 1) // safari needs a delay\n }\n }\n onBlurHandler = (event) => {\n const { value } = event.target\n const result = dispatchCustomElementEvent(this, 'on_blur', {\n value,\n event,\n })\n if (result !== false) {\n this.setState({\n inputState:\n Input.hasValue(value) && value !== this.state._value\n ? 'dirty'\n : 'initial',\n })\n }\n }\n onChangeHandler = (event) => {\n const { value } = event.target\n const result = dispatchCustomElementEvent(this, 'on_change', {\n value,\n event,\n })\n if (result === false) {\n return // stop here\n }\n if (typeof result === 'string') {\n this.setState({ value: result })\n } else {\n this.setState({ value })\n }\n }\n onKeyDownHandler = (event) => {\n const value = event.target.value\n dispatchCustomElementEvent(this, 'on_key_down', { value, event })\n if (event.key === 'Enter') {\n dispatchCustomElementEvent(this, 'on_submit', { value, event })\n }\n }\n clearValue = (event) => {\n const previousValue = this.state.value\n const value = ''\n this.setState({ value })\n dispatchCustomElementEvent(this, 'on_change', { value, event })\n dispatchCustomElementEvent(this, 'on_clear', {\n value,\n previousValue,\n event,\n })\n this._ref.current.focus({ preventScroll: true })\n }\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Input.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Input,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Input\n )\n\n const {\n type,\n size,\n label,\n label_direction,\n label_sr_only,\n status,\n globalStatus,\n status_state,\n status_props,\n status_no_animation,\n disabled,\n skeleton,\n placeholder,\n clear,\n keep_placeholder,\n suffix,\n align,\n input_class,\n submit_button_title,\n clear_button_title,\n submit_button_variant,\n submit_button_icon,\n submit_button_status,\n submit_element,\n inner_element,\n autocomplete,\n readOnly,\n stretch,\n input_attributes,\n icon,\n icon_position,\n icon_size,\n className,\n\n id: _id, //eslint-disable-line\n children, //eslint-disable-line\n value: _value, //eslint-disable-line\n selectall, //eslint-disable-line\n on_submit, //eslint-disable-line\n input_element: _input_element, //eslint-disable-line\n\n ...attributes\n } = props\n\n let { value, focusState, inputState } = this.state\n\n if (isTrue(disabled) || isTrue(skeleton)) {\n inputState = 'disabled'\n }\n const sizeIsNumber = parseFloat(size) > 0\n\n const id = this._id\n const showStatus = getStatusState(status)\n const hasSubmitButton =\n submit_element || (submit_element !== false && type === 'search')\n const hasValue = Input.hasValue(value)\n\n const iconSize =\n size === 'large' && (icon_size === 'default' || !icon_size)\n ? 'medium'\n : icon_size\n\n const mainParams = {\n className: classnames(\n 'dnb-input',\n 'dnb-input__border--tokens',\n type && `dnb-input--${type}`,\n size && !sizeIsNumber && `dnb-input--${size}`,\n hasSubmitButton && 'dnb-input--has-submit-element',\n inner_element && 'dnb-input--has-inner-element',\n isTrue(clear) && 'dnb-input--has-clear-button',\n align && `dnb-input__align--${align}`,\n status && `dnb-input__status--${status_state}`,\n disabled && 'dnb-input--disabled',\n icon && `dnb-input--icon-position-${icon_position}`,\n icon && 'dnb-input--has-icon',\n icon && iconSize && `dnb-input--icon-size-${iconSize}`,\n label_direction && `dnb-input--${label_direction}`,\n isTrue(stretch) && `dnb-input--stretch`,\n isTrue(keep_placeholder) && 'dnb-input--keep-placeholder',\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n ),\n 'data-input-state': inputState,\n 'data-has-content': hasValue ? 'true' : 'false',\n }\n\n const innerParams = {\n className: 'dnb-input__inner',\n }\n\n // pass along all props we wish to have as params\n let { input_element: InputElement } = props\n\n const inputAttributes = input_attributes\n ? typeof input_attributes === 'string'\n ? JSON.parse(input_attributes)\n : input_attributes\n : {}\n\n const inputParams = {\n className: classnames('dnb-input__input', input_class),\n autoComplete: autocomplete,\n value: hasValue ? value : '',\n type,\n id,\n disabled: isTrue(disabled),\n name: id,\n 'aria-placeholder': placeholder\n ? convertJsxToString(placeholder)\n : undefined,\n ...attributes,\n ...inputAttributes,\n onChange: this.onChangeHandler,\n onKeyDown: this.onKeyDownHandler,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n }\n\n if (sizeIsNumber) {\n inputParams.size = size\n }\n\n // we may consider using: aria-details\n if (showStatus || suffix || hasSubmitButton) {\n inputParams['aria-describedby'] = combineDescribedBy(\n inputParams,\n hasSubmitButton && !submit_element ? id + '-submit-button' : null,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n inputParams['aria-readonly'] = inputParams.readOnly = true\n }\n\n const shellParams = {\n className: classnames(\n 'dnb-input__shell',\n 'dnb-input__border',\n createSkeletonClass('shape', skeleton, this.context)\n ),\n }\n\n skeletonDOMAttributes(inputParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, inputParams)\n validateDOMAttributes(null, shellParams)\n\n if (InputElement && typeof InputElement === 'function') {\n InputElement = InputElement(inputParams, this._ref)\n } else if (!InputElement && _input_element) {\n InputElement = _input_element\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={label_direction}\n srOnly={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span {...innerParams}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text={status}\n state={status_state}\n text_id={id + '-status'} // used for \"aria-describedby\"\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-input__row\">\n <span {...shellParams}>\n {InputElement || <input ref={this._ref} {...inputParams} />}\n\n {inner_element && (\n <span className=\"dnb-input__inner__element dnb-p\">\n {inner_element}\n </span>\n )}\n\n {icon && (\n <InputIcon\n className=\"dnb-input__icon\"\n icon={icon}\n size={iconSize}\n />\n )}\n\n {!hasValue && placeholder && focusState !== 'focus' && (\n <span\n id={id + '-placeholder'}\n className={classnames(\n 'dnb-input__placeholder',\n align ? `dnb-input__align--${align}` : null\n )}\n role=\"presentation\"\n aria-hidden\n >\n {placeholder}\n </span>\n )}\n\n {isTrue(clear) && icon_position !== 'right' && (\n <span className=\"dnb-input--clear dnb-input__submit-element\">\n <InputSubmitButton\n aria-hidden={!hasValue}\n attributes={{ className: 'dnb-input__clear-button' }}\n id={id + '-clear-button'}\n type=\"button\"\n variant=\"tertiary\"\n aria-controls={id}\n aria-label={clear_button_title}\n tooltip={hasValue && clear_button_title}\n icon=\"close\"\n icon_size={size === 'small' ? 'small' : undefined}\n skeleton={skeleton}\n disabled={isTrue(disabled) || !hasValue}\n onClick={this.clearValue}\n />\n </span>\n )}\n </span>\n {hasSubmitButton && (\n <span className=\"dnb-input__submit-element\">\n {submit_element ? (\n submit_element\n ) : (\n <InputSubmitButton\n {...attributes}\n id={id + '-submit-button'}\n value={inputParams.value}\n icon={submit_button_icon}\n status={convertStatusToStateOnly(\n submit_button_status || status,\n status_state\n )}\n status_state={status_state}\n icon_size={\n size === 'medium' || size === 'large'\n ? 'medium'\n : 'default'\n }\n title={submit_button_title}\n variant={submit_button_variant}\n disabled={isTrue(disabled)}\n skeleton={isTrue(skeleton)}\n size={size}\n on_submit={on_submit}\n {...status_props}\n />\n )}\n </span>\n )}\n {suffix && (\n <Suffix\n className=\"dnb-input__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nclass InputSubmitButton extends React.PureComponent {\n static propTypes = {\n id: PropTypes.string,\n value: PropTypes.string,\n title: PropTypes.string,\n variant: buttonVariantPropType.variant,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n className: PropTypes.string,\n\n on_submit: PropTypes.func,\n on_submit_focus: PropTypes.func,\n on_submit_blur: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n value: null,\n title: null,\n disabled: false,\n skeleton: false,\n variant: 'secondary',\n icon: 'loupe',\n icon_size: null,\n status: null,\n status_state: 'error',\n status_props: null,\n className: null,\n\n on_submit: null,\n on_submit_focus: null,\n on_submit_blur: null,\n }\n\n state = { focusState: 'virgin' }\n\n onFocusHandler = (event) => {\n const value = this.props.value\n this.setState({\n focusState: 'focus',\n })\n dispatchCustomElementEvent(this, 'on_submit_focus', { value, event })\n }\n onBlurHandler = (event) => {\n const value = this.props.value\n this.setState({\n focusState: 'dirty',\n })\n dispatchCustomElementEvent(this, 'on_submit_blur', { value, event })\n }\n onSubmitHandler = (event) => {\n const value = this.props.value\n dispatchCustomElementEvent(this, 'on_submit', { value, event })\n }\n render() {\n const {\n id,\n title,\n disabled,\n skeleton,\n variant,\n icon,\n icon_size,\n status,\n status_state,\n status_props,\n className,\n ...rest\n } = this.props\n\n const params = {\n id,\n type: 'submit',\n 'aria-label': title,\n disabled,\n ...rest,\n }\n\n skeletonDOMAttributes(params, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n return (\n <span\n className=\"dnb-input__submit-button\"\n data-input-state={this.state.focusState}\n >\n <Button\n className={classnames(\n 'dnb-input__submit-button__button',\n 'dnb-button--input-button',\n className\n )}\n variant={variant}\n icon={icon}\n icon_size={icon_size}\n status={status}\n status_state={status_state}\n onClick={this.onSubmitHandler}\n onFocus={this.onFocusHandler}\n onBlur={this.onBlurHandler}\n {...params}\n {...status_props}\n />\n </span>\n )\n }\n}\n\nconst SubmitButton = React.forwardRef((props, ref) => (\n <InputSubmitButton innerRef={ref} {...props} />\n))\n\nexport { SubmitButton }\n\n// We memoize by type, in case we send in a ProgressIndicator (Autocomplete)\nconst InputIcon = React.memo(\n (props) => <IconPrimary {...props} />,\n ({ icon: prev }, { icon: next }) => {\n if (typeof prev === 'string' && typeof next === 'string') {\n return false\n }\n return typeof prev === typeof next\n }\n)\nInputIcon.propTypes = {\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]).isRequired,\n}\n\nInput._formElement = true\nInput._supportsSpacingProps = true\n"],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","names":["_react","_interopRequireDefault","require","_propTypes","_classnames","_componentHelper","_AlignmentHelper2","_SpacingHelper","_SkeletonHelper","_filterValidProps","_Button","_interopRequireWildcard","_FormLabel","_FormStatus","_IconPrimary","_Context","_Suffix","_AlignmentHelper","_excluded","_excluded2","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","inputPropTypes","type","PropTypes","string","size","oneOfType","oneOf","number","id","label","func","node","label_direction","label_sr_only","bool","status","globalStatus","shape","message","status_state","status_props","status_no_animation","input_state","autocomplete","submit_button_title","clear_button_title","placeholder","clear","keep_placeholder","suffix","align","selectall","stretch","disabled","skeleton","input_class","input_attributes","input_element","icon","icon_size","icon_position","inner_ref","readOnly","inner_element","submit_element","submit_button_variant","buttonVariantPropType","variant","submit_button_icon","submit_button_status","spacingPropTypes","className","children","on_change","on_key_down","on_submit","on_focus","on_blur","on_submit_focus","on_submit_blur","on_state_update","on_clear","exports","Input","React","PureComponent","getDerivedStateFromProps","props","state","getValue","_value","dispatchCustomElementEvent","inputState","hasValue","processChildren","constructor","context","_ref","current","event","setState","isTrue","clearTimeout","_selectallTimeout","setTimeout","select","e","warn","result","updateInputValue","previousValue","focus","preventScroll","createRef","_id","FormRow","useId","formElement","makeUniqueId","componentWillUnmount","componentDidMount","componentDidUpdate","render","_this$context","_this$context2","_this$context3","extendPropsWithContextInClassComponent","defaultProps","getTranslation","pickFormElementProps","_input_element","attributes","focusState","sizeIsNumber","parseFloat","showStatus","getStatusState","hasSubmitButton","iconSize","mainParams","classnames","createSpacingClasses","innerParams","InputElement","inputAttributes","JSON","parse","inputParams","autoComplete","name","convertJsxToString","onChange","onChangeHandler","onKeyDown","onKeyDownHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","combineDescribedBy","shellParams","createSkeletonClass","skeletonDOMAttributes","validateDOMAttributes","createElement","forId","text","labelDirection","srOnly","show","text_id","no_animation","ref","InputIcon","role","InputSubmitButton","tooltip","onClick","clearValue","convertStatusToStateOnly","title","Context","process","env","NODE_ENV","propTypes","_this$props","rest","params","onSubmitHandler","SubmitButton","forwardRef","innerRef","memo","_ref2","prev","next","isRequired","_formElement","_supportsSpacingProps"],"sources":["../../../../src/components/input/Input.js"],"sourcesContent":["/**\n * Web Input Component\n *\n * This is a legacy component.\n * For referencing while developing new features, please use a Functional component.\n */\n\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport classnames from 'classnames'\nimport {\n warn,\n isTrue,\n makeUniqueId,\n extendPropsWithContextInClassComponent,\n validateDOMAttributes,\n processChildren,\n getStatusState,\n convertStatusToStateOnly,\n combineDescribedBy,\n dispatchCustomElementEvent,\n convertJsxToString,\n} from '../../shared/component-helper'\nimport AlignmentHelper from '../../shared/AlignmentHelper'\nimport {\n spacingPropTypes,\n createSpacingClasses,\n} from '../space/SpacingHelper'\nimport {\n skeletonDOMAttributes,\n createSkeletonClass,\n} from '../skeleton/SkeletonHelper'\nimport { pickFormElementProps } from '../../shared/helpers/filterValidProps'\nimport Button, { buttonVariantPropType } from '../button/Button'\nimport FormLabel from '../form-label/FormLabel'\nimport FormStatus from '../form-status/FormStatus'\nimport IconPrimary from '../icon-primary/IconPrimary'\n\nimport Context from '../../shared/Context'\nimport Suffix from '../../shared/helpers/Suffix'\n\nexport const inputPropTypes = {\n type: PropTypes.string,\n size: PropTypes.oneOfType([\n PropTypes.oneOf(['default', 'small', 'medium', 'large']),\n PropTypes.number,\n ]),\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n id: PropTypes.string,\n label: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n label_direction: PropTypes.oneOf(['horizontal', 'vertical']),\n label_sr_only: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n globalStatus: PropTypes.shape({\n id: PropTypes.string,\n message: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n }),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n status_no_animation: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n input_state: PropTypes.string,\n autocomplete: PropTypes.string,\n submit_button_title: PropTypes.string,\n clear_button_title: PropTypes.string,\n placeholder: PropTypes.node,\n clear: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n keep_placeholder: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n ]),\n suffix: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.func,\n PropTypes.node,\n ]),\n align: PropTypes.oneOf(['left', 'center', 'right']),\n selectall: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n stretch: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n input_class: PropTypes.string,\n input_attributes: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.object,\n ]),\n input_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n icon_position: PropTypes.oneOf(['left', 'right']),\n inner_ref: PropTypes.oneOfType([PropTypes.func, PropTypes.object]),\n readOnly: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n inner_element: PropTypes.node,\n\n // Submit button\n submit_element: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n submit_button_variant: buttonVariantPropType.variant,\n submit_button_icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n submit_button_status: PropTypes.string,\n\n ...spacingPropTypes,\n\n className: PropTypes.string,\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n\n on_change: PropTypes.func,\n on_key_down: PropTypes.func,\n on_submit: PropTypes.func,\n on_focus: PropTypes.func,\n on_blur: PropTypes.func,\n on_submit_focus: PropTypes.func,\n on_submit_blur: PropTypes.func,\n on_state_update: PropTypes.func,\n on_clear: PropTypes.func,\n}\n\nexport default class Input extends React.PureComponent {\n static contextType = Context\n\n static propTypes = {\n ...inputPropTypes,\n }\n\n static defaultProps = {\n type: 'text',\n size: null,\n value: 'initval',\n id: null,\n label: null,\n label_direction: null,\n label_sr_only: null,\n status: null,\n globalStatus: null,\n status_state: 'error',\n status_props: null,\n status_no_animation: null,\n input_state: null,\n autocomplete: 'off',\n placeholder: null,\n clear: null,\n keep_placeholder: null,\n suffix: null,\n align: null,\n selectall: null,\n stretch: null,\n disabled: null,\n skeleton: null,\n input_class: null,\n input_attributes: null,\n input_element: null,\n inner_ref: null,\n icon: null,\n icon_size: null,\n icon_position: 'left',\n readOnly: false,\n inner_element: null,\n\n // Submit button\n submit_element: null,\n submit_button_title: null,\n clear_button_title: null,\n submit_button_variant: 'secondary',\n submit_button_icon: 'loupe',\n submit_button_status: null,\n\n className: null,\n children: null,\n\n on_change: null,\n on_key_down: null,\n on_submit: null,\n on_focus: null,\n on_blur: null,\n on_submit_focus: null,\n on_submit_blur: null,\n on_state_update: null,\n on_clear: null,\n }\n\n static getDerivedStateFromProps(props, state) {\n const value = Input.getValue(props)\n if (\n value !== 'initval' &&\n value !== state.value &&\n value !== state._value\n ) {\n if (\n value !== state.value &&\n typeof props.on_state_update === 'function'\n ) {\n dispatchCustomElementEvent({ props }, 'on_state_update', { value })\n }\n state.value = value\n }\n if (props.input_state) {\n state.inputState = props.input_state\n }\n state._value = props.value\n return state\n }\n\n static hasValue(value) {\n return (\n ((typeof value === 'string' || typeof value === 'number') &&\n String(value).length > 0) ||\n false\n )\n }\n\n static getValue(props) {\n const value = processChildren(props)\n if (value === '' || Input.hasValue(value)) {\n return value\n }\n return props.value\n }\n\n state = { inputState: 'virgin', value: null, _value: null }\n\n constructor(props, context) {\n super(props)\n\n this._ref = props.inner_ref || React.createRef()\n\n this._id =\n props.id ||\n // Deprecated – can be removed in v11\n (context.FormRow &&\n typeof context.FormRow.useId === 'function' &&\n context.FormRow.useId()) ||\n (context.formElement &&\n typeof context.formElement.useId === 'function' &&\n context.formElement.useId()) ||\n makeUniqueId() // cause we need an id anyway\n\n if (isTrue(props.clear) && props.icon_position === 'right') {\n warn('You cannot have a clear button and icon_position=\"right\"')\n }\n\n // make sure we trigger getDerivedStateFromProps on startup\n }\n componentWillUnmount() {\n clearTimeout(this._selectallTimeout)\n }\n componentDidMount() {\n this.updateInputValue()\n }\n componentDidUpdate() {\n this.updateInputValue()\n }\n updateInputValue = () => {\n // Only update the input value if it's not a custom input_element.\n // The custom input_element will handle the value.\n // This is used in the InputMasked component.\n if (this._ref.current && !this.props.input_element) {\n const value = this.state.value\n const hasValue = Input.hasValue(value)\n this._ref.current.value = hasValue ? value : ''\n }\n }\n onFocusHandler = (event) => {\n const { value } = event.target\n this.setState({\n inputState: 'focus',\n })\n\n dispatchCustomElementEvent(this, 'on_focus', { value, event })\n\n if (isTrue(this.props.selectall) && this._ref.current) {\n clearTimeout(this._selectallTimeout)\n this._selectallTimeout = setTimeout(() => {\n try {\n this._ref.current.select()\n } catch (e) {\n warn(e)\n }\n }, 1) // safari needs a delay\n }\n }\n onBlurHandler = (event) => {\n const { value } = event.target\n const result = dispatchCustomElementEvent(this, 'on_blur', {\n value,\n event,\n })\n if (result !== false) {\n this.setState({\n inputState:\n Input.hasValue(value) && value !== this.state._value\n ? 'dirty'\n : 'initial',\n })\n }\n }\n onChangeHandler = (event) => {\n const { value } = event.target\n const result = dispatchCustomElementEvent(this, 'on_change', {\n value,\n event,\n })\n if (result === false) {\n this.updateInputValue()\n return // stop here\n }\n if (typeof result === 'string') {\n this.setState({ value: result })\n } else {\n this.setState({ value })\n }\n }\n onKeyDownHandler = (event) => {\n const value = event.target.value\n dispatchCustomElementEvent(this, 'on_key_down', { value, event })\n if (event.key === 'Enter') {\n dispatchCustomElementEvent(this, 'on_submit', { value, event })\n }\n }\n clearValue = (event) => {\n const previousValue = this.state.value\n const value = ''\n this.setState({ value })\n dispatchCustomElementEvent(this, 'on_change', { value, event })\n dispatchCustomElementEvent(this, 'on_clear', {\n value,\n previousValue,\n event,\n })\n this._ref.current.focus({ preventScroll: true })\n }\n render() {\n // use only the props from context, who are available here anyway\n const props = extendPropsWithContextInClassComponent(\n this.props,\n Input.defaultProps,\n { skeleton: this.context?.skeleton },\n this.context.getTranslation(this.props).Input,\n // Deprecated – can be removed in v11\n pickFormElementProps(this.context?.FormRow),\n pickFormElementProps(this.context?.formElement),\n this.context.Input\n )\n\n const {\n type,\n size,\n label,\n label_direction,\n label_sr_only,\n status,\n globalStatus,\n status_state,\n status_props,\n status_no_animation,\n disabled,\n skeleton,\n placeholder,\n clear,\n keep_placeholder,\n suffix,\n align,\n input_class,\n submit_button_title,\n clear_button_title,\n submit_button_variant,\n submit_button_icon,\n submit_button_status,\n submit_element,\n inner_element,\n autocomplete,\n readOnly,\n stretch,\n input_attributes,\n icon,\n icon_position,\n icon_size,\n className,\n\n id: _id, //eslint-disable-line\n children, //eslint-disable-line\n value: _value, //eslint-disable-line\n selectall, //eslint-disable-line\n on_submit, //eslint-disable-line\n input_element: _input_element, //eslint-disable-line\n\n ...attributes\n } = props\n\n let { value, focusState, inputState } = this.state\n\n if (isTrue(disabled) || isTrue(skeleton)) {\n inputState = 'disabled'\n }\n const sizeIsNumber = parseFloat(size) > 0\n\n const id = this._id\n const showStatus = getStatusState(status)\n const hasSubmitButton =\n submit_element || (submit_element !== false && type === 'search')\n const hasValue = Input.hasValue(value)\n\n const iconSize =\n size === 'large' && (icon_size === 'default' || !icon_size)\n ? 'medium'\n : icon_size\n\n const mainParams = {\n className: classnames(\n 'dnb-input',\n 'dnb-input__border--tokens',\n type && `dnb-input--${type}`,\n size && !sizeIsNumber && `dnb-input--${size}`,\n hasSubmitButton && 'dnb-input--has-submit-element',\n inner_element && 'dnb-input--has-inner-element',\n isTrue(clear) && 'dnb-input--has-clear-button',\n align && `dnb-input__align--${align}`,\n status && `dnb-input__status--${status_state}`,\n disabled && 'dnb-input--disabled',\n icon && `dnb-input--icon-position-${icon_position}`,\n icon && 'dnb-input--has-icon',\n icon && iconSize && `dnb-input--icon-size-${iconSize}`,\n label_direction && `dnb-input--${label_direction}`,\n isTrue(stretch) && `dnb-input--stretch`,\n isTrue(keep_placeholder) && 'dnb-input--keep-placeholder',\n 'dnb-form-component',\n createSpacingClasses(props),\n className\n ),\n 'data-input-state': inputState,\n 'data-has-content': hasValue ? 'true' : 'false',\n }\n\n const innerParams = {\n className: 'dnb-input__inner',\n }\n\n // pass along all props we wish to have as params\n let { input_element: InputElement } = props\n\n const inputAttributes = input_attributes\n ? typeof input_attributes === 'string'\n ? JSON.parse(input_attributes)\n : input_attributes\n : {}\n\n const inputParams = {\n className: classnames('dnb-input__input', input_class),\n autoComplete: autocomplete,\n type,\n id,\n disabled: isTrue(disabled),\n name: id,\n 'aria-placeholder': placeholder\n ? convertJsxToString(placeholder)\n : undefined,\n ...attributes,\n ...inputAttributes,\n onChange: this.onChangeHandler,\n onKeyDown: this.onKeyDownHandler,\n onFocus: this.onFocusHandler,\n onBlur: this.onBlurHandler,\n }\n\n if (sizeIsNumber) {\n inputParams.size = size\n }\n\n // we may consider using: aria-details\n if (showStatus || suffix || hasSubmitButton) {\n inputParams['aria-describedby'] = combineDescribedBy(\n inputParams,\n hasSubmitButton && !submit_element ? id + '-submit-button' : null,\n showStatus ? id + '-status' : null,\n suffix ? id + '-suffix' : null\n )\n }\n if (readOnly) {\n inputParams['aria-readonly'] = inputParams.readOnly = true\n }\n\n const shellParams = {\n className: classnames(\n 'dnb-input__shell',\n 'dnb-input__border',\n createSkeletonClass('shape', skeleton, this.context)\n ),\n }\n\n skeletonDOMAttributes(inputParams, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, inputParams)\n validateDOMAttributes(null, shellParams)\n\n if (InputElement && typeof InputElement === 'function') {\n InputElement = InputElement({ ...inputParams, value }, this._ref)\n } else if (!InputElement && _input_element) {\n InputElement = _input_element\n }\n\n return (\n <span {...mainParams}>\n {label && (\n <FormLabel\n id={id + '-label'}\n forId={id}\n text={label}\n labelDirection={label_direction}\n srOnly={label_sr_only}\n disabled={disabled}\n skeleton={skeleton}\n />\n )}\n\n <span {...innerParams}>\n <AlignmentHelper />\n\n <FormStatus\n show={showStatus}\n id={id + '-form-status'}\n globalStatus={globalStatus}\n label={label}\n text={status}\n state={status_state}\n text_id={id + '-status'} // used for \"aria-describedby\"\n no_animation={status_no_animation}\n skeleton={skeleton}\n {...status_props}\n />\n\n <span className=\"dnb-input__row\">\n <span {...shellParams}>\n {InputElement || <input ref={this._ref} {...inputParams} />}\n\n {inner_element && (\n <span className=\"dnb-input__inner__element dnb-p\">\n {inner_element}\n </span>\n )}\n\n {icon && (\n <InputIcon\n className=\"dnb-input__icon\"\n icon={icon}\n size={iconSize}\n />\n )}\n\n {!hasValue && placeholder && focusState !== 'focus' && (\n <span\n id={id + '-placeholder'}\n className={classnames(\n 'dnb-input__placeholder',\n align ? `dnb-input__align--${align}` : null\n )}\n role=\"presentation\"\n aria-hidden\n >\n {placeholder}\n </span>\n )}\n\n {isTrue(clear) && icon_position !== 'right' && (\n <span className=\"dnb-input--clear dnb-input__submit-element\">\n <InputSubmitButton\n aria-hidden={!hasValue}\n attributes={{ className: 'dnb-input__clear-button' }}\n id={id + '-clear-button'}\n type=\"button\"\n variant=\"tertiary\"\n aria-controls={id}\n aria-label={clear_button_title}\n tooltip={hasValue && clear_button_title}\n icon=\"close\"\n icon_size={size === 'small' ? 'small' : undefined}\n skeleton={skeleton}\n disabled={isTrue(disabled) || !hasValue}\n onClick={this.clearValue}\n />\n </span>\n )}\n </span>\n {hasSubmitButton && (\n <span className=\"dnb-input__submit-element\">\n {submit_element ? (\n submit_element\n ) : (\n <InputSubmitButton\n {...attributes}\n id={id + '-submit-button'}\n value={inputParams.value}\n icon={submit_button_icon}\n status={convertStatusToStateOnly(\n submit_button_status || status,\n status_state\n )}\n status_state={status_state}\n icon_size={\n size === 'medium' || size === 'large'\n ? 'medium'\n : 'default'\n }\n title={submit_button_title}\n variant={submit_button_variant}\n disabled={isTrue(disabled)}\n skeleton={isTrue(skeleton)}\n size={size}\n on_submit={on_submit}\n {...status_props}\n />\n )}\n </span>\n )}\n {suffix && (\n <Suffix\n className=\"dnb-input__suffix\"\n id={id + '-suffix'} // used for \"aria-describedby\"\n context={props}\n >\n {suffix}\n </Suffix>\n )}\n </span>\n </span>\n </span>\n )\n }\n}\n\nclass InputSubmitButton extends React.PureComponent {\n static propTypes = {\n id: PropTypes.string,\n value: PropTypes.string,\n title: PropTypes.string,\n variant: buttonVariantPropType.variant,\n disabled: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n skeleton: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]),\n icon_size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n status: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.bool,\n PropTypes.func,\n PropTypes.node,\n ]),\n status_state: PropTypes.string,\n status_props: PropTypes.object,\n className: PropTypes.string,\n\n on_submit: PropTypes.func,\n on_submit_focus: PropTypes.func,\n on_submit_blur: PropTypes.func,\n }\n\n static defaultProps = {\n id: null,\n value: null,\n title: null,\n disabled: false,\n skeleton: false,\n variant: 'secondary',\n icon: 'loupe',\n icon_size: null,\n status: null,\n status_state: 'error',\n status_props: null,\n className: null,\n\n on_submit: null,\n on_submit_focus: null,\n on_submit_blur: null,\n }\n\n state = { focusState: 'virgin' }\n\n onFocusHandler = (event) => {\n const value = this.props.value\n this.setState({\n focusState: 'focus',\n })\n dispatchCustomElementEvent(this, 'on_submit_focus', { value, event })\n }\n onBlurHandler = (event) => {\n const value = this.props.value\n this.setState({\n focusState: 'dirty',\n })\n dispatchCustomElementEvent(this, 'on_submit_blur', { value, event })\n }\n onSubmitHandler = (event) => {\n const value = this.props.value\n dispatchCustomElementEvent(this, 'on_submit', { value, event })\n }\n render() {\n const {\n id,\n title,\n disabled,\n skeleton,\n variant,\n icon,\n icon_size,\n status,\n status_state,\n status_props,\n className,\n ...rest\n } = this.props\n\n const params = {\n id,\n type: 'submit',\n 'aria-label': title,\n disabled,\n ...rest,\n }\n\n skeletonDOMAttributes(params, skeleton, this.context)\n\n // also used for code markup simulation\n validateDOMAttributes(this.props, params)\n\n return (\n <span\n className=\"dnb-input__submit-button\"\n data-input-state={this.state.focusState}\n >\n <Button\n className={classnames(\n 'dnb-input__submit-button__button',\n 'dnb-button--input-button',\n className\n )}\n variant={variant}\n icon={icon}\n icon_size={icon_size}\n status={status}\n status_state={status_state}\n onClick={this.onSubmitHandler}\n onFocus={this.onFocusHandler}\n onBlur={this.onBlurHandler}\n {...params}\n {...status_props}\n />\n </span>\n )\n }\n}\n\nconst SubmitButton = React.forwardRef((props, ref) => (\n <InputSubmitButton innerRef={ref} {...props} />\n))\n\nexport { SubmitButton }\n\n// We memoize by type, in case we send in a ProgressIndicator (Autocomplete)\nconst InputIcon = React.memo(\n (props) => <IconPrimary {...props} />,\n ({ icon: prev }, { icon: next }) => {\n if (typeof prev === 'string' && typeof next === 'string') {\n return false\n }\n return typeof prev === typeof next\n }\n)\nInputIcon.propTypes = {\n icon: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.node,\n PropTypes.func,\n ]).isRequired,\n}\n\nInput._formElement = true\nInput._supportsSpacingProps = true\n"],"mappings":"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"}
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useTranslation = exports.useNumberMask = exports.useMaskParams = exports.useMask = exports.useLocalValue = exports.useInputElement = exports.useFilteredProps = exports.useEventMapping = void 0;
7
7
  require("core-js/modules/web.dom-collections.iterator.js");
8
8
  require("core-js/modules/es.string.replace.js");
9
- var _react = _interopRequireDefault(require("react"));
9
+ var _react = _interopRequireWildcard(require("react"));
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
11
  var _NumberUtils = require("../number-format/NumberUtils");
12
12
  var _componentHelper = require("../../shared/component-helper");
@@ -17,6 +17,8 @@ var _InputMaskedContext = _interopRequireDefault(require("./InputMaskedContext")
17
17
  var _InputMaskedUtils = require("./InputMaskedUtils");
18
18
  const _excluded = ["mask", "number_mask", "currency_mask", "number_format", "mask_options", "as_currency", "as_number", "as_percent", "locale", "show_mask", "show_guide", "pipe", "keep_char_positions", "placeholder_char"];
19
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+ 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; }
20
22
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
23
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
22
24
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -173,7 +175,7 @@ const useInputElement = () => {
173
175
  const inputElementRef = _react.default.useRef(_react.default.createElement("input", {
174
176
  ref: ref
175
177
  }));
176
- const InputElement = (params, innerRef) => {
178
+ return (0, _react.useCallback)((params, innerRef) => {
177
179
  innerRef.current = ref.current;
178
180
  return _react.default.createElement(_TextMask.default, _extends({
179
181
  inputRef: ref,
@@ -187,8 +189,7 @@ const useInputElement = () => {
187
189
  }, (0, _InputMaskedUtils.getSoftKeyboardAttributes)(mask), params, {
188
190
  className: (0, _classnames.default)(params.className, showMask && showGuide && placeholderChar && placeholderChar !== _InputMaskedUtils.invisibleSpace && 'dnb-input-masked--guide')
189
191
  }));
190
- };
191
- return InputElement;
192
+ }, [keepCharPositions, mask, pipe, placeholderChar, ref, showGuide, showMask]);
192
193
  };
193
194
  exports.useInputElement = useInputElement;
194
195
  const useEventMapping = _ref => {
@@ -1 +1 @@
1
- {"version":3,"file":"InputMaskedHooks.js","names":["_react","_interopRequireDefault","require","_classnames","_NumberUtils","_componentHelper","_createTextMaskInputElement","_TextMask","_createNumberMask","_InputMaskedContext","_InputMaskedUtils","_excluded","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","_extends","assign","bind","prototype","hasOwnProperty","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","useLayoutEffect","window","React","useEffect","useFilteredProps","props","useContext","InputMaskedContext","mask","number_mask","currency_mask","number_format","mask_options","as_currency","as_number","as_percent","locale","show_mask","show_guide","pipe","keep_char_positions","placeholder_char","attributes","htmlAttributes","freeze","exports","useTranslation","context","useLocalValue","maskParams","useNumberMaskParams","localValue","setLocalValue","useState","correctNumberValue","useNumberMask","isRequestingNumberMask","createNumberMask","useMask","numberMask","useMaskParams","placeholder","showMask","isTrue","placeholderChar","invisibleSpace","showGuide","keepCharPositions","useInputElement","inner_ref","isFn","refHook","useRef","ref","current","inputElementRef","createElement","InputElement","params","innerRef","inputRef","inputElement","guide","getSoftKeyboardAttributes","className","classnames","useEventMapping","_ref","callEvent","useCallEvent","onBeforeInput","event","onFocus","onBlur","onMouseUp","onMouseDown","onKeyDown","onSubmit","onChange","on_focus","on_blur","on_key_down","on_submit","on_change","_ref2","isNumberMask","decimalSeparators","isUnidentified","_ref3","name","selStart","selectionStart","keyCode","keycode","which","data","disallowLeadingZeroes","replace","test","testValue","slice","preventDefault","decimalSymbol","hasDecimalSymbol","includes","allowedDecimals","decimalLimit","allowDecimal","charAtSelection","index","safeSetSelection","thousandsSeparatorSymbol","num","cleanNumber","prefix","suffix","decimalSeparator","thousandsSeparator","numberValue","cleanedValue","charAt","runCorrectCaretPosition","correctCaretPosition","__getCorrectCaretPosition","result","dispatchCustomElementEvent","_currency_mask","fromJSON","currency","isRequestingLocaleSupport","handleThousandsSeparator","handleDecimalSeparator","extendPropsWithContext","_currency_mask2","getCurrencySymbol","currencyDisplay","handleNumberMask","handlePercentMask","handleCurrencyMask"],"sources":["../../../../src/components/input-masked/InputMaskedHooks.js"],"sourcesContent":["/**\n * Web InputMasked Component\n *\n */\n\nimport React from 'react'\nimport classnames from 'classnames'\nimport {\n cleanNumber,\n getCurrencySymbol,\n} from '../number-format/NumberUtils'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n extendPropsWithContext,\n keycode,\n} from '../../shared/component-helper'\nimport { safeSetSelection } from './text-mask/createTextMaskInputElement'\n\nimport TextMask from './TextMask'\nimport createNumberMask from './addons/createNumberMask'\nimport InputMaskedContext from './InputMaskedContext'\n\nimport {\n isRequestingLocaleSupport,\n isRequestingNumberMask,\n correctNumberValue,\n handlePercentMask,\n handleCurrencyMask,\n handleNumberMask,\n correctCaretPosition,\n getSoftKeyboardAttributes,\n handleThousandsSeparator,\n handleDecimalSeparator,\n fromJSON,\n invisibleSpace,\n} from './InputMaskedUtils'\n\n// SSR warning fix: https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\nconst useLayoutEffect =\n typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect\n\n/**\n * Takes all component properties and filters out all internal used properties\n *\n * @returns object {props, htmlAttributes}\n */\nexport const useFilteredProps = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n mask, // eslint-disable-line\n number_mask, // eslint-disable-line\n currency_mask, // eslint-disable-line\n number_format, // eslint-disable-line\n mask_options, // eslint-disable-line\n as_currency, // eslint-disable-line\n as_number, // eslint-disable-line\n as_percent, // eslint-disable-line\n locale, // eslint-disable-line\n show_mask, // eslint-disable-line\n show_guide, // eslint-disable-line\n pipe, // eslint-disable-line\n keep_char_positions, // eslint-disable-line\n placeholder_char, // eslint-disable-line\n\n // Get get rest of possible attributes\n ...attributes\n } = props\n\n return { props, htmlAttributes: Object.freeze(attributes) }\n}\n\n/**\n * Returns locale from either component or context\n *\n * @returns string\n */\nexport const useTranslation = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n\n let { locale } = props\n if (!locale && context?.locale) {\n locale = context.locale\n }\n\n return locale\n}\n\n/**\n * Handle internal value state\n *\n * It handles both the value state given as a prop form outside,\n * along with the current written and internal value.\n *\n * @returns object with internal value state and state setter\n */\nexport const useLocalValue = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n const maskParams = useNumberMaskParams() || {}\n const locale = useTranslation()\n\n const [localValue, setLocalValue] = React.useState(() =>\n correctNumberValue({\n locale,\n props,\n maskParams,\n })\n )\n\n /**\n * Use an effect here, just;\n * because when a property gets changed from outside\n */\n React.useEffect(() => {\n const value = correctNumberValue({\n localValue,\n locale,\n props,\n maskParams,\n })\n\n setLocalValue(value)\n\n // Do not set \"localValue\" and \"maskParams\" here\n }, [props, context, locale]) // eslint-disable-line\n\n return { localValue, setLocalValue }\n}\n\n/**\n * Create createNumberMask if number mask parameters exists\n *\n * @returns mask function\n */\nexport const useNumberMask = () => {\n const maskParams = useNumberMaskParams()\n const { props } = React.useContext(InputMaskedContext)\n\n if (!maskParams || !isRequestingNumberMask(props)) {\n return null\n }\n\n const mask = createNumberMask(maskParams)\n\n mask.maskParams = maskParams\n\n return mask\n}\n\n/**\n * Returns either internal mask or given property mask\n *\n * @returns mask function\n */\nexport const useMask = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const numberMask = useNumberMask()\n if (numberMask) {\n return numberMask\n }\n\n return props.mask\n}\n\n/**\n * Returns the final mask params\n *\n * @returns mask params\n */\nexport const useMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n keep_char_positions,\n show_guide,\n show_mask,\n placeholder_char,\n placeholder,\n } = props\n\n const mask = useMask()\n const maskParams = useNumberMaskParams() || {}\n\n maskParams.showMask = !placeholder && isTrue(show_mask)\n\n // Revalidated placeholder char to a zero width space\n maskParams.placeholderChar = placeholder_char\n if (typeof mask?.placeholderChar !== 'undefined') {\n maskParams.placeholderChar = mask.placeholderChar\n }\n if (maskParams.placeholderChar === null) {\n maskParams.placeholderChar = invisibleSpace\n }\n\n if (typeof mask?.showMask !== 'undefined') {\n maskParams.showMask = mask.showMask\n }\n\n maskParams.showGuide = isTrue(show_guide)\n maskParams.keepCharPositions = isTrue(keep_char_positions)\n\n return maskParams\n}\n\n/**\n * Handle the TextMask dependency\n *\n * @returns React Element\n */\nexport const useInputElement = () => {\n const { props } = React.useContext(InputMaskedContext)\n const { pipe, inner_ref } = props\n\n const mask = useMask()\n const { showMask, showGuide, placeholderChar, keepCharPositions } =\n useMaskParams()\n\n const isFn = typeof inner_ref === 'function'\n const refHook = React.useRef()\n const ref = (!isFn && inner_ref) || refHook\n\n useLayoutEffect(() => {\n if (isFn) {\n inner_ref?.(ref.current)\n }\n }, [inner_ref, isFn, ref])\n\n // Create the actual input element\n const inputElementRef = React.useRef(<input ref={ref} />)\n\n const InputElement = (params, innerRef) => {\n // Set ref for Eufemia input\n innerRef.current = ref.current\n\n return (\n <TextMask\n inputRef={ref}\n inputElement={inputElementRef.current}\n pipe={pipe}\n mask={mask || createNumberMask()}\n showMask={showMask}\n guide={showGuide}\n keepCharPositions={keepCharPositions}\n placeholderChar={placeholderChar}\n {...getSoftKeyboardAttributes(mask)}\n {...params}\n className={classnames(\n params.className,\n showMask &&\n showGuide &&\n placeholderChar &&\n placeholderChar !== invisibleSpace &&\n 'dnb-input-masked--guide' // will use --font-family-monospace\n )}\n />\n )\n }\n return InputElement\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns object of events to handle\n */\nexport const useEventMapping = ({ setLocalValue }) => {\n const callEvent = useCallEvent({ setLocalValue })\n\n return {\n onBeforeInput: (event) => callEvent({ event }, 'on_before_input'),\n onFocus: (params) => callEvent(params, 'on_focus'),\n onBlur: (params) => callEvent(params, 'on_blur'),\n onMouseUp: (event) => callEvent({ event }, 'on_mouse_up'),\n onMouseDown: (event) => callEvent({ event }, 'on_mouse_down'),\n onKeyDown: (params) => callEvent(params, 'on_key_down'),\n onSubmit: (params) => callEvent(params, 'on_submit'),\n onChange: (params) => callEvent(params, 'on_change'),\n\n on_focus: undefined,\n on_blur: undefined,\n on_key_down: undefined,\n on_submit: undefined,\n on_change: undefined,\n }\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns event handler function\n */\nconst useCallEvent = ({ setLocalValue }) => {\n const { props } = React.useContext(InputMaskedContext)\n const maskParams = useMaskParams()\n const isNumberMask = useNumberMask()\n\n // Source: https://en.wikipedia.org/wiki/Decimal_separator\n const decimalSeparators = /[,.'·]/\n let isUnidentified = false\n\n const callEvent = ({ event, value }, name) => {\n value = value || event.target.value\n const selStart = event.target.selectionStart\n let keyCode = keycode(event)\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n if (\n name === 'on_key_down' &&\n (event.which === 229 || keyCode === undefined)\n ) {\n isUnidentified = true\n }\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n // so we use this solution instead\n if (\n isUnidentified &&\n name === 'on_before_input' &&\n typeof event?.data !== 'undefined'\n ) {\n name = 'on_key_down'\n keyCode = event.data\n isUnidentified = false\n }\n\n // Add support for \"await userEvent.type(input, '0...')\"\n if (isUnidentified && event.key === '0') {\n keyCode = '0'\n isUnidentified = false\n }\n\n // Prevent entering a leading zero\n if (\n name === 'on_key_down' &&\n !isUnidentified &&\n maskParams?.disallowLeadingZeroes &&\n (keyCode === '0' ||\n keyCode === 'numpad 0' ||\n (value.replace(/[^\\d]/g, '') === '' &&\n decimalSeparators.test(keyCode)))\n ) {\n const testValue = (\n value.slice(0, selStart) +\n '0' +\n value.slice(selStart + 1, value.length)\n ).replace(/[^\\d]/g, '')\n\n if (/^0/.test(testValue)) {\n event.preventDefault()\n }\n }\n\n if (\n name === 'on_key_down' &&\n isNumberMask &&\n !isUnidentified &&\n maskParams?.decimalSymbol\n ) {\n const hasDecimalSymbol = value.includes(maskParams.decimalSymbol)\n const allowedDecimals =\n maskParams.decimalLimit > 0 || maskParams.allowDecimal !== false\n\n if (!allowedDecimals && decimalSeparators.test(keyCode)) {\n event.preventDefault()\n }\n\n const charAtSelection = value.slice(selStart, selStart + 1)\n\n if (allowedDecimals) {\n // if we have already a decimal ...\n if (hasDecimalSymbol && decimalSeparators.test(keyCode)) {\n // ... we set the cursor on after the decimalSeparators\n if (decimalSeparators.test(charAtSelection)) {\n const index = value.indexOf(maskParams.decimalSymbol)\n if (index > -1) {\n safeSetSelection(event.target, index + 1)\n }\n }\n\n // ... we do not allow to type another\n event.preventDefault()\n }\n\n // replace other decimal\n else if (\n !hasDecimalSymbol &&\n keyCode !== maskParams.decimalSymbol &&\n decimalSeparators.test(keyCode)\n ) {\n value = value.slice(0, selStart)\n setLocalValue(value + maskParams.decimalSymbol)\n event.target.value = value + maskParams.decimalSymbol\n event.preventDefault()\n }\n }\n\n // move cursor to right if key is delete and char at selection is thousand separator\n if (\n keyCode === 'delete' &&\n charAtSelection === (maskParams.thousandsSeparatorSymbol || ' ')\n ) {\n safeSetSelection(event.target, selStart + 1)\n event.preventDefault()\n }\n }\n\n let num = cleanNumber(value, {\n prefix: maskParams.prefix,\n suffix: maskParams.suffix,\n decimalSeparator: maskParams.decimalSymbol || ',',\n thousandsSeparator: maskParams.thousandsSeparatorSymbol || ' ',\n })\n\n // We don't want to return NaN, so we set it to 0\n if (num === '-') {\n num = -0\n }\n\n const numberValue = Number(num)\n\n // Return '' (empty string) when the user has entered something invalid\n const cleanedValue =\n numberValue === 0 && String(num).charAt(0) !== '0' ? '' : num\n\n switch (name) {\n case 'on_focus':\n case 'on_key_down':\n case 'on_mouse_down':\n case 'on_mouse_up':\n event.target.runCorrectCaretPosition = () =>\n correctCaretPosition(event.target, maskParams, props)\n if (!event.target.__getCorrectCaretPosition) {\n event.target.runCorrectCaretPosition()\n }\n break\n }\n\n const result = dispatchCustomElementEvent(props, name, {\n event,\n value,\n numberValue,\n cleanedValue,\n })\n\n if (name === 'on_change') {\n setLocalValue(value)\n }\n\n return result\n }\n\n return callEvent\n}\n\n/**\n * Returns number mask parameters if requested by the component properties\n *\n * @returns object of number mask parameter\n */\nconst useNumberMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n const locale = useTranslation()\n\n if (!isRequestingNumberMask(props)) {\n return { ...fromJSON(props.mask_options) }\n }\n\n let { number_mask, currency_mask, mask_options } = props\n const { as_number, as_percent, as_currency, value } = props\n\n mask_options = fromJSON(mask_options)\n number_mask = isTrue(number_mask) ? {} : fromJSON(number_mask)\n currency_mask = isTrue(currency_mask)\n ? {}\n : fromJSON(currency_mask, {\n currency: currency_mask,\n })\n if (!currency_mask?.currency) {\n delete currency_mask.currency\n }\n\n if (isRequestingLocaleSupport(props)) {\n const thousandsSeparatorSymbol = handleThousandsSeparator(locale)\n const decimalSymbol = handleDecimalSeparator(locale)\n\n if (isTrue(as_number) || isTrue(as_percent)) {\n number_mask = extendPropsWithContext(number_mask, null, {\n decimalSymbol,\n thousandsSeparatorSymbol,\n })\n } else if (as_currency) {\n currency_mask = extendPropsWithContext(currency_mask, null, {\n decimalSymbol,\n thousandsSeparatorSymbol,\n currency: getCurrencySymbol(\n locale,\n typeof as_currency === 'string' ? as_currency : null,\n currency_mask?.currencyDisplay,\n value\n ),\n })\n }\n }\n\n let maskParams = null\n\n if (number_mask) {\n maskParams = handleNumberMask({\n mask_options,\n number_mask,\n })\n\n if (isTrue(as_percent)) {\n maskParams = handlePercentMask({ props, locale, maskParams })\n }\n } else if (currency_mask) {\n maskParams = handleCurrencyMask({\n mask_options,\n currency_mask,\n })\n }\n\n return maskParams\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"InputMaskedHooks.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_NumberUtils","_componentHelper","_createTextMaskInputElement","_TextMask","_createNumberMask","_InputMaskedContext","_InputMaskedUtils","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_extends","assign","bind","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","useLayoutEffect","window","React","useEffect","useFilteredProps","props","useContext","InputMaskedContext","mask","number_mask","currency_mask","number_format","mask_options","as_currency","as_number","as_percent","locale","show_mask","show_guide","pipe","keep_char_positions","placeholder_char","attributes","htmlAttributes","freeze","exports","useTranslation","context","useLocalValue","maskParams","useNumberMaskParams","localValue","setLocalValue","useState","correctNumberValue","useNumberMask","isRequestingNumberMask","createNumberMask","useMask","numberMask","useMaskParams","placeholder","showMask","isTrue","placeholderChar","invisibleSpace","showGuide","keepCharPositions","useInputElement","inner_ref","isFn","refHook","useRef","ref","current","inputElementRef","createElement","useCallback","params","innerRef","inputRef","inputElement","guide","getSoftKeyboardAttributes","className","classnames","useEventMapping","_ref","callEvent","useCallEvent","onBeforeInput","event","onFocus","onBlur","onMouseUp","onMouseDown","onKeyDown","onSubmit","onChange","on_focus","on_blur","on_key_down","on_submit","on_change","_ref2","isNumberMask","decimalSeparators","isUnidentified","_ref3","name","selStart","selectionStart","keyCode","keycode","which","data","disallowLeadingZeroes","replace","test","testValue","slice","preventDefault","decimalSymbol","hasDecimalSymbol","includes","allowedDecimals","decimalLimit","allowDecimal","charAtSelection","index","safeSetSelection","thousandsSeparatorSymbol","num","cleanNumber","prefix","suffix","decimalSeparator","thousandsSeparator","numberValue","cleanedValue","charAt","runCorrectCaretPosition","correctCaretPosition","__getCorrectCaretPosition","result","dispatchCustomElementEvent","_currency_mask","fromJSON","currency","isRequestingLocaleSupport","handleThousandsSeparator","handleDecimalSeparator","extendPropsWithContext","_currency_mask2","getCurrencySymbol","currencyDisplay","handleNumberMask","handlePercentMask","handleCurrencyMask"],"sources":["../../../../src/components/input-masked/InputMaskedHooks.js"],"sourcesContent":["/**\n * Web InputMasked Component\n *\n */\n\nimport React, { useCallback } from 'react'\nimport classnames from 'classnames'\nimport {\n cleanNumber,\n getCurrencySymbol,\n} from '../number-format/NumberUtils'\nimport {\n isTrue,\n dispatchCustomElementEvent,\n extendPropsWithContext,\n keycode,\n} from '../../shared/component-helper'\nimport { safeSetSelection } from './text-mask/createTextMaskInputElement'\n\nimport TextMask from './TextMask'\nimport createNumberMask from './addons/createNumberMask'\nimport InputMaskedContext from './InputMaskedContext'\n\nimport {\n isRequestingLocaleSupport,\n isRequestingNumberMask,\n correctNumberValue,\n handlePercentMask,\n handleCurrencyMask,\n handleNumberMask,\n correctCaretPosition,\n getSoftKeyboardAttributes,\n handleThousandsSeparator,\n handleDecimalSeparator,\n fromJSON,\n invisibleSpace,\n} from './InputMaskedUtils'\n\n// SSR warning fix: https://gist.github.com/gaearon/e7d97cdf38a2907924ea12e4ebdf3c85\nconst useLayoutEffect =\n typeof window === 'undefined' ? React.useEffect : React.useLayoutEffect\n\n/**\n * Takes all component properties and filters out all internal used properties\n *\n * @returns object {props, htmlAttributes}\n */\nexport const useFilteredProps = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n mask, // eslint-disable-line\n number_mask, // eslint-disable-line\n currency_mask, // eslint-disable-line\n number_format, // eslint-disable-line\n mask_options, // eslint-disable-line\n as_currency, // eslint-disable-line\n as_number, // eslint-disable-line\n as_percent, // eslint-disable-line\n locale, // eslint-disable-line\n show_mask, // eslint-disable-line\n show_guide, // eslint-disable-line\n pipe, // eslint-disable-line\n keep_char_positions, // eslint-disable-line\n placeholder_char, // eslint-disable-line\n\n // Get get rest of possible attributes\n ...attributes\n } = props\n\n return { props, htmlAttributes: Object.freeze(attributes) }\n}\n\n/**\n * Returns locale from either component or context\n *\n * @returns string\n */\nexport const useTranslation = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n\n let { locale } = props\n if (!locale && context?.locale) {\n locale = context.locale\n }\n\n return locale\n}\n\n/**\n * Handle internal value state\n *\n * It handles both the value state given as a prop form outside,\n * along with the current written and internal value.\n *\n * @returns object with internal value state and state setter\n */\nexport const useLocalValue = () => {\n const { props, context } = React.useContext(InputMaskedContext)\n const maskParams = useNumberMaskParams() || {}\n const locale = useTranslation()\n\n const [localValue, setLocalValue] = React.useState(() =>\n correctNumberValue({\n locale,\n props,\n maskParams,\n })\n )\n\n /**\n * Use an effect here, just;\n * because when a property gets changed from outside\n */\n React.useEffect(() => {\n const value = correctNumberValue({\n localValue,\n locale,\n props,\n maskParams,\n })\n\n setLocalValue(value)\n\n // Do not set \"localValue\" and \"maskParams\" here\n }, [props, context, locale]) // eslint-disable-line\n\n return { localValue, setLocalValue }\n}\n\n/**\n * Create createNumberMask if number mask parameters exists\n *\n * @returns mask function\n */\nexport const useNumberMask = () => {\n const maskParams = useNumberMaskParams()\n const { props } = React.useContext(InputMaskedContext)\n\n if (!maskParams || !isRequestingNumberMask(props)) {\n return null\n }\n\n const mask = createNumberMask(maskParams)\n\n mask.maskParams = maskParams\n\n return mask\n}\n\n/**\n * Returns either internal mask or given property mask\n *\n * @returns mask function\n */\nexport const useMask = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const numberMask = useNumberMask()\n if (numberMask) {\n return numberMask\n }\n\n return props.mask\n}\n\n/**\n * Returns the final mask params\n *\n * @returns mask params\n */\nexport const useMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n\n const {\n keep_char_positions,\n show_guide,\n show_mask,\n placeholder_char,\n placeholder,\n } = props\n\n const mask = useMask()\n const maskParams = useNumberMaskParams() || {}\n\n maskParams.showMask = !placeholder && isTrue(show_mask)\n\n // Revalidated placeholder char to a zero width space\n maskParams.placeholderChar = placeholder_char\n if (typeof mask?.placeholderChar !== 'undefined') {\n maskParams.placeholderChar = mask.placeholderChar\n }\n if (maskParams.placeholderChar === null) {\n maskParams.placeholderChar = invisibleSpace\n }\n\n if (typeof mask?.showMask !== 'undefined') {\n maskParams.showMask = mask.showMask\n }\n\n maskParams.showGuide = isTrue(show_guide)\n maskParams.keepCharPositions = isTrue(keep_char_positions)\n\n return maskParams\n}\n\n/**\n * Handle the TextMask dependency\n *\n * @returns React Element\n */\nexport const useInputElement = () => {\n const { props } = React.useContext(InputMaskedContext)\n const { pipe, inner_ref } = props\n\n const mask = useMask()\n const { showMask, showGuide, placeholderChar, keepCharPositions } =\n useMaskParams()\n\n const isFn = typeof inner_ref === 'function'\n const refHook = React.useRef()\n const ref = (!isFn && inner_ref) || refHook\n\n useLayoutEffect(() => {\n if (isFn) {\n inner_ref?.(ref.current)\n }\n }, [inner_ref, isFn, ref])\n\n // Create the actual input element\n const inputElementRef = React.useRef(<input ref={ref} />)\n\n return useCallback(\n (params, innerRef) => {\n // Set ref for Eufemia input\n innerRef.current = ref.current\n\n return (\n <TextMask\n inputRef={ref}\n inputElement={inputElementRef.current}\n pipe={pipe}\n mask={mask || createNumberMask()}\n showMask={showMask}\n guide={showGuide}\n keepCharPositions={keepCharPositions}\n placeholderChar={placeholderChar}\n {...getSoftKeyboardAttributes(mask)}\n {...params}\n className={classnames(\n params.className,\n showMask &&\n showGuide &&\n placeholderChar &&\n placeholderChar !== invisibleSpace &&\n 'dnb-input-masked--guide' // will use --font-family-monospace\n )}\n />\n )\n },\n [\n keepCharPositions,\n mask,\n pipe,\n placeholderChar,\n ref,\n showGuide,\n showMask,\n ]\n )\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns object of events to handle\n */\nexport const useEventMapping = ({ setLocalValue }) => {\n const callEvent = useCallEvent({ setLocalValue })\n\n return {\n onBeforeInput: (event) => callEvent({ event }, 'on_before_input'),\n onFocus: (params) => callEvent(params, 'on_focus'),\n onBlur: (params) => callEvent(params, 'on_blur'),\n onMouseUp: (event) => callEvent({ event }, 'on_mouse_up'),\n onMouseDown: (event) => callEvent({ event }, 'on_mouse_down'),\n onKeyDown: (params) => callEvent(params, 'on_key_down'),\n onSubmit: (params) => callEvent(params, 'on_submit'),\n onChange: (params) => callEvent(params, 'on_change'),\n\n on_focus: undefined,\n on_blur: undefined,\n on_key_down: undefined,\n on_submit: undefined,\n on_change: undefined,\n }\n}\n\n/**\n * Will map some events we need to map during typing\n *\n * @param {object} param0\n * @property {function} setLocalValue setState handler\n * @returns event handler function\n */\nconst useCallEvent = ({ setLocalValue }) => {\n const { props } = React.useContext(InputMaskedContext)\n const maskParams = useMaskParams()\n const isNumberMask = useNumberMask()\n\n // Source: https://en.wikipedia.org/wiki/Decimal_separator\n const decimalSeparators = /[,.'·]/\n let isUnidentified = false\n\n const callEvent = ({ event, value }, name) => {\n value = value || event.target.value\n const selStart = event.target.selectionStart\n let keyCode = keycode(event)\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n if (\n name === 'on_key_down' &&\n (event.which === 229 || keyCode === undefined)\n ) {\n isUnidentified = true\n }\n\n // Android issue: https://bugs.chromium.org/p/chromium/issues/detail?id=118639\n // so we use this solution instead\n if (\n isUnidentified &&\n name === 'on_before_input' &&\n typeof event?.data !== 'undefined'\n ) {\n name = 'on_key_down'\n keyCode = event.data\n isUnidentified = false\n }\n\n // Add support for \"await userEvent.type(input, '0...')\"\n if (isUnidentified && event.key === '0') {\n keyCode = '0'\n isUnidentified = false\n }\n\n // Prevent entering a leading zero\n if (\n name === 'on_key_down' &&\n !isUnidentified &&\n maskParams?.disallowLeadingZeroes &&\n (keyCode === '0' ||\n keyCode === 'numpad 0' ||\n (value.replace(/[^\\d]/g, '') === '' &&\n decimalSeparators.test(keyCode)))\n ) {\n const testValue = (\n value.slice(0, selStart) +\n '0' +\n value.slice(selStart + 1, value.length)\n ).replace(/[^\\d]/g, '')\n\n if (/^0/.test(testValue)) {\n event.preventDefault()\n }\n }\n\n if (\n name === 'on_key_down' &&\n isNumberMask &&\n !isUnidentified &&\n maskParams?.decimalSymbol\n ) {\n const hasDecimalSymbol = value.includes(maskParams.decimalSymbol)\n const allowedDecimals =\n maskParams.decimalLimit > 0 || maskParams.allowDecimal !== false\n\n if (!allowedDecimals && decimalSeparators.test(keyCode)) {\n event.preventDefault()\n }\n\n const charAtSelection = value.slice(selStart, selStart + 1)\n\n if (allowedDecimals) {\n // if we have already a decimal ...\n if (hasDecimalSymbol && decimalSeparators.test(keyCode)) {\n // ... we set the cursor on after the decimalSeparators\n if (decimalSeparators.test(charAtSelection)) {\n const index = value.indexOf(maskParams.decimalSymbol)\n if (index > -1) {\n safeSetSelection(event.target, index + 1)\n }\n }\n\n // ... we do not allow to type another\n event.preventDefault()\n }\n\n // replace other decimal\n else if (\n !hasDecimalSymbol &&\n keyCode !== maskParams.decimalSymbol &&\n decimalSeparators.test(keyCode)\n ) {\n value = value.slice(0, selStart)\n setLocalValue(value + maskParams.decimalSymbol)\n event.target.value = value + maskParams.decimalSymbol\n event.preventDefault()\n }\n }\n\n // move cursor to right if key is delete and char at selection is thousand separator\n if (\n keyCode === 'delete' &&\n charAtSelection === (maskParams.thousandsSeparatorSymbol || ' ')\n ) {\n safeSetSelection(event.target, selStart + 1)\n event.preventDefault()\n }\n }\n\n let num = cleanNumber(value, {\n prefix: maskParams.prefix,\n suffix: maskParams.suffix,\n decimalSeparator: maskParams.decimalSymbol || ',',\n thousandsSeparator: maskParams.thousandsSeparatorSymbol || ' ',\n })\n\n // We don't want to return NaN, so we set it to 0\n if (num === '-') {\n num = -0\n }\n\n const numberValue = Number(num)\n\n // Return '' (empty string) when the user has entered something invalid\n const cleanedValue =\n numberValue === 0 && String(num).charAt(0) !== '0' ? '' : num\n\n switch (name) {\n case 'on_focus':\n case 'on_key_down':\n case 'on_mouse_down':\n case 'on_mouse_up':\n event.target.runCorrectCaretPosition = () =>\n correctCaretPosition(event.target, maskParams, props)\n if (!event.target.__getCorrectCaretPosition) {\n event.target.runCorrectCaretPosition()\n }\n break\n }\n\n const result = dispatchCustomElementEvent(props, name, {\n event,\n value,\n numberValue,\n cleanedValue,\n })\n\n if (name === 'on_change') {\n setLocalValue(value)\n }\n\n return result\n }\n\n return callEvent\n}\n\n/**\n * Returns number mask parameters if requested by the component properties\n *\n * @returns object of number mask parameter\n */\nconst useNumberMaskParams = () => {\n const { props } = React.useContext(InputMaskedContext)\n const locale = useTranslation()\n\n if (!isRequestingNumberMask(props)) {\n return { ...fromJSON(props.mask_options) }\n }\n\n let { number_mask, currency_mask, mask_options } = props\n const { as_number, as_percent, as_currency, value } = props\n\n mask_options = fromJSON(mask_options)\n number_mask = isTrue(number_mask) ? {} : fromJSON(number_mask)\n currency_mask = isTrue(currency_mask)\n ? {}\n : fromJSON(currency_mask, {\n currency: currency_mask,\n })\n if (!currency_mask?.currency) {\n delete currency_mask.currency\n }\n\n if (isRequestingLocaleSupport(props)) {\n const thousandsSeparatorSymbol = handleThousandsSeparator(locale)\n const decimalSymbol = handleDecimalSeparator(locale)\n\n if (isTrue(as_number) || isTrue(as_percent)) {\n number_mask = extendPropsWithContext(number_mask, null, {\n decimalSymbol,\n thousandsSeparatorSymbol,\n })\n } else if (as_currency) {\n currency_mask = extendPropsWithContext(currency_mask, null, {\n decimalSymbol,\n thousandsSeparatorSymbol,\n currency: getCurrencySymbol(\n locale,\n typeof as_currency === 'string' ? as_currency : null,\n currency_mask?.currencyDisplay,\n value\n ),\n })\n }\n }\n\n let maskParams = null\n\n if (number_mask) {\n maskParams = handleNumberMask({\n mask_options,\n number_mask,\n })\n\n if (isTrue(as_percent)) {\n maskParams = handlePercentMask({ props, locale, maskParams })\n }\n } else if (currency_mask) {\n maskParams = handleCurrencyMask({\n mask_options,\n currency_mask,\n })\n }\n\n return maskParams\n}\n"],"mappings":"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"}
@@ -207,9 +207,9 @@ function MultiInputMaskInput(_ref4) {
207
207
  "aria-hidden": true,
208
208
  className: 'dnb-multi-input-mask__delimiter' + (shouldHighlight ? " dnb-multi-input-mask__delimiter--highlight" : "")
209
209
  }, delimiter));
210
- function removePlaceholder(value, placeholder) {
211
- return value.replace(RegExp(placeholder, 'gm'), '');
212
- }
210
+ }
211
+ function removePlaceholder(value, placeholder) {
212
+ return value.replace(RegExp(placeholder, 'gm'), '');
213
213
  }
214
214
  var _default = MultiInputMask;
215
215
  exports.default = _default;