@sailfish-ai/sf-veritas 0.4.0 → 0.4.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/dist/contextManager-B1hI1vbB.cjs +1 -0
- package/dist/{contextManager-C2ONL8XY.js → contextManager-CE9FcHd2.js} +21 -19
- package/dist/plugins/funcspanEsbuildPlugin.cjs +1 -1
- package/dist/plugins/funcspanEsbuildPlugin.mjs +1 -1
- package/dist/plugins/funcspanRollupPlugin.cjs +1 -1
- package/dist/plugins/funcspanRollupPlugin.mjs +1 -1
- package/dist/plugins/funcspanTscPlugin.cjs +1 -1
- package/dist/plugins/funcspanTscPlugin.mjs +1 -1
- package/dist/plugins/funcspanVitePlugin.cjs +1 -1
- package/dist/plugins/funcspanVitePlugin.mjs +1 -1
- package/dist/plugins/funcspanWebpackPlugin.cjs +1 -1
- package/dist/plugins/funcspanWebpackPlugin.mjs +1 -1
- package/dist/{runtimeConfig-BUJ13zxm.js → runtimeConfig-B6ERoLRD.js} +279 -277
- package/dist/{runtimeConfig-xahsyRmN.cjs → runtimeConfig-BgTE3gmS.cjs} +4 -4
- package/dist/sf-veritas.cjs +26 -18
- package/dist/sf-veritas.mjs +165 -157
- package/dist/types/baseTransmitter.d.ts +1 -0
- package/dist/types/setupConfig.d.ts +2 -0
- package/dist/worker-pool-capture.cjs +1 -1
- package/dist/worker-pool-capture.mjs +1 -1
- package/dist/{workerPoolSpanCapture-DL8wfDIr.js → workerPoolSpanCapture-B5AjE5B9.js} +115 -115
- package/dist/workerPoolSpanCapture-CVp5eCI6.cjs +83 -0
- package/package.json +1 -1
- package/dist/contextManager-CL0Qs7uI.cjs +0 -1
- package/dist/workerPoolSpanCapture-C3T98kWy.cjs +0 -83
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var Y = (
|
|
4
|
-
import * as
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import { s as
|
|
9
|
-
import { Worker as
|
|
10
|
-
import { g as d, a as
|
|
11
|
-
import { resolve as
|
|
12
|
-
function
|
|
13
|
-
return typeof
|
|
14
|
-
`) : String(
|
|
1
|
+
var an = Object.defineProperty;
|
|
2
|
+
var dn = (n, I, e) => I in n ? an(n, I, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[I] = e;
|
|
3
|
+
var Y = (n, I, e) => dn(n, typeof I != "symbol" ? I + "" : I, e);
|
|
4
|
+
import * as mn from "fs/promises";
|
|
5
|
+
import Zn from "http";
|
|
6
|
+
import fn from "https";
|
|
7
|
+
import Wn from "os";
|
|
8
|
+
import { s as pn } from "./source-map-Cr6YkjTd.js";
|
|
9
|
+
import { Worker as Gn } from "worker_threads";
|
|
10
|
+
import { g as d, a as yn, C as Q } from "./contextManager-CE9FcHd2.js";
|
|
11
|
+
import { resolve as Bn } from "path";
|
|
12
|
+
function Yn(n) {
|
|
13
|
+
return typeof n == "string" ? n : n == null ? "" : Array.isArray(n) ? n.map((I) => String(I)).join(`
|
|
14
|
+
`) : String(n);
|
|
15
15
|
}
|
|
16
|
-
function
|
|
16
|
+
function Vn(n) {
|
|
17
17
|
try {
|
|
18
|
-
return JSON.stringify(
|
|
18
|
+
return JSON.stringify(n), !0;
|
|
19
19
|
} catch {
|
|
20
20
|
return !1;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
function
|
|
24
|
-
const
|
|
25
|
-
if (
|
|
26
|
-
return { traitsJson: JSON.stringify(
|
|
23
|
+
function jn(n) {
|
|
24
|
+
const I = {}, e = [];
|
|
25
|
+
if (n) for (const [c, t] of Object.entries(n)) Vn(t) ? I[c] = t : e.push(c);
|
|
26
|
+
return { traitsJson: JSON.stringify(I), excludedFields: e };
|
|
27
27
|
}
|
|
28
28
|
class v {
|
|
29
|
-
constructor({ file:
|
|
29
|
+
constructor({ file: I, line: e, function: c, code: t, locals: i = {}, offender: g = !1, column: l }) {
|
|
30
30
|
Y(this, "file");
|
|
31
31
|
Y(this, "line");
|
|
32
32
|
Y(this, "function");
|
|
@@ -34,441 +34,443 @@ class v {
|
|
|
34
34
|
Y(this, "locals");
|
|
35
35
|
Y(this, "offender");
|
|
36
36
|
Y(this, "column");
|
|
37
|
-
this.file =
|
|
37
|
+
this.file = I, this.line = e, this.function = c, this.code = t, this.locals = i, this.offender = g, this.column = l;
|
|
38
38
|
}
|
|
39
39
|
toDict() {
|
|
40
|
-
const
|
|
41
|
-
return this.offender && (
|
|
40
|
+
const I = { file: this.file, line: this.line, function: this.function, code: this.code, locals: Object.fromEntries(Object.entries(this.locals).map(([e, c]) => [e, String(c)])) };
|
|
41
|
+
return this.offender && (I.offender = this.offender), this.column !== void 0 && (I.column = this.column), I;
|
|
42
42
|
}
|
|
43
43
|
toJson() {
|
|
44
44
|
return JSON.stringify(this.toDict());
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
class T {
|
|
48
|
-
static encode(
|
|
49
|
-
return
|
|
48
|
+
static encode(I) {
|
|
49
|
+
return I instanceof v ? I.toDict() : Array.isArray(I) ? I.map((e) => T.encode(e)) : typeof I == "object" && I !== null ? JSON.stringify(I) : I;
|
|
50
50
|
}
|
|
51
|
-
static stringify(
|
|
52
|
-
return JSON.stringify(T.encode(
|
|
51
|
+
static stringify(I) {
|
|
52
|
+
return JSON.stringify(T.encode(I), (e, c) => c instanceof v ? c.toDict() : c);
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
const H = process.env.SF_LOG_LOCATION || "auto";
|
|
56
56
|
let k = null, U = !1;
|
|
57
|
-
const
|
|
58
|
-
function
|
|
59
|
-
for (let
|
|
57
|
+
const tn = "__sf:", Cn = Error.prepareStackTrace, P = ["/sf-veritas/", "/@sailfish-ai/", "/node_modules/", "/dist/", "/<", "/internal/", "node:"];
|
|
58
|
+
function hn(n) {
|
|
59
|
+
for (let I = 0; I < P.length; I++) if (n.includes(P[I])) return !0;
|
|
60
60
|
return !1;
|
|
61
61
|
}
|
|
62
|
-
function j(
|
|
63
|
-
let
|
|
64
|
-
|
|
62
|
+
function j(n) {
|
|
63
|
+
let I = n;
|
|
64
|
+
I.startsWith("file://") && (I = I.substring(7)), process.platform === "win32" && I.startsWith("/") && I.length > 2 && I[2] === ":" && (I = I.substring(1));
|
|
65
65
|
try {
|
|
66
|
-
return
|
|
66
|
+
return Bn(I);
|
|
67
67
|
} catch {
|
|
68
|
-
return
|
|
68
|
+
return n;
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
-
const
|
|
72
|
-
function M(
|
|
73
|
-
const
|
|
74
|
-
Error.stackTraceLimit = 8, Error.prepareStackTrace = (
|
|
71
|
+
const Nn = process.env.SF_LOG_LOCATION_WALK_FRAMES === "true";
|
|
72
|
+
function M(n) {
|
|
73
|
+
const I = Error.stackTraceLimit;
|
|
74
|
+
Error.stackTraceLimit = 8, Error.prepareStackTrace = (i, g) => g;
|
|
75
75
|
const e = {};
|
|
76
|
-
Error.captureStackTrace(e,
|
|
77
|
-
const
|
|
78
|
-
if (Error.prepareStackTrace =
|
|
79
|
-
for (let
|
|
80
|
-
const g =
|
|
81
|
-
if (g && !
|
|
76
|
+
Error.captureStackTrace(e, n);
|
|
77
|
+
const c = e.stack;
|
|
78
|
+
if (Error.prepareStackTrace = Cn, Error.stackTraceLimit = I, !c || c.length === 0) return [null, null];
|
|
79
|
+
for (let i = 0; i < c.length; i++) {
|
|
80
|
+
const g = c[i].getFileName();
|
|
81
|
+
if (g && !hn(g)) return [j(g), c[i].getLineNumber()];
|
|
82
82
|
}
|
|
83
|
-
const
|
|
84
|
-
return
|
|
83
|
+
const t = c[0].getFileName();
|
|
84
|
+
return t ? [j(t), c[0].getLineNumber()] : [null, null];
|
|
85
85
|
}
|
|
86
|
-
function
|
|
86
|
+
function en(n, I, e) {
|
|
87
87
|
if (H === "off") return [null, null];
|
|
88
88
|
if (e && (H === "auto" || H === "build-inject")) {
|
|
89
|
-
const [
|
|
89
|
+
const [c, t, i] = (function(g) {
|
|
90
90
|
if (g.length === 0) return [null, null, !1];
|
|
91
|
-
const
|
|
92
|
-
if (typeof
|
|
93
|
-
const C =
|
|
91
|
+
const l = g[g.length - 1];
|
|
92
|
+
if (typeof l != "string" || !l.startsWith(tn)) return [null, null, !1];
|
|
93
|
+
const C = l.lastIndexOf(":");
|
|
94
94
|
if (C <= 5) return [null, null, !1];
|
|
95
|
-
const
|
|
96
|
-
return isNaN(
|
|
95
|
+
const A = l.substring(5, C), Z = parseInt(l.substring(C + 1), 10);
|
|
96
|
+
return isNaN(Z) ? [null, null, !1] : [A, Z, !0];
|
|
97
97
|
})(e);
|
|
98
|
-
if (
|
|
98
|
+
if (i) return [c, t];
|
|
99
99
|
if (H === "build-inject") return [null, null];
|
|
100
100
|
}
|
|
101
101
|
if (H === "native") {
|
|
102
|
-
const
|
|
102
|
+
const c = (function() {
|
|
103
103
|
if (U) return k;
|
|
104
104
|
U = !0;
|
|
105
105
|
try {
|
|
106
|
-
const
|
|
107
|
-
typeof
|
|
106
|
+
const t = require("../native/build/Release/sf_source_location.node");
|
|
107
|
+
typeof t?.getCallerLocation == "function" && (k = t);
|
|
108
108
|
} catch {
|
|
109
109
|
}
|
|
110
110
|
return k;
|
|
111
111
|
})();
|
|
112
|
-
if (
|
|
113
|
-
const [
|
|
114
|
-
if (
|
|
112
|
+
if (c) {
|
|
113
|
+
const [t, i] = c.getCallerLocation(n ?? 2);
|
|
114
|
+
if (t) return [t, i];
|
|
115
115
|
}
|
|
116
116
|
if (H === "native" && k) return [null, null];
|
|
117
117
|
}
|
|
118
|
-
return
|
|
119
|
-
const
|
|
120
|
-
Error.stackTraceLimit = 1, Error.prepareStackTrace = (
|
|
121
|
-
const
|
|
122
|
-
Error.captureStackTrace(
|
|
123
|
-
const g =
|
|
124
|
-
if (Error.prepareStackTrace =
|
|
125
|
-
const
|
|
126
|
-
return C ? [j(C),
|
|
127
|
-
})(
|
|
118
|
+
return I ? Nn ? M(I) : (function(c) {
|
|
119
|
+
const t = Error.stackTraceLimit;
|
|
120
|
+
Error.stackTraceLimit = 1, Error.prepareStackTrace = (A, Z) => Z;
|
|
121
|
+
const i = {};
|
|
122
|
+
Error.captureStackTrace(i, c);
|
|
123
|
+
const g = i.stack;
|
|
124
|
+
if (Error.prepareStackTrace = Cn, Error.stackTraceLimit = t, !g || g.length === 0) return [null, null];
|
|
125
|
+
const l = g[0], C = l.getFileName();
|
|
126
|
+
return C ? [j(C), l.getLineNumber()] : [null, null];
|
|
127
|
+
})(I) : M(en);
|
|
128
128
|
}
|
|
129
|
-
function p(
|
|
130
|
-
if (
|
|
131
|
-
const
|
|
132
|
-
return typeof
|
|
129
|
+
function p(n) {
|
|
130
|
+
if (n.length === 0) return n;
|
|
131
|
+
const I = n[n.length - 1];
|
|
132
|
+
return typeof I == "string" && I.startsWith(tn) ? n.slice(0, -1) : n;
|
|
133
133
|
}
|
|
134
|
-
const E = console.log.bind(console), O = console.error.bind(console), _ = console.warn.bind(console), $ = console.info.bind(console), q = console.debug.bind(console), y = E,
|
|
135
|
-
let
|
|
134
|
+
const E = console.log.bind(console), O = console.error.bind(console), _ = console.warn.bind(console), $ = console.info.bind(console), q = console.debug.bind(console), y = E, nn = O;
|
|
135
|
+
let a = !1;
|
|
136
136
|
const z = 8192;
|
|
137
|
-
function
|
|
138
|
-
if (
|
|
139
|
-
if (
|
|
140
|
-
const
|
|
141
|
-
if (
|
|
142
|
-
if (
|
|
143
|
-
if (
|
|
144
|
-
if (
|
|
145
|
-
if (
|
|
146
|
-
if (
|
|
137
|
+
function Hn(n) {
|
|
138
|
+
if (n === null) return "null";
|
|
139
|
+
if (n === void 0) return "undefined";
|
|
140
|
+
const I = typeof n;
|
|
141
|
+
if (I === "string") return n;
|
|
142
|
+
if (I === "number" || I === "boolean") return String(n);
|
|
143
|
+
if (I === "bigint") return n.toString() + "n";
|
|
144
|
+
if (I === "symbol") return n.toString();
|
|
145
|
+
if (I === "function") return `[Function: ${n.name || "anonymous"}]`;
|
|
146
|
+
if (n instanceof Error) return n.stack || `${n.name}: ${n.message}`;
|
|
147
147
|
try {
|
|
148
|
-
const e = /* @__PURE__ */ new WeakSet(),
|
|
148
|
+
const e = /* @__PURE__ */ new WeakSet(), c = [], t = /* @__PURE__ */ new Map(), i = JSON.stringify(n, function(l, C) {
|
|
149
149
|
if (typeof C == "bigint") return C.toString() + "n";
|
|
150
150
|
if (typeof C == "function") return `[Function: ${C.name || "anonymous"}]`;
|
|
151
151
|
if (typeof C == "symbol") return C.toString();
|
|
152
152
|
if (C === void 0) return "[undefined]";
|
|
153
|
-
if (
|
|
154
|
-
const
|
|
155
|
-
if (
|
|
156
|
-
|
|
153
|
+
if (l !== "" && t.has(this)) {
|
|
154
|
+
const A = t.get(this);
|
|
155
|
+
if (A >= 20) return;
|
|
156
|
+
t.set(this, A + 1);
|
|
157
157
|
}
|
|
158
158
|
if (C !== null && typeof C == "object") {
|
|
159
159
|
if (e.has(C)) return "[Circular]";
|
|
160
|
-
for (;
|
|
161
|
-
if (
|
|
162
|
-
e.add(C),
|
|
160
|
+
for (; c.length > 0 && c[c.length - 1] !== this; ) c.pop();
|
|
161
|
+
if (c.length >= 3) return Array.isArray(C) ? `[Array(${C.length})]` : "[Object]";
|
|
162
|
+
e.add(C), c.push(C), !Array.isArray(C) && Object.keys(C).length > 20 && t.set(C, 0);
|
|
163
163
|
}
|
|
164
164
|
return C;
|
|
165
165
|
});
|
|
166
|
-
if (
|
|
167
|
-
let g =
|
|
168
|
-
if (
|
|
169
|
-
const
|
|
170
|
-
g = g.slice(0, -1) + `,"...":"${
|
|
166
|
+
if (i === void 0) return String(n);
|
|
167
|
+
let g = i;
|
|
168
|
+
if (t.size > 0 && !Array.isArray(n) && t.has(n)) {
|
|
169
|
+
const l = Object.keys(n).length;
|
|
170
|
+
g = g.slice(0, -1) + `,"...":"${l - 20} more keys"}`;
|
|
171
171
|
}
|
|
172
172
|
return g.length > 500 ? g.substring(0, 500) + "...[truncated]" : g;
|
|
173
173
|
} catch {
|
|
174
|
-
return String(
|
|
174
|
+
return String(n);
|
|
175
175
|
}
|
|
176
176
|
}
|
|
177
|
-
function X(
|
|
178
|
-
if (
|
|
179
|
-
if (
|
|
180
|
-
const
|
|
181
|
-
return
|
|
177
|
+
function X(n) {
|
|
178
|
+
if (n.length === 0) return "";
|
|
179
|
+
if (n.length === 1 && typeof n[0] == "string") {
|
|
180
|
+
const c = n[0];
|
|
181
|
+
return c.length > z ? c.substring(0, z) + "...[truncated]" : c;
|
|
182
182
|
}
|
|
183
|
-
let
|
|
184
|
-
for (let
|
|
185
|
-
const
|
|
186
|
-
if (
|
|
183
|
+
let I, e = !0;
|
|
184
|
+
for (let c = 0; c < n.length; c++) {
|
|
185
|
+
const t = typeof n[c];
|
|
186
|
+
if (t === "object" && n[c] !== null || t === "function" || t === "symbol") {
|
|
187
187
|
e = !1;
|
|
188
188
|
break;
|
|
189
189
|
}
|
|
190
190
|
}
|
|
191
191
|
if (e) {
|
|
192
|
-
const
|
|
193
|
-
for (let
|
|
194
|
-
const
|
|
195
|
-
t
|
|
192
|
+
const c = new Array(n.length);
|
|
193
|
+
for (let t = 0; t < n.length; t++) {
|
|
194
|
+
const i = n[t];
|
|
195
|
+
c[t] = i === null ? "null" : i === void 0 ? "undefined" : typeof i == "string" ? i : String(i);
|
|
196
196
|
}
|
|
197
|
-
|
|
198
|
-
} else
|
|
199
|
-
return
|
|
197
|
+
I = c.join(" ");
|
|
198
|
+
} else I = n.map(Hn).join(" ");
|
|
199
|
+
return I.length > z ? I.substring(0, z) + "...[truncated]" : I;
|
|
200
200
|
}
|
|
201
|
-
function
|
|
202
|
-
function
|
|
203
|
-
const
|
|
204
|
-
if (
|
|
205
|
-
const [
|
|
206
|
-
|
|
201
|
+
function En(n) {
|
|
202
|
+
function I(g, l, C, A) {
|
|
203
|
+
const Z = yn();
|
|
204
|
+
if (Z?.logIgnoreRegex && Z.logIgnoreRegex.test(l)) return;
|
|
205
|
+
const [m, o] = en(2, C, A);
|
|
206
|
+
n.setOperationName("CollectLogs"), n.doSend([l, g, m, o]);
|
|
207
207
|
}
|
|
208
208
|
const e = console.log = (...g) => {
|
|
209
|
-
if (
|
|
209
|
+
if (a) E(...p(g));
|
|
210
210
|
else {
|
|
211
|
-
|
|
211
|
+
a = !0;
|
|
212
212
|
try {
|
|
213
|
-
const
|
|
214
|
-
|
|
213
|
+
const l = p(g);
|
|
214
|
+
I("INFO", X(l), e, g), E(...l);
|
|
215
215
|
} finally {
|
|
216
|
-
|
|
216
|
+
a = !1;
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
|
-
},
|
|
220
|
-
if (
|
|
219
|
+
}, c = console.error = (...g) => {
|
|
220
|
+
if (a) O(...p(g));
|
|
221
221
|
else {
|
|
222
|
-
|
|
222
|
+
a = !0;
|
|
223
223
|
try {
|
|
224
|
-
const
|
|
225
|
-
|
|
224
|
+
const l = p(g);
|
|
225
|
+
I("ERROR", X(l), c, g), O(...l);
|
|
226
226
|
} finally {
|
|
227
|
-
|
|
227
|
+
a = !1;
|
|
228
228
|
}
|
|
229
229
|
}
|
|
230
|
-
},
|
|
231
|
-
if (
|
|
230
|
+
}, t = console.warn = (...g) => {
|
|
231
|
+
if (a) _(...p(g));
|
|
232
232
|
else {
|
|
233
|
-
|
|
233
|
+
a = !0;
|
|
234
234
|
try {
|
|
235
|
-
const
|
|
236
|
-
|
|
235
|
+
const l = p(g);
|
|
236
|
+
I("WARN", X(l), t, g), _(...l);
|
|
237
237
|
} finally {
|
|
238
|
-
|
|
238
|
+
a = !1;
|
|
239
239
|
}
|
|
240
240
|
}
|
|
241
|
-
},
|
|
242
|
-
if (
|
|
241
|
+
}, i = console.info = (...g) => {
|
|
242
|
+
if (a) $(...p(g));
|
|
243
243
|
else {
|
|
244
|
-
|
|
244
|
+
a = !0;
|
|
245
245
|
try {
|
|
246
|
-
const
|
|
247
|
-
|
|
246
|
+
const l = p(g);
|
|
247
|
+
I("INFO", X(l), i, g), $(...l);
|
|
248
248
|
} finally {
|
|
249
|
-
|
|
249
|
+
a = !1;
|
|
250
250
|
}
|
|
251
251
|
}
|
|
252
252
|
};
|
|
253
253
|
if (d().logLevel === "DEBUG") {
|
|
254
|
-
const g = console.debug = (...
|
|
255
|
-
if (
|
|
254
|
+
const g = console.debug = (...l) => {
|
|
255
|
+
if (a) q(...p(l));
|
|
256
256
|
else {
|
|
257
|
-
|
|
257
|
+
a = !0;
|
|
258
258
|
try {
|
|
259
|
-
const C = p(
|
|
260
|
-
|
|
259
|
+
const C = p(l);
|
|
260
|
+
I("DEBUG", X(C), g, l), q(...C);
|
|
261
261
|
} finally {
|
|
262
|
-
|
|
262
|
+
a = !1;
|
|
263
263
|
}
|
|
264
264
|
}
|
|
265
265
|
};
|
|
266
266
|
}
|
|
267
267
|
}
|
|
268
268
|
let S = 0;
|
|
269
|
-
function
|
|
269
|
+
function On(n) {
|
|
270
270
|
d().sfDebug && y("Initializing Exception Interceptor...");
|
|
271
271
|
try {
|
|
272
|
-
const g =
|
|
273
|
-
|
|
274
|
-
if (
|
|
275
|
-
|
|
272
|
+
const g = sn();
|
|
273
|
+
n?.setSupplementalFields?.({ isFromLocalService: g }), (async function(l) {
|
|
274
|
+
if (cn) return;
|
|
275
|
+
cn = !0;
|
|
276
276
|
const C = process.env || {};
|
|
277
|
-
if (
|
|
277
|
+
if (on(C.SF_IS_LOCAL) === void 0)
|
|
278
278
|
try {
|
|
279
|
-
await (async function(
|
|
280
|
-
const
|
|
281
|
-
return (await Promise.allSettled([
|
|
282
|
-
})(150) && V && (V = !1,
|
|
279
|
+
await (async function(A) {
|
|
280
|
+
const Z = x("http://169.254.169.254/latest/meta-data/", {}, A), m = x("http://metadata.google.internal/computeMetadata/v1/instance/", { "Metadata-Flavor": "Google" }, A), o = x("http://169.254.169.254/metadata/instance?api-version=2021-02-01", { Metadata: "true" }, A);
|
|
281
|
+
return (await Promise.allSettled([Z, m, o])).some((f) => f.status === "fulfilled" && (f.value === "ok" || f.value === "http_error"));
|
|
282
|
+
})(150) && V && (V = !1, l?.setSupplementalFields?.({ isFromLocalService: !1 }));
|
|
283
283
|
} catch {
|
|
284
284
|
}
|
|
285
|
-
})(
|
|
285
|
+
})(n).catch(() => {
|
|
286
286
|
});
|
|
287
287
|
} catch {
|
|
288
288
|
}
|
|
289
|
-
const n = new pI(new URL("data:application/javascript;base64,Ly8gc3JjL2RlYnVnZ2VyV29ya2VyLnRzCmltcG9ydCB7IFNlc3Npb24gfSBmcm9tICJpbnNwZWN0b3IvcHJvbWlzZXMiOwppbXBvcnQgeyBwYXJlbnRQb3J0LCB3b3JrZXJEYXRhIH0gZnJvbSAid29ya2VyX3RocmVhZHMiOwpnbG9iYWwuc2ZEZWJ1ZyA9IHZvaWQgMDsKZ2xvYmFsLnN0YWNrRGVwdGhMb2NhbHMgPSB2b2lkIDA7Cmdsb2JhbC5ub2RlTW9kdWxlc1RvQ29sbGVjdExvY2FsVmFyaWFibGVzT24gPSB2b2lkIDA7CnZhciBzY3JpcHRTb3VyY2VDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CnZhciBub25BcHBGcmFtZVBhdHRlcm5zID0gWwogIC9ub2RlOmludGVybmFsLywKICAvaW50ZXJuYWxcLy8sCiAgL25vZGVfbW9kdWxlcy8sCiAgL25vZGU6ZnMvCl07CmFzeW5jIGZ1bmN0aW9uIHByb2Nlc3NDYWxsRnJhbWVzKHNlc3Npb24sIGNhbGxGcmFtZXMsIGRlc2NyaXB0aW9uTGluZXMpIHsKICBjb25zdCBsaW1pdGVkQ2FsbEZyYW1lcyA9IGNhbGxGcmFtZXMuc2xpY2UoMCwgZ2xvYmFsLnN0YWNrRGVwdGhMb2NhbHMpOwogIGlmIChsaW1pdGVkQ2FsbEZyYW1lcy5sZW5ndGggPiAwKSB7CiAgICBjb25zdCBmaXJzdFVybCA9IGxpbWl0ZWRDYWxsRnJhbWVzWzBdLnVybCB8fCAiIjsKICAgIGlmIChub25BcHBGcmFtZVBhdHRlcm5zLnNvbWUoKHApID0+IHAudGVzdChmaXJzdFVybCkpKSB7CiAgICAgIHBhcmVudFBvcnQ/LnBvc3RNZXNzYWdlKHsgdHlwZTogImV4Y2VwdGlvbiIsIGZyYW1lczogW10gfSk7CiAgICAgIHJldHVybjsKICAgIH0KICB9CiAgY29uc3QgZnJhbWVzID0gYXdhaXQgUHJvbWlzZS5hbGwoCiAgICBsaW1pdGVkQ2FsbEZyYW1lcy5tYXAoYXN5bmMgKGZyYW1lLCBpbmRleCkgPT4gewogICAgICB0cnkgewogICAgICAgIGNvbnN0IHsgZnVuY3Rpb25OYW1lLCBsb2NhdGlvbiwgdXJsLCBzY29wZUNoYWluIH0gPSBmcmFtZTsKICAgICAgICBjb25zdCBsb2NhbFNjb3BlID0gc2NvcGVDaGFpbi5maW5kKChzY29wZSkgPT4gc2NvcGUudHlwZSA9PT0gImxvY2FsIik7CiAgICAgICAgbGV0IGNvZGUgPSAiPG5vdCBjYXB0dXJlZD4iOwogICAgICAgIGxldCBmaWxlID0gIiI7CiAgICAgICAgaWYgKHVybCAmJiB1cmwudHJpbSgpICE9PSAiIikgewogICAgICAgICAgZmlsZSA9IHVybDsKICAgICAgICB9IGVsc2UgaWYgKGRlc2NyaXB0aW9uTGluZXNbaW5kZXhdKSB7CiAgICAgICAgICBmaWxlID0gZGVzY3JpcHRpb25MaW5lc1tpbmRleF0udHJpbSgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmaWxlID0gIjx1bmtub3duPiI7CiAgICAgICAgfQogICAgICAgIGlmIChsb2NhdGlvbiAmJiBsb2NhdGlvbi5zY3JpcHRJZCkgewogICAgICAgICAgY29uc3Qgc2NyaXB0SWQgPSBsb2NhdGlvbi5zY3JpcHRJZDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGxldCBzY3JpcHRTb3VyY2UgPSBzY3JpcHRTb3VyY2VDYWNoZS5nZXQoc2NyaXB0SWQpOwogICAgICAgICAgICBpZiAoc2NyaXB0U291cmNlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBzZXNzaW9uLnBvc3QoCiAgICAgICAgICAgICAgICAiRGVidWdnZXIuZ2V0U2NyaXB0U291cmNlIiwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgc2NyaXB0SWQKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIHNjcmlwdFNvdXJjZSA9IHJlc3VsdC5zY3JpcHRTb3VyY2U7CiAgICAgICAgICAgICAgc2NyaXB0U291cmNlQ2FjaGUuc2V0KHNjcmlwdElkLCBzY3JpcHRTb3VyY2UpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZUxpbmVzID0gc2NyaXB0U291cmNlLnNwbGl0KCJcbiIpOwogICAgICAgICAgICBjb2RlID0gc291cmNlTGluZXNbbG9jYXRpb24ubGluZU51bWJlcl0gfHwgIjxub3QgY2FwdHVyZWQ+IjsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCJbV29ya2VyXSBGYWlsZWQgdG8gZmV0Y2ggc2NyaXB0IHNvdXJjZToiLCBlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGxvY2FscyA9IGxvY2FsU2NvcGU/Lm9iamVjdD8ub2JqZWN0SWQgPyBhd2FpdCBmZXRjaExvY2FsVmFyaWFibGVzKHNlc3Npb24sIGxvY2FsU2NvcGUub2JqZWN0Lm9iamVjdElkKSA6IHt9OwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBmdW5jdGlvbjogZnVuY3Rpb25OYW1lIHx8ICI8YW5vbnltb3VzPiIsCiAgICAgICAgICBsb2NhbHMsCiAgICAgICAgICBmaWxlLAogICAgICAgICAgbGluZTogbG9jYXRpb24/LmxpbmVOdW1iZXIgfHwgMCwKICAgICAgICAgIGNvZGUKICAgICAgICB9OwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGlmIChnbG9iYWwuc2ZEZWJ1ZykgewogICAgICAgICAgY29uc29sZS5lcnJvcigiW1dvcmtlcl0gRXJyb3IgcHJvY2Vzc2luZyBjYWxsIGZyYW1lOiIsIGVycm9yKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZ1bmN0aW9uOiAiPGVycm9yPiIsCiAgICAgICAgICBsb2NhbHM6IHt9LAogICAgICAgICAgZmlsZTogIjx1bmtub3duPiIsCiAgICAgICAgICBsaW5lOiAwLAogICAgICAgICAgY29kZTogIjxub3QgY2FwdHVyZWQ+IgogICAgICAgIH07CiAgICAgIH0KICAgIH0pCiAgKTsKICBwYXJlbnRQb3J0Py5wb3N0TWVzc2FnZSh7IHR5cGU6ICJleGNlcHRpb24iLCBmcmFtZXMgfSk7Cn0KYXN5bmMgZnVuY3Rpb24gaGFuZGxlUGF1c2VkKHNlc3Npb24sIHBhcmFtcykgewogIGNvbnN0IHsgcmVhc29uLCBkYXRhLCBjYWxsRnJhbWVzIH0gPSBwYXJhbXM7CiAgaWYgKHJlYXNvbiAhPT0gImV4Y2VwdGlvbiIgJiYgcmVhc29uICE9PSAicHJvbWlzZVJlamVjdGlvbiIpIHsKICAgIHJldHVybjsKICB9CiAgY29uc3Qgbm9uQXBwUGF0dGVybnMgPSBbCiAgICAvbm9kZTppbnRlcm5hbC8sCiAgICAvaW50ZXJuYWxcLy8sCiAgICAvbm9kZV9tb2R1bGVzLywKICAgIC9ub2RlOmZzLwogIF07CiAgbGV0IGZpcnN0RnJhbWVMaW5lID0gIiI7CiAgbGV0IGRlc2NyaXB0aW9uTGluZXMgPSBbXTsKICBpZiAoZGF0YSAmJiB0eXBlb2YgZGF0YS5kZXNjcmlwdGlvbiA9PT0gInN0cmluZyIpIHsKICAgIGRlc2NyaXB0aW9uTGluZXMgPSBkYXRhLmRlc2NyaXB0aW9uLnNwbGl0KCJcbiIpLmZpbHRlcigobGluZSkgPT4gbGluZS50cmltKCkuc3RhcnRzV2l0aCgiYXQgIikpOwogICAgZmlyc3RGcmFtZUxpbmUgPSBkZXNjcmlwdGlvbkxpbmVzWzBdIHx8ICIiOwogICAgaWYgKCFmaXJzdEZyYW1lTGluZSkgewogICAgICByZXR1cm47CiAgICB9CiAgICBjb25zdCBlcnJvckZyb21Ob25BcHAgPSBub25BcHBQYXR0ZXJucy5zb21lKAogICAgICAocGF0dGVybikgPT4gcGF0dGVybi50ZXN0KGZpcnN0RnJhbWVMaW5lLnRyaW0oKSkKICAgICk7CiAgICBjb25zdCBub2RlTW9kdWxlc0xpc3QgPSBBcnJheS5pc0FycmF5KAogICAgICBnbG9iYWwubm9kZU1vZHVsZXNUb0NvbGxlY3RMb2NhbFZhcmlhYmxlc09uCiAgICApID8gZ2xvYmFsLm5vZGVNb2R1bGVzVG9Db2xsZWN0TG9jYWxWYXJpYWJsZXNPbiA6IFtdOwogICAgaWYgKGVycm9yRnJvbU5vbkFwcCkgewogICAgICBpZiAobm9kZU1vZHVsZXNMaXN0LmluY2x1ZGVzKCJfX2FsbF9fIikpIHsKICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgIGNvbnNvbGUubG9nKAogICAgICAgICAgICAiW1dvcmtlcl0gRXJyb3IgaXMgZnJvbSBub24tYXBwIHNvdXJjZSwgYnV0IGNhcHR1cmluZyBkdWUgdG8gX19hbGxfXyBydWxlLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKG5vZGVNb2R1bGVzTGlzdC5sZW5ndGggPiAwKSB7CiAgICAgICAgY29uc3QgaXNGcm9tQWxsb3dlZE5vZGVNb2R1bGUgPSBub2RlTW9kdWxlc0xpc3Quc29tZSgKICAgICAgICAgIChtb2R1bGVOYW1lKSA9PiBmaXJzdEZyYW1lTGluZS5pbmNsdWRlcyhgJHttb2R1bGVOYW1lfWApCiAgICAgICAgKTsKICAgICAgICBpZiAoIWlzRnJvbUFsbG93ZWROb2RlTW9kdWxlKSB7CiAgICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgICAgY29uc29sZS5sb2coCiAgICAgICAgICAgICAgIltXb3JrZXJdIEVycm9yIGFwcGVhcnMgdG8gYmUgdHJpZ2dlcmVkIGZyb20gbm9uLWFwcGxpY2F0aW9uIHNvdXJjZXM7IGlnbm9yaW5nLiIKICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKGdsb2JhbC5zZkRlYnVnKSB7CiAgICAgICAgICBjb25zb2xlLmxvZygKICAgICAgICAgICAgIltXb3JrZXJdIEVycm9yIGFwcGVhcnMgdG8gYmUgdHJpZ2dlcmVkIGZyb20gbm9uLWFwcGxpY2F0aW9uIHNvdXJjZXM7IGlnbm9yaW5nLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIHJldHVybjsKICAgICAgfQogICAgfQogICAgYXdhaXQgcHJvY2Vzc0NhbGxGcmFtZXMoc2Vzc2lvbiwgY2FsbEZyYW1lcywgZGVzY3JpcHRpb25MaW5lcyk7CiAgfSBlbHNlIHsKICAgIHJldHVybjsKICB9Cn0KYXN5bmMgZnVuY3Rpb24gc3RhcnREZWJ1Z2dlcigpIHsKICBwYXJlbnRQb3J0Py5wb3N0TWVzc2FnZSh7IHR5cGU6ICJtZXNzYWdlIiwgcmVhZHlUb0dldFBhcmFtZXRlcnM6IHRydWUgfSk7CiAgbGV0IHJlc29sdmVNZXNzYWdlUHJvbWlzZTsKICBjb25zdCBtZXNzYWdlUHJvbWlzZSA9IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CiAgICByZXNvbHZlTWVzc2FnZVByb21pc2UgPSByZXNvbHZlOwogIH0pOwogIGxldCBpc1BhdXNlZCA9IGZhbHNlOwogIHBhcmVudFBvcnQ/Lm9uKCJtZXNzYWdlIiwgKG1lc3NhZ2UpID0+IHsKICAgIHRyeSB7CiAgICAgIGlmIChtZXNzYWdlPy50eXBlID09PSAicHJvY2Vzc0V4Y2VwdGlvbiIpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgaWYgKG1lc3NhZ2U/LnNmRGVidWcgIT09IHZvaWQgMCAmJiBtZXNzYWdlPy5zdGFja0RlcHRoTG9jYWxzICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgIGNvbnNvbGUubG9nKCJVcGRhdGluZyBnbG9iYWwgZGVidWcgdmFyaWFibGVzLi4uIik7CiAgICAgICAgfQogICAgICAgIGdsb2JhbC5zZkRlYnVnID0gbWVzc2FnZS5zZkRlYnVnOwogICAgICAgIGdsb2JhbC5zdGFja0RlcHRoTG9jYWxzID0gbWVzc2FnZS5zdGFja0RlcHRoTG9jYWxzOwogICAgICAgIGdsb2JhbC5ub2RlTW9kdWxlc1RvQ29sbGVjdExvY2FsVmFyaWFibGVzT24gPSBtZXNzYWdlLm5vZGVNb2R1bGVzVG9Db2xsZWN0TG9jYWxWYXJpYWJsZXNPbjsKICAgICAgICByZXNvbHZlTWVzc2FnZVByb21pc2UoKTsKICAgICAgfQogICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgaWYgKGdsb2JhbC5zZkRlYnVnKSB7CiAgICAgICAgY29uc29sZS5lcnJvcigiXHUyNzRDIEVycm9yIGluIG1lc3NhZ2UgaGFuZGxpbmc6IiwgZXJyb3IpOwogICAgICB9CiAgICB9CiAgfSk7CiAgYXdhaXQgbWVzc2FnZVByb21pc2U7CiAgdHJ5IHsKICAgIGNvbnN0IHNlc3Npb24gPSBuZXcgU2Vzc2lvbigpOwogICAgc2Vzc2lvbi5jb25uZWN0VG9NYWluVGhyZWFkKCk7CiAgICBzZXNzaW9uLm9uKCJEZWJ1Z2dlci5yZXN1bWVkIiwgKCkgPT4gewogICAgICBpc1BhdXNlZCA9IGZhbHNlOwogICAgfSk7CiAgICBzZXNzaW9uLm9uKCJEZWJ1Z2dlci5wYXVzZWQiLCBhc3luYyAoZXZlbnQpID0+IHsKICAgICAgaXNQYXVzZWQgPSB0cnVlOwogICAgICBoYW5kbGVQYXVzZWQoc2Vzc2lvbiwgZXZlbnQucGFyYW1zKS50aGVuKAogICAgICAgIGFzeW5jICgpID0+IHsKICAgICAgICAgIGlmIChpc1BhdXNlZCkgewogICAgICAgICAgICBhd2FpdCBzZXNzaW9uLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgKF8pID0+IHsKICAgICAgICAgIGlmIChpc1BhdXNlZCkgewogICAgICAgICAgICBhd2FpdCBzZXNzaW9uLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgKTsKICAgIH0pOwogICAgYXdhaXQgc2Vzc2lvbi5wb3N0KCJEZWJ1Z2dlci5lbmFibGUiKTsKICAgIGF3YWl0IHNlc3Npb24ucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLCB7CiAgICAgIHN0YXRlOiB3b3JrZXJEYXRhPy5jYXB0dXJlQWxsRXhjZXB0aW9ucyA/ICJhbGwiIDogInVuY2F1Z2h0IgogICAgfSk7CiAgfSBjYXRjaCAoZXJyb3IpIHsKICAgIGlmIChnbG9iYWwuc2ZEZWJ1ZykgewogICAgICBjb25zb2xlLmVycm9yKCJbV29ya2VyXSBlcnJvciAiLCBlcnJvcik7CiAgICB9CiAgfQogIGlmIChnbG9iYWwuc2ZEZWJ1ZykgewogICAgY29uc29sZS5sb2coIltXb3JrZXJdIERlYnVnZ2VyIHN0YXJ0ZWQgc3VjY2Vzc2Z1bGx5LiIpOwogIH0KfQphc3luYyBmdW5jdGlvbiB1bnJvbGxPYmplY3Qoc2Vzc2lvbiwgb2JqZWN0SWQsIG5hbWUsIHZhcnMpIHsKICBjb25zdCBwcm9wZXJ0aWVzID0gYXdhaXQgc2Vzc2lvbi5wb3N0KCJSdW50aW1lLmdldFByb3BlcnRpZXMiLCB7CiAgICBvYmplY3RJZCwKICAgIG93blByb3BlcnRpZXM6IHRydWUKICB9KTsKICB2YXJzW25hbWVdID0gcHJvcGVydGllcy5yZXN1bHQubWFwKCh2KSA9PiBbdi5uYW1lLCB2LnZhbHVlPy52YWx1ZV0pLnJlZHVjZSgob2JqLCBba2V5LCB2YWxdKSA9PiB7CiAgICBvYmpba2V5XSA9IHZhbDsKICAgIHJldHVybiBvYmo7CiAgfSwge30pOwp9CmFzeW5jIGZ1bmN0aW9uIHVucm9sbEFycmF5KHNlc3Npb24sIG9iamVjdElkLCBuYW1lLCB2YXJzKSB7CiAgY29uc3QgcHJvcGVydGllcyA9IGF3YWl0IHNlc3Npb24ucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIiwgewogICAgb2JqZWN0SWQsCiAgICBvd25Qcm9wZXJ0aWVzOiB0cnVlCiAgfSk7CiAgdmFyc1tuYW1lXSA9IHByb3BlcnRpZXMucmVzdWx0LmZpbHRlcigodikgPT4gdi5uYW1lICE9PSAibGVuZ3RoIiAmJiAhaXNOYU4ocGFyc2VJbnQodi5uYW1lLCAxMCkpKS5zb3J0KChhLCBiKSA9PiBwYXJzZUludChhLm5hbWUsIDEwKSAtIHBhcnNlSW50KGIubmFtZSwgMTApKS5tYXAoKHYpID0+IHYudmFsdWU/LnZhbHVlKTsKfQpmdW5jdGlvbiB1bnJvbGxPdGhlcihwcm9wLCB2YXJzKSB7CiAgaWYgKCFwcm9wLnZhbHVlKSB7CiAgICByZXR1cm47CiAgfQogIGlmICgidmFsdWUiIGluIHByb3AudmFsdWUpIHsKICAgIGlmIChwcm9wLnZhbHVlLnZhbHVlID09PSB2b2lkIDAgfHwgcHJvcC52YWx1ZS52YWx1ZSA9PT0gbnVsbCkgewogICAgICB2YXJzW3Byb3AubmFtZV0gPSBgPCR7cHJvcC52YWx1ZS52YWx1ZX0+YDsKICAgICAgcmV0dXJuOwogICAgfQogICAgdmFyc1twcm9wLm5hbWVdID0gcHJvcC52YWx1ZS52YWx1ZTsKICAgIHJldHVybjsKICB9CiAgaWYgKCJkZXNjcmlwdGlvbiIgaW4gcHJvcC52YWx1ZSAmJiBwcm9wLnZhbHVlLnR5cGUgIT09ICJmdW5jdGlvbiIpIHsKICAgIHZhcnNbcHJvcC5uYW1lXSA9IGA8JHtwcm9wLnZhbHVlLmRlc2NyaXB0aW9ufT5gOwogICAgcmV0dXJuOwogIH0KICBpZiAocHJvcC52YWx1ZS50eXBlID09PSAidW5kZWZpbmVkIikgewogICAgdmFyc1twcm9wLm5hbWVdID0gIjx1bmRlZmluZWQ+IjsKICAgIHJldHVybjsKICB9Cn0KYXN5bmMgZnVuY3Rpb24gZmV0Y2hMb2NhbFZhcmlhYmxlcyhzZXNzaW9uLCBvYmplY3RJZCkgewogIGlmICghb2JqZWN0SWQpIHJldHVybiB7fTsKICB0cnkgewogICAgY29uc3QgeyByZXN1bHQgfSA9IGF3YWl0IHNlc3Npb24ucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIiwgewogICAgICBvYmplY3RJZCwKICAgICAgb3duUHJvcGVydGllczogdHJ1ZQogICAgfSk7CiAgICBjb25zdCBwcm9wZXJ0aWVzID0gcmVzdWx0OwogICAgaWYgKHByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgdmFyaWFibGVzID0ge307CiAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgaWYgKHByb3A/LnZhbHVlPy5vYmplY3RJZCAmJiBwcm9wPy52YWx1ZS5jbGFzc05hbWUgPT09ICJBcnJheSIpIHsKICAgICAgICAgIGNvbnN0IGlkID0gcHJvcC52YWx1ZS5vYmplY3RJZDsKICAgICAgICAgIGF3YWl0IHVucm9sbEFycmF5KHNlc3Npb24sIGlkLCBwcm9wLm5hbWUsIHZhcmlhYmxlcyk7CiAgICAgICAgfSBlbHNlIGlmIChwcm9wPy52YWx1ZT8ub2JqZWN0SWQgJiYgcHJvcD8udmFsdWU/LmNsYXNzTmFtZSA9PT0gIk9iamVjdCIpIHsKICAgICAgICAgIGNvbnN0IGlkID0gcHJvcC52YWx1ZS5vYmplY3RJZDsKICAgICAgICAgIGF3YWl0IHVucm9sbE9iamVjdChzZXNzaW9uLCBpZCwgcHJvcC5uYW1lLCB2YXJpYWJsZXMpOwogICAgICAgIH0gZWxzZSBpZiAocHJvcD8udmFsdWUpIHsKICAgICAgICAgIHVucm9sbE90aGVyKHByb3AsIHZhcmlhYmxlcyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB2YXJpYWJsZXM7CiAgICB9CiAgfSBjYXRjaCAoZXJyKSB7CiAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgY29uc29sZS5lcnJvcigiW1dvcmtlcl0gRmFpbGVkIHRvIGZldGNoIGxvY2FsIHZhcmlhYmxlczoiLCBlcnIpOwogICAgfQogICAgcmV0dXJuIHt9OwogIH0KfQpzdGFydERlYnVnZ2VyKCkuY2F0Y2goKGVycm9yKSA9PiB7CiAgaWYgKGdsb2JhbC5zZkRlYnVnKSB7CiAgICBjb25zb2xlLmVycm9yKCJbV29ya2VyXSBGYWlsZWQgdG8gc3RhcnQgZGVidWdnZXI6IiwgZXJyb3IpOwogIH0KfSk7CnNldEludGVydmFsKCgpID0+IHsKfSwgMWU0KTsKZXhwb3J0IHsKICBwcm9jZXNzQ2FsbEZyYW1lcwp9Owo="), { workerData: { captureAllExceptions: !0 } });
|
|
289
|
+
const I = new Gn(new URL("data:application/javascript;base64,Ly8gc3JjL2RlYnVnZ2VyV29ya2VyLnRzCmltcG9ydCB7IFNlc3Npb24gfSBmcm9tICJpbnNwZWN0b3IvcHJvbWlzZXMiOwppbXBvcnQgeyBwYXJlbnRQb3J0LCB3b3JrZXJEYXRhIH0gZnJvbSAid29ya2VyX3RocmVhZHMiOwpnbG9iYWwuc2ZEZWJ1ZyA9IHZvaWQgMDsKZ2xvYmFsLnN0YWNrRGVwdGhMb2NhbHMgPSB2b2lkIDA7Cmdsb2JhbC5ub2RlTW9kdWxlc1RvQ29sbGVjdExvY2FsVmFyaWFibGVzT24gPSB2b2lkIDA7CnZhciBzY3JpcHRTb3VyY2VDYWNoZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgTWFwKCk7CnZhciBub25BcHBGcmFtZVBhdHRlcm5zID0gWwogIC9ub2RlOmludGVybmFsLywKICAvaW50ZXJuYWxcLy8sCiAgL25vZGVfbW9kdWxlcy8sCiAgL25vZGU6ZnMvCl07CmFzeW5jIGZ1bmN0aW9uIHByb2Nlc3NDYWxsRnJhbWVzKHNlc3Npb24sIGNhbGxGcmFtZXMsIGRlc2NyaXB0aW9uTGluZXMpIHsKICBjb25zdCBsaW1pdGVkQ2FsbEZyYW1lcyA9IGNhbGxGcmFtZXMuc2xpY2UoMCwgZ2xvYmFsLnN0YWNrRGVwdGhMb2NhbHMpOwogIGlmIChsaW1pdGVkQ2FsbEZyYW1lcy5sZW5ndGggPiAwKSB7CiAgICBjb25zdCBmaXJzdFVybCA9IGxpbWl0ZWRDYWxsRnJhbWVzWzBdLnVybCB8fCAiIjsKICAgIGlmIChub25BcHBGcmFtZVBhdHRlcm5zLnNvbWUoKHApID0+IHAudGVzdChmaXJzdFVybCkpKSB7CiAgICAgIHBhcmVudFBvcnQ/LnBvc3RNZXNzYWdlKHsgdHlwZTogImV4Y2VwdGlvbiIsIGZyYW1lczogW10gfSk7CiAgICAgIHJldHVybjsKICAgIH0KICB9CiAgY29uc3QgZnJhbWVzID0gYXdhaXQgUHJvbWlzZS5hbGwoCiAgICBsaW1pdGVkQ2FsbEZyYW1lcy5tYXAoYXN5bmMgKGZyYW1lLCBpbmRleCkgPT4gewogICAgICB0cnkgewogICAgICAgIGNvbnN0IHsgZnVuY3Rpb25OYW1lLCBsb2NhdGlvbiwgdXJsLCBzY29wZUNoYWluIH0gPSBmcmFtZTsKICAgICAgICBjb25zdCBsb2NhbFNjb3BlID0gc2NvcGVDaGFpbi5maW5kKChzY29wZSkgPT4gc2NvcGUudHlwZSA9PT0gImxvY2FsIik7CiAgICAgICAgbGV0IGNvZGUgPSAiPG5vdCBjYXB0dXJlZD4iOwogICAgICAgIGxldCBmaWxlID0gIiI7CiAgICAgICAgaWYgKHVybCAmJiB1cmwudHJpbSgpICE9PSAiIikgewogICAgICAgICAgZmlsZSA9IHVybDsKICAgICAgICB9IGVsc2UgaWYgKGRlc2NyaXB0aW9uTGluZXNbaW5kZXhdKSB7CiAgICAgICAgICBmaWxlID0gZGVzY3JpcHRpb25MaW5lc1tpbmRleF0udHJpbSgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBmaWxlID0gIjx1bmtub3duPiI7CiAgICAgICAgfQogICAgICAgIGlmIChsb2NhdGlvbiAmJiBsb2NhdGlvbi5zY3JpcHRJZCkgewogICAgICAgICAgY29uc3Qgc2NyaXB0SWQgPSBsb2NhdGlvbi5zY3JpcHRJZDsKICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIGxldCBzY3JpcHRTb3VyY2UgPSBzY3JpcHRTb3VyY2VDYWNoZS5nZXQoc2NyaXB0SWQpOwogICAgICAgICAgICBpZiAoc2NyaXB0U291cmNlID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBzZXNzaW9uLnBvc3QoCiAgICAgICAgICAgICAgICAiRGVidWdnZXIuZ2V0U2NyaXB0U291cmNlIiwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgc2NyaXB0SWQKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICApOwogICAgICAgICAgICAgIHNjcmlwdFNvdXJjZSA9IHJlc3VsdC5zY3JpcHRTb3VyY2U7CiAgICAgICAgICAgICAgc2NyaXB0U291cmNlQ2FjaGUuc2V0KHNjcmlwdElkLCBzY3JpcHRTb3VyY2UpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0IHNvdXJjZUxpbmVzID0gc2NyaXB0U291cmNlLnNwbGl0KCJcbiIpOwogICAgICAgICAgICBjb2RlID0gc291cmNlTGluZXNbbG9jYXRpb24ubGluZU51bWJlcl0gfHwgIjxub3QgY2FwdHVyZWQ+IjsKICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCJbV29ya2VyXSBGYWlsZWQgdG8gZmV0Y2ggc2NyaXB0IHNvdXJjZToiLCBlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNvbnN0IGxvY2FscyA9IGxvY2FsU2NvcGU/Lm9iamVjdD8ub2JqZWN0SWQgPyBhd2FpdCBmZXRjaExvY2FsVmFyaWFibGVzKHNlc3Npb24sIGxvY2FsU2NvcGUub2JqZWN0Lm9iamVjdElkKSA6IHt9OwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBmdW5jdGlvbjogZnVuY3Rpb25OYW1lIHx8ICI8YW5vbnltb3VzPiIsCiAgICAgICAgICBsb2NhbHMsCiAgICAgICAgICBmaWxlLAogICAgICAgICAgbGluZTogbG9jYXRpb24/LmxpbmVOdW1iZXIgfHwgMCwKICAgICAgICAgIGNvZGUKICAgICAgICB9OwogICAgICB9IGNhdGNoIChlcnJvcikgewogICAgICAgIGlmIChnbG9iYWwuc2ZEZWJ1ZykgewogICAgICAgICAgY29uc29sZS5lcnJvcigiW1dvcmtlcl0gRXJyb3IgcHJvY2Vzc2luZyBjYWxsIGZyYW1lOiIsIGVycm9yKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgIGZ1bmN0aW9uOiAiPGVycm9yPiIsCiAgICAgICAgICBsb2NhbHM6IHt9LAogICAgICAgICAgZmlsZTogIjx1bmtub3duPiIsCiAgICAgICAgICBsaW5lOiAwLAogICAgICAgICAgY29kZTogIjxub3QgY2FwdHVyZWQ+IgogICAgICAgIH07CiAgICAgIH0KICAgIH0pCiAgKTsKICBwYXJlbnRQb3J0Py5wb3N0TWVzc2FnZSh7IHR5cGU6ICJleGNlcHRpb24iLCBmcmFtZXMgfSk7Cn0KYXN5bmMgZnVuY3Rpb24gaGFuZGxlUGF1c2VkKHNlc3Npb24sIHBhcmFtcykgewogIGNvbnN0IHsgcmVhc29uLCBkYXRhLCBjYWxsRnJhbWVzIH0gPSBwYXJhbXM7CiAgaWYgKHJlYXNvbiAhPT0gImV4Y2VwdGlvbiIgJiYgcmVhc29uICE9PSAicHJvbWlzZVJlamVjdGlvbiIpIHsKICAgIHJldHVybjsKICB9CiAgY29uc3Qgbm9uQXBwUGF0dGVybnMgPSBbCiAgICAvbm9kZTppbnRlcm5hbC8sCiAgICAvaW50ZXJuYWxcLy8sCiAgICAvbm9kZV9tb2R1bGVzLywKICAgIC9ub2RlOmZzLwogIF07CiAgbGV0IGZpcnN0RnJhbWVMaW5lID0gIiI7CiAgbGV0IGRlc2NyaXB0aW9uTGluZXMgPSBbXTsKICBpZiAoZGF0YSAmJiB0eXBlb2YgZGF0YS5kZXNjcmlwdGlvbiA9PT0gInN0cmluZyIpIHsKICAgIGRlc2NyaXB0aW9uTGluZXMgPSBkYXRhLmRlc2NyaXB0aW9uLnNwbGl0KCJcbiIpLmZpbHRlcigobGluZSkgPT4gbGluZS50cmltKCkuc3RhcnRzV2l0aCgiYXQgIikpOwogICAgZmlyc3RGcmFtZUxpbmUgPSBkZXNjcmlwdGlvbkxpbmVzWzBdIHx8ICIiOwogICAgaWYgKCFmaXJzdEZyYW1lTGluZSkgewogICAgICByZXR1cm47CiAgICB9CiAgICBjb25zdCBlcnJvckZyb21Ob25BcHAgPSBub25BcHBQYXR0ZXJucy5zb21lKAogICAgICAocGF0dGVybikgPT4gcGF0dGVybi50ZXN0KGZpcnN0RnJhbWVMaW5lLnRyaW0oKSkKICAgICk7CiAgICBjb25zdCBub2RlTW9kdWxlc0xpc3QgPSBBcnJheS5pc0FycmF5KAogICAgICBnbG9iYWwubm9kZU1vZHVsZXNUb0NvbGxlY3RMb2NhbFZhcmlhYmxlc09uCiAgICApID8gZ2xvYmFsLm5vZGVNb2R1bGVzVG9Db2xsZWN0TG9jYWxWYXJpYWJsZXNPbiA6IFtdOwogICAgaWYgKGVycm9yRnJvbU5vbkFwcCkgewogICAgICBpZiAobm9kZU1vZHVsZXNMaXN0LmluY2x1ZGVzKCJfX2FsbF9fIikpIHsKICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgIGNvbnNvbGUubG9nKAogICAgICAgICAgICAiW1dvcmtlcl0gRXJyb3IgaXMgZnJvbSBub24tYXBwIHNvdXJjZSwgYnV0IGNhcHR1cmluZyBkdWUgdG8gX19hbGxfXyBydWxlLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICB9IGVsc2UgaWYgKG5vZGVNb2R1bGVzTGlzdC5sZW5ndGggPiAwKSB7CiAgICAgICAgY29uc3QgaXNGcm9tQWxsb3dlZE5vZGVNb2R1bGUgPSBub2RlTW9kdWxlc0xpc3Quc29tZSgKICAgICAgICAgIChtb2R1bGVOYW1lKSA9PiBmaXJzdEZyYW1lTGluZS5pbmNsdWRlcyhgJHttb2R1bGVOYW1lfWApCiAgICAgICAgKTsKICAgICAgICBpZiAoIWlzRnJvbUFsbG93ZWROb2RlTW9kdWxlKSB7CiAgICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgICAgY29uc29sZS5sb2coCiAgICAgICAgICAgICAgIltXb3JrZXJdIEVycm9yIGFwcGVhcnMgdG8gYmUgdHJpZ2dlcmVkIGZyb20gbm9uLWFwcGxpY2F0aW9uIHNvdXJjZXM7IGlnbm9yaW5nLiIKICAgICAgICAgICAgKTsKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKGdsb2JhbC5zZkRlYnVnKSB7CiAgICAgICAgICBjb25zb2xlLmxvZygKICAgICAgICAgICAgIltXb3JrZXJdIEVycm9yIGFwcGVhcnMgdG8gYmUgdHJpZ2dlcmVkIGZyb20gbm9uLWFwcGxpY2F0aW9uIHNvdXJjZXM7IGlnbm9yaW5nLiIKICAgICAgICAgICk7CiAgICAgICAgfQogICAgICAgIHJldHVybjsKICAgICAgfQogICAgfQogICAgYXdhaXQgcHJvY2Vzc0NhbGxGcmFtZXMoc2Vzc2lvbiwgY2FsbEZyYW1lcywgZGVzY3JpcHRpb25MaW5lcyk7CiAgfSBlbHNlIHsKICAgIHJldHVybjsKICB9Cn0KYXN5bmMgZnVuY3Rpb24gc3RhcnREZWJ1Z2dlcigpIHsKICBwYXJlbnRQb3J0Py5wb3N0TWVzc2FnZSh7IHR5cGU6ICJtZXNzYWdlIiwgcmVhZHlUb0dldFBhcmFtZXRlcnM6IHRydWUgfSk7CiAgbGV0IHJlc29sdmVNZXNzYWdlUHJvbWlzZTsKICBjb25zdCBtZXNzYWdlUHJvbWlzZSA9IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CiAgICByZXNvbHZlTWVzc2FnZVByb21pc2UgPSByZXNvbHZlOwogIH0pOwogIGxldCBpc1BhdXNlZCA9IGZhbHNlOwogIHBhcmVudFBvcnQ/Lm9uKCJtZXNzYWdlIiwgKG1lc3NhZ2UpID0+IHsKICAgIHRyeSB7CiAgICAgIGlmIChtZXNzYWdlPy50eXBlID09PSAicHJvY2Vzc0V4Y2VwdGlvbiIpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgaWYgKG1lc3NhZ2U/LnNmRGVidWcgIT09IHZvaWQgMCAmJiBtZXNzYWdlPy5zdGFja0RlcHRoTG9jYWxzICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgICAgIGNvbnNvbGUubG9nKCJVcGRhdGluZyBnbG9iYWwgZGVidWcgdmFyaWFibGVzLi4uIik7CiAgICAgICAgfQogICAgICAgIGdsb2JhbC5zZkRlYnVnID0gbWVzc2FnZS5zZkRlYnVnOwogICAgICAgIGdsb2JhbC5zdGFja0RlcHRoTG9jYWxzID0gbWVzc2FnZS5zdGFja0RlcHRoTG9jYWxzOwogICAgICAgIGdsb2JhbC5ub2RlTW9kdWxlc1RvQ29sbGVjdExvY2FsVmFyaWFibGVzT24gPSBtZXNzYWdlLm5vZGVNb2R1bGVzVG9Db2xsZWN0TG9jYWxWYXJpYWJsZXNPbjsKICAgICAgICByZXNvbHZlTWVzc2FnZVByb21pc2UoKTsKICAgICAgfQogICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgaWYgKGdsb2JhbC5zZkRlYnVnKSB7CiAgICAgICAgY29uc29sZS5lcnJvcigiXHUyNzRDIEVycm9yIGluIG1lc3NhZ2UgaGFuZGxpbmc6IiwgZXJyb3IpOwogICAgICB9CiAgICB9CiAgfSk7CiAgYXdhaXQgbWVzc2FnZVByb21pc2U7CiAgdHJ5IHsKICAgIGNvbnN0IHNlc3Npb24gPSBuZXcgU2Vzc2lvbigpOwogICAgc2Vzc2lvbi5jb25uZWN0VG9NYWluVGhyZWFkKCk7CiAgICBzZXNzaW9uLm9uKCJEZWJ1Z2dlci5yZXN1bWVkIiwgKCkgPT4gewogICAgICBpc1BhdXNlZCA9IGZhbHNlOwogICAgfSk7CiAgICBzZXNzaW9uLm9uKCJEZWJ1Z2dlci5wYXVzZWQiLCBhc3luYyAoZXZlbnQpID0+IHsKICAgICAgaXNQYXVzZWQgPSB0cnVlOwogICAgICBoYW5kbGVQYXVzZWQoc2Vzc2lvbiwgZXZlbnQucGFyYW1zKS50aGVuKAogICAgICAgIGFzeW5jICgpID0+IHsKICAgICAgICAgIGlmIChpc1BhdXNlZCkgewogICAgICAgICAgICBhd2FpdCBzZXNzaW9uLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpOwogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgYXN5bmMgKF8pID0+IHsKICAgICAgICAgIGlmIChpc1BhdXNlZCkgewogICAgICAgICAgICBhd2FpdCBzZXNzaW9uLnBvc3QoIkRlYnVnZ2VyLnJlc3VtZSIpOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgKTsKICAgIH0pOwogICAgYXdhaXQgc2Vzc2lvbi5wb3N0KCJEZWJ1Z2dlci5lbmFibGUiKTsKICAgIGF3YWl0IHNlc3Npb24ucG9zdCgiRGVidWdnZXIuc2V0UGF1c2VPbkV4Y2VwdGlvbnMiLCB7CiAgICAgIHN0YXRlOiB3b3JrZXJEYXRhPy5jYXB0dXJlQWxsRXhjZXB0aW9ucyA/ICJhbGwiIDogInVuY2F1Z2h0IgogICAgfSk7CiAgfSBjYXRjaCAoZXJyb3IpIHsKICAgIGlmIChnbG9iYWwuc2ZEZWJ1ZykgewogICAgICBjb25zb2xlLmVycm9yKCJbV29ya2VyXSBlcnJvciAiLCBlcnJvcik7CiAgICB9CiAgfQogIGlmIChnbG9iYWwuc2ZEZWJ1ZykgewogICAgY29uc29sZS5sb2coIltXb3JrZXJdIERlYnVnZ2VyIHN0YXJ0ZWQgc3VjY2Vzc2Z1bGx5LiIpOwogIH0KfQphc3luYyBmdW5jdGlvbiB1bnJvbGxPYmplY3Qoc2Vzc2lvbiwgb2JqZWN0SWQsIG5hbWUsIHZhcnMpIHsKICBjb25zdCBwcm9wZXJ0aWVzID0gYXdhaXQgc2Vzc2lvbi5wb3N0KCJSdW50aW1lLmdldFByb3BlcnRpZXMiLCB7CiAgICBvYmplY3RJZCwKICAgIG93blByb3BlcnRpZXM6IHRydWUKICB9KTsKICB2YXJzW25hbWVdID0gcHJvcGVydGllcy5yZXN1bHQubWFwKCh2KSA9PiBbdi5uYW1lLCB2LnZhbHVlPy52YWx1ZV0pLnJlZHVjZSgob2JqLCBba2V5LCB2YWxdKSA9PiB7CiAgICBvYmpba2V5XSA9IHZhbDsKICAgIHJldHVybiBvYmo7CiAgfSwge30pOwp9CmFzeW5jIGZ1bmN0aW9uIHVucm9sbEFycmF5KHNlc3Npb24sIG9iamVjdElkLCBuYW1lLCB2YXJzKSB7CiAgY29uc3QgcHJvcGVydGllcyA9IGF3YWl0IHNlc3Npb24ucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIiwgewogICAgb2JqZWN0SWQsCiAgICBvd25Qcm9wZXJ0aWVzOiB0cnVlCiAgfSk7CiAgdmFyc1tuYW1lXSA9IHByb3BlcnRpZXMucmVzdWx0LmZpbHRlcigodikgPT4gdi5uYW1lICE9PSAibGVuZ3RoIiAmJiAhaXNOYU4ocGFyc2VJbnQodi5uYW1lLCAxMCkpKS5zb3J0KChhLCBiKSA9PiBwYXJzZUludChhLm5hbWUsIDEwKSAtIHBhcnNlSW50KGIubmFtZSwgMTApKS5tYXAoKHYpID0+IHYudmFsdWU/LnZhbHVlKTsKfQpmdW5jdGlvbiB1bnJvbGxPdGhlcihwcm9wLCB2YXJzKSB7CiAgaWYgKCFwcm9wLnZhbHVlKSB7CiAgICByZXR1cm47CiAgfQogIGlmICgidmFsdWUiIGluIHByb3AudmFsdWUpIHsKICAgIGlmIChwcm9wLnZhbHVlLnZhbHVlID09PSB2b2lkIDAgfHwgcHJvcC52YWx1ZS52YWx1ZSA9PT0gbnVsbCkgewogICAgICB2YXJzW3Byb3AubmFtZV0gPSBgPCR7cHJvcC52YWx1ZS52YWx1ZX0+YDsKICAgICAgcmV0dXJuOwogICAgfQogICAgdmFyc1twcm9wLm5hbWVdID0gcHJvcC52YWx1ZS52YWx1ZTsKICAgIHJldHVybjsKICB9CiAgaWYgKCJkZXNjcmlwdGlvbiIgaW4gcHJvcC52YWx1ZSAmJiBwcm9wLnZhbHVlLnR5cGUgIT09ICJmdW5jdGlvbiIpIHsKICAgIHZhcnNbcHJvcC5uYW1lXSA9IGA8JHtwcm9wLnZhbHVlLmRlc2NyaXB0aW9ufT5gOwogICAgcmV0dXJuOwogIH0KICBpZiAocHJvcC52YWx1ZS50eXBlID09PSAidW5kZWZpbmVkIikgewogICAgdmFyc1twcm9wLm5hbWVdID0gIjx1bmRlZmluZWQ+IjsKICAgIHJldHVybjsKICB9Cn0KYXN5bmMgZnVuY3Rpb24gZmV0Y2hMb2NhbFZhcmlhYmxlcyhzZXNzaW9uLCBvYmplY3RJZCkgewogIGlmICghb2JqZWN0SWQpIHJldHVybiB7fTsKICB0cnkgewogICAgY29uc3QgeyByZXN1bHQgfSA9IGF3YWl0IHNlc3Npb24ucG9zdCgiUnVudGltZS5nZXRQcm9wZXJ0aWVzIiwgewogICAgICBvYmplY3RJZCwKICAgICAgb3duUHJvcGVydGllczogdHJ1ZQogICAgfSk7CiAgICBjb25zdCBwcm9wZXJ0aWVzID0gcmVzdWx0OwogICAgaWYgKHByb3BlcnRpZXMpIHsKICAgICAgY29uc3QgdmFyaWFibGVzID0ge307CiAgICAgIGZvciAoY29uc3QgcHJvcCBvZiBwcm9wZXJ0aWVzKSB7CiAgICAgICAgaWYgKHByb3A/LnZhbHVlPy5vYmplY3RJZCAmJiBwcm9wPy52YWx1ZS5jbGFzc05hbWUgPT09ICJBcnJheSIpIHsKICAgICAgICAgIGNvbnN0IGlkID0gcHJvcC52YWx1ZS5vYmplY3RJZDsKICAgICAgICAgIGF3YWl0IHVucm9sbEFycmF5KHNlc3Npb24sIGlkLCBwcm9wLm5hbWUsIHZhcmlhYmxlcyk7CiAgICAgICAgfSBlbHNlIGlmIChwcm9wPy52YWx1ZT8ub2JqZWN0SWQgJiYgcHJvcD8udmFsdWU/LmNsYXNzTmFtZSA9PT0gIk9iamVjdCIpIHsKICAgICAgICAgIGNvbnN0IGlkID0gcHJvcC52YWx1ZS5vYmplY3RJZDsKICAgICAgICAgIGF3YWl0IHVucm9sbE9iamVjdChzZXNzaW9uLCBpZCwgcHJvcC5uYW1lLCB2YXJpYWJsZXMpOwogICAgICAgIH0gZWxzZSBpZiAocHJvcD8udmFsdWUpIHsKICAgICAgICAgIHVucm9sbE90aGVyKHByb3AsIHZhcmlhYmxlcyk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiB2YXJpYWJsZXM7CiAgICB9CiAgfSBjYXRjaCAoZXJyKSB7CiAgICBpZiAoZ2xvYmFsLnNmRGVidWcpIHsKICAgICAgY29uc29sZS5lcnJvcigiW1dvcmtlcl0gRmFpbGVkIHRvIGZldGNoIGxvY2FsIHZhcmlhYmxlczoiLCBlcnIpOwogICAgfQogICAgcmV0dXJuIHt9OwogIH0KfQpzdGFydERlYnVnZ2VyKCkuY2F0Y2goKGVycm9yKSA9PiB7CiAgaWYgKGdsb2JhbC5zZkRlYnVnKSB7CiAgICBjb25zb2xlLmVycm9yKCJbV29ya2VyXSBGYWlsZWQgdG8gc3RhcnQgZGVidWdnZXI6IiwgZXJyb3IpOwogIH0KfSk7CnNldEludGVydmFsKCgpID0+IHsKfSwgMWU0KTsKZXhwb3J0IHsKICBwcm9jZXNzQ2FsbEZyYW1lcwp9Owo="), { workerData: { captureAllExceptions: !0 } });
|
|
290
290
|
let e = null;
|
|
291
|
-
const
|
|
292
|
-
|
|
293
|
-
if (typeof g == "string" && d().sfDebug && y(`[Worker] ${g}`), g.readyToGetParameters &&
|
|
294
|
-
const { frames:
|
|
291
|
+
const c = /* @__PURE__ */ new WeakMap();
|
|
292
|
+
I.on("message", async (g) => {
|
|
293
|
+
if (typeof g == "string" && d().sfDebug && y(`[Worker] ${g}`), g.readyToGetParameters && I.postMessage({ sfDebug: d().sfDebug, stackDepthLocals: d().stackDepthLocals, nodeModulesToCollectLocalVariablesOn: d().nodeModulesToCollectLocalVariablesOn }), g.type === "exception") {
|
|
294
|
+
const { frames: l } = g, C = e;
|
|
295
295
|
if (!C) return;
|
|
296
|
-
const
|
|
297
|
-
return
|
|
298
|
-
`).slice(1).map((
|
|
299
|
-
const f = /at (.+?) \((.+):(\d+):(\d+)\)/.exec(
|
|
296
|
+
const A = (function(m) {
|
|
297
|
+
return m ? m.split(`
|
|
298
|
+
`).slice(1).map((o) => {
|
|
299
|
+
const f = /at (.+?) \((.+):(\d+):(\d+)\)/.exec(o) || /at (.+):(\d+):(\d+)/.exec(o);
|
|
300
300
|
if (f) {
|
|
301
|
-
const [, W, B, r,
|
|
302
|
-
return new v({ function: W || "<anonymous>", locals: {}, file: B || "<unknown>", line: parseInt(r, 10) || 0, code: "<not captured>", column: parseInt(
|
|
301
|
+
const [, W, B, r, b] = f;
|
|
302
|
+
return new v({ function: W || "<anonymous>", locals: {}, file: B || "<unknown>", line: parseInt(r, 10) || 0, code: "<not captured>", column: parseInt(b) || 0 });
|
|
303
303
|
}
|
|
304
304
|
return new v({ function: "<unknown>", locals: {}, file: "<unknown>", line: 0, code: "<not captured>", column: 0 });
|
|
305
305
|
}) : [];
|
|
306
|
-
})(
|
|
306
|
+
})(Yn(C.stack)), Z = (function(m, o) {
|
|
307
307
|
const f = [];
|
|
308
308
|
let W = -1, B = -1;
|
|
309
|
-
for (let r = 0; r <
|
|
310
|
-
const
|
|
311
|
-
if (B = r,
|
|
312
|
-
for (let u = 0; u <
|
|
313
|
-
const G =
|
|
314
|
-
if (
|
|
315
|
-
W = u, S = 0, d().sfDebug && y(`✅ Matched Frame Found: ${
|
|
309
|
+
for (let r = 0; r < m.length; r++) {
|
|
310
|
+
const b = wn(m[r].file);
|
|
311
|
+
if (B = r, b !== "<unknown>") {
|
|
312
|
+
for (let u = 0; u < o.length; u++) {
|
|
313
|
+
const G = o[u];
|
|
314
|
+
if (ln(G, b) || typeof G.file == "string" && G.file.includes(b)) {
|
|
315
|
+
W = u, S = 0, d().sfDebug && y(`✅ Matched Frame Found: ${b} @ Debugger Frame ${u}`);
|
|
316
316
|
break;
|
|
317
317
|
}
|
|
318
318
|
}
|
|
319
319
|
if (W !== -1) break;
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
|
-
if (W === -1) return S === 10 ? (S = 0,
|
|
322
|
+
if (W === -1) return S === 10 ? (S = 0, m) : (++S, d().sfDebug && y(`"❌ No matching frame found. Checking once again, Attempt N ${S}"`), []);
|
|
323
323
|
d().sfDebug && y(`🔄 Merging from matched index ${W} onward...`);
|
|
324
|
-
for (let r = 0; r <
|
|
325
|
-
const
|
|
326
|
-
f.push(new v({ function: u?.function ||
|
|
324
|
+
for (let r = 0; r < o.length; r++) {
|
|
325
|
+
const b = m[B + r], u = o[W + r];
|
|
326
|
+
f.push(new v({ function: u?.function || b?.function || "<anonymous>", locals: u?.locals || b?.locals || {}, file: b?.file || u?.file || "<unknown>", line: u?.line || b?.line || 0, code: u?.code || b?.code || "<not captured>" }));
|
|
327
327
|
}
|
|
328
328
|
return f;
|
|
329
|
-
})(
|
|
330
|
-
if (
|
|
329
|
+
})(A, l || []);
|
|
330
|
+
if (Z.length !== 0) {
|
|
331
331
|
e = null;
|
|
332
|
-
const
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
332
|
+
const m = d().stackDepthCodeTraceDepth, o = m === -1 ? Z : Z.slice(0, m + 1);
|
|
333
|
+
if (!d().exceptionCaptureLocals) for (const b of o) b.locals = {};
|
|
334
|
+
const f = Math.min(o.length, A.length);
|
|
335
|
+
await Promise.all(Array.from({ length: f }, async (b, u) => {
|
|
336
|
+
const G = await (async function(An, rn, un) {
|
|
337
|
+
const h = (function(s) {
|
|
338
|
+
s.startsWith("at ") && (s = s.slice(3).trim());
|
|
339
|
+
const N = s.match(/^(.*?)(:\d+)+(\.map)?$/);
|
|
340
|
+
return N ? N[1] : s;
|
|
341
|
+
})(An);
|
|
340
342
|
if (!h || h === "<unknown>") return null;
|
|
341
343
|
const w = h + ".map";
|
|
342
344
|
try {
|
|
343
|
-
let
|
|
344
|
-
if (
|
|
345
|
-
const R = await
|
|
346
|
-
|
|
345
|
+
let s = K.get(w);
|
|
346
|
+
if (s === void 0) {
|
|
347
|
+
const R = await mn.readFile(w, "utf-8");
|
|
348
|
+
s = R ? JSON.parse(R) : null, gn(w, s);
|
|
347
349
|
}
|
|
348
|
-
if (!
|
|
349
|
-
let N = new
|
|
350
|
+
if (!s) return null;
|
|
351
|
+
let N = new pn.SourceMapConsumer(s).originalPositionFor({ line: rn, column: un });
|
|
350
352
|
if (h && N.source) {
|
|
351
|
-
const R =
|
|
353
|
+
const R = In(h), D = s.sources.findIndex((F) => In(F) === R);
|
|
352
354
|
if (D === -1) d().sfDebug && y(`Source file "${h}" not found in the source map.`);
|
|
353
355
|
else {
|
|
354
|
-
const F =
|
|
356
|
+
const F = s.sourcesContent[D], bn = s.names.join(",");
|
|
355
357
|
if (F)
|
|
356
358
|
return { content: F.split(`
|
|
357
359
|
`).slice(N.line - 1, N.line + 20).join(`
|
|
358
|
-
`), name:
|
|
360
|
+
`), name: bn, file: N.source };
|
|
359
361
|
d().sfDebug && y(`No source content available for file "${h}".`);
|
|
360
362
|
}
|
|
361
363
|
}
|
|
362
|
-
return { content:
|
|
363
|
-
} catch (
|
|
364
|
-
d().sfDebug && y(`Cant read/parse "${w}: Error - ".`,
|
|
364
|
+
return { content: s.sourcesContent[0], name: s.names[0], file: s.file };
|
|
365
|
+
} catch (s) {
|
|
366
|
+
d().sfDebug && y(`Cant read/parse "${w}: Error - ".`, s), gn(w, null);
|
|
365
367
|
}
|
|
366
368
|
return null;
|
|
367
|
-
})(
|
|
368
|
-
G && (G.content != null && (
|
|
369
|
-
})),
|
|
369
|
+
})(o[u].file, A[u].line, A[u].column);
|
|
370
|
+
G && (G.content != null && (o[u].code = G.content), G.file != null && (o[u].file = G.file));
|
|
371
|
+
})), n.setOperationName("CollectExceptions");
|
|
370
372
|
const W = C.message ? `${C.name}: ${C.message}` : C.name;
|
|
371
373
|
d().sfDebug && y("error message is : ", W);
|
|
372
|
-
const B = Q.getInstance(), r =
|
|
374
|
+
const B = Q.getInstance(), r = c.get(C);
|
|
373
375
|
r ? (B.setTraceIdFor(r, r), B.runWithSession(r, () => {
|
|
374
|
-
B.setTraceId(r),
|
|
375
|
-
})) :
|
|
376
|
+
B.setTraceId(r), n.doSend(W, o);
|
|
377
|
+
})) : n.doSend(W, o);
|
|
376
378
|
}
|
|
377
379
|
}
|
|
378
|
-
}),
|
|
379
|
-
|
|
380
|
-
}),
|
|
381
|
-
|
|
382
|
-
}),
|
|
383
|
-
const
|
|
384
|
-
function
|
|
385
|
-
const
|
|
380
|
+
}), I.on("error", (g) => {
|
|
381
|
+
nn("[Worker Error]", g);
|
|
382
|
+
}), I.on("exit", (g) => {
|
|
383
|
+
nn(`[Worker] Exited with code ${g}`);
|
|
384
|
+
}), I.unref();
|
|
385
|
+
const t = Error;
|
|
386
|
+
function i(...g) {
|
|
387
|
+
const l = new.target ?? i, C = Reflect.construct(t, g, l);
|
|
386
388
|
try {
|
|
387
|
-
const
|
|
388
|
-
|
|
389
|
+
const A = Q.getInstance().getTraceId();
|
|
390
|
+
c.set(C, A);
|
|
389
391
|
} catch {
|
|
390
392
|
}
|
|
391
|
-
return
|
|
393
|
+
return t.captureStackTrace && t.captureStackTrace(C, l), e = C, I.postMessage({ type: "processException", error: C.message }), C;
|
|
392
394
|
}
|
|
393
|
-
|
|
395
|
+
i.prototype = t.prototype, Object.setPrototypeOf(i, t), globalThis.Error = i;
|
|
394
396
|
}
|
|
395
|
-
function
|
|
396
|
-
return
|
|
397
|
+
function In(n) {
|
|
398
|
+
return n = (n = (n = n.replace(/^webpack:\/\/[^\/]+\/\.?\//, "")).replace(/^.*\/pages\//, "pages/")).replace(/\.(js|ts)$/, "");
|
|
397
399
|
}
|
|
398
|
-
const
|
|
399
|
-
function
|
|
400
|
-
if (K.size >=
|
|
400
|
+
const Jn = 50, K = /* @__PURE__ */ new Map();
|
|
401
|
+
function gn(n, I) {
|
|
402
|
+
if (K.size >= Jn) {
|
|
401
403
|
const e = K.keys().next().value;
|
|
402
404
|
K.delete(e);
|
|
403
405
|
}
|
|
404
|
-
K.set(
|
|
406
|
+
K.set(n, I);
|
|
405
407
|
}
|
|
406
|
-
function
|
|
407
|
-
return
|
|
408
|
+
function wn(n) {
|
|
409
|
+
return n?.split("/").pop() || "<unknown>";
|
|
408
410
|
}
|
|
409
|
-
function
|
|
410
|
-
if (!
|
|
411
|
-
for (const e of Object.values(
|
|
412
|
-
if (typeof e == "string" && e.includes(
|
|
411
|
+
function ln(n, I) {
|
|
412
|
+
if (!n || typeof n != "object") return !1;
|
|
413
|
+
for (const e of Object.values(n))
|
|
414
|
+
if (typeof e == "string" && e.includes(I) || typeof e == "object" && ln(e, I)) return !0;
|
|
413
415
|
return !1;
|
|
414
416
|
}
|
|
415
|
-
let V, J, L,
|
|
416
|
-
function
|
|
417
|
-
if (!
|
|
418
|
-
const
|
|
419
|
-
return !!["1", "true", "yes", "on"].includes(
|
|
417
|
+
let V, J, L, cn = !1;
|
|
418
|
+
function on(n) {
|
|
419
|
+
if (!n) return;
|
|
420
|
+
const I = n.toLowerCase().trim();
|
|
421
|
+
return !!["1", "true", "yes", "on"].includes(I) || !["0", "false", "no", "off"].includes(I) && void 0;
|
|
420
422
|
}
|
|
421
|
-
function
|
|
423
|
+
function sn() {
|
|
422
424
|
if (V !== void 0) return V;
|
|
423
|
-
const
|
|
424
|
-
if (
|
|
425
|
-
const e = (
|
|
425
|
+
const n = process.env || {}, I = on(n.SF_IS_LOCAL);
|
|
426
|
+
if (I !== void 0) return V = I;
|
|
427
|
+
const e = (n.SF_ENV || n.NODE_ENV || "").toLowerCase();
|
|
426
428
|
if (["local", "dev", "development"].includes(e)) return V = !0;
|
|
427
|
-
if (["KUBERNETES_SERVICE_HOST", "AWS_EXECUTION_ENV", "ECS_CONTAINER_METADATA_URI", "ECS_CONTAINER_METADATA_URI_V4", "GAE_ENV", "K_SERVICE", "GOOGLE_CLOUD_PROJECT", "WEBSITE_INSTANCE_ID", "VERCEL", "NETLIFY", "DYNO", "RENDER", "FLY_APP_NAME", "RAILWAY_STATIC_URL", "CF_PAGES", "CLOUDFLARE"].some((
|
|
428
|
-
const
|
|
429
|
-
return V = !(
|
|
429
|
+
if (["KUBERNETES_SERVICE_HOST", "AWS_EXECUTION_ENV", "ECS_CONTAINER_METADATA_URI", "ECS_CONTAINER_METADATA_URI_V4", "GAE_ENV", "K_SERVICE", "GOOGLE_CLOUD_PROJECT", "WEBSITE_INSTANCE_ID", "VERCEL", "NETLIFY", "DYNO", "RENDER", "FLY_APP_NAME", "RAILWAY_STATIC_URL", "CF_PAGES", "CLOUDFLARE"].some((t) => !!n[t])) return V = !1;
|
|
430
|
+
const c = (Wn.hostname?.() || n.HOSTNAME || "").toLowerCase();
|
|
431
|
+
return V = !(c !== "localhost" && !c.endsWith(".local") && !c.includes("local"));
|
|
430
432
|
}
|
|
431
|
-
function x(
|
|
432
|
-
return new Promise((
|
|
433
|
+
function x(n, I, e) {
|
|
434
|
+
return new Promise((c) => {
|
|
433
435
|
try {
|
|
434
|
-
const
|
|
435
|
-
g.resume(), g.statusCode && g.statusCode >= 200 && g.statusCode < 400 ?
|
|
436
|
+
const t = new URL(n), i = (t.protocol === "https:" ? fn : Zn).request({ method: "GET", hostname: t.hostname, port: t.port || (t.protocol === "https:" ? 443 : 80), path: t.pathname + (t.search || ""), headers: I }, (g) => {
|
|
437
|
+
g.resume(), g.statusCode && g.statusCode >= 200 && g.statusCode < 400 ? c("ok") : c("http_error");
|
|
436
438
|
});
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
}),
|
|
439
|
+
i.on("error", () => c("error")), i.setTimeout(e, () => {
|
|
440
|
+
i.destroy(), c("timeout");
|
|
441
|
+
}), i.end();
|
|
440
442
|
} catch {
|
|
441
|
-
|
|
443
|
+
c("error");
|
|
442
444
|
}
|
|
443
445
|
});
|
|
444
446
|
}
|
|
445
|
-
function
|
|
447
|
+
function Xn() {
|
|
446
448
|
if (J !== void 0) return J;
|
|
447
|
-
const
|
|
448
|
-
if (
|
|
449
|
-
if (
|
|
449
|
+
const n = process.env.SF_FUNCSPAN_RUNTIME_ENABLED;
|
|
450
|
+
if (n === "true" || n === "1") return J = !0, !0;
|
|
451
|
+
if (n === "false" || n === "0") return J = !1, !1;
|
|
450
452
|
try {
|
|
451
|
-
const { isRuntimeModeConfigured:
|
|
452
|
-
if (
|
|
453
|
+
const { isRuntimeModeConfigured: I } = require("../funcSpanConfigLoader");
|
|
454
|
+
if (I && I()) return J = !0, !0;
|
|
453
455
|
} catch {
|
|
454
456
|
}
|
|
455
457
|
return J = !1, !1;
|
|
456
458
|
}
|
|
457
|
-
function
|
|
458
|
-
return L !== void 0 || (L = !
|
|
459
|
+
function Sn() {
|
|
460
|
+
return L !== void 0 || (L = !sn()), L;
|
|
459
461
|
}
|
|
460
|
-
function
|
|
461
|
-
return !!
|
|
462
|
+
function Dn() {
|
|
463
|
+
return !!Xn() && (!Sn() || (console.warn("[FuncSpan Runtime] DISABLED in production environment"), !1));
|
|
462
464
|
}
|
|
463
465
|
export {
|
|
464
466
|
T as C,
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
467
|
+
jn as a,
|
|
468
|
+
nn as b,
|
|
469
|
+
Yn as c,
|
|
470
|
+
En as d,
|
|
471
|
+
On as e,
|
|
472
|
+
Sn as f,
|
|
473
|
+
Xn as g,
|
|
472
474
|
y as i,
|
|
473
|
-
|
|
475
|
+
Dn as s
|
|
474
476
|
};
|