bbc/unicode-bidirectional

View on GitHub
src/implicit/implicit.js

Summary

Maintainability
A
0 mins
Test Coverage
function resolveImplicit(types, levels) {
  return types.zipWith((t,level) => {
    if (t === 'L')  { return level + (level % 2) }
    if (t === 'R')  { return level + ((level + 1) % 2) }
    if (t === 'AN' || t === 'EN') { return (level + 1) + ((level + 1) % 2) }
  }, levels);
}

export default resolveImplicit;