@descryy/runtime-adapter-typescript 0.3.10 → 0.3.11
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/dist/node-source-location-resolver.d.ts +3 -1
- package/dist/node-source-location-resolver.d.ts.map +1 -1
- package/dist/node-source-location-resolver.js +42 -1
- package/dist/node-source-location-resolver.js.map +1 -1
- package/dist/typescript-runtime-adapter.d.ts.map +1 -1
- package/dist/typescript-runtime-adapter.js +16 -2
- package/dist/typescript-runtime-adapter.js.map +1 -1
- package/dist/v8-frame-parsing.d.ts.map +1 -1
- package/dist/v8-frame-parsing.js +5 -3
- package/dist/v8-frame-parsing.js.map +1 -1
- package/package.json +6 -6
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
* `//# sourceMappingURL` map, when one exists, and classifies
|
|
5
5
|
* `SourceLocation.reliability` (RT-003) honestly rather than defaulting.
|
|
6
6
|
*
|
|
7
|
-
* - No `sourceMappingURL` reference → `
|
|
7
|
+
* - No `sourceMappingURL` reference, and the file is one bundled build → `bundle-without-map`: the
|
|
8
|
+
* position is the bundle's, not authored source, so nothing in the graph can be expected at it.
|
|
9
|
+
* - No `sourceMappingURL` reference otherwise → `self-contained` (the compiled
|
|
8
10
|
* location is itself accurate; NOT `side-artifact-missing`, which means
|
|
9
11
|
* "expected a map and couldn't get it").
|
|
10
12
|
* - Reference exists but the map can't be found/parsed, or has no entry
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-source-location-resolver.d.ts","sourceRoot":"","sources":["../src/node-source-location-resolver.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"node-source-location-resolver.d.ts","sourceRoot":"","sources":["../src/node-source-location-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAQH,OAAO,KAAK,EAAoB,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AA2KrG,wBAAgB,gCAAgC,IAAI,sBAAsB,CAMzE"}
|
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
* `//# sourceMappingURL` map, when one exists, and classifies
|
|
5
5
|
* `SourceLocation.reliability` (RT-003) honestly rather than defaulting.
|
|
6
6
|
*
|
|
7
|
-
* - No `sourceMappingURL` reference → `
|
|
7
|
+
* - No `sourceMappingURL` reference, and the file is one bundled build → `bundle-without-map`: the
|
|
8
|
+
* position is the bundle's, not authored source, so nothing in the graph can be expected at it.
|
|
9
|
+
* - No `sourceMappingURL` reference otherwise → `self-contained` (the compiled
|
|
8
10
|
* location is itself accurate; NOT `side-artifact-missing`, which means
|
|
9
11
|
* "expected a map and couldn't get it").
|
|
10
12
|
* - Reference exists but the map can't be found/parsed, or has no entry
|
|
@@ -33,6 +35,35 @@ function findSourceMappingUrl(compiledText) {
|
|
|
33
35
|
}
|
|
34
36
|
return last;
|
|
35
37
|
}
|
|
38
|
+
/** esbuild writes the path of each module it inlines as a line comment above it. */
|
|
39
|
+
const BUNDLE_MODULE_BANNER = /^\/\/ (?:[\w@.$~-]+\/)*[\w@.$~-]+\.(?:[cm]?[jt]sx?)$/gm;
|
|
40
|
+
/**
|
|
41
|
+
* Names a bundler's own runtime helper carries into every build it makes. Each is a token no hand-written
|
|
42
|
+
* file contains by accident: Turbopack's module context, Parcel's require, Vite's dynamic-import preload, Bun's
|
|
43
|
+
* first-line marker. Rollup and Rolldown leave no marker when they are not asked to, so a build from one of
|
|
44
|
+
* them with no map stays `self-contained`, which is the old answer and not a wrong new one.
|
|
45
|
+
*/
|
|
46
|
+
const BUNDLER_RUNTIME_MARKERS = [/__turbopack_/, /\bparcelRequire\b/, /\b__vitePreload\b/, /^\/\/ @bun\r?$/m];
|
|
47
|
+
/** Three banners is a bundle; one or two is a comment that happens to name a file. */
|
|
48
|
+
const MIN_BANNERS_FOR_BUNDLE = 3;
|
|
49
|
+
/**
|
|
50
|
+
* True only on positive evidence that the file is one bundled build: esbuild's per-module banners, or a
|
|
51
|
+
* bundler's own runtime helper (webpack, Turbopack, Parcel, Vite, Bun). Precision over recall — a bundler this does not recognise stays `self-contained`,
|
|
52
|
+
* which is the old answer, never a wrong new one.
|
|
53
|
+
*/
|
|
54
|
+
function looksBundled(compiledText) {
|
|
55
|
+
if (compiledText.includes("__webpack_require__") || compiledText.includes("__webpack_modules__"))
|
|
56
|
+
return true;
|
|
57
|
+
if (BUNDLER_RUNTIME_MARKERS.some((marker) => marker.test(compiledText)))
|
|
58
|
+
return true;
|
|
59
|
+
let banners = 0;
|
|
60
|
+
for (const _ of compiledText.matchAll(BUNDLE_MODULE_BANNER)) {
|
|
61
|
+
banners += 1;
|
|
62
|
+
if (banners >= MIN_BANNERS_FOR_BUNDLE)
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
36
67
|
function loadTraceMap(compiledFilePath, mappingUrl) {
|
|
37
68
|
if (mappingUrl.startsWith("data:")) {
|
|
38
69
|
const marker = "base64,";
|
|
@@ -96,6 +127,16 @@ function resolveSync(frame) {
|
|
|
96
127
|
const compiledText = readFileSync(file, "utf8");
|
|
97
128
|
const mappingUrl = findSourceMappingUrl(compiledText);
|
|
98
129
|
if (mappingUrl === undefined) {
|
|
130
|
+
if (looksBundled(compiledText)) {
|
|
131
|
+
return {
|
|
132
|
+
file,
|
|
133
|
+
line: frame.line,
|
|
134
|
+
column: frame.column,
|
|
135
|
+
functionName: frame.functionName,
|
|
136
|
+
reliability: "bundle-without-map",
|
|
137
|
+
resolvedVia: null,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
99
140
|
return selfContained(frame, file);
|
|
100
141
|
}
|
|
101
142
|
if (frame.column === null) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-source-location-resolver.js","sourceRoot":"","sources":["../src/node-source-location-resolver.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"node-source-location-resolver.js","sourceRoot":"","sources":["../src/node-source-location-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-runtime-adapter.d.ts","sourceRoot":"","sources":["../src/typescript-runtime-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAsE,MAAM,sCAAsC,CAAC;AAgB/I,MAAM,WAAW,+BAA+B;IAC9C,qGAAqG;IACrG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,8BAA8B,CAAC,OAAO,GAAE,+BAAoC,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"typescript-runtime-adapter.d.ts","sourceRoot":"","sources":["../src/typescript-runtime-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAsE,MAAM,sCAAsC,CAAC;AAgB/I,MAAM,WAAW,+BAA+B;IAC9C,qGAAqG;IACrG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,8BAA8B,CAAC,OAAO,GAAE,+BAAoC,GAAG,cAAc,CAyD5G"}
|
|
@@ -12,7 +12,7 @@ import { FETCH_PRELOAD_MODULE_PATH } from "@descryy/runtime-external-service-obs
|
|
|
12
12
|
// path constant only, same reasoning as FETCH_PRELOAD_MODULE_PATH above:
|
|
13
13
|
// sqlite-instrumentation.ts is loaded via `node --import` INSIDE the
|
|
14
14
|
// observed process, never imported directly by this one.
|
|
15
|
-
import { SQLITE_PRELOAD_MODULE_PATH } from "@descryy/runtime-database-observation";
|
|
15
|
+
import { SQLITE_PRELOAD_MODULE_PATH, PRISMA_PRELOAD_MODULE_PATH } from "@descryy/runtime-database-observation";
|
|
16
16
|
import { createV8LineClassifier } from "./v8-frame-parsing.js";
|
|
17
17
|
import { createNodeSourceLocationResolver } from "./node-source-location-resolver.js";
|
|
18
18
|
import { createV8StackTraceParser } from "./v8-stack-trace-parser.js";
|
|
@@ -42,8 +42,22 @@ export function createTypeScriptRuntimeAdapter(options = {}) {
|
|
|
42
42
|
// node:sqlite, which otherwise fires at module load time whether or not the
|
|
43
43
|
// application ever touches it (found the hard way: it broke a downstream
|
|
44
44
|
// zero-evidence gate that counted the whole unfiltered stream).
|
|
45
|
+
//
|
|
46
|
+
// The Prisma preload rides the same launch: Prisma's engine is native, so node:sqlite's patch
|
|
47
|
+
// never sees its statements. It only installs a tracing hook a Prisma client looks up; in a
|
|
48
|
+
// process without Prisma nothing reads it.
|
|
45
49
|
function databaseObservationLaunch() {
|
|
46
|
-
return {
|
|
50
|
+
return {
|
|
51
|
+
interpreterArgs: ["--disable-warning=ExperimentalWarning", "--import", SQLITE_PRELOAD_MODULE_PATH, "--import", PRISMA_PRELOAD_MODULE_PATH],
|
|
52
|
+
observes: [
|
|
53
|
+
"queries through node:sqlite",
|
|
54
|
+
"queries Prisma's engine reports through its tracing hook (Prisma 6 and later; Prisma 5 only with previewFeatures = [\"tracing\"] in its schema), without whether each succeeded",
|
|
55
|
+
],
|
|
56
|
+
doesNotObserve: [
|
|
57
|
+
"other drivers and ORMs with a native engine of their own; declare the database's statement log to see those",
|
|
58
|
+
"Prisma 5 without the tracing preview feature, and Prisma Accelerate, whose queries run on Prisma's servers",
|
|
59
|
+
],
|
|
60
|
+
};
|
|
47
61
|
}
|
|
48
62
|
return {
|
|
49
63
|
language: "typescript",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-runtime-adapter.js","sourceRoot":"","sources":["../src/typescript-runtime-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,gFAAgF;AAChF,4EAA4E;AAC5E,sFAAsF;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC1F,yEAAyE;AACzE,qEAAqE;AACrE,yDAAyD;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"typescript-runtime-adapter.js","sourceRoot":"","sources":["../src/typescript-runtime-adapter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,gFAAgF;AAChF,4EAA4E;AAC5E,sFAAsF;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC1F,yEAAyE;AACzE,qEAAqE;AACrE,yDAAyD;AACzD,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAE/G,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAOtE,MAAM,UAAU,8BAA8B,CAAC,UAA2C,EAAE;IAC1F,MAAM,sBAAsB,GAAG,gCAAgC,EAAE,CAAC;IAClE,MAAM,gBAAgB,GAAG,wBAAwB,CAAC,sBAAsB,CAAC,CAAC;IAE1E,SAAS,uBAAuB,CAAC,OAAuC;QACtE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC5B,kBAAkB,CAAC;YACjB,MAAM;YACN,UAAU,EAAE,sBAAsB,EAAE,EAAE,gFAAgF;YACtH,gBAAgB;YAChB,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE,CAAC,CACH,CAAC;IACJ,CAAC;IAED,qEAAqE;IACrE,mEAAmE;IACnE,sEAAsE;IACtE,sEAAsE;IACtE,oEAAoE;IACpE,iDAAiD;IACjD,SAAS,kBAAkB;QACzB,OAAO,EAAE,eAAe,EAAE,CAAC,UAAU,EAAE,yBAAyB,CAAC,EAAE,CAAC;IACtE,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,gEAAgE;IAChE,EAAE;IACF,8FAA8F;IAC9F,4FAA4F;IAC5F,2CAA2C;IAC3C,SAAS,yBAAyB;QAChC,OAAO;YACL,eAAe,EAAE,CAAC,uCAAuC,EAAE,UAAU,EAAE,0BAA0B,EAAE,UAAU,EAAE,0BAA0B,CAAC;YAC1I,QAAQ,EAAE;gBACR,6BAA6B;gBAC7B,iLAAiL;aAClL;YACD,cAAc,EAAE;gBACd,6GAA6G;gBAC7G,4GAA4G;aAC7G;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,YAAY;QACtB,gBAAgB;QAChB,sBAAsB;QACtB,uBAAuB;QACvB,kBAAkB;QAClB,yBAAyB;KAC1B,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v8-frame-parsing.d.ts","sourceRoot":"","sources":["../src/v8-frame-parsing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"v8-frame-parsing.d.ts","sourceRoot":"","sources":["../src/v8-frame-parsing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAaD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,yJAAyJ;AACzJ,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAW/D;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAQrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,IAAI;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CAChC,CAoBA"}
|
package/dist/v8-frame-parsing.js
CHANGED
|
@@ -10,13 +10,14 @@
|
|
|
10
10
|
* immediately followed by a frame line.
|
|
11
11
|
*/
|
|
12
12
|
const HEADER_PATTERN = /\b(?<type>(?:[A-Z][\w$]*)?Error)(?::\s*(?<message>.*))?$/;
|
|
13
|
-
const FRAME_WITH_PARENS = /^\s*at\s+(?:new\s+)?(?<fn>.+?)\s+\((?<loc
|
|
13
|
+
const FRAME_WITH_PARENS = /^\s*at\s+(?:new\s+)?(?<fn>.+?)\s+\((?<loc>.+?:\d+:\d+|[^()]+)\)\s*$/;
|
|
14
|
+
const EVAL_ORIGIN = /^eval at /;
|
|
14
15
|
// location-only frame: `at file:///app/x.js:1:1`, `at <anonymous>`. Parens excluded
|
|
15
16
|
// deliberately (found via the JVM adapter's cross-language control): without it this
|
|
16
17
|
// also matched a JVM frame (`at com.example.Thrower.handler(Thrower.java:12)`), since
|
|
17
18
|
// a real bare V8 frame never has parens -- once there's a name V8 emits `fn (loc)`.
|
|
18
19
|
// Needed at the classifier level too, not just the parser.
|
|
19
|
-
const FRAME_BARE = /^\s*at\s+(?<loc>[^\s()]+)\s*$/;
|
|
20
|
+
const FRAME_BARE = /^\s*at\s+(?<loc>[^\s()]+|[^\s(][^()]*?(?:\([^()]*\)[^()]*?)*:\d+:\d+)\s*$/;
|
|
20
21
|
const LOCATION_WITH_LINE_COL = /^(?<file>.+):(?<line>\d+):(?<col>\d+)$/;
|
|
21
22
|
export function isV8HeaderLine(line) {
|
|
22
23
|
return HEADER_PATTERN.test(line);
|
|
@@ -31,7 +32,8 @@ export function isV8NamedFrameLine(line) {
|
|
|
31
32
|
export function parseV8Frame(line) {
|
|
32
33
|
const withParens = FRAME_WITH_PARENS.exec(line);
|
|
33
34
|
if (withParens?.groups) {
|
|
34
|
-
|
|
35
|
+
const location = withParens.groups["loc"] ?? "";
|
|
36
|
+
return { functionName: withParens.groups["fn"] ?? null, location: EVAL_ORIGIN.test(location) ? "<anonymous>" : location };
|
|
35
37
|
}
|
|
36
38
|
const bare = FRAME_BARE.exec(line);
|
|
37
39
|
if (bare?.groups) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v8-frame-parsing.js","sourceRoot":"","sources":["../src/v8-frame-parsing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAaH,MAAM,cAAc,GAAG,0DAA0D,CAAC;AAClF,MAAM,iBAAiB,GAAG,
|
|
1
|
+
{"version":3,"file":"v8-frame-parsing.js","sourceRoot":"","sources":["../src/v8-frame-parsing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAaH,MAAM,cAAc,GAAG,0DAA0D,CAAC;AAClF,MAAM,iBAAiB,GAAG,qEAAqE,CAAC;AAChG,MAAM,WAAW,GAAG,WAAW,CAAC;AAChC,oFAAoF;AACpF,qFAAqF;AACrF,sFAAsF;AACtF,oFAAoF;AACpF,2DAA2D;AAC3D,MAAM,UAAU,GAAG,2EAA2E,CAAC;AAC/F,MAAM,sBAAsB,GAAG,wCAAwC,CAAC;AAExE,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAY;IACxC,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,yJAAyJ;AACzJ,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,UAAU,EAAE,MAAM,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChD,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC5H,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;QACjB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IACpE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,aAAa,CAAC,QAAgB;IAC5C,MAAM,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,IAAI,CAAC,KAAK,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QAChC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KACpC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,sBAAsB;IAIpC,IAAI,KAAK,GAAG,KAAK,CAAC;IAElB,OAAO;QACL,QAAQ,CAAC,IAAY;YACnB,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,KAAK,GAAG,IAAI,CAAC;gBACb,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,CAAC,IAAY;YAClB,IAAI,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7B,KAAK,GAAG,IAAI,CAAC;gBACb,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@descryy/runtime-adapter-typescript",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.11",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "TypeScript/Node runtime adapter: V8 stack-trace parsing, Node source-map resolution, the concrete RuntimeAdapter for TS/Node.",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -26,14 +26,14 @@
|
|
|
26
26
|
"access": "public"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@descryy/runtime-contracts": "0.4.
|
|
30
|
-
"@descryy/runtime-backend-observation": "0.3.
|
|
31
|
-
"@descryy/runtime-database-observation": "0.5.
|
|
29
|
+
"@descryy/runtime-contracts": "0.4.1",
|
|
30
|
+
"@descryy/runtime-backend-observation": "0.3.8",
|
|
31
|
+
"@descryy/runtime-database-observation": "0.5.3",
|
|
32
32
|
"@jridgewell/trace-mapping": "^0.3.31",
|
|
33
|
-
"@descryy/runtime-external-service-observation": "0.3.
|
|
33
|
+
"@descryy/runtime-external-service-observation": "0.3.7"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
|
-
"@descryy/runtime-evidence-store": "0.4.
|
|
36
|
+
"@descryy/runtime-evidence-store": "0.4.4"
|
|
37
37
|
},
|
|
38
38
|
"scripts": {
|
|
39
39
|
"build": "tsc -b"
|