Skip to content

Commit e802e85

Browse files
committed
wip
1 parent 9b853e2 commit e802e85

File tree

5 files changed

+13
-9
lines changed

5 files changed

+13
-9
lines changed

packages/signals/signals-runtime/src/mobile/mobile-exports-globals.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
// all import directives will be removed in the final build
2-
import { MobileSignalsRuntime } from './mobile-signals-types'
2+
import { Signal } from './mobile-signals-types'
3+
import { ISignalsRuntime } from './mobile-exports'
34

45
// This will be appended to the generated code - dts-bundle-generator will not write declare const for whatever reason.
5-
declare const signals: MobileSignalsRuntime
6+
declare const signals: ISignalsRuntime<Signal>
67
declare const SignalType: {
78
Interaction: 'interaction'
89
Navigation: 'navigation'

packages/signals/signals-runtime/src/shared/shared-types.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,11 @@ export interface ISignalsRuntime<Signal extends BaseSignal> {
1313
signalType: SignalType,
1414
predicate?: (signal: SignalOfType<Signal, SignalType>) => boolean
1515
) => SignalOfType<Signal, SignalType> | undefined
16+
filter: <SignalType extends Signal['type']>(
17+
fromSignal: Signal,
18+
signalType: SignalType,
19+
predicate?: (signal: SignalOfType<Signal, SignalType>) => boolean
20+
) => SignalOfType<Signal, SignalType>[]
1621
}
1722

1823
export type JSONPrimitive = string | number | boolean | null

packages/signals/signals-runtime/src/web/web-exports-globals.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
// all import directives will be removed in the final build
2-
import { WebSignalsRuntime } from './web-exports'
2+
import { Signal } from './web-exports'
3+
import { ISignalsRuntime } from './web-exports'
34

45
// This will be appended to the generated code - dts-bundle-generator will not write declare const for whatever reason.
5-
declare const signals: WebSignalsRuntime
6+
declare const signals: ISignalsRuntime<Signal>
67
declare const SignalType: Readonly<{
78
Interaction: 'interaction'
89
Navigation: 'navigation'

packages/signals/signals-runtime/src/web/web-signals-types.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { BaseSignal, JSONValue } from '../shared/shared-types'
2-
import { ISignalsRuntime } from '../shared/shared-types'
32

43
export type SignalTypes = Signal['type']
54

@@ -100,5 +99,3 @@ export type Signal =
10099
| InstrumentationSignal
101100
| NetworkSignal
102101
| UserDefinedSignal
103-
104-
export interface WebSignalsRuntime extends ISignalsRuntime<Signal> {}

packages/signals/signals/src/types/process-signal.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { WebSignalsRuntime, Signal } from '@segment/analytics-signals-runtime'
1+
import { ISignalsRuntime, Signal } from '@segment/analytics-signals-runtime'
22

33
/**
44
* Types for the signals runtime
@@ -14,7 +14,7 @@ export interface AnalyticsRuntimePublicApi {
1414

1515
export type ProcessSignalScope = {
1616
analytics: AnalyticsRuntimePublicApi
17-
signals: WebSignalsRuntime
17+
signals: ISignalsRuntime<Signal>
1818
} & typeof AnalyticsEnums
1919

2020
export interface ProcessSignal {

0 commit comments

Comments
 (0)