refactor(ts-migration): Phase 11 batch 8 — the assistant panel components
The thirteen `.jsx` files under `src/components/ai-assistant/`, which
completes that directory: 24/24 files migrated and all 24 linted under
their new extensions.
39 errors, and converting 21 `/** @param {any} props */` hatches to
`: any` cleared 33 of them — the same pattern as batch 6, and the same
reason: without the JSDoc, TypeScript infers every destructured prop as
required, so `ResponseBlocks` and `AssistantMessage` alone produced 31
complaints about call sites that were always correct.
The remaining six were already there before this batch and are
unchanged.
13/13 erase byte-identically. `.jsx` -> `.tsx` is the move that can drop
unused imports through esbuild's loader difference; it did not here, and
the bundle hash is unchanged.
Measured against `3f835ee`:
typecheck 6 errors, unchanged; no new error anywhere
lint exit 0, 0 errors, 289 warnings, 24/24 linted by name
npm test 1684/1691, the same 7 failures verbatim
build exit 0, identical bundle hash 74d17e2d…
type erasure 96/96 byte-identical across Phase 11 so far
No baseline artifact touched.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HBG1wnuRfJKCstGB8Fekr8
This commit is contained in:
32
src/components/ai-assistant/index.tsx
Normal file
32
src/components/ai-assistant/index.tsx
Normal file
@@ -0,0 +1,32 @@
|
||||
/**
|
||||
* Owliver — the dashboard's contextual productivity panel.
|
||||
*
|
||||
* Named Owliver in the UI, but architecturally independent of the standalone
|
||||
* Owliver voice product in components/krow/Owliver*. Nothing is shared.
|
||||
*
|
||||
* Architecture:
|
||||
*
|
||||
* AssistantPanelProvider workspace state, resolved page context
|
||||
* AssistantPanel the workspace column the Admin layout renders
|
||||
* AssistantTrigger legacy opt-in button. Not used by Admin: Owliver is
|
||||
* part of the page there, so there is no trigger to
|
||||
* press. It self-hides on unsupported routes, which
|
||||
* is why the pre-redesign pages still holding one
|
||||
* render nothing.
|
||||
* KrowAssistant the one assistant UI, reused on every page
|
||||
* provider.js the transport seam — local today, HTTP later
|
||||
*
|
||||
* Independent of Owliver, which remains a separate product. Nothing here imports
|
||||
* Owliver code, and the two never share UI.
|
||||
*/
|
||||
|
||||
export { AssistantPanelProvider, useAssistantPanel } from './AssistantPanelContext';
|
||||
export {
|
||||
usePageAction, usePageContext, usePublishPageActions, usePublishPageContext,
|
||||
} from './PageContext';
|
||||
export { AssistantTrigger } from './AssistantTrigger';
|
||||
export { AssistantPanel } from './AssistantPanel';
|
||||
export { default as KrowAssistant } from './KrowAssistant';
|
||||
export { ASSISTANT_CONTEXTS, getContext } from './contexts';
|
||||
export { EXCLUDED_ROUTES, enabledRoutes, resolveAssistantContext } from './placement';
|
||||
export { createAgentProvider, createUnconfiguredProvider } from './provider';
|
||||
Reference in New Issue
Block a user