UNPKG

red-agate-barcode

Version:

red-agate barcode tag library.

50 lines (36 loc) 1.44 kB
// Copyright (c) 2017, Shellyl_N and Authors // license: ISC // https://github.com/shellyln import { BitStreamWriter } from 'red-agate-util/modules/io/BitStream'; export interface QrCodewords { L: number[]; M: number[]; Q: number[]; H: number[]; } export interface QrDataLength { L: number[][]; M: number[][]; Q: number[][]; H: number[][]; } export type QrSourceDataTypes = (BitStreamWriter | Uint8Array | string | number); export enum QrDataChunkType { Control, Number, Alnum, Binary } export const ecLevelMap = new Map<string, number>([ ["L", 1], ["M", 0], ["Q", 3], ["H", 2] ]); export const numberModeCharMap = new Map<string, number>([ ["0", 0], ["1", 1], ["2", 2], ["3", 3], ["4", 4], ["5", 5], ["6", 6], ["7", 7], ["8", 8], ["9", 9] ]); export const alnumModeCharMap = new Map<string, number>([ ["0", 0], ["1", 1], ["2", 2], ["3", 3], ["4", 4], ["5", 5], ["6", 6], ["7", 7], ["8", 8], ["9", 9], ["A", 10], ["B", 11], ["C", 12], ["D", 13], ["E", 14], ["F", 15], ["G", 16], ["H", 17], ["I", 18], ["J", 19], ["K", 20], ["L", 21], ["M", 22], ["N", 23], ["O", 24], ["P", 25], ["Q", 26], ["R", 27], ["S", 28], ["T", 29], ["U", 30], ["V", 31], ["W", 32], ["X", 33], ["Y", 34], ["Z", 35], [" ", 36], ["$", 37], ["%", 38], ["*", 39], ["+", 40], ["-", 41], [".", 42], ["/", 43], [",", 44] ]);