@segment/analytics-browser-actions-bucket 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/generated-types.d.ts +3 -0
- package/dist/cjs/generated-types.js +3 -0
- package/dist/cjs/generated-types.js.map +1 -0
- package/dist/cjs/group/generated-types.d.ts +7 -0
- package/dist/cjs/group/generated-types.js +3 -0
- package/dist/cjs/group/generated-types.js.map +1 -0
- package/dist/cjs/group/index.d.ts +6 -0
- package/dist/cjs/group/index.js +45 -0
- package/dist/cjs/group/index.js.map +1 -0
- package/dist/cjs/identifyUser/generated-types.d.ts +6 -0
- package/dist/cjs/identifyUser/generated-types.js +3 -0
- package/dist/cjs/identifyUser/generated-types.js.map +1 -0
- package/dist/cjs/identifyUser/index.d.ts +6 -0
- package/dist/cjs/identifyUser/index.js +33 -0
- package/dist/cjs/identifyUser/index.js.map +1 -0
- package/dist/cjs/index.d.ts +11 -0
- package/dist/cjs/index.js +66 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/test-utils.d.ts +6 -0
- package/dist/cjs/test-utils.js +58 -0
- package/dist/cjs/test-utils.js.map +1 -0
- package/dist/cjs/trackEvent/generated-types.d.ts +7 -0
- package/dist/cjs/trackEvent/generated-types.js +3 -0
- package/dist/cjs/trackEvent/generated-types.js.map +1 -0
- package/dist/cjs/trackEvent/index.d.ts +6 -0
- package/dist/cjs/trackEvent/index.js +45 -0
- package/dist/cjs/trackEvent/index.js.map +1 -0
- package/dist/cjs/types.d.ts +2 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/generated-types.d.ts +3 -0
- package/dist/esm/generated-types.js +2 -0
- package/dist/esm/generated-types.js.map +1 -0
- package/dist/esm/group/generated-types.d.ts +7 -0
- package/dist/esm/group/generated-types.js +2 -0
- package/dist/esm/group/generated-types.js.map +1 -0
- package/dist/esm/group/index.d.ts +6 -0
- package/dist/esm/group/index.js +43 -0
- package/dist/esm/group/index.js.map +1 -0
- package/dist/esm/identifyUser/generated-types.d.ts +6 -0
- package/dist/esm/identifyUser/generated-types.js +2 -0
- package/dist/esm/identifyUser/generated-types.js.map +1 -0
- package/dist/esm/identifyUser/index.d.ts +6 -0
- package/dist/esm/identifyUser/index.js +31 -0
- package/dist/esm/identifyUser/index.js.map +1 -0
- package/dist/esm/index.d.ts +11 -0
- package/dist/esm/index.js +62 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/test-utils.d.ts +6 -0
- package/dist/esm/test-utils.js +52 -0
- package/dist/esm/test-utils.js.map +1 -0
- package/dist/esm/trackEvent/generated-types.d.ts +7 -0
- package/dist/esm/trackEvent/generated-types.js +2 -0
- package/dist/esm/trackEvent/generated-types.js.map +1 -0
- package/dist/esm/trackEvent/index.d.ts +6 -0
- package/dist/esm/trackEvent/index.js +43 -0
- package/dist/esm/trackEvent/index.js.map +1 -0
- package/dist/esm/types.d.ts +2 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +26 -0
- package/src/__tests__/index.test.ts +116 -0
- package/src/generated-types.ts +8 -0
- package/src/group/__tests__/index.test.ts +186 -0
- package/src/group/generated-types.ts +18 -0
- package/src/group/index.ts +49 -0
- package/src/identifyUser/__tests__/index.test.ts +78 -0
- package/src/identifyUser/generated-types.ts +14 -0
- package/src/identifyUser/index.ts +36 -0
- package/src/index.ts +85 -0
- package/src/test-utils.ts +60 -0
- package/src/trackEvent/__tests__/index.test.ts +159 -0
- package/src/trackEvent/generated-types.ts +18 -0
- package/src/trackEvent/index.ts +49 -0
- package/src/types.ts +3 -0
- package/tsconfig.json +9 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Generated file. DO NOT MODIFY IT BY HAND.
|
|
2
|
+
|
|
3
|
+
export interface Payload {
|
|
4
|
+
/**
|
|
5
|
+
* The event name
|
|
6
|
+
*/
|
|
7
|
+
name: string
|
|
8
|
+
/**
|
|
9
|
+
* Unique identifier for the user
|
|
10
|
+
*/
|
|
11
|
+
userId: string
|
|
12
|
+
/**
|
|
13
|
+
* Object containing the properties of the event
|
|
14
|
+
*/
|
|
15
|
+
properties?: {
|
|
16
|
+
[k: string]: unknown
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { BrowserActionDefinition } from '@segment/browser-destination-runtime/types'
|
|
2
|
+
import type { Settings } from '../generated-types'
|
|
3
|
+
import type { Payload } from './generated-types'
|
|
4
|
+
import type { Bucket } from '../types'
|
|
5
|
+
|
|
6
|
+
const action: BrowserActionDefinition<Settings, Bucket, Payload> = {
|
|
7
|
+
title: 'Track Event',
|
|
8
|
+
description: 'Map a Segment track() event to Bucket',
|
|
9
|
+
platform: 'web',
|
|
10
|
+
defaultSubscription: 'type = "track"',
|
|
11
|
+
fields: {
|
|
12
|
+
name: {
|
|
13
|
+
description: 'The event name',
|
|
14
|
+
label: 'Event name',
|
|
15
|
+
required: true,
|
|
16
|
+
type: 'string',
|
|
17
|
+
default: {
|
|
18
|
+
'@path': '$.event'
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
userId: {
|
|
22
|
+
type: 'string',
|
|
23
|
+
required: true,
|
|
24
|
+
allowNull: false,
|
|
25
|
+
description: 'Unique identifier for the user',
|
|
26
|
+
label: 'User ID',
|
|
27
|
+
default: {
|
|
28
|
+
'@path': '$.userId'
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
properties: {
|
|
32
|
+
type: 'object',
|
|
33
|
+
required: false,
|
|
34
|
+
description: 'Object containing the properties of the event',
|
|
35
|
+
label: 'Event Properties',
|
|
36
|
+
default: {
|
|
37
|
+
'@path': '$.properties'
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
perform: (bucket, { payload }) => {
|
|
42
|
+
// Ensure we never call Bucket.track() without a user ID
|
|
43
|
+
if (payload.userId) {
|
|
44
|
+
void bucket.track(payload.name, payload.properties, payload.userId)
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export default action
|
package/src/types.ts
ADDED