Files
gui/tsconfig.json
zeekayandHanzo Dev 3b3f9d6826 build: TypeScript 7 — module System -> esnext, moduleResolution -> bundler
TS7 removes `module: System` and `moduleResolution: node10` outright, so
every one of the 87 packages that extends this root failed to typecheck:

    error TS5108: Option 'module=System' has been removed.
    error TS5108: Option 'moduleResolution=node10' has been removed.
    error TS5095: Option 'bundler' can only be used when 'module' is
                  'preserve', 'commonjs', or 'es2015' or later.

That last one shows the config was already internally inconsistent — a
package sets moduleResolution: bundler while inheriting module: System.

Safe because tsc NEVER emits here: packages bundle with `gui-build`
(esbuild), and the only `tsc -b` is scripts/typecheck.sh against
tsconfig.build.json, which sets noEmit. So `module` governs type
resolution alone and System was vestigial — no published artifact changes.

Verified on both compilers, root + a sample of the extending packages:
tsconfig.build.json 0/0, pkgs/ui/tabs 0/0, pkgs/calendar 0/0 — zero
config errors and zero new type errors under TS7 and TS 5.9 alike.

Co-Authored-By: Hanzo Dev <dev@hanzo.ai>
2026-07-27 17:53:20 -07:00

327 lines
5.7 KiB
JSON

{
"compilerOptions": {
"rootDir": ".",
"paths": {
"@hanzo/gui": [
"./pkgs/ui/hanzogui"
],
"@hanzogui/*": [
"./pkgs/core/*",
"./pkgs/ui/*",
"./pkgs/*"
],
"@hanzogui/demos": [
"./apps/demos"
]
},
"outDir": "dist",
"importHelpers": true,
"isolatedModules": true,
"allowJs": false,
"allowSyntheticDefaultImports": true,
"forceConsistentCasingInFileNames": true,
"declaration": true,
"experimentalDecorators": false,
"emitDecoratorMetadata": false,
"strict": true,
"esModuleInterop": true,
"inlineSourceMap": true,
"preserveSymlinks": true,
"jsx": "react-jsx",
"module": "esnext",
"moduleResolution": "bundler",
"noEmitOnError": false,
"noImplicitAny": false,
"noImplicitReturns": false,
"noUnusedLocals": false,
"noUnusedParameters": false,
"preserveConstEnums": true,
"removeComments": false,
"skipLibCheck": true,
"sourceMap": false,
"strictNullChecks": true,
"target": "es2020",
"types": [
"node",
"react"
],
"lib": [
"dom",
"esnext"
]
},
"exclude": [
"test",
"dist",
"types",
"**/__tests__",
"node_modules"
],
"typeAcquisition": {
"enable": false
},
"references": [
{
"path": "pkgs/compiler/babel-plugin"
},
{
"path": "pkgs/compiler/loader"
},
{
"path": "pkgs/compiler/metro-plugin"
},
{
"path": "pkgs/compiler/next-plugin"
},
{
"path": "pkgs/compiler/static-tests"
},
{
"path": "pkgs/compiler/static"
},
{
"path": "pkgs/compiler/vite-plugin"
},
{
"path": "pkgs/core/animations-css"
},
{
"path": "pkgs/core/animations-moti"
},
{
"path": "pkgs/core/animations-react-native"
},
{
"path": "pkgs/core/assert"
},
{
"path": "pkgs/core/calc"
},
{
"path": "pkgs/core/cli"
},
{
"path": "pkgs/core/colors"
},
{
"path": "pkgs/core/compose-refs"
},
{
"path": "pkgs/core/config-base"
},
{
"path": "pkgs/core/config-default"
},
{
"path": "pkgs/core/config"
},
{
"path": "pkgs/core/constants"
},
{
"path": "pkgs/core/core"
},
{
"path": "pkgs/core/create-context"
},
{
"path": "pkgs/core/create-theme"
},
{
"path": "pkgs/core/cubic-bezier-animator"
},
{
"path": "pkgs/core/floating"
},
{
"path": "pkgs/core/font-cherry-bomb"
},
{
"path": "pkgs/core/font-dm-sans"
},
{
"path": "pkgs/core/font-dm-serif-display"
},
{
"path": "pkgs/core/font-fira-mono"
},
{
"path": "pkgs/core/font-glusp"
},
{
"path": "pkgs/core/font-inter"
},
{
"path": "pkgs/core/font-munro"
},
{
"path": "pkgs/core/font-nohemi"
},
{
"path": "pkgs/core/font-silkscreen"
},
{
"path": "pkgs/core/font-size"
},
{
"path": "pkgs/core/font"
},
{
"path": "pkgs/core/generate-themes"
},
{
"path": "pkgs/core/get-button-sized"
},
{
"path": "pkgs/core/get-font-sized"
},
{
"path": "pkgs/core/get-token"
},
{
"path": "pkgs/core/helpers-icon"
},
{
"path": "pkgs/core/helpers-node"
},
{
"path": "pkgs/core/helpers-hanzogui"
},
{
"path": "pkgs/core/helpers"
},
{
"path": "pkgs/core/normalize-css-color"
},
{
"path": "pkgs/core/react-native-media-driver"
},
{
"path": "pkgs/core/react-native-use-pressable"
},
{
"path": "pkgs/core/react-native-use-responder-events"
},
{
"path": "pkgs/core/react-native-web-internals"
},
{
"path": "pkgs/core/shorthands"
},
{
"path": "pkgs/core/simple-hash"
},
{
"path": "pkgs/core/start-transition"
},
{
"path": "pkgs/core/test-design-system"
},
{
"path": "pkgs/core/theme-base"
},
{
"path": "pkgs/core/theme-builder"
},
{
"path": "pkgs/core/theme"
},
{
"path": "pkgs/core/themes"
},
{
"path": "pkgs/core/types"
},
{
"path": "pkgs/core/use-callback-ref"
},
{
"path": "pkgs/core/use-constant"
},
{
"path": "pkgs/core/use-controllable-state"
},
{
"path": "pkgs/core/use-debounce"
},
{
"path": "pkgs/core/use-did-finish-ssr"
},
{
"path": "pkgs/core/use-direction"
},
{
"path": "pkgs/core/use-escape-keydown"
},
{
"path": "pkgs/core/use-event"
},
{
"path": "pkgs/core/use-force-update"
},
{
"path": "pkgs/core/use-keyboard-visible"
},
{
"path": "pkgs/core/use-presence"
},
{
"path": "pkgs/core/use-previous"
},
{
"path": "pkgs/core/use-window-dimensions"
},
{
"path": "pkgs/core/web"
},
{
"path": "apps/demos"
},
{
"path": "pkgs/babel-plugin-fully-specified"
},
{
"path": "pkgs/get"
},
{
"path": "pkgs/recipes"
},
{
"path": "pkgs/cli-color"
},
{
"path": "pkgs/code-to-html"
},
{
"path": "pkgs/logo"
},
{
"path": "pkgs/lucide-icons"
},
{
"path": "pkgs/next-theme"
},
{
"path": "pkgs/react-native-svg"
},
{
"path": "pkgs/react-native-web-lite"
},
{
"path": "pkgs/sandbox-ui"
},
{
"path": "pkgs/timer"
},
{
"path": "pkgs/element"
},
{
"path": "pkgs/use-store"
},
{
"path": "pkgs/vite-plugin-internal"
}
]
}