cloudx-react-native 3.10.0 → 3.11.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/README.md +1 -0
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/cloudxreactnative/CloudXAdEvents.kt +10 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXAdInfo.kt +40 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXNativeAdView.kt +718 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXNativeAdViewManagerImpl.kt +119 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXPackage.kt +4 -1
- package/android/src/main/res/layout/cloudx_rn_native_media_banner_template.xml +100 -0
- package/android/src/main/res/layout/cloudx_rn_native_medium_template.xml +99 -0
- package/android/src/main/res/layout/cloudx_rn_native_small_template.xml +72 -0
- package/android/src/main/res/layout/cloudx_rn_native_vertical_media_template.xml +117 -0
- package/android/src/newarch/com/cloudxreactnative/CloudXModule.kt +1 -0
- package/android/src/newarch/com/cloudxreactnative/CloudXNativeAdViewManager.kt +86 -0
- package/android/src/oldarch/com/cloudxreactnative/CloudXModule.kt +1 -0
- package/android/src/oldarch/com/cloudxreactnative/CloudXNativeAdViewManager.kt +118 -0
- package/cloudx-react-native.podspec +1 -1
- package/ios/CloudX.h +8 -0
- package/ios/CloudX.mm +159 -29
- package/ios/CloudXNativeAdView.h +75 -0
- package/ios/CloudXNativeAdView.mm +979 -0
- package/ios/CloudXNativeAdViewManager.h +12 -0
- package/ios/CloudXNativeAdViewManager.mm +119 -0
- package/lib/commonjs/CloudXAdViewBase.js +8 -97
- package/lib/commonjs/CloudXAdViewBase.js.map +1 -1
- package/lib/commonjs/CloudXNativeAdView.js +331 -0
- package/lib/commonjs/CloudXNativeAdView.js.map +1 -0
- package/lib/commonjs/CloudXNativeAdViewComponents.js +252 -0
- package/lib/commonjs/CloudXNativeAdViewComponents.js.map +1 -0
- package/lib/commonjs/CloudXNativeAdViewProvider.js +117 -0
- package/lib/commonjs/CloudXNativeAdViewProvider.js.map +1 -0
- package/lib/commonjs/extraParameters.js +52 -0
- package/lib/commonjs/extraParameters.js.map +1 -0
- package/lib/commonjs/hooks.js +34 -0
- package/lib/commonjs/hooks.js.map +1 -1
- package/lib/commonjs/index.js +72 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/specs/CloudXNativeAdViewNativeComponent.js +41 -0
- package/lib/commonjs/specs/CloudXNativeAdViewNativeComponent.js.map +1 -0
- package/lib/commonjs/types/NativeAd.js +70 -0
- package/lib/commonjs/types/NativeAd.js.map +1 -0
- package/lib/commonjs/types/index.js +13 -0
- package/lib/commonjs/types/index.js.map +1 -1
- package/lib/commonjs/useCloudXSdkInitialization.js +75 -0
- package/lib/commonjs/useCloudXSdkInitialization.js.map +1 -0
- package/lib/commonjs/version.js +1 -1
- package/lib/module/CloudXAdViewBase.js +7 -96
- package/lib/module/CloudXAdViewBase.js.map +1 -1
- package/lib/module/CloudXNativeAdView.js +324 -0
- package/lib/module/CloudXNativeAdView.js.map +1 -0
- package/lib/module/CloudXNativeAdViewComponents.js +240 -0
- package/lib/module/CloudXNativeAdViewComponents.js.map +1 -0
- package/lib/module/CloudXNativeAdViewProvider.js +110 -0
- package/lib/module/CloudXNativeAdViewProvider.js.map +1 -0
- package/lib/module/extraParameters.js +45 -0
- package/lib/module/extraParameters.js.map +1 -0
- package/lib/module/hooks.js +34 -0
- package/lib/module/hooks.js.map +1 -1
- package/lib/module/index.js +13 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/specs/CloudXNativeAdViewNativeComponent.js +35 -0
- package/lib/module/specs/CloudXNativeAdViewNativeComponent.js.map +1 -0
- package/lib/module/types/NativeAd.js +68 -0
- package/lib/module/types/NativeAd.js.map +1 -0
- package/lib/module/types/index.js +1 -0
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/useCloudXSdkInitialization.js +68 -0
- package/lib/module/useCloudXSdkInitialization.js.map +1 -0
- package/lib/module/version.js +1 -1
- package/lib/typescript/src/CloudXAdViewBase.d.ts.map +1 -1
- package/lib/typescript/src/CloudXNativeAdView.d.ts +24 -0
- package/lib/typescript/src/CloudXNativeAdView.d.ts.map +1 -0
- package/lib/typescript/src/CloudXNativeAdViewComponents.d.ts +67 -0
- package/lib/typescript/src/CloudXNativeAdViewComponents.d.ts.map +1 -0
- package/lib/typescript/src/CloudXNativeAdViewProvider.d.ts +72 -0
- package/lib/typescript/src/CloudXNativeAdViewProvider.d.ts.map +1 -0
- package/lib/typescript/src/extraParameters.d.ts +4 -0
- package/lib/typescript/src/extraParameters.d.ts.map +1 -0
- package/lib/typescript/src/hooks.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +4 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/CloudXNativeAdViewNativeComponent.d.ts +103 -0
- package/lib/typescript/src/specs/CloudXNativeAdViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/types/AdInfo.d.ts +4 -1
- package/lib/typescript/src/types/AdInfo.d.ts.map +1 -1
- package/lib/typescript/src/types/NativeAd.d.ts +114 -0
- package/lib/typescript/src/types/NativeAd.d.ts.map +1 -0
- package/lib/typescript/src/types/index.d.ts +2 -0
- package/lib/typescript/src/types/index.d.ts.map +1 -1
- package/lib/typescript/src/useCloudXSdkInitialization.d.ts +16 -0
- package/lib/typescript/src/useCloudXSdkInitialization.d.ts.map +1 -0
- package/lib/typescript/src/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/CloudXAdViewBase.tsx +8 -125
- package/src/CloudXNativeAdView.tsx +419 -0
- package/src/CloudXNativeAdViewComponents.tsx +203 -0
- package/src/CloudXNativeAdViewProvider.tsx +149 -0
- package/src/extraParameters.ts +65 -0
- package/src/hooks.ts +38 -0
- package/src/index.ts +24 -0
- package/src/specs/CloudXNativeAdViewNativeComponent.ts +137 -0
- package/src/types/AdInfo.ts +5 -1
- package/src/types/NativeAd.ts +125 -0
- package/src/types/index.ts +7 -0
- package/src/useCloudXSdkInitialization.ts +73 -0
- package/src/version.ts +1 -1
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context provider for the manual-render `<CloudXNativeAdView/>` flow.
|
|
3
|
+
*
|
|
4
|
+
* The pre-built asset components (title, advertiser, body, CTA, icon,
|
|
5
|
+
* options, media, star rating) read metadata and refs from this context.
|
|
6
|
+
* The host `<CloudXNativeAdView/>` owns the `setNativeAd` state setter and
|
|
7
|
+
* publishes the latest `CloudXNativeAdMetadata` when `onAdLoaded` fires so
|
|
8
|
+
* pre-built components re-render with the new content.
|
|
9
|
+
*
|
|
10
|
+
* Design notes:
|
|
11
|
+
* - A `starRatingRef` lets the star component participate in the binder
|
|
12
|
+
* pipeline (even though the native side treats it as decorative).
|
|
13
|
+
* - Refs are typed explicitly rather than relying on `any`, so misuse
|
|
14
|
+
* surfaces at compile time.
|
|
15
|
+
* - Adds `registerAssetRole`, called by every pre-built asset component on
|
|
16
|
+
* mount. The host `<CloudXNativeAdView/>` passes `onAssetRoleRegistered`
|
|
17
|
+
* to detect an asset component mounted while `renderMode` is `'template'`
|
|
18
|
+
* — a likely publisher mistake — and warn once.
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
import * as React from 'react';
|
|
22
|
+
import { useCallback, useMemo, useRef, useState, createContext } from 'react';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Shape exposed to pre-built asset components. Consumers typically destructure
|
|
26
|
+
* a single ref + the `nativeAd` field; the setter is only used by the host.
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Default / no-op type mirror. Consumers that mount a pre-built asset view
|
|
31
|
+
* outside a `<CloudXNativeAdView/>` fall through this and render empty —
|
|
32
|
+
* which is preferable to throwing because a publisher might legitimately
|
|
33
|
+
* mount the UI before an ad is ever loaded.
|
|
34
|
+
*/
|
|
35
|
+
const noopRef = {
|
|
36
|
+
current: null
|
|
37
|
+
};
|
|
38
|
+
export const CloudXNativeAdViewContext = /*#__PURE__*/createContext({
|
|
39
|
+
titleRef: noopRef,
|
|
40
|
+
advertiserRef: noopRef,
|
|
41
|
+
bodyRef: noopRef,
|
|
42
|
+
callToActionRef: noopRef,
|
|
43
|
+
iconRef: noopRef,
|
|
44
|
+
optionsRef: noopRef,
|
|
45
|
+
mediaRef: noopRef,
|
|
46
|
+
starRatingRef: noopRef,
|
|
47
|
+
nativeAd: null,
|
|
48
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function -- default/no-op context value; see comment above.
|
|
49
|
+
setNativeAd: () => {},
|
|
50
|
+
registerAssetRole: () => () => {
|
|
51
|
+
/* default/no-op context value; see comment above */
|
|
52
|
+
},
|
|
53
|
+
mountedAssetRoles: {
|
|
54
|
+
current: new Set()
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
/**
|
|
58
|
+
* Wrap this around the root of a `<CloudXNativeAdView/>` tree so descendant
|
|
59
|
+
* asset components share refs and ad state.
|
|
60
|
+
*/
|
|
61
|
+
export const CloudXNativeAdViewProvider = ({
|
|
62
|
+
children,
|
|
63
|
+
onAssetRoleRegistered
|
|
64
|
+
}) => {
|
|
65
|
+
const titleRef = useRef(null);
|
|
66
|
+
const advertiserRef = useRef(null);
|
|
67
|
+
const bodyRef = useRef(null);
|
|
68
|
+
const callToActionRef = useRef(null);
|
|
69
|
+
const iconRef = useRef(null);
|
|
70
|
+
const optionsRef = useRef(null);
|
|
71
|
+
const mediaRef = useRef(null);
|
|
72
|
+
const starRatingRef = useRef(null);
|
|
73
|
+
const [nativeAd, setNativeAd] = useState(null);
|
|
74
|
+
|
|
75
|
+
// Ref so `registerAssetRole` stays referentially stable across renders
|
|
76
|
+
// without forcing callers to memoize `onAssetRoleRegistered`.
|
|
77
|
+
const onAssetRoleRegisteredRef = useRef(onAssetRoleRegistered);
|
|
78
|
+
onAssetRoleRegisteredRef.current = onAssetRoleRegistered;
|
|
79
|
+
|
|
80
|
+
// Mounted roles live in a ref, not state: the host reads them inside its
|
|
81
|
+
// bind effect and must not re-run that effect (which dispatches native
|
|
82
|
+
// commands) just because a sibling asset component mounted.
|
|
83
|
+
const mountedAssetRoles = useRef(new Set());
|
|
84
|
+
const registerAssetRole = useCallback(role => {
|
|
85
|
+
var _onAssetRoleRegistere;
|
|
86
|
+
mountedAssetRoles.current.add(role);
|
|
87
|
+
(_onAssetRoleRegistere = onAssetRoleRegisteredRef.current) === null || _onAssetRoleRegistere === void 0 || _onAssetRoleRegistere.call(onAssetRoleRegisteredRef, role);
|
|
88
|
+
return () => {
|
|
89
|
+
mountedAssetRoles.current.delete(role);
|
|
90
|
+
};
|
|
91
|
+
}, []);
|
|
92
|
+
const value = useMemo(() => ({
|
|
93
|
+
titleRef,
|
|
94
|
+
advertiserRef,
|
|
95
|
+
bodyRef,
|
|
96
|
+
callToActionRef,
|
|
97
|
+
iconRef,
|
|
98
|
+
optionsRef,
|
|
99
|
+
mediaRef,
|
|
100
|
+
starRatingRef,
|
|
101
|
+
nativeAd,
|
|
102
|
+
setNativeAd,
|
|
103
|
+
registerAssetRole,
|
|
104
|
+
mountedAssetRoles
|
|
105
|
+
}), [nativeAd, registerAssetRole]);
|
|
106
|
+
return /*#__PURE__*/React.createElement(CloudXNativeAdViewContext.Provider, {
|
|
107
|
+
value: value
|
|
108
|
+
}, children);
|
|
109
|
+
};
|
|
110
|
+
//# sourceMappingURL=CloudXNativeAdViewProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useCallback","useMemo","useRef","useState","createContext","noopRef","current","CloudXNativeAdViewContext","titleRef","advertiserRef","bodyRef","callToActionRef","iconRef","optionsRef","mediaRef","starRatingRef","nativeAd","setNativeAd","registerAssetRole","mountedAssetRoles","Set","CloudXNativeAdViewProvider","children","onAssetRoleRegistered","onAssetRoleRegisteredRef","role","_onAssetRoleRegistere","add","call","delete","value","createElement","Provider"],"sourceRoot":"../../src","sources":["CloudXNativeAdViewProvider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
const warnIgnoredUndefinedExtraParameter = keyPath => {
|
|
2
|
+
console.warn(`CloudX ad view ignored extra parameter "${keyPath}" because ` + 'undefined values are not supported. Use null when a value is intentional.');
|
|
3
|
+
};
|
|
4
|
+
const normalizeExtraParameterValue = (keyPath, value) => {
|
|
5
|
+
if (value === undefined) {
|
|
6
|
+
warnIgnoredUndefinedExtraParameter(keyPath);
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
if (Array.isArray(value)) {
|
|
10
|
+
return value.reduce((items, item, index) => {
|
|
11
|
+
const normalized = normalizeExtraParameterValue(`${keyPath}[${index}]`, item);
|
|
12
|
+
if (normalized !== undefined) {
|
|
13
|
+
items.push(normalized);
|
|
14
|
+
}
|
|
15
|
+
return items;
|
|
16
|
+
}, []);
|
|
17
|
+
}
|
|
18
|
+
if (value !== null && typeof value === 'object') {
|
|
19
|
+
return Object.entries(value).reduce((object, [childKey, childValue]) => {
|
|
20
|
+
const normalized = normalizeExtraParameterValue(`${keyPath}.${childKey}`, childValue);
|
|
21
|
+
if (normalized !== undefined) {
|
|
22
|
+
object[childKey] = normalized;
|
|
23
|
+
}
|
|
24
|
+
return object;
|
|
25
|
+
}, {});
|
|
26
|
+
}
|
|
27
|
+
return value;
|
|
28
|
+
};
|
|
29
|
+
export const toNativeExtraParameterEntries = extraParameters => {
|
|
30
|
+
if (!extraParameters) {
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
return Object.entries(extraParameters).reduce((entries, [key, value]) => {
|
|
34
|
+
const normalizedValue = normalizeExtraParameterValue(key, value);
|
|
35
|
+
if (normalizedValue === undefined) {
|
|
36
|
+
return entries;
|
|
37
|
+
}
|
|
38
|
+
entries.push({
|
|
39
|
+
key,
|
|
40
|
+
value: normalizedValue
|
|
41
|
+
});
|
|
42
|
+
return entries;
|
|
43
|
+
}, []);
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=extraParameters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["warnIgnoredUndefinedExtraParameter","keyPath","console","warn","normalizeExtraParameterValue","value","undefined","Array","isArray","reduce","items","item","index","normalized","push","Object","entries","object","childKey","childValue","toNativeExtraParameterEntries","extraParameters","key","normalizedValue"],"sourceRoot":"../../src","sources":["extraParameters.ts"],"mappings":"AAGA,MAAMA,kCAAkC,GAAIC,OAAe,IAAW;EAClEC,OAAO,CAACC,IAAI,CACR,2CAA2CF,OAAO,YAAY,GAC1D,2EACR,CAAC;AACL,CAAC;AAED,MAAMG,4BAA4B,GAAGA,CACjCH,OAAe,EACfI,KAAc,KACmC;EACjD,IAAIA,KAAK,KAAKC,SAAS,EAAE;IACrBN,kCAAkC,CAACC,OAAO,CAAC;IAC3C,OAAOK,SAAS;EACpB;EAEA,IAAIC,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,EAAE;IACtB,OAAOA,KAAK,CAACI,MAAM,CAAY,CAACC,KAAK,EAAEC,IAAI,EAAEC,KAAK,KAAK;MACnD,MAAMC,UAAU,GAAGT,4BAA4B,CAAC,GAAGH,OAAO,IAAIW,KAAK,GAAG,EAAED,IAAI,CAAC;MAC7E,IAAIE,UAAU,KAAKP,SAAS,EAAE;QAC1BI,KAAK,CAACI,IAAI,CAACD,UAAU,CAAC;MAC1B;MACA,OAAOH,KAAK;IAChB,CAAC,EAAE,EAAE,CAAC;EACV;EAEA,IAAIL,KAAK,KAAK,IAAI,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7C,OAAOU,MAAM,CAACC,OAAO,CAACX,KAAgC,CAAC,CAACI,MAAM,CAC1D,CAACQ,MAAM,EAAE,CAACC,QAAQ,EAAEC,UAAU,CAAC,KAAK;MAChC,MAAMN,UAAU,GAAGT,4BAA4B,CAAC,GAAGH,OAAO,IAAIiB,QAAQ,EAAE,EAAEC,UAAU,CAAC;MACrF,IAAIN,UAAU,KAAKP,SAAS,EAAE;QAC1BW,MAAM,CAACC,QAAQ,CAAC,GAAGL,UAAU;MACjC;MACA,OAAOI,MAAM;IACjB,CAAC,EACD,CAAC,CACL,CAAC;EACL;EAEA,OAAOZ,KAAK;AAChB,CAAC;AAED,OAAO,MAAMe,6BAA6B,GACtCC,eAAkD,IACP;EAC3C,IAAI,CAACA,eAAe,EAAE;IAClB,OAAO,EAAE;EACb;EAEA,OAAON,MAAM,CAACC,OAAO,CAACK,eAA0C,CAAC,CAACZ,MAAM,CACpE,CAACO,OAAO,EAAE,CAACM,GAAG,EAAEjB,KAAK,CAAC,KAAK;IACvB,MAAMkB,eAAe,GAAGnB,4BAA4B,CAACkB,GAAG,EAAEjB,KAAK,CAAC;IAChE,IAAIkB,eAAe,KAAKjB,SAAS,EAAE;MAC/B,OAAOU,OAAO;IAClB;IAEAA,OAAO,CAACF,IAAI,CAAC;MAAEQ,GAAG;MAAEjB,KAAK,EAAEkB;IAAgB,CAAC,CAAC;IAC7C,OAAOP,OAAO;EAClB,CAAC,EACD,EACJ,CAAC;AACL,CAAC","ignoreList":[]}
|
package/lib/module/hooks.js
CHANGED
|
@@ -42,6 +42,15 @@ export function useCloudXInterstitial(adUnitId) {
|
|
|
42
42
|
const mountedRef = useRef(true);
|
|
43
43
|
useEffect(() => {
|
|
44
44
|
mountedRef.current = true;
|
|
45
|
+
|
|
46
|
+
// A changed adUnitId must not keep reporting the previous unit's
|
|
47
|
+
// result: without this, isLoaded stays true for an ad unit that
|
|
48
|
+
// has not loaded until the new unit happens to emit. isLoading is
|
|
49
|
+
// reset too, because the cleanup below destroys the in-flight
|
|
50
|
+
// request and no load/fail event for it will ever arrive.
|
|
51
|
+
setIsLoaded(false);
|
|
52
|
+
setIsLoading(false);
|
|
53
|
+
setError(null);
|
|
45
54
|
const subs = [];
|
|
46
55
|
subs.push(emitter.addListener(ON_INTERSTITIAL_LOADED_EVENT, event => {
|
|
47
56
|
if (event.adUnitId === adUnitId && mountedRef.current) {
|
|
@@ -118,6 +127,15 @@ export function useCloudXAppOpen(adUnitId) {
|
|
|
118
127
|
const mountedRef = useRef(true);
|
|
119
128
|
useEffect(() => {
|
|
120
129
|
mountedRef.current = true;
|
|
130
|
+
|
|
131
|
+
// A changed adUnitId must not keep reporting the previous unit's
|
|
132
|
+
// result: without this, isLoaded stays true for an ad unit that
|
|
133
|
+
// has not loaded until the new unit happens to emit. isLoading is
|
|
134
|
+
// reset too, because the cleanup below destroys the in-flight
|
|
135
|
+
// request and no load/fail event for it will ever arrive.
|
|
136
|
+
setIsLoaded(false);
|
|
137
|
+
setIsLoading(false);
|
|
138
|
+
setError(null);
|
|
121
139
|
const subs = [];
|
|
122
140
|
subs.push(emitter.addListener(ON_APPOPEN_LOADED_EVENT, event => {
|
|
123
141
|
if (event.adUnitId === adUnitId && mountedRef.current) {
|
|
@@ -195,6 +213,16 @@ export function useCloudXRewarded(adUnitId) {
|
|
|
195
213
|
const mountedRef = useRef(true);
|
|
196
214
|
useEffect(() => {
|
|
197
215
|
mountedRef.current = true;
|
|
216
|
+
|
|
217
|
+
// A changed adUnitId must not keep reporting the previous unit's
|
|
218
|
+
// result: without this, isLoaded stays true for an ad unit that
|
|
219
|
+
// has not loaded until the new unit happens to emit. isLoading is
|
|
220
|
+
// reset too, because the cleanup below destroys the in-flight
|
|
221
|
+
// request and no load/fail event for it will ever arrive.
|
|
222
|
+
setIsLoaded(false);
|
|
223
|
+
setIsLoading(false);
|
|
224
|
+
setError(null);
|
|
225
|
+
setRewardEarned(false);
|
|
198
226
|
const subs = [];
|
|
199
227
|
subs.push(emitter.addListener(ON_REWARDED_AD_LOADED_EVENT, event => {
|
|
200
228
|
if (event.adUnitId === adUnitId && mountedRef.current) {
|
|
@@ -282,6 +310,12 @@ export function useCloudXBanner(adUnitId) {
|
|
|
282
310
|
const mountedRef = useRef(true);
|
|
283
311
|
useEffect(() => {
|
|
284
312
|
mountedRef.current = true;
|
|
313
|
+
|
|
314
|
+
// A changed adUnitId must not keep reporting the previous unit's
|
|
315
|
+
// result: without this, isLoaded stays true for an ad unit that
|
|
316
|
+
// has not loaded until the new unit happens to emit.
|
|
317
|
+
setIsLoaded(false);
|
|
318
|
+
setError(null);
|
|
285
319
|
const subs = [];
|
|
286
320
|
subs.push(emitter.addListener(ON_BANNER_AD_LOADED_EVENT, event => {
|
|
287
321
|
if (event.adUnitId === adUnitId && mountedRef.current) {
|
package/lib/module/hooks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useState","useCallback","useRef","NativeCloudX","emitter","ON_INTERSTITIAL_LOADED_EVENT","ON_INTERSTITIAL_LOAD_FAILED_EVENT","ON_INTERSTITIAL_DISPLAY_FAILED_EVENT","ON_INTERSTITIAL_HIDDEN_EVENT","ON_APPOPEN_LOADED_EVENT","ON_APPOPEN_LOAD_FAILED_EVENT","ON_APPOPEN_DISPLAY_FAILED_EVENT","ON_APPOPEN_HIDDEN_EVENT","ON_REWARDED_AD_LOADED_EVENT","ON_REWARDED_AD_LOAD_FAILED_EVENT","ON_REWARDED_AD_DISPLAY_FAILED_EVENT","ON_REWARDED_AD_HIDDEN_EVENT","ON_REWARDED_AD_RECEIVED_REWARD_EVENT","ON_BANNER_AD_LOADED_EVENT","ON_BANNER_AD_LOAD_FAILED_EVENT","getConstants","useCloudXInterstitial","adUnitId","isLoaded","setIsLoaded","isLoading","setIsLoading","error","setError","mountedRef","current","subs","push","addListener","event","message","forEach","s","remove","destroyInterstitial","load","loadInterstitial","show","placement","customData","showInterstitial","undefined","destroy","useCloudXAppOpen","destroyAppOpen","loadAppOpen","showAppOpen","useCloudXRewarded","rewardEarned","setRewardEarned","destroyRewarded","loadRewarded","showRewarded","useCloudXBanner","destroyBanner"],"sourceRoot":"../../src","sources":["hooks.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useEffect","useState","useCallback","useRef","NativeCloudX","emitter","ON_INTERSTITIAL_LOADED_EVENT","ON_INTERSTITIAL_LOAD_FAILED_EVENT","ON_INTERSTITIAL_DISPLAY_FAILED_EVENT","ON_INTERSTITIAL_HIDDEN_EVENT","ON_APPOPEN_LOADED_EVENT","ON_APPOPEN_LOAD_FAILED_EVENT","ON_APPOPEN_DISPLAY_FAILED_EVENT","ON_APPOPEN_HIDDEN_EVENT","ON_REWARDED_AD_LOADED_EVENT","ON_REWARDED_AD_LOAD_FAILED_EVENT","ON_REWARDED_AD_DISPLAY_FAILED_EVENT","ON_REWARDED_AD_HIDDEN_EVENT","ON_REWARDED_AD_RECEIVED_REWARD_EVENT","ON_BANNER_AD_LOADED_EVENT","ON_BANNER_AD_LOAD_FAILED_EVENT","getConstants","useCloudXInterstitial","adUnitId","isLoaded","setIsLoaded","isLoading","setIsLoading","error","setError","mountedRef","current","subs","push","addListener","event","message","forEach","s","remove","destroyInterstitial","load","loadInterstitial","show","placement","customData","showInterstitial","undefined","destroy","useCloudXAppOpen","destroyAppOpen","loadAppOpen","showAppOpen","useCloudXRewarded","rewardEarned","setRewardEarned","destroyRewarded","loadRewarded","showRewarded","useCloudXBanner","destroyBanner"],"sourceRoot":"../../src","sources":["hooks.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -19,6 +19,17 @@ export { CloudXAdPosition } from './CloudXAdPosition';
|
|
|
19
19
|
// Ad View Components (in-tree; layer correctly under app overlays)
|
|
20
20
|
export { CloudXBannerView } from './CloudXBannerView';
|
|
21
21
|
export { CloudXMRECView } from './CloudXMRECView';
|
|
22
|
+
export { CloudXNativeAdView } from './CloudXNativeAdView';
|
|
23
|
+
export { CloudXTitleView, CloudXAdvertiserView, CloudXBodyView, CloudXCallToActionView, CloudXIconView, CloudXOptionsView, CloudXMediaView, CloudXStarRatingView } from './CloudXNativeAdViewComponents';
|
|
24
|
+
// Exposed so publishers can build fully custom manual layouts that consume
|
|
25
|
+
// the loaded-ad context outside the bundled asset components.
|
|
26
|
+
// The provider, its context and the context value type are deliberately NOT
|
|
27
|
+
// public. The host `<CloudXNativeAdView/>` always mounts its own provider: one
|
|
28
|
+
// mounted outside it is ignored, and one mounted inside it breaks binding for
|
|
29
|
+
// the asset components beneath. Exporting the value type would also freeze
|
|
30
|
+
// `setNativeAd` and every asset ref as public API. Widening this surface later
|
|
31
|
+
// is additive; removing it after release would be a breaking change.
|
|
32
|
+
|
|
22
33
|
// Error Codes
|
|
23
34
|
export { CloudXErrorCode } from './CloudXErrorCode';
|
|
24
35
|
|
|
@@ -30,6 +41,8 @@ export { useCloudXInterstitial, useCloudXAppOpen, useCloudXRewarded, useCloudXBa
|
|
|
30
41
|
|
|
31
42
|
// Types
|
|
32
43
|
|
|
44
|
+
export { CloudXNativeTemplate } from './types';
|
|
45
|
+
|
|
33
46
|
// Log level constants
|
|
34
47
|
export const CloudXLogLevel = {
|
|
35
48
|
VERBOSE: 'verbose',
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["default","CloudX","NativeCloudX","emitter","cloudXEventEmitter","CloudXArbiterBid","CloudXRevenuePlatform","CloudXRevenuePrecision","CloudXInterstitialAd","CloudXAppOpenAd","CloudXRewardedAd","CloudXBannerAd","CloudXMRECAd","CloudXAdPosition","CloudXBannerView","CloudXMRECView","CloudXErrorCode","requestTrackingAuthorization","getTrackingAuthorizationStatus","CloudXATTStatus","useCloudXInterstitial","useCloudXAppOpen","useCloudXRewarded","useCloudXBanner","CloudXLogLevel","VERBOSE","DEBUG","INFO","WARN","ERROR","NONE"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA;AACA,SAASA,OAAO,EAAEC,MAAM,QAAQ,UAAU;AAC1C,SAASD,OAAO,IAAIE,YAAY,QAAQ,sBAAsB;AAC9D;AACA;AACA;AACA,SAASC,OAAO,IAAIC,kBAAkB,QAAQ,gBAAgB;AAC9D,SAASC,gBAAgB,QAAQ,iBAAiB;AAClD,SAASC,qBAAqB,EAAEC,sBAAsB,QAAQ,qBAAqB;;AAEnF;AACA,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,gBAAgB,QAAQ,oBAAoB;;AAErD;AACA,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,cAAc,QAAQ,kBAAkB;
|
|
1
|
+
{"version":3,"names":["default","CloudX","NativeCloudX","emitter","cloudXEventEmitter","CloudXArbiterBid","CloudXRevenuePlatform","CloudXRevenuePrecision","CloudXInterstitialAd","CloudXAppOpenAd","CloudXRewardedAd","CloudXBannerAd","CloudXMRECAd","CloudXAdPosition","CloudXBannerView","CloudXMRECView","CloudXNativeAdView","CloudXTitleView","CloudXAdvertiserView","CloudXBodyView","CloudXCallToActionView","CloudXIconView","CloudXOptionsView","CloudXMediaView","CloudXStarRatingView","CloudXErrorCode","requestTrackingAuthorization","getTrackingAuthorizationStatus","CloudXATTStatus","useCloudXInterstitial","useCloudXAppOpen","useCloudXRewarded","useCloudXBanner","CloudXNativeTemplate","CloudXLogLevel","VERBOSE","DEBUG","INFO","WARN","ERROR","NONE"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"AAAA;AACA,SAASA,OAAO,EAAEC,MAAM,QAAQ,UAAU;AAC1C,SAASD,OAAO,IAAIE,YAAY,QAAQ,sBAAsB;AAC9D;AACA;AACA;AACA,SAASC,OAAO,IAAIC,kBAAkB,QAAQ,gBAAgB;AAC9D,SAASC,gBAAgB,QAAQ,iBAAiB;AAClD,SAASC,qBAAqB,EAAEC,sBAAsB,QAAQ,qBAAqB;;AAEnF;AACA,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,eAAe,QAAQ,mBAAmB;AACnD,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,gBAAgB,QAAQ,oBAAoB;;AAErD;AACA,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SACIC,eAAe,EACfC,oBAAoB,EACpBC,cAAc,EACdC,sBAAsB,EACtBC,cAAc,EACdC,iBAAiB,EACjBC,eAAe,EACfC,oBAAoB,QACjB,gCAAgC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA;AACA,SAASC,eAAe,QAAQ,mBAAmB;;AAEnD;AACA,SAASC,4BAA4B,EAAEC,8BAA8B,EAAEC,eAAe,QAAQ,2BAA2B;;AAEzH;AACA,SAASC,qBAAqB,EAAEC,gBAAgB,EAAEC,iBAAiB,EAAEC,eAAe,QAAQ,SAAS;;AAQrG;;AAuCA,SAASC,oBAAoB,QAAQ,SAAS;;AAE9C;AACA,OAAO,MAAMC,cAAc,GAAG;EAC1BC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,OAAO;EACdC,IAAI,EAAE,MAAM;EACZC,IAAI,EAAE,MAAM;EACZC,KAAK,EAAE,OAAO;EACdC,IAAI,EAAE;AACV,CAAU","ignoreList":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
|
|
2
|
+
import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Payload for native-ad lifecycle events (load, click, revenue).
|
|
6
|
+
*
|
|
7
|
+
* Codegen cannot express `Record<string, string>`, so the SDK-owned ad values
|
|
8
|
+
* are delivered as a JSON-encoded string in `adValuesJson` (mirroring
|
|
9
|
+
* CloudXAdViewNativeComponent) and re-parsed into a map by the JS wrapper.
|
|
10
|
+
* The loaded native ad's own metadata (title, media, icon, etc.) is likewise
|
|
11
|
+
* delivered as a JSON-encoded string in `nativeAdJson`, since codegen cannot
|
|
12
|
+
* express the native ad's heterogeneous field set as typed props.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Payload for native-ad load/display-failure events.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Props for the native CloudXNativeAdView component.
|
|
21
|
+
*
|
|
22
|
+
* Mirrors the in-tree CloudXAdView (banner/MREC) component: the ad renders as
|
|
23
|
+
* an ordinary React Native view so publisher overlays layer above it via
|
|
24
|
+
* normal RN z-ordering.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
export const Commands = codegenNativeCommands({
|
|
28
|
+
supportedCommands: ['loadAd', 'destroyAd', 'updateAssetView', 'renderNativeAd']
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Native in-tree view component backing the publisher-facing native ad view.
|
|
33
|
+
*/
|
|
34
|
+
export default codegenNativeComponent('CloudXNativeAdView');
|
|
35
|
+
//# sourceMappingURL=CloudXNativeAdViewNativeComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["codegenNativeComponent","codegenNativeCommands","Commands","supportedCommands"],"sourceRoot":"../../../src","sources":["specs/CloudXNativeAdViewNativeComponent.ts"],"mappings":"AAQA,OAAOA,sBAAsB,MAAM,yDAAyD;AAC5F,OAAOC,qBAAqB,MAAM,wDAAwD;;AAE1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAaA;AACA;AACA;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA;;AA4EA,OAAO,MAAMC,QAAwB,GAAGD,qBAAqB,CAAiB;EAC1EE,iBAAiB,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB;AAClF,CAAC,CAAC;;AAEF;AACA;AACA;AACA,eAAeH,sBAAsB,CAAc,oBAAoB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Built-in native ad template variants rendered by the SDK's view component.
|
|
3
|
+
*
|
|
4
|
+
* All four variants have a distinct bundled layout on both iOS and Android,
|
|
5
|
+
* and unknown values fall back to `MEDIUM` on both.
|
|
6
|
+
*
|
|
7
|
+
* On both platforms this prop selects the **local layout only**. Neither
|
|
8
|
+
* bid request carries the selection, so the server sizes the creative's
|
|
9
|
+
* assets for `medium` whatever is chosen here:
|
|
10
|
+
*
|
|
11
|
+
* - iOS: `CLXNativeAdLoader` builds its publisher with
|
|
12
|
+
* `CLXNativeTemplateDefault`, which is `CLXNativeTemplateMedium`.
|
|
13
|
+
* `CLXBidSignals` would thread a non-default template, but the loader
|
|
14
|
+
* never supplies one.
|
|
15
|
+
* - Android: `BidSignalsProvider` writes `nativeRequirements.template`
|
|
16
|
+
* as a fixed `"medium"`, pending a public template-selection API.
|
|
17
|
+
*
|
|
18
|
+
* A creative rendered in a non-`MEDIUM` layout therefore carries assets cut
|
|
19
|
+
* for `MEDIUM` — most visible with `VERTICAL_MEDIA`, the full-screen shape.
|
|
20
|
+
* Tracked as CXD-5385.
|
|
21
|
+
*/
|
|
22
|
+
export let CloudXNativeTemplate = /*#__PURE__*/function (CloudXNativeTemplate) {
|
|
23
|
+
/** 320x90 compact template: icon, title, advertiser, CTA. */
|
|
24
|
+
CloudXNativeTemplate["SMALL"] = "small_template";
|
|
25
|
+
/** 320x250 template. */
|
|
26
|
+
CloudXNativeTemplate["MEDIUM"] = "medium_template";
|
|
27
|
+
/** 320x300 media-forward template. */
|
|
28
|
+
CloudXNativeTemplate["MEDIA_BANNER"] = "media_banner_template";
|
|
29
|
+
/**
|
|
30
|
+
* Full-screen vertical template sized to the available bounds.
|
|
31
|
+
* Intended for feed-style vertical experiences. Bundled layout on both
|
|
32
|
+
* iOS and Android.
|
|
33
|
+
*/
|
|
34
|
+
CloudXNativeTemplate["VERTICAL_MEDIA"] = "vertical_media_template";
|
|
35
|
+
return CloudXNativeTemplate;
|
|
36
|
+
}({});
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Type-safe asset identifiers for custom native-ad binding.
|
|
40
|
+
*/
|
|
41
|
+
export let CloudXNativeAssetType = /*#__PURE__*/function (CloudXNativeAssetType) {
|
|
42
|
+
CloudXNativeAssetType["TITLE"] = "TitleView";
|
|
43
|
+
CloudXNativeAssetType["ADVERTISER"] = "AdvertiserView";
|
|
44
|
+
CloudXNativeAssetType["BODY"] = "BodyView";
|
|
45
|
+
CloudXNativeAssetType["CALL_TO_ACTION"] = "CallToActionView";
|
|
46
|
+
CloudXNativeAssetType["ICON"] = "IconView";
|
|
47
|
+
CloudXNativeAssetType["OPTIONS"] = "OptionsView";
|
|
48
|
+
CloudXNativeAssetType["MEDIA"] = "MediaView";
|
|
49
|
+
CloudXNativeAssetType["STAR_RATING"] = "StarRatingView";
|
|
50
|
+
return CloudXNativeAssetType;
|
|
51
|
+
}({});
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Structured metadata for a single loaded native ad.
|
|
55
|
+
*
|
|
56
|
+
* Surfaced on the `onAdLoaded` callback as `CloudXAdInfo.nativeAd`.
|
|
57
|
+
*/
|
|
58
|
+
|
|
59
|
+
// Shares one value type with `extraParameters`: both native setters accept any
|
|
60
|
+
// value, so narrowing one of the two sibling props was an accidental restriction.
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Props for the native-ad view component.
|
|
64
|
+
*
|
|
65
|
+
* Callbacks inherited from {@link CloudXAdProps} (`onAdLoaded`, `onAdLoadFailed`,
|
|
66
|
+
* `onAdClicked`, `onAdRevenuePaid`) receive unwrapped payloads, not synthetic events.
|
|
67
|
+
*/
|
|
68
|
+
//# sourceMappingURL=NativeAd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CloudXNativeTemplate","CloudXNativeAssetType"],"sourceRoot":"../../../src","sources":["types/NativeAd.ts"],"mappings":"AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAYA,oBAAoB,0BAApBA,oBAAoB;EAC5B;EADQA,oBAAoB;EAI5B;EAJQA,oBAAoB;EAO5B;EAPQA,oBAAoB;EAU5B;AACJ;AACA;AACA;AACA;EAdYA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;;AAkBhC;AACA;AACA;AACA,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;;AAWjC;AACA;AACA;AACA;AACA;;AAkBA;AACA;;AAKA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CloudXRevenuePlatform","CloudXRevenuePrecision"],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"AAeA,SAASA,qBAAqB,EAAEC,sBAAsB,QAAQ,eAAe","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["CloudXRevenuePlatform","CloudXRevenuePrecision","CloudXNativeTemplate","CloudXNativeAssetType"],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"AAeA,SAASA,qBAAqB,EAAEC,sBAAsB,QAAQ,eAAe;AAkB7E,SAASC,oBAAoB,EAAEC,qBAAqB,QAAQ,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { useEffect, useState } from 'react';
|
|
2
|
+
import NativeCloudX from './specs/NativeCloudX';
|
|
3
|
+
|
|
4
|
+
/*
|
|
5
|
+
* Once the SDK reports initialized it stays initialized for the JS VM's life,
|
|
6
|
+
* so cache it module-wide: only the first ad view mounted before init has to
|
|
7
|
+
* poll + show a placeholder; every later mount (banner, MREC, or native)
|
|
8
|
+
* renders its native view immediately.
|
|
9
|
+
*/
|
|
10
|
+
let cachedIsInitialized = false;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Polls CloudX SDK initialization state and caches the result module-wide.
|
|
14
|
+
*
|
|
15
|
+
* Shared by `CloudXAdViewBase` (banner/MREC) and `CloudXNativeAdView` so
|
|
16
|
+
* every in-tree ad-view component gates native-view creation on SDK
|
|
17
|
+
* initialization identically: a view mounted before `CloudX.initialize()`
|
|
18
|
+
* completes would create its native ad against an uninitialized SDK, which
|
|
19
|
+
* on iOS returns nil and leaves the view permanently dead (no retry, no
|
|
20
|
+
* load-failed event). There is no init event to subscribe to, so poll
|
|
21
|
+
* `isInitialized()` until ready.
|
|
22
|
+
*
|
|
23
|
+
* @param componentName Used only in the console warnings, so callers can
|
|
24
|
+
* tell which component is waiting on initialization.
|
|
25
|
+
*/
|
|
26
|
+
export const useCloudXSdkInitializationGate = componentName => {
|
|
27
|
+
const [isInitialized, setIsInitialized] = useState(cachedIsInitialized);
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
if (cachedIsInitialized) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
let cancelled = false;
|
|
33
|
+
let timer;
|
|
34
|
+
let warnedOnce = false;
|
|
35
|
+
const check = () => {
|
|
36
|
+
NativeCloudX.isInitialized().then(ready => {
|
|
37
|
+
if (cancelled) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
if (ready) {
|
|
41
|
+
cachedIsInitialized = true;
|
|
42
|
+
setIsInitialized(true);
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
if (!warnedOnce) {
|
|
46
|
+
warnedOnce = true;
|
|
47
|
+
console.warn(`${componentName} mounted before CloudX SDK initialization; will render once initialize() completes.`);
|
|
48
|
+
}
|
|
49
|
+
timer = setTimeout(check, 1000);
|
|
50
|
+
}).catch(error => {
|
|
51
|
+
if (cancelled) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
console.warn(`${componentName} failed to read initialization state:`, error);
|
|
55
|
+
timer = setTimeout(check, 1000);
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
check();
|
|
59
|
+
return () => {
|
|
60
|
+
cancelled = true;
|
|
61
|
+
if (timer) {
|
|
62
|
+
clearTimeout(timer);
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
}, [componentName]);
|
|
66
|
+
return isInitialized;
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=useCloudXSdkInitialization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useState","NativeCloudX","cachedIsInitialized","useCloudXSdkInitializationGate","componentName","isInitialized","setIsInitialized","cancelled","timer","warnedOnce","check","then","ready","console","warn","setTimeout","catch","error","clearTimeout"],"sourceRoot":"../../src","sources":["useCloudXSdkInitialization.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,OAAOC,YAAY,MAAM,sBAAsB;;AAE/C;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,mBAAmB,GAAG,KAAK;;AAE/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,8BAA8B,GAAIC,aAAqB,IAAc;EAC9E,MAAM,CAACC,aAAa,EAAEC,gBAAgB,CAAC,GAAGN,QAAQ,CAACE,mBAAmB,CAAC;EAEvEH,SAAS,CAAC,MAAM;IACZ,IAAIG,mBAAmB,EAAE;MACrB;IACJ;IACA,IAAIK,SAAS,GAAG,KAAK;IACrB,IAAIC,KAAgD;IACpD,IAAIC,UAAU,GAAG,KAAK;IACtB,MAAMC,KAAK,GAAGA,CAAA,KAAM;MAChBT,YAAY,CAACI,aAAa,CAAC,CAAC,CACvBM,IAAI,CAAEC,KAAK,IAAK;QACb,IAAIL,SAAS,EAAE;UACX;QACJ;QACA,IAAIK,KAAK,EAAE;UACPV,mBAAmB,GAAG,IAAI;UAC1BI,gBAAgB,CAAC,IAAI,CAAC;UACtB;QACJ;QACA,IAAI,CAACG,UAAU,EAAE;UACbA,UAAU,GAAG,IAAI;UACjBI,OAAO,CAACC,IAAI,CACR,GAAGV,aAAa,qFACpB,CAAC;QACL;QACAI,KAAK,GAAGO,UAAU,CAACL,KAAK,EAAE,IAAI,CAAC;MACnC,CAAC,CAAC,CACDM,KAAK,CAAEC,KAAK,IAAK;QACd,IAAIV,SAAS,EAAE;UACX;QACJ;QACAM,OAAO,CAACC,IAAI,CAAC,GAAGV,aAAa,uCAAuC,EAAEa,KAAK,CAAC;QAC5ET,KAAK,GAAGO,UAAU,CAACL,KAAK,EAAE,IAAI,CAAC;MACnC,CAAC,CAAC;IACV,CAAC;IACDA,KAAK,CAAC,CAAC;IACP,OAAO,MAAM;MACTH,SAAS,GAAG,IAAI;MAChB,IAAIC,KAAK,EAAE;QACPU,YAAY,CAACV,KAAK,CAAC;MACvB;IACJ,CAAC;EACL,CAAC,EAAE,CAACJ,aAAa,CAAC,CAAC;EAEnB,OAAOC,aAAa;AACxB,CAAC","ignoreList":[]}
|
package/lib/module/version.js
CHANGED
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
// This value is reported to the native SDK in CloudX.initialize() and is used
|
|
4
4
|
// for wrapper-version telemetry/attribution, so a stale value mis-attributes
|
|
5
5
|
// installs to the wrong release.
|
|
6
|
-
export const PLUGIN_VERSION = '3.
|
|
6
|
+
export const PLUGIN_VERSION = '3.11.0';
|
|
7
7
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloudXAdViewBase.d.ts","sourceRoot":"","sources":["../../../src/CloudXAdViewBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,KAAK,EAAmC,SAAS,EAAa,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"CloudXAdViewBase.d.ts","sourceRoot":"","sources":["../../../src/CloudXAdViewBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,KAAK,EAAmC,SAAS,EAAa,MAAM,cAAc,CAAC;AAK1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEnD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,SAAS,CAAC;AAE1D,iFAAiF;AACjF,KAAK,qBAAqB,GAAG,iBAAiB,GAAG;IAC7C,QAAQ,EAAE,kBAAkB,CAAC;CAChC,CAAC;AA4CF;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAkG5D,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { CloudXNativeAdViewHandle } from './types/NativeAd';
|
|
3
|
+
import type { CloudXAdDisplayFailedInfo, CloudXAdInfo } from './types/AdInfo';
|
|
4
|
+
/**
|
|
5
|
+
* Renders a native ad. Defaults to the SDK's bundled template layouts;
|
|
6
|
+
* set `renderMode="manual"` to drive layout through the pre-built asset
|
|
7
|
+
* components (`CloudXTitleView`, `CloudXMediaView`, etc.) instead.
|
|
8
|
+
*
|
|
9
|
+
* Manual mode is never inferred from the presence of children — `renderMode`
|
|
10
|
+
* is always explicit so a publisher's intent is visible at the call site.
|
|
11
|
+
*/
|
|
12
|
+
export declare const CloudXNativeAdView: React.ForwardRefExoticComponent<import("./types").CloudXAdProps & import("react-native").ViewProps & {
|
|
13
|
+
template?: import("./types/NativeAd").CloudXNativeTemplate;
|
|
14
|
+
localExtraParameters?: import("./types/NativeAd").CloudXLocalExtraParameters;
|
|
15
|
+
disableVideoFullScreen?: boolean;
|
|
16
|
+
startVideoUnmuted?: boolean;
|
|
17
|
+
hideVideoMediaControls?: boolean;
|
|
18
|
+
renderMode?: "template" | "manual";
|
|
19
|
+
onAdDisplayFailed?: (errorInfo: CloudXAdDisplayFailedInfo) => void;
|
|
20
|
+
onAdExpired?: (adInfo: CloudXAdInfo) => void;
|
|
21
|
+
onAdClosed?: (adInfo: CloudXAdInfo) => void;
|
|
22
|
+
} & React.RefAttributes<CloudXNativeAdViewHandle>>;
|
|
23
|
+
export default CloudXNativeAdView;
|
|
24
|
+
//# sourceMappingURL=CloudXNativeAdView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CloudXNativeAdView.d.ts","sourceRoot":"","sources":["../../../src/CloudXNativeAdView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAA0B,wBAAwB,EAA2B,MAAM,kBAAkB,CAAC;AAClH,OAAO,KAAK,EAAE,yBAAyB,EAAE,YAAY,EAA0B,MAAM,gBAAgB,CAAC;AAoDtG;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;kDAqD9B,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pre-built asset components for the manual-render `<CloudXNativeAdView/>`
|
|
3
|
+
* flow. Each component reads its content + ref from
|
|
4
|
+
* @{link CloudXNativeAdViewContext} and renders a minimal RN primitive so the
|
|
5
|
+
* publisher can style it with `style` / `textStyle` props without reaching
|
|
6
|
+
* into SDK internals.
|
|
7
|
+
*
|
|
8
|
+
* Mount these as descendants of a `<CloudXNativeAdView/>`. A component
|
|
9
|
+
* mounted outside the provider renders empty rather than throwing, so
|
|
10
|
+
* publisher layouts can be shown before the first ad loads. Each component
|
|
11
|
+
* calls `registerAssetRole` on mount so the host view can warn if it is used
|
|
12
|
+
* while `renderMode` is `'template'` (see CloudXNativeAdViewProvider).
|
|
13
|
+
*/
|
|
14
|
+
import * as React from 'react';
|
|
15
|
+
import type { ImageProps, TextProps, ViewProps } from 'react-native';
|
|
16
|
+
/** Renders the headline. */
|
|
17
|
+
export declare const CloudXTitleView: React.FC<TextProps>;
|
|
18
|
+
/** Renders the advertiser / sponsor name. */
|
|
19
|
+
export declare const CloudXAdvertiserView: React.FC<TextProps>;
|
|
20
|
+
/** Renders the body / description copy. */
|
|
21
|
+
export declare const CloudXBodyView: React.FC<TextProps>;
|
|
22
|
+
/**
|
|
23
|
+
* Renders the call-to-action label.
|
|
24
|
+
*
|
|
25
|
+
* iOS wraps the Text in a TouchableOpacity so publishers get the standard
|
|
26
|
+
* press-feedback animation; the Text ref is what the native bridge tags,
|
|
27
|
+
* and UIKit's touch dispatch lets the SDK's gesture recognizer run.
|
|
28
|
+
*
|
|
29
|
+
* Android renders a bare Text. RN's gesture responder system treats a
|
|
30
|
+
* wrapping TouchableOpacity as a touch-capturing ancestor, which blocks
|
|
31
|
+
* the OnClickListener the 3P SDK installs on the Text when registering
|
|
32
|
+
* it for click handling. Without the wrapper, the SDK-set listener
|
|
33
|
+
* receives the tap normally.
|
|
34
|
+
*/
|
|
35
|
+
export declare const CloudXCallToActionView: React.FC<TextProps>;
|
|
36
|
+
/**
|
|
37
|
+
* Renders the icon. Prefers the remote URL when available (fast CDN fetch),
|
|
38
|
+
* falling back to the base64-encoded bytes surfaced by the bridge for
|
|
39
|
+
* adapters that only ship a pre-loaded drawable.
|
|
40
|
+
*/
|
|
41
|
+
export declare const CloudXIconView: React.FC<Omit<ImageProps, 'source'>>;
|
|
42
|
+
/**
|
|
43
|
+
* Renders the ad-choices / options container. The adapter's actual options
|
|
44
|
+
* view is inserted as a native child of this element by the bridge.
|
|
45
|
+
*/
|
|
46
|
+
export declare const CloudXOptionsView: React.FC<ViewProps>;
|
|
47
|
+
/**
|
|
48
|
+
* Renders the media container. The adapter's media view (static image or
|
|
49
|
+
* video surface) is inserted as a native child of this element by the
|
|
50
|
+
* bridge.
|
|
51
|
+
*/
|
|
52
|
+
export declare const CloudXMediaView: React.FC<ViewProps>;
|
|
53
|
+
type StarRatingViewProps = ViewProps & {
|
|
54
|
+
/** Color for filled stars. Defaults to #ffe234. */
|
|
55
|
+
color?: string;
|
|
56
|
+
/** Color for empty stars. Defaults to #dedede. */
|
|
57
|
+
shadowColor?: string;
|
|
58
|
+
/** Star size in points. Defaults to 10. */
|
|
59
|
+
size?: number;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Renders the star rating using Unicode glyphs. Partial fractions are
|
|
63
|
+
* clipped so a 3.5-star rating displays as 3.5 stars.
|
|
64
|
+
*/
|
|
65
|
+
export declare const CloudXStarRatingView: React.FC<StarRatingViewProps>;
|
|
66
|
+
export {};
|
|
67
|
+
//# sourceMappingURL=CloudXNativeAdViewComponents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CloudXNativeAdViewComponents.d.ts","sourceRoot":"","sources":["../../../src/CloudXNativeAdViewComponents.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAWrE,4BAA4B;AAC5B,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAQ/C,CAAC;AAEF,6CAA6C;AAC7C,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAQpD,CAAC;AAEF,2CAA2C;AAC3C,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAQ9C,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAgBtD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAiB/D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAQjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAQ/C,CAAC;AAEF,KAAK,mBAAmB,GAAG,SAAS,GAAG;IACnC,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAiC9D,CAAC"}
|