mirror of
https://github.com/snobu/destreamer.git
synced 2026-01-23 16:32:16 +00:00
* Added Chromium caching of identity provider cookies * Moved token expiry check in standalone method * Created refreshSession function * Session is now refreshed if the token expires * Linting fixes * Removed debug console.log() * Added CC support * Created function to prompt user for download parameters (interactive mode) * Fix data folder for puppeteer * Fixed multiple session error * Fix token expire time * Moved session refreshing to a more sensible place * Changed Metadata name to Video (to better reflect the data structure) * Complete CLI refactoring * Removed useless sleep function * Added outDir check from CLI * Complete input parsing refactoring (both inline and file) * Fixed and improved tests to work with the new input parsing * Moved and improved output path generation to videoUtils * Main code refactoring, added outpath to video type * Minor changes in spacing and type definition style * Updated readme after code refactoring * Fix if inputFile doesn't start with url on line 1 * Minor naming change * Use module 'winston' for logging * Created logge, changed all console.log and similar to use the logger * Added verbose logging, changed posterUrl property name on Video type * Moved GUID extraction to input parsing * Added support for group links * Fixed test after last input parsing update * Removed debug proces.exit() * Changed from desc to asc order for group videos * Updated test to reflect GUIDs output after parsing * Added couple of comments and restyled some imports * More readable verbose GUIDs logging * Removed unused errors * Temporary fix for timeout not working in ApiClient * Explicit class member accessibility * Defined array naming schema to be Array<T> * Defined type/interface schema to be type only * A LOT of type definitions
22 lines
677 B
TypeScript
22 lines
677 B
TypeScript
import path from 'path';
|
|
import puppeteer from 'puppeteer';
|
|
|
|
|
|
// Thanks pkg-puppeteer [ cleaned up version :) ]
|
|
export function getPuppeteerChromiumPath(): string {
|
|
const isPkg: boolean = __filename.includes('snapshot');
|
|
|
|
const replaceRegex: RegExp = (process.platform === 'win32') ?
|
|
new RegExp(/^.*?\\node_modules\\puppeteer\\\.local-chromium/) :
|
|
new RegExp(/^.*?\/node_modules\/puppeteer\/\.local-chromium/);
|
|
|
|
if (!isPkg) {
|
|
return puppeteer.executablePath();
|
|
}
|
|
|
|
const browserPath: string = puppeteer.executablePath()
|
|
.replace(replaceRegex, path.join(path.dirname(process.execPath), 'chromium'));
|
|
|
|
return browserPath;
|
|
}
|