-
-
Notifications
You must be signed in to change notification settings - Fork 168
feat: use @vitejs/plugin-rsc
#1493
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 163 commits
Commits
Show all changes
172 commits
Select commit
Hold shift + click to select a range
7259f61
feat: use Vite RSC API
hi-ogawa 99c0a45
chore: vite-rsc 0.4.6 (#9)
hi-ogawa 80fdab7
feat: deployment adapters (#8)
hi-ogawa d8a1329
chore: lint (#10)
hi-ogawa 4f3f8fd
chore: cleanup types (#12)
hi-ogawa 873d07a
chore: comment
hi-ogawa 1adfac4
fix: fix uncaught error in fs-router on server syntax error
hi-ogawa 68dbd83
fix: windows?
hi-ogawa 3640abd
test: tweak syntax error recovery test
hi-ogawa 0ecda37
chore: cleanup (#13)
hi-ogawa b182318
fix: support private dir
hi-ogawa 1b49819
Merge branch 'main' into chore-vite-rsc
hi-ogawa cf1d521
test: add 1491 repro
hi-ogawa d508229
Merge branch 'main' into chore-vite-rsc
hi-ogawa 019e367
test: tweak
hi-ogawa bc8e6be
test: tweak
hi-ogawa 171c4d5
test: note
hi-ogawa da69d31
test: tweak
hi-ogawa f99e6e3
fix: use pre middleware
hi-ogawa 0612afe
fix: windows
hi-ogawa 0c827a1
fix: avoid double refetch on redirect
hi-ogawa 30546eb
test: full ci (#11)
hi-ogawa dd8f332
ci: cleanup
hi-ogawa 8119dfb
test: cleanup
hi-ogawa bfa10e1
chore(deps): update vite-rsc 0.4.8
hi-ogawa f90eb8a
fix: automatically add import.meta.hot.accept in server entry
hi-ogawa 51ea05c
Merge branch 'main' into chore-vite-rsc
hi-ogawa e6efcf8
Merge branch 'main' into chore-vite-rsc
hi-ogawa ba1bed6
chore: fix merge
hi-ogawa 4eee317
chore: replace @hiogawa/vite-rsc with @vitejs/plugin-rsc (#17)
hi-ogawa 44b652d
chore: limit package.json exports
hi-ogawa 1906694
Revert "chore: limit package.json exports"
hi-ogawa 2d91639
chore(deps): @vitejs/plugin-rsc v0.4.10-alpha.1 (#18)
hi-ogawa d3943d7
Merge branch 'main' into chore-vite-rsc
hi-ogawa 6b21bdc
chore: plugin-rsc v0.4.11
hi-ogawa 726a861
test: revert `describe.serial`
hi-ogawa 9495b01
refactor: internalize `waku/vite-rsc`
hi-ogawa 42677b3
Merge branch 'main' into chore-vite-rsc
hi-ogawa b0d24bc
fix: support custom react plugin
hi-ogawa 7bd7c4c
test: retry
hi-ogawa 24c248c
chore: cleanup
hi-ogawa 38de285
fix: typo map -> some
hi-ogawa 71f1019
fix: add `optimizeDeps.entries`
hi-ogawa 045b447
chore: cleanup diff
hi-ogawa 19052a2
chore: reduce diff
hi-ogawa cee7862
chore: comment
hi-ogawa d9eacde
fix: fix examples/41_path-alias
hi-ogawa 57a5be3
fix: more typo
hi-ogawa ed00a77
fix: add `loadCss` to `examples/42_react-tweet`
hi-ogawa 7e89d49
chore: lint
hi-ogawa 0240254
chore: update vanilla-extract
hi-ogawa 5b98ad1
Merge branch 'main' into chore-vite-rsc
hi-ogawa 8c12aaa
refactor: tweak deploy plugins
hi-ogawa 084c71a
Merge branch 'main' into chore-vite-rsc
hi-ogawa e41b2c0
Merge branch 'main' into chore-vite-rsc
hi-ogawa 5ae18cd
chore: rename like https://github.com/wakujs/waku/pull/1517
hi-ogawa daa21a6
refactor: constants
hi-ogawa 0a86d76
chore: cleanup
hi-ogawa 1d5a63d
test: tweak create-pages.spec.ts
hi-ogawa 1ab734f
fix: use https://github.com/wakujs/waku/pull/1522
hi-ogawa ee8845e
test: tweak
hi-ogawa 707a236
Merge branch 'main' into chore-vite-rsc
hi-ogawa abc0db2
chore: cleanup
hi-ogawa 08d2ad9
chore: update css examples
hi-ogawa 0e6cdcb
Merge branch 'main' into chore-vite-rsc
hi-ogawa e42e33b
test: examples-smoke with vite-rsc
hi-ogawa fcae1f9
chore: lint
hi-ogawa 17536e9
chore: cleanup rsc-html-stream patch
hi-ogawa a1ab97e
Merge branch 'main' into chore-vite-rsc
hi-ogawa a8bda0b
chore: log unknown handleRequest errors
hi-ogawa e350bcd
fix: add website/waku.config.ts
hi-ogawa 97558a8
chore: add e2e-dev/prd scripts
hi-ogawa 62b7259
chore: use captureOwnerStack for error logs
hi-ogawa ecd02d3
test: fix examples/38_cookies private dir
hi-ogawa 92be33b
fix: fix `fsRouter(import.meta.url, ...)`
hi-ogawa 61bf66c
fix: add client-entry to `optimizeDeps.entries`
hi-ogawa bde7781
Merge branch 'main' into chore-vite-rsc
hi-ogawa 270266d
test: fix e2e utils
hi-ogawa 5ce677a
test: cherry-pick https://github.com/wakujs/waku/pull/1536
hi-ogawa f7c007b
Merge branch 'main' into chore-vite-rsc
hi-ogawa ddab312
fix: add ssr retry
hi-ogawa 7cac0bb
chore: lint
hi-ogawa 81ed3f6
test: tweak
hi-ogawa 0b8d50a
chore: enable default and add opt-out flag `--no-vite-rsc`
hi-ogawa 052646e
test: no-vite-rsc -> legacy (TEST_VITE_RSC -> TEST_LEGACY)
hi-ogawa f1c5f77
chore: lint
hi-ogawa f67b64d
chore: --legacy ==> --experimental-legacy-cli
hi-ogawa 6582395
test: tweak playwright
hi-ogawa adc65d1
chore: sort package.json
hi-ogawa fa4df7b
Merge branch 'main' into chore-vite-rsc
hi-ogawa de59461
test: cleanup
hi-ogawa 878e170
fix: avoid rsc reload on syntax error
hi-ogawa ec3fef6
Merge branch 'main' into chore-vite-rsc
hi-ogawa ee57f6a
fix: support 'fallback'
hi-ogawa 6c8cfe4
chore: cleanup test
hi-ogawa 1197f5e
Merge branch 'main' into chore-vite-rsc
hi-ogawa 34eb7f8
refactor: remove ssr retry in favor of wrapper use
hi-ogawa 753bb53
chore: cleanup
hi-ogawa 29935b5
chore: remove help
hi-ogawa 61d41a8
chore: opitonal chain import.meta.viteRsc?.loadCss
hi-ogawa eac65ba
chore: more cleanup
hi-ogawa fc094dd
fix: add "waku" to `frameworkPackages`
hi-ogawa 596547d
fix: use hono server on dev
hi-ogawa f1f0607
fix: allow `waku/middleware/context` to be removable
hi-ogawa d01d3a6
fix: allow `waku/middleware/handler` to be removable
hi-ogawa 95d2c59
chore: lint
hi-ogawa 23484b8
Merge branch 'main' into chore-vite-rsc
hi-ogawa 7c4cbed
chore: revert pkg.pr.new + ignoredPackageWarnings
hi-ogawa ef6e085
chore: comment
hi-ogawa af9461f
chore: react named imports
hi-ogawa 69df00e
Revert "chore: react named imports"
hi-ogawa ce170c7
chore: lint
hi-ogawa c5eb518
chore: comment
hi-ogawa 2f01fcd
refactor: react named import (2nd try)
hi-ogawa ac8e1ff
chore: comment
hi-ogawa 8191f2b
refactor: check waku.config exists beforehand
hi-ogawa 39e4a35
chore: lint
hi-ogawa 3a030f8
Merge branch 'main' into chore-vite-rsc
hi-ogawa 9178b95
fix: support WAKU_PUBLIC
hi-ogawa f7204ff
refactor: move INTERNAL_setAllEnv to deploy entry
hi-ogawa 64d04a3
refactor: move entry.browser.pre.tsx
hi-ogawa f0a287f
refactor: move entry.ssr.tsx
hi-ogawa 5f90424
refactor: move code
hi-ogawa b54d0b9
refactor: move code
hi-ogawa 4562b7d
refactor: move code to lib/rsc/build.ts
hi-ogawa 482b5c6
refactor: move code to lib/rsc/handler
hi-ogawa 90a5282
refactor: move types
hi-ogawa f1cffa5
refactor: move createHonoHandler to lib/rsc/engine.ts
hi-ogawa 3bca211
refactor: move code to lib/rsc.js
hi-ogawa 4d46829
refactor: static import server entry
hi-ogawa 760405b
fix: missing INTERNAL_setAllEnv on vercel
hi-ogawa 961a3ce
Merge branch 'main' into chore-vite-rsc
hi-ogawa a5c0450
Merge branch 'main' into chore-vite-rsc
hi-ogawa 2071f8c
Merge branch 'main' into chore-vite-rsc
hi-ogawa f75859b
Merge remote-tracking branch 'origin/chore-vite-rsc' into chore-vite-rsc
hi-ogawa 3078ef8
Merge branch 'main' into chore-vite-rsc
hi-ogawa 9c76aff
refactor: use https://github.com/vitejs/vite-plugin-react/pull/626 fo…
hi-ogawa 8a1b0a3
Merge remote-tracking branch 'origin/chore-vite-rsc' into chore-vite-rsc
hi-ogawa b91832b
chore(deps): update
hi-ogawa fb3968b
chore(deps): test https://github.com/vitejs/vite-plugin-react/pull/624
hi-ogawa 559bfe8
chore(deps): rsc plugin v0.4.14
hi-ogawa 8c7463c
chore(deps): test https://github.com/vitejs/vite-plugin-react/pull/643
hi-ogawa 765dba9
chore(deps): rsc plugin 0.4.15
hi-ogawa 598ec7b
Merge branch 'main' into chore-vite-rsc
hi-ogawa bfb29f8
fix: align server start log
hi-ogawa 55cc5fb
Merge branch 'main' into chore-vite-rsc
hi-ogawa 51242c8
refactor: comment
hi-ogawa 709a926
refactor: flatten `lib/rsc` directory
hi-ogawa 2b44677
Merge branch 'main' into chore-vite-rsc
hi-ogawa a13ab47
chore: fix lockfile
hi-ogawa 61383e7
fix: re-export
hi-ogawa e8bacbc
refactor: rename waku -> wakuPlugin
hi-ogawa acb832c
refactor: rename entry.rsc -> entry.server
hi-ogawa 16d6839
refactor: rename more
hi-ogawa 5185108
refactor: rename
hi-ogawa 6fa1d40
refactor: rename
hi-ogawa 4d7155b
refactor: object spread
hi-ogawa 268e39f
refactor: one more
hi-ogawa 063ce8e
Merge branch 'main' into chore-vite-rsc
hi-ogawa f52fbce
chore(deps): test https://github.com/vitejs/vite-plugin-react/pull/658
hi-ogawa 9245959
refactor: replace writeBundle with buildApp hook
hi-ogawa d48bbee
chore(deps): rsc plugin v0.4.16
hi-ogawa 0625f25
Merge branch 'main' into chore-vite-rsc
hi-ogawa 8bb7d99
refactor: named imports
hi-ogawa 66b0d5e
chore: comment on `import.meta.viteRsc.loadModule`
hi-ogawa 25a0670
Merge branch 'main' into chore-vite-rsc
hi-ogawa 6eeac09
fix: support index.html
hi-ogawa 15e2299
test: add e2e
hi-ogawa fb56c94
chore: lint
hi-ogawa a882734
chore: cleanup
hi-ogawa c9e6546
Merge branch 'main' into chore-vite-rsc
hi-ogawa db7f3b1
chore: lint
hi-ogawa File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| import { defineConfig } from 'waku/config'; | ||
|
|
||
| export default defineConfig({ | ||
| vite: { | ||
| environments: { | ||
| ssr: { | ||
| optimizeDeps: { | ||
| include: ['swr'], | ||
| }, | ||
| }, | ||
| }, | ||
| }, | ||
| }); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| import { defineConfig } from 'waku/config'; | ||
| import { vanillaExtractPlugin } from '@vanilla-extract/vite-plugin'; | ||
|
|
||
| export default defineConfig({ | ||
| vite: { | ||
| plugins: [vanillaExtractPlugin()], | ||
| }, | ||
| }); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -10,4 +10,7 @@ export default defineConfig({ | |
| ], | ||
| }), | ||
| }, | ||
| vite: { | ||
| plugins: [tsconfigPaths()], | ||
| }, | ||
| }); | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,56 @@ | ||
| import * as vite from 'vite'; | ||
| import { mainPlugin, type MainPluginOptions } from './plugin.js'; | ||
| import type { Config } from '../config.js'; | ||
| import { existsSync } from 'node:fs'; | ||
|
|
||
| export async function cli(cmd: string, flags: Record<string, any>) { | ||
| // set NODE_ENV before runnerImport https://github.com/vitejs/vite/issues/20299 | ||
| process.env.NODE_ENV ??= cmd === 'dev' ? 'development' : 'production'; | ||
|
|
||
| // TODO: reload during dev | ||
| let config: Config | undefined; | ||
| if (existsSync('waku.config.ts') || existsSync('waku.config.js')) { | ||
| const imported = await vite.runnerImport<{ default: Config }>( | ||
| '/waku.config', | ||
| ); | ||
| config = imported.module.default; | ||
| } | ||
|
|
||
| const mainPluginOptions: MainPluginOptions = { | ||
| flags, | ||
| config, | ||
| }; | ||
|
|
||
| if (cmd === 'dev') { | ||
| const server = await vite.createServer({ | ||
| configFile: false, | ||
| plugins: [mainPlugin(mainPluginOptions)], | ||
| server: { | ||
| port: parseInt(flags.port || '3000', 10), | ||
| }, | ||
| }); | ||
| await server.listen(); | ||
| const url = server.resolvedUrls!['local']; | ||
| console.log(`ready: Listening on ${url}`); | ||
| } | ||
|
|
||
| if (cmd === 'build') { | ||
| const builder = await vite.createBuilder({ | ||
| configFile: false, | ||
| plugins: [mainPlugin(mainPluginOptions)], | ||
| }); | ||
| await builder.buildApp(); | ||
| } | ||
|
|
||
| if (cmd === 'start') { | ||
| const server = await vite.preview({ | ||
| configFile: false, | ||
| plugins: [mainPlugin(mainPluginOptions)], | ||
| preview: { | ||
| port: parseInt(flags.port || '8080', 10), | ||
| }, | ||
| }); | ||
| const url = server.resolvedUrls!['local']; | ||
| console.log(`ready: Listening on ${url}`); | ||
| } | ||
| } | ||
dai-shi marked this conversation as resolved.
Show resolved
Hide resolved
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,32 @@ | ||
| import { Hono } from 'hono'; | ||
| import * as honoAwsLambda from 'hono/aws-lambda'; | ||
| import { createHonoHandler } from '../../lib/engine.js'; | ||
| import { honoEnhancer } from 'virtual:vite-rsc-waku/hono-enhancer'; | ||
| import { config } from 'virtual:vite-rsc-waku/config'; | ||
| import { serveStatic } from '@hono/node-server/serve-static'; | ||
| import path from 'node:path'; | ||
| import fs from 'node:fs'; | ||
| import { DIST_PUBLIC } from '../../../lib/builder/constants.js'; | ||
| import { INTERNAL_setAllEnv } from '../../../server.js'; | ||
|
|
||
| function createApp(app: Hono) { | ||
| INTERNAL_setAllEnv(process.env as any); | ||
| app.use(serveStatic({ root: path.join(config.distDir, DIST_PUBLIC) })); | ||
| app.use(createHonoHandler()); | ||
| app.notFound((c) => { | ||
| const file = path.join(config.distDir, DIST_PUBLIC, '404.html'); | ||
| if (fs.existsSync(file)) { | ||
| return c.html(fs.readFileSync(file, 'utf8'), 404); | ||
| } | ||
| return c.text('404 Not Found', 404); | ||
| }); | ||
| return app; | ||
| } | ||
|
|
||
| const app = honoEnhancer(createApp)(new Hono()); | ||
|
|
||
| export const handler: any = import.meta.env.WAKU_AWS_LAMBDA_STREAMING | ||
| ? honoAwsLambda.streamHandle(app) | ||
| : honoAwsLambda.handle(app); | ||
|
|
||
| export { handleBuild } from '../../lib/build.js'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,63 @@ | ||
| import { type Plugin, type ResolvedConfig } from 'vite'; | ||
| import { writeFileSync } from 'node:fs'; | ||
| import path from 'node:path'; | ||
| import type { Config } from '../../../config.js'; | ||
| import { fileURLToPath } from 'node:url'; | ||
|
|
||
| const __dirname = fileURLToPath(new URL('.', import.meta.url)); | ||
| const SERVER_ENTRY = path.join(__dirname, 'entry.js'); | ||
| const SERVE_JS = 'serve-aws-lambda.js'; | ||
|
|
||
| export function deployAwsLambdaPlugin(deployOptions: { | ||
| config: Required<Config>; | ||
| streaming: boolean; | ||
| }): Plugin { | ||
| return { | ||
| name: 'waku:deploy-aws-lambda', | ||
| config() { | ||
| return { | ||
| environments: { | ||
| rsc: { | ||
| build: { | ||
| rollupOptions: { | ||
| input: { | ||
| index: SERVER_ENTRY, | ||
| }, | ||
| }, | ||
| }, | ||
| define: { | ||
| 'import.meta.env.WAKU_AWS_LAMBDA_STREAMING': JSON.stringify( | ||
| deployOptions.streaming, | ||
| ), | ||
| }, | ||
| }, | ||
| }, | ||
| }; | ||
| }, | ||
| buildApp: { | ||
| order: 'post', | ||
| async handler(builder) { | ||
| await build({ | ||
| config: builder.config, | ||
| opts: deployOptions.config, | ||
| }); | ||
| }, | ||
| }, | ||
| }; | ||
| } | ||
|
|
||
| async function build({ | ||
| opts, | ||
| }: { | ||
| config: ResolvedConfig; | ||
| opts: Required<Config>; | ||
| }) { | ||
| writeFileSync( | ||
| path.join(opts.distDir, SERVE_JS), | ||
| `export { handler } from './rsc/index.js';\n`, | ||
| ); | ||
| writeFileSync( | ||
| path.join(opts.distDir, 'package.json'), | ||
| JSON.stringify({ type: 'module' }, null, 2), | ||
| ); | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,38 @@ | ||
| import { Hono } from 'hono'; | ||
| import { createHonoHandler } from '../../lib/engine.js'; | ||
| import { honoEnhancer } from 'virtual:vite-rsc-waku/hono-enhancer'; | ||
| import { INTERNAL_setAllEnv } from '../../../server.js'; | ||
|
|
||
| function createApp(app: Hono) { | ||
| app.use(createHonoHandler()); | ||
| app.notFound(async (c) => { | ||
| const assetsFetcher = (c.env as any).ASSETS; | ||
| const url = new URL(c.req.raw.url); | ||
| const errorHtmlUrl = url.origin + '/404.html'; | ||
| const notFoundStaticAssetResponse = await assetsFetcher.fetch( | ||
| new URL(errorHtmlUrl), | ||
| ); | ||
| if ( | ||
| notFoundStaticAssetResponse && | ||
| notFoundStaticAssetResponse.status < 400 | ||
| ) { | ||
| return c.body(notFoundStaticAssetResponse.body, 404); | ||
| } | ||
| return c.text('404 Not Found', 404); | ||
| }); | ||
| return app; | ||
| } | ||
|
|
||
| let app: Hono | undefined; | ||
|
|
||
| export default { | ||
| fetch: (request: Request, env: any, ctx: any) => { | ||
| if (!app) { | ||
| INTERNAL_setAllEnv(env); | ||
| app = honoEnhancer(createApp)(new Hono()); | ||
| } | ||
| return app.fetch(request, env, ctx); | ||
| }, | ||
| }; | ||
|
|
||
| export { handleBuild } from '../../lib/build.js'; |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.