{
  "version": 3,
  "sources": ["../../src/input-control/index.tsx"],
  "sourcesContent": ["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n/**\n * WordPress dependencies\n */\nimport { useInstanceId } from '@wordpress/compose';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport InputBase from './input-base';\nimport InputField from './input-field';\nimport { space } from '../utils/space';\nimport { useDraft } from './utils';\nimport BaseControl from '../base-control';\nimport { useDeprecated36pxDefaultSizeProp } from '../utils/use-deprecated-props';\nimport { maybeWarnDeprecated36pxSize } from '../utils/deprecated-36px-size';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst noop = () => {};\nfunction useUniqueId(idProp) {\n  const instanceId = useInstanceId(InputControl);\n  const id = `inspector-input-control-${instanceId}`;\n  return idProp || id;\n}\nexport function UnforwardedInputControl(props, ref) {\n  const {\n    __next40pxDefaultSize,\n    __shouldNotWarnDeprecated36pxSize,\n    __unstableStateReducer: stateReducer = state => state,\n    __unstableInputWidth,\n    className,\n    disabled = false,\n    help,\n    hideLabelFromVision = false,\n    id: idProp,\n    isPressEnterToChange = false,\n    label,\n    labelPosition = 'top',\n    onChange = noop,\n    onValidate = noop,\n    onKeyDown = noop,\n    prefix,\n    size = 'default',\n    style,\n    suffix,\n    value,\n    ...restProps\n  } = useDeprecated36pxDefaultSizeProp(props);\n  const id = useUniqueId(idProp);\n  const classes = clsx('components-input-control', className);\n  const draftHookProps = useDraft({\n    value,\n    onBlur: restProps.onBlur,\n    onChange\n  });\n  const helpProp = !!help ? {\n    'aria-describedby': `${id}__help`\n  } : {};\n  maybeWarnDeprecated36pxSize({\n    componentName: 'InputControl',\n    __next40pxDefaultSize,\n    size,\n    __shouldNotWarnDeprecated36pxSize\n  });\n  return /*#__PURE__*/_jsx(BaseControl, {\n    className: classes,\n    help: help,\n    id: id,\n    children: /*#__PURE__*/_jsx(InputBase, {\n      __next40pxDefaultSize: __next40pxDefaultSize,\n      __unstableInputWidth: __unstableInputWidth,\n      disabled: disabled,\n      gap: 3,\n      hideLabelFromVision: hideLabelFromVision,\n      id: id,\n      justify: \"left\",\n      label: label,\n      labelPosition: labelPosition,\n      prefix: prefix,\n      size: size,\n      style: style,\n      suffix: suffix,\n      children: /*#__PURE__*/_jsx(InputField, {\n        ...restProps,\n        ...helpProp,\n        __next40pxDefaultSize: __next40pxDefaultSize,\n        className: \"components-input-control__input\",\n        disabled: disabled,\n        id: id,\n        isPressEnterToChange: isPressEnterToChange,\n        onKeyDown: onKeyDown,\n        onValidate: onValidate,\n        paddingInlineStart: prefix ? space(1) : undefined,\n        paddingInlineEnd: suffix ? space(1) : undefined,\n        ref: ref,\n        size: size,\n        stateReducer: stateReducer,\n        ...draftHookProps\n      })\n    })\n  });\n}\n\n/**\n * InputControl components let users enter and edit text. This is an experimental component\n * intended to (in time) merge with or replace `TextControl`.\n *\n * ```jsx\n * import { __experimentalInputControl as InputControl } from '@wordpress/components';\n * import { useState } from 'react';\n *\n * const Example = () => {\n *   const [ value, setValue ] = useState( '' );\n *\n *   return (\n *  \t<InputControl\n * \t\t\t__next40pxDefaultSize\n *  \t\tvalue={ value }\n *  \t\tonChange={ ( nextValue ) => setValue( nextValue ?? '' ) }\n *  \t/>\n *   );\n * };\n * ```\n */\nexport const InputControl = forwardRef(UnforwardedInputControl);\nInputControl.displayName = 'InputControl';\nexport default InputControl;"],
  "mappings": ";AAGA,OAAO,UAAU;AAIjB,SAAS,qBAAqB;AAC9B,SAAS,kBAAkB;AAK3B,OAAO,eAAe;AACtB,OAAO,gBAAgB;AACvB,SAAS,aAAa;AACtB,SAAS,gBAAgB;AACzB,OAAO,iBAAiB;AACxB,SAAS,wCAAwC;AACjD,SAAS,mCAAmC;AAC5C,SAAS,OAAO,YAAY;AAC5B,IAAM,OAAO,MAAM;AAAC;AACpB,SAAS,YAAY,QAAQ;AAC3B,QAAM,aAAa,cAAc,YAAY;AAC7C,QAAM,KAAK,2BAA2B,UAAU;AAChD,SAAO,UAAU;AACnB;AACO,SAAS,wBAAwB,OAAO,KAAK;AAClD,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,wBAAwB,eAAe,WAAS;AAAA,IAChD;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA,sBAAsB;AAAA,IACtB,IAAI;AAAA,IACJ,uBAAuB;AAAA,IACvB;AAAA,IACA,gBAAgB;AAAA,IAChB,WAAW;AAAA,IACX,aAAa;AAAA,IACb,YAAY;AAAA,IACZ;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,IAAI,iCAAiC,KAAK;AAC1C,QAAM,KAAK,YAAY,MAAM;AAC7B,QAAM,UAAU,KAAK,4BAA4B,SAAS;AAC1D,QAAM,iBAAiB,SAAS;AAAA,IAC9B;AAAA,IACA,QAAQ,UAAU;AAAA,IAClB;AAAA,EACF,CAAC;AACD,QAAM,WAAW,CAAC,CAAC,OAAO;AAAA,IACxB,oBAAoB,GAAG,EAAE;AAAA,EAC3B,IAAI,CAAC;AACL,8BAA4B;AAAA,IAC1B,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACD,SAAoB,qBAAK,aAAa;AAAA,IACpC,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA,UAAuB,qBAAK,WAAW;AAAA,MACrC;AAAA,MACA;AAAA,MACA;AAAA,MACA,KAAK;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS;AAAA,MACT;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAuB,qBAAK,YAAY;AAAA,QACtC,GAAG;AAAA,QACH,GAAG;AAAA,QACH;AAAA,QACA,WAAW;AAAA,QACX;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,oBAAoB,SAAS,MAAM,CAAC,IAAI;AAAA,QACxC,kBAAkB,SAAS,MAAM,CAAC,IAAI;AAAA,QACtC;AAAA,QACA;AAAA,QACA;AAAA,QACA,GAAG;AAAA,MACL,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC;AACH;AAuBO,IAAM,eAAe,WAAW,uBAAuB;AAC9D,aAAa,cAAc;AAC3B,IAAO,wBAAQ;",
  "names": []
}
