[TS] Add typescript dependency to typescript templates (#4409)

# Description of Changes

`spacetime build` now attempts to run tsc for typescript modules, and
will emit a warning if it's not present. This PR makes it so our CLI
stops emitting a warning for our templates.

# Expected complexity level and risk

1

# Testing

- [x] Verified that typescript gets properly installed.
This commit is contained in:
Noa
2026-02-23 16:40:41 -06:00
committed by GitHub
parent 88407f0958
commit bb08c8b571
19 changed files with 120 additions and 10 deletions
+1 -1
View File
@@ -17,7 +17,7 @@ export default spacetimedb;
export const my_player = spacetimedb.view(
{ public: true },
t.option(playerState.rowType),
ctx => ctx.db.playerState.identity.find(ctx.sender)
ctx => ctx.db.playerState.identity.find(ctx.sender) ?? undefined
);
export const all_players = spacetimedb.anonymousView(
+74 -6
View File
@@ -192,7 +192,7 @@ importers:
version: 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-docs':
specifier: 3.9.2
version: 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
version: 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/preset-classic':
specifier: 3.9.2
version: 3.9.2(@algolia/client-search@5.46.2)(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.6.3)
@@ -436,6 +436,10 @@ importers:
spacetimedb:
specifier: workspace:^
version: link:../../../crates/bindings-typescript
devDependencies:
typescript:
specifier: ^5.9.3
version: 5.9.3
templates/nuxt-ts:
dependencies:
@@ -16656,7 +16660,7 @@ snapshots:
'@docusaurus/core': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/logger': 3.9.2
'@docusaurus/mdx-loader': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/theme-common': 3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/types': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/utils': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -16693,6 +16697,46 @@ snapshots:
- webpack-cli
'@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)':
dependencies:
'@docusaurus/core': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/logger': 3.9.2
'@docusaurus/mdx-loader': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/module-type-aliases': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/theme-common': 3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/types': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/utils': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/utils-common': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/utils-validation': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@types/react-router-config': 5.0.11
combine-promises: 1.2.0
fs-extra: 11.3.2
js-yaml: 4.1.0
lodash: 4.17.21
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
schema-dts: 1.1.5
tslib: 2.8.1
utility-types: 3.11.0
webpack: 5.102.0
transitivePeerDependencies:
- '@docusaurus/faster'
- '@mdx-js/react'
- '@parcel/css'
- '@rspack/core'
- '@swc/core'
- '@swc/css'
- bufferutil
- csso
- debug
- esbuild
- lightningcss
- supports-color
- typescript
- uglify-js
- utf-8-validate
- webpack-cli
'@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)':
dependencies:
'@docusaurus/core': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/logger': 3.9.2
@@ -16961,7 +17005,7 @@ snapshots:
dependencies:
'@docusaurus/core': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-blog': 3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-pages': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-css-cascade-layers': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-debug': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
@@ -17009,7 +17053,7 @@ snapshots:
'@docusaurus/mdx-loader': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/module-type-aliases': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/plugin-content-blog': 3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-pages': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/theme-common': 3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/theme-translations': 3.9.2
@@ -17049,7 +17093,7 @@ snapshots:
- utf-8-validate
- webpack-cli
'@docusaurus/theme-common@3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
'@docusaurus/theme-common@3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@docusaurus/mdx-loader': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/module-type-aliases': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -17073,12 +17117,36 @@ snapshots:
- uglify-js
- webpack-cli
'@docusaurus/theme-common@3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@docusaurus/mdx-loader': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/module-type-aliases': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/utils': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/utils-common': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@types/history': 4.7.11
'@types/react': 18.3.23
'@types/react-router-config': 5.0.11
clsx: 2.1.1
parse-numeric-range: 1.3.0
prism-react-renderer: 2.4.1(react@18.3.1)
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
tslib: 2.8.1
utility-types: 3.11.0
transitivePeerDependencies:
- '@swc/core'
- esbuild
- supports-color
- uglify-js
- webpack-cli
'@docusaurus/theme-search-algolia@3.9.2(@algolia/client-search@5.46.2)(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.6.3)':
dependencies:
'@docsearch/react': 4.2.0(@algolia/client-search@5.46.2)(@types/react@18.3.23)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)
'@docusaurus/core': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/logger': 3.9.2
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(debug@4.4.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/plugin-content-docs': 3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@docusaurus/theme-common': 3.9.2(@docusaurus/plugin-content-docs@3.9.2(@mdx-js/react@3.1.1(@types/react@18.3.23)(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/theme-translations': 3.9.2
'@docusaurus/utils': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -9,5 +9,8 @@
},
"dependencies": {
"spacetimedb": "workspace:^"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,7 +11,7 @@
"forceConsistentCasingInFileNames": true,
"allowImportingTsExtensions": true,
"noImplicitAny": true,
"moduleResolution": "Bundler",
"moduleResolution": "bundler",
"isolatedDeclarations": false,
// This library is ESM-only, do not import commonjs modules
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -2,7 +2,7 @@
"compilerOptions": {
"target": "ES2020",
"module": "ESNext",
"moduleResolution": "node",
"moduleResolution": "bundler",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
+1 -1
View File
@@ -2,7 +2,7 @@
"compilerOptions": {
"target": "ES2020",
"module": "ESNext",
"moduleResolution": "node",
"moduleResolution": "bundler",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}
@@ -11,5 +11,8 @@
"license": "ISC",
"dependencies": {
"spacetimedb": "workspace:*"
},
"devDependencies": {
"typescript": "^5.9.3"
}
}