11#!/usr/bin/env node
22
3+ import fs from 'node:fs/promises' ;
34import path from 'node:path' ;
4- import fs from 'fs-extra' ;
55import { Jimp } from 'jimp' ;
66import icongen from 'icon-gen' ;
77
@@ -36,9 +36,17 @@ export class IconGenerator {
3636 private async createPNG ( size : number ) : Promise < string > {
3737 const fileName = size . toString ( ) ;
3838
39- await fs . ensureDir ( this . options . output ) ;
40- await fs . ensureDir ( this . iconsDir ) ;
41- await fs . ensureDir ( this . PNGoutputDir ) ;
39+ try {
40+ await fs . mkdir ( this . options . output , { recursive : true } ) ;
41+ } catch { }
42+
43+ try {
44+ await fs . mkdir ( this . iconsDir , { recursive : true } ) ;
45+ } catch { }
46+
47+ try {
48+ await fs . mkdir ( this . PNGoutputDir , { recursive : true } ) ;
49+ } catch { }
4250
4351 const image = await Jimp . read ( this . options . input ) ;
4452 const resizeFilePath = path . join ( this . PNGoutputDir , fileName ) ;
@@ -62,7 +70,9 @@ export class IconGenerator {
6270 const macIconsDir = path . join ( this . iconsDir , 'mac' ) ;
6371 const winIconsDir = path . join ( this . iconsDir , 'win' ) ;
6472
65- await fs . ensureDir ( macIconsDir ) ;
73+ try {
74+ await fs . mkdir ( macIconsDir , { recursive : true } ) ;
75+ } catch { }
6676
6777 await icongen . default ( this . PNGoutputDir , macIconsDir , {
6878 icns : {
@@ -72,7 +82,9 @@ export class IconGenerator {
7282 report : ! this . options . silent ,
7383 } ) ;
7484
75- await fs . ensureDir ( winIconsDir ) ;
85+ try {
86+ await fs . mkdir ( winIconsDir , { recursive : true } ) ;
87+ } catch { }
7688
7789 await icongen . default ( this . PNGoutputDir , winIconsDir , {
7890 icns : {
0 commit comments