@bitblit/ratchet-node-only 5.0.528-alpha → 5.0.531-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cli/ratchet-cli-handler.js +2 -0
- package/lib/cli/ratchet-cli-handler.js.map +1 -1
- package/lib/http/local-file-server.d.ts +13 -0
- package/lib/http/local-file-server.js +116 -0
- package/lib/http/local-file-server.js.map +1 -0
- package/lib/http/local-server-cert.d.ts +5 -0
- package/lib/http/local-server-cert.js +68 -0
- package/lib/http/local-server-cert.js.map +1 -0
- package/lib/third-party/angular/angular-aot-rollup-plugin.js +1 -1
- package/lib/third-party/common-crawl/common-crawl-service.js +5 -5
- package/package.json +11 -3
|
@@ -4,6 +4,7 @@ import { FilesToStaticClass } from '../files/files-to-static-class.js';
|
|
|
4
4
|
import { PublishCiReleaseToSlack } from '../third-party/slack/publish-ci-release-to-slack.js';
|
|
5
5
|
import { AbstractRatchetCliHandler } from './abstract-ratchet-cli-handler.js';
|
|
6
6
|
import { UniqueFileRename } from '../files/unique-file-rename.js';
|
|
7
|
+
import { LocalFileServer } from "../http/local-file-server.js";
|
|
7
8
|
export class RatchetCliHandler extends AbstractRatchetCliHandler {
|
|
8
9
|
fetchHandlerMap() {
|
|
9
10
|
return {
|
|
@@ -11,6 +12,7 @@ export class RatchetCliHandler extends AbstractRatchetCliHandler {
|
|
|
11
12
|
'files-to-static-class': FilesToStaticClass.runFromCliArgs,
|
|
12
13
|
'publish-ci-release-to-slack': PublishCiReleaseToSlack.runFromCliArgs,
|
|
13
14
|
'unique-file-rename': UniqueFileRename.runFromCliArgs,
|
|
15
|
+
'run-file-server': LocalFileServer.runLocalFileServerFromCliArgs,
|
|
14
16
|
};
|
|
15
17
|
}
|
|
16
18
|
fetchVersionInfo() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ratchet-cli-handler.js","sourceRoot":"","sources":["../../src/cli/ratchet-cli-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"ratchet-cli-handler.js","sourceRoot":"","sources":["../../src/cli/ratchet-cli-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qDAAqD,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAE/D,MAAM,OAAO,iBAAkB,SAAQ,yBAAyB;IAC9D,eAAe;QACb,OAAO;YACL,iCAAiC,EAAE,0BAA0B,CAAC,cAAc;YAC5E,uBAAuB,EAAE,kBAAkB,CAAC,cAAc;YAC1D,6BAA6B,EAAE,uBAAuB,CAAC,cAAc;YACrE,oBAAoB,EAAE,gBAAgB,CAAC,cAAc;YACrD,iBAAiB,EAAE,eAAe,CAAC,6BAA6B;SACjE,CAAC;IACJ,CAAC;IAED,gBAAgB;QACd,OAAO,mBAAmB,CAAC,gBAAgB,EAAE,CAAC;IAChD,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IncomingMessage, ServerResponse } from 'http';
|
|
2
|
+
export declare class LocalFileServer {
|
|
3
|
+
private port;
|
|
4
|
+
private https;
|
|
5
|
+
private fileRoot;
|
|
6
|
+
private server;
|
|
7
|
+
private urlRoot;
|
|
8
|
+
constructor(port?: number, https?: boolean, fileRoot?: string);
|
|
9
|
+
runServer(): Promise<boolean>;
|
|
10
|
+
requestHandler(request: IncomingMessage, response: ServerResponse): Promise<any>;
|
|
11
|
+
writeFolderListToResponse(rootpth: string, pth: string, response: ServerResponse): void;
|
|
12
|
+
static runLocalFileServerFromCliArgs(args: string[]): Promise<void>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { Logger } from '@bitblit/ratchet-common/logger/logger';
|
|
2
|
+
import { LoggerLevelName } from '@bitblit/ratchet-common/logger/logger-level-name';
|
|
3
|
+
import http from 'http';
|
|
4
|
+
import https from 'https';
|
|
5
|
+
import { LocalServerCert } from './local-server-cert.js';
|
|
6
|
+
import { EsmRatchet } from '@bitblit/ratchet-common/lang/esm-ratchet';
|
|
7
|
+
import path from 'path';
|
|
8
|
+
import fs from 'fs';
|
|
9
|
+
import mime from 'mime-types';
|
|
10
|
+
import { SimpleArgRatchet } from '@bitblit/ratchet-common/lang/simple-arg-ratchet';
|
|
11
|
+
import { ErrorRatchet } from '@bitblit/ratchet-common/lang/error-ratchet';
|
|
12
|
+
import { NumberRatchet } from '@bitblit/ratchet-common/lang/number-ratchet';
|
|
13
|
+
import { BooleanRatchet } from '@bitblit/ratchet-common/lang/boolean-ratchet';
|
|
14
|
+
export class LocalFileServer {
|
|
15
|
+
port;
|
|
16
|
+
https;
|
|
17
|
+
fileRoot;
|
|
18
|
+
server;
|
|
19
|
+
urlRoot;
|
|
20
|
+
constructor(port = 8888, https = false, fileRoot = EsmRatchet.fetchDirName(import.meta.url)) {
|
|
21
|
+
this.port = port;
|
|
22
|
+
this.https = https;
|
|
23
|
+
this.fileRoot = fileRoot;
|
|
24
|
+
if (fs.existsSync(fileRoot)) {
|
|
25
|
+
if (!fs.statSync(fileRoot).isDirectory()) {
|
|
26
|
+
throw ErrorRatchet.fErr('Cannot start with %s - it is not a directory', fileRoot);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
throw ErrorRatchet.fErr('Cannot start with %s - it does not exist', fileRoot);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
async runServer() {
|
|
34
|
+
return new Promise((res, rej) => {
|
|
35
|
+
try {
|
|
36
|
+
Logger.info('Starting file server on port %d at root %s', this.port, this.fileRoot);
|
|
37
|
+
if (this.https) {
|
|
38
|
+
const options = {
|
|
39
|
+
key: LocalServerCert.CLIENT_KEY_PEM,
|
|
40
|
+
cert: LocalServerCert.CLIENT_CERT_PEM,
|
|
41
|
+
};
|
|
42
|
+
Logger.info('Starting https server - THIS SERVER IS NOT SECURE! The KEYS are in the code! Testing Server Only - Use at your own risk!');
|
|
43
|
+
this.server = https.createServer(options, this.requestHandler.bind(this)).listen(this.port);
|
|
44
|
+
this.urlRoot = 'https://localhost:' + this.port;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
this.server = http.createServer(this.requestHandler.bind(this)).listen(this.port);
|
|
48
|
+
this.urlRoot = 'http://localhost:' + this.port;
|
|
49
|
+
}
|
|
50
|
+
Logger.info('File server is listening');
|
|
51
|
+
process.on('SIGINT', () => {
|
|
52
|
+
Logger.info('Caught SIGINT - shutting down test server...');
|
|
53
|
+
this.server.close();
|
|
54
|
+
res(true);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
catch (err) {
|
|
58
|
+
Logger.error('Local server failed : %s', err, err);
|
|
59
|
+
rej(err);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
async requestHandler(request, response) {
|
|
64
|
+
const reqPath = request.url.includes('?') ? request.url.substring(0, request.url.indexOf('?')) : request.url;
|
|
65
|
+
const filePath = path.join(this.fileRoot, reqPath);
|
|
66
|
+
if (fs.existsSync(filePath)) {
|
|
67
|
+
const stats = fs.statSync(filePath);
|
|
68
|
+
if (stats.isFile()) {
|
|
69
|
+
let mimetype = mime.contentType(filePath);
|
|
70
|
+
if (mimetype === 'video/mp2t') {
|
|
71
|
+
mimetype = 'text/x-typescript';
|
|
72
|
+
}
|
|
73
|
+
const buf = fs.readFileSync(filePath);
|
|
74
|
+
response.setHeader('Content-Type', mimetype);
|
|
75
|
+
response.statusCode = 200;
|
|
76
|
+
response.end(buf);
|
|
77
|
+
}
|
|
78
|
+
else if (stats.isDirectory()) {
|
|
79
|
+
this.writeFolderListToResponse(reqPath, filePath, response);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
response.statusCode = 404;
|
|
84
|
+
response.setHeader('Content-Type', 'text/html');
|
|
85
|
+
response.end(`<html><body>No such file: ${reqPath}</body></html>`);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
writeFolderListToResponse(rootpth, pth, response) {
|
|
89
|
+
response.statusCode = 200;
|
|
90
|
+
response.setHeader('Content-Type', 'text/html');
|
|
91
|
+
let body = '<html><body><h1>Files in ' + pth + '</h1><ul>';
|
|
92
|
+
if (rootpth !== '/') {
|
|
93
|
+
let sub = rootpth.substring(0, rootpth.lastIndexOf('/'));
|
|
94
|
+
sub = sub.length === 0 ? '/' : sub;
|
|
95
|
+
body += '<li><a href="' + sub + '">..</a></li>';
|
|
96
|
+
}
|
|
97
|
+
fs.readdirSync(pth).forEach((file) => {
|
|
98
|
+
let fullUrl = this.urlRoot + rootpth;
|
|
99
|
+
fullUrl += fullUrl.endsWith('/') ? file : '/' + file;
|
|
100
|
+
body += `<li><a href="${fullUrl}">${file}</a></li>`;
|
|
101
|
+
});
|
|
102
|
+
body += '</ul></body></html>';
|
|
103
|
+
response.end(body);
|
|
104
|
+
}
|
|
105
|
+
static async runLocalFileServerFromCliArgs(args) {
|
|
106
|
+
Logger.setLevel(LoggerLevelName.debug);
|
|
107
|
+
const pArgs = SimpleArgRatchet.parseSingleArgs(args, ['root', 'port', 'https']);
|
|
108
|
+
const port = pArgs['port'] ? NumberRatchet.safeNumber(pArgs['port']) : 8888;
|
|
109
|
+
const https = pArgs['https'] ? BooleanRatchet.parseBool(pArgs['https']) : false;
|
|
110
|
+
const root = pArgs['root'] ?? EsmRatchet.fetchDirName(import.meta.url);
|
|
111
|
+
const testServer = new LocalFileServer(port, https, root);
|
|
112
|
+
const res = await testServer.runServer();
|
|
113
|
+
Logger.info('Res was : %s', res);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=local-file-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-file-server.js","sourceRoot":"","sources":["../../src/http/local-file-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,IAAiD,MAAM,MAAM,CAAC;AACrE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACtE,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,YAAY,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAM9E,MAAM,OAAO,eAAe;IAKhB;IACA;IACA;IANF,MAAM,CAAS;IACf,OAAO,CAAS;IAExB,YACU,OAAe,IAAI,EACnB,QAAiB,KAAK,EACtB,WAAmB,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAF3D,SAAI,GAAJ,IAAI,CAAe;QACnB,UAAK,GAAL,KAAK,CAAiB;QACtB,aAAQ,GAAR,QAAQ,CAAmD;QAEnE,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzC,MAAM,YAAY,CAAC,IAAI,CAAC,8CAA8C,EAAE,QAAQ,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,IAAI,CAAC,0CAA0C,EAAE,QAAQ,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,OAAO,CAAU,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACvC,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAEpF,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,eAAe,CAAC,cAAc;wBACnC,IAAI,EAAE,eAAe,CAAC,eAAe;qBACtC,CAAC;oBACF,MAAM,CAAC,IAAI,CACT,4HAA4H,CAC7H,CAAC;oBACF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC5F,IAAI,CAAC,OAAO,GAAG,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAClF,IAAI,CAAC,OAAO,GAAG,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC;gBACjD,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBAGxC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;oBACxB,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;oBAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;oBACpB,GAAG,CAAC,IAAI,CAAC,CAAC;gBACZ,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnD,GAAG,CAAC,GAAG,CAAC,CAAC;YACX,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAwB,EAAE,QAAwB;QACrE,MAAM,OAAO,GAAW,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;QACrH,MAAM,QAAQ,GAAW,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3D,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAa,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBACnB,IAAI,QAAQ,GAAW,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAClD,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;oBAE9B,QAAQ,GAAG,mBAAmB,CAAC;gBACjC,CAAC;gBACD,MAAM,GAAG,GAAW,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBAC9C,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;gBAC7C,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC;gBAC1B,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;iBAAM,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC/B,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC;YAC1B,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;YAChD,QAAQ,CAAC,GAAG,CAAC,6BAA6B,OAAO,gBAAgB,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAEM,yBAAyB,CAAC,OAAe,EAAE,GAAW,EAAE,QAAwB;QACrF,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC;QAC1B,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAEhD,IAAI,IAAI,GAAW,2BAA2B,GAAG,GAAG,GAAG,WAAW,CAAC;QAEnE,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;YACpB,IAAI,GAAG,GAAW,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;YACjE,GAAG,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACnC,IAAI,IAAI,eAAe,GAAG,GAAG,GAAG,eAAe,CAAC;QAClD,CAAC;QAED,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACnC,IAAI,OAAO,GAAW,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;YAC7C,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC;YACrD,IAAI,IAAI,gBAAgB,OAAO,KAAK,IAAI,WAAW,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,qBAAqB,CAAC;QAE9B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,IAAc;QAC9D,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAA2B,gBAAgB,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QACxG,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpF,MAAM,KAAK,GAAY,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACzF,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/E,MAAM,UAAU,GAAoB,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3E,MAAM,GAAG,GAAY,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;CACF"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export class LocalServerCert {
|
|
2
|
+
static CLIENT_CSR = '-----BEGIN CERTIFICATE REQUEST-----\n' +
|
|
3
|
+
'MIICwjCCAaoCAQAwfTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAk5WMRIwEAYDVQQH\n' +
|
|
4
|
+
'DAlMYXMgVmVnYXMxDjAMBgNVBAoMBVBsdW1hMRkwFwYDVQQDDBB3d3cuaGV5cGx1\n' +
|
|
5
|
+
'bWEuY29tMSIwIAYJKoZIhvcNAQkBFhNjd2Vpc3NAaGV5cGx1bWEuY29tMIIBIjAN\n' +
|
|
6
|
+
'BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2Gh1SD1VciosMgh3MHF7IyKgNTu2\n' +
|
|
7
|
+
'DjGMoORJV4VNKzrjp7UOdKnD3so0Xx3A6bUTYAL8Vtc+EG+8LZjUpBIOwuKzzbVo\n' +
|
|
8
|
+
't16+yt3YXBxzTZPU9g7sFsXx42RoNispIFq0enRtJrq/zq8izZxUZdGn9XD2DidL\n' +
|
|
9
|
+
'AedtRGjb8cmRuP6wmMRPBOZjct4ZjsSiTyhPa6kpt8V7Pa7vm0HGxcHiDAGp6zoy\n' +
|
|
10
|
+
'GHfBdsqeBdGbkGT1ZPfs9kpbtXPm82Sckd0p3oY3fJn0rZqpTAb8qcdGcnheYtqX\n' +
|
|
11
|
+
'FSjX7EoGsIXAK+oj25MvtfoZFMk4rjQ7FkHbgGk0iMHLN0kNjJzN0ysN/wIDAQAB\n' +
|
|
12
|
+
'oAAwDQYJKoZIhvcNAQELBQADggEBAMbpCdoqmY9crolsh5y9YtYDLRIwisTjTjU1\n' +
|
|
13
|
+
'Xzp1MurSzGIdHLokU+fdVWTIzn3uOu24yTQouTUUoYWHT4YgN4wELdDydfNxWvyl\n' +
|
|
14
|
+
'r34QV5B0FZbRV2sNz/3C1UX/Uor4af1Yv+QYlGHspgj+WIAEkNQ3xQIo9+I/miR+\n' +
|
|
15
|
+
'2VSlydtyGvmzipgv6CAwOsrQsIw7DkpVmnqIjgjPSXlGCgeKM9S1D/CwNwZnVA/e\n' +
|
|
16
|
+
'DF1SzDkJKl60/n+xZGYl/OtkH9vB8T6fHqk0iMxXuVUxI137fwEJwIQB5L6hFyJa\n' +
|
|
17
|
+
'L4hbjq7Cull4qOhXDby+fNJT9Ic7VCosJBXBHxHPsEnY2+TZAJo=\n' +
|
|
18
|
+
'-----END CERTIFICATE REQUEST-----\n';
|
|
19
|
+
static CLIENT_CERT_PEM = '-----BEGIN CERTIFICATE-----\n' +
|
|
20
|
+
'MIIDgTCCAmkCFDKASki0c6HD75dCdIZZ3vXq4eQeMA0GCSqGSIb3DQEBCwUAMH0x\n' +
|
|
21
|
+
'CzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOVjESMBAGA1UEBwwJTGFzIFZlZ2FzMQ4w\n' +
|
|
22
|
+
'DAYDVQQKDAVQbHVtYTEZMBcGA1UEAwwQd3d3LmhleXBsdW1hLmNvbTEiMCAGCSqG\n' +
|
|
23
|
+
'SIb3DQEJARYTY3dlaXNzQGhleXBsdW1hLmNvbTAeFw0yMzAxMjMxMDU2MDlaFw0y\n' +
|
|
24
|
+
'MzAyMjIxMDU2MDlaMH0xCzAJBgNVBAYTAlVTMQswCQYDVQQIDAJOVjESMBAGA1UE\n' +
|
|
25
|
+
'BwwJTGFzIFZlZ2FzMQ4wDAYDVQQKDAVQbHVtYTEZMBcGA1UEAwwQd3d3LmhleXBs\n' +
|
|
26
|
+
'dW1hLmNvbTEiMCAGCSqGSIb3DQEJARYTY3dlaXNzQGhleXBsdW1hLmNvbTCCASIw\n' +
|
|
27
|
+
'DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANhodUg9VXIqLDIIdzBxeyMioDU7\n' +
|
|
28
|
+
'tg4xjKDkSVeFTSs646e1DnSpw97KNF8dwOm1E2AC/FbXPhBvvC2Y1KQSDsLis821\n' +
|
|
29
|
+
'aLdevsrd2Fwcc02T1PYO7BbF8eNkaDYrKSBatHp0bSa6v86vIs2cVGXRp/Vw9g4n\n' +
|
|
30
|
+
'SwHnbURo2/HJkbj+sJjETwTmY3LeGY7Eok8oT2upKbfFez2u75tBxsXB4gwBqes6\n' +
|
|
31
|
+
'Mhh3wXbKngXRm5Bk9WT37PZKW7Vz5vNknJHdKd6GN3yZ9K2aqUwG/KnHRnJ4XmLa\n' +
|
|
32
|
+
'lxUo1+xKBrCFwCvqI9uTL7X6GRTJOK40OxZB24BpNIjByzdJDYyczdMrDf8CAwEA\n' +
|
|
33
|
+
'ATANBgkqhkiG9w0BAQsFAAOCAQEAWQG2tvWY+cyeeumD/7WKTBNaBjg4EAe+1mnZ\n' +
|
|
34
|
+
'KQsg0gGUL0kWsqCkg4xEqIojkKMjs62uS6ballEyWawygYd91OaJLFopNu+Dxk4N\n' +
|
|
35
|
+
'5GWKpriPr02vI6rMUZNtCmsooukEShr5ufFWb4WLnk4NXQlBCXTHbmIf7Z82UOMw\n' +
|
|
36
|
+
'ONZdZyKLqlA0Z6SWYBp2gO32puww6dUU0DAKkIIx1SN8i8UKvowRAy13bugPtyau\n' +
|
|
37
|
+
'NknlE3J1+Gab1hHCMRdKFZPKy8nc7LWUNZhgKdY82IC/k5FSW32Wibfog1TwWRJR\n' +
|
|
38
|
+
'ceTW4EN4P7ZmdHGMYkIplc7Qcx0mraY2HRqmjA33j3cNcY5UsQ==\n' +
|
|
39
|
+
'-----END CERTIFICATE-----\n';
|
|
40
|
+
static CLIENT_KEY_PEM = '-----BEGIN RSA PRIVATE KEY-----\n' +
|
|
41
|
+
'MIIEogIBAAKCAQEA2Gh1SD1VciosMgh3MHF7IyKgNTu2DjGMoORJV4VNKzrjp7UO\n' +
|
|
42
|
+
'dKnD3so0Xx3A6bUTYAL8Vtc+EG+8LZjUpBIOwuKzzbVot16+yt3YXBxzTZPU9g7s\n' +
|
|
43
|
+
'FsXx42RoNispIFq0enRtJrq/zq8izZxUZdGn9XD2DidLAedtRGjb8cmRuP6wmMRP\n' +
|
|
44
|
+
'BOZjct4ZjsSiTyhPa6kpt8V7Pa7vm0HGxcHiDAGp6zoyGHfBdsqeBdGbkGT1ZPfs\n' +
|
|
45
|
+
'9kpbtXPm82Sckd0p3oY3fJn0rZqpTAb8qcdGcnheYtqXFSjX7EoGsIXAK+oj25Mv\n' +
|
|
46
|
+
'tfoZFMk4rjQ7FkHbgGk0iMHLN0kNjJzN0ysN/wIDAQABAoIBAHzZ9yAQUqWk8w6C\n' +
|
|
47
|
+
'l9EZB4PDzE4p/uS9bXa9fhrCSz0vonv1FzvzXY/BdOmTTuMGlwEDd/XaBHKTJCvi\n' +
|
|
48
|
+
'SnvF90I0bKu3h4yTWtvLlbG+sD8HlQvInCifVuhr2zu1Nur1qb4kQXzgrRxfKmMZ\n' +
|
|
49
|
+
'WA/OH2qZGzwbK0kT7ZRUMuCR/EKPjYw9KP6pMF8nxXUjSm+g3YwgIB8kiPeDCV6C\n' +
|
|
50
|
+
'0/Ecpv5qMqcoYTg9f9KyBNmY3U5ZgbYrdwTDSMrrTwZKSHhTktdF0SEfYrVGLLEU\n' +
|
|
51
|
+
'vfQQlQmfcc5Z3+cz99BH1BeTNaCPtEaXjgvQYwkWlSxnY6QUE0p1qq9Jy0xaVEx9\n' +
|
|
52
|
+
'8LReuHECgYEA/hhJ6b2XV1WLtszFO8MRMzlyMuvBc3Ot0dsuJ7r1W3WOF5X7poSU\n' +
|
|
53
|
+
'xG0xe+n6Kubmi3tGhzS7BN4TEO9/SSE2gIQTk9zwAMuf+mZJQcG0Qz1iftVp5nnM\n' +
|
|
54
|
+
'zi205vBLLq2Pmk7wbhTIBO8J190Dli1/fuvk/cmJrA60Ys8v3y4e820CgYEA2gfV\n' +
|
|
55
|
+
'Q3eHRxk3wl4On71mMovY7lMx6+S8K8hBGo26A5FIu6N6v2jxKnQ5YphwFgjtkxgs\n' +
|
|
56
|
+
'LspAXmxRwFMapZP3d/nFeBhlOzNly7tqIdDOeNqEcUzEx7pwGXpWGZEHOYs1fvU+\n' +
|
|
57
|
+
'gU/1N8q9DBvr0B+XGeYR3NNdljajo6pwWZ6ed5sCgYAGmkz5ZPLU0yVBR8rsRaJh\n' +
|
|
58
|
+
'yWFdT2EEhgIDTQXDBImxqblahYw3hIR1Ij1B8g+NI9jj0P1BMC6X7sliDEcreFB5\n' +
|
|
59
|
+
'QHVdx0T5UFFE6XmH2ue7Q5IWp6cL1ShsRyXHRoE9okb0BI8c3S9haXDBCj44ndAN\n' +
|
|
60
|
+
'VUXrDlykevFXC/k7fHBTdQKBgHjIshpoEycOD1e753oS4JTL6GdO6271DlFq5LYj\n' +
|
|
61
|
+
'IZNsXtCkJhH3vvJ35Hp8XEu4snQ0hfV90d79PuS+pRppOETct8pqKVp8hL4ymv8U\n' +
|
|
62
|
+
'v+0vkQN7NeA3pnZW0W/kag400nP8xJ26f+xiggw9Q4vOlFSioe6loUjgCBNZDlh3\n' +
|
|
63
|
+
'iO5VAoGASXkcv39B9/8FuWQ7rwhXHEubxOOwZZzSBU1wtLj2qHyPGoeU9ZpsmdrL\n' +
|
|
64
|
+
'XS9w1Jy0e49qmbBjzTqAEBw2nn/JVMFHyI/s//JVF7Q9GfBZAF5XF6mJ24yzTKgF\n' +
|
|
65
|
+
'kSoO5T+7s8NXi0eAIBe4CkWCBX7kWEZtu46GuVhsrC3oEazuLOs=\n' +
|
|
66
|
+
'-----END RSA PRIVATE KEY-----\n';
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=local-server-cert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-server-cert.js","sourceRoot":"","sources":["../../src/http/local-server-cert.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,eAAe;IACnB,MAAM,CAAU,UAAU,GAC/B,uCAAuC;QACvC,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,wDAAwD;QACxD,qCAAqC,CAAC;IAEjC,MAAM,CAAU,eAAe,GACpC,+BAA+B;QAC/B,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,wDAAwD;QACxD,6BAA6B,CAAC;IAEzB,MAAM,CAAU,cAAc,GACnC,mCAAmC;QACnC,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,wDAAwD;QACxD,iCAAiC,CAAC"}
|
|
@@ -6,11 +6,11 @@ import zlib from 'zlib';
|
|
|
6
6
|
import { Readable } from 'stream';
|
|
7
7
|
import warc from 'warc';
|
|
8
8
|
import * as cheerio from 'cheerio';
|
|
9
|
-
import { ErrorRatchet } from
|
|
10
|
-
import { NodeStreamRatchet } from
|
|
11
|
-
import { Logger } from
|
|
12
|
-
import { PromiseRatchet } from
|
|
13
|
-
import { StopWatch } from
|
|
9
|
+
import { ErrorRatchet } from '@bitblit/ratchet-common/lang/error-ratchet';
|
|
10
|
+
import { NodeStreamRatchet } from '../../stream/node-stream-ratchet';
|
|
11
|
+
import { Logger } from '@bitblit/ratchet-common/logger/logger';
|
|
12
|
+
import { PromiseRatchet } from '@bitblit/ratchet-common/lang/promise-ratchet';
|
|
13
|
+
import { StopWatch } from '@bitblit/ratchet-common/lang/stop-watch';
|
|
14
14
|
export class CommonCrawlService {
|
|
15
15
|
static COMMON_CRAWL_URL = 'https://index.commoncrawl.org/';
|
|
16
16
|
static CURRENT_CRAWL = 'CC-MAIN-2024-33';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitblit/ratchet-node-only",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.531-alpha",
|
|
4
4
|
"description": "Ratchet tools for use on node-only",
|
|
5
5
|
"note-on-side-effects": "Technically the entries in 'bin' below might be side effects, but they are called explicitly",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -54,21 +54,26 @@
|
|
|
54
54
|
"node": ">=14.18"
|
|
55
55
|
},
|
|
56
56
|
"license": "Apache-2.0",
|
|
57
|
+
"scripts": {
|
|
58
|
+
"run-file-server": "node bin/cli.js run-file-server --https true"
|
|
59
|
+
},
|
|
57
60
|
"dependencies": {
|
|
58
|
-
"@bitblit/ratchet-common": "5.0.
|
|
61
|
+
"@bitblit/ratchet-common": "5.0.531-alpha"
|
|
59
62
|
},
|
|
60
63
|
"optionalDependencies": {
|
|
61
64
|
"cheerio": "1.0.0",
|
|
62
65
|
"csv": "6.3.10",
|
|
63
66
|
"jsonwebtoken": "9.0.2",
|
|
67
|
+
"mime-types": "3.0.0",
|
|
64
68
|
"rxjs": "7.8.1",
|
|
65
69
|
"warc": "1.0.1"
|
|
66
70
|
},
|
|
67
71
|
"peerDependencies": {
|
|
68
|
-
"@bitblit/ratchet-common": "5.0.
|
|
72
|
+
"@bitblit/ratchet-common": "5.0.531-alpha",
|
|
69
73
|
"cheerio": "^1.0.0",
|
|
70
74
|
"csv": "^6.3.10",
|
|
71
75
|
"jsonwebtoken": "^9.0.2",
|
|
76
|
+
"mime-types": "3.0.0",
|
|
72
77
|
"rxjs": "^7.8.1",
|
|
73
78
|
"warc": "^1.0.1"
|
|
74
79
|
},
|
|
@@ -82,6 +87,9 @@
|
|
|
82
87
|
"jsonwebtoken": {
|
|
83
88
|
"optional": true
|
|
84
89
|
},
|
|
90
|
+
"mime-types": {
|
|
91
|
+
"optional": true
|
|
92
|
+
},
|
|
85
93
|
"rxjs": {
|
|
86
94
|
"optional": true
|
|
87
95
|
},
|