showTypingIndicator treated any tool part in the latest assistant message as visible content, so the "AI is typing…" dots were suppressed for the rest of the turn once the first tool call appeared. During the model's "thinking" pauses after a completed tool call, the chat showed only static tool cards and no activity. Inspect the last part of the assistant message instead of any part: hide the dots only while output is actively rendering (a non-empty streaming text part, or a tool still in the "running" state — which shows its own Loader). Finished/errored tools and empty trailing text now keep the dots visible, so the indicator reappears while the model thinks between steps. Add tests covering the post-tool thinking gap and the running-tool case.
React + TypeScript + Vite
This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel for Fast Refresh
- @vitejs/plugin-react-swc uses SWC for Fast Refresh
Expanding the ESLint configuration
If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
- Configure the top-level
parserOptionsproperty like this:
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
project: ['./tsconfig.json', './tsconfig.node.json'],
tsconfigRootDir: __dirname,
},
- Replace
plugin:@typescript-eslint/recommendedtoplugin:@typescript-eslint/recommended-type-checkedorplugin:@typescript-eslint/strict-type-checked - Optionally add
plugin:@typescript-eslint/stylistic-type-checked - Install eslint-plugin-react and add
plugin:react/recommended&plugin:react/jsx-runtimeto theextendslist