Typescript
JS to TS
Change existing files to typescript
sh
mv vite.config.js vite.config.ts
mv resources/js/app.js resources/js/app.ts
mv resources/js/bootstrap.js resources/js/bootstrap.ts
vite.config.ts
ts
import { defineConfig } from "vite";
import laravel from "laravel-vite-plugin/dist";
export default defineConfig({
resolve: {
alias: {
"@": "/resources/js",
"~": "/",
},
},
plugins: [
laravel({
input: ["resources/css/app.css", "resources/js/app.ts"],
refresh: true,
}),
],
});
tsconfig.json
sh
cat > tsconfig.json << EOF
{
"compilerOptions": {
"target": "esnext",
"jsx": "preserve",
"lib": ["esnext", "dom"],
"module": "esnext",
"moduleResolution": "node",
"paths": {
"@/*": ["./resources/js/*"],
"@": ["./resources/js"],
"~": ["./"],
"~/*": ["./*"]
},
"resolveJsonModule": true,
"types": ["vite/client", "resources/**/*.d.ts"],
"strict": true,
"noImplicitAny": false,
"sourceMap": true,
"esModuleInterop": true,
"skipLibCheck": true
},
"include": [
"resources/**/*.tsx",
"resources/**/*.vue",
"resources/**/*.d.ts",
"resources/**/*.ts",
"resources/**/*.tsx",
"resources/**/*.vue",
"*.d.ts",
"components.d.ts",
"auto-imports.d.ts",
"global.d.ts"
]
}
EOF