Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit b1cb6df

Browse files
committed
feat: throw error on unsupported input type, close #2
1 parent 01ba7fd commit b1cb6df

File tree

5 files changed

+10
-6
lines changed

5 files changed

+10
-6
lines changed

src/generate.ts renamed to src/encode.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,12 @@ export function encode(data: QrCodeGenerateData, options?: QrCodeGenerateOptions
1818

1919
const segment = typeof data === 'string'
2020
? makeSegments(data)
21-
: [makeBytes(data)]
21+
: Array.isArray(data)
22+
? [makeBytes(data)]
23+
: undefined
24+
25+
if (!segment)
26+
throw new Error(`uqr only supports encoding string and binary data, but got: ${typeof data}`)
2227

2328
const qr = encodeSegments(
2429
segment,

src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
export {
22
encode,
3-
} from './generate'
3+
} from './encode'
44
export {
55
renderUnicode,
66
renderANSI,

src/render.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { QrCodeGenerateData, QrCodeGenerateOptions, QrCodeGenerateUnicodeOptions } from './types'
2-
import { encode, getDataAt } from './generate'
2+
import { encode, getDataAt } from './encode'
33

44
/**
55
* Render QR Code with unicode `█`, `░`

src/svg.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { encode } from './generate'
1+
import { encode } from './encode'
22
import type { QrCodeGenerateData, QrCodeGenerateSvgOptions } from './types'
33

44
/**

test/index.test.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { describe, expect, it } from 'vitest'
22
import { renderUnicode, renderUnicodeCompact } from '../src/render'
3-
import { encode } from '../src/generate'
4-
import { renderSVG } from '../src'
3+
import { encode, renderSVG } from '../src'
54

65
describe('should', () => {
76
it('generate', () => {

0 commit comments

Comments
 (0)