52 lines
1.3 KiB
JavaScript
52 lines
1.3 KiB
JavaScript
/**
|
|
* {一些常量}
|
|
* @author yutent<yutent.io@gmail.com>
|
|
* @date 2022/09/06 11:54:56
|
|
*/
|
|
|
|
export const JS_EXP = /(?<=\n|^)<script[^>]*?>([\w\W]*?)<\/script>/
|
|
export const STYLE_EXP = /(?<=\n|^)<style([^>]*?)>([\w\W]*?)<\/style>/g
|
|
export const HTML_EXP = /(?<=\n|^)<template[^>]*?>([\w\W]*?)\n<\/template>/
|
|
export const V_DEEP = /:deep\(([^)]*?)\)(.*)/
|
|
|
|
export const CSS_SHEET_EXP = /([%@\w\.,#\-:>\+\~\|\(\)\[\]"'\=\s]+)\{/g
|
|
export const PERCENT_EXP = /^\d+%$/
|
|
|
|
export const COMMON_HEADERS = {
|
|
'Cache-Control': 'no-store'
|
|
}
|
|
|
|
export const SHEETS_DEF =
|
|
'const __sheets__ = [...document.adoptedStyleSheets];\n'
|
|
|
|
export const LEGACY_POLYFILL = `!(function(){
|
|
function join(p1, p2) {
|
|
let tmp1 = p1.split('/')
|
|
let tmp2 = p2.split('/')
|
|
if (tmp1.at(-1) === '') {
|
|
tmp1.pop()
|
|
}
|
|
while (tmp2.length) {
|
|
let tmp = tmp2.shift()
|
|
if (tmp === '.' || tmp === '') {
|
|
continue
|
|
} else if (tmp === '..') {
|
|
tmp1.pop()
|
|
} else {
|
|
tmp1.push(tmp)
|
|
}
|
|
}
|
|
return tmp1.join('/')
|
|
}
|
|
|
|
window.__fite_import = function(url,relPath){
|
|
let isJson = url.endsWith('.json')
|
|
let absPath = relPath.split('/').slice(0, -1).join('/')
|
|
let req
|
|
if(url.startsWith('./') || url.startsWith('../')) {
|
|
url = join(absPath, url)
|
|
}
|
|
return window.fetch(url).then(r => isJson ? r.json() : r.text())
|
|
}
|
|
})()`
|