{"version":3,"file":"AmPmInput.cjs","names":["useTimePickerContext"],"sources":["../../../../src/components/TimePicker/AmPmInput/AmPmInput.tsx"],"sourcesContent":["import { useTimePickerContext } from '../TimePicker.context';\n\ninterface AmPmInputProps extends Omit<React.ComponentProps<'select'>, 'value' | 'onChange'> {\n  labels: { am: string; pm: string };\n  value: string | null;\n  inputType: 'select' | 'input';\n  onChange: (value: string | null) => void;\n  readOnly?: boolean;\n  onPreviousInput?: () => void;\n}\n\nexport function AmPmInput({\n  labels,\n  value,\n  onChange,\n  className,\n  style,\n  onPreviousInput,\n  readOnly,\n  onMouseDown,\n  onTouchStart,\n  inputType,\n  ...others\n}: AmPmInputProps) {\n  const ctx = useTimePickerContext();\n\n  const handleKeyDown = (event: React.KeyboardEvent<HTMLSelectElement>) => {\n    if (readOnly) {\n      return;\n    }\n\n    if (event.key === 'Home') {\n      event.preventDefault();\n      onChange(labels.am);\n    }\n\n    if (event.key === 'End') {\n      event.preventDefault();\n      onChange(labels.pm);\n    }\n\n    if (event.key === 'Backspace' || event.key === 'Delete') {\n      event.preventDefault();\n      if (value === null) {\n        onPreviousInput?.();\n      } else {\n        onChange(null);\n      }\n    }\n\n    if (event.key === 'ArrowLeft') {\n      event.preventDefault();\n      onPreviousInput?.();\n    }\n\n    if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n      event.preventDefault();\n      onChange(value === labels.am ? labels.pm : labels.am);\n    }\n\n    if (event.code === 'KeyA') {\n      event.preventDefault();\n      onChange(labels.am);\n    }\n\n    if (event.code === 'KeyP') {\n      event.preventDefault();\n      onChange(labels.pm);\n    }\n  };\n\n  if (inputType === 'input') {\n    const displayValue = value || '--';\n    const inputSize = displayValue.length + 1;\n\n    return (\n      <input\n        {...ctx.getStyles('field', { className, style })}\n        value={displayValue}\n        size={inputSize}\n        onChange={(event) => !readOnly && onChange(event.target.value || null)}\n        onClick={((event: any) => event.stopPropagation()) as any}\n        onKeyDown={handleKeyDown as any}\n        onMouseDown={(event) => {\n          event.stopPropagation();\n          onMouseDown?.(event as any);\n        }}\n        data-am-pm\n        {...(others as any)}\n      />\n    );\n  }\n\n  return (\n    <select\n      {...ctx.getStyles('field', { className, style })}\n      value={value || ''}\n      onChange={(event) => !readOnly && onChange(event.target.value || null)}\n      onClick={(event) => event.stopPropagation()}\n      onKeyDown={handleKeyDown}\n      onMouseDown={(event) => {\n        event.stopPropagation();\n        onMouseDown?.(event);\n      }}\n      data-am-pm\n      {...others}\n    >\n      <option value=\"\">--</option>\n      <option value={labels.am}>{labels.am}</option>\n      <option value={labels.pm}>{labels.pm}</option>\n    </select>\n  );\n}\n\nAmPmInput.displayName = '@mantine/dates/AmPmInput';\n"],"mappings":";;;;AAWA,SAAgB,UAAU,EACxB,QACA,OACA,UACA,WACA,OACA,iBACA,UACA,aACA,cACA,WACA,GAAG,UACc;CACjB,MAAM,MAAMA,2BAAAA,qBAAqB;CAEjC,MAAM,iBAAiB,UAAkD;EACvE,IAAI,UACF;EAGF,IAAI,MAAM,QAAQ,QAAQ;GACxB,MAAM,eAAe;GACrB,SAAS,OAAO,EAAE;EACpB;EAEA,IAAI,MAAM,QAAQ,OAAO;GACvB,MAAM,eAAe;GACrB,SAAS,OAAO,EAAE;EACpB;EAEA,IAAI,MAAM,QAAQ,eAAe,MAAM,QAAQ,UAAU;GACvD,MAAM,eAAe;GACrB,IAAI,UAAU,MACZ,kBAAkB;QAElB,SAAS,IAAI;EAEjB;EAEA,IAAI,MAAM,QAAQ,aAAa;GAC7B,MAAM,eAAe;GACrB,kBAAkB;EACpB;EAEA,IAAI,MAAM,QAAQ,aAAa,MAAM,QAAQ,aAAa;GACxD,MAAM,eAAe;GACrB,SAAS,UAAU,OAAO,KAAK,OAAO,KAAK,OAAO,EAAE;EACtD;EAEA,IAAI,MAAM,SAAS,QAAQ;GACzB,MAAM,eAAe;GACrB,SAAS,OAAO,EAAE;EACpB;EAEA,IAAI,MAAM,SAAS,QAAQ;GACzB,MAAM,eAAe;GACrB,SAAS,OAAO,EAAE;EACpB;CACF;CAEA,IAAI,cAAc,SAAS;EACzB,MAAM,eAAe,SAAS;EAC9B,MAAM,YAAY,aAAa,SAAS;EAExC,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,SAAD;GACE,GAAI,IAAI,UAAU,SAAS;IAAE;IAAW;GAAM,CAAC;GAC/C,OAAO;GACP,MAAM;GACN,WAAW,UAAU,CAAC,YAAY,SAAS,MAAM,OAAO,SAAS,IAAI;GACrE,WAAW,UAAe,MAAM,gBAAgB;GAChD,WAAW;GACX,cAAc,UAAU;IACtB,MAAM,gBAAgB;IACtB,cAAc,KAAY;GAC5B;GACA,cAAA;GACA,GAAK;EACN,CAAA;CAEL;CAEA,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,UAAD;EACE,GAAI,IAAI,UAAU,SAAS;GAAE;GAAW;EAAM,CAAC;EAC/C,OAAO,SAAS;EAChB,WAAW,UAAU,CAAC,YAAY,SAAS,MAAM,OAAO,SAAS,IAAI;EACrE,UAAU,UAAU,MAAM,gBAAgB;EAC1C,WAAW;EACX,cAAc,UAAU;GACtB,MAAM,gBAAgB;GACtB,cAAc,KAAK;EACrB;EACA,cAAA;EACA,GAAI;YAXN;GAaE,iBAAA,GAAA,kBAAA,IAAA,CAAC,UAAD;IAAQ,OAAM;cAAG;GAAU,CAAA;GAC3B,iBAAA,GAAA,kBAAA,IAAA,CAAC,UAAD;IAAQ,OAAO,OAAO;cAAK,OAAO;GAAW,CAAA;GAC7C,iBAAA,GAAA,kBAAA,IAAA,CAAC,UAAD;IAAQ,OAAO,OAAO;cAAK,OAAO;GAAW,CAAA;EACvC;;AAEZ;AAEA,UAAU,cAAc"}