Spaces:
Running
Running
File size: 785 Bytes
645859a |
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 |
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
}
|