diff --git a/CHANGELOG.md b/CHANGELOG.md index c695236..43fb355 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,29 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.5.6] - 2026-02-08 + +### Changed + +#### DSN Simplified +- Removed redundant `projectId` from DSN format — the API key already embeds the project ID +- New DSN format: `https://lp_APIKEY@host` (legacy format with path still accepted for backward compatibility) +- Added `apiUrl` + `apiKey` as alternative to DSN string (backward compatible with `@logtide/sdk-node` config format) +- Added `resolveDSN()` helper that accepts either `dsn` or `apiUrl` + `apiKey` +- Removed `projectId` field from `DSN` interface (`@logtide/types`) +- Removed `X-Project-Id` header from `LogtideHttpTransport` and `OtlpHttpTransport` (`@logtide/core`) + +#### Dynamic Service Name +- `service` in `ClientOptions` is now **optional** — each framework package defaults to its own name (`'express'`, `'fastify'`, `'hono'`, `'elysia'`, `'nextjs'`, `'sveltekit'`, `'nuxt'`, `'angular'`) +- Added `service?: string` field and `setService()` method to `Scope` — allows overriding service name per-request or per-module +- Service resolution chain: `scope.service` → `options.service` → framework default → `'unknown'` + +#### Mock Server +- Removed `X-Project-Id` from CORS headers and request tracking + +#### Documentation +- Updated DSN format examples across all package READMEs + ## [0.5.5] - 2026-02-07 ### Added @@ -77,4 +100,5 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Root README with package table, architecture diagram, development guide - Branch protection documentation (`.github/BRANCH_PROTECTION.md`) +[0.5.6]: https://github.com/logtide-dev/logtide-javascript/releases/tag/v0.5.6 [0.5.5]: https://github.com/logtide-dev/logtide-javascript/releases/tag/v0.5.5 diff --git a/README.md b/README.md index 1349a04..1a7e992 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,14 @@ npm install @logtide/elysia # Elysia ```typescript // Every integration follows the same pattern: { - dsn: 'https://lp_your_key@your-logtide-instance.com/project-id', + dsn: 'https://lp_your_key@your-logtide-instance.com', + service: 'my-app', +} + +// Or use apiUrl + apiKey separately: +{ + apiUrl: 'https://your-logtide-instance.com', + apiKey: 'lp_your_key', service: 'my-app', } ``` diff --git a/package.json b/package.json index 0d8aead..df565ed 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "private": true, - "version": "0.5.5", + "version": "0.5.6", "scripts": { "build": "pnpm -r --filter @logtide/* build", "test": "pnpm -r --filter @logtide/* test", @@ -13,5 +13,13 @@ }, "devDependencies": { "vitest": "^3.0.0" + }, + "pnpm": { + "overrides": { + "tar": ">=7.5.7", + "esbuild": ">=0.25.0", + "webpack": ">=5.104.1", + "cookie": ">=0.7.0" + } } } diff --git a/packages/angular/README.md b/packages/angular/README.md index 1327aae..bad6cfe 100644 --- a/packages/angular/README.md +++ b/packages/angular/README.md @@ -52,7 +52,10 @@ export const appConfig: ApplicationConfig = { providers: [ provideHttpClient(withInterceptorsFromDi()), provideLogtide({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-angular-app', environment: 'production', }), @@ -72,7 +75,8 @@ import { getLogtideProviders } from '@logtide/angular'; imports: [HttpClientModule], providers: [ ...getLogtideProviders({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or: apiUrl + apiKey instead of dsn service: 'my-angular-app', }), ], diff --git a/packages/angular/package.json b/packages/angular/package.json index b51e1a0..3820129 100644 --- a/packages/angular/package.json +++ b/packages/angular/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/angular", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK integration for Angular — ErrorHandler, HTTP Interceptor, trace propagation", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/angular/src/provide.ts b/packages/angular/src/provide.ts index 01cd2e1..78b4f4f 100644 --- a/packages/angular/src/provide.ts +++ b/packages/angular/src/provide.ts @@ -33,6 +33,7 @@ export function provideLogtide(options: ClientOptions): EnvironmentProviders { useFactory: () => { return () => { hub.init({ + service: 'angular', ...options, integrations: [ new GlobalErrorIntegration(), @@ -72,6 +73,7 @@ export function getLogtideProviders(options: ClientOptions): Provider[] { useFactory: () => { return () => { hub.init({ + service: 'angular', ...options, integrations: [ new GlobalErrorIntegration(), diff --git a/packages/core/README.md b/packages/core/README.md index dd42b75..bad173d 100644 --- a/packages/core/README.md +++ b/packages/core/README.md @@ -49,7 +49,10 @@ import { hub } from '@logtide/core'; // Initialize once hub.init({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-app', }); @@ -81,7 +84,10 @@ process.on('SIGTERM', () => hub.close()); import { LogtideClient } from '@logtide/core'; const client = new LogtideClient({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-app', }); diff --git a/packages/core/package.json b/packages/core/package.json index 1591560..06beb10 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/core", - "version": "0.5.5", + "version": "0.5.6", "description": "Core client, hub, scope, transports, and utilities for the LogTide SDK", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/core/src/client.ts b/packages/core/src/client.ts index 3d44ebd..efe6f26 100644 --- a/packages/core/src/client.ts +++ b/packages/core/src/client.ts @@ -8,7 +8,7 @@ import type { Span, Transport, } from '@logtide/types'; -import { parseDSN } from './dsn'; +import { resolveDSN } from './dsn'; import { Scope } from './scope'; import { SpanManager, type StartSpanOptions } from './span-manager'; import { BreadcrumbBuffer } from './breadcrumb-buffer'; @@ -26,7 +26,7 @@ class DefaultTransport implements Transport { private spanTransport: BatchTransport; constructor(options: ClientOptions) { - const dsn = parseDSN(options.dsn); + const dsn = resolveDSN(options); this.logTransport = new BatchTransport({ inner: new LogtideHttpTransport(dsn), @@ -41,7 +41,7 @@ class DefaultTransport implements Transport { }); this.spanTransport = new BatchTransport({ - inner: new OtlpHttpTransport(dsn, options.service), + inner: new OtlpHttpTransport(dsn, options.service || 'unknown'), batchSize: options.batchSize, flushInterval: options.flushInterval, maxBufferSize: options.maxBufferSize, @@ -103,7 +103,7 @@ export class LogtideClient implements IClient { return this._isInitialized; } - get service(): string { + get service(): string | undefined { return this.options.service; } @@ -115,6 +115,10 @@ export class LogtideClient implements IClient { return this.options.release; } + private resolveService(scope?: Scope): string { + return scope?.service || this.options.service || 'unknown'; + } + // ─── Logging ─────────────────────────────────────────── captureLog( @@ -124,7 +128,7 @@ export class LogtideClient implements IClient { scope?: Scope, ): void { const entry: InternalLogEntry = { - service: this.options.service, + service: this.resolveService(scope), level: level as LogLevel, message, time: new Date().toISOString(), diff --git a/packages/core/src/dsn.ts b/packages/core/src/dsn.ts index fec484a..430e996 100644 --- a/packages/core/src/dsn.ts +++ b/packages/core/src/dsn.ts @@ -1,24 +1,21 @@ -import type { DSN } from '@logtide/types'; +import type { ClientOptions, DSN } from '@logtide/types'; /** * Parse a LogTide DSN string into its components. - * Format: https://lp_APIKEY@host/PROJECT_ID + * Format: https://lp_APIKEY@host + * Legacy format with path (https://lp_APIKEY@host/PROJECT_ID) is also accepted; the path is ignored. */ export function parseDSN(dsn: string): DSN { try { const url = new URL(dsn); const apiKey = url.username; - const projectId = url.pathname.replace(/^\//, ''); const apiUrl = `${url.protocol}//${url.host}`; if (!apiKey) { throw new Error('Missing API key in DSN'); } - if (!projectId) { - throw new Error('Missing project ID in DSN'); - } - return { apiUrl, apiKey, projectId }; + return { apiUrl, apiKey }; } catch (err) { if (err instanceof Error && err.message.startsWith('Missing')) { throw err; @@ -26,3 +23,20 @@ export function parseDSN(dsn: string): DSN { throw new Error(`Invalid DSN: ${dsn}`); } } + +/** + * Resolve a DSN from ClientOptions. + * Accepts either a `dsn` string or separate `apiUrl` + `apiKey` fields. + */ +export function resolveDSN(options: ClientOptions): DSN { + if (options.dsn) { + return parseDSN(options.dsn); + } + if (options.apiUrl && options.apiKey) { + return { + apiUrl: options.apiUrl.replace(/\/$/, ''), + apiKey: options.apiKey, + }; + } + throw new Error('Either "dsn" or both "apiUrl" and "apiKey" must be provided'); +} diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 3232db6..ed1ce83 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -23,7 +23,7 @@ export { SpanManager, type StartSpanOptions } from './span-manager'; export { BreadcrumbBuffer } from './breadcrumb-buffer'; // DSN -export { parseDSN } from './dsn'; +export { parseDSN, resolveDSN } from './dsn'; // Transports export { LogtideHttpTransport } from './transport/logtide-http'; diff --git a/packages/core/src/scope.ts b/packages/core/src/scope.ts index 8fcea94..2ff5e65 100644 --- a/packages/core/src/scope.ts +++ b/packages/core/src/scope.ts @@ -5,6 +5,7 @@ import { BreadcrumbBuffer } from './breadcrumb-buffer'; export class Scope { traceId: string; spanId?: string; + service?: string; tags: Record = {}; extras: Record = {}; private breadcrumbs: BreadcrumbBuffer; @@ -15,6 +16,11 @@ export class Scope { this.breadcrumbs = new BreadcrumbBuffer(maxBreadcrumbs); } + setService(service: string): this { + this.service = service; + return this; + } + setTag(key: string, value: string): this { this.tags[key] = value; return this; @@ -51,6 +57,7 @@ export class Scope { clone(): Scope { const scope = new Scope(this.traceId); scope.spanId = this.spanId; + scope.service = this.service; scope.tags = { ...this.tags }; scope.extras = { ...this.extras }; for (const bc of this.breadcrumbs.getAll()) { diff --git a/packages/core/src/transport/logtide-http.ts b/packages/core/src/transport/logtide-http.ts index e73f435..3dcac2a 100644 --- a/packages/core/src/transport/logtide-http.ts +++ b/packages/core/src/transport/logtide-http.ts @@ -15,7 +15,6 @@ export class LogtideHttpTransport implements Transport { headers: { 'Content-Type': 'application/json', 'X-API-Key': this.dsn.apiKey, - 'X-Project-Id': this.dsn.projectId, }, body: JSON.stringify({ logs }), }); diff --git a/packages/core/src/transport/otlp-http.ts b/packages/core/src/transport/otlp-http.ts index 57e1cfa..973ee70 100644 --- a/packages/core/src/transport/otlp-http.ts +++ b/packages/core/src/transport/otlp-http.ts @@ -69,7 +69,6 @@ export class OtlpHttpTransport implements Transport { headers: { 'Content-Type': 'application/json', 'X-API-Key': this.dsn.apiKey, - 'X-Project-Id': this.dsn.projectId, }, body: JSON.stringify(payload), }); diff --git a/packages/core/tests/dsn.test.ts b/packages/core/tests/dsn.test.ts index 3b72b6a..b96c202 100644 --- a/packages/core/tests/dsn.test.ts +++ b/packages/core/tests/dsn.test.ts @@ -1,40 +1,49 @@ import { describe, it, expect } from 'vitest'; -import { parseDSN } from '../src/dsn'; +import { parseDSN, resolveDSN } from '../src/dsn'; describe('parseDSN', () => { - it('should parse a valid DSN', () => { + it('should parse a DSN without path (new format)', () => { + const result = parseDSN('https://lp_abc123@api.logtide.dev'); + expect(result).toEqual({ + apiUrl: 'https://api.logtide.dev', + apiKey: 'lp_abc123', + }); + }); + + it('should accept legacy DSN with project ID path and ignore it', () => { const result = parseDSN('https://lp_abc123@api.logtide.dev/my-project'); expect(result).toEqual({ apiUrl: 'https://api.logtide.dev', apiKey: 'lp_abc123', - projectId: 'my-project', }); }); it('should handle DSN with port', () => { - const result = parseDSN('https://lp_key@localhost:3000/proj1'); + const result = parseDSN('https://lp_key@localhost:3000'); expect(result).toEqual({ apiUrl: 'https://localhost:3000', apiKey: 'lp_key', - projectId: 'proj1', }); }); it('should handle http scheme', () => { - const result = parseDSN('http://lp_key@localhost/project'); + const result = parseDSN('http://lp_key@localhost'); expect(result).toEqual({ apiUrl: 'http://localhost', apiKey: 'lp_key', - projectId: 'project', }); }); - it('should throw on missing API key', () => { - expect(() => parseDSN('https://api.logtide.dev/project')).toThrow('Missing API key'); + it('should handle DSN with trailing slash', () => { + const result = parseDSN('https://lp_key@api.logtide.dev/'); + expect(result).toEqual({ + apiUrl: 'https://api.logtide.dev', + apiKey: 'lp_key', + }); }); - it('should throw on missing project ID', () => { - expect(() => parseDSN('https://lp_key@api.logtide.dev/')).toThrow('Missing project ID'); + it('should throw on missing API key', () => { + expect(() => parseDSN('https://api.logtide.dev/project')).toThrow('Missing API key'); }); it('should throw on invalid DSN string', () => { @@ -45,3 +54,57 @@ describe('parseDSN', () => { expect(() => parseDSN('')).toThrow('Invalid DSN'); }); }); + +describe('resolveDSN', () => { + it('should resolve from dsn string', () => { + const result = resolveDSN({ dsn: 'https://lp_key@api.logtide.dev' }); + expect(result).toEqual({ + apiUrl: 'https://api.logtide.dev', + apiKey: 'lp_key', + }); + }); + + it('should resolve from apiUrl + apiKey', () => { + const result = resolveDSN({ apiUrl: 'http://localhost:8080', apiKey: 'lp_test_key' }); + expect(result).toEqual({ + apiUrl: 'http://localhost:8080', + apiKey: 'lp_test_key', + }); + }); + + it('should strip trailing slash from apiUrl', () => { + const result = resolveDSN({ apiUrl: 'http://localhost:8080/', apiKey: 'lp_key' }); + expect(result).toEqual({ + apiUrl: 'http://localhost:8080', + apiKey: 'lp_key', + }); + }); + + it('should prefer dsn over apiUrl + apiKey when both provided', () => { + const result = resolveDSN({ + dsn: 'https://lp_dsn_key@api.logtide.dev', + apiUrl: 'http://localhost:8080', + apiKey: 'lp_other_key', + }); + expect(result).toEqual({ + apiUrl: 'https://api.logtide.dev', + apiKey: 'lp_dsn_key', + }); + }); + + it('should throw when neither dsn nor apiUrl+apiKey provided', () => { + expect(() => resolveDSN({})).toThrow('Either "dsn" or both "apiUrl" and "apiKey" must be provided'); + }); + + it('should throw when only apiUrl provided without apiKey', () => { + expect(() => resolveDSN({ apiUrl: 'http://localhost:8080' })).toThrow( + 'Either "dsn" or both "apiUrl" and "apiKey" must be provided', + ); + }); + + it('should throw when only apiKey provided without apiUrl', () => { + expect(() => resolveDSN({ apiKey: 'lp_key' })).toThrow( + 'Either "dsn" or both "apiUrl" and "apiKey" must be provided', + ); + }); +}); diff --git a/packages/elysia/README.md b/packages/elysia/README.md index e7354cd..0e45fab 100644 --- a/packages/elysia/README.md +++ b/packages/elysia/README.md @@ -47,7 +47,10 @@ import { logtide } from '@logtide/elysia'; const app = new Elysia() .use(logtide({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-elysia-api', environment: 'production', })) diff --git a/packages/elysia/package.json b/packages/elysia/package.json index bb0b149..f0c61f4 100644 --- a/packages/elysia/package.json +++ b/packages/elysia/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/elysia", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK plugin for Elysia — request tracing and error capture via lifecycle hooks", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/elysia/src/plugin.ts b/packages/elysia/src/plugin.ts index ae70dcb..42f6cd7 100644 --- a/packages/elysia/src/plugin.ts +++ b/packages/elysia/src/plugin.ts @@ -27,6 +27,7 @@ export interface LogtideElysiaOptions extends ClientOptions {} */ export function logtide(options: LogtideElysiaOptions) { hub.init({ + service: 'elysia', ...options, integrations: [ new ConsoleIntegration(), diff --git a/packages/express/README.md b/packages/express/README.md index 4e94457..b0ee878 100644 --- a/packages/express/README.md +++ b/packages/express/README.md @@ -48,7 +48,10 @@ import { logtide } from '@logtide/express'; const app = express(); app.use(logtide({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-express-api', environment: 'production', })); diff --git a/packages/express/package.json b/packages/express/package.json index ec36df5..814895a 100644 --- a/packages/express/package.json +++ b/packages/express/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/express", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK middleware for Express — request tracing and error capture", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/express/src/middleware.ts b/packages/express/src/middleware.ts index e26a108..f32bfc0 100644 --- a/packages/express/src/middleware.ts +++ b/packages/express/src/middleware.ts @@ -35,6 +35,7 @@ declare global { */ export function logtide(options: LogtideExpressOptions) { hub.init({ + service: 'express', ...options, integrations: [ new ConsoleIntegration(), diff --git a/packages/fastify/README.md b/packages/fastify/README.md index 1f3a509..4dd339c 100644 --- a/packages/fastify/README.md +++ b/packages/fastify/README.md @@ -48,7 +48,10 @@ import { logtide } from '@logtide/fastify'; const app = Fastify(); await app.register(logtide, { - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-fastify-api', environment: 'production', }); diff --git a/packages/fastify/package.json b/packages/fastify/package.json index 39b9ed6..4f52ec6 100644 --- a/packages/fastify/package.json +++ b/packages/fastify/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/fastify", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK plugin for Fastify — request tracing and error capture", "type": "module", "main": "./dist/index.cjs", @@ -50,7 +50,7 @@ "fastify": "^4.0.0 || ^5.0.0" }, "devDependencies": { - "fastify": "^5.2.1", + "fastify": "^5.7.3", "tsup": "^8.5.1", "typescript": "^5.5.4" } diff --git a/packages/fastify/src/middleware.ts b/packages/fastify/src/middleware.ts index 7f97936..97147f8 100644 --- a/packages/fastify/src/middleware.ts +++ b/packages/fastify/src/middleware.ts @@ -35,6 +35,7 @@ declare module 'fastify' { export const logtide = fp( (fastify: FastifyInstance, options: LogtideFastifyOptions, done: (err?: Error) => void) => { hub.init({ + service: 'fastify', ...options, integrations: [ new ConsoleIntegration(), diff --git a/packages/hono/README.md b/packages/hono/README.md index 52e02a8..b9bfc31 100644 --- a/packages/hono/README.md +++ b/packages/hono/README.md @@ -48,7 +48,10 @@ import { logtide } from '@logtide/hono'; const app = new Hono(); app.use('*', logtide({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-hono-api', environment: 'production', })); diff --git a/packages/hono/package.json b/packages/hono/package.json index 80ba470..d8d9318 100644 --- a/packages/hono/package.json +++ b/packages/hono/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/hono", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK middleware for Hono — request tracing and error capture", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/hono/src/middleware.ts b/packages/hono/src/middleware.ts index 6f80cae..99f88a8 100644 --- a/packages/hono/src/middleware.ts +++ b/packages/hono/src/middleware.ts @@ -26,6 +26,7 @@ export interface LogtideHonoOptions extends ClientOptions {} */ export function logtide(options: LogtideHonoOptions) { hub.init({ + service: 'hono', ...options, integrations: [ new ConsoleIntegration(), diff --git a/packages/nextjs/README.md b/packages/nextjs/README.md index 646a048..10e7329 100644 --- a/packages/nextjs/README.md +++ b/packages/nextjs/README.md @@ -51,7 +51,10 @@ import { registerLogtide, captureRequestError } from '@logtide/nextjs/server'; export async function register() { await registerLogtide({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-nextjs-app', environment: process.env.NODE_ENV, }); @@ -72,7 +75,10 @@ import { useEffect } from 'react'; import { initLogtide, trackNavigation } from '@logtide/nextjs/client'; initLogtide({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-nextjs-app', }); @@ -99,7 +105,7 @@ Initialize LogTide in Next.js `instrumentation.ts`. Automatically installs `Cons import { registerLogtide } from '@logtide/nextjs/server'; await registerLogtide({ - dsn: 'https://lp_key@host/project', + dsn: 'https://lp_key@host', service: 'my-app', environment: 'production', release: '1.0.0', @@ -156,7 +162,7 @@ Initialize LogTide on the client side. Installs `GlobalErrorIntegration` for `un import { initLogtide } from '@logtide/nextjs/client'; initLogtide({ - dsn: 'https://lp_key@host/project', + dsn: 'https://lp_key@host', service: 'my-app', }); ``` diff --git a/packages/nextjs/package.json b/packages/nextjs/package.json index 989e60d..7e0017f 100644 --- a/packages/nextjs/package.json +++ b/packages/nextjs/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/nextjs", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK integration for Next.js — auto error capture, request tracing, and performance spans", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/nextjs/src/client/index.ts b/packages/nextjs/src/client/index.ts index 491f9bd..0f7eaea 100644 --- a/packages/nextjs/src/client/index.ts +++ b/packages/nextjs/src/client/index.ts @@ -17,6 +17,7 @@ export { trackNavigation } from './navigation'; */ export function initLogtide(options: ClientOptions): void { hub.init({ + service: 'nextjs', ...options, integrations: [ new GlobalErrorIntegration(), diff --git a/packages/nextjs/src/server/index.ts b/packages/nextjs/src/server/index.ts index 5e0e7ff..1ff8179 100644 --- a/packages/nextjs/src/server/index.ts +++ b/packages/nextjs/src/server/index.ts @@ -21,6 +21,7 @@ export { instrumentRequest, finishRequest } from './request-handler'; */ export async function registerLogtide(options: ClientOptions): Promise { hub.init({ + service: 'nextjs', ...options, integrations: [ new ConsoleIntegration(), diff --git a/packages/node/package.json b/packages/node/package.json index f622046..cec79e5 100644 --- a/packages/node/package.json +++ b/packages/node/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/sdk-node", - "version": "0.5.5", + "version": "0.5.6", "description": "Official Node.js SDK for LogTide (logtide.dev) - Self-hosted log management with advanced features: retry logic, circuit breaker, query API, live streaming, and middleware support", "type": "module", "main": "./dist/index.cjs", @@ -74,7 +74,7 @@ "@types/express": "^4.17.21", "@types/node": "^20.14.15", "express": "^5.1.0", - "fastify": "^5.7.2", + "fastify": "^5.7.3", "fastify-plugin": "^4.5.1", "tsup": "^8.5.1", "typescript": "^5.5.4", @@ -82,7 +82,7 @@ }, "peerDependencies": { "express": "^4.0.0 || ^5.0.0", - "fastify": "^4.0.0" + "fastify": "^4.0.0 || ^5.0.0" }, "peerDependenciesMeta": { "express": { diff --git a/packages/node/src/middleware/fastify.ts b/packages/node/src/middleware/fastify.ts index 4a76794..c6de344 100644 --- a/packages/node/src/middleware/fastify.ts +++ b/packages/node/src/middleware/fastify.ts @@ -120,7 +120,7 @@ const logTidePlugin: FastifyPluginCallback = ( }; export const logTideFastifyPlugin = fp(logTidePlugin, { - fastify: '4.x', + fastify: '>=4.0.0', name: '@logtide/fastify-plugin', }); diff --git a/packages/nuxt/README.md b/packages/nuxt/README.md index cc69e9b..d32ab31 100644 --- a/packages/nuxt/README.md +++ b/packages/nuxt/README.md @@ -49,7 +49,10 @@ export default defineNuxtConfig({ modules: ['@logtide/nuxt'], logtide: { - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-nuxt-app', environment: 'production', release: '1.0.0', diff --git a/packages/nuxt/package.json b/packages/nuxt/package.json index 018097c..1e1ef73 100644 --- a/packages/nuxt/package.json +++ b/packages/nuxt/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/nuxt", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK integration for Nuxt — auto error capture, request tracing via Nitro hooks", "type": "module", "main": "./dist/module.cjs", diff --git a/packages/nuxt/src/module.ts b/packages/nuxt/src/module.ts index 03268bf..b54d476 100644 --- a/packages/nuxt/src/module.ts +++ b/packages/nuxt/src/module.ts @@ -11,7 +11,7 @@ export default defineNuxtModule({ }, defaults: { dsn: '', - service: 'nuxt-app', + service: 'nuxt', }, setup(options, nuxt) { if (!options.dsn) { diff --git a/packages/nuxt/src/runtime/client-plugin.ts b/packages/nuxt/src/runtime/client-plugin.ts index 102db37..7a0fce2 100644 --- a/packages/nuxt/src/runtime/client-plugin.ts +++ b/packages/nuxt/src/runtime/client-plugin.ts @@ -7,7 +7,7 @@ import { defineNuxtPlugin, useRuntimeConfig } from '#app'; export default defineNuxtPlugin((nuxtApp) => { const config = useRuntimeConfig().public.logtide as { dsn: string; - service: string; + service?: string; environment?: string; release?: string; debug?: boolean; @@ -17,7 +17,7 @@ export default defineNuxtPlugin((nuxtApp) => { hub.init({ dsn: config.dsn, - service: config.service, + service: config.service ?? 'nuxt', environment: config.environment, release: config.release, debug: config.debug, diff --git a/packages/nuxt/src/runtime/server-plugin.ts b/packages/nuxt/src/runtime/server-plugin.ts index da48d5a..5dd9e50 100644 --- a/packages/nuxt/src/runtime/server-plugin.ts +++ b/packages/nuxt/src/runtime/server-plugin.ts @@ -13,7 +13,7 @@ import { defineNitroPlugin, getRequestURL, getRequestHeaders } from 'h3'; export default defineNitroPlugin((nitroApp) => { const config = useRuntimeConfig().logtide as { dsn: string; - service: string; + service?: string; environment?: string; release?: string; debug?: boolean; @@ -23,7 +23,7 @@ export default defineNitroPlugin((nitroApp) => { hub.init({ dsn: config.dsn, - service: config.service, + service: config.service ?? 'nuxt', environment: config.environment, release: config.release, debug: config.debug, diff --git a/packages/sveltekit/README.md b/packages/sveltekit/README.md index 4640338..655f1e9 100644 --- a/packages/sveltekit/README.md +++ b/packages/sveltekit/README.md @@ -48,7 +48,10 @@ yarn add @logtide/sveltekit import { logtideHandle, logtideHandleError, logtideHandleFetch } from '@logtide/sveltekit/server'; export const handle = logtideHandle({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or use apiUrl + apiKey instead of dsn: + // apiUrl: 'https://your-instance.com', + // apiKey: 'lp_your_key', service: 'my-sveltekit-app', environment: 'production', }); @@ -65,7 +68,8 @@ export const handleFetch = logtideHandleFetch(); import { initLogtide } from '@logtide/sveltekit/client'; initLogtide({ - dsn: 'https://lp_your_key@your-instance.com/project-id', + dsn: 'https://lp_your_key@your-instance.com', + // Or: apiUrl + apiKey instead of dsn service: 'my-sveltekit-app', }); ``` diff --git a/packages/sveltekit/package.json b/packages/sveltekit/package.json index 611eb3c..0b5dc4f 100644 --- a/packages/sveltekit/package.json +++ b/packages/sveltekit/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/sveltekit", - "version": "0.5.5", + "version": "0.5.6", "description": "LogTide SDK integration for SvelteKit — handle, handleError, handleFetch hooks", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/sveltekit/src/server/index.ts b/packages/sveltekit/src/server/index.ts index 1c8c79b..f8e0a08 100644 --- a/packages/sveltekit/src/server/index.ts +++ b/packages/sveltekit/src/server/index.ts @@ -48,6 +48,7 @@ interface HandleFetchInput { */ export function logtideHandle(options: ClientOptions) { hub.init({ + service: 'sveltekit', ...options, integrations: [ new ConsoleIntegration(), diff --git a/packages/types/README.md b/packages/types/README.md index edee688..3b2a5db 100644 --- a/packages/types/README.md +++ b/packages/types/README.md @@ -87,8 +87,8 @@ import type { ClientOptions, DSN } from '@logtide/types'; | Type | Description | |------|-------------| -| `ClientOptions` | Full configuration: DSN, service, batching, retry, circuit breaker, etc. | -| `DSN` | Parsed DSN with `apiUrl`, `apiKey`, `projectId` | +| `ClientOptions` | Full configuration: DSN (or `apiUrl` + `apiKey`), service, batching, retry, circuit breaker, etc. | +| `DSN` | Parsed DSN with `apiUrl`, `apiKey` | --- diff --git a/packages/types/package.json b/packages/types/package.json index 9d4e6aa..64ea3da 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@logtide/types", - "version": "0.5.5", + "version": "0.5.6", "description": "Shared type definitions for the LogTide SDK ecosystem", "type": "module", "main": "./dist/index.cjs", diff --git a/packages/types/src/client-options.ts b/packages/types/src/client-options.ts index 6276c2e..c14c698 100644 --- a/packages/types/src/client-options.ts +++ b/packages/types/src/client-options.ts @@ -4,14 +4,17 @@ import type { Transport } from './transport'; export interface DSN { apiUrl: string; apiKey: string; - projectId: string; } export interface ClientOptions { - /** DSN string: https://lp_APIKEY@api.logtide.dev/PROJECT_ID */ - dsn: string; - /** Service name for log attribution */ - service: string; + /** DSN string: https://lp_APIKEY@api.logtide.dev */ + dsn?: string; + /** API base URL (alternative to DSN, e.g. 'http://localhost:8080') */ + apiUrl?: string; + /** API key (alternative to DSN, e.g. 'lp_your_api_key_here') */ + apiKey?: string; + /** Service name for log attribution (optional, defaults to framework name) */ + service?: string; /** Environment (e.g. production, staging) */ environment?: string; /** Release / version identifier */ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3d4078d..4f53d1d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,6 +4,12 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +overrides: + tar: '>=7.5.7' + esbuild: '>=0.25.0' + webpack: '>=5.104.1' + cookie: '>=0.7.0' + importers: .: @@ -110,7 +116,7 @@ importers: version: 5.1.0 devDependencies: fastify: - specifier: ^5.2.1 + specifier: ^5.7.3 version: 5.7.4 tsup: specifier: ^8.5.1 @@ -175,7 +181,7 @@ importers: specifier: ^5.1.0 version: 5.2.1 fastify: - specifier: ^5.7.2 + specifier: ^5.7.3 version: 5.7.4 fastify-plugin: specifier: ^4.5.1 @@ -405,8 +411,8 @@ importers: specifier: workspace:* version: link:../../packages/node fastify: - specifier: ^4.28.0 - version: 4.29.1 + specifier: ^5.7.3 + version: 5.7.4 devDependencies: logtide-mock-server: specifier: workspace:* @@ -535,7 +541,7 @@ packages: resolution: {integrity: sha512-x2tlGg5CsUveFzuRuqeHknSbGirSAoRynEh+KqPRGK0G3WpMViW/M8SuVurecasegfIrDWtYZ4FnVxKqNbKwXQ==} engines: {node: ^18.19.1 || ^20.11.1 || >=22.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: - webpack: ^5.30.0 + webpack: '>=5.104.1' webpack-dev-server: ^5.0.2 '@angular-devkit/core@19.2.19': @@ -1219,12 +1225,6 @@ packages: '@emnapi/wasi-threads@1.1.0': resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} - '@esbuild/aix-ppc64@0.21.5': - resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - '@esbuild/aix-ppc64@0.25.12': resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} engines: {node: '>=18'} @@ -1243,12 +1243,6 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.21.5': - resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - '@esbuild/android-arm64@0.25.12': resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} engines: {node: '>=18'} @@ -1267,12 +1261,6 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm@0.21.5': - resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - '@esbuild/android-arm@0.25.12': resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} engines: {node: '>=18'} @@ -1291,12 +1279,6 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-x64@0.21.5': - resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - '@esbuild/android-x64@0.25.12': resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} engines: {node: '>=18'} @@ -1315,12 +1297,6 @@ packages: cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.21.5': - resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - '@esbuild/darwin-arm64@0.25.12': resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} engines: {node: '>=18'} @@ -1339,12 +1315,6 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.21.5': - resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - '@esbuild/darwin-x64@0.25.12': resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} engines: {node: '>=18'} @@ -1363,12 +1333,6 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.21.5': - resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - '@esbuild/freebsd-arm64@0.25.12': resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} engines: {node: '>=18'} @@ -1387,12 +1351,6 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.21.5': - resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - '@esbuild/freebsd-x64@0.25.12': resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} engines: {node: '>=18'} @@ -1411,12 +1369,6 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.21.5': - resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - '@esbuild/linux-arm64@0.25.12': resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} engines: {node: '>=18'} @@ -1435,12 +1387,6 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.21.5': - resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - '@esbuild/linux-arm@0.25.12': resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} engines: {node: '>=18'} @@ -1459,12 +1405,6 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.21.5': - resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - '@esbuild/linux-ia32@0.25.12': resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} engines: {node: '>=18'} @@ -1483,12 +1423,6 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.21.5': - resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - '@esbuild/linux-loong64@0.25.12': resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} engines: {node: '>=18'} @@ -1507,12 +1441,6 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.21.5': - resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - '@esbuild/linux-mips64el@0.25.12': resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} engines: {node: '>=18'} @@ -1531,12 +1459,6 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.21.5': - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - '@esbuild/linux-ppc64@0.25.12': resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} engines: {node: '>=18'} @@ -1555,12 +1477,6 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.21.5': - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - '@esbuild/linux-riscv64@0.25.12': resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} engines: {node: '>=18'} @@ -1579,12 +1495,6 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.21.5': - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - '@esbuild/linux-s390x@0.25.12': resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} engines: {node: '>=18'} @@ -1603,12 +1513,6 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.21.5': - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - '@esbuild/linux-x64@0.25.12': resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} engines: {node: '>=18'} @@ -1645,12 +1549,6 @@ packages: cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-x64@0.21.5': - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - '@esbuild/netbsd-x64@0.25.12': resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} engines: {node: '>=18'} @@ -1687,12 +1585,6 @@ packages: cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-x64@0.21.5': - resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - '@esbuild/openbsd-x64@0.25.12': resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} engines: {node: '>=18'} @@ -1723,12 +1615,6 @@ packages: cpu: [arm64] os: [openharmony] - '@esbuild/sunos-x64@0.21.5': - resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - '@esbuild/sunos-x64@0.25.12': resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} engines: {node: '>=18'} @@ -1747,12 +1633,6 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.21.5': - resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - '@esbuild/win32-arm64@0.25.12': resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} engines: {node: '>=18'} @@ -1771,12 +1651,6 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.21.5': - resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - '@esbuild/win32-ia32@0.25.12': resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} engines: {node: '>=18'} @@ -1795,12 +1669,6 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.21.5': - resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - '@esbuild/win32-x64@0.25.12': resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} engines: {node: '>=18'} @@ -1819,30 +1687,18 @@ packages: cpu: [x64] os: [win32] - '@fastify/ajv-compiler@3.6.0': - resolution: {integrity: sha512-LwdXQJjmMD+GwLOkP7TVC68qa+pSSogeWWmznRJ/coyTcfe9qA05AHFSe1eZFwK6q+xVRpChnvFUkf1iYaSZsQ==} - '@fastify/ajv-compiler@4.0.5': resolution: {integrity: sha512-KoWKW+MhvfTRWL4qrhUwAAZoaChluo0m0vbiJlGMt2GXvL4LVPQEjt8kSpHI3IBq5Rez8fg+XeH3cneztq+C7A==} - '@fastify/error@3.4.1': - resolution: {integrity: sha512-wWSvph+29GR783IhmvdwWnN4bUxTD01Vm5Xad4i7i1VuAOItLvbPAb69sb0IQ2N57yprvhNIwAP5B6xfKTmjmQ==} - '@fastify/error@4.2.0': resolution: {integrity: sha512-RSo3sVDXfHskiBZKBPRgnQTtIqpi/7zhJOEmAxCiBcM7d0uwdGdxLlsCaLzGs8v8NnxIRlfG0N51p5yFaOentQ==} - '@fastify/fast-json-stringify-compiler@4.3.0': - resolution: {integrity: sha512-aZAXGYo6m22Fk1zZzEUKBvut/CIIQe/BapEORnxiD5Qr0kPHqqI69NtEMCme74h+at72sPhbkb4ZrLd1W3KRLA==} - '@fastify/fast-json-stringify-compiler@5.0.3': resolution: {integrity: sha512-uik7yYHkLr6fxd8hJSZ8c+xF4WafPK+XzneQDPU+D10r5X19GW8lJcom2YijX2+qtFF1ENJlHXKFM9ouXNJYgQ==} '@fastify/forwarded@3.0.1': resolution: {integrity: sha512-JqDochHFqXs3C3Ml3gOY58zM7OqO9ENqPo0UqAjAjH8L01fRZqwX9iLeX34//kiJubF7r2ZQHtBRU36vONbLlw==} - '@fastify/merge-json-schemas@0.1.1': - resolution: {integrity: sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==} - '@fastify/merge-json-schemas@0.2.1': resolution: {integrity: sha512-OA3KGBCy6KtIvLf8DINC5880o5iBlDX4SxzLQS8HorJAbqluzLRn80UXU0bxZn7UOFhFgpRJDasfwn9nG4FG4A==} @@ -2551,7 +2407,7 @@ packages: peerDependencies: '@angular/compiler-cli': ^19.0.0 || ^19.2.0-next.0 typescript: '>=5.5 <5.9' - webpack: ^5.54.0 + webpack: '>=5.104.1' '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -3905,6 +3761,12 @@ packages: peerDependencies: acorn: ^8 + acorn-import-phases@1.0.4: + resolution: {integrity: sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==} + engines: {node: '>=10.13.0'} + peerDependencies: + acorn: ^8.14.0 + acorn-walk@8.3.4: resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} engines: {node: '>=0.4.0'} @@ -4050,9 +3912,6 @@ packages: peerDependencies: postcss: ^8.1.0 - avvio@8.4.0: - resolution: {integrity: sha512-CDSwaxINFy59iNwhYnkvALBwZiTydGkOecZyPkqBpABYR1KqGEsET0VOOYDwtleZSUIdeY36DC2bSZ24CO1igA==} - avvio@9.1.0: resolution: {integrity: sha512-fYASnYi600CsH/j9EQov7lECAniYiBFiiAtBNuZYLA2leLe9qOvZzqYHFjtIj6gD2VMoMLP14834LFWvr4IfDw==} @@ -4073,7 +3932,7 @@ packages: engines: {node: '>= 14.15.0'} peerDependencies: '@babel/core': ^7.12.0 - webpack: '>=5' + webpack: '>=5.104.1' babel-plugin-polyfill-corejs2@0.4.15: resolution: {integrity: sha512-hR3GwrRwHUfYwGfrisXPIDP3JcYfBrW7wKE7+Au6wDYl7fm/ka1NEII6kORzxNU556JjfidZeBsO10kYvtV1aw==} @@ -4178,7 +4037,7 @@ packages: resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} peerDependencies: - esbuild: '>=0.18' + esbuild: '>=0.25.0' bytes@3.1.2: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} @@ -4252,10 +4111,6 @@ packages: resolution: {integrity: sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==} engines: {node: '>= 20.19.0'} - chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - chownr@3.0.0: resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==} engines: {node: '>=18'} @@ -4407,10 +4262,6 @@ packages: resolution: {integrity: sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==} engines: {node: '>=6.6.0'} - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} - engines: {node: '>= 0.6'} - cookie@0.7.2: resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} engines: {node: '>= 0.6'} @@ -4433,7 +4284,7 @@ packages: resolution: {integrity: sha512-SNwdBeHyII+rWvee/bTnAYyO8vfVdcSTud4EIb6jcZ8inLeWucJE0DnxXQBjlQ5zlteuuvooGQy3LIyGxhvlOA==} engines: {node: '>= 18.12.0'} peerDependencies: - webpack: ^5.1.0 + webpack: '>=5.104.1' core-js-compat@3.48.0: resolution: {integrity: sha512-OM4cAF3D6VtH/WkLtWvyNC56EZVXsZdU3iqaMG2B4WvYrlqU831pc4UtG5yp0sE9z8Y02wVN7PjW5Zf9Gt0f1Q==} @@ -4481,7 +4332,7 @@ packages: engines: {node: '>= 18.12.0'} peerDependencies: '@rspack/core': 0.x || 1.x - webpack: ^5.27.0 + webpack: '>=5.104.1' peerDependenciesMeta: '@rspack/core': optional: true @@ -4791,11 +4642,6 @@ packages: engines: {node: '>=18'} hasBin: true - esbuild@0.21.5: - resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} - engines: {node: '>=12'} - hasBin: true - esbuild@0.25.12: resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} engines: {node: '>=18'} @@ -4908,9 +4754,6 @@ packages: externality@1.0.2: resolution: {integrity: sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==} - fast-content-type-parse@1.1.0: - resolution: {integrity: sha512-fBHHqSTFLVnR61C+gltJuE5GkVQMV0S2nqUO8TJ+5Z3qAKG8vAx4FKai1s5jq/inV1+sREynIWSuQ6HgoSXpDQ==} - fast-decode-uri-component@1.0.1: resolution: {integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==} @@ -4924,9 +4767,6 @@ packages: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} - fast-json-stringify@5.16.1: - resolution: {integrity: sha512-KAdnLvy1yu/XrRtP+LJnxbBGrhN+xXu+gt3EUvZhYGKCr3lFHq/7UFJHHFgmJKoqlh6B40bZLEv7w46B0mqn1g==} - fast-json-stringify@6.3.0: resolution: {integrity: sha512-oRCntNDY/329HJPlmdNLIdogNtt6Vyjb1WuT01Soss3slIdyUp8kAcDU3saQTOquEK8KFVfwIIF7FebxUAu+yA==} @@ -4936,9 +4776,6 @@ packages: fast-querystring@1.1.2: resolution: {integrity: sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==} - fast-uri@2.4.0: - resolution: {integrity: sha512-ypuAmmMKInk5q7XcepxlnUWDLWv4GFtaJqAzWKqn62IpQ3pejtr5dTVbt3vwqVaMKmkNR55sTT+CqUKIaT21BA==} - fast-uri@3.1.0: resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} @@ -4948,9 +4785,6 @@ packages: fastify-plugin@5.1.0: resolution: {integrity: sha512-FAIDA8eovSt5qcDgcBvDuX/v0Cjz0ohGhENZ/wpc3y+oZCY2afZ9Baqql3g/lC+OHRnciQol4ww7tuthOb9idw==} - fastify@4.29.1: - resolution: {integrity: sha512-m2kMNHIG92tSNWv+Z3UeTR9AWLLuo7KctC7mlFPtMEVrfjIhmQhkQnT9v15qA/BfVq3vvj134Y0jl9SBje3jXQ==} - fastify@5.7.4: resolution: {integrity: sha512-e6l5NsRdaEP8rdD8VR0ErJASeyaRbzXYpmkrpr2SuvuMq6Si3lvsaVy5C+7gLanEkvjpMDzBXWE5HPeb/hgTxA==} @@ -4993,10 +4827,6 @@ packages: resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==} engines: {node: '>=14.16'} - find-my-way@8.2.2: - resolution: {integrity: sha512-Dobi7gcTEq8yszimcfp/R7+owiT4WncAJ7VTTgFH1jYJ5GaG1FbhjwDG820hptN0QDFvzVY3RfCzdInvGPGzjA==} - engines: {node: '>=14'} - find-my-way@9.4.0: resolution: {integrity: sha512-5Ye4vHsypZRYtS01ob/iwHzGRUDELlsoCftI/OZFhcLs1M0tkGPcXldE80TAZC5yYuJMBPJQQ43UHlqbJWiX2w==} engines: {node: '>=20'} @@ -5043,10 +4873,6 @@ packages: resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==} engines: {node: '>= 0.8'} - fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - fs-minipass@3.0.3: resolution: {integrity: sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -5533,9 +5359,6 @@ packages: resolution: {integrity: sha512-lR4MXjGNgkJc7tkQ97kb2nuEMnNCyU//XYVH0MKTGcXEiSudQ5MKGKen3C5QubYy0vmq+JGitUg92uuywGEwIA==} engines: {node: ^18.17.0 || >=20.5.0} - json-schema-ref-resolver@1.0.1: - resolution: {integrity: sha512-EJAj1pgHc1hxF6vo2Z3s69fMjO1INq6eGHXZ8Z6wCQeldCuwxGK9Sxf4/cScGn3FZubCVUehfWtcDM/PLteCQw==} - json-schema-ref-resolver@3.0.0: resolution: {integrity: sha512-hOrZIVL5jyYFjzk7+y7n5JDzGlU8rfWDuYyHwGa2WA8/pcmMHezp2xsVwxrebD/Q9t8Nc5DboieySDpCp4WG4A==} @@ -5589,7 +5412,7 @@ packages: peerDependencies: '@rspack/core': 0.x || 1.x less: ^3.5.0 || ^4.0.0 - webpack: ^5.0.0 + webpack: '>=5.104.1' peerDependenciesMeta: '@rspack/core': optional: true @@ -5609,9 +5432,6 @@ packages: webpack: optional: true - light-my-request@5.14.0: - resolution: {integrity: sha512-aORPWntbpH5esaYpGOOmri0OHDOe3wC5M2MQxZ9dvMLZm6DnaAn0kJlcbU9hwsQgLzmZyReKwFwwPkR+nHu5kA==} - light-my-request@6.6.0: resolution: {integrity: sha512-CHYbu8RtboSIoVsHZ6Ye4cj4Aw/yg2oAFimlF7mNvfDV192LR7nDiKtSIfCuLT7KokPSTn/9kfVLm5OGN0A28A==} @@ -5825,7 +5645,7 @@ packages: resolution: {integrity: sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==} engines: {node: '>= 12.13.0'} peerDependencies: - webpack: ^5.0.0 + webpack: '>=5.104.1' minimalistic-assert@1.0.1: resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} @@ -5866,18 +5686,10 @@ packages: resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} engines: {node: '>=8'} - minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} - minipass@7.1.2: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} - minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - minizlib@3.1.0: resolution: {integrity: sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==} engines: {node: '>= 18'} @@ -5885,11 +5697,6 @@ packages: mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - mkdirp@1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - mlly@1.8.0: resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==} @@ -6334,9 +6141,6 @@ packages: resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} engines: {node: '>=6'} - pino-abstract-transport@2.0.0: - resolution: {integrity: sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==} - pino-abstract-transport@3.0.0: resolution: {integrity: sha512-wlfUczU+n7Hy/Ha5j9a/gZNy7We5+cXp8YL+X+PG8S0KXxw7n/JXA3c46Y0zQznIJ83URJiwy7Lh56WLokNuxg==} @@ -6347,10 +6151,6 @@ packages: resolution: {integrity: sha512-0GNPNzHXBKw6U/InGe79A3Crzyk9bcSyObF9/Gfo9DLEf5qj5RF50RSjsu0W1rZ6ZqRGdzDFCRBQvi9/rSGPtA==} hasBin: true - pino@9.14.0: - resolution: {integrity: sha512-8OEwKp5juEvb/MjpIc4hjqfgCNysrS94RIOMXYvpYCdm/jglrKEiAYmiumbmGhCvs+IcInsphYDFwqrjr7398w==} - hasBin: true - pirates@4.0.7: resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} engines: {node: '>= 6'} @@ -6444,7 +6244,7 @@ packages: peerDependencies: '@rspack/core': 0.x || 1.x postcss: ^7.0.0 || ^8.0.1 - webpack: ^5.0.0 + webpack: '>=5.104.1' peerDependenciesMeta: '@rspack/core': optional: true @@ -6632,9 +6432,6 @@ packages: process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - process-warning@3.0.0: - resolution: {integrity: sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==} - process-warning@4.0.1: resolution: {integrity: sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==} @@ -6826,10 +6623,6 @@ packages: resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} engines: {node: '>=18'} - ret@0.4.3: - resolution: {integrity: sha512-0f4Memo5QP7WQyUEAYUO3esD/XjOc3Zjjg5CPsAq1p8sIu0XPeMbHJemKA0BO7tV0X7+A0FoEpbmHXWxPyD3wQ==} - engines: {node: '>=10'} - ret@0.5.0: resolution: {integrity: sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==} engines: {node: '>=10'} @@ -6902,9 +6695,6 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - safe-regex2@3.1.0: - resolution: {integrity: sha512-RAAZAGbap2kBfbVhvmnTFv73NWLMvDGOITFYTZBAaY8eR+Ir4ef7Up/e7amo+y1+AH+3PtLkrt9mvcTsG9LXug==} - safe-regex2@5.0.0: resolution: {integrity: sha512-YwJwe5a51WlK7KbOJREPdjNrpViQBI3p4T50lfwPuDhZnE3XGVTlGvi+aolc5+RvxDD6bnUmjVsU9n1eboLUYw==} @@ -6923,7 +6713,7 @@ packages: node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 sass: ^1.3.0 sass-embedded: '*' - webpack: ^5.0.0 + webpack: '>=5.104.1' peerDependenciesMeta: '@rspack/core': optional: true @@ -6955,9 +6745,6 @@ packages: scule@1.3.0: resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==} - secure-json-parse@2.7.0: - resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} - secure-json-parse@4.1.0: resolution: {integrity: sha512-l4KnYfEyqYJxDwlNVyRfO2E4NTHfMKAWdUuA8J0yve2Dz/E/PdBepY03RvyJpssIpRFwJoCD55wA+mEDs6ByWA==} @@ -7126,7 +6913,7 @@ packages: resolution: {integrity: sha512-k2Dur7CbSLcAH73sBcIkV5xjPV4SzqO1NJ7+XaQl8if3VODDUj3FNchNGpqgJSKbvUfJuhVdv8K2Eu8/TNl2eA==} engines: {node: '>= 18.12.0'} peerDependencies: - webpack: ^5.72.1 + webpack: '>=5.104.1' source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} @@ -7314,11 +7101,6 @@ packages: tar-stream@3.1.7: resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} - tar@6.2.1: - resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} - engines: {node: '>=10'} - deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me - tar@7.5.7: resolution: {integrity: sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==} engines: {node: '>=18'} @@ -7330,7 +7112,7 @@ packages: '@swc/core': '*' esbuild: '*' uglify-js: '*' - webpack: ^5.1.0 + webpack: '>=5.104.1' peerDependenciesMeta: '@swc/core': optional: true @@ -7365,9 +7147,6 @@ packages: peerDependencies: tslib: ^2 - thread-stream@3.1.0: - resolution: {integrity: sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==} - thread-stream@4.0.0: resolution: {integrity: sha512-4iMVL6HAINXWf1ZKZjIPcz5wYaOdPhtO8ATvZ+Xqp3BTdaqtAwQkNmKORqcIo5YkQqGXq5cwfswDwMqqQNrpJA==} engines: {node: '>=20'} @@ -7997,7 +7776,7 @@ packages: resolution: {integrity: sha512-xOO8n6eggxnwYpy1NlzUKpvrjfJTvae5/D6WOK0S2LSo7vjmo5gCM1DbLUmFqrMTJP+W/0YZNctm7jasWvLuBA==} engines: {node: '>= 18.12.0'} peerDependencies: - webpack: ^5.0.0 + webpack: '>=5.104.1' peerDependenciesMeta: webpack: optional: true @@ -8007,7 +7786,7 @@ packages: engines: {node: '>= 18.12.0'} hasBin: true peerDependencies: - webpack: ^5.0.0 + webpack: '>=5.104.1' webpack-cli: '*' peerDependenciesMeta: webpack: @@ -8028,7 +7807,7 @@ packages: engines: {node: '>= 12'} peerDependencies: html-webpack-plugin: '>= 5.0.0-beta.1 < 6' - webpack: ^5.12.0 + webpack: '>=5.104.1' peerDependenciesMeta: html-webpack-plugin: optional: true @@ -8036,8 +7815,8 @@ packages: webpack-virtual-modules@0.6.2: resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} - webpack@5.98.0: - resolution: {integrity: sha512-UFynvx+gM44Gv9qFgj0acCQK2VE1CtdfwFdimkapco3hlPCJ/zeq73n2yVKimVbtm+TnApIugGhLJnkU6gjYXA==} + webpack@5.105.0: + resolution: {integrity: sha512-gX/dMkRQc7QOMzgTe6KsYFM7DxeIONQSui1s0n/0xht36HvrgbxtM1xBlgx596NbpHuQU8P7QpKwrZYwUX48nw==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -8179,7 +7958,7 @@ snapshots: dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.1902.19(chokidar@4.0.3) - '@angular-devkit/build-webpack': 0.1902.19(chokidar@4.0.3)(webpack-dev-server@5.2.2(tslib@2.8.1)(webpack@5.98.0))(webpack@5.98.0(esbuild@0.25.4)) + '@angular-devkit/build-webpack': 0.1902.19(chokidar@4.0.3)(webpack-dev-server@5.2.2(tslib@2.8.1)(webpack@5.105.0))(webpack@5.105.0(esbuild@0.25.4)) '@angular-devkit/core': 19.2.19(chokidar@4.0.3) '@angular/build': 19.2.19(@angular/compiler-cli@19.2.18(@angular/compiler@19.2.18)(typescript@5.8.3))(@angular/compiler@19.2.18)(@types/node@20.19.32)(chokidar@4.0.3)(jiti@2.6.1)(less@4.2.2)(postcss@8.5.2)(terser@5.39.0)(tsx@4.21.0)(typescript@5.8.3)(yaml@2.8.2) '@angular/compiler-cli': 19.2.18(@angular/compiler@19.2.18)(typescript@5.8.3) @@ -8193,14 +7972,14 @@ snapshots: '@babel/preset-env': 7.26.9(@babel/core@7.26.10) '@babel/runtime': 7.26.10 '@discoveryjs/json-ext': 0.6.3 - '@ngtools/webpack': 19.2.19(@angular/compiler-cli@19.2.18(@angular/compiler@19.2.18)(typescript@5.8.3))(typescript@5.8.3)(webpack@5.98.0(esbuild@0.25.4)) + '@ngtools/webpack': 19.2.19(@angular/compiler-cli@19.2.18(@angular/compiler@19.2.18)(typescript@5.8.3))(typescript@5.8.3)(webpack@5.105.0(esbuild@0.25.4)) '@vitejs/plugin-basic-ssl': 1.2.0(vite@7.3.1(@types/node@20.19.32)(jiti@2.6.1)(less@4.2.2)(sass@1.85.0)(terser@5.39.0)(tsx@4.21.0)(yaml@2.8.2)) ansi-colors: 4.1.3 autoprefixer: 10.4.20(postcss@8.5.2) - babel-loader: 9.2.1(@babel/core@7.26.10)(webpack@5.98.0(esbuild@0.25.4)) + babel-loader: 9.2.1(@babel/core@7.26.10)(webpack@5.105.0(esbuild@0.25.4)) browserslist: 4.28.1 - copy-webpack-plugin: 12.0.2(webpack@5.98.0(esbuild@0.25.4)) - css-loader: 7.1.2(webpack@5.98.0(esbuild@0.25.4)) + copy-webpack-plugin: 12.0.2(webpack@5.105.0(esbuild@0.25.4)) + css-loader: 7.1.2(webpack@5.105.0(esbuild@0.25.4)) esbuild-wasm: 0.25.4 fast-glob: 3.3.3 http-proxy-middleware: 3.0.5 @@ -8208,32 +7987,32 @@ snapshots: jsonc-parser: 3.3.1 karma-source-map-support: 1.4.0 less: 4.2.2 - less-loader: 12.2.0(less@4.2.2)(webpack@5.98.0(esbuild@0.25.4)) - license-webpack-plugin: 4.0.2(webpack@5.98.0(esbuild@0.25.4)) + less-loader: 12.2.0(less@4.2.2)(webpack@5.105.0(esbuild@0.25.4)) + license-webpack-plugin: 4.0.2(webpack@5.105.0(esbuild@0.25.4)) loader-utils: 3.3.1 - mini-css-extract-plugin: 2.9.2(webpack@5.98.0(esbuild@0.25.4)) + mini-css-extract-plugin: 2.9.2(webpack@5.105.0(esbuild@0.25.4)) open: 10.1.0 ora: 5.4.1 picomatch: 4.0.2 piscina: 4.8.0 postcss: 8.5.2 - postcss-loader: 8.1.1(postcss@8.5.2)(typescript@5.8.3)(webpack@5.98.0(esbuild@0.25.4)) + postcss-loader: 8.1.1(postcss@8.5.2)(typescript@5.8.3)(webpack@5.105.0(esbuild@0.25.4)) resolve-url-loader: 5.0.0 rxjs: 7.8.1 sass: 1.85.0 - sass-loader: 16.0.5(sass@1.85.0)(webpack@5.98.0(esbuild@0.25.4)) + sass-loader: 16.0.5(sass@1.85.0)(webpack@5.105.0(esbuild@0.25.4)) semver: 7.7.1 - source-map-loader: 5.0.0(webpack@5.98.0(esbuild@0.25.4)) + source-map-loader: 5.0.0(webpack@5.105.0(esbuild@0.25.4)) source-map-support: 0.5.21 terser: 5.39.0 tree-kill: 1.2.2 tslib: 2.8.1 typescript: 5.8.3 - webpack: 5.98.0(esbuild@0.25.4) - webpack-dev-middleware: 7.4.2(tslib@2.8.1)(webpack@5.98.0) - webpack-dev-server: 5.2.2(tslib@2.8.1)(webpack@5.98.0) + webpack: 5.105.0(esbuild@0.25.4) + webpack-dev-middleware: 7.4.2(tslib@2.8.1)(webpack@5.105.0) + webpack-dev-server: 5.2.2(tslib@2.8.1)(webpack@5.105.0) webpack-merge: 6.0.1 - webpack-subresource-integrity: 5.1.0(webpack@5.98.0(esbuild@0.25.4)) + webpack-subresource-integrity: 5.1.0(webpack@5.105.0(esbuild@0.25.4)) optionalDependencies: esbuild: 0.25.4 transitivePeerDependencies: @@ -8259,12 +8038,12 @@ snapshots: - webpack-cli - yaml - '@angular-devkit/build-webpack@0.1902.19(chokidar@4.0.3)(webpack-dev-server@5.2.2(tslib@2.8.1)(webpack@5.98.0))(webpack@5.98.0(esbuild@0.25.4))': + '@angular-devkit/build-webpack@0.1902.19(chokidar@4.0.3)(webpack-dev-server@5.2.2(tslib@2.8.1)(webpack@5.105.0))(webpack@5.105.0(esbuild@0.25.4))': dependencies: '@angular-devkit/architect': 0.1902.19(chokidar@4.0.3) rxjs: 7.8.1 - webpack: 5.98.0(esbuild@0.25.4) - webpack-dev-server: 5.2.2(tslib@2.8.1)(webpack@5.98.0) + webpack: 5.105.0(esbuild@0.25.4) + webpack-dev-server: 5.2.2(tslib@2.8.1)(webpack@5.105.0) transitivePeerDependencies: - chokidar @@ -8303,7 +8082,7 @@ snapshots: '@vitejs/plugin-basic-ssl': 1.2.0(vite@6.4.1(@types/node@20.19.32)(jiti@2.6.1)(less@4.2.2)(sass@1.85.0)(terser@5.39.0)(tsx@4.21.0)(yaml@2.8.2)) beasties: 0.3.2 browserslist: 4.28.1 - esbuild: 0.25.4 + esbuild: 0.27.3 fast-glob: 3.3.3 https-proxy-agent: 7.0.6 istanbul-lib-instrument: 6.0.3 @@ -9233,9 +9012,6 @@ snapshots: tslib: 2.8.1 optional: true - '@esbuild/aix-ppc64@0.21.5': - optional: true - '@esbuild/aix-ppc64@0.25.12': optional: true @@ -9245,9 +9021,6 @@ snapshots: '@esbuild/aix-ppc64@0.27.3': optional: true - '@esbuild/android-arm64@0.21.5': - optional: true - '@esbuild/android-arm64@0.25.12': optional: true @@ -9257,9 +9030,6 @@ snapshots: '@esbuild/android-arm64@0.27.3': optional: true - '@esbuild/android-arm@0.21.5': - optional: true - '@esbuild/android-arm@0.25.12': optional: true @@ -9269,9 +9039,6 @@ snapshots: '@esbuild/android-arm@0.27.3': optional: true - '@esbuild/android-x64@0.21.5': - optional: true - '@esbuild/android-x64@0.25.12': optional: true @@ -9281,9 +9048,6 @@ snapshots: '@esbuild/android-x64@0.27.3': optional: true - '@esbuild/darwin-arm64@0.21.5': - optional: true - '@esbuild/darwin-arm64@0.25.12': optional: true @@ -9293,9 +9057,6 @@ snapshots: '@esbuild/darwin-arm64@0.27.3': optional: true - '@esbuild/darwin-x64@0.21.5': - optional: true - '@esbuild/darwin-x64@0.25.12': optional: true @@ -9305,9 +9066,6 @@ snapshots: '@esbuild/darwin-x64@0.27.3': optional: true - '@esbuild/freebsd-arm64@0.21.5': - optional: true - '@esbuild/freebsd-arm64@0.25.12': optional: true @@ -9317,9 +9075,6 @@ snapshots: '@esbuild/freebsd-arm64@0.27.3': optional: true - '@esbuild/freebsd-x64@0.21.5': - optional: true - '@esbuild/freebsd-x64@0.25.12': optional: true @@ -9329,9 +9084,6 @@ snapshots: '@esbuild/freebsd-x64@0.27.3': optional: true - '@esbuild/linux-arm64@0.21.5': - optional: true - '@esbuild/linux-arm64@0.25.12': optional: true @@ -9341,9 +9093,6 @@ snapshots: '@esbuild/linux-arm64@0.27.3': optional: true - '@esbuild/linux-arm@0.21.5': - optional: true - '@esbuild/linux-arm@0.25.12': optional: true @@ -9353,9 +9102,6 @@ snapshots: '@esbuild/linux-arm@0.27.3': optional: true - '@esbuild/linux-ia32@0.21.5': - optional: true - '@esbuild/linux-ia32@0.25.12': optional: true @@ -9365,9 +9111,6 @@ snapshots: '@esbuild/linux-ia32@0.27.3': optional: true - '@esbuild/linux-loong64@0.21.5': - optional: true - '@esbuild/linux-loong64@0.25.12': optional: true @@ -9377,9 +9120,6 @@ snapshots: '@esbuild/linux-loong64@0.27.3': optional: true - '@esbuild/linux-mips64el@0.21.5': - optional: true - '@esbuild/linux-mips64el@0.25.12': optional: true @@ -9389,9 +9129,6 @@ snapshots: '@esbuild/linux-mips64el@0.27.3': optional: true - '@esbuild/linux-ppc64@0.21.5': - optional: true - '@esbuild/linux-ppc64@0.25.12': optional: true @@ -9401,9 +9138,6 @@ snapshots: '@esbuild/linux-ppc64@0.27.3': optional: true - '@esbuild/linux-riscv64@0.21.5': - optional: true - '@esbuild/linux-riscv64@0.25.12': optional: true @@ -9413,9 +9147,6 @@ snapshots: '@esbuild/linux-riscv64@0.27.3': optional: true - '@esbuild/linux-s390x@0.21.5': - optional: true - '@esbuild/linux-s390x@0.25.12': optional: true @@ -9425,9 +9156,6 @@ snapshots: '@esbuild/linux-s390x@0.27.3': optional: true - '@esbuild/linux-x64@0.21.5': - optional: true - '@esbuild/linux-x64@0.25.12': optional: true @@ -9446,9 +9174,6 @@ snapshots: '@esbuild/netbsd-arm64@0.27.3': optional: true - '@esbuild/netbsd-x64@0.21.5': - optional: true - '@esbuild/netbsd-x64@0.25.12': optional: true @@ -9467,9 +9192,6 @@ snapshots: '@esbuild/openbsd-arm64@0.27.3': optional: true - '@esbuild/openbsd-x64@0.21.5': - optional: true - '@esbuild/openbsd-x64@0.25.12': optional: true @@ -9485,9 +9207,6 @@ snapshots: '@esbuild/openharmony-arm64@0.27.3': optional: true - '@esbuild/sunos-x64@0.21.5': - optional: true - '@esbuild/sunos-x64@0.25.12': optional: true @@ -9497,9 +9216,6 @@ snapshots: '@esbuild/sunos-x64@0.27.3': optional: true - '@esbuild/win32-arm64@0.21.5': - optional: true - '@esbuild/win32-arm64@0.25.12': optional: true @@ -9509,9 +9225,6 @@ snapshots: '@esbuild/win32-arm64@0.27.3': optional: true - '@esbuild/win32-ia32@0.21.5': - optional: true - '@esbuild/win32-ia32@0.25.12': optional: true @@ -9521,9 +9234,6 @@ snapshots: '@esbuild/win32-ia32@0.27.3': optional: true - '@esbuild/win32-x64@0.21.5': - optional: true - '@esbuild/win32-x64@0.25.12': optional: true @@ -9533,36 +9243,20 @@ snapshots: '@esbuild/win32-x64@0.27.3': optional: true - '@fastify/ajv-compiler@3.6.0': - dependencies: - ajv: 8.17.1 - ajv-formats: 2.1.1(ajv@8.17.1) - fast-uri: 2.4.0 - '@fastify/ajv-compiler@4.0.5': dependencies: ajv: 8.17.1 ajv-formats: 3.0.1(ajv@8.17.1) fast-uri: 3.1.0 - '@fastify/error@3.4.1': {} - '@fastify/error@4.2.0': {} - '@fastify/fast-json-stringify-compiler@4.3.0': - dependencies: - fast-json-stringify: 5.16.1 - '@fastify/fast-json-stringify-compiler@5.0.3': dependencies: fast-json-stringify: 6.3.0 '@fastify/forwarded@3.0.1': {} - '@fastify/merge-json-schemas@0.1.1': - dependencies: - fast-deep-equal: 3.1.3 - '@fastify/merge-json-schemas@0.2.1': dependencies: dequal: 2.0.3 @@ -10156,11 +9850,11 @@ snapshots: '@next/swc-win32-x64-msvc@15.5.12': optional: true - '@ngtools/webpack@19.2.19(@angular/compiler-cli@19.2.18(@angular/compiler@19.2.18)(typescript@5.8.3))(typescript@5.8.3)(webpack@5.98.0(esbuild@0.25.4))': + '@ngtools/webpack@19.2.19(@angular/compiler-cli@19.2.18(@angular/compiler@19.2.18)(typescript@5.8.3))(typescript@5.8.3)(webpack@5.105.0(esbuild@0.25.4))': dependencies: '@angular/compiler-cli': 19.2.18(@angular/compiler@19.2.18)(typescript@5.8.3) typescript: 5.8.3 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) '@nodelib/fs.scandir@2.1.5': dependencies: @@ -11080,7 +10774,7 @@ snapshots: '@sveltejs/vite-plugin-svelte': 5.1.1(svelte@5.50.0)(vite@6.4.1(@types/node@20.19.32)(jiti@2.6.1)(less@4.2.2)(sass@1.85.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) '@types/cookie': 0.6.0 acorn: 8.15.0 - cookie: 0.6.0 + cookie: 1.1.1 devalue: 5.6.2 esm-env: 1.2.2 kleur: 4.1.5 @@ -11101,7 +10795,7 @@ snapshots: '@sveltejs/vite-plugin-svelte': 6.2.4(svelte@5.50.0)(vite@7.3.1(@types/node@20.19.32)(jiti@2.6.1)(less@4.2.2)(sass@1.85.0)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)) '@types/cookie': 0.6.0 acorn: 8.15.0 - cookie: 0.6.0 + cookie: 1.1.1 devalue: 5.6.2 esm-env: 1.2.2 kleur: 4.1.5 @@ -11683,6 +11377,10 @@ snapshots: dependencies: acorn: 8.15.0 + acorn-import-phases@1.0.4(acorn@8.15.0): + dependencies: + acorn: 8.15.0 + acorn-walk@8.3.4: dependencies: acorn: 8.15.0 @@ -11815,11 +11513,6 @@ snapshots: postcss: 8.5.6 postcss-value-parser: 4.2.0 - avvio@8.4.0: - dependencies: - '@fastify/error': 3.4.1 - fastq: 1.20.1 - avvio@9.1.0: dependencies: '@fastify/error': 4.2.0 @@ -11829,12 +11522,12 @@ snapshots: b4a@1.7.3: {} - babel-loader@9.2.1(@babel/core@7.26.10)(webpack@5.98.0(esbuild@0.25.4)): + babel-loader@9.2.1(@babel/core@7.26.10)(webpack@5.105.0(esbuild@0.25.4)): dependencies: '@babel/core': 7.26.10 find-cache-dir: 4.0.0 schema-utils: 4.3.3 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) babel-plugin-polyfill-corejs2@0.4.15(@babel/core@7.26.10): dependencies: @@ -12082,8 +11775,6 @@ snapshots: dependencies: readdirp: 5.0.0 - chownr@2.0.0: {} - chownr@3.0.0: {} chrome-trace-event@1.0.4: {} @@ -12211,8 +11902,6 @@ snapshots: cookie-signature@1.2.2: {} - cookie@0.6.0: {} - cookie@0.7.2: {} cookie@1.1.1: {} @@ -12229,7 +11918,7 @@ snapshots: dependencies: iconv-lite: 0.4.24 - copy-webpack-plugin@12.0.2(webpack@5.98.0(esbuild@0.25.4)): + copy-webpack-plugin@12.0.2(webpack@5.105.0(esbuild@0.25.4)): dependencies: fast-glob: 3.3.3 glob-parent: 6.0.2 @@ -12237,7 +11926,7 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.3.3 serialize-javascript: 6.0.2 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) core-js-compat@3.48.0: dependencies: @@ -12277,7 +11966,7 @@ snapshots: dependencies: postcss: 8.5.6 - css-loader@7.1.2(webpack@5.98.0(esbuild@0.25.4)): + css-loader@7.1.2(webpack@5.105.0(esbuild@0.25.4)): dependencies: icss-utils: 5.1.0(postcss@8.5.6) postcss: 8.5.6 @@ -12288,7 +11977,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.7.4 optionalDependencies: - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) css-select@5.2.2: dependencies: @@ -12534,32 +12223,6 @@ snapshots: esbuild-wasm@0.25.4: {} - esbuild@0.21.5: - optionalDependencies: - '@esbuild/aix-ppc64': 0.21.5 - '@esbuild/android-arm': 0.21.5 - '@esbuild/android-arm64': 0.21.5 - '@esbuild/android-x64': 0.21.5 - '@esbuild/darwin-arm64': 0.21.5 - '@esbuild/darwin-x64': 0.21.5 - '@esbuild/freebsd-arm64': 0.21.5 - '@esbuild/freebsd-x64': 0.21.5 - '@esbuild/linux-arm': 0.21.5 - '@esbuild/linux-arm64': 0.21.5 - '@esbuild/linux-ia32': 0.21.5 - '@esbuild/linux-loong64': 0.21.5 - '@esbuild/linux-mips64el': 0.21.5 - '@esbuild/linux-ppc64': 0.21.5 - '@esbuild/linux-riscv64': 0.21.5 - '@esbuild/linux-s390x': 0.21.5 - '@esbuild/linux-x64': 0.21.5 - '@esbuild/netbsd-x64': 0.21.5 - '@esbuild/openbsd-x64': 0.21.5 - '@esbuild/sunos-x64': 0.21.5 - '@esbuild/win32-arm64': 0.21.5 - '@esbuild/win32-ia32': 0.21.5 - '@esbuild/win32-x64': 0.21.5 - esbuild@0.25.12: optionalDependencies: '@esbuild/aix-ppc64': 0.25.12 @@ -12616,6 +12279,7 @@ snapshots: '@esbuild/win32-arm64': 0.25.4 '@esbuild/win32-ia32': 0.25.4 '@esbuild/win32-x64': 0.25.4 + optional: true esbuild@0.27.3: optionalDependencies: @@ -12793,8 +12457,6 @@ snapshots: pathe: 1.1.2 ufo: 1.6.3 - fast-content-type-parse@1.1.0: {} - fast-decode-uri-component@1.0.1: {} fast-deep-equal@3.1.3: {} @@ -12809,16 +12471,6 @@ snapshots: merge2: 1.4.1 micromatch: 4.0.8 - fast-json-stringify@5.16.1: - dependencies: - '@fastify/merge-json-schemas': 0.1.1 - ajv: 8.17.1 - ajv-formats: 3.0.1(ajv@8.17.1) - fast-deep-equal: 3.1.3 - fast-uri: 2.4.0 - json-schema-ref-resolver: 1.0.1 - rfdc: 1.4.1 - fast-json-stringify@6.3.0: dependencies: '@fastify/merge-json-schemas': 0.2.1 @@ -12834,33 +12486,12 @@ snapshots: dependencies: fast-decode-uri-component: 1.0.1 - fast-uri@2.4.0: {} - fast-uri@3.1.0: {} fastify-plugin@4.5.1: {} fastify-plugin@5.1.0: {} - fastify@4.29.1: - dependencies: - '@fastify/ajv-compiler': 3.6.0 - '@fastify/error': 3.4.1 - '@fastify/fast-json-stringify-compiler': 4.3.0 - abstract-logging: 2.0.1 - avvio: 8.4.0 - fast-content-type-parse: 1.1.0 - fast-json-stringify: 5.16.1 - find-my-way: 8.2.2 - light-my-request: 5.14.0 - pino: 9.14.0 - process-warning: 3.0.0 - proxy-addr: 2.0.7 - rfdc: 1.4.1 - secure-json-parse: 2.7.0 - semver: 7.7.4 - toad-cache: 3.7.0 - fastify@5.7.4: dependencies: '@fastify/ajv-compiler': 4.0.5 @@ -12934,12 +12565,6 @@ snapshots: common-path-prefix: 3.0.0 pkg-dir: 7.0.0 - find-my-way@8.2.2: - dependencies: - fast-deep-equal: 3.1.3 - fast-querystring: 1.1.2 - safe-regex2: 3.1.0 - find-my-way@9.4.0: dependencies: fast-deep-equal: 3.1.3 @@ -12978,10 +12603,6 @@ snapshots: fresh@2.0.0: {} - fs-minipass@2.1.0: - dependencies: - minipass: 3.3.6 - fs-minipass@3.0.3: dependencies: minipass: 7.1.2 @@ -13451,10 +13072,6 @@ snapshots: json-parse-even-better-errors@4.0.0: {} - json-schema-ref-resolver@1.0.1: - dependencies: - fast-deep-equal: 3.1.3 - json-schema-ref-resolver@3.0.0: dependencies: dequal: 2.0.3 @@ -13490,11 +13107,11 @@ snapshots: dependencies: readable-stream: 2.3.8 - less-loader@12.2.0(less@4.2.2)(webpack@5.98.0(esbuild@0.25.4)): + less-loader@12.2.0(less@4.2.2)(webpack@5.105.0(esbuild@0.25.4)): dependencies: less: 4.2.2 optionalDependencies: - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) less@4.2.2: dependencies: @@ -13510,17 +13127,11 @@ snapshots: needle: 3.3.1 source-map: 0.6.1 - license-webpack-plugin@4.0.2(webpack@5.98.0(esbuild@0.25.4)): + license-webpack-plugin@4.0.2(webpack@5.105.0(esbuild@0.25.4)): dependencies: webpack-sources: 3.3.3 optionalDependencies: - webpack: 5.98.0(esbuild@0.25.4) - - light-my-request@5.14.0: - dependencies: - cookie: 0.7.2 - process-warning: 3.0.0 - set-cookie-parser: 2.7.2 + webpack: 5.105.0(esbuild@0.25.4) light-my-request@6.6.0: dependencies: @@ -13766,11 +13377,11 @@ snapshots: mimic-function@5.0.1: {} - mini-css-extract-plugin@2.9.2(webpack@5.98.0(esbuild@0.25.4)): + mini-css-extract-plugin@2.9.2(webpack@5.105.0(esbuild@0.25.4)): dependencies: schema-utils: 4.3.3 tapable: 2.3.0 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) minimalistic-assert@1.0.1: {} @@ -13814,23 +13425,14 @@ snapshots: dependencies: yallist: 4.0.0 - minipass@5.0.0: {} - minipass@7.1.2: {} - minizlib@2.1.2: - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - minizlib@3.1.0: dependencies: minipass: 7.1.2 mitt@3.0.1: {} - mkdirp@1.0.4: {} - mlly@1.8.0: dependencies: acorn: 8.15.0 @@ -14483,7 +14085,7 @@ snapshots: promise-retry: 2.0.1 sigstore: 3.1.0 ssri: 12.0.0 - tar: 6.2.1 + tar: 7.5.7 transitivePeerDependencies: - supports-color @@ -14572,10 +14174,6 @@ snapshots: pify@4.0.1: optional: true - pino-abstract-transport@2.0.0: - dependencies: - split2: 4.2.0 - pino-abstract-transport@3.0.0: dependencies: split2: 4.2.0 @@ -14596,20 +14194,6 @@ snapshots: sonic-boom: 4.2.0 thread-stream: 4.0.0 - pino@9.14.0: - dependencies: - '@pinojs/redact': 0.4.0 - atomic-sleep: 1.0.0 - on-exit-leak-free: 2.1.2 - pino-abstract-transport: 2.0.0 - pino-std-serializers: 7.1.0 - process-warning: 5.0.0 - quick-format-unescaped: 4.0.4 - real-require: 0.2.0 - safe-stable-stringify: 2.5.0 - sonic-boom: 4.2.0 - thread-stream: 3.1.0 - pirates@4.0.7: {} piscina@4.8.0: @@ -14686,14 +14270,14 @@ snapshots: tsx: 4.21.0 yaml: 2.8.2 - postcss-loader@8.1.1(postcss@8.5.2)(typescript@5.8.3)(webpack@5.98.0(esbuild@0.25.4)): + postcss-loader@8.1.1(postcss@8.5.2)(typescript@5.8.3)(webpack@5.105.0(esbuild@0.25.4)): dependencies: cosmiconfig: 9.0.0(typescript@5.8.3) jiti: 1.21.7 postcss: 8.5.2 semver: 7.7.4 optionalDependencies: - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) transitivePeerDependencies: - typescript @@ -14869,8 +14453,6 @@ snapshots: process-nextick-args@2.0.1: {} - process-warning@3.0.0: {} - process-warning@4.0.1: {} process-warning@5.0.0: {} @@ -15067,8 +14649,6 @@ snapshots: onetime: 7.0.0 signal-exit: 4.1.0 - ret@0.4.3: {} - ret@0.5.0: {} retry@0.12.0: {} @@ -15178,10 +14758,6 @@ snapshots: safe-buffer@5.2.1: {} - safe-regex2@3.1.0: - dependencies: - ret: 0.4.3 - safe-regex2@5.0.0: dependencies: ret: 0.5.0 @@ -15190,12 +14766,12 @@ snapshots: safer-buffer@2.1.2: {} - sass-loader@16.0.5(sass@1.85.0)(webpack@5.98.0(esbuild@0.25.4)): + sass-loader@16.0.5(sass@1.85.0)(webpack@5.105.0(esbuild@0.25.4)): dependencies: neo-async: 2.6.2 optionalDependencies: sass: 1.85.0 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) sass@1.85.0: dependencies: @@ -15218,8 +14794,6 @@ snapshots: scule@1.3.0: {} - secure-json-parse@2.7.0: {} - secure-json-parse@4.1.0: {} select-hose@2.0.0: {} @@ -15464,11 +15038,11 @@ snapshots: source-map-js@1.2.1: {} - source-map-loader@5.0.0(webpack@5.98.0(esbuild@0.25.4)): + source-map-loader@5.0.0(webpack@5.105.0(esbuild@0.25.4)): dependencies: iconv-lite: 0.6.3 source-map-js: 1.2.1 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) source-map-support@0.5.21: dependencies: @@ -15682,15 +15256,6 @@ snapshots: - bare-abort-controller - react-native-b4a - tar@6.2.1: - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 5.0.0 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - tar@7.5.7: dependencies: '@isaacs/fs-minipass': 4.0.1 @@ -15699,14 +15264,14 @@ snapshots: minizlib: 3.1.0 yallist: 5.0.0 - terser-webpack-plugin@5.3.16(esbuild@0.25.4)(webpack@5.98.0): + terser-webpack-plugin@5.3.16(esbuild@0.25.4)(webpack@5.105.0): dependencies: '@jridgewell/trace-mapping': 0.3.31 jest-worker: 27.5.1 schema-utils: 4.3.3 serialize-javascript: 6.0.2 terser: 5.46.0 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) optionalDependencies: esbuild: 0.25.4 @@ -15742,10 +15307,6 @@ snapshots: dependencies: tslib: 2.8.1 - thread-stream@3.1.0: - dependencies: - real-require: 0.2.0 - thread-stream@4.0.0: dependencies: real-require: 0.2.0 @@ -16152,7 +15713,7 @@ snapshots: vite@5.4.21(@types/node@20.19.32)(less@4.2.2)(sass@1.85.0)(terser@5.46.0): dependencies: - esbuild: 0.21.5 + esbuild: 0.27.3 postcss: 8.5.6 rollup: 4.57.1 optionalDependencies: @@ -16363,7 +15924,7 @@ snapshots: webidl-conversions@3.0.1: {} - webpack-dev-middleware@7.4.2(tslib@2.8.1)(webpack@5.98.0): + webpack-dev-middleware@7.4.2(tslib@2.8.1)(webpack@5.105.0): dependencies: colorette: 2.0.20 memfs: 4.56.10(tslib@2.8.1) @@ -16372,11 +15933,11 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.3.3 optionalDependencies: - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) transitivePeerDependencies: - tslib - webpack-dev-server@5.2.2(tslib@2.8.1)(webpack@5.98.0): + webpack-dev-server@5.2.2(tslib@2.8.1)(webpack@5.105.0): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -16404,10 +15965,10 @@ snapshots: serve-index: 1.9.2 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 7.4.2(tslib@2.8.1)(webpack@5.98.0) + webpack-dev-middleware: 7.4.2(tslib@2.8.1)(webpack@5.105.0) ws: 8.19.0 optionalDependencies: - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) transitivePeerDependencies: - bufferutil - debug @@ -16423,25 +15984,27 @@ snapshots: webpack-sources@3.3.3: {} - webpack-subresource-integrity@5.1.0(webpack@5.98.0(esbuild@0.25.4)): + webpack-subresource-integrity@5.1.0(webpack@5.105.0(esbuild@0.25.4)): dependencies: typed-assert: 1.0.9 - webpack: 5.98.0(esbuild@0.25.4) + webpack: 5.105.0(esbuild@0.25.4) webpack-virtual-modules@0.6.2: {} - webpack@5.98.0(esbuild@0.25.4): + webpack@5.105.0(esbuild@0.25.4): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.8 + '@types/json-schema': 7.0.15 '@webassemblyjs/ast': 1.14.1 '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.15.0 + acorn-import-phases: 1.0.4(acorn@8.15.0) browserslist: 4.28.1 chrome-trace-event: 1.0.4 enhanced-resolve: 5.19.0 - es-module-lexer: 1.7.0 + es-module-lexer: 2.0.0 eslint-scope: 5.1.1 events: 3.3.0 glob-to-regexp: 0.4.1 @@ -16452,7 +16015,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 4.3.3 tapable: 2.3.0 - terser-webpack-plugin: 5.3.16(esbuild@0.25.4)(webpack@5.98.0) + terser-webpack-plugin: 5.3.16(esbuild@0.25.4)(webpack@5.105.0) watchpack: 2.5.1 webpack-sources: 3.3.3 transitivePeerDependencies: diff --git a/test-apps/mock-server/src/server.ts b/test-apps/mock-server/src/server.ts index 969676e..aecad90 100644 --- a/test-apps/mock-server/src/server.ts +++ b/test-apps/mock-server/src/server.ts @@ -30,7 +30,6 @@ export interface MockServerState { requests: Array<{ timestamp: number; apiKey: string | null; - projectId: string | null; endpoint: string; count: number; }>; @@ -59,7 +58,7 @@ export function createMockServer() { // CORS res.setHeader('Access-Control-Allow-Origin', '*'); res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS'); - res.setHeader('Access-Control-Allow-Headers', 'Content-Type, X-API-Key, X-Project-Id'); + res.setHeader('Access-Control-Allow-Headers', 'Content-Type, X-API-Key'); if (method === 'OPTIONS') { res.writeHead(204); @@ -69,7 +68,6 @@ export function createMockServer() { try { const apiKey = req.headers['x-api-key'] as string | undefined; - const projectId = req.headers['x-project-id'] as string | undefined; // Ingest endpoint - receives logs from SDK if (url.pathname === '/api/v1/ingest' && method === 'POST') { @@ -81,7 +79,6 @@ export function createMockServer() { state.requests.push({ timestamp: Date.now(), apiKey: apiKey ?? null, - projectId: projectId ?? null, endpoint: '/api/v1/ingest', count: logs.length, }); @@ -118,7 +115,6 @@ export function createMockServer() { state.requests.push({ timestamp: Date.now(), apiKey: apiKey ?? null, - projectId: projectId ?? null, endpoint: '/v1/otlp/traces', count: spans.length, }); diff --git a/test-apps/node-fastify/package.json b/test-apps/node-fastify/package.json index 26f3d12..87076fe 100644 --- a/test-apps/node-fastify/package.json +++ b/test-apps/node-fastify/package.json @@ -8,7 +8,7 @@ }, "dependencies": { "@logtide/sdk-node": "workspace:*", - "fastify": "^4.28.0" + "fastify": "^5.7.3" }, "devDependencies": { "logtide-mock-server": "workspace:*",