11/* eslint-disable unicorn/prefer-top-level-await */
2- import { writeFile , readFile } from 'node:fs/promises'
2+ import {
3+ writeFile ,
4+ readFile ,
5+ copyFile ,
6+ } from 'node:fs/promises'
37import { fileURLToPath } from 'node:url'
48import { dirname , resolve } from 'node:path'
59import { EOL } from 'node:os'
610
711const _filename = fileURLToPath ( import . meta. url )
812const _dirname = dirname ( _filename )
913
10- async function applyVersion ( ) {
14+ async function createMeta ( ) {
1115 const pkgJSON = JSON . parse ( await readFile ( resolve ( _dirname , '../package.json' ) ) )
12- const fileJS = resolve ( _dirname , '../dist/gs.js' )
13- const origin = await readFile ( fileJS )
16+ const meta = {
17+ name : pkgJSON . name ,
18+ version : pkgJSON . version ,
19+ gsVersion : pkgJSON . gsVersion ,
20+ }
1421
15- await writeFile ( fileJS , origin . toString ( ) . replace ( '__VERSION__' , pkgJSON . version ) )
22+ await writeFile ( resolve ( _dirname , '../dist/meta.cjs' ) , `module.export = ${ JSON . stringify ( meta ) } ${ EOL } ` )
23+
24+ await writeFile ( resolve ( _dirname , '../dist/meta.mjs' ) , `export default ${ JSON . stringify ( meta ) } ${ EOL } ` )
25+
26+ await copyFile ( resolve ( _dirname , './meta.d.ts' ) , resolve ( _dirname , '../dist/meta.d.ts' ) )
1627}
1728
1829async function createDTS ( ) {
@@ -23,7 +34,7 @@ async function createDTS () {
2334}
2435
2536async function main ( ) {
26- await applyVersion ( )
37+ await createMeta ( )
2738 await createDTS ( )
2839}
2940
0 commit comments