feat: use live editor on desktop

This commit is contained in:
Justineo
2021-11-20 13:22:48 +08:00
committed by GU Yiling
parent 54393e41bc
commit 6fd9a5a4f4
20 changed files with 1257 additions and 1037 deletions

26
common/transform.js Normal file
View File

@@ -0,0 +1,26 @@
import less from 'less/dist/less'
const lessRE = /<style([^>]* lang="less")?[^>]*>([\s\S]*?)<\/style>/gi
export function transformLessCode (sfcCode) {
return sfcCode.replace(lessRE, (_, p1, p2) => {
const lessCode = p2.trim()
const cssCode = render(lessCode)
return `<style${p1}>${cssCode}</style>`
})
}
function render (code) {
let css = null
less.render(code, {
syncImport: true
}, (err, output) => {
if (err) {
throw err
}
css = output.css
})
return css
}