From 76cb9c2a39d477a64824a985ade40507e3bbade1 Mon Sep 17 00:00:00 2001 From: Adam Mathes Date: Fri, 13 Feb 2026 21:34:48 -0800 Subject: feat(vanilla): add testing infrastructure and tests (NK-wjnczv) --- vanilla/node_modules/bidi-js/src/brackets.js | 30 ++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 vanilla/node_modules/bidi-js/src/brackets.js (limited to 'vanilla/node_modules/bidi-js/src/brackets.js') diff --git a/vanilla/node_modules/bidi-js/src/brackets.js b/vanilla/node_modules/bidi-js/src/brackets.js new file mode 100644 index 0000000..c598bc1 --- /dev/null +++ b/vanilla/node_modules/bidi-js/src/brackets.js @@ -0,0 +1,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 +} -- cgit v1.2.3