All view components are now tsx JSX function components instead of hand-rolled h() factories; the bundle externalizes the framework seed words (react, @deepseek-ai/dsh-client-ui-primitives) so the loader module table resolves the single shared framework instance at runtime. Reuses shared ui-primitives where a clean fit exists (injection and model-switch event glyphs -> IconPlusOutline16/IconBranchOutline16); the bespoke data-viz chrome (charts, shared-hover tooltip) intentionally stays custom but continues to draw the shared --dsw-alias-* tokens. esbuild uses the classic JSX transform, so the emitted createElement trees are isomorphic to the previous h() calls and the element-parsing tests, the chart-render assertions, and the real-React repro all stay green unchanged. Adds @deepseek-ai/dsh-client-ui-primitives as a type devDep and documents the framework-reuse findings in docs/redesign.md §8.
18 lines
401 B
JSON
18 lines
401 B
JSON
{
|
|
"compilerOptions": {
|
|
"target": "ES2022",
|
|
"module": "ESNext",
|
|
"moduleResolution": "Bundler",
|
|
"lib": ["ES2022", "DOM"],
|
|
"jsx": "react",
|
|
"strict": true,
|
|
"noEmit": true,
|
|
"skipLibCheck": true,
|
|
"isolatedModules": true,
|
|
"verbatimModuleSyntax": true,
|
|
"forceConsistentCasingInFileNames": true,
|
|
"types": []
|
|
},
|
|
"include": ["src/**/*.ts", "src/**/*.tsx"]
|
|
}
|