{"version":3,"sources":["../../src/model-context/useInlineRender.tsx"],"sourcesContent":["\"use client\";\n\nimport { FC, useCallback, useEffect, useState } from \"react\";\nimport { ToolCallContentPartProps } from \"../types\";\nimport { create } from \"zustand\";\n\nexport const useInlineRender = <TArgs, TResult>(\n  toolUI: FC<ToolCallContentPartProps<TArgs, TResult>>,\n): FC<ToolCallContentPartProps<TArgs, TResult>> => {\n  const [useToolUI] = useState(() => create(() => toolUI));\n\n  useEffect(() => {\n    useToolUI.setState(toolUI);\n  }, [toolUI, useToolUI]);\n\n  return useCallback(\n    function ToolUI(args) {\n      const toolUI = useToolUI();\n      return toolUI(args);\n    },\n    [useToolUI],\n  );\n};\n"],"mappings":";;;AAEA,SAAa,aAAa,WAAW,gBAAgB;AAErD,SAAS,cAAc;AAEhB,IAAM,kBAAkB,CAC7B,WACiD;AACjD,QAAM,CAAC,SAAS,IAAI,SAAS,MAAM,OAAO,MAAM,MAAM,CAAC;AAEvD,YAAU,MAAM;AACd,cAAU,SAAS,MAAM;AAAA,EAC3B,GAAG,CAAC,QAAQ,SAAS,CAAC;AAEtB,SAAO;AAAA,IACL,SAAS,OAAO,MAAM;AACpB,YAAMA,UAAS,UAAU;AACzB,aAAOA,QAAO,IAAI;AAAA,IACpB;AAAA,IACA,CAAC,SAAS;AAAA,EACZ;AACF;","names":["toolUI"]}