feat:add lib mode build script
This commit is contained in:
+3
-1
@@ -2,10 +2,12 @@
|
|||||||
"version": "0.5.0",
|
"version": "0.5.0",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
"build": "tsc && vite build",
|
"lib": "tsc && vite build --mode lib",
|
||||||
|
"build": "tsc && vite build --mode app",
|
||||||
"serve": "vite preview"
|
"serve": "vite preview"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@types/node": "^16.11.12",
|
||||||
"typescript": "^4.3.2",
|
"typescript": "^4.3.2",
|
||||||
"vite": "^2.4.2"
|
"vite": "^2.4.2"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
export function debounce(func: Function, delay: number) {
|
export function debounce(func: Function, delay: number) {
|
||||||
let timer: number
|
let timer: number
|
||||||
return function (...args: any) {
|
return function (...args: any) {
|
||||||
if (timer) clearTimeout(timer)
|
if (timer) {
|
||||||
timer = setTimeout(() => {
|
window.clearTimeout(timer)
|
||||||
|
}
|
||||||
|
timer = window.setTimeout(() => {
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
func.apply(this, args)
|
func.apply(this, args)
|
||||||
}, delay)
|
}, delay)
|
||||||
|
|||||||
+22
-3
@@ -1,5 +1,24 @@
|
|||||||
import { defineConfig } from 'vite'
|
import { defineConfig, UserConfig } from 'vite'
|
||||||
|
import * as path from 'path'
|
||||||
|
|
||||||
export default defineConfig({
|
export default defineConfig(({ mode }) => {
|
||||||
base: '/canvas-editor/'
|
const name = 'canvas-editor'
|
||||||
|
const defaultOptions: UserConfig = {
|
||||||
|
base: `/${name}/`
|
||||||
|
}
|
||||||
|
if (mode === 'lib') {
|
||||||
|
return {
|
||||||
|
...defaultOptions,
|
||||||
|
build: {
|
||||||
|
lib: {
|
||||||
|
name,
|
||||||
|
fileName: (format) => `${name}.${format}.js`,
|
||||||
|
entry: path.resolve(__dirname, 'src/editor/index.ts')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
...defaultOptions
|
||||||
|
}
|
||||||
})
|
})
|
||||||
@@ -2,6 +2,11 @@
|
|||||||
# yarn lockfile v1
|
# yarn lockfile v1
|
||||||
|
|
||||||
|
|
||||||
|
"@types/node@^16.11.12":
|
||||||
|
version "16.11.12"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.12.tgz#ac7fb693ac587ee182c3780c26eb65546a1a3c10"
|
||||||
|
integrity sha512-+2Iggwg7PxoO5Kyhvsq9VarmPbIelXP070HMImEpbtGCoyWNINQj4wzjbQCXzdHTRXnqufutJb5KAURZANNBAw==
|
||||||
|
|
||||||
esbuild-android-arm64@0.13.13:
|
esbuild-android-arm64@0.13.13:
|
||||||
version "0.13.13"
|
version "0.13.13"
|
||||||
resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.13.13.tgz#da07b5fb2daf7d83dcd725f7cf58a6758e6e702a"
|
resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.13.13.tgz#da07b5fb2daf7d83dcd725f7cf58a6758e6e702a"
|
||||||
|
|||||||
Reference in New Issue
Block a user