DuyTa's picture
Upload folder using huggingface_hub
bc20498 verified
raw
history blame
1.1 kB
import * as fs from 'graceful-fs';
import { dirname } from 'path';
import mkdirp from 'mkdirp';
import resolvePath from '../utils/resolvePath';
export const rename = asyncMethod( 'rename' );
export const link = asyncMethod( 'link' );
export const renameSync = syncMethod( 'renameSync' );
export const linkSync = syncMethod( 'linkSync' );
function asyncMethod ( methodName ) {
return function () {
const src = resolvePath( arguments );
return {
to () {
const dest = resolvePath( arguments );
return new Promise( ( fulfil, reject ) => {
mkdirp( dirname( dest ), err => {
if ( err ) {
reject( err );
} else {
fs[ methodName ]( src, dest, err => {
if ( err ) {
reject( err );
} else {
fulfil();
}
});
}
});
});
}
};
};
}
function syncMethod ( methodName ) {
return function () {
const src = resolvePath( arguments );
return {
to () {
const dest = resolvePath( arguments );
mkdirp.sync( dirname( dest ) );
return fs[ methodName ]( src, dest );
}
};
};
}