@nuintun/qrcode
Version:
A pure JavaScript QRCode encode and decode library.
79 lines (74 loc) • 2.17 kB
JavaScript
/**
* @module QRCode
* @package @nuintun/qrcode
* @license MIT
* @version 5.0.2
* @author nuintun <nuintun@qq.com>
* @description A pure JavaScript QRCode encode and decode library.
* @see https://github.com/nuintun/qrcode#readme
*/
'use strict';
const utils = require('./utils.cjs');
/**
* @module mapping
*/
const GB2312_MAPPING = utils.getMappingFromEncodingRanges(
'gb2312',
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
...utils.getSerialEncodinRanges(0xb0a1, 0xd6fe, [0, 93]),
[],
...utils.getSerialEncodinRanges(0xd8a1, 0xf7fe, [0, 93])
);
const SHIFT_JIS_MAPPING = utils.getMappingFromEncodingRanges(
'shift-jis',
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
[],
...utils.getSerialEncodinRanges(0x8940, 0x97fc, [0, 62, 64, 188]),
[],
[],
...utils.getSerialEncodinRanges(0x9940, 0x9ffc, [0, 62, 64, 188]),
...utils.getSerialEncodinRanges(0xe040, 0xe9fc, [0, 62, 64, 188]),
[],
[]
);
const NUMERIC_CHARACTERS = '0123456789';
const NUMERIC_MAPPING = utils.getMappingFromCharacters(NUMERIC_CHARACTERS);
const ALPHANUMERIC_CHARACTERS = `${NUMERIC_CHARACTERS}ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`;
const ALPHANUMERIC_MAPPING = utils.getMappingFromCharacters(ALPHANUMERIC_CHARACTERS);
exports.ALPHANUMERIC_CHARACTERS = ALPHANUMERIC_CHARACTERS;
exports.ALPHANUMERIC_MAPPING = ALPHANUMERIC_MAPPING;
exports.GB2312_MAPPING = GB2312_MAPPING;
exports.NUMERIC_CHARACTERS = NUMERIC_CHARACTERS;
exports.NUMERIC_MAPPING = NUMERIC_MAPPING;
exports.SHIFT_JIS_MAPPING = SHIFT_JIS_MAPPING;