build(runtime): update runtime playgroud (#1669)
This commit is contained in:
parent
90deb78ed6
commit
de7adb69e5
|
@ -37,14 +37,15 @@ const fileDelimiter = cdnHost.includes('npmmirror') ? 'files/' : ''
|
||||||
|
|
||||||
const getRuntime = (version) => {
|
const getRuntime = (version) => {
|
||||||
const useVersion = import.meta.env.VITE_PLAYGROUND_VERIOSN || version
|
const useVersion = import.meta.env.VITE_PLAYGROUND_VERIOSN || version
|
||||||
return `${cdnHost}/@opentiny/vue${versionDelimiter}${useVersion}/${fileDelimiter}runtime/`
|
return `${cdnHost}/@opentiny/vue-runtime${versionDelimiter}${useVersion}/${fileDelimiter}dist3/`
|
||||||
}
|
}
|
||||||
|
|
||||||
const createImportMap = (version) => {
|
const createImportMap = (version) => {
|
||||||
const imports = {
|
const imports = {
|
||||||
'vue': `${cdnHost}/vue${versionDelimiter}3.4.27/${fileDelimiter}dist/vue.runtime.esm-browser.js`,
|
'vue': `${cdnHost}/vue${versionDelimiter}3.4.27/${fileDelimiter}dist/vue.runtime.esm-browser.js`,
|
||||||
|
'echarts': `${cdnHost}/echarts${versionDelimiter}5.4.1/${fileDelimiter}dist/echarts.esm.js`,
|
||||||
'@vue/compiler-sfc': `${cdnHost}/@vue/compiler-sfc${versionDelimiter}3.4.27/${fileDelimiter}dist/compiler-sfc.esm-browser.js`,
|
'@vue/compiler-sfc': `${cdnHost}/@vue/compiler-sfc${versionDelimiter}3.4.27/${fileDelimiter}dist/compiler-sfc.esm-browser.js`,
|
||||||
'@opentiny/vue': `${getRuntime(version)}tiny-vue.mjs`,
|
'@opentiny/vue': `${getRuntime(version)}tiny-vue-pc.mjs`,
|
||||||
'@opentiny/vue-icon': `${getRuntime(version)}tiny-vue-icon.mjs`,
|
'@opentiny/vue-icon': `${getRuntime(version)}tiny-vue-icon.mjs`,
|
||||||
'@opentiny/vue-locale': `${getRuntime(version)}tiny-vue-locale.mjs`,
|
'@opentiny/vue-locale': `${getRuntime(version)}tiny-vue-locale.mjs`,
|
||||||
'@opentiny/vue-common': `${getRuntime(version)}tiny-vue-common.mjs`,
|
'@opentiny/vue-common': `${getRuntime(version)}tiny-vue-common.mjs`,
|
||||||
|
|
|
@ -46,6 +46,10 @@ async function batchBuildAll({ vueVersion, tasks, message, emptyOutDir, npmScope
|
||||||
if (tasks.length === 0) return
|
if (tasks.length === 0) return
|
||||||
logGreen(`====== 开始构建 ${message} ======`)
|
logGreen(`====== 开始构建 ${message} ======`)
|
||||||
|
|
||||||
|
const { mode } = tasks[0]
|
||||||
|
|
||||||
|
const modeList = ['pc', 'mobile', 'mobile-first']
|
||||||
|
|
||||||
const entry = toEntry(tasks)
|
const entry = toEntry(tasks)
|
||||||
const baseConfig = getBaseConfig({
|
const baseConfig = getBaseConfig({
|
||||||
vueVersion,
|
vueVersion,
|
||||||
|
@ -69,7 +73,7 @@ async function batchBuildAll({ vueVersion, tasks, message, emptyOutDir, npmScope
|
||||||
requireReturnsDefault: true,
|
requireReturnsDefault: true,
|
||||||
defaultIsModuleExports: true,
|
defaultIsModuleExports: true,
|
||||||
// echarts模块本身是esmodules格式不需要经过commonjs转换
|
// echarts模块本身是esmodules格式不需要经过commonjs转换
|
||||||
exclude: ['node_modules/echarts/**', 'node_modules/echarts']
|
exclude: ['node_modules/echarts/**', 'node_modules/echarts', 'node_modules/crypto-js/**']
|
||||||
}),
|
}),
|
||||||
babel({
|
babel({
|
||||||
extensions: ['.js', '.jsx', '.mjs', '.ts', '.tsx'],
|
extensions: ['.js', '.jsx', '.mjs', '.ts', '.tsx'],
|
||||||
|
@ -85,9 +89,14 @@ async function batchBuildAll({ vueVersion, tasks, message, emptyOutDir, npmScope
|
||||||
name: 'vite-plugin-transfer-mode',
|
name: 'vite-plugin-transfer-mode',
|
||||||
enforce: 'pre',
|
enforce: 'pre',
|
||||||
transform(code, id) {
|
transform(code, id) {
|
||||||
if (tasks[0].path.includes('simple') && id.includes('src/index.ts') && code.includes('pc.vue')) {
|
if (mode && id.includes('src/index.ts') && code.includes(`${mode}.vue`)) {
|
||||||
// 简易模式,手动排除移动端和多端模版
|
let newCode = code
|
||||||
const newCode = code.replace('mobile.vue', 'pc.vue').replace('mobile-first.vue', 'pc.vue')
|
modeList
|
||||||
|
.filter((value) => value !== mode)
|
||||||
|
.forEach((item) => {
|
||||||
|
newCode = newCode.replace(`./${item}.vue`, `./${mode}.vue`)
|
||||||
|
})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
code: newCode,
|
code: newCode,
|
||||||
map: null
|
map: null
|
||||||
|
@ -157,19 +166,23 @@ function getEntryTasks() {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'vue-runtime/simple.ts',
|
path: 'vue-runtime/simple.ts',
|
||||||
libPath: 'tiny-vue-simple'
|
libPath: 'tiny-vue-simple',
|
||||||
|
mode: 'pc'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'vue-runtime/pc.ts',
|
path: 'vue-runtime/pc.ts',
|
||||||
libPath: 'tiny-vue-pc'
|
libPath: 'tiny-vue-pc',
|
||||||
|
mode: 'pc'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'vue-runtime/mobile.ts',
|
path: 'vue-runtime/mobile.ts',
|
||||||
libPath: 'tiny-vue-mobile'
|
libPath: 'tiny-vue-mobile',
|
||||||
|
mode: 'mobile'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'vue-runtime/mobile-first.ts',
|
path: 'vue-runtime/mobile-first.ts',
|
||||||
libPath: 'tiny-vue-mobile-first'
|
libPath: 'tiny-vue-mobile-first',
|
||||||
|
mode: 'mobile-first'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'vue-icon-saas/index.ts',
|
path: 'vue-icon-saas/index.ts',
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@opentiny/vue-runtime",
|
"name": "@opentiny/vue-runtime",
|
||||||
"version": "3.16.0",
|
"version": "3.16.1",
|
||||||
"description": "",
|
"description": "",
|
||||||
"files": [
|
"files": [
|
||||||
"dist2",
|
"dist2",
|
||||||
|
|
Loading…
Reference in New Issue