premiere distribution de la page web
This commit is contained in:
60
client/node_modules/@emnapi/core/rollup.config.js
generated
vendored
Normal file
60
client/node_modules/@emnapi/core/rollup.config.js
generated
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
import { defineConfig } from '@emnapi/shared'
|
||||
import pkg from './package.json' with { type: 'json' }
|
||||
import { join, dirname } from 'path'
|
||||
import fs from 'fs'
|
||||
|
||||
const plugins = [
|
||||
['v8', 'v8', 'emnapiCorePluginsV8'],
|
||||
['asyncWork', 'async-work', 'emnapiCorePluginsAsyncWork'],
|
||||
['tsfn', 'threadsafe-function', 'emnapiCorePluginsThreadSafeFunction']
|
||||
]
|
||||
|
||||
export default [
|
||||
...defineConfig({
|
||||
outputName: 'emnapiCore',
|
||||
outputFile: 'emnapi-core',
|
||||
defines: {
|
||||
__VERSION__: JSON.stringify(pkg.version)
|
||||
},
|
||||
external: ['@emnapi/wasi-threads'],
|
||||
plugins: [
|
||||
{
|
||||
name: 'rollup-plugin-create-plugin-entry',
|
||||
writeBundle (outputOptions) {
|
||||
const distDir = dirname(outputOptions.file)
|
||||
fs.mkdirSync(join(distDir, 'plugins'), { recursive: true })
|
||||
const entryFile = join(distDir, 'plugins', 'index.js')
|
||||
const dtsEntryFile = join(distDir, 'plugins', 'index.d.ts')
|
||||
let content = ''
|
||||
for (const [name, file] of plugins) {
|
||||
content += `export { default as ${name} } from './${file}.js'\n`
|
||||
}
|
||||
let dtsContent = "export { PluginFactory, PluginContext, EmnapiPlugin } from '../emnapi-core'\n"
|
||||
for (const [name, file] of plugins) {
|
||||
dtsContent += `export { default as ${name} } from './${file}'\n`
|
||||
}
|
||||
fs.writeFileSync(entryFile, content, 'utf8')
|
||||
fs.writeFileSync(dtsEntryFile, dtsContent, 'utf8')
|
||||
}
|
||||
}
|
||||
]
|
||||
}),
|
||||
...defineConfig({
|
||||
outputFile: 'emnapi-core.full',
|
||||
defines: {
|
||||
__VERSION__: JSON.stringify(pkg.version)
|
||||
},
|
||||
}),
|
||||
...plugins.flatMap(([_, name, outputName]) => defineConfig({
|
||||
outputName,
|
||||
outputFile: `plugins/${name}`,
|
||||
dtsEntry: `dist/types/emnapi/${name}.d.ts`,
|
||||
staticDtsContent: (code) => code.replace(/\.\/index/g, '../emnapi-core'),
|
||||
input: join(import.meta.dirname, `src/emnapi/${name}.js`),
|
||||
compilerOptions: {
|
||||
declaration: false,
|
||||
declarationMap: false,
|
||||
declarationDir: undefined
|
||||
}
|
||||
}))
|
||||
]
|
||||
Reference in New Issue
Block a user