UNPKG

precis-js

Version:

A JavaScript implementation of RFC 7564 (The PRECIS Framework).

46 lines (35 loc) 1.67 kB
fs = require 'fs' UnicodeTrie = require 'unicode-trie' CodepointPropertyReader = require './unicode/CodepointPropertyReader' precis = require './constants' PrecisEnforcer = require './PrecisEnforcer' PrecisPreparer = require './PrecisPreparer' WidthMapper = require './unicode/WidthMapper' trieData = fs.readFileSync __dirname + '/../data/properties.trie' trie = new UnicodeTrie trieData propertyReader = new CodepointPropertyReader trie widthMappingData = JSON.parse fs.readFileSync __dirname + '/../data/width-mapping.json' widthMapper = new WidthMapper widthMappingData preparer = new PrecisPreparer propertyReader, widthMapper module.exports = precis module.exports.prepare = preparer.prepare.bind preparer module.exports.preparer = preparer module.exports.propertyReader = propertyReader module.exports.PrecisEnforcer = PrecisEnforcer module.exports.PrecisPreparer = PrecisPreparer module.exports.error = EmptyStringError: require './error/EmptyStringError' InvalidCodepointError: require './error/InvalidCodepointError' InvalidDirectionalityError: require './error/InvalidDirectionalityError' module.exports.profile = NicknameProfile: require './profile/NicknameProfile' OpaqueStringProfile: require './profile/OpaqueStringProfile' UsernameCaseMappedProfile: require './profile/UsernameCaseMappedProfile' UsernameCasePreservedProfile: require './profile/UsernameCasePreservedProfile' module.exports.unicode = CodepointPropertyReader: CodepointPropertyReader DirectionalityValidator: require './unicode/DirectionalityValidator' Normalizer: require './unicode/Normalizer' WidthMapper: WidthMapper