New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

dir-uploader

Package Overview
Dependencies
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dir-uploader - npm Package Compare versions

Comparing version 1.0.1 to 1.1.0

106

dir-uploader.js

@@ -6,3 +6,3 @@ 'use strict';

const { combine, timestamp, label, prettyPrint } = format;
const logging = createLogger({
const log = createLogger({
level: 'debug',

@@ -46,3 +46,3 @@ format: format.combine(

if (!givenUrl || !givenPath) {
logging.log('error', colors.error('URL for upload endpoints or xml file path is not provided'));
log.log('error', colors.error('URL for upload endpoints or xml file path is not provided'));
} else {

@@ -54,4 +54,4 @@ finalUrl = givenUrl;

logging.log('debug', colors.debug('Upload Url: %s', finalUrl));
logging.log('debug', colors.debug('result file: %s', finalFile));
log.log('debug', colors.debug('Upload Url: %s', finalUrl));
log.log('debug', colors.debug('result file: %s', finalFile));

@@ -73,7 +73,7 @@ return result;

let extension = filename.split('.').pop();
logging.log('debug', extension);
log.log('debug', extension);
if (extension === fileType) {
fs.unlinkSync(dirPath + '/' + filename, err => {
if (err) return logging.log('error', colors.error('%s', err));
logging.log('debug', colors.debug('%s deleted successfully', filename));
if (err) return log.log('error', colors.error('%s', err));
log.log('debug', colors.debug('%s deleted successfully', filename));
});

@@ -83,4 +83,4 @@ }

fs.unlinkSync(dirPath + '/' + filename, err => {
if (err) return logging.log('error', colors.error('%s', err));
logging.log('debug', colors.debug('%s deleted successfully', filename));
if (err) return log.log('error', colors.error('%s', err));
log.log('debug', colors.debug('%s deleted successfully', filename));
});

@@ -95,3 +95,3 @@ }

if (arg.indexOf(param) > -1) {
logging.log('debug', colors.debug('Found param %s', param));
log.log('debug', colors.debug('Found param %s', param));
val = arg.split('=', 2)[1];

@@ -103,7 +103,7 @@ }

logging.log('debug', 'HERE ARE THE ARGS');
log.log('debug', 'HERE ARE THE ARGS');
process.argv.forEach((arg, i) => {
logging.log('debug', ('ARG $d : $s', i, arg));
log.log('debug', ('ARG $d : $s', i, arg));
});
logging.log('debug', '-------END OF ARGS-------');
log.log('debug', '-------END OF ARGS-------');

@@ -115,9 +115,10 @@ let argUrl = getArg('url');

let exportfileType = getArg('export-file-type');
const argMetaDataFileName = getArg('metadata-file-name');
let sendData = (url, resultPath, metadataFilePath, deleteFile, filetype) => {
let sendData = (url, resultPath, metadataFile, deleteFile, filetype) => {
url = url || argUrl;
resultPath = resultPath || argResultPath;
metadataFilePath = metadataFilePath || argMetadataFilePath;
metadataFile = metadataFile || argMetadataFilePath;
finalDeleteFile = deleteFile || argDeleteFile;
logging.log('debug', 'deleteFile: ' + finalDeleteFile);
log.log('debug', 'deleteFile: ' + finalDeleteFile);
let allFiles = (exportfileType === true) || (filetype === true);

@@ -130,3 +131,2 @@ let filetype2 = '*';

logging.log('debug', colors.debug('URL: ' + url));
if(!validateParams(url, resultPath)) return;

@@ -136,5 +136,5 @@

if (metadataFilePath) {
formData.append('info', fs.createReadStream(metadataFilePath));
logging.log('debug', colors.debug('Added metadata file ' + metadataFilePath));
if (metadataFile) {
formData.append('info', fs.createReadStream(metadataFile));
log.log('debug', colors.debug('Added metadata file ' + metadataFile));
}

@@ -146,9 +146,9 @@

if (allFiles) {
logging.log('debug', colors.debug("Uploading file: %s/%s", resultPath, filename));
log.log('debug', colors.debug("Uploading file: %s/%s", resultPath, filename));
formData.append('files', fs.createReadStream(resultPath + '/' + filename));
} else {
let extension = filename.split('.').pop();
logging.log('debug', 'HERE IS fileType: ' + filetype2 + ' & extension: ' + extension);
log.log('debug', 'HERE IS fileType: ' + filetype2 + ' & extension: ' + extension);
if(extension === filetype2) {
logging.log('debug', colors.debug("Uploading file: %s/%s", resultPath, filename));
log.log('debug', colors.debug("Uploading file: %s/%s", resultPath, filename));
formData.append('files', fs.createReadStream(resultPath + '/' + filename));

@@ -168,5 +168,5 @@ }

if (result.status === 200) {
logging.log('info', colors.debug('response is coming 200'));
log.log('info', colors.debug('response is coming 200'));
if (finalDeleteFile) {
logging.log('debug', colors.debug('Deleting uploaded files in directory ' + resultPath));
log.log('debug', colors.debug('Deleting uploaded files in directory ' + resultPath));
deleteFiles(resultPath, allFiles, filetype2);

@@ -178,7 +178,7 @@ }

.then(json => {
logging.log('info', colors.data(JSON.stringify(json)));
log.log('info', colors.data(JSON.stringify(json)));
return json;
})
.catch(err => {
logging.log('error', colors.error(err));
log.log('error', colors.error(err));
});

@@ -188,8 +188,56 @@ return dupResult;

.catch(err => {
logging.log('error', colors.error(err));
log.log('error', colors.error(err));
});
};
let sendMultiFolderData = (url, parentFolderPath, metadataFileName, deleteFiles, filetype) => {
url = url || argUrl;
parentFolderPath = parentFolderPath || argResultPath;
finalDeleteFile = deleteFiles || argDeleteFile;
log.log('debug', 'deleteFile: ' + finalDeleteFile);
let finalFileType = (exportfileType === true) || (filetype === true);
let allFiles = !finalFileType ? true : false;
if(!allFiles) {
if (exportfileType) { filetype2 = exportfileType; }
if (filetype) { filetype2 = filetype; }
}
if(!validateParams(url, parentFolderPath)) return;
log.debug('Passed validation!!');
// If parent directory is a folder then get sub directories
// using withFileTypes so node version should be > 10.10
const getDirectories = source =>
fs.readdirSync(source, { withFileTypes: true })
.filter(dirent => dirent.isDirectory())
.map(dirent => dirent.name)
const dirList = getDirectories(parentFolderPath);
// If no take parentfolder or no sub directories - throw an error and exit
if (!dirList) {
throw new Error('No sub directories found in the given folder');
}
// Process each subfolder - send it out as a separate call and delete it if successful
log.debug('Here are the directories: ' + dirList.join(', '));
let resultArray = [];
dirList.forEach((value) => {
const finalFolder = parentFolderPath + '/' + value;
const result = sendData(url, finalFolder, metadataFileName,
true, 'xml');
resultArray.push(result);
});
// Send final response with approval or error
return {
status: 200,
results: resultArray
}
}
module.exports = {
sendData
sendData,
sendMultiFolderData
};
{
"name": "dir-uploader",
"version": "1.0.1",
"version": "1.1.0",
"description": "An uploader module to upload all files in a directory or to upload files of a type. It sends a multipart request to the endpoint with all files attached to it",

@@ -33,4 +33,5 @@ "main": "dir-uploader.js",

"node-fetch": "^2.6.0",
"q": "^1.5.1",
"winston": "^3.2.1"
}
}
# dir-uploader
[![NPM](https://img.shields.io/npm/v/dir-uploader.svg)]()
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=philips-software_dir-uploader&metric=alert_status)](https://sonarcloud.io/dashboard?id=philips-software_dir-uploader)
[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square)](https://scm.sapphirepri.com/arsalan.siddiqui/dir-uploader.git)

@@ -4,0 +5,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc