@warp-drive/holodeck 0.0.0-alpha.14 → 0.0.0-alpha.141
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/LICENSE.md +19 -5
- package/README.md +159 -8
- package/dist/index.js +11 -3
- package/dist/index.js.map +1 -1
- package/dist/mock.js.map +1 -1
- package/logos/NCC-1701-a-gold.svg +4 -0
- package/logos/NCC-1701-a-gold_100.svg +1 -0
- package/logos/NCC-1701-a-gold_base-64.txt +1 -0
- package/logos/README.md +4 -0
- package/logos/docs-badge.svg +2 -0
- package/logos/ember-data-logo-dark.svg +12 -0
- package/logos/ember-data-logo-light.svg +12 -0
- package/logos/github-header.svg +444 -0
- package/logos/social1.png +0 -0
- package/logos/social2.png +0 -0
- package/logos/warp-drive-logo-dark.svg +4 -0
- package/logos/warp-drive-logo-gold.svg +4 -0
- package/package.json +24 -41
- package/server/ensure-cert.js +63 -0
- package/server/index.js +314 -103
- package/server/start-node.js +3 -0
- package/server/tsconfig.json +12 -0
- package/server/worker.js +3 -0
- package/bin/cmd/_start.js +0 -3
- package/bin/cmd/_stop.js +0 -3
- package/bin/cmd/pm2.js +0 -38
- package/bin/cmd/run.js +0 -50
- package/bin/cmd/spawn.js +0 -40
- package/bin/holodeck.js +0 -63
- package/dist/index.d.ts +0 -12
- package/dist/index.d.ts.map +0 -1
- package/dist/mock.d.ts +0 -37
- package/dist/mock.d.ts.map +0 -1
- package/server/CERT.md +0 -3
- package/server/localhost-key.pem +0 -28
- package/server/localhost.pem +0 -27
- /package/{NCC-1701-a-blue.svg → logos/NCC-1701-a-blue.svg} +0 -0
- /package/{NCC-1701-a.svg → logos/NCC-1701-a.svg} +0 -0
package/bin/holodeck.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
#!/bin/sh -
|
|
2
|
-
':'; /*-
|
|
3
|
-
test1=$(bun --version 2>&1) && exec bun "$0" "$@"
|
|
4
|
-
test2=$(node --version 2>&1) && exec node "$0" "$@"
|
|
5
|
-
exec printf '%s\n' "$test1" "$test2" 1>&2
|
|
6
|
-
*/
|
|
7
|
-
/* eslint-disable no-console */
|
|
8
|
-
/* global Bun, globalThis */
|
|
9
|
-
|
|
10
|
-
import chalk from 'chalk';
|
|
11
|
-
import { spawn } from './cmd/spawn.js';
|
|
12
|
-
|
|
13
|
-
const isBun = typeof Bun !== 'undefined';
|
|
14
|
-
const { process } = globalThis;
|
|
15
|
-
|
|
16
|
-
const args = isBun ? Bun.argv.slice(2) : process.argv.slice(2);
|
|
17
|
-
const command = args.shift();
|
|
18
|
-
|
|
19
|
-
const BUN_SUPPORTS_PM2 = false;
|
|
20
|
-
const BUN_SUPPORTS_HTTP2 = false;
|
|
21
|
-
|
|
22
|
-
if (command === 'run') {
|
|
23
|
-
console.log(
|
|
24
|
-
chalk.grey(
|
|
25
|
-
`\n\t@${chalk.greenBright('warp-drive')}/${chalk.magentaBright(
|
|
26
|
-
'holodeck'
|
|
27
|
-
)} 🌅\n\t=================================}\n`
|
|
28
|
-
) +
|
|
29
|
-
chalk.grey(
|
|
30
|
-
`\n\tHolodeck Access Granted\n\t\tprogram: ${chalk.green(args.join(' '))}\n\t\tengine: ${chalk.cyan(
|
|
31
|
-
isBun ? 'bun@' + Bun.version : 'node'
|
|
32
|
-
)}`
|
|
33
|
-
)
|
|
34
|
-
);
|
|
35
|
-
const run = await import('./cmd/run.js');
|
|
36
|
-
await run.default(args);
|
|
37
|
-
} else if (command === 'start') {
|
|
38
|
-
console.log(chalk.grey(`\n\tStarting Subroutines (mode:${chalk.cyan(isBun ? 'bun' : 'node')})`));
|
|
39
|
-
|
|
40
|
-
if (!isBun || (BUN_SUPPORTS_HTTP2 && BUN_SUPPORTS_PM2)) {
|
|
41
|
-
const pm2 = await import('./cmd/pm2.js');
|
|
42
|
-
await pm2.default('start', args);
|
|
43
|
-
} else {
|
|
44
|
-
console.log(`Downgrading to node to run pm2 due lack of http/2 or pm2 support in Bun`);
|
|
45
|
-
const __dirname = import.meta.dir;
|
|
46
|
-
const programPath = __dirname + '/cmd/_start.js';
|
|
47
|
-
await spawn(['node', programPath, ...args]);
|
|
48
|
-
}
|
|
49
|
-
} else if (command === 'end') {
|
|
50
|
-
console.log(chalk.grey(`\n\tEnding Subroutines (mode:${chalk.cyan(isBun ? 'bun' : 'node')})`));
|
|
51
|
-
|
|
52
|
-
if (!isBun || (BUN_SUPPORTS_HTTP2 && BUN_SUPPORTS_PM2)) {
|
|
53
|
-
const pm2 = await import('./cmd/pm2.js');
|
|
54
|
-
await pm2.default('stop', args);
|
|
55
|
-
} else {
|
|
56
|
-
console.log(`Downgrading to node to run pm2 due lack of http/2 or pm2 support in Bun`);
|
|
57
|
-
const __dirname = import.meta.dir;
|
|
58
|
-
const programPath = __dirname + '/cmd/_stop.js';
|
|
59
|
-
await spawn(['node', programPath, ...args]);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
console.log(`\n\t${chalk.grey('The Computer has ended the program')}\n`);
|
|
63
|
-
}
|
package/dist/index.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { Handler, NextFn, RequestContext, StructuredDataDocument } from '@ember-data/request';
|
|
2
|
-
import type { ScaffoldGenerator } from './mock';
|
|
3
|
-
export declare function setTestId(context: object, str: string | null): void;
|
|
4
|
-
export declare function setIsRecording(value: boolean): void;
|
|
5
|
-
export declare function getIsRecording(): boolean;
|
|
6
|
-
export declare class MockServerHandler implements Handler {
|
|
7
|
-
owner: object;
|
|
8
|
-
constructor(owner: object);
|
|
9
|
-
request<T>(context: RequestContext, next: NextFn<T>): Promise<StructuredDataDocument<T>>;
|
|
10
|
-
}
|
|
11
|
-
export declare function mock(owner: object, generate: ScaffoldGenerator, isRecording?: boolean): Promise<void>;
|
|
12
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../client/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAe,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAEhH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAIhD,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,QAS5D;AAGD,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,QAE5C;AACD,wBAAgB,cAAc,YAE7B;AAED,qBAAa,iBAAkB,YAAW,OAAO;IACvC,KAAK,EAAE,MAAM,CAAC;gBACV,KAAK,EAAE,MAAM;IAGnB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;CA6B/F;AAED,wBAAsB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,OAAO,iBAgB3F"}
|
package/dist/mock.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
export interface Scaffold {
|
|
2
|
-
status: number;
|
|
3
|
-
statusText?: string;
|
|
4
|
-
headers: Record<string, string>;
|
|
5
|
-
body: Record<string, string> | string | null;
|
|
6
|
-
method: string;
|
|
7
|
-
url: string;
|
|
8
|
-
response: Record<string, unknown>;
|
|
9
|
-
}
|
|
10
|
-
export type ScaffoldGenerator = () => Scaffold;
|
|
11
|
-
export type ResponseGenerator = () => Record<string, unknown>;
|
|
12
|
-
/**
|
|
13
|
-
* Sets up Mocking for a GET request on the mock server
|
|
14
|
-
* for the supplied url.
|
|
15
|
-
*
|
|
16
|
-
* The response body is generated by the supplied response function.
|
|
17
|
-
*
|
|
18
|
-
* Available options:
|
|
19
|
-
* - status: the status code to return (default: 200)
|
|
20
|
-
* - headers: the headers to return (default: {})
|
|
21
|
-
* - body: the body to match against for the request (default: null)
|
|
22
|
-
* - RECORD: whether to record the request (default: false)
|
|
23
|
-
*
|
|
24
|
-
* @param url the url to mock, relative to the mock server host (e.g. `users/1`)
|
|
25
|
-
* @param response a function which generates the response to return
|
|
26
|
-
* @param options status, headers for the response, body to match against for the request, and whether to record the request
|
|
27
|
-
* @return
|
|
28
|
-
*/
|
|
29
|
-
export declare function GET(owner: object, url: string, response: ResponseGenerator, options?: Partial<Omit<Scaffold, 'response' | 'url' | 'method'>> & {
|
|
30
|
-
RECORD?: boolean;
|
|
31
|
-
}): Promise<void>;
|
|
32
|
-
export declare function POST(): void;
|
|
33
|
-
export declare function PUT(): void;
|
|
34
|
-
export declare function PATCH(): void;
|
|
35
|
-
export declare function DELETE(): void;
|
|
36
|
-
export declare function QUERY(): void;
|
|
37
|
-
//# sourceMappingURL=mock.d.ts.map
|
package/dist/mock.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../client/mock.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,QAAQ,CAAC;AAC/C,MAAM,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE9D;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,GAAG,CACjB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GACtF,OAAO,CAAC,IAAI,CAAC,CAcf;AACD,wBAAgB,IAAI,SAAK;AACzB,wBAAgB,GAAG,SAAK;AACxB,wBAAgB,KAAK,SAAK;AAC1B,wBAAgB,MAAM,SAAK;AAC3B,wBAAgB,KAAK,SAAK"}
|
package/server/CERT.md
DELETED
package/server/localhost-key.pem
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
-----BEGIN PRIVATE KEY-----
|
|
2
|
-
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCz8yulPBPYYZH+
|
|
3
|
-
M+kBVOCSj4EmN7Texxd/DXjOJTTpDI8aophZhfaXZSnTFhLxTEuAUVboU7yGR/JJ
|
|
4
|
-
JzL1nTVujR/gjJFrc4PVDeLzWMTJsTQcagdtku9suKC6M74/GlTI4yQC5p+IKRuv
|
|
5
|
-
ZisQhacyjpj5s4RoBR2n2aOscIncYtuKTJ570CIt9SFxEaV/WW3PlAG5LGEuqqJR
|
|
6
|
-
MwFTXz10IaKOVc/sxV2sYVS1tARydAx27IHKf23FilAu30nnc0ipGZNqFvHNvNed
|
|
7
|
-
Ggye+aaCh0WtX99HXs+JKPTfvV4sCDb7KIZq3WjRk7PAaSr6e999kvHuhZpXDUJL
|
|
8
|
-
Ynu0FYBZAgMBAAECggEBAJXcluWWAeT7ZO0x6AOe3yPPdTwRuoSpg4zg+FGdtNG9
|
|
9
|
-
DtScwooTwchVjJ5pzL69zkb/9oOncOLXuhRoG81m7l+yEfEcv+KfohPl67LDo6dg
|
|
10
|
-
90gOmT8M1m5R2DEZ9H9y+1cNqyjrTcLEkXTifkzVMegtz4JsmYFTeV4XJ3LtijJJ
|
|
11
|
-
j0b8X4d22DiNtQrx2zrcUF64UJSAxdRHW3nYlnjVxiXjUCO6TcrZvA+rqYNhX+QJ
|
|
12
|
-
lX9EwyVOdBtGsNMMECviFgrr4DPxkh77WptO6suIZ1X//UOAYEQp7rOsAf6sXRkp
|
|
13
|
-
seVp/TvhbjDk/XuRiv8zLaf0W4pFwt90XsCmkEzsH10CgYEA6beK8o2r5CA+mTJO
|
|
14
|
-
fb4MyqKhv6v5RXfG69IXf01gvARcXwjOMD5cV38UsI7YEw9RCXGRXzeH3MvW28aD
|
|
15
|
-
ADJYd+516vb0VwZwFYrUVKuBcjvvShPCk9HtOCqCEbRPBPJE7/mODHmL8u+61Rq/
|
|
16
|
-
l1n6GmYGLmJy2HaVDDnWi9jb0I8CgYEAxRtOKrkkdt36iUYlQ7wkWtDcN1gYVpuB
|
|
17
|
-
e2G/6BmDwIBTX/WoVlJrL9S3hFTjFc+0UJBpmmfFGFtp0tZFtjY7SaTj2whK4ZU7
|
|
18
|
-
VI90CUgExdsjf7yw+OeCgqdkiuRoFn39tL0h/pM4UcAKz9UB9yxvrfQRCXD3O6w2
|
|
19
|
-
TzbEv3VAxJcCgYBlnHvXeoqqEu7EUh/YAWG0U8K4/37PmgStEFlQ6oZNGCRE2SIz
|
|
20
|
-
zVj+XWzUWjZNCxKzZWHLoOv7rc/LG2JnGnxmIBG6RwXyNAVVCFfKPAp6bN5bOX4W
|
|
21
|
-
IGXfTnPgWKEmSGJ6ZuhAOjQDOgDjl86GcgMPqR202u6Nd/jTKO5DPNRMtwKBgHNu
|
|
22
|
-
JjzG6B/kp5A00CX2zKOSpSSUJsyxjQagnC5kos/dVvZfexHyemsse7y3qbVgSgzU
|
|
23
|
-
RcPy+W3mOvcKHRE0eUwLkJT5KkEpj/FZgW7eCk2EpClua4WYrsmtFihw0rQ5XJa4
|
|
24
|
-
HGxl8xmNCcfkyp3iHBUXVdLdoSwFElkZjedB14hJAoGAeeX+Rg4Y5a9/GNgxgsBU
|
|
25
|
-
o9MM/6qmjAJAb4iln9jHaEYZBd7EyogYuzqiKlASutIovGHj+P0RH3kvVlmVt1g/
|
|
26
|
-
45zmwVVrobCi5dqGQ1oPYvZpGCi85aYciTlfuH0mJqouXEkcO8kZQbc8ylR7WZS/
|
|
27
|
-
U9Mf1mB0yw8kupDasZ+uJ5c=
|
|
28
|
-
-----END PRIVATE KEY-----
|
package/server/localhost.pem
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
|
2
|
-
MIIEfzCCAuegAwIBAgIQWxpBRFaerCiZ6Gh6L9VAqjANBgkqhkiG9w0BAQsFADCB
|
|
3
|
-
qzEeMBwGA1UEChMVbWtjZXJ0IGRldmVsb3BtZW50IENBMUAwPgYDVQQLDDdjdGhv
|
|
4
|
-
YnVybkBDaHJpcy1UaG9idXJuLUs1MFEzMEQ3NjEubG9jYWwgKENocmlzIFRob2J1
|
|
5
|
-
cm4pMUcwRQYDVQQDDD5ta2NlcnQgY3Rob2J1cm5AQ2hyaXMtVGhvYnVybi1LNTBR
|
|
6
|
-
MzBENzYxLmxvY2FsIChDaHJpcyBUaG9idXJuKTAeFw0yMzEwMDkwOTE1MDZaFw0y
|
|
7
|
-
NjAxMDkxMDE1MDZaMGsxJzAlBgNVBAoTHm1rY2VydCBkZXZlbG9wbWVudCBjZXJ0
|
|
8
|
-
aWZpY2F0ZTFAMD4GA1UECww3Y3Rob2J1cm5AQ2hyaXMtVGhvYnVybi1LNTBRMzBE
|
|
9
|
-
NzYxLmxvY2FsIChDaHJpcyBUaG9idXJuKTCCASIwDQYJKoZIhvcNAQEBBQADggEP
|
|
10
|
-
ADCCAQoCggEBALPzK6U8E9hhkf4z6QFU4JKPgSY3tN7HF38NeM4lNOkMjxqimFmF
|
|
11
|
-
9pdlKdMWEvFMS4BRVuhTvIZH8kknMvWdNW6NH+CMkWtzg9UN4vNYxMmxNBxqB22S
|
|
12
|
-
72y4oLozvj8aVMjjJALmn4gpG69mKxCFpzKOmPmzhGgFHafZo6xwidxi24pMnnvQ
|
|
13
|
-
Ii31IXERpX9Zbc+UAbksYS6qolEzAVNfPXQhoo5Vz+zFXaxhVLW0BHJ0DHbsgcp/
|
|
14
|
-
bcWKUC7fSedzSKkZk2oW8c28150aDJ75poKHRa1f30dez4ko9N+9XiwINvsohmrd
|
|
15
|
-
aNGTs8BpKvp7332S8e6FmlcNQktie7QVgFkCAwEAAaNeMFwwDgYDVR0PAQH/BAQD
|
|
16
|
-
AgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMBMB8GA1UdIwQYMBaAFPvg1+9/Kqq1KAXH
|
|
17
|
-
lhQsaJhmqOd1MBQGA1UdEQQNMAuCCWxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOC
|
|
18
|
-
AYEAx2seTuq9JRa2sdio17IJO+9ns35zl8TymSIV9U6YGgiW3m/bsfmZic6Kzn9R
|
|
19
|
-
+lj6rBAGIefrQEmfF3RGL3n7FOW0gwSXSeKmG1r7TBXYrkKF9i41C/VRUZ8iKZfl
|
|
20
|
-
ja5P9BFXWUeMQDLv6p3X/ynZMsw1HOIy2r5OJoxLjfN4NvnAnQxbMtVSsCHMesj1
|
|
21
|
-
U44mT09CeGTLTsbqFNZ7TX/Gm1I4ic7z8PGFpWDgliNARNH5Yf6Quh/ryY+jXc4F
|
|
22
|
-
yoC3JwhmRfi4vNCP6wmUzpLmS+psJkCjU1SnUmzjX219F22Y5vFUJrWhQq+qs/yx
|
|
23
|
-
t9PPlf+dt2MfoPsNIE096E9z8yBWcyggCQvyH0kv+a7HKOOHORtd8SuCNGtTEl4Q
|
|
24
|
-
Q8eheMGoIa4dsiMyJeWUOtxdInPkZNBxjQLkC2wCqSuN5+3iTuFfniRSoamqSVYo
|
|
25
|
-
/TtgXWM5tTUOHHisy+u9HR6fZpSlvplYIjVcmK5bObIlRx7MCOFiyXjJf7Xjv1ji
|
|
26
|
-
6JQn
|
|
27
|
-
-----END CERTIFICATE-----
|
|
File without changes
|
|
File without changes
|