@ms-cloudpack/api-server 0.55.0 → 0.56.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/apis/index.d.ts +1 -1
- package/lib/apis/index.d.ts.map +1 -1
- package/lib/apis/index.js +1 -1
- package/lib/apis/index.js.map +1 -1
- package/lib/apis/reportSpan.d.ts +36 -0
- package/lib/apis/reportSpan.d.ts.map +1 -0
- package/lib/apis/reportSpan.js +28 -0
- package/lib/apis/reportSpan.js.map +1 -0
- package/package.json +11 -11
- package/lib/apis/reportMetric.d.ts +0 -29
- package/lib/apis/reportMetric.d.ts.map +0 -1
- package/lib/apis/reportMetric.js +0 -23
- package/lib/apis/reportMetric.js.map +0 -1
package/lib/apis/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export { onDataChanged } from './onDataChanged.js';
|
|
|
6
6
|
export { openCodeEditor } from './openCodeEditor.js';
|
|
7
7
|
export { openConfigEditor } from './openConfigEditor.js';
|
|
8
8
|
export { openFilePath } from './openFilePath.js';
|
|
9
|
-
export {
|
|
9
|
+
export { reportSpan } from './reportSpan.js';
|
|
10
10
|
export { restartAllTasks } from './restartAllTasks.js';
|
|
11
11
|
export { restartTask } from './restartTask.js';
|
|
12
12
|
export { unlinkPath } from './unlinkPath.js';
|
package/lib/apis/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC"}
|
package/lib/apis/index.js
CHANGED
|
@@ -7,7 +7,7 @@ export { onDataChanged } from './onDataChanged.js';
|
|
|
7
7
|
export { openCodeEditor } from './openCodeEditor.js';
|
|
8
8
|
export { openConfigEditor } from './openConfigEditor.js';
|
|
9
9
|
export { openFilePath } from './openFilePath.js';
|
|
10
|
-
export {
|
|
10
|
+
export { reportSpan } from './reportSpan.js';
|
|
11
11
|
export { restartAllTasks } from './restartAllTasks.js';
|
|
12
12
|
export { restartTask } from './restartTask.js';
|
|
13
13
|
export { unlinkPath } from './unlinkPath.js';
|
package/lib/apis/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC","sourcesContent":["// This only needs to include APIs used by the TRPC server.\nexport { addPackageOverride } from './addPackageOverride.js';\nexport { getData } from './getData.js';\nexport { getSessionId } from './getSessionId.js';\nexport { linkPath } from './linkPath.js';\nexport { onDataChanged } from './onDataChanged.js';\nexport { openCodeEditor } from './openCodeEditor.js';\nexport { openConfigEditor } from './openConfigEditor.js';\nexport { openFilePath } from './openFilePath.js';\nexport { reportSpan } from './reportSpan.js';\nexport { restartAllTasks } from './restartAllTasks.js';\nexport { restartTask } from './restartTask.js';\nexport { unlinkPath } from './unlinkPath.js';\nexport { validatePackageOverride } from './validatePackageOverride.js';\n"]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { ApiParams } from '../types/ApiParams.js';
|
|
3
|
+
declare const SpanInput: z.ZodObject<{
|
|
4
|
+
name: z.ZodString;
|
|
5
|
+
startTime: z.ZodNumber;
|
|
6
|
+
endTime: z.ZodNumber;
|
|
7
|
+
attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
|
|
8
|
+
}, "strip", z.ZodTypeAny, {
|
|
9
|
+
name: string;
|
|
10
|
+
startTime: number;
|
|
11
|
+
endTime: number;
|
|
12
|
+
attributes?: Record<string, string | number | boolean> | undefined;
|
|
13
|
+
}, {
|
|
14
|
+
name: string;
|
|
15
|
+
startTime: number;
|
|
16
|
+
endTime: number;
|
|
17
|
+
attributes?: Record<string, string | number | boolean> | undefined;
|
|
18
|
+
}>;
|
|
19
|
+
export type SpanInput = z.infer<typeof SpanInput>;
|
|
20
|
+
/**
|
|
21
|
+
* Report spans to the telemetry client. This is useful for reporting spans that were captured in the browser.
|
|
22
|
+
*/
|
|
23
|
+
export declare function reportSpan(params: ApiParams<SpanInput, 'telemetryClient' | 'session'>): void;
|
|
24
|
+
export declare namespace reportSpan {
|
|
25
|
+
var procedure: import("@trpc/server").TRPCMutationProcedure<{
|
|
26
|
+
input: {
|
|
27
|
+
name: string;
|
|
28
|
+
startTime: number;
|
|
29
|
+
endTime: number;
|
|
30
|
+
attributes?: Record<string, string | number | boolean> | undefined;
|
|
31
|
+
};
|
|
32
|
+
output: void;
|
|
33
|
+
}>;
|
|
34
|
+
}
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=reportSpan.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reportSpan.d.ts","sourceRoot":"","sources":["../../src/apis/reportSpan.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;EAKb,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAElD;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,EAAE,iBAAiB,GAAG,SAAS,CAAC,GAAG,IAAI,CAc5F;yBAde,UAAU"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { publicProcedure } from '../trpc/common.js';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
const SpanInput = z.object({
|
|
4
|
+
name: z.string(),
|
|
5
|
+
startTime: z.number(),
|
|
6
|
+
endTime: z.number(),
|
|
7
|
+
attributes: z.optional(z.record(z.union([z.string(), z.number(), z.boolean()]))),
|
|
8
|
+
});
|
|
9
|
+
/**
|
|
10
|
+
* Report spans to the telemetry client. This is useful for reporting spans that were captured in the browser.
|
|
11
|
+
*/
|
|
12
|
+
export function reportSpan(params) {
|
|
13
|
+
const { input, ctx } = params;
|
|
14
|
+
const { telemetryClient, session } = ctx;
|
|
15
|
+
const { name, endTime, startTime, attributes } = input;
|
|
16
|
+
telemetryClient.tracer
|
|
17
|
+
.startSpan(name, {
|
|
18
|
+
attributes: {
|
|
19
|
+
...attributes,
|
|
20
|
+
sequence: session.sequence,
|
|
21
|
+
},
|
|
22
|
+
startTime,
|
|
23
|
+
})
|
|
24
|
+
.end(endTime);
|
|
25
|
+
}
|
|
26
|
+
// Attach a trpc procedure to the function.
|
|
27
|
+
reportSpan.procedure = publicProcedure.input(SpanInput).mutation(reportSpan);
|
|
28
|
+
//# sourceMappingURL=reportSpan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reportSpan.js","sourceRoot":"","sources":["../../src/apis/reportSpan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IACzB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;CACjF,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,MAA2D;IACpF,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;IAC9B,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IACzC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAEvD,eAAe,CAAC,MAAM;SACnB,SAAS,CAAC,IAAI,EAAE;QACf,UAAU,EAAE;YACV,GAAG,UAAU;YACb,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B;QACD,SAAS;KACV,CAAC;SACD,GAAG,CAAC,OAAO,CAAC,CAAC;AAClB,CAAC;AAED,2CAA2C;AAC3C,UAAU,CAAC,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC","sourcesContent":["import { publicProcedure } from '../trpc/common.js';\nimport { z } from 'zod';\nimport type { ApiParams } from '../types/ApiParams.js';\n\nconst SpanInput = z.object({\n name: z.string(),\n startTime: z.number(),\n endTime: z.number(),\n attributes: z.optional(z.record(z.union([z.string(), z.number(), z.boolean()]))),\n});\n\nexport type SpanInput = z.infer<typeof SpanInput>;\n\n/**\n * Report spans to the telemetry client. This is useful for reporting spans that were captured in the browser.\n */\nexport function reportSpan(params: ApiParams<SpanInput, 'telemetryClient' | 'session'>): void {\n const { input, ctx } = params;\n const { telemetryClient, session } = ctx;\n const { name, endTime, startTime, attributes } = input;\n\n telemetryClient.tracer\n .startSpan(name, {\n attributes: {\n ...attributes,\n sequence: session.sequence,\n },\n startTime,\n })\n .end(endTime);\n}\n\n// Attach a trpc procedure to the function.\nreportSpan.procedure = publicProcedure.input(SpanInput).mutation(reportSpan);\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ms-cloudpack/api-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.56.0",
|
|
4
4
|
"description": "An implementation of the API server that does interacts with a task scheduler.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -27,21 +27,21 @@
|
|
|
27
27
|
"@lage-run/logger": "^1.3.0",
|
|
28
28
|
"@lage-run/scheduler": "^1.2.1",
|
|
29
29
|
"@lage-run/target-graph": "^0.9.0",
|
|
30
|
-
"@ms-cloudpack/bundler": "^0.23.
|
|
31
|
-
"@ms-cloudpack/common-types": "^0.23.
|
|
32
|
-
"@ms-cloudpack/config": "^0.31.
|
|
33
|
-
"@ms-cloudpack/create-express-app": "^1.10.
|
|
30
|
+
"@ms-cloudpack/bundler": "^0.23.10",
|
|
31
|
+
"@ms-cloudpack/common-types": "^0.23.2",
|
|
32
|
+
"@ms-cloudpack/config": "^0.31.7",
|
|
33
|
+
"@ms-cloudpack/create-express-app": "^1.10.3",
|
|
34
34
|
"@ms-cloudpack/data-bus": "^0.4.2",
|
|
35
35
|
"@ms-cloudpack/file-watcher": "^0.1.2",
|
|
36
|
-
"@ms-cloudpack/import-map": "^0.8.
|
|
36
|
+
"@ms-cloudpack/import-map": "^0.8.10",
|
|
37
37
|
"@ms-cloudpack/json-utilities": "^0.1.8",
|
|
38
|
-
"@ms-cloudpack/package-hashes": "^0.7.
|
|
39
|
-
"@ms-cloudpack/package-utilities": "^10.2.
|
|
38
|
+
"@ms-cloudpack/package-hashes": "^0.7.5",
|
|
39
|
+
"@ms-cloudpack/package-utilities": "^10.2.7",
|
|
40
40
|
"@ms-cloudpack/path-string-parsing": "^1.2.4",
|
|
41
|
-
"@ms-cloudpack/path-utilities": "^2.7.
|
|
42
|
-
"@ms-cloudpack/remote-cache": "^0.9.
|
|
41
|
+
"@ms-cloudpack/path-utilities": "^2.7.51",
|
|
42
|
+
"@ms-cloudpack/remote-cache": "^0.9.4",
|
|
43
43
|
"@ms-cloudpack/task-reporter": "^0.14.5",
|
|
44
|
-
"@ms-cloudpack/telemetry": "^0.8.
|
|
44
|
+
"@ms-cloudpack/telemetry": "^0.8.1",
|
|
45
45
|
"@trpc/client": "11.0.0-rc.593",
|
|
46
46
|
"@trpc/server": "11.0.0-rc.593",
|
|
47
47
|
"cors": "^2.8.5",
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import type { ApiParams } from '../types/ApiParams.js';
|
|
3
|
-
declare const ZodReportMetricInput: z.ZodObject<{
|
|
4
|
-
metric: z.ZodString;
|
|
5
|
-
value: z.ZodNumber;
|
|
6
|
-
additionalProperties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
|
|
7
|
-
}, "strip", z.ZodTypeAny, {
|
|
8
|
-
value: number;
|
|
9
|
-
metric: string;
|
|
10
|
-
additionalProperties?: Record<string, string | number | boolean> | undefined;
|
|
11
|
-
}, {
|
|
12
|
-
value: number;
|
|
13
|
-
metric: string;
|
|
14
|
-
additionalProperties?: Record<string, string | number | boolean> | undefined;
|
|
15
|
-
}>;
|
|
16
|
-
export type ReportMetricInput = z.infer<typeof ZodReportMetricInput>;
|
|
17
|
-
export declare function reportMetric(params: ApiParams<ReportMetricInput, 'telemetryClient' | 'session'>): void;
|
|
18
|
-
export declare namespace reportMetric {
|
|
19
|
-
var procedure: import("@trpc/server").TRPCMutationProcedure<{
|
|
20
|
-
input: {
|
|
21
|
-
value: number;
|
|
22
|
-
metric: string;
|
|
23
|
-
additionalProperties?: Record<string, string | number | boolean> | undefined;
|
|
24
|
-
};
|
|
25
|
-
output: void;
|
|
26
|
-
}>;
|
|
27
|
-
}
|
|
28
|
-
export {};
|
|
29
|
-
//# sourceMappingURL=reportMetric.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reportMetric.d.ts","sourceRoot":"","sources":["../../src/apis/reportMetric.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,QAAA,MAAM,oBAAoB;;;;;;;;;;;;EAIxB,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAErE,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,SAAS,CAAC,GAAG,IAAI,CAatG;yBAbe,YAAY"}
|
package/lib/apis/reportMetric.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { publicProcedure } from '../trpc/common.js';
|
|
2
|
-
import { z } from 'zod';
|
|
3
|
-
const ZodReportMetricInput = z.object({
|
|
4
|
-
metric: z.string(),
|
|
5
|
-
value: z.number(),
|
|
6
|
-
additionalProperties: z.optional(z.record(z.union([z.string(), z.number(), z.boolean()]))),
|
|
7
|
-
});
|
|
8
|
-
export function reportMetric(params) {
|
|
9
|
-
const { input, ctx } = params;
|
|
10
|
-
const { metric, value, additionalProperties } = input;
|
|
11
|
-
const { telemetryClient, session } = ctx;
|
|
12
|
-
telemetryClient.performance.record({
|
|
13
|
-
name: metric,
|
|
14
|
-
value,
|
|
15
|
-
additionalProperties: {
|
|
16
|
-
...additionalProperties,
|
|
17
|
-
sequence: session.sequence,
|
|
18
|
-
},
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
// Attach a trpc procedure to the function.
|
|
22
|
-
reportMetric.procedure = publicProcedure.input(ZodReportMetricInput).mutation(reportMetric);
|
|
23
|
-
//# sourceMappingURL=reportMetric.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reportMetric.js","sourceRoot":"","sources":["../../src/apis/reportMetric.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,oBAAoB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;CAC3F,CAAC,CAAC;AAIH,MAAM,UAAU,YAAY,CAAC,MAAmE;IAC9F,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;IAC9B,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,EAAE,GAAG,KAAK,CAAC;IACtD,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IAEzC,eAAe,CAAC,WAAW,CAAC,MAAM,CAAC;QACjC,IAAI,EAAE,MAAM;QACZ,KAAK;QACL,oBAAoB,EAAE;YACpB,GAAG,oBAAoB;YACvB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B;KACF,CAAC,CAAC;AACL,CAAC;AAED,2CAA2C;AAC3C,YAAY,CAAC,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC","sourcesContent":["import { publicProcedure } from '../trpc/common.js';\nimport { z } from 'zod';\nimport type { ApiParams } from '../types/ApiParams.js';\n\nconst ZodReportMetricInput = z.object({\n metric: z.string(),\n value: z.number(),\n additionalProperties: z.optional(z.record(z.union([z.string(), z.number(), z.boolean()]))),\n});\n\nexport type ReportMetricInput = z.infer<typeof ZodReportMetricInput>;\n\nexport function reportMetric(params: ApiParams<ReportMetricInput, 'telemetryClient' | 'session'>): void {\n const { input, ctx } = params;\n const { metric, value, additionalProperties } = input;\n const { telemetryClient, session } = ctx;\n\n telemetryClient.performance.record({\n name: metric,\n value,\n additionalProperties: {\n ...additionalProperties,\n sequence: session.sequence,\n },\n });\n}\n\n// Attach a trpc procedure to the function.\nreportMetric.procedure = publicProcedure.input(ZodReportMetricInput).mutation(reportMetric);\n"]}
|