line-table.test.ts — tailwindcss Source File
Architecture documentation for line-table.test.ts, a typescript file in the tailwindcss codebase. 4 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR decf24ed_f8e8_0417_e8e2_cfbab3000951["line-table.test.ts"] ac7e86e1_459b_f374_4516_afecc84f2a17["line-table.ts"] decf24ed_f8e8_0417_e8e2_cfbab3000951 --> ac7e86e1_459b_f374_4516_afecc84f2a17 0204f9b9_80aa_c3e8_eb61_22170d608d65["createLineTable"] decf24ed_f8e8_0417_e8e2_cfbab3000951 --> 0204f9b9_80aa_c3e8_eb61_22170d608d65 211db6bb_9759_d0cf_acda_36d7f5733ce2["dedent"] decf24ed_f8e8_0417_e8e2_cfbab3000951 --> 211db6bb_9759_d0cf_acda_36d7f5733ce2 696bd648_5f24_1b59_8e8b_7a97a692869e["vitest"] decf24ed_f8e8_0417_e8e2_cfbab3000951 --> 696bd648_5f24_1b59_8e8b_7a97a692869e style decf24ed_f8e8_0417_e8e2_cfbab3000951 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import dedent from 'dedent'
import { expect, test } from 'vitest'
import { createLineTable } from './line-table'
const css = dedent
test('line tables', () => {
let text = css`
.foo {
color: red;
}
`
let table = createLineTable(`${text}\n`)
// Line 1: `.foo {\n`
expect(table.find(0)).toEqual({ line: 1, column: 0 })
expect(table.find(1)).toEqual({ line: 1, column: 1 })
expect(table.find(2)).toEqual({ line: 1, column: 2 })
expect(table.find(3)).toEqual({ line: 1, column: 3 })
expect(table.find(4)).toEqual({ line: 1, column: 4 })
expect(table.find(5)).toEqual({ line: 1, column: 5 })
expect(table.find(6)).toEqual({ line: 1, column: 6 })
// Line 2: ` color: red;\n`
expect(table.find(6 + 1)).toEqual({ line: 2, column: 0 })
expect(table.find(6 + 2)).toEqual({ line: 2, column: 1 })
expect(table.find(6 + 3)).toEqual({ line: 2, column: 2 })
expect(table.find(6 + 4)).toEqual({ line: 2, column: 3 })
expect(table.find(6 + 5)).toEqual({ line: 2, column: 4 })
expect(table.find(6 + 6)).toEqual({ line: 2, column: 5 })
expect(table.find(6 + 7)).toEqual({ line: 2, column: 6 })
expect(table.find(6 + 8)).toEqual({ line: 2, column: 7 })
expect(table.find(6 + 9)).toEqual({ line: 2, column: 8 })
expect(table.find(6 + 10)).toEqual({ line: 2, column: 9 })
expect(table.find(6 + 11)).toEqual({ line: 2, column: 10 })
expect(table.find(6 + 12)).toEqual({ line: 2, column: 11 })
expect(table.find(6 + 13)).toEqual({ line: 2, column: 12 })
// Line 3: `}\n`
expect(table.find(20 + 1)).toEqual({ line: 3, column: 0 })
expect(table.find(20 + 2)).toEqual({ line: 3, column: 1 })
// After the new line
expect(table.find(22 + 1)).toEqual({ line: 4, column: 0 })
})
test('line tables findOffset', () => {
let text = css`
.foo {
color: red;
}
`
let table = createLineTable(`${text}\n`)
// Line 1: `.foo {\n`
expect(table.findOffset({ line: 1, column: 0 })).toEqual(0)
expect(table.findOffset({ line: 1, column: 1 })).toEqual(1)
expect(table.findOffset({ line: 1, column: 2 })).toEqual(2)
expect(table.findOffset({ line: 1, column: 3 })).toEqual(3)
expect(table.findOffset({ line: 1, column: 4 })).toEqual(4)
expect(table.findOffset({ line: 1, column: 5 })).toEqual(5)
expect(table.findOffset({ line: 1, column: 6 })).toEqual(6)
// Line 2: ` color: red;\n`
expect(table.findOffset({ line: 2, column: 0 })).toEqual(6 + 1)
expect(table.findOffset({ line: 2, column: 1 })).toEqual(6 + 2)
expect(table.findOffset({ line: 2, column: 2 })).toEqual(6 + 3)
expect(table.findOffset({ line: 2, column: 3 })).toEqual(6 + 4)
expect(table.findOffset({ line: 2, column: 4 })).toEqual(6 + 5)
expect(table.findOffset({ line: 2, column: 5 })).toEqual(6 + 6)
expect(table.findOffset({ line: 2, column: 6 })).toEqual(6 + 7)
expect(table.findOffset({ line: 2, column: 7 })).toEqual(6 + 8)
expect(table.findOffset({ line: 2, column: 8 })).toEqual(6 + 9)
expect(table.findOffset({ line: 2, column: 9 })).toEqual(6 + 10)
expect(table.findOffset({ line: 2, column: 10 })).toEqual(6 + 11)
expect(table.findOffset({ line: 2, column: 11 })).toEqual(6 + 12)
expect(table.findOffset({ line: 2, column: 12 })).toEqual(6 + 13)
// Line 3: `}\n`
expect(table.findOffset({ line: 3, column: 0 })).toEqual(20 + 1)
expect(table.findOffset({ line: 3, column: 1 })).toEqual(20 + 2)
// After the new line
expect(table.findOffset({ line: 4, column: 0 })).toEqual(22 + 1)
})
Domain
Dependencies
- createLineTable
- dedent
- line-table.ts
- vitest
Source
Frequently Asked Questions
What does line-table.test.ts do?
line-table.test.ts is a source file in the tailwindcss codebase, written in typescript. It belongs to the OxideEngine domain.
What does line-table.test.ts depend on?
line-table.test.ts imports 4 module(s): createLineTable, dedent, line-table.ts, vitest.
Where is line-table.test.ts in the architecture?
line-table.test.ts is located at packages/tailwindcss/src/source-maps/line-table.test.ts (domain: OxideEngine, directory: packages/tailwindcss/src/source-maps).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free