mirror of
https://github.com/LukeHagar/vercel.git
synced 2025-12-10 04:22:12 +00:00
Add API for frameworks and examples (#3514)
* Add API for frameworks and examples * Adjust headers * Update frameworks list * Always use latest * Add types * Use now repo for downloading and listing * Use .existsSync * Remove unused packages * Use 307 for redirect * Add examples * Update tsconfig.json Co-Authored-By: Steven <steven@ceriously.com> * Make examples unique * Remove detectors from frameworks API * Use /api instead of Next.js * Install dependencies * Rename project * Change name * Empty * Change name * Update api/tsconfig.json Co-Authored-By: Steven <steven@ceriously.com> * Update examples Co-authored-by: Steven <steven@ceriously.com>
This commit is contained in:
18
api/_lib/examples/extract.ts
Normal file
18
api/_lib/examples/extract.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
/**
|
||||
* Download zip and extract to target directory
|
||||
*/
|
||||
|
||||
import got from 'got';
|
||||
import unzip from 'unzip-stream';
|
||||
|
||||
export async function extract(sourceUrl: string, targetPath: string) {
|
||||
return new Promise((resolve, reject) => {
|
||||
got
|
||||
.stream(sourceUrl)
|
||||
.pipe(unzip.Extract({ path: targetPath }))
|
||||
.on('close', resolve)
|
||||
.on('error', err => {
|
||||
reject(new Error('Failed extracting from github.'));
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user