cloudx-react-native 3.10.1 → 3.11.1
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/android/build.gradle +1 -1
- package/android/src/main/java/com/cloudxreactnative/CloudXAdEvents.kt +9 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXAdInfo.kt +76 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXModuleImpl.kt +110 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXNativeAdHolder.kt +184 -0
- package/android/src/main/java/com/cloudxreactnative/CloudXNativeAdView.kt +209 -70
- package/android/src/main/java/com/cloudxreactnative/CloudXNativeAdViewManagerImpl.kt +6 -0
- package/android/src/newarch/com/cloudxreactnative/CloudXModule.kt +9 -0
- package/android/src/newarch/com/cloudxreactnative/CloudXNativeAdViewManager.kt +2 -0
- package/android/src/oldarch/com/cloudxreactnative/CloudXModule.kt +14 -0
- package/android/src/oldarch/com/cloudxreactnative/CloudXNativeAdViewManager.kt +3 -0
- package/android/src/test/java/com/cloudxreactnative/CloudXNativeAdPreloadTest.kt +351 -0
- package/android/src/test/java/com/cloudxreactnative/FakeReadable.kt +2 -2
- package/cloudx-react-native.podspec +1 -1
- package/ios/CloudX.h +12 -0
- package/ios/CloudX.mm +94 -1
- package/ios/CloudXNativeAdHolder.h +66 -0
- package/ios/CloudXNativeAdHolder.mm +247 -0
- package/ios/CloudXNativeAdView.h +9 -0
- package/ios/CloudXNativeAdView.mm +308 -64
- package/ios/CloudXNativeAdViewManager.mm +7 -0
- package/lib/commonjs/CloudXNativeAd.js +178 -0
- package/lib/commonjs/CloudXNativeAd.js.map +1 -0
- package/lib/commonjs/CloudXNativeAdView.js +58 -11
- package/lib/commonjs/CloudXNativeAdView.js.map +1 -1
- package/lib/commonjs/hooks.js +203 -0
- package/lib/commonjs/hooks.js.map +1 -1
- package/lib/commonjs/index.js +13 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/specs/CloudXNativeAdViewNativeComponent.js +2 -0
- package/lib/commonjs/specs/CloudXNativeAdViewNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/NativeCloudX.js.map +1 -1
- package/lib/commonjs/types/NativeAd.js +21 -1
- package/lib/commonjs/types/NativeAd.js.map +1 -1
- package/lib/commonjs/types/index.js.map +1 -1
- package/lib/commonjs/version.js +1 -1
- package/lib/module/CloudXNativeAd.js +170 -0
- package/lib/module/CloudXNativeAd.js.map +1 -0
- package/lib/module/CloudXNativeAdView.js +58 -11
- package/lib/module/CloudXNativeAdView.js.map +1 -1
- package/lib/module/hooks.js +202 -0
- package/lib/module/hooks.js.map +1 -1
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/specs/CloudXNativeAdViewNativeComponent.js +2 -0
- package/lib/module/specs/CloudXNativeAdViewNativeComponent.js.map +1 -1
- package/lib/module/specs/NativeCloudX.js.map +1 -1
- package/lib/module/types/NativeAd.js +26 -1
- package/lib/module/types/NativeAd.js.map +1 -1
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/version.js +1 -1
- package/lib/typescript/src/CloudXNativeAd.d.ts +58 -0
- package/lib/typescript/src/CloudXNativeAd.d.ts.map +1 -0
- package/lib/typescript/src/CloudXNativeAdView.d.ts +6 -13
- package/lib/typescript/src/CloudXNativeAdView.d.ts.map +1 -1
- package/lib/typescript/src/hooks.d.ts +30 -0
- package/lib/typescript/src/hooks.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +4 -3
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/specs/CloudXNativeAdViewNativeComponent.d.ts +23 -2
- package/lib/typescript/src/specs/CloudXNativeAdViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/NativeCloudX.d.ts +13 -0
- package/lib/typescript/src/specs/NativeCloudX.d.ts.map +1 -1
- package/lib/typescript/src/types/NativeAd.d.ts +76 -13
- package/lib/typescript/src/types/NativeAd.d.ts.map +1 -1
- package/lib/typescript/src/types/index.d.ts +1 -1
- package/lib/typescript/src/types/index.d.ts.map +1 -1
- package/lib/typescript/src/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/CloudXNativeAd.ts +177 -0
- package/src/CloudXNativeAdView.tsx +82 -15
- package/src/hooks.ts +236 -0
- package/src/index.ts +14 -1
- package/src/specs/CloudXNativeAdViewNativeComponent.ts +27 -2
- package/src/specs/NativeCloudX.ts +20 -0
- package/src/types/NativeAd.ts +85 -18
- package/src/types/index.ts +4 -0
- package/src/version.ts +1 -1
package/lib/module/hooks.js
CHANGED
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
import { useEffect, useState, useCallback, useRef } from 'react';
|
|
9
9
|
import NativeCloudX from './specs/NativeCloudX';
|
|
10
10
|
import { emitter } from './EventEmitter';
|
|
11
|
+
import { CloudXNativeAd } from './CloudXNativeAd';
|
|
12
|
+
import { useCloudXSdkInitializationGate } from './useCloudXSdkInitialization';
|
|
11
13
|
const {
|
|
12
14
|
ON_INTERSTITIAL_LOADED_EVENT,
|
|
13
15
|
ON_INTERSTITIAL_LOAD_FAILED_EVENT,
|
|
@@ -340,4 +342,204 @@ export function useCloudXBanner(adUnitId) {
|
|
|
340
342
|
error
|
|
341
343
|
};
|
|
342
344
|
}
|
|
345
|
+
|
|
346
|
+
// ---------------------------------------------------------------------------
|
|
347
|
+
// useCloudXNativeAd
|
|
348
|
+
// ---------------------------------------------------------------------------
|
|
349
|
+
|
|
350
|
+
const stableSerialize = value => {
|
|
351
|
+
if (value === null || typeof value !== 'object') {
|
|
352
|
+
return value;
|
|
353
|
+
}
|
|
354
|
+
if (Array.isArray(value)) {
|
|
355
|
+
return value.map(stableSerialize);
|
|
356
|
+
}
|
|
357
|
+
const record = value;
|
|
358
|
+
const sortedKeys = Object.keys(record).sort();
|
|
359
|
+
const result = {};
|
|
360
|
+
for (const key of sortedKeys) {
|
|
361
|
+
const val = record[key];
|
|
362
|
+
if (val !== undefined) {
|
|
363
|
+
result[key] = stableSerialize(val);
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
return result;
|
|
367
|
+
};
|
|
368
|
+
const getOptionsSignature = options => {
|
|
369
|
+
if (!options) return '{}';
|
|
370
|
+
return JSON.stringify(stableSerialize(options));
|
|
371
|
+
};
|
|
372
|
+
|
|
373
|
+
/**
|
|
374
|
+
* Hook for managing a preloaded native ad lifecycle.
|
|
375
|
+
*
|
|
376
|
+
* Preloads a native ad ahead of render and holds it until unmount, manual
|
|
377
|
+
* destruction, or identity change. Unlike view-managed ads, a preloaded ad's
|
|
378
|
+
* lifecycle belongs to its handle and this hook: unmounting a view bound to it
|
|
379
|
+
* does not destroy it.
|
|
380
|
+
*
|
|
381
|
+
* With autoLoad (the default) the first load waits until the SDK has
|
|
382
|
+
* initialized, as `CloudXNativeAdView` does. A `load()` call made before
|
|
383
|
+
* initialization fails with `NOT_INITIALIZED`.
|
|
384
|
+
*
|
|
385
|
+
* @param adUnitId - The ad unit identifier, or null to keep idle.
|
|
386
|
+
* @param options - Load options configuring the auction and loader.
|
|
387
|
+
* @param config - Optional configuration (autoLoad defaults to true).
|
|
388
|
+
*/
|
|
389
|
+
export function useCloudXNativeAd(adUnitId, options, config) {
|
|
390
|
+
const autoLoad = (config === null || config === void 0 ? void 0 : config.autoLoad) ?? true;
|
|
391
|
+
const optionsSignature = getOptionsSignature(options);
|
|
392
|
+
const isSdkInitialized = useCloudXSdkInitializationGate('useCloudXNativeAd');
|
|
393
|
+
const [status, setStatus] = useState(() => autoLoad && adUnitId ? 'loading' : 'idle');
|
|
394
|
+
const [nativeAd, setNativeAd] = useState(null);
|
|
395
|
+
const [error, setError] = useState(null);
|
|
396
|
+
const mountedRef = useRef(true);
|
|
397
|
+
const generationRef = useRef(0);
|
|
398
|
+
const heldAdRef = useRef(null);
|
|
399
|
+
const optionsRef = useRef(options);
|
|
400
|
+
optionsRef.current = options;
|
|
401
|
+
const inflightRef = useRef(null);
|
|
402
|
+
const lastSignatureRef = useRef(null);
|
|
403
|
+
const executeLoad = useCallback(() => {
|
|
404
|
+
if (!adUnitId) {
|
|
405
|
+
setStatus('idle');
|
|
406
|
+
setNativeAd(null);
|
|
407
|
+
setError(null);
|
|
408
|
+
return;
|
|
409
|
+
}
|
|
410
|
+
const currentSignature = `${adUnitId}::${optionsSignature}`;
|
|
411
|
+
|
|
412
|
+
// Coalesce concurrent loads with the same signature (React StrictMode
|
|
413
|
+
// double effects must not start two loads).
|
|
414
|
+
if (inflightRef.current && inflightRef.current.signature === currentSignature) {
|
|
415
|
+
return;
|
|
416
|
+
}
|
|
417
|
+
const generation = ++generationRef.current;
|
|
418
|
+
setStatus('loading');
|
|
419
|
+
setError(null);
|
|
420
|
+
if (heldAdRef.current) {
|
|
421
|
+
heldAdRef.current.destroy();
|
|
422
|
+
heldAdRef.current = null;
|
|
423
|
+
setNativeAd(null);
|
|
424
|
+
}
|
|
425
|
+
const currentOptions = optionsRef.current;
|
|
426
|
+
const promise = CloudXNativeAd.load(adUnitId, currentOptions);
|
|
427
|
+
inflightRef.current = {
|
|
428
|
+
signature: currentSignature,
|
|
429
|
+
generation,
|
|
430
|
+
promise
|
|
431
|
+
};
|
|
432
|
+
promise.then(ad => {
|
|
433
|
+
var _inflightRef$current;
|
|
434
|
+
if (((_inflightRef$current = inflightRef.current) === null || _inflightRef$current === void 0 ? void 0 : _inflightRef$current.promise) === promise) {
|
|
435
|
+
inflightRef.current = null;
|
|
436
|
+
}
|
|
437
|
+
|
|
438
|
+
// A load that resolves after unmount, after destroy(), or after the signature
|
|
439
|
+
// changed is destroyed immediately and never published (generation counter).
|
|
440
|
+
if (!mountedRef.current || generationRef.current !== generation) {
|
|
441
|
+
ad.destroy();
|
|
442
|
+
return;
|
|
443
|
+
}
|
|
444
|
+
if (heldAdRef.current && heldAdRef.current !== ad) {
|
|
445
|
+
heldAdRef.current.destroy();
|
|
446
|
+
}
|
|
447
|
+
heldAdRef.current = ad;
|
|
448
|
+
|
|
449
|
+
// On the handle's 'expired' event: status 'expired', nativeAd null,
|
|
450
|
+
// and the expired handle destroyed.
|
|
451
|
+
ad.addListener('expired', () => {
|
|
452
|
+
if (generationRef.current === generation && heldAdRef.current === ad) {
|
|
453
|
+
heldAdRef.current = null;
|
|
454
|
+
setStatus('expired');
|
|
455
|
+
setNativeAd(null);
|
|
456
|
+
ad.destroy();
|
|
457
|
+
}
|
|
458
|
+
});
|
|
459
|
+
setStatus('loaded');
|
|
460
|
+
setNativeAd(ad);
|
|
461
|
+
setError(null);
|
|
462
|
+
}).catch(err => {
|
|
463
|
+
var _inflightRef$current2;
|
|
464
|
+
if (((_inflightRef$current2 = inflightRef.current) === null || _inflightRef$current2 === void 0 ? void 0 : _inflightRef$current2.promise) === promise) {
|
|
465
|
+
inflightRef.current = null;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
// Ignores stale rejection after identity change, destroy, or unmount.
|
|
469
|
+
if (!mountedRef.current || generationRef.current !== generation) {
|
|
470
|
+
return;
|
|
471
|
+
}
|
|
472
|
+
setStatus('error');
|
|
473
|
+
setNativeAd(null);
|
|
474
|
+
setError(err);
|
|
475
|
+
});
|
|
476
|
+
}, [adUnitId, optionsSignature]);
|
|
477
|
+
|
|
478
|
+
// Unmount owns the release. Kept apart from the load effect so a re-run
|
|
479
|
+
// of that effect (autoLoad flipping, say) never destroys an ad this hook
|
|
480
|
+
// has already published. Under StrictMode the simulated unmount only
|
|
481
|
+
// clears mountedRef; the remount sets it again, so a load in flight from
|
|
482
|
+
// the first mount is still published rather than duplicated.
|
|
483
|
+
useEffect(() => {
|
|
484
|
+
mountedRef.current = true;
|
|
485
|
+
return () => {
|
|
486
|
+
mountedRef.current = false;
|
|
487
|
+
if (heldAdRef.current) {
|
|
488
|
+
heldAdRef.current.destroy();
|
|
489
|
+
heldAdRef.current = null;
|
|
490
|
+
}
|
|
491
|
+
};
|
|
492
|
+
}, []);
|
|
493
|
+
useEffect(() => {
|
|
494
|
+
const currentSignature = adUnitId ? `${adUnitId}::${optionsSignature}` : '';
|
|
495
|
+
const isFirstRun = lastSignatureRef.current === null;
|
|
496
|
+
const signatureChanged = !isFirstRun && lastSignatureRef.current !== currentSignature;
|
|
497
|
+
lastSignatureRef.current = currentSignature;
|
|
498
|
+
if (signatureChanged) {
|
|
499
|
+
if (heldAdRef.current) {
|
|
500
|
+
heldAdRef.current.destroy();
|
|
501
|
+
heldAdRef.current = null;
|
|
502
|
+
}
|
|
503
|
+
// Never leave the previous identity's (now destroyed) handle
|
|
504
|
+
// published while the replacement loads, nor its status or error:
|
|
505
|
+
// with autoLoad off nothing replaces them, and a `loaded` status
|
|
506
|
+
// with no ad, or a `loading` one that never settles, would stick.
|
|
507
|
+
setNativeAd(null);
|
|
508
|
+
setStatus('idle');
|
|
509
|
+
setError(null);
|
|
510
|
+
generationRef.current++;
|
|
511
|
+
inflightRef.current = null;
|
|
512
|
+
if (!adUnitId) {
|
|
513
|
+
return;
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
// A held ad survives autoLoad flipping back on; only an identity
|
|
518
|
+
// change (handled above) replaces it.
|
|
519
|
+
if (autoLoad && adUnitId && isSdkInitialized && !heldAdRef.current) {
|
|
520
|
+
executeLoad();
|
|
521
|
+
}
|
|
522
|
+
}, [adUnitId, optionsSignature, autoLoad, isSdkInitialized, executeLoad]);
|
|
523
|
+
const load = useCallback(() => {
|
|
524
|
+
executeLoad();
|
|
525
|
+
}, [executeLoad]);
|
|
526
|
+
const destroy = useCallback(() => {
|
|
527
|
+
generationRef.current++;
|
|
528
|
+
inflightRef.current = null;
|
|
529
|
+
if (heldAdRef.current) {
|
|
530
|
+
heldAdRef.current.destroy();
|
|
531
|
+
heldAdRef.current = null;
|
|
532
|
+
}
|
|
533
|
+
setStatus('idle');
|
|
534
|
+
setNativeAd(null);
|
|
535
|
+
setError(null);
|
|
536
|
+
}, []);
|
|
537
|
+
return {
|
|
538
|
+
status,
|
|
539
|
+
nativeAd,
|
|
540
|
+
error,
|
|
541
|
+
load,
|
|
542
|
+
destroy
|
|
543
|
+
};
|
|
544
|
+
}
|
|
343
545
|
//# sourceMappingURL=hooks.js.map
|
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":"AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,SAAS,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,MAAM,QAAQ,OAAO;AAEhE,OAAOC,YAAY,MAAM,sBAAsB;AAC/C,SAASC,OAAO,QAAQ,gBAAgB;AAExC,MAAM;EACFC,4BAA4B;EAC5BC,iCAAiC;EACjCC,oCAAoC;EACpCC,4BAA4B;EAC5BC,uBAAuB;EACvBC,4BAA4B;EAC5BC,+BAA+B;EAC/BC,uBAAuB;EACvBC,2BAA2B;EAC3BC,gCAAgC;EAChCC,mCAAmC;EACnCC,2BAA2B;EAC3BC,oCAAoC;EACpCC,yBAAyB;EACzBC;AACJ,CAAC,GAAGhB,YAAY,CAACiB,YAAY,CAAC,CAAC;;AAE/B;AACA;AACA;;AAWA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,qBAAqBA,CAACC,QAAgB,EAAgC;EAClF,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGxB,QAAQ,CAAC,KAAK,CAAC;EAC/C,MAAM,CAACyB,SAAS,EAAEC,YAAY,CAAC,GAAG1B,QAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAAC2B,KAAK,EAAEC,QAAQ,CAAC,GAAG5B,QAAQ,CAAgB,IAAI,CAAC;EACvD,MAAM6B,UAAU,GAAG3B,MAAM,CAAC,IAAI,CAAC;EAE/BH,SAAS,CAAC,MAAM;IACZ8B,UAAU,CAACC,OAAO,GAAG,IAAI;;IAEzB;IACA;IACA;IACA;IACA;IACAN,WAAW,CAAC,KAAK,CAAC;IAClBE,YAAY,CAAC,KAAK,CAAC;IACnBE,QAAQ,CAAC,IAAI,CAAC;IAEd,MAAMG,IAAyB,GAAG,EAAE;IAEpCA,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAAC5B,4BAA4B,EAAG6B,KAA2B,IAAK;MAC/E,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,IAAI,CAAC;QACjBE,YAAY,CAAC,KAAK,CAAC;QACnBE,QAAQ,CAAC,IAAI,CAAC;MAClB;IACJ,CAAC,CACL,CAAC;IAEDG,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAAC3B,iCAAiC,EAAG4B,KAA6C,IAAK;MACtG,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClBE,YAAY,CAAC,KAAK,CAAC;QACnBE,QAAQ,CAACM,KAAK,CAACC,OAAO,IAAI,gBAAgB,CAAC;MAC/C;IACJ,CAAC,CACL,CAAC;IAEDJ,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAAC1B,oCAAoC,EAAG2B,KAA6C,IAAK;MACzG,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClBI,QAAQ,CAACM,KAAK,CAACC,OAAO,IAAI,gBAAgB,CAAC;MAC/C;IACJ,CAAC,CACL,CAAC;IAEDJ,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACzB,4BAA4B,EAAG0B,KAA2B,IAAK;MAC/E,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;MACtB;IACJ,CAAC,CACL,CAAC;IAED,OAAO,MAAM;MACTK,UAAU,CAACC,OAAO,GAAG,KAAK;MAC1BC,IAAI,CAACK,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACC,MAAM,CAAC,CAAC,CAAC;MAC/BnC,YAAY,CAACoC,mBAAmB,CAACjB,QAAQ,CAAC;IAC9C,CAAC;EACL,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,MAAMkB,IAAI,GAAGvC,WAAW,CAAC,MAAM;IAC3ByB,YAAY,CAAC,IAAI,CAAC;IAClBE,QAAQ,CAAC,IAAI,CAAC;IACdzB,YAAY,CAACsC,gBAAgB,CAACnB,QAAQ,CAAC;EAC3C,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,MAAMoB,IAAI,GAAGzC,WAAW,CACpB,CAAC0C,SAAyB,EAAEC,UAA0B,KAAK;IACvD,IAAI,CAACrB,QAAQ,EAAE;MACXK,QAAQ,CAAC,eAAe,CAAC;MACzB;IACJ;IACAzB,YAAY,CAAC0C,gBAAgB,CAACvB,QAAQ,EAAEqB,SAAS,IAAIG,SAAS,EAAEF,UAAU,IAAIE,SAAS,CAAC;EAC5F,CAAC,EACD,CAACxB,QAAQ,EAAEC,QAAQ,CACvB,CAAC;EAED,MAAMwB,OAAO,GAAG9C,WAAW,CAAC,MAAM;IAC9BE,YAAY,CAACoC,mBAAmB,CAACjB,QAAQ,CAAC;IAC1CE,WAAW,CAAC,KAAK,CAAC;IAClBE,YAAY,CAAC,KAAK,CAAC;IACnBE,QAAQ,CAAC,IAAI,CAAC;EAClB,CAAC,EAAE,CAACN,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEC,QAAQ;IAAEE,SAAS;IAAEE,KAAK;IAAEa,IAAI;IAAEE,IAAI;IAAEK;EAAQ,CAAC;AAC9D;;AAEA;AACA;AACA;;AAWA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,gBAAgBA,CAAC1B,QAAgB,EAA2B;EACxE,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGxB,QAAQ,CAAC,KAAK,CAAC;EAC/C,MAAM,CAACyB,SAAS,EAAEC,YAAY,CAAC,GAAG1B,QAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAAC2B,KAAK,EAAEC,QAAQ,CAAC,GAAG5B,QAAQ,CAAgB,IAAI,CAAC;EACvD,MAAM6B,UAAU,GAAG3B,MAAM,CAAC,IAAI,CAAC;EAE/BH,SAAS,CAAC,MAAM;IACZ8B,UAAU,CAACC,OAAO,GAAG,IAAI;;IAEzB;IACA;IACA;IACA;IACA;IACAN,WAAW,CAAC,KAAK,CAAC;IAClBE,YAAY,CAAC,KAAK,CAAC;IACnBE,QAAQ,CAAC,IAAI,CAAC;IAEd,MAAMG,IAAyB,GAAG,EAAE;IAEpCA,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACxB,uBAAuB,EAAGyB,KAA2B,IAAK;MAC1E,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,IAAI,CAAC;QACjBE,YAAY,CAAC,KAAK,CAAC;QACnBE,QAAQ,CAAC,IAAI,CAAC;MAClB;IACJ,CAAC,CACL,CAAC;IAEDG,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACvB,4BAA4B,EAAGwB,KAA6C,IAAK;MACjG,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClBE,YAAY,CAAC,KAAK,CAAC;QACnBE,QAAQ,CAACM,KAAK,CAACC,OAAO,IAAI,gBAAgB,CAAC;MAC/C;IACJ,CAAC,CACL,CAAC;IAEDJ,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACtB,+BAA+B,EAAGuB,KAA6C,IAAK;MACpG,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClBI,QAAQ,CAACM,KAAK,CAACC,OAAO,IAAI,gBAAgB,CAAC;MAC/C;IACJ,CAAC,CACL,CAAC;IAEDJ,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACrB,uBAAuB,EAAGsB,KAA2B,IAAK;MAC1E,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;MACtB;IACJ,CAAC,CACL,CAAC;IAED,OAAO,MAAM;MACTK,UAAU,CAACC,OAAO,GAAG,KAAK;MAC1BC,IAAI,CAACK,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACC,MAAM,CAAC,CAAC,CAAC;MAC/BnC,YAAY,CAAC8C,cAAc,CAAC3B,QAAQ,CAAC;IACzC,CAAC;EACL,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,MAAMkB,IAAI,GAAGvC,WAAW,CAAC,MAAM;IAC3ByB,YAAY,CAAC,IAAI,CAAC;IAClBE,QAAQ,CAAC,IAAI,CAAC;IACdzB,YAAY,CAAC+C,WAAW,CAAC5B,QAAQ,CAAC;EACtC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,MAAMoB,IAAI,GAAGzC,WAAW,CACpB,CAAC0C,SAAyB,EAAEC,UAA0B,KAAK;IACvD,IAAI,CAACrB,QAAQ,EAAE;MACXK,QAAQ,CAAC,eAAe,CAAC;MACzB;IACJ;IACAzB,YAAY,CAACgD,WAAW,CAAC7B,QAAQ,EAAEqB,SAAS,IAAIG,SAAS,EAAEF,UAAU,IAAIE,SAAS,CAAC;EACvF,CAAC,EACD,CAACxB,QAAQ,EAAEC,QAAQ,CACvB,CAAC;EAED,MAAMwB,OAAO,GAAG9C,WAAW,CAAC,MAAM;IAC9BE,YAAY,CAAC8C,cAAc,CAAC3B,QAAQ,CAAC;IACrCE,WAAW,CAAC,KAAK,CAAC;IAClBE,YAAY,CAAC,KAAK,CAAC;IACnBE,QAAQ,CAAC,IAAI,CAAC;EAClB,CAAC,EAAE,CAACN,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEC,QAAQ;IAAEE,SAAS;IAAEE,KAAK;IAAEa,IAAI;IAAEE,IAAI;IAAEK;EAAQ,CAAC;AAC9D;;AAEA;AACA;AACA;;AAYA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASK,iBAAiBA,CAAC9B,QAAgB,EAA4B;EAC1E,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGxB,QAAQ,CAAC,KAAK,CAAC;EAC/C,MAAM,CAACyB,SAAS,EAAEC,YAAY,CAAC,GAAG1B,QAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAAC2B,KAAK,EAAEC,QAAQ,CAAC,GAAG5B,QAAQ,CAAgB,IAAI,CAAC;EACvD,MAAM,CAACqD,YAAY,EAAEC,eAAe,CAAC,GAAGtD,QAAQ,CAAC,KAAK,CAAC;EACvD,MAAM6B,UAAU,GAAG3B,MAAM,CAAC,IAAI,CAAC;EAE/BH,SAAS,CAAC,MAAM;IACZ8B,UAAU,CAACC,OAAO,GAAG,IAAI;;IAEzB;IACA;IACA;IACA;IACA;IACAN,WAAW,CAAC,KAAK,CAAC;IAClBE,YAAY,CAAC,KAAK,CAAC;IACnBE,QAAQ,CAAC,IAAI,CAAC;IACd0B,eAAe,CAAC,KAAK,CAAC;IAEtB,MAAMvB,IAAyB,GAAG,EAAE;IAEpCA,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACpB,2BAA2B,EAAGqB,KAA2B,IAAK;MAC9E,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,IAAI,CAAC;QACjBE,YAAY,CAAC,KAAK,CAAC;QACnBE,QAAQ,CAAC,IAAI,CAAC;MAClB;IACJ,CAAC,CACL,CAAC;IAEDG,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACnB,gCAAgC,EAAGoB,KAA6C,IAAK;MACrG,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClBE,YAAY,CAAC,KAAK,CAAC;QACnBE,QAAQ,CAACM,KAAK,CAACC,OAAO,IAAI,gBAAgB,CAAC;MAC/C;IACJ,CAAC,CACL,CAAC;IAEDJ,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAAClB,mCAAmC,EAAGmB,KAA6C,IAAK;MACxG,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClBI,QAAQ,CAACM,KAAK,CAACC,OAAO,IAAI,gBAAgB,CAAC;MAC/C;IACJ,CAAC,CACL,CAAC;IAEDJ,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACjB,2BAA2B,EAAGkB,KAA2B,IAAK;MAC9E,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClB8B,eAAe,CAAC,KAAK,CAAC;MAC1B;IACJ,CAAC,CACL,CAAC;IAEDvB,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAAChB,oCAAoC,EAAGiB,KAA2B,IAAK;MACvF,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDwB,eAAe,CAAC,IAAI,CAAC;MACzB;IACJ,CAAC,CACL,CAAC;IAED,OAAO,MAAM;MACTzB,UAAU,CAACC,OAAO,GAAG,KAAK;MAC1BC,IAAI,CAACK,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACC,MAAM,CAAC,CAAC,CAAC;MAC/BnC,YAAY,CAACoD,eAAe,CAACjC,QAAQ,CAAC;IAC1C,CAAC;EACL,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,MAAMkB,IAAI,GAAGvC,WAAW,CAAC,MAAM;IAC3ByB,YAAY,CAAC,IAAI,CAAC;IAClBE,QAAQ,CAAC,IAAI,CAAC;IACd0B,eAAe,CAAC,KAAK,CAAC;IACtBnD,YAAY,CAACqD,YAAY,CAAClC,QAAQ,CAAC;EACvC,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,MAAMoB,IAAI,GAAGzC,WAAW,CACpB,CAAC0C,SAAyB,EAAEC,UAA0B,KAAK;IACvD,IAAI,CAACrB,QAAQ,EAAE;MACXK,QAAQ,CAAC,eAAe,CAAC;MACzB;IACJ;IACAzB,YAAY,CAACsD,YAAY,CAACnC,QAAQ,EAAEqB,SAAS,IAAIG,SAAS,EAAEF,UAAU,IAAIE,SAAS,CAAC;EACxF,CAAC,EACD,CAACxB,QAAQ,EAAEC,QAAQ,CACvB,CAAC;EAED,MAAMwB,OAAO,GAAG9C,WAAW,CAAC,MAAM;IAC9BE,YAAY,CAACoD,eAAe,CAACjC,QAAQ,CAAC;IACtCE,WAAW,CAAC,KAAK,CAAC;IAClBE,YAAY,CAAC,KAAK,CAAC;IACnBE,QAAQ,CAAC,IAAI,CAAC;IACd0B,eAAe,CAAC,KAAK,CAAC;EAC1B,CAAC,EAAE,CAAChC,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEC,QAAQ;IAAEE,SAAS;IAAEE,KAAK;IAAE0B,YAAY;IAAEb,IAAI;IAAEE,IAAI;IAAEK;EAAQ,CAAC;AAC5E;;AAEA;AACA;AACA;;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASW,eAAeA,CAACpC,QAAgB,EAA0B;EACtE,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGxB,QAAQ,CAAC,KAAK,CAAC;EAC/C,MAAM,CAAC2B,KAAK,EAAEC,QAAQ,CAAC,GAAG5B,QAAQ,CAAgB,IAAI,CAAC;EACvD,MAAM6B,UAAU,GAAG3B,MAAM,CAAC,IAAI,CAAC;EAE/BH,SAAS,CAAC,MAAM;IACZ8B,UAAU,CAACC,OAAO,GAAG,IAAI;;IAEzB;IACA;IACA;IACAN,WAAW,CAAC,KAAK,CAAC;IAClBI,QAAQ,CAAC,IAAI,CAAC;IAEd,MAAMG,IAAyB,GAAG,EAAE;IAEpCA,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACf,yBAAyB,EAAGgB,KAA2B,IAAK;MAC5E,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,IAAI,CAAC;QACjBI,QAAQ,CAAC,IAAI,CAAC;MAClB;IACJ,CAAC,CACL,CAAC;IAEDG,IAAI,CAACC,IAAI,CACL5B,OAAO,CAAC6B,WAAW,CAACd,8BAA8B,EAAGe,KAA6C,IAAK;MACnG,IAAIA,KAAK,CAACZ,QAAQ,KAAKA,QAAQ,IAAIO,UAAU,CAACC,OAAO,EAAE;QACnDN,WAAW,CAAC,KAAK,CAAC;QAClBI,QAAQ,CAACM,KAAK,CAACC,OAAO,IAAI,gBAAgB,CAAC;MAC/C;IACJ,CAAC,CACL,CAAC;IAED,OAAO,MAAM;MACTN,UAAU,CAACC,OAAO,GAAG,KAAK;MAC1BC,IAAI,CAACK,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAACC,MAAM,CAAC,CAAC,CAAC;MAC/BnC,YAAY,CAACwD,aAAa,CAACrC,QAAQ,CAAC;IACxC,CAAC;EACL,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,OAAO;IAAEC,QAAQ;IAAEI;EAAM,CAAC;AAC9B","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useEffect","useState","useCallback","useRef","NativeCloudX","emitter","CloudXNativeAd","useCloudXSdkInitializationGate","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","stableSerialize","value","Array","isArray","map","record","sortedKeys","Object","keys","sort","result","key","val","getOptionsSignature","options","JSON","stringify","useCloudXNativeAd","config","autoLoad","optionsSignature","isSdkInitialized","status","setStatus","nativeAd","setNativeAd","generationRef","heldAdRef","optionsRef","inflightRef","lastSignatureRef","executeLoad","currentSignature","signature","generation","currentOptions","promise","then","ad","_inflightRef$current","catch","err","_inflightRef$current2","isFirstRun","signatureChanged"],"sourceRoot":"../../src","sources":["hooks.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -15,6 +15,7 @@ export { CloudXRewardedAd } from './CloudXRewardedAd';
|
|
|
15
15
|
export { CloudXBannerAd } from './CloudXBannerAd';
|
|
16
16
|
export { CloudXMRECAd } from './CloudXMRECAd';
|
|
17
17
|
export { CloudXAdPosition } from './CloudXAdPosition';
|
|
18
|
+
export { CloudXNativeAd } from './CloudXNativeAd';
|
|
18
19
|
|
|
19
20
|
// Ad View Components (in-tree; layer correctly under app overlays)
|
|
20
21
|
export { CloudXBannerView } from './CloudXBannerView';
|
|
@@ -37,7 +38,7 @@ export { CloudXErrorCode } from './CloudXErrorCode';
|
|
|
37
38
|
export { requestTrackingAuthorization, getTrackingAuthorizationStatus, CloudXATTStatus } from './AppTrackingTransparency';
|
|
38
39
|
|
|
39
40
|
// Hooks
|
|
40
|
-
export { useCloudXInterstitial, useCloudXAppOpen, useCloudXRewarded, useCloudXBanner } from './hooks';
|
|
41
|
+
export { useCloudXInterstitial, useCloudXAppOpen, useCloudXRewarded, useCloudXBanner, useCloudXNativeAd } from './hooks';
|
|
41
42
|
|
|
42
43
|
// Types
|
|
43
44
|
|
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","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;;
|
|
1
|
+
{"version":3,"names":["default","CloudX","NativeCloudX","emitter","cloudXEventEmitter","CloudXArbiterBid","CloudXRevenuePlatform","CloudXRevenuePrecision","CloudXInterstitialAd","CloudXAppOpenAd","CloudXRewardedAd","CloudXBannerAd","CloudXMRECAd","CloudXAdPosition","CloudXNativeAd","CloudXBannerView","CloudXMRECView","CloudXNativeAdView","CloudXTitleView","CloudXAdvertiserView","CloudXBodyView","CloudXCallToActionView","CloudXIconView","CloudXOptionsView","CloudXMediaView","CloudXStarRatingView","CloudXErrorCode","requestTrackingAuthorization","getTrackingAuthorizationStatus","CloudXATTStatus","useCloudXInterstitial","useCloudXAppOpen","useCloudXRewarded","useCloudXBanner","useCloudXNativeAd","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;AACrD,SAASC,cAAc,QAAQ,kBAAkB;;AAEjD;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,SACIC,qBAAqB,EACrBC,gBAAgB,EAChBC,iBAAiB,EACjBC,eAAe,EACfC,iBAAiB,QACd,SAAS;;AAUhB;;AA2CA,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":[]}
|
|
@@ -16,6 +16,8 @@ import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativ
|
|
|
16
16
|
* Payload for native-ad load/display-failure events.
|
|
17
17
|
*/
|
|
18
18
|
|
|
19
|
+
/** Internal: names the preloaded ad that just left the view. */
|
|
20
|
+
|
|
19
21
|
/**
|
|
20
22
|
* Props for the native CloudXNativeAdView component.
|
|
21
23
|
*
|
|
@@ -1 +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;;
|
|
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;;AAOA;;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;;AAgGA,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":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["specs/NativeCloudX.ts"],"mappings":"AAEA,SAASA,mBAAmB,QAAQ,cAAc;;AAGlD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../src","sources":["specs/NativeCloudX.ts"],"mappings":"AAEA,SAASA,mBAAmB,QAAQ,cAAc;;AAGlD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA4LA,eAAeA,mBAAmB,CAACC,YAAY,CAAO,QAAQ,CAAC","ignoreList":[]}
|
|
@@ -60,9 +60,34 @@ export let CloudXNativeAssetType = /*#__PURE__*/function (CloudXNativeAssetType)
|
|
|
60
60
|
// value, so narrowing one of the two sibling props was an accidental restriction.
|
|
61
61
|
|
|
62
62
|
/**
|
|
63
|
-
*
|
|
63
|
+
* Load-time options for {@link CloudXNativeAd.load}. These configure the
|
|
64
|
+
* auction and the loader, so they are fixed once the ad is loaded; the view
|
|
65
|
+
* that later renders the ad only chooses the layout.
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
/** Events a preloaded {@link CloudXNativeAd} reports on its own handle. */
|
|
69
|
+
|
|
70
|
+
/** Props every native-ad view accepts, whichever way the ad was loaded. */
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Props for a native-ad view that loads its own ad when it attaches and
|
|
74
|
+
* destroys it on unmount. This is the shape `CloudXNativeAdView` has always
|
|
75
|
+
* taken, so wrappers that extend, `Omit` or `Pick` it keep compiling.
|
|
64
76
|
*
|
|
65
77
|
* Callbacks inherited from {@link CloudXAdProps} (`onAdLoaded`, `onAdLoadFailed`,
|
|
66
78
|
* `onAdClicked`, `onAdRevenuePaid`) receive unwrapped payloads, not synthetic events.
|
|
67
79
|
*/
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* The view renders an ad loaded earlier with {@link CloudXNativeAd.load}. It
|
|
83
|
+
* never loads and never destroys the ad. Clicks, revenue, expiry and close
|
|
84
|
+
* are reported once, on the handle (`nativeAd.addListener`), never on the
|
|
85
|
+
* view, so revenue cannot be counted twice.
|
|
86
|
+
*/
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Everything `CloudXNativeAdView` accepts: either it loads its own ad
|
|
90
|
+
* ({@link CloudXNativeAdViewProps}) or it renders one loaded earlier
|
|
91
|
+
* ({@link CloudXNativeAdViewPreloadedProps}). Mixing the two is a type error.
|
|
92
|
+
*/
|
|
68
93
|
//# sourceMappingURL=NativeAd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CloudXNativeTemplate","CloudXNativeAssetType"],"sourceRoot":"../../../src","sources":["types/NativeAd.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["CloudXNativeTemplate","CloudXNativeAssetType"],"sourceRoot":"../../../src","sources":["types/NativeAd.ts"],"mappings":"AAMA;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;;AAWA;;AAGA;;AAsBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAYA;AACA;AACA;AACA;AACA;AACA;;AAmBA;AACA;AACA;AACA;AACA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CloudXRevenuePlatform","CloudXRevenuePrecision","CloudXNativeTemplate","CloudXNativeAssetType"],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"AAeA,SAASA,qBAAqB,EAAEC,sBAAsB,QAAQ,eAAe;
|
|
1
|
+
{"version":3,"names":["CloudXRevenuePlatform","CloudXRevenuePrecision","CloudXNativeTemplate","CloudXNativeAssetType"],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"AAeA,SAASA,qBAAqB,EAAEC,sBAAsB,QAAQ,eAAe;AAsB7E,SAASC,oBAAoB,EAAEC,qBAAqB,QAAQ,YAAY","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.1';
|
|
7
7
|
//# sourceMappingURL=version.js.map
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { CloudXAdInfo } from './types/AdInfo';
|
|
2
|
+
import type { CloudXNativeAdEventType, CloudXNativeAdLoadOptions, CloudXNativeAdMetadata } from './types/NativeAd';
|
|
3
|
+
type NativeAdEventPayload = Partial<CloudXAdInfo> & {
|
|
4
|
+
nativeAdId?: string;
|
|
5
|
+
};
|
|
6
|
+
type NativeAdListener = (adInfo: CloudXAdInfo) => void;
|
|
7
|
+
/**
|
|
8
|
+
* A native ad loaded ahead of its view.
|
|
9
|
+
*
|
|
10
|
+
* Load it whenever it suits the app, then render it with
|
|
11
|
+
* `<CloudXNativeAdView nativeAd={ad} />`. The handle owns the ad: unmounting a
|
|
12
|
+
* view never destroys it, and its impression is counted once. Clicks, revenue,
|
|
13
|
+
* expiry and close are reported here, not on the view.
|
|
14
|
+
*
|
|
15
|
+
* Moving an ad to another view differs by platform:
|
|
16
|
+
* - iOS: mount another view with the same ad and it shows there; the latest
|
|
17
|
+
* view wins.
|
|
18
|
+
* - Android: once the ad has been shown in a view, it stays with that view.
|
|
19
|
+
* Any other view, including a remounted list cell or a reopened screen,
|
|
20
|
+
* reports `onAdDisplayFailed` with `AD_ALREADY_SHOWING`. Load a fresh ad
|
|
21
|
+
* for each new view.
|
|
22
|
+
*
|
|
23
|
+
* An ad that expires before its impression (its `revenuePaid` event) reports
|
|
24
|
+
* `expired` on both platforms, even if it was already shown in a view.
|
|
25
|
+
*
|
|
26
|
+
* Call `destroy()` when the ad is no longer needed.
|
|
27
|
+
*/
|
|
28
|
+
export declare class CloudXNativeAd {
|
|
29
|
+
readonly id: string;
|
|
30
|
+
readonly adUnitId: string;
|
|
31
|
+
/** Ad info as of load. Revenue callbacks carry the impression-time values. */
|
|
32
|
+
readonly info: CloudXAdInfo;
|
|
33
|
+
/** Asset metadata for manual layouts; `null` if the network reported none. */
|
|
34
|
+
readonly metadata: CloudXNativeAdMetadata | null;
|
|
35
|
+
private expired;
|
|
36
|
+
private destroyed;
|
|
37
|
+
private readonly listeners;
|
|
38
|
+
/**
|
|
39
|
+
* Loads a native ad without a view. Resolves once the ad is held natively;
|
|
40
|
+
* rejects with a `CloudXAdLoadFailedInfo`.
|
|
41
|
+
*
|
|
42
|
+
* Loads per ad unit are limited, so preload several ads one after another
|
|
43
|
+
* rather than all at once.
|
|
44
|
+
*/
|
|
45
|
+
static load(adUnitId: string, options?: CloudXNativeAdLoadOptions): Promise<CloudXNativeAd>;
|
|
46
|
+
private constructor();
|
|
47
|
+
get isExpired(): boolean;
|
|
48
|
+
get isDestroyed(): boolean;
|
|
49
|
+
addListener(type: CloudXNativeAdEventType, listener: NativeAdListener): {
|
|
50
|
+
remove: () => void;
|
|
51
|
+
};
|
|
52
|
+
/** Releases the native ad. Safe to call more than once. */
|
|
53
|
+
destroy(): void;
|
|
54
|
+
/** @internal Routed from the module emitter; not part of the public API. */
|
|
55
|
+
_handleNativeEvent(type: CloudXNativeAdEventType, payload: NativeAdEventPayload): void;
|
|
56
|
+
}
|
|
57
|
+
export {};
|
|
58
|
+
//# sourceMappingURL=CloudXNativeAd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CloudXNativeAd.d.ts","sourceRoot":"","sources":["../../../src/CloudXNativeAd.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAA0B,MAAM,gBAAgB,CAAC;AAC3E,OAAO,KAAK,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AASnH,KAAK,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5E,KAAK,gBAAgB,GAAG,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;AA8CvD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,cAAc;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAEjD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6D;IAEvF;;;;;;OAMG;WACU,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,cAAc,CAAC;IAsBrG,OAAO;IAQP,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,WAAW,CAAC,IAAI,EAAE,uBAAuB,EAAE,QAAQ,EAAE,gBAAgB,GAAG;QAAE,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE;IAc9F,2DAA2D;IAC3D,OAAO,IAAI,IAAI;IAQf,4EAA4E;IAC5E,kBAAkB,CAAC,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,oBAAoB,GAAG,IAAI;CAYzF"}
|
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import type { CloudXNativeAdViewHandle } from './types/NativeAd';
|
|
3
|
-
import type { CloudXAdDisplayFailedInfo, CloudXAdInfo } from './types/AdInfo';
|
|
2
|
+
import type { CloudXNativeAdViewHandle, CloudXNativeAdViewComponentProps } from './types/NativeAd';
|
|
4
3
|
/**
|
|
5
4
|
* Renders a native ad. Defaults to the SDK's bundled template layouts;
|
|
6
5
|
* set `renderMode="manual"` to drive layout through the pre-built asset
|
|
7
6
|
* components (`CloudXTitleView`, `CloudXMediaView`, etc.) instead.
|
|
8
7
|
*
|
|
8
|
+
* Pass `adUnitId` and the view loads its own ad on attach. Pass `nativeAd`
|
|
9
|
+
* (from `CloudXNativeAd.load`) and it renders that ad instead, without
|
|
10
|
+
* loading or destroying it.
|
|
11
|
+
*
|
|
9
12
|
* Manual mode is never inferred from the presence of children — `renderMode`
|
|
10
13
|
* is always explicit so a publisher's intent is visible at the call site.
|
|
11
14
|
*/
|
|
12
|
-
export declare const CloudXNativeAdView: React.ForwardRefExoticComponent<
|
|
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>>;
|
|
15
|
+
export declare const CloudXNativeAdView: React.ForwardRefExoticComponent<CloudXNativeAdViewComponentProps & React.RefAttributes<CloudXNativeAdViewHandle>>;
|
|
23
16
|
export default CloudXNativeAdView;
|
|
24
17
|
//# sourceMappingURL=CloudXNativeAdView.d.ts.map
|
|
@@ -1 +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,
|
|
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,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAwE3H;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,mHAqE9B,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -4,6 +4,9 @@
|
|
|
4
4
|
* Provides declarative hooks for managing fullscreen and banner ad lifecycles.
|
|
5
5
|
* These are a CloudX-specific convenience layer on top of the static module APIs.
|
|
6
6
|
*/
|
|
7
|
+
import { CloudXNativeAd } from './CloudXNativeAd';
|
|
8
|
+
import type { CloudXAdLoadFailedInfo } from './types/AdInfo';
|
|
9
|
+
import type { CloudXNativeAdLoadOptions } from './types/NativeAd';
|
|
7
10
|
export type CloudXInterstitialHookResult = {
|
|
8
11
|
isLoaded: boolean;
|
|
9
12
|
isLoading: boolean;
|
|
@@ -60,4 +63,31 @@ export type CloudXBannerHookResult = {
|
|
|
60
63
|
* @param adUnitId - The ad unit identifier.
|
|
61
64
|
*/
|
|
62
65
|
export declare function useCloudXBanner(adUnitId: string): CloudXBannerHookResult;
|
|
66
|
+
export type CloudXNativeAdHookStatus = 'idle' | 'loading' | 'loaded' | 'expired' | 'error';
|
|
67
|
+
export type CloudXNativeAdHookResult = {
|
|
68
|
+
status: CloudXNativeAdHookStatus;
|
|
69
|
+
nativeAd: CloudXNativeAd | null;
|
|
70
|
+
error: CloudXAdLoadFailedInfo | null;
|
|
71
|
+
load: () => void;
|
|
72
|
+
destroy: () => void;
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* Hook for managing a preloaded native ad lifecycle.
|
|
76
|
+
*
|
|
77
|
+
* Preloads a native ad ahead of render and holds it until unmount, manual
|
|
78
|
+
* destruction, or identity change. Unlike view-managed ads, a preloaded ad's
|
|
79
|
+
* lifecycle belongs to its handle and this hook: unmounting a view bound to it
|
|
80
|
+
* does not destroy it.
|
|
81
|
+
*
|
|
82
|
+
* With autoLoad (the default) the first load waits until the SDK has
|
|
83
|
+
* initialized, as `CloudXNativeAdView` does. A `load()` call made before
|
|
84
|
+
* initialization fails with `NOT_INITIALIZED`.
|
|
85
|
+
*
|
|
86
|
+
* @param adUnitId - The ad unit identifier, or null to keep idle.
|
|
87
|
+
* @param options - Load options configuring the auction and loader.
|
|
88
|
+
* @param config - Optional configuration (autoLoad defaults to true).
|
|
89
|
+
*/
|
|
90
|
+
export declare function useCloudXNativeAd(adUnitId: string | null, options?: CloudXNativeAdLoadOptions, config?: {
|
|
91
|
+
autoLoad?: boolean;
|
|
92
|
+
}): CloudXNativeAdHookResult;
|
|
63
93
|
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/hooks.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/hooks.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAwBlE,MAAM,MAAM,4BAA4B,GAAG;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACtE,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,4BAA4B,CAyFpF;AAMD,MAAM,MAAM,uBAAuB,GAAG;IAClC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACtE,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,uBAAuB,CAyF1E;AAMD,MAAM,MAAM,wBAAwB,GAAG;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACtE,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,wBAAwB,CAsG5E;AAMD,MAAM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,CA0CxE;AAMD,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAE3F,MAAM,MAAM,wBAAwB,GAAG;IACnC,MAAM,EAAE,wBAAwB,CAAC;IACjC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACrC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AA0BF;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,OAAO,CAAC,EAAE,yBAAyB,EACnC,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,wBAAwB,CA4K1B"}
|
|
@@ -9,6 +9,7 @@ export { CloudXRewardedAd } from './CloudXRewardedAd';
|
|
|
9
9
|
export { CloudXBannerAd } from './CloudXBannerAd';
|
|
10
10
|
export { CloudXMRECAd } from './CloudXMRECAd';
|
|
11
11
|
export { CloudXAdPosition } from './CloudXAdPosition';
|
|
12
|
+
export { CloudXNativeAd } from './CloudXNativeAd';
|
|
12
13
|
export { CloudXBannerView } from './CloudXBannerView';
|
|
13
14
|
export { CloudXMRECView } from './CloudXMRECView';
|
|
14
15
|
export { CloudXNativeAdView } from './CloudXNativeAdView';
|
|
@@ -16,9 +17,9 @@ export { CloudXTitleView, CloudXAdvertiserView, CloudXBodyView, CloudXCallToActi
|
|
|
16
17
|
export type { CloudXAdViewProps, CloudXAdViewFormat } from './CloudXAdViewBase';
|
|
17
18
|
export { CloudXErrorCode } from './CloudXErrorCode';
|
|
18
19
|
export { requestTrackingAuthorization, getTrackingAuthorizationStatus, CloudXATTStatus } from './AppTrackingTransparency';
|
|
19
|
-
export { useCloudXInterstitial, useCloudXAppOpen, useCloudXRewarded, useCloudXBanner } from './hooks';
|
|
20
|
-
export type { CloudXInterstitialHookResult, CloudXAppOpenHookResult, CloudXRewardedHookResult, CloudXBannerHookResult, } from './hooks';
|
|
21
|
-
export type { CloudXAdInfo, CloudXAdLoadFailedInfo, CloudXAdDisplayFailedInfo, CloudXAdRewardInfo, CloudXInitializationResult, CloudXConfiguration, CloudXType, CloudXLogLevelValue, CloudXArbiterConfiguration, CloudXArbiterPlatform, CloudXArbiterResult, CloudXSDKArbiterBid, CloudXLevelPlayArbiterBid, CloudXPubMaticArbiterBid, CloudXCustomArbiterBid, CloudXAdMobArbiterBid, CloudXGamArbiterBid, CloudXRevenueData, CloudXRevenuePlatformValue, CloudXRevenuePrecisionValue, CloudXFullscreenAdType, CloudXInterstitialAdType, CloudXAppOpenAdType, CloudXRewardedAdType, CloudXViewAdType, CloudXBannerAdType, CloudXMRECAdType, CloudXAdProps, CloudXAdEventObject, CloudXAdEventListener, CloudXExtraParameterValue, CloudXExtraParameters, CloudXNativeAdMetadata, CloudXNativeAdViewHandle, CloudXNativeAdViewProps, CloudXLocalExtraParameters, } from './types';
|
|
20
|
+
export { useCloudXInterstitial, useCloudXAppOpen, useCloudXRewarded, useCloudXBanner, useCloudXNativeAd, } from './hooks';
|
|
21
|
+
export type { CloudXInterstitialHookResult, CloudXAppOpenHookResult, CloudXRewardedHookResult, CloudXBannerHookResult, CloudXNativeAdHookResult, CloudXNativeAdHookStatus, } from './hooks';
|
|
22
|
+
export type { CloudXAdInfo, CloudXAdLoadFailedInfo, CloudXAdDisplayFailedInfo, CloudXAdRewardInfo, CloudXInitializationResult, CloudXConfiguration, CloudXType, CloudXLogLevelValue, CloudXArbiterConfiguration, CloudXArbiterPlatform, CloudXArbiterResult, CloudXSDKArbiterBid, CloudXLevelPlayArbiterBid, CloudXPubMaticArbiterBid, CloudXCustomArbiterBid, CloudXAdMobArbiterBid, CloudXGamArbiterBid, CloudXRevenueData, CloudXRevenuePlatformValue, CloudXRevenuePrecisionValue, CloudXFullscreenAdType, CloudXInterstitialAdType, CloudXAppOpenAdType, CloudXRewardedAdType, CloudXViewAdType, CloudXBannerAdType, CloudXMRECAdType, CloudXAdProps, CloudXAdEventObject, CloudXAdEventListener, CloudXExtraParameterValue, CloudXExtraParameters, CloudXNativeAdMetadata, CloudXNativeAdViewHandle, CloudXNativeAdViewProps, CloudXNativeAdViewComponentProps, CloudXNativeAdViewPreloadedProps, CloudXNativeAdLoadOptions, CloudXNativeAdEventType, CloudXLocalExtraParameters, } from './types';
|
|
22
23
|
export { CloudXNativeTemplate } from './types';
|
|
23
24
|
export declare const CloudXLogLevel: {
|
|
24
25
|
readonly VERBOSE: "verbose";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAI/D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAGpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAI/D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAGpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EACH,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,oBAAoB,GACvB,MAAM,gCAAgC,CAAC;AASxC,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGhF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,4BAA4B,EAAE,8BAA8B,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAG1H,OAAO,EACH,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GACpB,MAAM,SAAS,CAAC;AACjB,YAAY,EACR,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,EACxB,wBAAwB,GAC3B,MAAM,SAAS,CAAC;AAGjB,YAAY,EACR,YAAY,EACZ,sBAAsB,EACtB,yBAAyB,EACzB,kBAAkB,EAClB,0BAA0B,EAC1B,mBAAmB,EACnB,UAAU,EACV,mBAAmB,EACnB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACrB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,gCAAgC,EAChC,gCAAgC,EAChC,yBAAyB,EACzB,uBAAuB,EACvB,0BAA0B,GAC7B,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAG/C,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -30,6 +30,10 @@ export type CloudXNativeAdLoadFailedEvent = Readonly<{
|
|
|
30
30
|
code: Double;
|
|
31
31
|
message?: string | null;
|
|
32
32
|
}>;
|
|
33
|
+
/** Internal: names the preloaded ad that just left the view. */
|
|
34
|
+
export type CloudXNativeAdBindingClearedEvent = Readonly<{
|
|
35
|
+
nativeAdId: string;
|
|
36
|
+
}>;
|
|
33
37
|
export type NativeExtraParameterEntry = Readonly<{
|
|
34
38
|
key: string;
|
|
35
39
|
value: UnsafeMixed;
|
|
@@ -42,8 +46,14 @@ export type NativeExtraParameterEntry = Readonly<{
|
|
|
42
46
|
* normal RN z-ordering.
|
|
43
47
|
*/
|
|
44
48
|
export interface NativeProps extends ViewProps {
|
|
45
|
-
/** Ad unit ID used to load the ad. */
|
|
46
|
-
adUnitId
|
|
49
|
+
/** Ad unit ID used to load the ad. Ignored when `nativeAdId` is set. */
|
|
50
|
+
adUnitId?: string | null;
|
|
51
|
+
/**
|
|
52
|
+
* Id of an ad already loaded by `loadNativeAd`. When set, the view never
|
|
53
|
+
* loads: it renders the held ad on attach and leaves its lifetime to the
|
|
54
|
+
* holder, so unmounting does not destroy it.
|
|
55
|
+
*/
|
|
56
|
+
nativeAdId?: string | null;
|
|
47
57
|
/**
|
|
48
58
|
* Publisher-selected template name (e.g. "small_template",
|
|
49
59
|
* "medium_template"). Named `templateName`, not `template` — codegen
|
|
@@ -79,6 +89,11 @@ export interface NativeProps extends ViewProps {
|
|
|
79
89
|
onAdLoadFailedEvent: DirectEventHandler<CloudXNativeAdLoadFailedEvent>;
|
|
80
90
|
/** Called when the ad fails to render/display (e.g. manual render before load). */
|
|
81
91
|
onAdDisplayFailedEvent: DirectEventHandler<CloudXNativeAdLoadFailedEvent>;
|
|
92
|
+
/**
|
|
93
|
+
* Called each time an ad is rendered into this view and registered for
|
|
94
|
+
* click and impression tracking. Fires again after a re-bind.
|
|
95
|
+
*/
|
|
96
|
+
onAdDisplayedEvent: DirectEventHandler<CloudXNativeAdInfoEvent>;
|
|
82
97
|
/** Called when the ad is clicked. */
|
|
83
98
|
onAdClickedEvent: DirectEventHandler<CloudXNativeAdInfoEvent>;
|
|
84
99
|
/** Called when the loaded ad expires. */
|
|
@@ -87,6 +102,12 @@ export interface NativeProps extends ViewProps {
|
|
|
87
102
|
onAdClosedEvent: DirectEventHandler<CloudXNativeAdInfoEvent>;
|
|
88
103
|
/** Called when ad revenue is paid. */
|
|
89
104
|
onAdRevenuePaidEvent: DirectEventHandler<CloudXNativeAdInfoEvent>;
|
|
105
|
+
/**
|
|
106
|
+
* Internal, not a publisher callback: native released the preloaded ad
|
|
107
|
+
* this view showed (destroy, expiry, or a newer view took it), so the JS
|
|
108
|
+
* view clears its asset components.
|
|
109
|
+
*/
|
|
110
|
+
onAdBindingClearedEvent?: DirectEventHandler<CloudXNativeAdBindingClearedEvent>;
|
|
90
111
|
}
|
|
91
112
|
export interface NativeCommands {
|
|
92
113
|
loadAd: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
|