2121
2222'use strict' ;
2323
24- const Buffer = require ( 'buffer' ) . Buffer ;
24+ const errors = require ( 'internal/errors' ) ;
2525const Transform = require ( '_stream_transform' ) ;
2626const { _extend } = require ( 'util' ) ;
2727const { isArrayBufferView } = require ( 'internal/util/types' ) ;
2828const binding = process . binding ( 'zlib' ) ;
2929const assert = require ( 'assert' ) . ok ;
30- const kMaxLength = require ( 'buffer' ) . kMaxLength ;
31- const kRangeErrorMessage = 'Cannot create final Buffer. It would be larger ' +
32- `than 0x${ kMaxLength . toString ( 16 ) } bytes` ;
30+ const {
31+ Buffer,
32+ kMaxLength
33+ } = require ( 'buffer' ) ;
3334
3435const constants = process . binding ( 'constants' ) . zlib ;
3536const {
@@ -93,7 +94,7 @@ function zlibBufferOnEnd() {
9394 var buf ;
9495 var err ;
9596 if ( this . nread >= kMaxLength ) {
96- err = new RangeError ( kRangeErrorMessage ) ;
97+ err = new errors . RangeError ( 'ERR_BUFFER_TOO_LARGE' ) ;
9798 } else {
9899 var bufs = this . buffers ;
99100 buf = ( bufs . length === 1 ? bufs [ 0 ] : Buffer . concat ( bufs , this . nread ) ) ;
@@ -111,8 +112,9 @@ function zlibBufferSync(engine, buffer) {
111112 if ( typeof buffer === 'string' ) {
112113 buffer = Buffer . from ( buffer ) ;
113114 } else if ( ! isArrayBufferView ( buffer ) ) {
114- throw new TypeError ( '"buffer" argument must be a string, Buffer, ' +
115- 'TypedArray, or DataView' ) ;
115+ throw new errors . TypeError ( 'ERR_INVALID_ARG_TYPE' ,
116+ 'buffer' ,
117+ [ 'string' , 'Buffer' , 'TypedArray' , 'DataView' ] ) ;
116118 }
117119 buffer = processChunkSync ( engine , buffer , engine . _finishFlushFlag ) ;
118120 if ( engine . _info )
@@ -128,7 +130,7 @@ function zlibOnError(message, errno) {
128130 _close ( self ) ;
129131 self . _hadError = true ;
130132
131- var error = new Error ( message ) ;
133+ const error = new Error ( message ) ;
132134 error . errno = errno ;
133135 error . code = codes [ errno ] ;
134136 self . emit ( 'error' , error ) ;
@@ -163,15 +165,17 @@ function Zlib(opts, mode) {
163165 chunkSize = opts . chunkSize ;
164166 if ( chunkSize !== undefined && chunkSize === chunkSize ) {
165167 if ( chunkSize < Z_MIN_CHUNK || ! Number . isFinite ( chunkSize ) )
166- throw new RangeError ( 'Invalid chunk size: ' + chunkSize ) ;
168+ throw new errors . RangeError ( 'ERR_INVALID_OPT_VALUE' ,
169+ 'chunkSize' ,
170+ chunkSize ) ;
167171 } else {
168172 chunkSize = Z_DEFAULT_CHUNK ;
169173 }
170174
171175 flush = opts . flush ;
172176 if ( flush !== undefined && flush === flush ) {
173177 if ( flush < Z_NO_FLUSH || flush > Z_BLOCK || ! Number . isFinite ( flush ) )
174- throw new RangeError ( 'Invalid flush flag: ' + flush ) ;
178+ throw new errors . RangeError ( 'ERR_INVALID_OPT_VALUE' , ' flush' , flush ) ;
175179 } else {
176180 flush = Z_NO_FLUSH ;
177181 }
@@ -180,7 +184,9 @@ function Zlib(opts, mode) {
180184 if ( finishFlush !== undefined && finishFlush === finishFlush ) {
181185 if ( finishFlush < Z_NO_FLUSH || finishFlush > Z_BLOCK ||
182186 ! Number . isFinite ( finishFlush ) ) {
183- throw new RangeError ( 'Invalid flush flag: ' + finishFlush ) ;
187+ throw new errors . RangeError ( 'ERR_INVALID_OPT_VALUE' ,
188+ 'finishFlush' ,
189+ finishFlush ) ;
184190 }
185191 } else {
186192 finishFlush = Z_FINISH ;
@@ -190,7 +196,9 @@ function Zlib(opts, mode) {
190196 if ( windowBits !== undefined && windowBits === windowBits ) {
191197 if ( windowBits < Z_MIN_WINDOWBITS || windowBits > Z_MAX_WINDOWBITS ||
192198 ! Number . isFinite ( windowBits ) ) {
193- throw new RangeError ( 'Invalid windowBits: ' + windowBits ) ;
199+ throw new errors . RangeError ( 'ERR_INVALID_OPT_VALUE' ,
200+ 'windowBits' ,
201+ windowBits ) ;
194202 }
195203 } else {
196204 windowBits = Z_DEFAULT_WINDOWBITS ;
@@ -200,7 +208,8 @@ function Zlib(opts, mode) {
200208 if ( level !== undefined && level === level ) {
201209 if ( level < Z_MIN_LEVEL || level > Z_MAX_LEVEL ||
202210 ! Number . isFinite ( level ) ) {
203- throw new RangeError ( 'Invalid compression level: ' + level ) ;
211+ throw new errors . RangeError ( 'ERR_INVALID_OPT_VALUE' ,
212+ 'level' , level ) ;
204213 }
205214 } else {
206215 level = Z_DEFAULT_COMPRESSION ;
@@ -210,7 +219,8 @@ function Zlib(opts, mode) {
210219 if ( memLevel !== undefined && memLevel === memLevel ) {
211220 if ( memLevel < Z_MIN_MEMLEVEL || memLevel > Z_MAX_MEMLEVEL ||
212221 ! Number . isFinite ( memLevel ) ) {
213- throw new RangeError ( 'Invalid memLevel: ' + memLevel ) ;
222+ throw new errors . RangeError ( 'ERR_INVALID_OPT_VALUE' ,
223+ 'memLevel' , memLevel ) ;
214224 }
215225 } else {
216226 memLevel = Z_DEFAULT_MEMLEVEL ;
@@ -220,16 +230,18 @@ function Zlib(opts, mode) {
220230 if ( strategy !== undefined && strategy === strategy ) {
221231 if ( strategy < Z_DEFAULT_STRATEGY || strategy > Z_FIXED ||
222232 ! Number . isFinite ( strategy ) ) {
223- throw new TypeError ( 'Invalid strategy: ' + strategy ) ;
233+ throw new errors . TypeError ( 'ERR_INVALID_OPT_VALUE' ,
234+ 'strategy' , strategy ) ;
224235 }
225236 } else {
226237 strategy = Z_DEFAULT_STRATEGY ;
227238 }
228239
229240 dictionary = opts . dictionary ;
230241 if ( dictionary !== undefined && ! isArrayBufferView ( dictionary ) ) {
231- throw new TypeError (
232- 'Invalid dictionary: it should be a Buffer, TypedArray, or DataView' ) ;
242+ throw new errors . TypeError ( 'ERR_INVALID_OPT_VALUE' ,
243+ 'dictionary' ,
244+ dictionary ) ;
233245 }
234246
235247 if ( opts . encoding || opts . objectMode || opts . writableObjectMode ) {
@@ -273,12 +285,12 @@ Object.defineProperty(Zlib.prototype, '_closed', {
273285
274286Zlib . prototype . params = function params ( level , strategy , callback ) {
275287 if ( level < Z_MIN_LEVEL || level > Z_MAX_LEVEL )
276- throw new RangeError ( 'Invalid compression level: ' + level ) ;
288+ throw new errors . RangeError ( 'ERR_INVALID_ARG_VALUE' , ' level' , level ) ;
277289
278290 if ( strategy !== undefined &&
279291 ( strategy < Z_DEFAULT_STRATEGY || strategy > Z_FIXED ||
280292 ! Number . isFinite ( strategy ) ) ) {
281- throw new TypeError ( 'Invalid strategy: ' + strategy ) ;
293+ throw new errors . TypeError ( 'ERR_INVALID_ARG_VALUE' , ' strategy' , strategy ) ;
282294 }
283295
284296 if ( this . _level !== level || this . _strategy !== strategy ) {
@@ -455,7 +467,7 @@ function processChunkSync(self, chunk, flushFlag) {
455467
456468 if ( nread >= kMaxLength ) {
457469 _close ( self ) ;
458- throw new RangeError ( kRangeErrorMessage ) ;
470+ throw new errors . RangeError ( 'ERR_BUFFER_TOO_LARGE' ) ;
459471 }
460472
461473 _close ( self ) ;
@@ -466,7 +478,7 @@ function processChunkSync(self, chunk, flushFlag) {
466478function processChunk ( self , chunk , flushFlag , cb ) {
467479 var handle = self . _handle ;
468480 if ( ! handle )
469- return cb ( new Error ( 'zlib binding closed ' ) ) ;
481+ return cb ( new errors . Error ( 'ERR_ZLIB_BINDING_CLOSED ' ) ) ;
470482
471483 handle . buffer = chunk ;
472484 handle . cb = cb ;
0 commit comments