Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const IPFS = require('ipfs-http-client')
const addr = multiaddr(argv['ipfs-api'])
const nodeAddress = addr.nodeAddress()
ipfs = new IPFS(nodeAddress.address, nodeAddress.port)
} else {
const IPFS = require('ipfs')
ipfs = await IPFS.create({ start: false })
}
} catch (e) {
console.error(e)
throw new Error('Please use npm to install either `ipfs` or `ipfs-http-client`.')
}
// Register new MIME type for .ambient files
mime.extensions['text/ambients'] = ['ambient']
mime.types.ambient = 'text/ambients'
const file = fs.readFileSync(argv.input).toString().trim()
let result
switch (mime.lookup(argv.input)) {
case 'application/javascript':
result = await output(ipfs, file, argv); break
case 'text/ambients':
result = await output(ipfs, file, argv); break
default:
throw new Error('File type not recognized')
}
process.stdout.write(result + '\n')
process.exit(0)
})(argv)
const M3U8Parse = require('m3u8parse');
const Oncemore = require('oncemore');
const UriStream = require('uristream');
const Readable = require('readable-stream');
const SegmentFetcher = require('./segment-fetcher');
const HlsSegmentObject = require('./segment-object');
try {
const MimeTypes = require('mime-types');
/* eslint-disable dot-notation */
MimeTypes.types['ac3'] = 'audio/ac3';
MimeTypes.types['eac3'] = 'audio/eac3';
MimeTypes.types['m4s'] = 'video/iso.segment';
/* eslint-enable dot-notation */
}
catch (err) {
console.error('Failed to inject extra types', err);
}
const internals = {
indexMimeTypes: new Set([
'application/vnd.apple.mpegurl',
'application/x-mpegurl',
'audio/mpegurl'
]),
segmentMimeTypes: new Set([
'video/mp2t',
'video/mpeg',
'video/mp4',
const Url = require('url');
const M3U8Parse = require('m3u8parse');
const Oncemore = require('oncemore');
const UriStream = require('uristream');
const Readable = require('readable-stream');
const SegmentFetcher = require('./segment-fetcher');
const HlsSegmentObject = require('./segment-object');
try {
const MimeTypes = require('mime-types');
/* eslint-disable dot-notation */
MimeTypes.types['ac3'] = 'audio/ac3';
MimeTypes.types['eac3'] = 'audio/eac3';
MimeTypes.types['m4s'] = 'video/iso.segment';
/* eslint-enable dot-notation */
}
catch (err) {
console.error('Failed to inject extra types', err);
}
const internals = {
indexMimeTypes: new Set([
'application/vnd.apple.mpegurl',
'application/x-mpegurl',
'audio/mpegurl'
]),
segmentMimeTypes: new Set([
'video/mp2t',
'video/mpeg',
// eslint-disable-next-line no-unused-vars
import {h} from 'preact';
import path from 'path';
import mime from 'mime-types';
mime.types.ts = 'application/typescript';
// eslint-disable-next-line no-unused-vars
import {Controlled as CodeMirror} from 'react-codemirror2';
import 'codemirror/mode/jsx/jsx.js';
import 'codemirror/mode/css/css.js';
import 'codemirror/mode/htmlmixed/htmlmixed.js';
import 'codemirror/mode/yaml/yaml.js';
import 'codemirror/mode/toml/toml.js';
import 'codemirror/mode/markdown/markdown.js';
import 'codemirror/lib/codemirror.css';
function patchMime(v) {
if (/(?:application|text)\/javascript/.test(v)) return 'text/jsx';
else if (v === 'text/less') return 'text/x-less';
else return v;
const Url = require('url');
const M3U8Parse = require('m3u8parse');
const Oncemore = require('oncemore');
const UriStream = require('uristream');
const Readable = require('readable-stream');
const SegmentFetcher = require('./segment-fetcher');
const HlsSegmentObject = require('./segment-object');
try {
const MimeTypes = require('mime-types');
/* eslint-disable dot-notation */
MimeTypes.types['ac3'] = 'audio/ac3';
MimeTypes.types['eac3'] = 'audio/eac3';
MimeTypes.types['m4s'] = 'video/iso.segment';
/* eslint-enable dot-notation */
}
catch (err) {
console.error('Failed to inject extra types', err);
}
const internals = {
indexMimeTypes: new Set([
'application/vnd.apple.mpegurl',
'application/x-mpegurl',
'audio/mpegurl'
]),
segmentMimeTypes: new Set([
'video/mp2t',
//This file is a shim to allow for additional mimetypes
//this list includes all file extensions rendered as text by MFR
var $ = require('jquery');
var mime = require('mime-types');
$.extend(mime.types, {
'6pm': 'text/plain',
'6pl': 'text/plain',
rd: 'text/plain',
rout: 'text/plain',
'1': 'text/plain',
'2': 'text/plain',
'3': 'text/plain',
'4': 'text/plain',
'5': 'text/plain',
'6': 'text/plain',
'7': 'text/plain',
abap: 'text/plain',
ada: 'text/plain',
adb: 'text/plain',
ads: 'text/plain',
agda: 'text/plain',
_.each(Object.keys(typesToRig), (type) => {
let ext = typesToRig[type];
mimeTypes.types[ext] = type;
mimeTypes.extensions[type] = _.clone([ext], true);
});
}
_.forEach(ADDITIONAL_EXT_MIMETYPES, (mimeType, ext) => {
// don't override any entries
if(!_.isString(mimeTypes.types[ext])) {
mimeTypes[ext] = mimeType;
}
if(!mimeTypes.extensions[mimeType]) {
mimeTypes.extensions[mimeType] = [ ext ];
}
});