Skip to content

Commit 6d51d38

Browse files
authored
Add load type to snippet (#615)
* add load type to snippet * add changeset
1 parent 29c3bd7 commit 6d51d38

File tree

3 files changed

+14
-5
lines changed

3 files changed

+14
-5
lines changed

.changeset/clean-pandas-peel.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@segment/analytics-next': patch
3+
---
4+
5+
Add the load function type to AnalyticsSnippet

packages/browser/src/browser/__tests__/standalone-analytics.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import jsdom, { JSDOM } from 'jsdom'
22
import { InitOptions } from '../../'
33
import { AnalyticsBrowser, loadLegacySettings } from '../../browser'
44
import { snippet } from '../../tester/__fixtures__/segment-snippet'
5-
import { install, AnalyticsSnippet } from '../standalone-analytics'
5+
import { install, AnalyticsStandalone } from '../standalone-analytics'
66
import unfetch from 'unfetch'
77
import { PersistedPriorityQueue } from '../../lib/priority-queue/persisted'
88
import { sleep } from '../../test-helpers/sleep'
@@ -99,7 +99,7 @@ describe('standalone bundle', () => {
9999

100100
const spy = jest
101101
.spyOn(AnalyticsBrowser, 'standalone')
102-
.mockResolvedValueOnce(fakeAjs as AnalyticsSnippet)
102+
.mockResolvedValueOnce(fakeAjs as AnalyticsStandalone)
103103

104104
await install()
105105

@@ -114,7 +114,7 @@ describe('standalone bundle', () => {
114114
}
115115
const spy = jest
116116
.spyOn(AnalyticsBrowser, 'standalone')
117-
.mockResolvedValueOnce(fakeAjs as AnalyticsSnippet)
117+
.mockResolvedValueOnce(fakeAjs as AnalyticsStandalone)
118118

119119
await install()
120120

packages/browser/src/browser/standalone-analytics.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,19 @@ import { Analytics, InitOptions } from '../core/analytics'
22
import { AnalyticsBrowser } from '.'
33
import { embeddedWriteKey } from '../lib/embedded-write-key'
44

5-
export type AnalyticsSnippet = Analytics & {
5+
export interface AnalyticsSnippet extends AnalyticsStandalone {
6+
load: (writeKey: string, options?: InitOptions) => void
7+
}
8+
9+
export interface AnalyticsStandalone extends Analytics {
610
_loadOptions?: InitOptions
711
_writeKey?: string
812
_cdn?: string
913
}
1014

1115
declare global {
1216
interface Window {
13-
analytics: AnalyticsSnippet
17+
analytics: AnalyticsStandalone
1418
}
1519
}
1620

0 commit comments

Comments
 (0)