nehan
Version:
Html layout engine for paged-media written in Typescript
27 lines • 807 B
JavaScript
import { Config, Word, Tcy, } from "./public-api";
export class UprightTokenMapper {
visit(tokens) {
return tokens.reduce((acm, token) => {
if (token instanceof Word) {
return acm.concat(token.toTcys());
}
return acm.concat(token);
}, []);
}
}
export class TcyTokenMapper {
visit(tokens) {
return tokens.map((token, index) => {
if (token instanceof Word === false) {
return token;
}
const prev = tokens[index - 1];
const next = tokens[index + 1];
if (Config.isTcyWord(token.text, { prev, next })) {
return new Tcy(token.text);
}
return token;
});
}
}
//# sourceMappingURL=token-mapper.js.map