@xylabs/sdk-react 2.9.35 → 2.10.2
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/cjs5/components/BasePage/BasePageProps.d.ts +0 -2
- package/dist/cjs5/contexts/UserEvents/{Loader.d.ts → Provider.d.ts} +1 -1
- package/dist/cjs5/contexts/UserEvents/index.d.ts +1 -1
- package/dist/cjs5/index.js +175 -74
- package/dist/cjs5/index.js.map +1 -1
- package/dist/cjs5/lib/Tracking/Facebook/index.d.ts +1 -0
- package/dist/cjs5/lib/Tracking/Tapjoy/BaseEvent.d.ts +8 -0
- package/dist/cjs5/lib/Tracking/Tapjoy/EF.d.ts +8 -0
- package/dist/cjs5/lib/Tracking/Tapjoy/StandardEvent.d.ts +5 -0
- package/dist/cjs5/lib/Tracking/Tapjoy/StandardEvents.d.ts +5 -0
- package/dist/cjs5/lib/Tracking/Tapjoy/index.d.ts +3 -0
- package/dist/cjs5/lib/Tracking/XyoUserEventHandler.d.ts +3 -1
- package/dist/cjs5/lib/Tracking/index.d.ts +1 -0
- package/dist/components/Background.js +1 -0
- package/dist/components/Background.js.map +1 -1
- package/dist/components/BasePage/BasePage.js +2 -2
- package/dist/components/BasePage/BasePage.js.map +1 -1
- package/dist/components/BasePage/BasePage.stories.js +0 -2
- package/dist/components/BasePage/BasePage.stories.js.map +1 -1
- package/dist/components/BasePage/BasePageProps.d.ts +0 -2
- package/dist/components/InvertableThemeProvider/InvertableThemeProvider.js +3 -1
- package/dist/components/InvertableThemeProvider/InvertableThemeProvider.js.map +1 -1
- package/dist/components/LinkEx/LinkToEx.js +1 -0
- package/dist/components/LinkEx/LinkToEx.js.map +1 -1
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/contexts/UserEvents/{Loader.d.ts → Provider.d.ts} +1 -1
- package/dist/contexts/UserEvents/Provider.js +7 -0
- package/dist/contexts/UserEvents/Provider.js.map +1 -0
- package/dist/contexts/UserEvents/index.d.ts +1 -1
- package/dist/contexts/UserEvents/index.js +1 -1
- package/dist/contexts/UserEvents/index.js.map +1 -1
- package/dist/esm2015/components/BasePage/BasePageProps.d.ts +0 -2
- package/dist/esm2015/contexts/UserEvents/{Loader.d.ts → Provider.d.ts} +1 -1
- package/dist/esm2015/contexts/UserEvents/index.d.ts +1 -1
- package/dist/esm2015/index.js +172 -75
- package/dist/esm2015/index.js.map +1 -1
- package/dist/esm2015/lib/Tracking/Facebook/index.d.ts +1 -0
- package/dist/esm2015/lib/Tracking/Tapjoy/BaseEvent.d.ts +8 -0
- package/dist/esm2015/lib/Tracking/Tapjoy/EF.d.ts +8 -0
- package/dist/esm2015/lib/Tracking/Tapjoy/StandardEvent.d.ts +5 -0
- package/dist/esm2015/lib/Tracking/Tapjoy/StandardEvents.d.ts +5 -0
- package/dist/esm2015/lib/Tracking/Tapjoy/index.d.ts +3 -0
- package/dist/esm2015/lib/Tracking/XyoUserEventHandler.d.ts +3 -1
- package/dist/esm2015/lib/Tracking/index.d.ts +1 -0
- package/dist/esm2017/components/BasePage/BasePageProps.d.ts +0 -2
- package/dist/esm2017/contexts/UserEvents/{Loader.d.ts → Provider.d.ts} +1 -1
- package/dist/esm2017/contexts/UserEvents/index.d.ts +1 -1
- package/dist/esm2017/index.js +172 -75
- package/dist/esm2017/index.js.map +1 -1
- package/dist/esm2017/lib/Tracking/Facebook/index.d.ts +1 -0
- package/dist/esm2017/lib/Tracking/Tapjoy/BaseEvent.d.ts +8 -0
- package/dist/esm2017/lib/Tracking/Tapjoy/EF.d.ts +8 -0
- package/dist/esm2017/lib/Tracking/Tapjoy/StandardEvent.d.ts +5 -0
- package/dist/esm2017/lib/Tracking/Tapjoy/StandardEvents.d.ts +5 -0
- package/dist/esm2017/lib/Tracking/Tapjoy/index.d.ts +3 -0
- package/dist/esm2017/lib/Tracking/XyoUserEventHandler.d.ts +3 -1
- package/dist/esm2017/lib/Tracking/index.d.ts +1 -0
- package/dist/esm5/components/BasePage/BasePageProps.d.ts +0 -2
- package/dist/esm5/contexts/UserEvents/Provider.d.ts +7 -0
- package/dist/esm5/contexts/UserEvents/index.d.ts +1 -1
- package/dist/esm5/index.js +172 -75
- package/dist/esm5/index.js.map +1 -1
- package/dist/esm5/lib/Tracking/Facebook/index.d.ts +1 -0
- package/dist/esm5/lib/Tracking/Tapjoy/BaseEvent.d.ts +8 -0
- package/dist/esm5/lib/Tracking/Tapjoy/EF.d.ts +8 -0
- package/dist/esm5/lib/Tracking/Tapjoy/StandardEvent.d.ts +5 -0
- package/dist/esm5/lib/Tracking/Tapjoy/StandardEvents.d.ts +5 -0
- package/dist/esm5/lib/Tracking/Tapjoy/index.d.ts +3 -0
- package/dist/esm5/lib/Tracking/XyoUserEventHandler.d.ts +3 -1
- package/dist/esm5/lib/Tracking/index.d.ts +1 -0
- package/dist/lib/Tracking/Facebook/index.d.ts +1 -0
- package/dist/lib/Tracking/Facebook/index.js +1 -0
- package/dist/lib/Tracking/Facebook/index.js.map +1 -1
- package/dist/lib/Tracking/Tapjoy/BaseEvent.d.ts +8 -0
- package/dist/lib/Tracking/Tapjoy/BaseEvent.js +16 -0
- package/dist/lib/Tracking/Tapjoy/BaseEvent.js.map +1 -0
- package/dist/lib/Tracking/Tapjoy/EF.d.ts +8 -0
- package/dist/lib/Tracking/Tapjoy/EF.js +38 -0
- package/dist/lib/Tracking/Tapjoy/EF.js.map +1 -0
- package/dist/lib/Tracking/Tapjoy/StandardEvent.d.ts +5 -0
- package/dist/lib/Tracking/Tapjoy/StandardEvent.js +13 -0
- package/dist/lib/Tracking/Tapjoy/StandardEvent.js.map +1 -0
- package/dist/lib/Tracking/Tapjoy/StandardEvents.d.ts +5 -0
- package/dist/lib/Tracking/Tapjoy/StandardEvents.js +8 -0
- package/dist/lib/Tracking/Tapjoy/StandardEvents.js.map +1 -0
- package/dist/lib/Tracking/Tapjoy/index.d.ts +3 -0
- package/dist/lib/Tracking/Tapjoy/index.js +4 -0
- package/dist/lib/Tracking/Tapjoy/index.js.map +1 -0
- package/dist/lib/Tracking/XyoUserEventHandler.d.ts +3 -1
- package/dist/lib/Tracking/XyoUserEventHandler.js +8 -1
- package/dist/lib/Tracking/XyoUserEventHandler.js.map +1 -1
- package/dist/lib/Tracking/index.d.ts +1 -0
- package/dist/lib/Tracking/index.js +1 -0
- package/dist/lib/Tracking/index.js.map +1 -1
- package/dist/node/components/BasePage/BasePageProps.d.ts +0 -2
- package/dist/node/contexts/UserEvents/Provider.d.ts +7 -0
- package/dist/node/contexts/UserEvents/index.d.ts +1 -1
- package/dist/node/index.js +175 -74
- package/dist/node/index.js.map +1 -1
- package/dist/node/lib/Tracking/Facebook/index.d.ts +1 -0
- package/dist/node/lib/Tracking/Tapjoy/BaseEvent.d.ts +8 -0
- package/dist/node/lib/Tracking/Tapjoy/EF.d.ts +8 -0
- package/dist/node/lib/Tracking/Tapjoy/StandardEvent.d.ts +5 -0
- package/dist/node/lib/Tracking/Tapjoy/StandardEvents.d.ts +5 -0
- package/dist/node/lib/Tracking/Tapjoy/index.d.ts +3 -0
- package/dist/node/lib/Tracking/XyoUserEventHandler.d.ts +3 -1
- package/dist/node/lib/Tracking/index.d.ts +1 -0
- package/dist/node-esm/components/BasePage/BasePageProps.d.ts +0 -2
- package/dist/node-esm/contexts/UserEvents/Provider.d.ts +7 -0
- package/dist/node-esm/contexts/UserEvents/index.d.ts +1 -1
- package/dist/node-esm/index.js +172 -75
- package/dist/node-esm/index.js.map +1 -1
- package/dist/node-esm/lib/Tracking/Facebook/index.d.ts +1 -0
- package/dist/node-esm/lib/Tracking/Tapjoy/BaseEvent.d.ts +8 -0
- package/dist/node-esm/lib/Tracking/Tapjoy/EF.d.ts +8 -0
- package/dist/node-esm/lib/Tracking/Tapjoy/StandardEvent.d.ts +5 -0
- package/dist/node-esm/lib/Tracking/Tapjoy/StandardEvents.d.ts +5 -0
- package/dist/node-esm/lib/Tracking/Tapjoy/index.d.ts +3 -0
- package/dist/node-esm/lib/Tracking/XyoUserEventHandler.d.ts +3 -1
- package/dist/node-esm/lib/Tracking/index.d.ts +1 -0
- package/package.json +10 -7
- package/src/components/Background.tsx +1 -0
- package/src/components/BasePage/BasePage.stories.tsx +0 -2
- package/src/components/BasePage/BasePage.tsx +0 -3
- package/src/components/BasePage/BasePageProps.ts +0 -2
- package/src/components/InvertableThemeProvider/InvertableThemeProvider.tsx +1 -0
- package/src/components/LinkEx/LinkToEx.tsx +1 -0
- package/src/components/index.ts +1 -0
- package/src/contexts/UserEvents/Provider.tsx +17 -0
- package/src/contexts/UserEvents/index.ts +1 -1
- package/src/lib/Tracking/Facebook/index.ts +1 -0
- package/src/lib/Tracking/Tapjoy/BaseEvent.ts +19 -0
- package/src/lib/Tracking/Tapjoy/EF.ts +41 -0
- package/src/lib/Tracking/Tapjoy/StandardEvent.ts +11 -0
- package/src/lib/Tracking/Tapjoy/StandardEvents.ts +9 -0
- package/src/lib/Tracking/Tapjoy/index.ts +3 -0
- package/src/lib/Tracking/XyoUserEventHandler.ts +11 -2
- package/src/lib/Tracking/index.ts +1 -0
- package/dist/contexts/UserEvents/Loader.js +0 -6
- package/dist/contexts/UserEvents/Loader.js.map +0 -1
- package/dist/esm5/contexts/UserEvents/Loader.d.ts +0 -7
- package/dist/node/contexts/UserEvents/Loader.d.ts +0 -7
- package/dist/node-esm/contexts/UserEvents/Loader.d.ts +0 -7
- package/src/contexts/UserEvents/Loader.tsx +0 -12
|
@@ -21,12 +21,10 @@ const Template: ComponentStory<typeof BasePage> = (args) => (
|
|
|
21
21
|
)
|
|
22
22
|
|
|
23
23
|
const AppBar = () => <div>AppBar</div>
|
|
24
|
-
const FilterBar = () => <div>FilterBar</div>
|
|
25
24
|
|
|
26
25
|
const Default = Template.bind({})
|
|
27
26
|
Default.args = {
|
|
28
27
|
appBar: <AppBar />,
|
|
29
|
-
filterBar: <FilterBar />,
|
|
30
28
|
title: 'Default',
|
|
31
29
|
}
|
|
32
30
|
|
|
@@ -19,9 +19,7 @@ const BasePage: React.FC<BasePageProps> = ({
|
|
|
19
19
|
appFooter,
|
|
20
20
|
appBar,
|
|
21
21
|
cookieConsent,
|
|
22
|
-
filterBar,
|
|
23
22
|
hideAppBar,
|
|
24
|
-
hideFilterBar,
|
|
25
23
|
noindex = false,
|
|
26
24
|
scrollToTopButton = false,
|
|
27
25
|
title,
|
|
@@ -44,7 +42,6 @@ const BasePage: React.FC<BasePageProps> = ({
|
|
|
44
42
|
<Helmet title={title}>{noindex ? <meta content="noindex" name="robots" /> : null}</Helmet>
|
|
45
43
|
{scrollToTopButton ? <div id={scrollToTopAnchorId} /> : null}
|
|
46
44
|
{hideAppBar ? null : appBar}
|
|
47
|
-
{hideFilterBar ? null : filterBar}
|
|
48
45
|
{beta ? (
|
|
49
46
|
<FlexRow
|
|
50
47
|
margin={1}
|
|
@@ -9,9 +9,7 @@ interface BasePageProps extends BoxProps {
|
|
|
9
9
|
beta?: boolean
|
|
10
10
|
container?: 'xl' | 'lg' | 'md' | 'sm' | 'xs'
|
|
11
11
|
disableGutters?: boolean
|
|
12
|
-
filterBar?: ReactElement
|
|
13
12
|
hideAppBar?: boolean
|
|
14
|
-
hideFilterBar?: boolean
|
|
15
13
|
hideFooter?: boolean
|
|
16
14
|
noindex?: boolean
|
|
17
15
|
cookieConsent?: ReactNode
|
package/src/components/index.ts
CHANGED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { UserEventHandler } from '@xylabs/pixel'
|
|
2
|
+
import React from 'react'
|
|
3
|
+
|
|
4
|
+
import { XyoUserEventHandler } from '../../lib'
|
|
5
|
+
import { UserEventsContext } from './Context'
|
|
6
|
+
|
|
7
|
+
interface Props<T> {
|
|
8
|
+
userEvents: UserEventHandler<T>
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const UserEventsProvider: React.FC<Props<unknown>> = ({ userEvents, children }) => {
|
|
12
|
+
return (
|
|
13
|
+
<UserEventsContext.Provider value={{ userEvents: userEvents ?? XyoUserEventHandler.get() }}>
|
|
14
|
+
{children}
|
|
15
|
+
</UserEventsContext.Provider>
|
|
16
|
+
)
|
|
17
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './Context'
|
|
2
|
-
export * from './
|
|
2
|
+
export * from './Provider'
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { assertEx, delay } from '@xylabs/sdk-js'
|
|
2
|
+
|
|
3
|
+
import { EF } from './EF'
|
|
4
|
+
|
|
5
|
+
class TapjoyBaseEvent<T> {
|
|
6
|
+
public ef: EF
|
|
7
|
+
public name: string
|
|
8
|
+
|
|
9
|
+
constructor(name: string) {
|
|
10
|
+
this.name = name
|
|
11
|
+
this.ef = assertEx(EF.instance, 'Missing Tapjoy Eventflow')
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async send(_data: T) {
|
|
15
|
+
await delay(0)
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { TapjoyBaseEvent }
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { global } from '../../global'
|
|
2
|
+
class EF {
|
|
3
|
+
public static instance: EF
|
|
4
|
+
public static init() {
|
|
5
|
+
try {
|
|
6
|
+
EF.instance = new EF()
|
|
7
|
+
} catch (ex) {
|
|
8
|
+
console.error(`EF.init: ${ex}`)
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
public static getEF() {
|
|
12
|
+
if (global.EF) {
|
|
13
|
+
return global.EF
|
|
14
|
+
}
|
|
15
|
+
console.warn('Missing EF')
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
public track(event: string, data?: Record<string, unknown>) {
|
|
19
|
+
switch (event) {
|
|
20
|
+
case 'Purchase':
|
|
21
|
+
this.sendConversion(data)
|
|
22
|
+
break
|
|
23
|
+
default:
|
|
24
|
+
console.error(`EF.track: missing event ${event}`)
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
private sendConversion(data?: Record<string, unknown>) {
|
|
29
|
+
try {
|
|
30
|
+
//data: have session_id, tracking_id, order_id, amount
|
|
31
|
+
const ef = EF.getEF()
|
|
32
|
+
ef.conversion({
|
|
33
|
+
...data,
|
|
34
|
+
})
|
|
35
|
+
} catch (ex) {
|
|
36
|
+
console.error(`EF.conversion: ${ex}`)
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export { EF }
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { delay } from '@xylabs/sdk-js'
|
|
2
|
+
|
|
3
|
+
import { TapjoyBaseEvent } from './BaseEvent'
|
|
4
|
+
class TapjoyStandardEvent<T extends Record<string, unknown>> extends TapjoyBaseEvent<T> {
|
|
5
|
+
async send(data: T) {
|
|
6
|
+
this.ef.track(this.name, data)
|
|
7
|
+
await delay(0)
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export { TapjoyStandardEvent }
|
|
@@ -6,11 +6,14 @@ import {
|
|
|
6
6
|
ViewContentFields,
|
|
7
7
|
} from '@xylabs/pixel'
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
import { FacebookUserEventHandler } from './Facebook'
|
|
10
|
+
import { GoogleUserEventHandler } from './Google'
|
|
11
|
+
|
|
12
|
+
class XyoUserEventHandler<T extends Record<string, unknown>> extends UserEventHandler<T> {
|
|
10
13
|
protected handlers: UserEventHandler<T>[]
|
|
11
14
|
private constructor(handlers: UserEventHandler<T>[] = []) {
|
|
12
15
|
super()
|
|
13
|
-
this.handlers = handlers
|
|
16
|
+
this.handlers = handlers ?? [new FacebookUserEventHandler<T>(), new GoogleUserEventHandler<T>()]
|
|
14
17
|
}
|
|
15
18
|
|
|
16
19
|
async testStarted(data: T | TestStartedFields) {
|
|
@@ -28,6 +31,12 @@ class XyoUserEventHandler<T> extends UserEventHandler<T> {
|
|
|
28
31
|
async userClick(data: T | UserClickFields) {
|
|
29
32
|
await Promise.allSettled(this.handlers.map((handler) => handler.userClick(data)))
|
|
30
33
|
}
|
|
34
|
+
|
|
35
|
+
static instance: XyoUserEventHandler<Record<string, unknown>>
|
|
36
|
+
static get() {
|
|
37
|
+
this.instance = this.instance ?? new XyoUserEventHandler()
|
|
38
|
+
return this.instance
|
|
39
|
+
}
|
|
31
40
|
}
|
|
32
41
|
|
|
33
42
|
export { XyoUserEventHandler }
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { UserEventsContext } from './Context';
|
|
3
|
-
export const UserEventsLoader = ({ userEvents, children }) => {
|
|
4
|
-
return _jsx(UserEventsContext.Provider, Object.assign({ value: { userEvents } }, { children: children }), void 0);
|
|
5
|
-
};
|
|
6
|
-
//# sourceMappingURL=Loader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Loader.js","sourceRoot":"","sources":["../../../src/contexts/UserEvents/Loader.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAM7C,MAAM,CAAC,MAAM,gBAAgB,GAA6B,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE;IACrF,OAAO,KAAC,iBAAiB,CAAC,QAAQ,kBAAC,KAAK,EAAE,EAAE,UAAU,EAAE,gBAAG,QAAQ,YAA8B,CAAA;AACnG,CAAC,CAAA"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { UserEventHandler } from '@xylabs/pixel'
|
|
2
|
-
import React from 'react'
|
|
3
|
-
|
|
4
|
-
import { UserEventsContext } from './Context'
|
|
5
|
-
|
|
6
|
-
interface Props<T> {
|
|
7
|
-
userEvents: UserEventHandler<T>
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export const UserEventsLoader: React.FC<Props<unknown>> = ({ userEvents, children }) => {
|
|
11
|
-
return <UserEventsContext.Provider value={{ userEvents }}>{children}</UserEventsContext.Provider>
|
|
12
|
-
}
|