blob: c598bc13330fbf7191650aa8e39cacfcb26193bc (
plain) (
blame)
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
|
import data from './data/bidiBrackets.data.js'
import { parseCharacterMap } from './util/parseCharacterMap.js'
let openToClose, closeToOpen, canonical
function parse () {
if (!openToClose) {
//const start = performance.now()
let { map, reverseMap } = parseCharacterMap(data.pairs, true)
openToClose = map
closeToOpen = reverseMap
canonical = parseCharacterMap(data.canonical, false).map
//console.log(`brackets parsed in ${performance.now() - start}ms`)
}
}
export function openingToClosingBracket (char) {
parse()
return openToClose.get(char) || null
}
export function closingToOpeningBracket (char) {
parse()
return closeToOpen.get(char) || null
}
export function getCanonicalBracket (char) {
parse()
return canonical.get(char) || null
}
|