@lobehub/ui
Version:
Lobe UI is an open-source UI component library for building AIGC web apps
1 lines • 1.1 kB
Source Map (JSON)
{"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"}