scorm-extractor
Advanced tools
@@ -1,2 +0,2 @@ | ||
| const extract = require('../lib'); | ||
| const extract = require('../index'); | ||
@@ -3,0 +3,0 @@ const main = async() => { |
+1
-1
| { | ||
| "name": "scorm-extractor", | ||
| "version": "1.0.2", | ||
| "version": "1.0.3", | ||
| "description": "", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
-27
| const fs = require('fs'); | ||
| const path = require('path'); | ||
| const unzip = require('unzip'); | ||
| const ScormContentParser = require('./ScormContentParser').ScormContentParser; | ||
| const ScormNavTreeBuilder = require('./ScormNavTreeBuilder'); | ||
| const scormParser = new ScormContentParser(); | ||
| const navTreeBuilder = new ScormNavTreeBuilder(); | ||
| const extract = (filePath, contentDir) => { | ||
| return new Promise((resolve) => { | ||
| const fileName = path.basename(filePath); | ||
| const extractedDir = fileName.replace('.zip',''); | ||
| const unzipPipe = unzip.Extract({path:`${contentDir}/${extractedDir}`}); | ||
| unzipPipe.on('close', () => { | ||
| const manifest = `${contentDir}/${extractedDir}/imsmanifest.xml`; | ||
| const data = fs.readFileSync(manifest); | ||
| const scormContent = scormParser.parse(data); | ||
| const navTree = navTreeBuilder.buildNavigationModel(scormContent, 'windows10'); | ||
| resolve(navTree); | ||
| }) | ||
| fs.createReadStream(`${filePath}`).pipe(unzipPipe); | ||
| }) | ||
| } | ||
| module.exports = extract; |
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
2
-33.33%419567
-0.26%8
-11.11%189
-10.43%