{"version":3,"file":"useWatch.mjs","names":[],"sources":["../../../src/base-ui/FormKit/useWatch.ts"],"sourcesContent":["'use client';\n\nimport { getInternals } from './instance';\nimport type { FieldPath, FieldPathValue, FormInstance, FormValues } from './type';\nimport { useStoreSelector } from './useStoreSelector';\n\nexport function useWatch<T extends FormValues, P extends FieldPath<T>>(\n  form: FormInstance<T>,\n  name: P,\n): FieldPathValue<T, P>;\nexport function useWatch<T extends FormValues, S>(\n  form: FormInstance<T>,\n  selector: (values: T) => S,\n): S;\nexport function useWatch<T extends FormValues>(\n  form: FormInstance<T>,\n  nameOrSelector: string | ((values: T) => unknown),\n) {\n  const { engine } = getInternals(form);\n  return useStoreSelector(engine, (e) =>\n    typeof nameOrSelector === 'function'\n      ? nameOrSelector(e.getValues() as T)\n      : e.getValue(nameOrSelector),\n  );\n}\n"],"mappings":";;;;AAcA,SAAgB,SACd,MACA,gBACA;CACA,MAAM,EAAE,WAAW,aAAa,IAAI;CACpC,OAAO,iBAAiB,SAAS,MAC/B,OAAO,mBAAmB,aACtB,eAAe,EAAE,UAAU,CAAM,IACjC,EAAE,SAAS,cAAc,CAC/B;AACF"}