|
1 |
| -import { HyperwebBuild, HyperwebBuildOptions } from '@hyperweb/build'; |
2 |
| -import { join } from 'path'; |
| 1 | +import { HyperwebBuild, HyperwebBuildOptions } from "@hyperweb/build"; |
| 2 | +import { join } from "path"; |
3 | 3 |
|
4 |
| -interface BuildConfig { |
5 |
| - entryFile: string; |
6 |
| - outFile: string; |
7 |
| - externalPackages: string[]; |
8 |
| -} |
9 |
| - |
10 |
| -const configs: BuildConfig[] = [ |
11 |
| - { |
12 |
| - entryFile: 'src/simple-state/index.ts', |
13 |
| - outFile: 'dist/contracts/simpleState.js', |
14 |
| - externalPackages: ['otherpackage', '~somepackage'] |
15 |
| - } |
16 |
| -]; |
| 4 | +import { configs, type BuildConfig } from "./configs"; |
17 | 5 |
|
18 |
| -const rootDir = join(__dirname, '/../'); |
| 6 | +const rootDir = join(__dirname, "/../"); |
19 | 7 |
|
20 | 8 | async function buildInterweb(config: BuildConfig): Promise<void> {
|
21 | 9 | const { entryFile, outFile, externalPackages } = config;
|
22 | 10 |
|
23 | 11 | const options: Partial<HyperwebBuildOptions> = {
|
24 | 12 | entryPoints: [join(rootDir, entryFile)],
|
25 | 13 | outfile: join(rootDir, outFile),
|
26 |
| - external: externalPackages |
| 14 | + external: externalPackages, |
27 | 15 | };
|
28 | 16 |
|
29 | 17 | try {
|
30 | 18 | await HyperwebBuild.build(options);
|
31 | 19 | console.log(`Build completed successfully! Output: ${options.outfile}`);
|
32 | 20 | } catch (error) {
|
33 |
| - console.error('Build failed:', error); |
| 21 | + console.error("Build failed:", error); |
34 | 22 | throw error;
|
35 | 23 | }
|
36 | 24 | }
|
|
0 commit comments