{"version":3,"file":"654-25c4faa1610f372455c5.js","mappings":"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","sources":["webpack:///../../../../node_modules/react-bootstrap/esm/InputGroupContext.js","webpack:///../../../../node_modules/react-bootstrap/esm/InputGroup.js","webpack:///./components/bootstrap-generic-input/index.js","webpack:///./react-bootstrap/datetime/index.js"],"sourcesContent":["import * as React from 'react';\nconst context = /*#__PURE__*/React.createContext(null);\ncontext.displayName = 'InputGroupContext';\nexport default context;","import classNames from 'classnames';\nimport * as React from 'react';\nimport { useMemo } from 'react';\nimport createWithBsPrefix from './createWithBsPrefix';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport FormCheckInput from './FormCheckInput';\nimport InputGroupContext from './InputGroupContext';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst InputGroupText = createWithBsPrefix('input-group-text', {\n  Component: 'span'\n});\nconst InputGroupCheckbox = props => /*#__PURE__*/_jsx(InputGroupText, {\n  children: /*#__PURE__*/_jsx(FormCheckInput, {\n    type: \"checkbox\",\n    ...props\n  })\n});\nconst InputGroupRadio = props => /*#__PURE__*/_jsx(InputGroupText, {\n  children: /*#__PURE__*/_jsx(FormCheckInput, {\n    type: \"radio\",\n    ...props\n  })\n});\n/**\n *\n * @property {InputGroupText} Text\n * @property {InputGroupRadio} Radio\n * @property {InputGroupCheckbox} Checkbox\n */\nconst InputGroup = /*#__PURE__*/React.forwardRef(({\n  bsPrefix,\n  size,\n  hasValidation,\n  className,\n  // Need to define the default \"as\" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595\n  as: Component = 'div',\n  ...props\n}, ref) => {\n  bsPrefix = useBootstrapPrefix(bsPrefix, 'input-group');\n\n  // Intentionally an empty object. Used in detecting if a dropdown\n  // exists under an input group.\n  const contextValue = useMemo(() => ({}), []);\n  return /*#__PURE__*/_jsx(InputGroupContext.Provider, {\n    value: contextValue,\n    children: /*#__PURE__*/_jsx(Component, {\n      ref: ref,\n      ...props,\n      className: classNames(className, bsPrefix, size && `${bsPrefix}-${size}`, hasValidation && 'has-validation')\n    })\n  });\n});\nInputGroup.displayName = 'InputGroup';\nexport default Object.assign(InputGroup, {\n  Text: InputGroupText,\n  Radio: InputGroupRadio,\n  Checkbox: InputGroupCheckbox\n});","import React, { useCallback } from 'react';\nimport _ from 'lodash';\nimport Form from 'react-bootstrap/Form';\nimport InputGroup from 'react-bootstrap/InputGroup';\nimport FloatingLabel from 'react-bootstrap/FloatingLabel';\n\nimport { RequiredIcon } from '../../components';\nimport { passRest, makeWidthStyle } from '../../helpers';\nimport { TextOrIcon } from '../../common';\n\n// DOC: https://react-bootstrap.github.io/forms/form-control/#form-control-props\n\nconst BootstrapGenericInput = ({\n  name,\n  label,\n  hint,\n  value,\n  onChange,\n  onBlur,\n  size,\n  className,\n  inputType,\n  inputMode,\n  autocomplete,\n  lfLocale,\n  disabled = false,\n  readOnly = false,\n  plaintext = false,\n  error,\n  component,\n  required,\n  submitOnEnter = false,\n  prefix,\n  postfix,\n  placeholder,\n  fullWidth,\n  width,\n  floatingLabel = false,\n  lfOnEnter = () => {},\n  ...rest\n}) => {\n  const handleKeyUp = useCallback(e => e.keyCode === 13 && lfOnEnter(), [lfOnEnter]);\n\n  const inner = (\n    <Form.Control\n      name={name}\n      type={inputType ?? 'text'}\n      inputmode={inputMode}\n      autocomplete={autocomplete}\n      value={value}\n      plaintext={plaintext}\n      onChange={onChange}\n      onKeyUp={submitOnEnter ? handleKeyUp : undefined}\n      size={size}\n      placeholder={placeholder}\n      onBlur={onBlur}\n      disabled={disabled}\n      readOnly={readOnly}\n      isInvalid={error != null}\n      style={makeWidthStyle(fullWidth, width)}\n      {...passRest(rest)}\n    />\n  );\n\n  let innerGroup = inner;\n  const needsGroup = postfix || prefix;\n  if (needsGroup) {\n    innerGroup = (\n      <InputGroup>\n        {prefix && <InputGroup.Text>{TextOrIcon(prefix)}</InputGroup.Text>}\n        {inner}\n        {postfix && <InputGroup.Text>{TextOrIcon(postfix)}</InputGroup.Text>}\n      </InputGroup>\n    );\n  }\n\n  const useFloatingLabels = floatingLabel && !needsGroup;\n\n  return (\n    <Form.Group\n      className={className}\n      data-lf-field-name={name}\n    >\n      {useFloatingLabels && (\n        <FloatingLabel\n          label={label}\n        >\n          {innerGroup}\n        </FloatingLabel>\n      )}\n      {!useFloatingLabels && (\n        <Form.Label>\n          {label}\n          {required && <RequiredIcon />}\n        </Form.Label>\n      )}\n      {!useFloatingLabels && innerGroup}\n      {hint && !error && <Form.Text>{hint}</Form.Text>}\n      {_.isString(error) && !_.isEmpty(error) && (\n        <Form.Control.Feedback type=\"invalid\">{error}</Form.Control.Feedback>\n      )}\n    </Form.Group>\n  );\n};\n\nexport { BootstrapGenericInput };\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\n\nimport { I18N } from '../../components';\nimport { BootstrapGenericInput } from '../../components/bootstrap-generic-input';\nimport { lfLog } from '../../helpers/lf-log';\nimport { isValidDate } from '../../helpers/is-valid-date';\n\n// DOC: https://react-bootstrap.github.io/forms/form-control/#form-control-props\n\nconst DateTime = I18N(\n  ({\n    onChange,\n    value,\n    ...rest\n  }) => {\n\n    const handleChange = useCallback(\n      e => {\n        onChange(e.target.value)\n      },\n      [onChange]\n    );\n\n    let currentDate = value;\n    if (isValidDate(value)) {\n      // only keep iso up to the minutes digits\n      const match = value.toISOString().match(/(.*?T[0-9]{1,2}:[0-9]{1,2})/gm);\n      if (match != null) {\n        currentDate = match[0];\n      }\n    }\n\n    return (\n      <BootstrapGenericInput\n        className=\"lf-control-date\"\n        inputType=\"datetime-local\"\n        component=\"datetime\"\n        value={currentDate}\n        onChange={handleChange}\n        {...rest}\n      />\n    );\n  },\n  ['label', 'hint', 'placeholder']\n);\nlfLog('Loaded ReactBootrap.DateTime');\n\nexport default DateTime;\n"],"names":["context","displayName","InputGroupText","createWithBsPrefix","Component","InputGroup","bsPrefix","size","hasValidation","className","as","props","ref","contextValue","useMemo","InputGroupContext","Provider","value","children","Object","assign","Text","Radio","FormCheckInput","type","Checkbox","BootstrapGenericInput","_ref","name","label","hint","onChange","onBlur","inputType","inputMode","autocomplete","_ref$disabled","lfLocale","disabled","_ref$readOnly","readOnly","_ref$plaintext","plaintext","error","required","component","_ref$submitOnEnter","submitOnEnter","prefix","postfix","placeholder","fullWidth","width","_ref$floatingLabel","floatingLabel","_ref$lfOnEnter","lfOnEnter","rest","_objectWithoutProperties","_excluded","handleKeyUp","useCallback","e","keyCode","inner","React","Form","_extends","inputmode","onKeyUp","undefined","isInvalid","style","makeWidthStyle","passRest","innerGroup","needsGroup","TextOrIcon","useFloatingLabels","FloatingLabel","RequiredIcon","_isString","_isEmpty","DateTime","I18N","handleChange","target","currentDate","isValidDate","match","toISOString","lfLog"],"sourceRoot":""}