1
1
import { tmpdir } from 'os' ;
2
2
import { EventEmitter } from 'events' ;
3
3
import Client from './client' ;
4
- import Repository , { RepositoryInterface } from './repository' ;
4
+ import Repository , { RepositoryInterface , SUPPORTED_SPEC_VERSION } from './repository' ;
5
5
import Metrics from './metrics' ;
6
6
import { Context } from './context' ;
7
7
import { Strategy , defaultStrategies } from './strategy' ;
@@ -21,6 +21,7 @@ import FileStorageProvider from './repository/storage-provider-file';
21
21
import { resolveUrl } from './url-utils' ;
22
22
// @ts -expect-error
23
23
import { EventSource } from 'launchdarkly-eventsource' ;
24
+ import { buildHeaders } from './request' ;
24
25
export { Strategy , UnleashEvents , UnleashConfig } ;
25
26
26
27
const BACKUP_PATH : string = tmpdir ( ) ;
@@ -129,7 +130,14 @@ export class Unleash extends EventEmitter {
129
130
eventSource :
130
131
experimentalMode ?. type === 'streaming'
131
132
? new EventSource ( resolveUrl ( unleashUrl , './client/streaming' ) , {
132
- headers : customHeaders ,
133
+ headers : buildHeaders (
134
+ appName ,
135
+ instanceId ,
136
+ undefined ,
137
+ undefined ,
138
+ customHeaders ,
139
+ SUPPORTED_SPEC_VERSION ,
140
+ ) ,
133
141
readTimeoutMillis : 60000 , // start a new SSE connection when no heartbeat received in 1 minute
134
142
initialRetryDelayMillis : 2000 ,
135
143
maxBackoffMillis : 30000 ,
0 commit comments