@stacksjs/qrx
Version:
QR & Bar Code generating & reading. Lightweight & powerful.
37 lines (30 loc) • 745 B
TypeScript
declare function checksum(number: string): number;
export declare class EAN8 extends EAN {
constructor(data: string, options: any) {
if (data.search(/^\d{7}$/) !== -1) {
data += checksum(data)
}
super(data, options)
}
valid(): boolean {
return (
this.data.search(/^\d{8}$/) !== -1
&& +this.data[7] === checksum(this.data)
)
}
leftText(): string {
return super.leftText(0, 4)
}
leftEncode(): string {
const data = this.data.substr(0, 4)
return super.leftEncode(data, 'LLLL')
}
rightText(): string {
return super.rightText(4, 4)
}
rightEncode(): string {
const data = this.data.substr(4, 4)
return super.rightEncode(data, 'RRRR')
}
}
export default EAN8;