Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | 1x 1x 1x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 20x 9x 9x 9x 9x 9x 7x 7x 7x 7x 7x 7x 7x 7x 9x 7x 7x 9x 20x 20x 20x 20x 20x 20x 20x 20x 20x | import { analyzeScriptBindings } from './analyzeScriptBindings' import type { ScriptCompileContext } from './context' import MagicString from 'magic-string' import { rewriteDefaultAST } from '../rewriteDefault' import { genNormalScriptCssVarsCode } from '../style/cssVars' import type { SFCScriptBlock } from '../parse' export const normalScriptDefaultVar = `__default__` export function processNormalScript( ctx: ScriptCompileContext, scopeId: string, ): SFCScriptBlock { const script = ctx.descriptor.script! if (script.lang && !ctx.isJS && !ctx.isTS) { // do not process non js/ts script blocks return script } try { let content = script.content let map = script.map const scriptAst = ctx.scriptAst! const bindings = analyzeScriptBindings(scriptAst.body) const { cssVars } = ctx.descriptor const { genDefaultAs, isProd } = ctx.options if (cssVars.length || genDefaultAs) { const defaultVar = genDefaultAs || normalScriptDefaultVar const s = new MagicString(content) rewriteDefaultAST(scriptAst.body, s, defaultVar) content = s.toString() if (cssVars.length && !ctx.options.templateOptions?.ssr) { content += genNormalScriptCssVarsCode( cssVars, bindings, scopeId, !!isProd, defaultVar, ) } if (!genDefaultAs) { content += `\nexport default ${defaultVar}` } } return { ...script, content, map, bindings, scriptAst: scriptAst.body, } } catch (e: any) { // silently fallback if parse fails since user may be using custom // babel syntax return script } } |