1
0
mirror of https://github.com/troisjs/trois.git synced 2024-11-24 04:12:02 +08:00

test rollup-plugin-dts

This commit is contained in:
Kevin Levron 2021-04-27 20:07:12 +02:00
parent 3131469fc2
commit 6a0e20d297
3 changed files with 50 additions and 36 deletions

View File

@ -3,6 +3,7 @@
"version": "0.2.3",
"scripts": {
"dev": "vite",
"types": "tsc",
"build": "vue-tsc --noEmit && vite build",
"rollup": "rollup -c"
},
@ -25,6 +26,7 @@
"eslint-plugin-standard": "^4.0.1",
"eslint-plugin-vue": "^7.9.0",
"gsap": "^3.5.1",
"rollup-plugin-dts": "^3.0.1",
"rollup-plugin-esbuild": "^4.1.0",
"stats.js": "0.17.0",
"three": "^0.127",
@ -37,7 +39,7 @@
},
"main": "build/trois.js",
"module": "build/trois.module.js",
"typings": "build/trois.d.ts",
"types": "build/trois.d.ts",
"repository": {
"type": "git",
"url": "git+https://github.com/troisjs/trois.git"

View File

@ -1,6 +1,8 @@
// import vue from 'rollup-plugin-vue'
import esbuild from 'rollup-plugin-esbuild'
import replace from '@rollup/plugin-replace'
// import esbuild from 'rollup-plugin-esbuild'
// import replace from '@rollup/plugin-replace'
import dts from "rollup-plugin-dts"
// import { nodeResolve } from '@rollup/plugin-node-resolve'
const input = 'src/export.ts'
@ -28,41 +30,50 @@ const external = [
'vue',
]
const cdnReplaces = {
'from \'vue\'': 'from \'https://unpkg.com/vue@3.0.11/dist/vue.esm-browser.prod.js\'',
'from \'three\'': 'from \'https://unpkg.com/three@0.127.0/build/three.module.js\'',
'from \'three/examples': 'from \'https://unpkg.com/three@0.127.0/examples',
delimiters: ['', ''],
}
// const cdnReplaces = {
// 'from \'vue\'': 'from \'https://unpkg.com/vue@3.0.11/dist/vue.esm-browser.prod.js\'',
// 'from \'three\'': 'from \'https://unpkg.com/three@0.127.0/build/three.module.js\'',
// 'from \'three/examples': 'from \'https://unpkg.com/three@0.127.0/examples',
// delimiters: ['', ''],
// }
function createConfig(format, output, plugins = [], minify = false) {
const tsPlugin = esbuild({
sourceMap: true,
minify,
target: 'es2019',
})
// function createConfig(format, output, plugins = [], minify = false) {
// const tsPlugin = esbuild({
// sourceMap: true,
// minify,
// target: 'es2019',
// })
return {
input,
external,
output: {
format,
...output,
// exports: 'named',
sourcemap: true,
},
plugins: [
// vue(),
tsPlugin,
...plugins,
],
}
}
// return {
// input,
// external,
// output: {
// format,
// ...output,
// // exports: 'named',
// sourcemap: true,
// },
// plugins: [
// // vue(),
// tsPlugin,
// ...plugins,
// ],
// }
// }
export default [
createConfig('es', { file: 'build/trois.module.cdn.js' }, [replace(cdnReplaces)]),
createConfig('es', { file: 'build/trois.module.cdn.min.js' }, [replace(cdnReplaces)], true),
createConfig('es', { file: 'build/trois.module.js' }),
createConfig('es', { file: 'build/trois.module.min.js' }, [], true),
createConfig('cjs', { file: 'build/trois.js' }),
// createConfig('es', { file: 'build/trois.module.cdn.js' }, [replace(cdnReplaces)]),
// createConfig('es', { file: 'build/trois.module.cdn.min.js' }, [replace(cdnReplaces)], true),
// createConfig('es', { file: 'build/trois.module.js' }),
// createConfig('es', { file: 'build/trois.module.min.js' }, [], true),
// createConfig('cjs', { file: 'build/trois.js' }),
{
input: 'types/export.d.ts',
external,
output: {
format: 'es',
file: 'build/trois.d.ts',
plugins: [dts()],
},
},
]

View File

@ -16,6 +16,7 @@
"outDir": "types",
},
"include": ["src/**/*.ts", "src/**/*.vue"],
"exclude": ["src/components/**/*.ts"],
// "include": ["src/export.ts"],
// "exclude": ["src/App.vue", "src/main.ts"],
}