Skip to content

Commit be278ea

Browse files
committed
Cleanup
1 parent 987a371 commit be278ea

File tree

6 files changed

+30
-12
lines changed

6 files changed

+30
-12
lines changed

packages/telemetry/browser-telemetry/__tests__/singleton/singletonMethods.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { Breadcrumb, LDClientTracking } from '../../src/api';
22
import { BrowserTelemetry } from '../../src/api/BrowserTelemetry';
3+
import { BrowserTelemetryInspector } from '../../src/api/client/BrowserTelemetryInspector';
34
import { getTelemetryInstance } from '../../src/singleton/singletonInstance';
45
import {
56
addBreadcrumb,
@@ -9,7 +10,6 @@ import {
910
inspectors,
1011
register,
1112
} from '../../src/singleton/singletonMethods';
12-
import { BrowserTelemetryInspector } from '../../src/api/client/BrowserTelemetryInspector';
1313

1414
jest.mock('../../src/singleton/singletonInstance');
1515

packages/telemetry/browser-telemetry/src/BrowserTelemetryImpl.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import type { LDContext, LDEvaluationDetail } from '@launchdarkly/js-client-sdk'
88
import { BreadcrumbFilter, LDClientLogging, LDClientTracking, MinLogger } from './api';
99
import { Breadcrumb, FeatureManagementBreadcrumb } from './api/Breadcrumb';
1010
import { BrowserTelemetry } from './api/BrowserTelemetry';
11+
import { BrowserTelemetryInspector } from './api/client/BrowserTelemetryInspector';
1112
import { Collector } from './api/Collector';
1213
import { ErrorData } from './api/ErrorData';
1314
import { EventData } from './api/EventData';
@@ -18,7 +19,6 @@ import FetchCollector from './collectors/http/fetch';
1819
import XhrCollector from './collectors/http/xhr';
1920
import defaultUrlFilter from './filters/defaultUrlFilter';
2021
import makeInspectors from './inspectors';
21-
import { BrowserTelemetryInspector } from './api/client/BrowserTelemetryInspector';
2222
import { fallbackLogger, prefixLog } from './logging';
2323
import { ParsedOptions, ParsedStackOptions } from './options';
2424
import randomUuidV4 from './randomUuidV4';

packages/telemetry/browser-telemetry/src/api/BrowserTelemetry.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
import type { LDInspection } from '@launchdarkly/js-client-sdk';
2-
31
import { Breadcrumb } from './Breadcrumb';
4-
import { LDClientTracking } from './client/LDClientTracking';
52
import { BrowserTelemetryInspector } from './client/BrowserTelemetryInspector';
3+
import { LDClientTracking } from './client/LDClientTracking';
64

75
/**
86
* Interface for browser-based telemetry collection in LaunchDarkly SDKs.
@@ -16,7 +14,7 @@ export interface BrowserTelemetry {
1614
* Returns an array of active SDK inspectors to use with SDK versions that do
1715
* not support hooks.
1816
*
19-
* @returns An array of {@link LDInspection} objects.
17+
* @returns An array of {@link BrowserTelemetryInspector} objects.
2018
*/
2119
inspectors(): BrowserTelemetryInspector[];
2220

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,29 @@
1-
1+
/**
2+
* A less constrained version of the LDInspection interface in order to allow for greater compatibility between
3+
* SDK versions.
4+
*
5+
* This interface is not intended for use by the application developer and is instead intended as a compatibility bridge
6+
* to support multiple SDK versions.
7+
*/
28
export interface BrowserTelemetryInspector {
9+
/**
10+
* The telemetry package only requires flag-detail-changed inspectors and flag-used inspectors.
11+
*/
312
type: 'flag-used' | 'flag-detail-changed';
13+
14+
/**
15+
* The name of the inspector, used for debugging purposes.
16+
*/
417
name: string;
18+
/**
19+
* Whether the inspector is synchronous.
20+
*/
521
synchronous: boolean;
22+
/**
23+
* The method to call when the inspector is triggered.
24+
*
25+
* The typing here is intentionally loose to allow for greater compatibility between SDK versions.
26+
* This function should ONLY be called by an SDK instance and not by an application developer.
27+
*/
628
method: (...args: any[]) => void;
729
}

packages/telemetry/browser-telemetry/src/inspectors.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import type { LDContext, LDEvaluationDetail } from '@launchdarkly/js-client-sdk';
22

3+
import { BrowserTelemetryInspector } from './api/client/BrowserTelemetryInspector.js';
34
import BrowserTelemetryImpl from './BrowserTelemetryImpl.js';
45
import { ParsedOptions } from './options.js';
5-
import { BrowserTelemetryInspector } from './api/client/BrowserTelemetryInspector.js';
66

77
/**
88
* Create inspectors to register with an LDClient instance.

packages/telemetry/browser-telemetry/src/singleton/singletonMethods.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
1-
import type { LDInspection } from '@launchdarkly/js-client-sdk';
2-
31
import { LDClientTracking } from '../api';
42
import { Breadcrumb } from '../api/Breadcrumb';
5-
import { getTelemetryInstance } from './singletonInstance';
63
import { BrowserTelemetryInspector } from '../api/client/BrowserTelemetryInspector';
4+
import { getTelemetryInstance } from './singletonInstance';
75

86
/**
97
* Returns an array of active SDK inspectors to use with SDK versions that do
@@ -12,7 +10,7 @@ import { BrowserTelemetryInspector } from '../api/client/BrowserTelemetryInspect
1210
* Telemetry must be initialized, using {@link initializeTelemetry} before calling this method.
1311
* If telemetry is not initialized, this method will return an empty array.
1412
*
15-
* @returns An array of {@link LDInspection} objects.
13+
* @returns An array of {@link BrowserTelemetryInspector} objects.
1614
*/
1715
export function inspectors(): BrowserTelemetryInspector[] {
1816
return getTelemetryInstance()?.inspectors() || [];

0 commit comments

Comments
 (0)