{"version":3,"file":"Search.cjs","names":[],"sources":["../../../src/components/Search/Search.tsx"],"sourcesContent":["/*\nCopyright 2023 New Vector Ltd.\n\nSPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial\nPlease see LICENSE files in the repository root for full details.\n*/\n\nimport classnames from \"classnames\";\nimport React, { type ComponentProps, forwardRef, useId } from \"react\";\nimport styles from \"./Search.module.css\";\nimport { Field, Label } from \"../Form\";\n\nimport SearchIcon from \"@vector-im/compound-design-tokens/assets/web/icons/search\";\n\ntype SearchProps = {\n  /**\n   * The CSS class name\n   */\n  className?: string;\n  /**\n   * The input placeholder.\n   * @default \"Search…\"\n   */\n  placeholder?: string;\n  /**\n   * The field name.\n   */\n  name: React.ComponentProps<typeof Field>[\"name\"];\n} & Omit<ComponentProps<\"input\">, \"id\" | \"type\">;\n\n/**\n * A standalone search component\n */\nexport const Search = forwardRef<HTMLInputElement, SearchProps>(function Search(\n  {\n    className,\n    onChange,\n    // TODO: i18n needs to be setup\n    placeholder = \"Search…\",\n    name,\n    ...props\n  }: SearchProps,\n  ref,\n) {\n  const classes = classnames(styles.search, className);\n  const id = useId();\n  return (\n    <Field name={name} asChild>\n      <Label className={classes} htmlFor={id}>\n        <SearchIcon className={styles.icon} width={20} height={20} />\n        <input\n          ref={ref}\n          {...props}\n          id={id}\n          name={name}\n          type=\"search\"\n          placeholder={placeholder}\n          onChange={onChange}\n          className={styles.input}\n        />\n      </Label>\n    </Field>\n  );\n});\n"],"mappings":";;;;;;;;;;;;;;;AAiCA,IAAa,UAAA,GAAA,MAAA,YAAmD,SAAS,OACvE,EACE,WACA,UAEA,cAAc,WACd,MACA,GAAG,SAEL,KACA;CACA,MAAM,WAAA,GAAA,WAAA,SAAqB,sBAAA,QAAO,QAAQ,UAAU;CACpD,MAAM,MAAA,GAAA,MAAA,QAAY;AAClB,QACE,iBAAA,GAAA,kBAAA,KAAC,cAAA,OAAD;EAAa;EAAM,SAAA;YACjB,iBAAA,GAAA,kBAAA,MAAC,cAAA,OAAD;GAAO,WAAW;GAAS,SAAS;aAApC,CACE,iBAAA,GAAA,kBAAA,KAAC,0DAAA,SAAD;IAAY,WAAW,sBAAA,QAAO;IAAM,OAAO;IAAI,QAAQ;IAAM,CAAA,EAC7D,iBAAA,GAAA,kBAAA,KAAC,SAAD;IACO;IACL,GAAI;IACA;IACE;IACN,MAAK;IACQ;IACH;IACV,WAAW,sBAAA,QAAO;IAClB,CAAA,CACI;;EACF,CAAA;EAEV"}