{"version":3,"file":"958-5dbac0793602edd23fab.js","mappings":"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","sources":["webpack:///./components/mui-generic-date/index.js","webpack:///./react-material-ui/date/index.js"],"sourcesContent":["import React from 'react';\nimport _ from 'lodash';\nimport FormControl from '@mui/material/FormControl';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport dayjs from 'dayjs';\nimport { DatePicker } from '@mui/x-date-pickers/DatePicker';\nimport { DateTimePicker } from '@mui/x-date-pickers/DateTimePicker';\n\nimport { isValidDayjsFormat, passRest } from '../../helpers';\n\n// DOC: https://mui.com/x/api/date-pickers/date-picker/\n//      https://mui.com/x/react-date-pickers/adapters-locale/\n\nconst MuiGenericDate = ({\n  name,\n  label,\n  hint,\n  value,\n  onChange,\n  onBlur,\n  error,\n  className,\n  disabled = false,\n  readOnly = false,\n  required,\n  fullWidth = false,\n  variant,\n  placeholder,\n  width,\n  disableFuture,\n  disableHighlightToday,\n  disableOpenPicker,\n  disablePast,\n  displayWeekNumber,\n  format,\n  maxDate,\n  minDate,\n  reduceAnimations,\n  showDaysOutsideCurrentMonth,\n  lfLocale,\n  datetime = false,\n  views,\n  component,\n  ...rest\n}) => {\n  const localeCode = lfLocale && _.isString(lfLocale) ? lfLocale.split('-')[0] : undefined;\n  const Component = datetime ? DateTimePicker : DatePicker;\n\n  // set locale for dates\n  let defaultValue = dayjs(value);\n  if (defaultValue && localeCode) {\n    defaultValue = defaultValue.locale(localeCode);\n  }\n\n  return (\n    <div\n      data-lf-field-name={name}\n      className={className}\n    >\n      <FormControl\n        required={required}\n        error={error != null}\n        fullWidth={fullWidth}\n      >\n        <Component\n          placeholder={placeholder}\n          readOnly={readOnly}\n          required={required}\n          style={_.isNumber(width) && !fullWidth ? { width: `${parseInt(width, 10)}px` } : undefined}\n          onChange={onChange}\n          defaultValue={defaultValue}\n          variant={variant ?? undefined}\n          onBlur={onBlur}\n          disabled={disabled}\n          label={label}\n          views={!_.isEmpty(views) ? views : ['day', 'year']}\n          disableFuture={disableFuture}\n          disableHighlightToday={disableHighlightToday}\n          disableOpenPicker={disableOpenPicker}\n          disablePast={disablePast}\n          displayWeekNumber={displayWeekNumber}\n          format={isValidDayjsFormat(format) ? format : undefined}\n          maxDate={maxDate && dayjs(maxDate)}\n          minDate={minDate && dayjs(minDate)}\n          reduceAnimations={reduceAnimations}\n          showDaysOutsideCurrentMonth={showDaysOutsideCurrentMonth}\n          {...passRest(rest)}\n        />\n        {hint && !error && <FormHelperText>{hint}</FormHelperText>}\n        {error && <FormHelperText>{error}</FormHelperText>}\n      </FormControl>\n    </div>\n  );\n};\n\nexport { MuiGenericDate };\n","import React, { useCallback } from 'react';\nimport _ from 'lodash';\n\n\nimport { I18N } from '../../components/i18n';\nimport { MuiGenericDate } from '../../components/mui-generic-date';\nimport { lfLog } from '../../helpers/lf-log';\nimport { isValidDate } from '../../helpers/is-valid-date';\n\n// DOC: https://mui.com/x/api/date-pickers/date-picker/\n//      https://mui.com/x/react-date-pickers/adapters-locale/\n\nconst MuiDate = I18N(\n  ({\n    onChange,\n    value,\n    ...rest\n  }) => {\n\n    // also accepts string dates\n    let currentValue;\n    if (_.isDate(value)) {\n      currentValue = value;\n    } else if (_.isString(value)) {\n      const d = new Date(value);\n      if (isValidDate(d)) {\n        currentValue = d;\n      }\n    }\n\n    // send always date string in format yyyy-mm-dd\n    const handleChange = useCallback(\n      d => {\n        if (d.toDate && isValidDate(d.toDate())) {\n          onChange(d.toDate().toISOString().split('T')[0]);\n        }\n      },\n      [onChange]\n    );\n\n    return (\n      <MuiGenericDate\n        value={currentValue}\n        className=\"lf-control-date\"\n        component=\"date\"\n        onChange={handleChange}\n        {...rest}\n      />\n    )\n  },\n  ['label', 'hint', 'placeholder']\n);\nlfLog('Loaded MUI.Date');\n\nexport default MuiDate;\n"],"names":["MuiGenericDate","_ref","name","label","hint","value","onChange","onBlur","error","className","_ref$disabled","disabled","_ref$readOnly","readOnly","required","_ref$fullWidth","fullWidth","variant","placeholder","width","disableFuture","disableHighlightToday","disableOpenPicker","disablePast","displayWeekNumber","format","maxDate","minDate","reduceAnimations","showDaysOutsideCurrentMonth","lfLocale","_ref$datetime","datetime","views","rest","component","_objectWithoutProperties","_excluded","localeCode","_isString","split","undefined","Component","DateTimePicker","DatePicker","defaultValue","dayjs","locale","React","FormControl","_extends","style","_isNumber","concat","parseInt","_isEmpty","isValidDayjsFormat","passRest","FormHelperText","MuiDate","I18N","currentValue","_isDate","d","Date","isValidDate","handleChange","useCallback","toDate","toISOString","lfLog"],"sourceRoot":""}