Skip to content

Commit e1713b4

Browse files
authored
docs: add missing types in env API docs (#1750)
* docs: add missing types in env API docs * 依存パッケージ追加
1 parent 700ee83 commit e1713b4

File tree

4 files changed

+63
-9
lines changed

4 files changed

+63
-9
lines changed

guide/api-environment-instances.md

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,25 +64,43 @@ class DevEnvironment {
6464
*/
6565
config: ResolvedConfig & ResolvedDevEnvironmentOptions
6666

67-
constructor(name, config, { hot, options }: DevEnvironmentSetup)
67+
constructor(
68+
name: string,
69+
config: ResolvedConfig,
70+
context: DevEnvironmentContext,
71+
)
6872

6973
/**
7074
* URL を id に解決してロードし、プラグインパイプラインを使ってコードを処理する。
7175
* モジュールグラフも更新されます。
7276
*/
73-
async transformRequest(url: string): TransformResult
77+
async transformRequest(url: string): Promise<TransformResult | null>
7478

7579
/**
7680
* 低い優先度で処理されるリクエストを登録します。ウォーターフォールを回避するのに
7781
* 役立ちます。Vite サーバーは他のリクエストによってインポートされたモジュールに関する
7882
* 情報を持っているため、モジュールがリクエストされたときにすでに処理されているよう、
7983
* モジュールグラフをウォームアップできます。
8084
*/
81-
async warmupRequest(url: string): void
85+
async warmupRequest(url: string): Promise<void>
8286
}
8387
```
8488

85-
`TransformResult` は次のようになります:
89+
`DevEnvironmentContext` は次のようになります:
90+
91+
```ts
92+
interface DevEnvironmentContext {
93+
hot: boolean
94+
transport?: HotChannel | WebSocketServer
95+
options?: EnvironmentOptions
96+
remoteRunner?: {
97+
inlineSourceMap?: boolean
98+
}
99+
depsOptimizer?: DepsOptimizer
100+
}
101+
```
102+
103+
そして `TransformResult` は:
86104

87105
```ts
88106
interface TransformResult {
@@ -156,10 +174,14 @@ export class EnvironmentModuleGraph {
156174
rawUrl: string,
157175
): Promise<EnvironmentModuleNode | undefined>
158176

177+
getModuleById(id: string): EnvironmentModuleNode | undefined
178+
159179
getModulesByFile(file: string): Set<EnvironmentModuleNode> | undefined
160180

161181
onFileChange(file: string): void
162182

183+
onFileDelete(file: string): void
184+
163185
invalidateModule(
164186
mod: EnvironmentModuleNode,
165187
seen: Set<EnvironmentModuleNode> = new Set(),

guide/api-environment-runtimes.md

Lines changed: 28 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ function createWorkerdDevEnvironment(
118118
export class ModuleRunner {
119119
constructor(
120120
public options: ModuleRunnerOptions,
121-
public evaluator: ModuleEvaluator,
121+
public evaluator: ModuleEvaluator = new ESModulesEvaluator(),
122122
private debug?: ModuleRunnerDebugger,
123123
) {}
124124
/**
@@ -165,8 +165,21 @@ await moduleRunner.import('/src/entry-point.js')
165165

166166
## `ModuleRunnerOptions`
167167

168-
```ts
169-
export interface ModuleRunnerOptions {
168+
```ts twoslash
169+
import type {
170+
InterceptorOptions as InterceptorOptionsRaw,
171+
ModuleRunnerHmr as ModuleRunnerHmrRaw,
172+
EvaluatedModules,
173+
} from 'vite/module-runner'
174+
import type { Debug } from '@type-challenges/utils'
175+
176+
type InterceptorOptions = Debug<InterceptorOptionsRaw>
177+
type ModuleRunnerHmr = Debug<ModuleRunnerHmrRaw>
178+
/** 下記参照 */
179+
type ModuleRunnerTransport = unknown
180+
181+
// ---cut---
182+
interface ModuleRunnerOptions {
170183
/**
171184
* プロジェクトのルート
172185
*/
@@ -206,7 +219,13 @@ export interface ModuleRunnerOptions {
206219

207220
**型シグネチャー:**
208221

209-
```ts
222+
```ts twoslash
223+
import type { ModuleRunnerContext as ModuleRunnerContextRaw } from 'vite/module-runner'
224+
import type { Debug } from '@type-challenges/utils'
225+
226+
type ModuleRunnerContext = Debug<ModuleRunnerContextRaw>
227+
228+
// ---cut---
210229
export interface ModuleEvaluator {
211230
/**
212231
* 変換後のコードに含まれるプレフィックスの行数。
@@ -237,7 +256,11 @@ Vite はデフォルトでこのインターフェイスを実装した `ESModul
237256

238257
**型シグネチャー:**
239258

240-
```ts
259+
```ts twoslash
260+
import type { ModuleRunnerTransportHandlers } from 'vite/module-runner'
261+
/** オブジェクト */
262+
type HotPayload = unknown
263+
// ---cut---
241264
interface ModuleRunnerTransport {
242265
connect?(handlers: ModuleRunnerTransportHandlers): Promise<void> | void
243266
disconnect?(): Promise<void> | void

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
},
1111
"devDependencies": {
1212
"@shikijs/vitepress-twoslash": "^1.23.1",
13+
"@type-challenges/utils": "^0.1.1",
1314
"@types/express": "^4.17.21",
1415
"@types/node": "^20.17.1",
1516
"feed": "^4.2.2",

pnpm-lock.yaml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)