parseComponent.spec.ts — vue Source File
Architecture documentation for parseComponent.spec.ts, a typescript file in the vue codebase. 3 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 299be8c4_acdf_7d21_e697_6f85f553a1ce["parseComponent.spec.ts"] 0efbfda6_f2a2_633c_6405_ea7a32c8a88d["parseComponent.ts"] 299be8c4_acdf_7d21_e697_6f85f553a1ce --> 0efbfda6_f2a2_633c_6405_ea7a32c8a88d fcce9d76_9068_3c88_145d_3d973c3e1547["parseComponent"] 299be8c4_acdf_7d21_e697_6f85f553a1ce --> fcce9d76_9068_3c88_145d_3d973c3e1547 a80b8e3b_d720_9146_3bf6_594d4ee5dd77["compiler"] 299be8c4_acdf_7d21_e697_6f85f553a1ce --> a80b8e3b_d720_9146_3bf6_594d4ee5dd77 style 299be8c4_acdf_7d21_e697_6f85f553a1ce fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { WarningMessage } from 'types/compiler'
import { parseComponent } from '../src/parseComponent'
describe('Single File Component parser', () => {
it('should parse', () => {
const res = parseComponent(
`
<template>
<div>hi</div>
</template>
<style src="./test.css"></style>
<style lang="stylus" scoped>
h1
color red
h2
color green
</style>
<style module>
h1 { font-weight: bold }
</style>
<style bool-attr val-attr="test"></style>
<script>
export default {}
</script>
<div>
<style>nested should be ignored</style>
</div>
`
)
expect(res.template!.content.trim()).toBe('<div>hi</div>')
expect(res.styles.length).toBe(4)
expect(res.styles[0].src).toBe('./test.css')
expect(res.styles[1].lang).toBe('stylus')
expect(res.styles[1].scoped).toBe(true)
expect(res.styles[1].content.trim()).toBe(
'h1\n color red\nh2\n color green'
)
expect(res.styles[2].module).toBe(true)
expect(res.styles[3].attrs['bool-attr']).toBe(true)
expect(res.styles[3].attrs['val-attr']).toBe('test')
expect(res.script!.content.trim()).toBe('export default {}')
})
it('should parse template with closed input', () => {
const res = parseComponent(`
<template>
<input type="text"/>
</template>
`)
expect(res.template!.content.trim()).toBe('<input type="text"/>')
})
it('should handle nested template', () => {
const res = parseComponent(`
<template>
<div><template v-if="ok">hi</template></div>
</template>
`)
expect(res.template!.content.trim()).toBe(
// ... (210 more lines)
Domain
Dependencies
- compiler
- parseComponent
- parseComponent.ts
Source
Frequently Asked Questions
What does parseComponent.spec.ts do?
parseComponent.spec.ts is a source file in the vue codebase, written in typescript. It belongs to the VueCore domain.
What does parseComponent.spec.ts depend on?
parseComponent.spec.ts imports 3 module(s): compiler, parseComponent, parseComponent.ts.
Where is parseComponent.spec.ts in the architecture?
parseComponent.spec.ts is located at packages/compiler-sfc/test/parseComponent.spec.ts (domain: VueCore, directory: packages/compiler-sfc/test).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free