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
33 lines
1.6 KiB
TypeScript
33 lines
1.6 KiB
TypeScript
/**
|
|
* 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';
|