{
  "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": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAiB;AAIjB,qBAA8B;AAC9B,qBAA2B;AAK3B,wBAAsB;AACtB,yBAAuB;AACvB,mBAAsB;AACtB,mBAAyB;AACzB,0BAAwB;AACxB,kCAAiD;AACjD,kCAA4C;AAC5C,yBAA4B;AAC5B,IAAM,OAAO,MAAM;AAAC;AACpB,SAAS,YAAY,QAAQ;AAC3B,QAAM,iBAAa,8BAAc,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,QAAI,8DAAiC,KAAK;AAC1C,QAAM,KAAK,YAAY,MAAM;AAC7B,QAAM,cAAU,YAAAA,SAAK,4BAA4B,SAAS;AAC1D,QAAM,qBAAiB,uBAAS;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,+DAA4B;AAAA,IAC1B,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACD,SAAoB,uCAAAC,KAAK,oBAAAC,SAAa;AAAA,IACpC,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA,UAAuB,uCAAAD,KAAK,kBAAAE,SAAW;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,uCAAAF,KAAK,mBAAAG,SAAY;AAAA,QACtC,GAAG;AAAA,QACH,GAAG;AAAA,QACH;AAAA,QACA,WAAW;AAAA,QACX;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,oBAAoB,aAAS,oBAAM,CAAC,IAAI;AAAA,QACxC,kBAAkB,aAAS,oBAAM,CAAC,IAAI;AAAA,QACtC;AAAA,QACA;AAAA,QACA;AAAA,QACA,GAAG;AAAA,MACL,CAAC;AAAA,IACH,CAAC;AAAA,EACH,CAAC;AACH;AAuBO,IAAM,mBAAe,2BAAW,uBAAuB;AAC9D,aAAa,cAAc;AAC3B,IAAO,wBAAQ;",
  "names": ["clsx", "_jsx", "BaseControl", "InputBase", "InputField"]
}
