@mastra/auth-auth0 0.0.0-declaration-maps-20250729231921 → 0.0.0-fix-9244-clickhouse-metadata-20251104213434
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/CHANGELOG.md +51 -1
- package/README.md +2 -6
- package/dist/index.cjs +12 -248
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +12 -248
- package/dist/index.js.map +1 -1
- package/package.json +19 -5
- package/dist/chunk-32EQK4OY.js +0 -974
- package/dist/chunk-32EQK4OY.js.map +0 -1
- package/dist/chunk-B2N25K77.cjs +0 -979
- package/dist/chunk-B2N25K77.cjs.map +0 -1
- package/dist/chunk-G7ML3FDV.js +0 -9
- package/dist/chunk-G7ML3FDV.js.map +0 -1
- package/dist/chunk-UYPX6MT6.cjs +0 -32
- package/dist/chunk-UYPX6MT6.cjs.map +0 -1
- package/dist/getMachineId-bsd-G4THBH3V.js +0 -23
- package/dist/getMachineId-bsd-G4THBH3V.js.map +0 -1
- package/dist/getMachineId-bsd-GQTQCD37.cjs +0 -25
- package/dist/getMachineId-bsd-GQTQCD37.cjs.map +0 -1
- package/dist/getMachineId-darwin-3P7FJFHV.js +0 -24
- package/dist/getMachineId-darwin-3P7FJFHV.js.map +0 -1
- package/dist/getMachineId-darwin-43NRSF2D.cjs +0 -26
- package/dist/getMachineId-darwin-43NRSF2D.cjs.map +0 -1
- package/dist/getMachineId-linux-H4F4I7A5.js +0 -19
- package/dist/getMachineId-linux-H4F4I7A5.js.map +0 -1
- package/dist/getMachineId-linux-TZ3NOAZ5.cjs +0 -21
- package/dist/getMachineId-linux-TZ3NOAZ5.cjs.map +0 -1
- package/dist/getMachineId-unsupported-EZLLFFYA.cjs +0 -13
- package/dist/getMachineId-unsupported-EZLLFFYA.cjs.map +0 -1
- package/dist/getMachineId-unsupported-T3AERO5R.js +0 -11
- package/dist/getMachineId-unsupported-T3AERO5R.js.map +0 -1
- package/dist/getMachineId-win-B5AEGZT7.cjs +0 -47
- package/dist/getMachineId-win-B5AEGZT7.cjs.map +0 -1
- package/dist/getMachineId-win-Z5QAASBF.js +0 -25
- package/dist/getMachineId-win-Z5QAASBF.js.map +0 -1
- package/eslint.config.js +0 -6
- package/src/index.test.ts +0 -112
- package/src/index.ts +0 -49
- package/tsconfig.build.json +0 -9
- package/tsconfig.json +0 -5
- package/tsup.config.ts +0 -25
- package/vitest.config.ts +0 -8
package/dist/index.js
CHANGED
|
@@ -1,152 +1,6 @@
|
|
|
1
|
-
import { trace, context, propagation, SpanStatusCode, SpanKind } from './chunk-32EQK4OY.js';
|
|
2
1
|
import { createRemoteJWKSet, jwtVerify } from 'jose';
|
|
3
2
|
|
|
4
|
-
// ../../packages/core/dist/chunk-
|
|
5
|
-
function hasActiveTelemetry(tracerName = "default-tracer") {
|
|
6
|
-
try {
|
|
7
|
-
return !!trace.getTracer(tracerName);
|
|
8
|
-
} catch {
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
function getBaggageValues(ctx) {
|
|
13
|
-
const currentBaggage = propagation.getBaggage(ctx);
|
|
14
|
-
const requestId = currentBaggage?.getEntry("http.request_id")?.value;
|
|
15
|
-
const componentName = currentBaggage?.getEntry("componentName")?.value;
|
|
16
|
-
const runId = currentBaggage?.getEntry("runId")?.value;
|
|
17
|
-
const threadId = currentBaggage?.getEntry("threadId")?.value;
|
|
18
|
-
const resourceId = currentBaggage?.getEntry("resourceId")?.value;
|
|
19
|
-
return {
|
|
20
|
-
requestId,
|
|
21
|
-
componentName,
|
|
22
|
-
runId,
|
|
23
|
-
threadId,
|
|
24
|
-
resourceId
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
function withSpan(options) {
|
|
28
|
-
return function(_target, propertyKey, descriptor) {
|
|
29
|
-
if (!descriptor || typeof descriptor === "number") return;
|
|
30
|
-
const originalMethod = descriptor.value;
|
|
31
|
-
const methodName = String(propertyKey);
|
|
32
|
-
descriptor.value = function(...args) {
|
|
33
|
-
if (options?.skipIfNoTelemetry && !hasActiveTelemetry(options?.tracerName)) {
|
|
34
|
-
return originalMethod.apply(this, args);
|
|
35
|
-
}
|
|
36
|
-
const tracer = trace.getTracer(options?.tracerName ?? "default-tracer");
|
|
37
|
-
let spanName;
|
|
38
|
-
let spanKind;
|
|
39
|
-
if (typeof options === "string") {
|
|
40
|
-
spanName = options;
|
|
41
|
-
} else if (options) {
|
|
42
|
-
spanName = options.spanName || methodName;
|
|
43
|
-
spanKind = options.spanKind;
|
|
44
|
-
} else {
|
|
45
|
-
spanName = methodName;
|
|
46
|
-
}
|
|
47
|
-
const span = tracer.startSpan(spanName, { kind: spanKind });
|
|
48
|
-
let ctx = trace.setSpan(context.active(), span);
|
|
49
|
-
args.forEach((arg, index) => {
|
|
50
|
-
try {
|
|
51
|
-
span.setAttribute(`${spanName}.argument.${index}`, JSON.stringify(arg));
|
|
52
|
-
} catch {
|
|
53
|
-
span.setAttribute(`${spanName}.argument.${index}`, "[Not Serializable]");
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
const { requestId, componentName, runId, threadId, resourceId } = getBaggageValues(ctx);
|
|
57
|
-
if (requestId) {
|
|
58
|
-
span.setAttribute("http.request_id", requestId);
|
|
59
|
-
}
|
|
60
|
-
if (threadId) {
|
|
61
|
-
span.setAttribute("threadId", threadId);
|
|
62
|
-
}
|
|
63
|
-
if (resourceId) {
|
|
64
|
-
span.setAttribute("resourceId", resourceId);
|
|
65
|
-
}
|
|
66
|
-
if (componentName) {
|
|
67
|
-
span.setAttribute("componentName", componentName);
|
|
68
|
-
span.setAttribute("runId", runId);
|
|
69
|
-
} else if (this && this.name) {
|
|
70
|
-
span.setAttribute("componentName", this.name);
|
|
71
|
-
span.setAttribute("runId", this.runId);
|
|
72
|
-
ctx = propagation.setBaggage(
|
|
73
|
-
ctx,
|
|
74
|
-
propagation.createBaggage({
|
|
75
|
-
// @ts-ignore
|
|
76
|
-
componentName: { value: this.name },
|
|
77
|
-
// @ts-ignore
|
|
78
|
-
runId: { value: this.runId },
|
|
79
|
-
// @ts-ignore
|
|
80
|
-
"http.request_id": { value: requestId },
|
|
81
|
-
// @ts-ignore
|
|
82
|
-
threadId: { value: threadId },
|
|
83
|
-
// @ts-ignore
|
|
84
|
-
resourceId: { value: resourceId }
|
|
85
|
-
})
|
|
86
|
-
);
|
|
87
|
-
}
|
|
88
|
-
let result;
|
|
89
|
-
try {
|
|
90
|
-
result = context.with(ctx, () => originalMethod.apply(this, args));
|
|
91
|
-
if (result instanceof Promise) {
|
|
92
|
-
return result.then((resolvedValue) => {
|
|
93
|
-
try {
|
|
94
|
-
span.setAttribute(`${spanName}.result`, JSON.stringify(resolvedValue));
|
|
95
|
-
} catch {
|
|
96
|
-
span.setAttribute(`${spanName}.result`, "[Not Serializable]");
|
|
97
|
-
}
|
|
98
|
-
return resolvedValue;
|
|
99
|
-
}).finally(() => span.end());
|
|
100
|
-
}
|
|
101
|
-
try {
|
|
102
|
-
span.setAttribute(`${spanName}.result`, JSON.stringify(result));
|
|
103
|
-
} catch {
|
|
104
|
-
span.setAttribute(`${spanName}.result`, "[Not Serializable]");
|
|
105
|
-
}
|
|
106
|
-
return result;
|
|
107
|
-
} catch (error) {
|
|
108
|
-
span.setStatus({
|
|
109
|
-
code: SpanStatusCode.ERROR,
|
|
110
|
-
message: error instanceof Error ? error.message : "Unknown error"
|
|
111
|
-
});
|
|
112
|
-
if (error instanceof Error) {
|
|
113
|
-
span.recordException(error);
|
|
114
|
-
}
|
|
115
|
-
throw error;
|
|
116
|
-
} finally {
|
|
117
|
-
if (!(result instanceof Promise)) {
|
|
118
|
-
span.end();
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
return descriptor;
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
function InstrumentClass(options) {
|
|
126
|
-
return function(target) {
|
|
127
|
-
const methods = Object.getOwnPropertyNames(target.prototype);
|
|
128
|
-
methods.forEach((method) => {
|
|
129
|
-
if (options?.excludeMethods?.includes(method) || method === "constructor") return;
|
|
130
|
-
if (options?.methodFilter && !options.methodFilter(method)) return;
|
|
131
|
-
const descriptor = Object.getOwnPropertyDescriptor(target.prototype, method);
|
|
132
|
-
if (descriptor && typeof descriptor.value === "function") {
|
|
133
|
-
Object.defineProperty(
|
|
134
|
-
target.prototype,
|
|
135
|
-
method,
|
|
136
|
-
withSpan({
|
|
137
|
-
spanName: options?.prefix ? `${options.prefix}.${method}` : method,
|
|
138
|
-
skipIfNoTelemetry: true,
|
|
139
|
-
spanKind: options?.spanKind || SpanKind.INTERNAL,
|
|
140
|
-
tracerName: options?.tracerName
|
|
141
|
-
})(target, method, descriptor)
|
|
142
|
-
);
|
|
143
|
-
}
|
|
144
|
-
});
|
|
145
|
-
return target;
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
// ../../packages/core/dist/chunk-R3SQUADS.js
|
|
3
|
+
// ../../packages/core/dist/chunk-PA2JAWSF.js
|
|
150
4
|
var RegisteredLogger = {
|
|
151
5
|
LLM: "LLM"};
|
|
152
6
|
var LogLevel = {
|
|
@@ -168,11 +22,11 @@ var MastraLogger = class {
|
|
|
168
22
|
}
|
|
169
23
|
trackException(_error) {
|
|
170
24
|
}
|
|
171
|
-
async
|
|
25
|
+
async listLogs(transportId, params) {
|
|
172
26
|
if (!transportId || !this.transports.has(transportId)) {
|
|
173
27
|
return { logs: [], total: 0, page: params?.page ?? 1, perPage: params?.perPage ?? 100, hasMore: false };
|
|
174
28
|
}
|
|
175
|
-
return this.transports.get(transportId).
|
|
29
|
+
return this.transports.get(transportId).listLogs(params) ?? {
|
|
176
30
|
logs: [],
|
|
177
31
|
total: 0,
|
|
178
32
|
page: params?.page ?? 1,
|
|
@@ -180,7 +34,7 @@ var MastraLogger = class {
|
|
|
180
34
|
hasMore: false
|
|
181
35
|
};
|
|
182
36
|
}
|
|
183
|
-
async
|
|
37
|
+
async listLogsByRunId({
|
|
184
38
|
transportId,
|
|
185
39
|
runId,
|
|
186
40
|
fromDate,
|
|
@@ -193,7 +47,7 @@ var MastraLogger = class {
|
|
|
193
47
|
if (!transportId || !this.transports.has(transportId) || !runId) {
|
|
194
48
|
return { logs: [], total: 0, page: page ?? 1, perPage: perPage ?? 100, hasMore: false };
|
|
195
49
|
}
|
|
196
|
-
return this.transports.get(transportId).
|
|
50
|
+
return this.transports.get(transportId).listLogsByRunId({ runId, fromDate, toDate, logLevel, filters, page, perPage }) ?? {
|
|
197
51
|
logs: [],
|
|
198
52
|
total: 0,
|
|
199
53
|
page: page ?? 1,
|
|
@@ -208,7 +62,7 @@ var ConsoleLogger = class extends MastraLogger {
|
|
|
208
62
|
}
|
|
209
63
|
debug(message, ...args) {
|
|
210
64
|
if (this.level === LogLevel.DEBUG) {
|
|
211
|
-
console.
|
|
65
|
+
console.info(message, ...args);
|
|
212
66
|
}
|
|
213
67
|
}
|
|
214
68
|
info(message, ...args) {
|
|
@@ -218,7 +72,7 @@ var ConsoleLogger = class extends MastraLogger {
|
|
|
218
72
|
}
|
|
219
73
|
warn(message, ...args) {
|
|
220
74
|
if (this.level === LogLevel.WARN || this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) {
|
|
221
|
-
console.
|
|
75
|
+
console.info(message, ...args);
|
|
222
76
|
}
|
|
223
77
|
}
|
|
224
78
|
error(message, ...args) {
|
|
@@ -226,20 +80,19 @@ var ConsoleLogger = class extends MastraLogger {
|
|
|
226
80
|
console.error(message, ...args);
|
|
227
81
|
}
|
|
228
82
|
}
|
|
229
|
-
async
|
|
83
|
+
async listLogs(_transportId, _params) {
|
|
230
84
|
return { logs: [], total: 0, page: _params?.page ?? 1, perPage: _params?.perPage ?? 100, hasMore: false };
|
|
231
85
|
}
|
|
232
|
-
async
|
|
86
|
+
async listLogsByRunId(_args) {
|
|
233
87
|
return { logs: [], total: 0, page: _args.page ?? 1, perPage: _args.perPage ?? 100, hasMore: false };
|
|
234
88
|
}
|
|
235
89
|
};
|
|
236
90
|
|
|
237
|
-
// ../../packages/core/dist/chunk-
|
|
91
|
+
// ../../packages/core/dist/chunk-BGX53QBI.js
|
|
238
92
|
var MastraBase = class {
|
|
239
93
|
component = RegisteredLogger.LLM;
|
|
240
94
|
logger;
|
|
241
95
|
name;
|
|
242
|
-
telemetry;
|
|
243
96
|
constructor({ component, name }) {
|
|
244
97
|
this.component = component || RegisteredLogger.LLM;
|
|
245
98
|
this.name = name;
|
|
@@ -255,95 +108,12 @@ var MastraBase = class {
|
|
|
255
108
|
this.logger.debug(`Logger updated [component=${this.component}] [name=${this.name}]`);
|
|
256
109
|
}
|
|
257
110
|
}
|
|
258
|
-
/**
|
|
259
|
-
* Set the telemetry for the
|
|
260
|
-
* @param telemetry
|
|
261
|
-
*/
|
|
262
|
-
__setTelemetry(telemetry) {
|
|
263
|
-
this.telemetry = telemetry;
|
|
264
|
-
if (this.component !== RegisteredLogger.LLM) {
|
|
265
|
-
this.logger.debug(`Telemetry updated [component=${this.component}] [name=${this.telemetry.name}]`);
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
/**
|
|
269
|
-
* Get the telemetry on the vector
|
|
270
|
-
* @returns telemetry
|
|
271
|
-
*/
|
|
272
|
-
__getTelemetry() {
|
|
273
|
-
return this.telemetry;
|
|
274
|
-
}
|
|
275
|
-
/*
|
|
276
|
-
get experimental_telemetry config
|
|
277
|
-
*/
|
|
278
|
-
get experimental_telemetry() {
|
|
279
|
-
return this.telemetry ? {
|
|
280
|
-
// tracer: this.telemetry.tracer,
|
|
281
|
-
tracer: this.telemetry.getBaggageTracer(),
|
|
282
|
-
isEnabled: !!this.telemetry.tracer
|
|
283
|
-
} : void 0;
|
|
284
|
-
}
|
|
285
|
-
};
|
|
286
|
-
|
|
287
|
-
// ../../packages/core/dist/chunk-3HXBPDKN.js
|
|
288
|
-
var __create = Object.create;
|
|
289
|
-
var __defProp = Object.defineProperty;
|
|
290
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
291
|
-
var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for("Symbol." + name);
|
|
292
|
-
var __typeError = (msg) => {
|
|
293
|
-
throw TypeError(msg);
|
|
294
|
-
};
|
|
295
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {
|
|
296
|
-
enumerable: true,
|
|
297
|
-
configurable: true,
|
|
298
|
-
writable: true,
|
|
299
|
-
value
|
|
300
|
-
}) : obj[key] = value;
|
|
301
|
-
var __name = (target, value) => __defProp(target, "name", {
|
|
302
|
-
value,
|
|
303
|
-
configurable: true
|
|
304
|
-
});
|
|
305
|
-
var __decoratorStart = (base) => [, , , __create(base?.[__knownSymbol("metadata")] ?? null)];
|
|
306
|
-
var __decoratorStrings = ["class", "method", "getter", "setter", "accessor", "field", "value", "get", "set"];
|
|
307
|
-
var __expectFn = (fn) => fn !== void 0 && typeof fn !== "function" ? __typeError("Function expected") : fn;
|
|
308
|
-
var __decoratorContext = (kind, name, done, metadata, fns) => ({
|
|
309
|
-
kind: __decoratorStrings[kind],
|
|
310
|
-
name,
|
|
311
|
-
metadata,
|
|
312
|
-
addInitializer: (fn) => done._ ? __typeError("Already initialized") : fns.push(__expectFn(fn || null))
|
|
313
|
-
});
|
|
314
|
-
var __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol("metadata"), array[3]);
|
|
315
|
-
var __runInitializers = (array, flags, self, value) => {
|
|
316
|
-
for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) fns[i].call(self) ;
|
|
317
|
-
return value;
|
|
318
|
-
};
|
|
319
|
-
var __decorateElement = (array, flags, name, decorators, target, extra) => {
|
|
320
|
-
var it, done, ctx, k = flags & 7, p = false;
|
|
321
|
-
var j = 0;
|
|
322
|
-
var extraInitializers = array[j] || (array[j] = []);
|
|
323
|
-
var desc = k && ((target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(target , name));
|
|
324
|
-
__name(target, name);
|
|
325
|
-
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
326
|
-
ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);
|
|
327
|
-
it = (0, decorators[i])(target, ctx), done._ = 1;
|
|
328
|
-
__expectFn(it) && (target = it);
|
|
329
|
-
}
|
|
330
|
-
return __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;
|
|
331
111
|
};
|
|
332
112
|
|
|
333
113
|
// ../../packages/core/dist/server/index.js
|
|
334
|
-
var
|
|
335
|
-
var _init;
|
|
336
|
-
var _a;
|
|
337
|
-
_MastraAuthProvider_decorators = [InstrumentClass({
|
|
338
|
-
prefix: "auth",
|
|
339
|
-
excludeMethods: ["__setTools", "__setLogger", "__setTelemetry", "#log"]
|
|
340
|
-
})];
|
|
341
|
-
var MastraAuthProvider = class extends (_a = MastraBase) {
|
|
114
|
+
var MastraAuthProvider = class extends MastraBase {
|
|
342
115
|
constructor(options) {
|
|
343
|
-
super({
|
|
344
|
-
component: "AUTH",
|
|
345
|
-
name: options?.name
|
|
346
|
-
});
|
|
116
|
+
super({ component: "AUTH", name: options?.name });
|
|
347
117
|
if (options?.authorizeUser) {
|
|
348
118
|
this.authorizeUser = options.authorizeUser.bind(this);
|
|
349
119
|
}
|
|
@@ -354,12 +124,6 @@ var MastraAuthProvider = class extends (_a = MastraBase) {
|
|
|
354
124
|
}
|
|
355
125
|
}
|
|
356
126
|
};
|
|
357
|
-
MastraAuthProvider = /* @__PURE__ */ ((_) => {
|
|
358
|
-
_init = __decoratorStart(_a);
|
|
359
|
-
MastraAuthProvider = __decorateElement(_init, 0, "MastraAuthProvider", _MastraAuthProvider_decorators, MastraAuthProvider);
|
|
360
|
-
__runInitializers(_init, 1, MastraAuthProvider);
|
|
361
|
-
return MastraAuthProvider;
|
|
362
|
-
})();
|
|
363
127
|
var MastraAuthAuth0 = class extends MastraAuthProvider {
|
|
364
128
|
domain;
|
|
365
129
|
audience;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/core/src/telemetry/utility.ts","../../../packages/core/src/telemetry/telemetry.decorators.ts","../../../packages/core/src/logger/constants.ts","../../../packages/core/src/logger/logger.ts","../../../packages/core/src/logger/default-logger.ts","../../../packages/core/src/base.ts","../../../packages/core/dist/chunk-3HXBPDKN.js","../../../packages/core/src/server/auth.ts","../src/index.ts"],"names":["trace","propagation"],"mappings":"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","file":"index.js","sourcesContent":["import { propagation, trace } from '@opentelemetry/api';\nimport type { Context } from '@opentelemetry/api';\n\n// Helper function to check if telemetry is active\nexport function hasActiveTelemetry(tracerName: string = 'default-tracer'): boolean {\n try {\n return !!trace.getTracer(tracerName);\n } catch {\n return false;\n }\n}\n\n/**\n * Get baggage values from context\n * @param ctx The context to get baggage values from\n * @returns\n */\nexport function getBaggageValues(ctx: Context) {\n const currentBaggage = propagation.getBaggage(ctx);\n const requestId = currentBaggage?.getEntry('http.request_id')?.value;\n const componentName = currentBaggage?.getEntry('componentName')?.value;\n const runId = currentBaggage?.getEntry('runId')?.value;\n const threadId = currentBaggage?.getEntry('threadId')?.value;\n const resourceId = currentBaggage?.getEntry('resourceId')?.value;\n return {\n requestId,\n componentName,\n runId,\n threadId,\n resourceId,\n };\n}\n","import { trace, context, SpanStatusCode, SpanKind, propagation } from '@opentelemetry/api';\n\nimport { hasActiveTelemetry, getBaggageValues } from './utility';\n\n// Decorator factory that takes optional spanName\nexport function withSpan(options: {\n spanName?: string;\n skipIfNoTelemetry?: boolean;\n spanKind?: SpanKind;\n tracerName?: string;\n}): any {\n return function (_target: any, propertyKey: string | symbol, descriptor?: PropertyDescriptor | number) {\n if (!descriptor || typeof descriptor === 'number') return;\n\n const originalMethod = descriptor.value;\n const methodName = String(propertyKey);\n\n descriptor.value = function (...args: any[]) {\n // Skip if no telemetry is available and skipIfNoTelemetry is true\n if (options?.skipIfNoTelemetry && !hasActiveTelemetry(options?.tracerName)) {\n return originalMethod.apply(this, args);\n }\n\n const tracer = trace.getTracer(options?.tracerName ?? 'default-tracer');\n\n // Determine span name and kind\n let spanName: string;\n let spanKind: SpanKind | undefined;\n\n if (typeof options === 'string') {\n spanName = options;\n } else if (options) {\n spanName = options.spanName || methodName;\n spanKind = options.spanKind;\n } else {\n spanName = methodName;\n }\n\n // Start the span with optional kind\n const span = tracer.startSpan(spanName, { kind: spanKind });\n let ctx = trace.setSpan(context.active(), span);\n\n // Record input arguments as span attributes\n args.forEach((arg, index) => {\n try {\n span.setAttribute(`${spanName}.argument.${index}`, JSON.stringify(arg));\n } catch {\n span.setAttribute(`${spanName}.argument.${index}`, '[Not Serializable]');\n }\n });\n\n const { requestId, componentName, runId, threadId, resourceId } = getBaggageValues(ctx);\n if (requestId) {\n span.setAttribute('http.request_id', requestId);\n }\n\n if (threadId) {\n span.setAttribute('threadId', threadId);\n }\n\n if (resourceId) {\n span.setAttribute('resourceId', resourceId);\n }\n\n if (componentName) {\n span.setAttribute('componentName', componentName);\n // @ts-ignore\n span.setAttribute('runId', runId);\n // @ts-ignore\n } else if (this && this.name) {\n // @ts-ignore\n span.setAttribute('componentName', this.name);\n // @ts-ignore\n span.setAttribute('runId', this.runId);\n ctx = propagation.setBaggage(\n ctx,\n propagation.createBaggage({\n // @ts-ignore\n componentName: { value: this.name },\n // @ts-ignore\n runId: { value: this.runId },\n // @ts-ignore\n 'http.request_id': { value: requestId },\n // @ts-ignore\n threadId: { value: threadId },\n // @ts-ignore\n resourceId: { value: resourceId },\n }),\n );\n }\n\n let result;\n try {\n // Call the original method within the context\n result = context.with(ctx, () => originalMethod.apply(this, args));\n\n // Handle promises\n if (result instanceof Promise) {\n return result\n .then(resolvedValue => {\n try {\n span.setAttribute(`${spanName}.result`, JSON.stringify(resolvedValue));\n } catch {\n span.setAttribute(`${spanName}.result`, '[Not Serializable]');\n }\n return resolvedValue;\n })\n .finally(() => span.end());\n }\n\n // Record result for non-promise returns\n try {\n span.setAttribute(`${spanName}.result`, JSON.stringify(result));\n } catch {\n span.setAttribute(`${spanName}.result`, '[Not Serializable]');\n }\n\n // Return regular results\n return result;\n } catch (error) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: error instanceof Error ? error.message : 'Unknown error',\n });\n if (error instanceof Error) {\n span.recordException(error);\n }\n throw error;\n } finally {\n // End span for non-promise returns\n if (!(result instanceof Promise)) {\n span.end();\n }\n }\n };\n\n return descriptor;\n };\n}\n\n// class-telemetry.decorator.ts\nexport function InstrumentClass(options?: {\n prefix?: string;\n spanKind?: SpanKind;\n excludeMethods?: string[];\n methodFilter?: (methodName: string) => boolean;\n tracerName?: string;\n}) {\n return function (target: any) {\n const methods = Object.getOwnPropertyNames(target.prototype);\n\n methods.forEach(method => {\n // Skip excluded methods\n if (options?.excludeMethods?.includes(method) || method === 'constructor') return;\n // Apply method filter if provided\n if (options?.methodFilter && !options.methodFilter(method)) return;\n\n const descriptor = Object.getOwnPropertyDescriptor(target.prototype, method);\n if (descriptor && typeof descriptor.value === 'function') {\n Object.defineProperty(\n target.prototype,\n method,\n withSpan({\n spanName: options?.prefix ? `${options.prefix}.${method}` : method,\n skipIfNoTelemetry: true,\n spanKind: options?.spanKind || SpanKind.INTERNAL,\n tracerName: options?.tracerName,\n })(target, method, descriptor),\n );\n }\n });\n\n return target;\n };\n}\n","// Constants and Types (keeping from original implementation)\nexport const RegisteredLogger = {\n AGENT: 'AGENT',\n AUTH: 'AUTH',\n NETWORK: 'NETWORK',\n WORKFLOW: 'WORKFLOW',\n LLM: 'LLM',\n TTS: 'TTS',\n VOICE: 'VOICE',\n VECTOR: 'VECTOR',\n BUNDLER: 'BUNDLER',\n DEPLOYER: 'DEPLOYER',\n MEMORY: 'MEMORY',\n STORAGE: 'STORAGE',\n EMBEDDINGS: 'EMBEDDINGS',\n MCP_SERVER: 'MCP_SERVER',\n} as const;\n\nexport type RegisteredLogger = (typeof RegisteredLogger)[keyof typeof RegisteredLogger];\n\nexport const LogLevel = {\n DEBUG: 'debug',\n INFO: 'info',\n WARN: 'warn',\n ERROR: 'error',\n NONE: 'silent',\n} as const;\n\nexport type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];\n","import type { MastraError } from '../error';\nimport { LogLevel } from './constants';\nimport type { BaseLogMessage, LoggerTransport } from './transport';\n\nexport interface IMastraLogger {\n debug(message: string, ...args: any[]): void;\n info(message: string, ...args: any[]): void;\n warn(message: string, ...args: any[]): void;\n error(message: string, ...args: any[]): void;\n trackException(error: MastraError): void;\n\n getTransports(): Map<string, LoggerTransport>;\n getLogs(\n _transportId: string,\n _params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }>;\n getLogsByRunId(_args: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }>;\n}\n\nexport abstract class MastraLogger implements IMastraLogger {\n protected name: string;\n protected level: LogLevel;\n protected transports: Map<string, LoggerTransport>;\n\n constructor(\n options: {\n name?: string;\n level?: LogLevel;\n transports?: Record<string, LoggerTransport>;\n } = {},\n ) {\n this.name = options.name || 'Mastra';\n this.level = options.level || LogLevel.ERROR;\n this.transports = new Map(Object.entries(options.transports || {}));\n }\n\n abstract debug(message: string, ...args: any[]): void;\n abstract info(message: string, ...args: any[]): void;\n abstract warn(message: string, ...args: any[]): void;\n abstract error(message: string, ...args: any[]): void;\n\n getTransports() {\n return this.transports;\n }\n\n trackException(_error: MastraError) {}\n\n async getLogs(\n transportId: string,\n params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ) {\n if (!transportId || !this.transports.has(transportId)) {\n return { logs: [], total: 0, page: params?.page ?? 1, perPage: params?.perPage ?? 100, hasMore: false };\n }\n\n return (\n this.transports.get(transportId)!.getLogs(params) ?? {\n logs: [],\n total: 0,\n page: params?.page ?? 1,\n perPage: params?.perPage ?? 100,\n hasMore: false,\n }\n );\n }\n\n async getLogsByRunId({\n transportId,\n runId,\n fromDate,\n toDate,\n logLevel,\n filters,\n page,\n perPage,\n }: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }) {\n if (!transportId || !this.transports.has(transportId) || !runId) {\n return { logs: [], total: 0, page: page ?? 1, perPage: perPage ?? 100, hasMore: false };\n }\n\n return (\n this.transports\n .get(transportId)!\n .getLogsByRunId({ runId, fromDate, toDate, logLevel, filters, page, perPage }) ?? {\n logs: [],\n total: 0,\n page: page ?? 1,\n perPage: perPage ?? 100,\n hasMore: false,\n }\n );\n }\n}\n","import { LogLevel } from './constants';\nimport { MastraLogger } from './logger';\nimport type { LoggerTransport } from './transport';\n\nexport const createLogger = (options: {\n name?: string;\n level?: LogLevel;\n transports?: Record<string, LoggerTransport>;\n}) => {\n const logger = new ConsoleLogger(options);\n\n logger.warn(`createLogger is deprecated. Please use \"new ConsoleLogger()\" from \"@mastra/core/logger\" instead.`);\n\n return logger;\n};\n\nexport class ConsoleLogger extends MastraLogger {\n constructor(\n options: {\n name?: string;\n level?: LogLevel;\n } = {},\n ) {\n super(options);\n }\n\n debug(message: string, ...args: any[]): void {\n if (this.level === LogLevel.DEBUG) {\n console.debug(message, ...args);\n }\n }\n\n info(message: string, ...args: any[]): void {\n if (this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) {\n console.info(message, ...args);\n }\n }\n\n warn(message: string, ...args: any[]): void {\n if (this.level === LogLevel.WARN || this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) {\n console.warn(message, ...args);\n }\n }\n\n error(message: string, ...args: any[]): void {\n if (\n this.level === LogLevel.ERROR ||\n this.level === LogLevel.WARN ||\n this.level === LogLevel.INFO ||\n this.level === LogLevel.DEBUG\n ) {\n console.error(message, ...args);\n }\n }\n\n async getLogs(\n _transportId: string,\n _params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ) {\n return { logs: [], total: 0, page: _params?.page ?? 1, perPage: _params?.perPage ?? 100, hasMore: false };\n }\n\n async getLogsByRunId(_args: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }) {\n return { logs: [], total: 0, page: _args.page ?? 1, perPage: _args.perPage ?? 100, hasMore: false };\n }\n}\n","import type { IMastraLogger } from './logger';\nimport { RegisteredLogger } from './logger/constants';\nimport { ConsoleLogger } from './logger/default-logger';\n\nimport type { Telemetry } from './telemetry';\n\nexport class MastraBase {\n component: RegisteredLogger = RegisteredLogger.LLM;\n protected logger: IMastraLogger;\n name?: string;\n telemetry?: Telemetry;\n\n constructor({ component, name }: { component?: RegisteredLogger; name?: string }) {\n this.component = component || RegisteredLogger.LLM;\n this.name = name;\n this.logger = new ConsoleLogger({ name: `${this.component} - ${this.name}` });\n }\n\n /**\n * Set the logger for the agent\n * @param logger\n */\n __setLogger(logger: IMastraLogger) {\n this.logger = logger;\n\n if (this.component !== RegisteredLogger.LLM) {\n this.logger.debug(`Logger updated [component=${this.component}] [name=${this.name}]`);\n }\n }\n\n /**\n * Set the telemetry for the\n * @param telemetry\n */\n __setTelemetry(telemetry: Telemetry) {\n this.telemetry = telemetry;\n\n if (this.component !== RegisteredLogger.LLM) {\n this.logger.debug(`Telemetry updated [component=${this.component}] [name=${this.telemetry.name}]`);\n }\n }\n\n /**\n * Get the telemetry on the vector\n * @returns telemetry\n */\n __getTelemetry() {\n return this.telemetry;\n }\n\n /* \n get experimental_telemetry config\n */\n get experimental_telemetry() {\n return this.telemetry\n ? {\n // tracer: this.telemetry.tracer,\n tracer: this.telemetry.getBaggageTracer(),\n isEnabled: !!this.telemetry.tracer,\n }\n : undefined;\n }\n}\n\nexport * from './types';\n","var __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : Symbol.for(\"Symbol.\" + name);\nvar __typeError = msg => {\n throw TypeError(msg);\n};\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, {\n enumerable: true,\n configurable: true,\n writable: true,\n value\n}) : obj[key] = value;\nvar __name = (target, value) => __defProp(target, \"name\", {\n value,\n configurable: true\n});\nvar __commonJS = (cb, mod) => function __require() {\n return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = {\n exports: {}\n }).exports, mod), mod.exports;\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {\n get: () => from[key],\n enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable\n });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n// If the importer is in node compatibility mode or this is not an ESM\n// file that has been converted to a CommonJS file using a Babel-\n// compatible transform (i.e. \"__esModule\" has not been set), then set\n// \"default\" to the CommonJS \"module.exports\" for node compatibility.\nisNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", {\n value: mod,\n enumerable: true\n}) : target, mod));\nvar __decoratorStart = base => [,,, __create(base?.[__knownSymbol(\"metadata\")] ?? null)];\nvar __decoratorStrings = [\"class\", \"method\", \"getter\", \"setter\", \"accessor\", \"field\", \"value\", \"get\", \"set\"];\nvar __expectFn = fn => fn !== void 0 && typeof fn !== \"function\" ? __typeError(\"Function expected\") : fn;\nvar __decoratorContext = (kind, name, done, metadata, fns) => ({\n kind: __decoratorStrings[kind],\n name,\n metadata,\n addInitializer: fn => done._ ? __typeError(\"Already initialized\") : fns.push(__expectFn(fn || null))\n});\nvar __decoratorMetadata = (array, target) => __defNormalProp(target, __knownSymbol(\"metadata\"), array[3]);\nvar __runInitializers = (array, flags, self, value) => {\n for (var i = 0, fns = array[flags >> 1], n = fns && fns.length; i < n; i++) flags & 1 ? fns[i].call(self) : value = fns[i].call(self, value);\n return value;\n};\nvar __decorateElement = (array, flags, name, decorators, target, extra) => {\n var fn,\n it,\n done,\n ctx,\n access,\n k = flags & 7,\n s = !!(flags & 8),\n p = !!(flags & 16);\n var j = k > 3 ? array.length + 1 : k ? s ? 1 : 2 : 0,\n key = __decoratorStrings[k + 5];\n var initializers = k > 3 && (array[j - 1] = []),\n extraInitializers = array[j] || (array[j] = []);\n var desc = k && (!p && !s && (target = target.prototype), k < 5 && (k > 3 || !p) && __getOwnPropDesc(k < 4 ? target : {\n get [name]() {\n return __privateGet(this, extra);\n },\n set [name](x) {\n return __privateSet(this, extra, x);\n }\n }, name));\n k ? p && k < 4 && __name(extra, (k > 2 ? \"set \" : k > 1 ? \"get \" : \"\") + name) : __name(target, name);\n for (var i = decorators.length - 1; i >= 0; i--) {\n ctx = __decoratorContext(k, name, done = {}, array[3], extraInitializers);\n if (k) {\n ctx.static = s, ctx.private = p, access = ctx.access = {\n has: p ? x => __privateIn(target, x) : x => name in x\n };\n if (k ^ 3) access.get = p ? x => (k ^ 1 ? __privateGet : __privateMethod)(x, target, k ^ 4 ? extra : desc.get) : x => x[name];\n if (k > 2) access.set = p ? (x, y) => __privateSet(x, target, y, k ^ 4 ? extra : desc.set) : (x, y) => x[name] = y;\n }\n it = (0, decorators[i])(k ? k < 4 ? p ? extra : desc[key] : k > 4 ? void 0 : {\n get: desc.get,\n set: desc.set\n } : target, ctx), done._ = 1;\n if (k ^ 4 || it === void 0) __expectFn(it) && (k > 4 ? initializers.unshift(it) : k ? p ? extra = it : desc[key] = it : target = it);else if (typeof it !== \"object\" || it === null) __typeError(\"Object expected\");else __expectFn(fn = it.get) && (desc.get = fn), __expectFn(fn = it.set) && (desc.set = fn), __expectFn(fn = it.init) && initializers.unshift(fn);\n }\n return k || __decoratorMetadata(array, target), desc && __defProp(target, name, desc), p ? k ^ 4 ? extra : desc : target;\n};\nvar __accessCheck = (obj, member, msg) => member.has(obj) || __typeError(\"Cannot \" + msg);\nvar __privateIn = (member, obj) => Object(obj) !== obj ? __typeError('Cannot use the \"in\" operator on this value') : member.has(obj);\nvar __privateGet = (obj, member, getter) => (__accessCheck(obj, member, \"read from private field\"), getter ? getter.call(obj) : member.get(obj));\nvar __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, \"write to private field\"), setter ? setter.call(obj, value) : member.set(obj, value), value);\nvar __privateMethod = (obj, member, method) => (__accessCheck(obj, member, \"access private method\"), method);\n\nexport { __commonJS, __decorateElement, __decoratorStart, __runInitializers, __toESM };\n//# sourceMappingURL=chunk-3HXBPDKN.js.map\n//# sourceMappingURL=chunk-3HXBPDKN.js.map","import type { HonoRequest } from 'hono';\nimport { MastraBase } from '../base';\nimport { InstrumentClass } from '../telemetry';\n\nexport interface MastraAuthProviderOptions<TUser = unknown> {\n name?: string;\n authorizeUser?: (user: TUser, request: HonoRequest) => Promise<boolean> | boolean;\n}\n\n@InstrumentClass({\n prefix: 'auth',\n excludeMethods: ['__setTools', '__setLogger', '__setTelemetry', '#log'],\n})\nexport abstract class MastraAuthProvider<TUser = unknown> extends MastraBase {\n constructor(options?: MastraAuthProviderOptions<TUser>) {\n super({ component: 'AUTH', name: options?.name });\n\n if (options?.authorizeUser) {\n this.authorizeUser = options.authorizeUser.bind(this);\n }\n }\n\n /**\n * Authenticate a token and return the payload\n * @param token - The token to authenticate\n * @param request - The request\n * @returns The payload\n */\n abstract authenticateToken(token: string, request: HonoRequest): Promise<TUser | null>;\n\n /**\n * Authorize a user for a path and method\n * @param user - The user to authorize\n * @param request - The request\n * @returns The authorization result\n */\n abstract authorizeUser(user: TUser, request: HonoRequest): Promise<boolean> | boolean;\n\n protected registerOptions(opts?: MastraAuthProviderOptions<TUser>) {\n if (opts?.authorizeUser) {\n this.authorizeUser = opts.authorizeUser.bind(this);\n }\n }\n}\n","import { MastraAuthProvider } from '@mastra/core/server';\nimport type { MastraAuthProviderOptions } from '@mastra/core/server';\n\nimport { createRemoteJWKSet, jwtVerify } from 'jose';\nimport type { JWTPayload } from 'jose';\n\ntype Auth0User = JWTPayload;\n\ninterface MastraAuthAuth0Options extends MastraAuthProviderOptions<Auth0User> {\n domain?: string; // set this to your Auth0 domain\n audience?: string; // set this to your Auth0 API identifier\n}\n\nexport class MastraAuthAuth0 extends MastraAuthProvider<Auth0User> {\n protected domain: string;\n protected audience: string;\n constructor(options?: MastraAuthAuth0Options) {\n super({ name: options?.name ?? 'auth0' });\n\n const domain = options?.domain ?? process.env.AUTH0_DOMAIN;\n const audience = options?.audience ?? process.env.AUTH0_AUDIENCE;\n\n if (!domain || !audience) {\n throw new Error(\n 'Auth0 domain and audience are required, please provide them in the options or set the environment variables AUTH0_DOMAIN and AUTH0_AUDIENCE',\n );\n }\n\n this.domain = domain;\n this.audience = audience;\n\n this.registerOptions(options);\n }\n\n async authenticateToken(token: string): Promise<Auth0User | null> {\n const JWKS = createRemoteJWKSet(new URL(`https://${this.domain}/.well-known/jwks.json`));\n\n const { payload } = await jwtVerify(token, JWKS, {\n issuer: `https://${this.domain}/`,\n audience: this.audience,\n });\n\n return payload;\n }\n\n async authorizeUser(user: Auth0User) {\n return !!user;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../packages/core/src/logger/constants.ts","../../../packages/core/src/logger/logger.ts","../../../packages/core/src/logger/default-logger.ts","../../../packages/core/src/base.ts","../../../packages/core/src/server/auth.ts","../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["// Constants and Types (keeping from original implementation)\nexport const RegisteredLogger = {\n AGENT: 'AGENT',\n AI_TRACING: 'AI_TRACING',\n AUTH: 'AUTH',\n NETWORK: 'NETWORK',\n WORKFLOW: 'WORKFLOW',\n LLM: 'LLM',\n TTS: 'TTS',\n VOICE: 'VOICE',\n VECTOR: 'VECTOR',\n BUNDLER: 'BUNDLER',\n DEPLOYER: 'DEPLOYER',\n MEMORY: 'MEMORY',\n STORAGE: 'STORAGE',\n EMBEDDINGS: 'EMBEDDINGS',\n MCP_SERVER: 'MCP_SERVER',\n SERVER_CACHE: 'SERVER_CACHE',\n} as const;\n\nexport type RegisteredLogger = (typeof RegisteredLogger)[keyof typeof RegisteredLogger];\n\nexport const LogLevel = {\n DEBUG: 'debug',\n INFO: 'info',\n WARN: 'warn',\n ERROR: 'error',\n NONE: 'silent',\n} as const;\n\nexport type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];\n","import type { MastraError } from '../error';\nimport { LogLevel } from './constants';\nimport type { BaseLogMessage, LoggerTransport } from './transport';\n\nexport interface IMastraLogger {\n debug(message: string, ...args: any[]): void;\n info(message: string, ...args: any[]): void;\n warn(message: string, ...args: any[]): void;\n error(message: string, ...args: any[]): void;\n trackException(error: MastraError): void;\n\n getTransports(): Map<string, LoggerTransport>;\n listLogs(\n _transportId: string,\n _params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }>;\n listLogsByRunId(_args: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }>;\n}\n\nexport abstract class MastraLogger implements IMastraLogger {\n protected name: string;\n protected level: LogLevel;\n protected transports: Map<string, LoggerTransport>;\n\n constructor(\n options: {\n name?: string;\n level?: LogLevel;\n transports?: Record<string, LoggerTransport>;\n } = {},\n ) {\n this.name = options.name || 'Mastra';\n this.level = options.level || LogLevel.ERROR;\n this.transports = new Map(Object.entries(options.transports || {}));\n }\n\n abstract debug(message: string, ...args: any[]): void;\n abstract info(message: string, ...args: any[]): void;\n abstract warn(message: string, ...args: any[]): void;\n abstract error(message: string, ...args: any[]): void;\n\n getTransports() {\n return this.transports;\n }\n\n trackException(_error: MastraError) {}\n\n async listLogs(\n transportId: string,\n params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ) {\n if (!transportId || !this.transports.has(transportId)) {\n return { logs: [], total: 0, page: params?.page ?? 1, perPage: params?.perPage ?? 100, hasMore: false };\n }\n\n return (\n this.transports.get(transportId)!.listLogs(params) ?? {\n logs: [],\n total: 0,\n page: params?.page ?? 1,\n perPage: params?.perPage ?? 100,\n hasMore: false,\n }\n );\n }\n\n async listLogsByRunId({\n transportId,\n runId,\n fromDate,\n toDate,\n logLevel,\n filters,\n page,\n perPage,\n }: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }) {\n if (!transportId || !this.transports.has(transportId) || !runId) {\n return { logs: [], total: 0, page: page ?? 1, perPage: perPage ?? 100, hasMore: false };\n }\n\n return (\n this.transports\n .get(transportId)!\n .listLogsByRunId({ runId, fromDate, toDate, logLevel, filters, page, perPage }) ?? {\n logs: [],\n total: 0,\n page: page ?? 1,\n perPage: perPage ?? 100,\n hasMore: false,\n }\n );\n }\n}\n","import { LogLevel } from './constants';\nimport { MastraLogger } from './logger';\nimport type { LoggerTransport } from './transport';\n\nexport const createLogger = (options: {\n name?: string;\n level?: LogLevel;\n transports?: Record<string, LoggerTransport>;\n}) => {\n const logger = new ConsoleLogger(options);\n\n logger.warn(`createLogger is deprecated. Please use \"new ConsoleLogger()\" from \"@mastra/core/logger\" instead.`);\n\n return logger;\n};\n\nexport class ConsoleLogger extends MastraLogger {\n constructor(\n options: {\n name?: string;\n level?: LogLevel;\n } = {},\n ) {\n super(options);\n }\n\n debug(message: string, ...args: any[]): void {\n if (this.level === LogLevel.DEBUG) {\n console.info(message, ...args);\n }\n }\n\n info(message: string, ...args: any[]): void {\n if (this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) {\n console.info(message, ...args);\n }\n }\n\n warn(message: string, ...args: any[]): void {\n if (this.level === LogLevel.WARN || this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) {\n console.info(message, ...args);\n }\n }\n\n error(message: string, ...args: any[]): void {\n if (\n this.level === LogLevel.ERROR ||\n this.level === LogLevel.WARN ||\n this.level === LogLevel.INFO ||\n this.level === LogLevel.DEBUG\n ) {\n console.error(message, ...args);\n }\n }\n\n async listLogs(\n _transportId: string,\n _params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ) {\n return { logs: [], total: 0, page: _params?.page ?? 1, perPage: _params?.perPage ?? 100, hasMore: false };\n }\n\n async listLogsByRunId(_args: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }) {\n return { logs: [], total: 0, page: _args.page ?? 1, perPage: _args.perPage ?? 100, hasMore: false };\n }\n}\n","import type { IMastraLogger } from './logger';\nimport { RegisteredLogger } from './logger/constants';\nimport { ConsoleLogger } from './logger/default-logger';\n\nexport class MastraBase {\n component: RegisteredLogger = RegisteredLogger.LLM;\n protected logger: IMastraLogger;\n name?: string;\n\n constructor({ component, name }: { component?: RegisteredLogger; name?: string }) {\n this.component = component || RegisteredLogger.LLM;\n this.name = name;\n this.logger = new ConsoleLogger({ name: `${this.component} - ${this.name}` });\n }\n\n /**\n * Set the logger for the agent\n * @param logger\n */\n __setLogger(logger: IMastraLogger) {\n this.logger = logger;\n\n if (this.component !== RegisteredLogger.LLM) {\n this.logger.debug(`Logger updated [component=${this.component}] [name=${this.name}]`);\n }\n }\n}\n\nexport * from './types';\n","import type { HonoRequest } from 'hono';\nimport { MastraBase } from '../base';\n\nexport interface MastraAuthProviderOptions<TUser = unknown> {\n name?: string;\n authorizeUser?: (user: TUser, request: HonoRequest) => Promise<boolean> | boolean;\n}\n\nexport abstract class MastraAuthProvider<TUser = unknown> extends MastraBase {\n constructor(options?: MastraAuthProviderOptions<TUser>) {\n super({ component: 'AUTH', name: options?.name });\n\n if (options?.authorizeUser) {\n this.authorizeUser = options.authorizeUser.bind(this);\n }\n }\n\n /**\n * Authenticate a token and return the payload\n * @param token - The token to authenticate\n * @param request - The request\n * @returns The payload\n */\n abstract authenticateToken(token: string, request: HonoRequest): Promise<TUser | null>;\n\n /**\n * Authorize a user for a path and method\n * @param user - The user to authorize\n * @param request - The request\n * @returns The authorization result\n */\n abstract authorizeUser(user: TUser, request: HonoRequest): Promise<boolean> | boolean;\n\n protected registerOptions(opts?: MastraAuthProviderOptions<TUser>) {\n if (opts?.authorizeUser) {\n this.authorizeUser = opts.authorizeUser.bind(this);\n }\n }\n}\n","import { MastraAuthProvider } from '@mastra/core/server';\nimport type { MastraAuthProviderOptions } from '@mastra/core/server';\n\nimport { createRemoteJWKSet, jwtVerify } from 'jose';\nimport type { JWTPayload } from 'jose';\n\ntype Auth0User = JWTPayload;\n\ninterface MastraAuthAuth0Options extends MastraAuthProviderOptions<Auth0User> {\n domain?: string; // set this to your Auth0 domain\n audience?: string; // set this to your Auth0 API identifier\n}\n\nexport class MastraAuthAuth0 extends MastraAuthProvider<Auth0User> {\n protected domain: string;\n protected audience: string;\n constructor(options?: MastraAuthAuth0Options) {\n super({ name: options?.name ?? 'auth0' });\n\n const domain = options?.domain ?? process.env.AUTH0_DOMAIN;\n const audience = options?.audience ?? process.env.AUTH0_AUDIENCE;\n\n if (!domain || !audience) {\n throw new Error(\n 'Auth0 domain and audience are required, please provide them in the options or set the environment variables AUTH0_DOMAIN and AUTH0_AUDIENCE',\n );\n }\n\n this.domain = domain;\n this.audience = audience;\n\n this.registerOptions(options);\n }\n\n async authenticateToken(token: string): Promise<Auth0User | null> {\n const JWKS = createRemoteJWKSet(new URL(`https://${this.domain}/.well-known/jwks.json`));\n\n const { payload } = await jwtVerify(token, JWKS, {\n issuer: `https://${this.domain}/`,\n audience: this.audience,\n });\n\n return payload;\n }\n\n async authorizeUser(user: Auth0User) {\n return !!user;\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/auth-auth0",
|
|
3
|
-
"version": "0.0.0-
|
|
3
|
+
"version": "0.0.0-fix-9244-clickhouse-metadata-20251104213434",
|
|
4
4
|
"description": "Mastra Auth0 Auth integration",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -12,24 +12,38 @@
|
|
|
12
12
|
"default": "./dist/index.js"
|
|
13
13
|
},
|
|
14
14
|
"require": {
|
|
15
|
-
"types": "./dist/index.d.
|
|
15
|
+
"types": "./dist/index.d.ts",
|
|
16
16
|
"default": "./dist/index.cjs"
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
19
|
"./package.json": "./package.json"
|
|
20
20
|
},
|
|
21
|
+
"files": [
|
|
22
|
+
"dist",
|
|
23
|
+
"CHANGELOG.md"
|
|
24
|
+
],
|
|
21
25
|
"license": "Apache-2.0",
|
|
22
26
|
"dependencies": {
|
|
23
27
|
"jose": "^6.0.12"
|
|
24
28
|
},
|
|
25
29
|
"devDependencies": {
|
|
26
30
|
"@types/node": "^20.19.0",
|
|
27
|
-
"eslint": "^9.
|
|
31
|
+
"eslint": "^9.37.0",
|
|
28
32
|
"tsup": "^8.5.0",
|
|
29
33
|
"typescript": "^5.8.3",
|
|
30
34
|
"vitest": "^3.2.4",
|
|
31
|
-
"@internal/lint": "0.0.0-
|
|
32
|
-
"@
|
|
35
|
+
"@internal/lint": "0.0.0-fix-9244-clickhouse-metadata-20251104213434",
|
|
36
|
+
"@internal/types-builder": "0.0.0-fix-9244-clickhouse-metadata-20251104213434",
|
|
37
|
+
"@mastra/core": "0.0.0-fix-9244-clickhouse-metadata-20251104213434"
|
|
38
|
+
},
|
|
39
|
+
"homepage": "https://mastra.ai",
|
|
40
|
+
"repository": {
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "git+https://github.com/mastra-ai/mastra.git",
|
|
43
|
+
"directory": "auth/auth0"
|
|
44
|
+
},
|
|
45
|
+
"bugs": {
|
|
46
|
+
"url": "https://github.com/mastra-ai/mastra/issues"
|
|
33
47
|
},
|
|
34
48
|
"scripts": {
|
|
35
49
|
"build": "tsup --silent --config tsup.config.ts",
|