@openapi-typescript-infra/service 4.26.0 → 4.27.1
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/build/bin/start-service.js +2 -2
- package/build/bin/start-service.js.map +1 -1
- package/build/bootstrap.d.ts +5 -0
- package/build/bootstrap.js +1 -1
- package/build/bootstrap.js.map +1 -1
- package/build/development/repl.d.ts +16 -1
- package/build/development/repl.js +61 -1
- package/build/development/repl.js.map +1 -1
- package/build/index.d.ts +1 -0
- package/build/index.js +3 -0
- package/build/index.js.map +1 -1
- package/build/telemetry/index.d.ts +1 -0
- package/build/telemetry/index.js +1 -1
- package/build/telemetry/index.js.map +1 -1
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +14 -14
- package/src/bin/start-service.ts +2 -2
- package/src/bootstrap.ts +1 -1
- package/src/development/repl.ts +85 -1
- package/src/index.ts +1 -0
- package/src/telemetry/index.ts +1 -1
|
@@ -21,9 +21,9 @@ const noTelemetry = (argv.repl || (0, env_1.isDev)()) && !argv.telemetry;
|
|
|
21
21
|
(0, bootstrap_1.bootstrap)({
|
|
22
22
|
...argv,
|
|
23
23
|
telemetry: !noTelemetry,
|
|
24
|
-
}).then(({ app, server }) => {
|
|
24
|
+
}).then(({ app, codepath, server }) => {
|
|
25
25
|
if (argv.repl) {
|
|
26
|
-
(0, repl_1.serviceRepl)(app, () => {
|
|
26
|
+
(0, repl_1.serviceRepl)(app, codepath, () => {
|
|
27
27
|
server?.close();
|
|
28
28
|
});
|
|
29
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start-service.js","sourceRoot":"","sources":["../../src/bin/start-service.ts"],"names":[],"mappings":";;;;;;AACA,wDAAgC;AAEhC,8CAAkD;AAClD,gCAA+B;AAC/B,4CAAyC;AAEzC;;;;;GAKG;AACH,MAAM,IAAI,GAAG,IAAA,kBAAQ,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;IAC3C,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAA,WAAK,GAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;AAC9D,IAAA,qBAAS,EAAC;IACR,GAAG,IAAI;IACP,SAAS,EAAE,CAAC,WAAW;CACxB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"start-service.js","sourceRoot":"","sources":["../../src/bin/start-service.ts"],"names":[],"mappings":";;;;;;AACA,wDAAgC;AAEhC,8CAAkD;AAClD,gCAA+B;AAC/B,4CAAyC;AAEzC;;;;;GAKG;AACH,MAAM,IAAI,GAAG,IAAA,kBAAQ,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;IAC3C,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,IAAA,WAAK,GAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;AAC9D,IAAA,qBAAS,EAAC;IACR,GAAG,IAAI;IACP,SAAS,EAAE,CAAC,WAAW;CACxB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;IACpC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,IAAA,kBAAW,EAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE;YAC9B,MAAM,EAAE,KAAK,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/build/bootstrap.d.ts
CHANGED
|
@@ -11,7 +11,12 @@ interface BootstrapArguments {
|
|
|
11
11
|
version?: string;
|
|
12
12
|
}
|
|
13
13
|
export declare function bootstrap<SLocals extends AnyServiceLocals = ServiceLocals<ConfigurationSchema>, RLocals extends RequestLocals = RequestLocals>(argv?: BootstrapArguments): Promise<{
|
|
14
|
+
app: import("./types").ServiceExpress<SLocals>;
|
|
15
|
+
codepath: "build" | "src" | "dist" | undefined;
|
|
16
|
+
server: import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse> | import("https").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>;
|
|
17
|
+
} | {
|
|
14
18
|
server: import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse> | import("https").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse> | undefined;
|
|
15
19
|
app: import("./types").ServiceExpress<SLocals>;
|
|
20
|
+
codepath: "build" | "src" | "dist";
|
|
16
21
|
}>;
|
|
17
22
|
export {};
|
package/build/bootstrap.js
CHANGED
|
@@ -102,6 +102,6 @@ async function bootstrap(argv) {
|
|
|
102
102
|
const { startApp, listen } = await import('./express-app/app.js');
|
|
103
103
|
const app = await startApp(opts);
|
|
104
104
|
const server = argv?.nobind ? undefined : await listen(app);
|
|
105
|
-
return { server, app };
|
|
105
|
+
return { server, app, codepath };
|
|
106
106
|
}
|
|
107
107
|
//# sourceMappingURL=bootstrap.js.map
|
package/build/bootstrap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,18 @@
|
|
|
1
1
|
import { AnyServiceLocals, ServiceExpress, ServiceLocals } from '../types';
|
|
2
2
|
import { ConfigurationSchema } from '../config/schema';
|
|
3
|
-
export declare function serviceRepl<SLocals extends AnyServiceLocals = ServiceLocals<ConfigurationSchema>>(app: ServiceExpress<SLocals>, onExit: () => void): void;
|
|
3
|
+
export declare function serviceRepl<SLocals extends AnyServiceLocals = ServiceLocals<ConfigurationSchema>>(app: ServiceExpress<SLocals>, codepath: string | undefined, onExit: () => void): void;
|
|
4
|
+
type ReplAny = any;
|
|
5
|
+
/**
|
|
6
|
+
* This decorator-like function can be applied to functions and the service will load and expose
|
|
7
|
+
* the function when the repl is engaged.
|
|
8
|
+
*
|
|
9
|
+
* async function myFunction(app: MyService['App'], arg1: string, arg2: number) {
|
|
10
|
+
* }
|
|
11
|
+
* repl$(myFunction);
|
|
12
|
+
*
|
|
13
|
+
* or
|
|
14
|
+
*
|
|
15
|
+
* repl(myFunction, 'some.func.name');
|
|
16
|
+
*/
|
|
17
|
+
export declare function repl$<S extends ServiceExpress<ReplAny>, T extends (app: S, ...args: ReplAny[]) => ReplAny>(fn: T, name?: string): void;
|
|
18
|
+
export {};
|
|
@@ -4,9 +4,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.serviceRepl = serviceRepl;
|
|
7
|
+
exports.repl$ = repl$;
|
|
7
8
|
const repl_1 = __importDefault(require("repl"));
|
|
9
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
10
|
const path_1 = __importDefault(require("path"));
|
|
9
|
-
|
|
11
|
+
const glob_1 = require("glob");
|
|
12
|
+
const lodash_1 = require("lodash");
|
|
13
|
+
const REPL_PROP = '$$repl$$';
|
|
14
|
+
function serviceRepl(app, codepath, onExit) {
|
|
10
15
|
const rl = repl_1.default.start({
|
|
11
16
|
prompt: '> ',
|
|
12
17
|
});
|
|
@@ -24,6 +29,61 @@ function serviceRepl(app, onExit) {
|
|
|
24
29
|
}
|
|
25
30
|
});
|
|
26
31
|
app.locals.service.attachRepl?.(app, rl);
|
|
32
|
+
loadReplFunctions(app, codepath, rl);
|
|
27
33
|
rl.on('exit', onExit);
|
|
28
34
|
}
|
|
35
|
+
function loadReplFunctions(app, codepath, rl) {
|
|
36
|
+
if (!codepath) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const files = glob_1.glob.sync(path_1.default.join(codepath, '**/*.{js,ts}'));
|
|
40
|
+
files.forEach((file) => {
|
|
41
|
+
try {
|
|
42
|
+
// Read the file content as text
|
|
43
|
+
const fileContent = fs_1.default.readFileSync(file, 'utf-8');
|
|
44
|
+
// Check if repl$ is present, in a very rudimentary way
|
|
45
|
+
if (/repl\$\(/.test(fileContent)) {
|
|
46
|
+
// eslint-disable-next-line global-require, import/no-dynamic-require, @typescript-eslint/no-var-requires
|
|
47
|
+
const module = require(path_1.default.resolve(file));
|
|
48
|
+
// Look for functions with the REPL_PROP marker
|
|
49
|
+
Object.values(module).forEach((exported) => {
|
|
50
|
+
if (!exported) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (typeof exported === 'function') {
|
|
54
|
+
const replName = exported[REPL_PROP];
|
|
55
|
+
if (replName) {
|
|
56
|
+
(0, lodash_1.set)(rl.context, replName, exported.bind(null, app));
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
console.error(`Failed to load REPL functions from ${file}:`, err);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* This decorator-like function can be applied to functions and the service will load and expose
|
|
69
|
+
* the function when the repl is engaged.
|
|
70
|
+
*
|
|
71
|
+
* async function myFunction(app: MyService['App'], arg1: string, arg2: number) {
|
|
72
|
+
* }
|
|
73
|
+
* repl$(myFunction);
|
|
74
|
+
*
|
|
75
|
+
* or
|
|
76
|
+
*
|
|
77
|
+
* repl(myFunction, 'some.func.name');
|
|
78
|
+
*/
|
|
79
|
+
function repl$(fn, name) {
|
|
80
|
+
const functionName = name || fn.name;
|
|
81
|
+
if (!functionName) {
|
|
82
|
+
throw new Error('Function must have a name or a name must be provided.');
|
|
83
|
+
}
|
|
84
|
+
Object.defineProperty(fn, REPL_PROP, {
|
|
85
|
+
enumerable: false,
|
|
86
|
+
value: functionName,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
29
89
|
//# sourceMappingURL=repl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/development/repl.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/development/repl.ts"],"names":[],"mappings":"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"}
|
package/build/index.d.ts
CHANGED
package/build/index.js
CHANGED
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.repl$ = void 0;
|
|
17
18
|
__exportStar(require("./telemetry"), exports);
|
|
18
19
|
__exportStar(require("./express-app"), exports);
|
|
19
20
|
__exportStar(require("./types"), exports);
|
|
@@ -22,4 +23,6 @@ __exportStar(require("./config"), exports);
|
|
|
22
23
|
__exportStar(require("./error"), exports);
|
|
23
24
|
__exportStar(require("./bootstrap"), exports);
|
|
24
25
|
__exportStar(require("./hook"), exports);
|
|
26
|
+
var repl_1 = require("./development/repl");
|
|
27
|
+
Object.defineProperty(exports, "repl$", { enumerable: true, get: function () { return repl_1.repl$; } });
|
|
25
28
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,gDAA8B;AAC9B,0CAAwB;AACxB,wCAAsB;AACtB,2CAAyB;AACzB,0CAAwB;AACxB,8CAA4B;AAC5B,yCAAuB;AACvB,2CAA2C;AAAlC,6FAAA,KAAK,OAAA"}
|
|
@@ -14,5 +14,6 @@ export declare function getGlobalPrometheusExporter(): PrometheusExporter | unde
|
|
|
14
14
|
export declare function shutdownGlobalTelemetry(): Promise<void>;
|
|
15
15
|
export declare function startWithTelemetry<SLocals extends AnyServiceLocals = ServiceLocals<ConfigurationSchema>, RLocals extends RequestLocals = RequestLocals>(options: DelayLoadServiceStartOptions): Promise<{
|
|
16
16
|
app: import("../types").ServiceExpress<SLocals>;
|
|
17
|
+
codepath: "build" | "src" | "dist" | undefined;
|
|
17
18
|
server: import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse> | import("https").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>;
|
|
18
19
|
}>;
|
package/build/telemetry/index.js
CHANGED
|
@@ -116,6 +116,6 @@ async function startWithTelemetry(options) {
|
|
|
116
116
|
await shutdownGlobalTelemetry();
|
|
117
117
|
app.locals.logger.info('OpenTelemetry shut down');
|
|
118
118
|
});
|
|
119
|
-
return { app, server };
|
|
119
|
+
return { app, codepath: options.codepath, server };
|
|
120
120
|
}
|
|
121
121
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/telemetry/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/telemetry/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAuDA,oDAgCC;AAED,kEAEC;AAED,0DAIC;AAED,gDA2BC;AA9HD,wFAA6E;AAC7E,wDAKkC;AAClC,4FAA+E;AAC/E,gFAAmE;AACnE,uEAAyD;AACzD,4EAAwE;AAYxE,yDAA6D;AAC7D,mDAAoD;AAEpD,+DAA+D;AAC/D,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,EAAE,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AAEnH,SAAS,WAAW;IAClB,IACE,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB;QAClC,CAAC,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;YACpF,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAC5B,CAAC;QACD,OAAO,IAAI,6CAAiB,CAAC;YAC3B,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,qCAAqC;SACxE,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC;QAC7C,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACzD,CAAC;IACD,OAAO,IAAI,iCAAiB,EAAE,CAAC;AACjC,CAAC;AAED,IAAI,kBAAkD,CAAC;AACvD,IAAI,YAA+C,CAAC;AAEpD;;;;;;;GAOG;AACI,KAAK,UAAU,oBAAoB,CAAC,WAAmB;IAC5D,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,kBAAkB,GAAG,IAAI,wCAAkB,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,MAAM,gBAAgB,GAAG,IAAA,0CAAuB,GAAE,CAAC;QACnD,YAAY,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC;YACvC,WAAW;YACX,mBAAmB,EAAE,KAAK;YAC1B,aAAa,EAAE,WAAW,EAAE;YAC5B,iBAAiB,EAAE;gBACjB,2BAAe;gBACf,4BAAgB;gBAChB,0BAAc;gBACd,+BAAmB;gBACnB,+CAAiB;gBACjB,mCAAW;aACZ;YACD,YAAY,EAAE,kBAAkB;YAChC,gBAAgB;YAChB,mBAAmB,EAAE,EAAE;YACvB,KAAK,EAAE;gBACL,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC;oBAC7B,cAAc,EAAE,+BAA+B;oBAC/C,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS;oBAC9D,WAAW,EAAE,IAAI,aAAa,CAAC,OAAO,CAAC,kCAAkC,CACvE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,EAChC,IAAI,CACL;iBACF,CAAC;aACH;SACF,CAAC,CAAC;QACH,YAAY,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,SAAgB,2BAA2B;IACzC,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAEM,KAAK,UAAU,uBAAuB;IAC3C,MAAM,YAAY,EAAE,QAAQ,EAAE,CAAC;IAC/B,YAAY,GAAG,SAAS,CAAC;IACzB,kBAAkB,GAAG,SAAS,CAAC;AACjC,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAGtC,OAAqC;IACrC,MAAM,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzC,oFAAoF;IACpF,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAG3D,CAAC;IACF,yGAAyG;IACzG,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC;IAC/D,MAAM,YAAY,GAAiC;QACjD,GAAG,OAAO;QACV,OAAO;QACP,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,EAAsB;KAClD,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;IACzC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAEhD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,uBAAuB,EAAE,CAAC;QAChC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;AACrD,CAAC"}
|