Skip to content

Commit 270809e

Browse files
committed
s/CrossPlatformRequest/PolymorphicRequest
1 parent 787a4fc commit 270809e

File tree

8 files changed

+29
-30
lines changed

8 files changed

+29
-30
lines changed

packages/node/src/index.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
export type {
22
Breadcrumb,
33
BreadcrumbHint,
4-
CrossPlatformRequest,
4+
PolymorphicRequest,
55
Request,
66
SdkInfo,
77
Event,

packages/node/src/requestDataDeprecated.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
/* eslint-disable deprecation/deprecation */
88
/* eslint-disable @typescript-eslint/no-explicit-any */
9-
import { CrossPlatformRequest, Event, ExtractedNodeRequestData } from '@sentry/types';
9+
import { Event, ExtractedNodeRequestData, PolymorphicRequest } from '@sentry/types';
1010
import {
1111
addRequestDataToEvent,
1212
AddRequestDataToEventOptions,
@@ -16,9 +16,9 @@ import * as cookie from 'cookie';
1616
import * as url from 'url';
1717

1818
/**
19-
* @deprecated `Handlers.ExpressRequest` is deprecated and will be removed in v8. Use `CrossPlatformRequest` instead.
19+
* @deprecated `Handlers.ExpressRequest` is deprecated and will be removed in v8. Use `PolymorphicRequest` instead.
2020
*/
21-
export type ExpressRequest = CrossPlatformRequest;
21+
export type ExpressRequest = PolymorphicRequest;
2222

2323
/**
2424
* Normalizes data from the request object, accounting for framework differences.

packages/node/src/sdk.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/* eslint-disable max-lines */
22
import { getCurrentHub, getIntegrationsToSetup, initAndBind, Integrations as CoreIntegrations } from '@sentry/core';
33
import { getMainCarrier, setHubOnCarrier } from '@sentry/hub';
4-
import { CrossPlatformRequest, Event, ExtractedNodeRequestData, SessionStatus, StackParser } from '@sentry/types';
4+
import { Event, ExtractedNodeRequestData, PolymorphicRequest, SessionStatus, StackParser } from '@sentry/types';
55
import {
66
addRequestDataToEvent as _addRequestDataToEvent,
77
AddRequestDataToEventOptions,
@@ -293,7 +293,7 @@ function startSessionTracking(): void {
293293
*/
294294
export function addRequestDataToEvent(
295295
event: Event,
296-
req: CrossPlatformRequest,
296+
req: PolymorphicRequest,
297297
options?: Omit<AddRequestDataToEventOptions, 'deps'>,
298298
): Event {
299299
return _addRequestDataToEvent(event, req, {
@@ -317,7 +317,7 @@ export function addRequestDataToEvent(
317317
* @returns An object containing normalized request data
318318
*/
319319
export function extractRequestData(
320-
req: CrossPlatformRequest,
320+
req: PolymorphicRequest,
321321
options?: {
322322
include?: string[];
323323
},

packages/node/test/requestdata.test.ts

+10-11
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,10 @@
66

77
// TODO (v8 / #5257): Remove everything above
88

9-
import { Event, TransactionSource, User } from '@sentry/types';
9+
import { Event, PolymorphicRequest, TransactionSource, User } from '@sentry/types';
1010
import {
1111
addRequestDataToEvent,
1212
AddRequestDataToEventOptions,
13-
CrossPlatformRequest,
1413
extractPathForTransaction,
1514
extractRequestData as newExtractRequestData,
1615
} from '@sentry/utils';
@@ -43,7 +42,7 @@ describe.each([parseRequest, addRequestDataToEvent])(
4342
} else {
4443
return [
4544
event,
46-
req as CrossPlatformRequest,
45+
req as PolymorphicRequest,
4746
{
4847
include,
4948
deps: {
@@ -277,7 +276,7 @@ describe.each([oldExtractRequestData, newExtractRequestData])(
277276
return [req as ExpressRequest, include] as Parameters<typeof oldExtractRequestData>;
278277
} else {
279278
return [
280-
req as CrossPlatformRequest,
279+
req as PolymorphicRequest,
281280
{
282281
include,
283282
deps: {
@@ -496,7 +495,7 @@ describe('extractPathForTransaction', () => {
496495
baseUrl: '/api/users',
497496
route: { path: '/:id/details' },
498497
originalUrl: '/api/users/123/details',
499-
} as CrossPlatformRequest,
498+
} as PolymorphicRequest,
500499
{ path: true, method: true },
501500
'GET /api/users/:id/details',
502501
'route' as TransactionSource,
@@ -508,7 +507,7 @@ describe('extractPathForTransaction', () => {
508507
baseUrl: '/api/users',
509508
route: { path: '/:id/details' },
510509
originalUrl: '/api/users/123/details',
511-
} as CrossPlatformRequest,
510+
} as PolymorphicRequest,
512511
{ path: true, method: false },
513512
'/api/users/:id/details',
514513
'route' as TransactionSource,
@@ -520,7 +519,7 @@ describe('extractPathForTransaction', () => {
520519
baseUrl: '/api/users',
521520
route: { path: '/:id/details' },
522521
originalUrl: '/api/users/123/details',
523-
} as CrossPlatformRequest,
522+
} as PolymorphicRequest,
524523
{ path: false, method: true },
525524
'GET',
526525
'route' as TransactionSource,
@@ -532,7 +531,7 @@ describe('extractPathForTransaction', () => {
532531
baseUrl: '/api/users',
533532
route: { path: '/:id/details' },
534533
originalUrl: '/api/users/123/details',
535-
} as CrossPlatformRequest,
534+
} as PolymorphicRequest,
536535
{ path: false, method: false },
537536
'',
538537
'route' as TransactionSource,
@@ -543,7 +542,7 @@ describe('extractPathForTransaction', () => {
543542
method: 'get',
544543
baseUrl: '/api/users',
545544
originalUrl: '/api/users/123/details',
546-
} as CrossPlatformRequest,
545+
} as PolymorphicRequest,
547546
{ path: true, method: true },
548547
'GET /api/users/123/details',
549548
'url' as TransactionSource,
@@ -552,7 +551,7 @@ describe('extractPathForTransaction', () => {
552551
'%s',
553552
(
554553
_: string,
555-
req: CrossPlatformRequest,
554+
req: PolymorphicRequest,
556555
options: { path?: boolean; method?: boolean },
557556
expectedRoute: string,
558557
expectedSource: TransactionSource,
@@ -570,7 +569,7 @@ describe('extractPathForTransaction', () => {
570569
baseUrl: '/api/users',
571570
route: { path: '/:id/details' },
572571
originalUrl: '/api/users/123/details',
573-
} as CrossPlatformRequest;
572+
} as PolymorphicRequest;
574573

575574
const [route, source] = extractPathForTransaction(req, {
576575
path: true,

packages/tracing/src/integrations/node/express.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* eslint-disable max-lines */
2-
import { CrossPlatformRequest, Integration, Transaction } from '@sentry/types';
2+
import { Integration, PolymorphicRequest, Transaction } from '@sentry/types';
33
import { extractPathForTransaction, getNumberOfUrlSegments, isRegExp, logger } from '@sentry/utils';
44

55
type Method =
@@ -33,8 +33,8 @@ type Router = {
3333
[method in Method]: (...args: any) => any; // eslint-disable-line @typescript-eslint/no-explicit-any
3434
};
3535

36-
/* Extend the CrossPlatformRequest type with a patched parameter to build a reconstructed route */
37-
type PatchedRequest = CrossPlatformRequest & { _reconstructedRoute?: string };
36+
/* Extend the PolymorphicRequest type with a patched parameter to build a reconstructed route */
37+
type PatchedRequest = PolymorphicRequest & { _reconstructedRoute?: string };
3838

3939
/* Types used for patching the express router prototype */
4040
type ExpressRouter = Router & {

packages/types/src/index.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ export type { Mechanism } from './mechanism';
3838
export type { ExtractedNodeRequestData, HttpHeaderValue, Primitive, WorkerLocation } from './misc';
3939
export type { ClientOptions, Options } from './options';
4040
export type { Package } from './package';
41-
export type { PolymorphicEvent, CrossPlatformRequest } from './polymorphics';
41+
export type { PolymorphicEvent, PolymorphicRequest } from './polymorphics';
4242
export type { QueryParams, Request } from './request';
4343
export type { Runtime } from './runtime';
4444
export type { CaptureContext, Scope, ScopeContext } from './scope';

packages/types/src/polymorphics.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export interface PolymorphicEvent {
1313
}
1414

1515
/** A `Request` type compatible with Node, Express, browser, etc., because everything is optional */
16-
export type CrossPlatformRequest = BaseRequest &
16+
export type PolymorphicRequest = BaseRequest &
1717
BrowserRequest &
1818
NodeRequest &
1919
ExpressRequest &

packages/utils/src/requestdata.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
/* eslint-disable max-lines */
1313
/* eslint-disable @typescript-eslint/no-explicit-any */
1414

15-
import { CrossPlatformRequest, Event, ExtractedNodeRequestData, Transaction, TransactionSource } from '@sentry/types';
15+
import { Event, ExtractedNodeRequestData, PolymorphicRequest, Transaction, TransactionSource } from '@sentry/types';
1616

1717
import { isPlainObject, isString } from './is';
1818
import { normalize } from './normalize';
@@ -44,7 +44,7 @@ type InjectedNodeDeps = {
4444
*/
4545
export function addRequestDataToTransaction(
4646
transaction: Transaction | undefined,
47-
req: CrossPlatformRequest,
47+
req: PolymorphicRequest,
4848
deps?: InjectedNodeDeps,
4949
): void {
5050
if (!transaction) return;
@@ -74,7 +74,7 @@ export function addRequestDataToTransaction(
7474
* @returns A tuple of the fully constructed transaction name [0] and its source [1] (can be either 'route' or 'url')
7575
*/
7676
export function extractPathForTransaction(
77-
req: CrossPlatformRequest,
77+
req: PolymorphicRequest,
7878
options: { path?: boolean; method?: boolean; customRoute?: string } = {},
7979
): [string, TransactionSource] {
8080
const method = req.method && req.method.toUpperCase();
@@ -110,7 +110,7 @@ export function extractPathForTransaction(
110110
type TransactionNamingScheme = 'path' | 'methodPath' | 'handler';
111111

112112
/** JSDoc */
113-
function extractTransaction(req: CrossPlatformRequest, type: boolean | TransactionNamingScheme): string {
113+
function extractTransaction(req: PolymorphicRequest, type: boolean | TransactionNamingScheme): string {
114114
switch (type) {
115115
case 'path': {
116116
return extractPathForTransaction(req, { path: true })[0];
@@ -154,7 +154,7 @@ function extractUserData(
154154
* @returns An object containing normalized request data
155155
*/
156156
export function extractRequestData(
157-
req: CrossPlatformRequest,
157+
req: PolymorphicRequest,
158158
options?: {
159159
include?: string[];
160160
deps?: InjectedNodeDeps;
@@ -282,7 +282,7 @@ export interface AddRequestDataToEventOptions {
282282
*/
283283
export function addRequestDataToEvent(
284284
event: Event,
285-
req: CrossPlatformRequest,
285+
req: PolymorphicRequest,
286286
options?: AddRequestDataToEventOptions,
287287
): Event {
288288
const include = {
@@ -335,7 +335,7 @@ export function addRequestDataToEvent(
335335
}
336336

337337
function extractQueryParams(
338-
req: CrossPlatformRequest,
338+
req: PolymorphicRequest,
339339
deps?: InjectedNodeDeps,
340340
): string | Record<string, unknown> | undefined {
341341
// url (including path and query string):

0 commit comments

Comments
 (0)