|
| 1 | +import fs from 'node:fs' |
| 2 | +import { fileURLToPath } from 'node:url' |
| 3 | +import { join, relative } from 'pathe' |
| 4 | + |
| 5 | +const root = fileURLToPath(new URL('.', import.meta.url)) |
| 6 | +const r = (path: string) => fileURLToPath(new URL(`./packages/${path}`, import.meta.url)) |
| 7 | + |
| 8 | +export const alias = { |
| 9 | + 'devframe/rpc/transports/ws-server': r('devframe/src/rpc/transports/ws-server.ts'), |
| 10 | + 'devframe/rpc/transports/ws-client': r('devframe/src/rpc/transports/ws-client.ts'), |
| 11 | + 'devframe/rpc/client': r('devframe/src/rpc/client.ts'), |
| 12 | + 'devframe/rpc/server': r('devframe/src/rpc/server.ts'), |
| 13 | + 'devframe/rpc': r('devframe/src/rpc'), |
| 14 | + 'devframe/types': r('devframe/src/types/index.ts'), |
| 15 | + 'devframe/node/auth': r('devframe/src/node/auth/index.ts'), |
| 16 | + 'devframe/node/internal': r('devframe/src/node/internal/index.ts'), |
| 17 | + 'devframe/node': r('devframe/src/node/index.ts'), |
| 18 | + 'devframe/constants': r('devframe/src/constants.ts'), |
| 19 | + 'devframe/utils/colors': r('devframe/src/utils/colors.ts'), |
| 20 | + 'devframe/utils/events': r('devframe/src/utils/events.ts'), |
| 21 | + 'devframe/utils/hash': r('devframe/src/utils/hash.ts'), |
| 22 | + 'devframe/utils/human-id': r('devframe/src/utils/human-id.ts'), |
| 23 | + 'devframe/utils/launch-editor': r('devframe/src/utils/launch-editor.ts'), |
| 24 | + 'devframe/utils/nanoid': r('devframe/src/utils/nanoid.ts'), |
| 25 | + 'devframe/utils/open': r('devframe/src/utils/open.ts'), |
| 26 | + 'devframe/utils/promise': r('devframe/src/utils/promise.ts'), |
| 27 | + 'devframe/utils/serve-static': r('devframe/src/utils/serve-static.ts'), |
| 28 | + 'devframe/utils/shared-state': r('devframe/src/utils/shared-state.ts'), |
| 29 | + 'devframe/utils/streaming-channel': r('devframe/src/utils/streaming-channel.ts'), |
| 30 | + 'devframe/utils/structured-clone': r('devframe/src/utils/structured-clone.ts'), |
| 31 | + 'devframe/utils/when': r('devframe/src/utils/when.ts'), |
| 32 | + 'devframe/adapters/cli': r('devframe/src/adapters/cli.ts'), |
| 33 | + 'devframe/adapters/dev': r('devframe/src/adapters/dev.ts'), |
| 34 | + 'devframe/adapters/build': r('devframe/src/adapters/build.ts'), |
| 35 | + 'devframe/adapters/vite': r('devframe/src/adapters/vite.ts'), |
| 36 | + 'devframe/adapters/embedded': r('devframe/src/adapters/embedded.ts'), |
| 37 | + 'devframe/adapters/mcp': r('devframe/src/adapters/mcp.ts'), |
| 38 | + '@devframes/nuxt/runtime/plugin.client': r('nuxt/src/runtime/plugin.client.ts'), |
| 39 | + '@devframes/nuxt': r('nuxt/src/index.ts'), |
| 40 | + 'devframe/recipes/open-helpers': r('devframe/src/recipes/open-helpers.ts'), |
| 41 | + 'devframe/client': r('devframe/src/client/index.ts'), |
| 42 | + 'devframe': r('devframe/src'), |
| 43 | +} |
| 44 | + |
| 45 | +// update tsconfig.base.json |
| 46 | +const raw = fs.readFileSync(join(root, 'tsconfig.base.json'), 'utf-8').trim() |
| 47 | +const tsconfig = JSON.parse(raw) |
| 48 | +tsconfig.compilerOptions.paths = Object.fromEntries( |
| 49 | + Object.entries(alias).map(([key, value]) => [key, [`./${relative(root, value)}`]]), |
| 50 | +) |
| 51 | +const newRaw = JSON.stringify(tsconfig, null, 2) |
| 52 | +if (newRaw !== raw) |
| 53 | + fs.writeFileSync(join(root, 'tsconfig.base.json'), `${newRaw}\n`, 'utf-8') |
0 commit comments