@@ -2,14 +2,9 @@ import fs from 'node:fs';
22import nodePath from 'node:path' ;
33import url from 'node:url' ;
44
5- import { Mask , Image } from '..' ;
5+ import { Image , Mask } from '..' ;
66
7- import {
8- encode ,
9- ImageFormat ,
10- EncodeOptionsPng ,
11- EncodeOptionsJpeg ,
12- } from './encode' ;
7+ import { encode , EncodeOptionsJpeg , EncodeOptionsPng } from './encode' ;
138
149export interface WriteOptions {
1510 /**
@@ -123,25 +118,16 @@ function getDataToWrite(
123118 image : Image ,
124119 options ?: WriteOptionsPng | WriteOptionsJpeg | WriteOptions ,
125120) : Uint8Array {
126- let format : ImageFormat ;
127121 if ( ! options || ! ( 'format' in options ) ) {
128122 const extension = nodePath . extname ( destinationPath ) . slice ( 1 ) . toLowerCase ( ) ;
129- if ( extension === 'png' ) {
130- format = 'png' ;
131- return encode ( image , { format } ) ;
132- } else if ( extension === 'jpg' || extension === 'jpeg' ) {
133- format = 'jpg' ;
134- return encode ( image , { format } ) ;
123+ if ( extension === 'png' || extension === 'jpg' || extension === 'jpeg' ) {
124+ return encode ( image , { format : extension } ) ;
135125 } else {
136126 throw new RangeError (
137127 'image format could not be determined from file extension. Use a supported extension or specify the format option' ,
138128 ) ;
139129 }
140- } else if ( options . format === 'png' ) {
141- return encode ( image , options ) ;
142- } else if ( options . format === 'jpg' || options . format === 'jpeg' ) {
143- return encode ( image , options ) ;
144130 } else {
145- throw new RangeError ( `invalid format: ${ options . format } ` ) ;
131+ return encode ( image , options ) ;
146132 }
147133}
0 commit comments