{"version":3,"file":"context.mjs","names":[],"sources":["../../../src/base-ui/FormKit/context.ts"],"sourcesContent":["'use client';\n\nimport { createContext, use } from 'react';\n\nimport type { FormLayout, FormVariant } from '../Form/type';\nimport type { FormInstance, FormValues } from './type';\n\nexport interface FormKitContextValue {\n  form: FormInstance<any>;\n  layout: FormLayout;\n  variant: FormVariant;\n}\n\nexport const FormKitContext = createContext<FormKitContextValue | null>(null);\n\nexport const useFormKitContext = () => {\n  const value = use(FormKitContext);\n  if (!value)\n    throw new Error('[@lobehub/ui/base-ui/form] Form.Field must be rendered inside <Form>');\n  return value;\n};\n\nexport const useFormInstance = <T extends FormValues = FormValues>() =>\n  useFormKitContext().form as FormInstance<T>;\n"],"mappings":";;;AAaA,MAAa,iBAAiB,cAA0C,IAAI;AAE5E,MAAa,0BAA0B;CACrC,MAAM,QAAQ,IAAI,cAAc;CAChC,IAAI,CAAC,OACH,MAAM,IAAI,MAAM,sEAAsE;CACxF,OAAO;AACT;AAEA,MAAa,wBACX,kBAAkB,CAAC,CAAC"}